Файловый менеджер - Редактировать - /var/www/jonas-eriksen.dk/blog/wp-content/plugins/mailchimp-for-woocommerce/includes/api/assets/class-mailchimp-promo-rule.php
Назад
<?php /** * Created by Vextras. * * Name: Ryan Hungate * Email: ryan@vextras.com * Date: 6/13/17 * Time: 1:19 PM */ class MailChimp_WooCommerce_PromoRule { /** * @var string * @title Promo Rule Foreign ID * @default = null * @description * A unique identifier for the promo rule. If Ecomm platform does not support promo rule, * use promo code id as promo rule id. * Restricted to UTF-8 characters with max length 50 */ protected $id; /** * @var string * @title Title * @default null * @description The title that will show up in promotion campaign. Restricted to UTF-8 characters with max length 100 */ protected $title; /** * @var string * @title Description * @default null * @description The description of a promotion */ protected $description; /** * @var \DateTime * @title Start Time * @default null * @description The date and time when the promotion starts in ISO 8601 format */ protected $starts_at; /** * @var \DateTime * @title Start Time * @default null * @description The date and time when the promotion starts in ISO 8601 format */ protected $ends_at; /** * @var float * @title Amount * @required * @description The amount of discount; Positive dollar or percentage amount. */ protected $amount; /** * @var string * @title Type * @required * @description One of ‘fixed’ , ‘percentage’ */ protected $type; /** * @var string * @title Target * @required * @description One of ‘per_item’, ‘total’, ‘shipping’ */ protected $target; /** * @var boolean * @title Enabled * @default true * @description Whether the promo rule is currently enabled */ protected $enabled = true; /** * @var \DateTime * @title Start Time * @default null * @description The date and time when the promotion starts in ISO 8601 format */ protected $created_at_foreign; /** * @var \DateTime * @title Start Time * @default null * @description The date and time when the promotion starts in ISO 8601 format */ protected $updated_at_foreign; /** * @return array */ public function getValidation() { return [ 'id' => 'required', 'amount' => 'required|number', 'type' => 'required', 'target' => 'required', 'enabled' => 'boolean', 'starts_at' => 'date', 'ends_at' => 'date', 'created_at_foreign' => 'date', 'updated_at_foreign' => 'date', ]; } /** * @return string */ public function getId() { return $this->id; } /** * @param null $id * @return MailChimp_WooCommerce_PromoRule */ public function setId($id) { $this->id = $id; return $this; } /** * @return string */ public function getTitle() { return $this->title; } /** * @param string $name * @return MailChimp_WooCommerce_PromoRule */ public function setTitle($name) { $this->title = $name; return $this; } /** * @return string */ public function getDescription() { return $this->description; } /** * @param string $description * @return MailChimp_WooCommerce_PromoRule */ public function setDescription($description) { $this->description = $description; return $this; } /** * @param \DateTime $date * @return $this */ public function setStartsAt(\DateTime $date) { $this->starts_at = (string) $date; return $this; } /** * @return \DateTime */ public function getStartsAt() { return $this->starts_at; } /** * @param \DateTime $date * @return $this */ public function setEndsAt(\DateTime $date) { $this->ends_at = (string) $date; return $this; } /** * @return \DateTime */ public function getEndsAt() { return $this->ends_at; } /** * @param $enabled * @return $this */ public function setEnabled($enabled) { $this->enabled = (bool) $enabled; return $this; } /** * @return bool */ public function isEnabled() { return (bool) $this->enabled; } /** * @return string */ public function getAmount() { return $this->amount; } /** * @param int $amount * @return MailChimp_WooCommerce_PromoRule */ public function setAmount($amount) { $this->amount = $amount; return $this; } /** * @return string */ public function getType() { return $this->type; } /** * @return string */ public function getTarget() { return $this->target; } /** * @return $this */ public function setTypeFixed() { $this->type = 'fixed'; return $this; } /** * @return $this */ public function setTypePercentage() { $this->type = 'percentage'; return $this; } /** * @return $this */ public function setTargetTypePerItem() { $this->target = 'per_item'; return $this; } /** * @return $this */ public function setTargetTypeShipping() { $this->target = 'shipping'; return $this; } /** * @return $this */ public function setTargetTypeTotal() { $this->target = 'total'; return $this; } /** * @param \DateTime $time * @return $this */ public function setUpdatedAt(\DateTime $time) { $this->updated_at_foreign = (string) $time; return $this; } /** * @return null */ public function getUpdatedAt() { return $this->updated_at_foreign; } /** * @param \DateTime $time * @return $this */ public function setCreatedAt(\DateTime $time) { $this->created_at_foreign = (string) $time; return $this; } /** * @return null */ public function getCreatedAt() { return $this->created_at_foreign; } /** * @return array */ public function toArray() { return mailchimp_array_remove_empty([ 'id' => (string) $this->getId(), 'title' => (string) $this->getTitle(), 'description' => (string) $this->getDescription(), 'starts_at' => (string) $this->getStartsAt(), 'ends_at' => (string) $this->getEndsAt(), 'amount' => floatval($this->getAmount()), 'type' => (string) $this->getType(), 'target' => (string) $this->getTarget(), 'enabled' => (bool) $this->isEnabled(), 'created_at_foreign' => (string) $this->getCreatedAt(), 'updated_at_foreign' => (string) $this->getUpdatedAt(), ]); } /** * @param array $data * @return MailChimp_WooCommerce_PromoRule */ public function fromArray(array $data) { $singles = [ 'id', 'title', 'description', 'starts_at', 'ends_at', 'amount', 'type', 'target', 'enabled', 'created_at_foreign', 'updated_at_foreign' ]; foreach ($singles as $key) { if (array_key_exists($key, $data)) { $this->$key = $data[$key]; } } return $this; } }
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Генерация страницы: 0.28 |
proxy
|
phpinfo
|
Настройка