Sale ​
- Type
- Class
- Namespace
- craft\commerce\models
- Inherits
- craft\commerce\models\Sale » craft\commerce\base\Model » craft\base\Model » yii\base\Model » yii\base\Component » yii\base\BaseObject
- Implements
- ArrayAccess, IteratorAggregate, craft\base\ModelInterface, yii\base\Arrayable, yii\base\Configurable, yii\base\StaticInstanceInterface
- Uses traits
- craft\base\ClonefixTrait, yii\base\ArrayableTrait, yii\base\StaticInstanceTrait
- Since
- 2.0
Sale model.
Public Properties ​
| Property | Description |
|---|---|
| activeValidators | yii\validators\Validator – The validators applicable to the current scenario. |
| allCategories | boolean – Match all categories |
| allGroups | boolean – Match all groups |
| allPurchasables | boolean – Match all purchasables |
| apply | string – How the sale should be applied |
| applyAmount | float, null – The amount field used by the apply option |
| applyAmountAsFlat | string |
| applyAmountAsPercent | string |
| attributes | array – Attribute values (name => value). |
| behaviors | yii\base\Behavior – List of behaviors attached to this component. |
| categoryIds | array |
| categoryRelationshipType | string – Type of relationship between Categories and Products |
| cpEditUrl | string, false |
| dateCreated | DateTime, null |
| dateFrom | DateTime, null – Date From |
| dateTo | DateTime, null – Date To |
| dateUpdated | DateTime, null |
| description | string, null – Description |
| enabled | boolean – Enabled |
| errors | array – Errors for all attributes or the specified attribute. |
| firstErrors | array – The first errors. |
| id | integer, null – ID |
| ignorePrevious | boolean – Ignore the previous sales that affect the purchasable |
| iterator | ArrayIterator – An iterator for traversing the items in the list. |
| name | string, null – Name |
| purchasableIds | array |
| scenario | string – The scenario that this model is in. |
| sortOrder | integer, null – The order index of the application of the sale |
| stopProcessing | boolean – Should the sales system stop processing other sales after this one |
| userGroupIds | array |
| validators | ArrayObject, yii\validators\Validator – All the validators declared in the model. |
allCategories ​
- Type
- boolean
- Default value
false
Match all categories
allGroups ​
- Type
- boolean
- Default value
false
Match all groups
allPurchasables ​
- Type
- boolean
- Default value
false
Match all purchasables
apply ​
- Type
- string
- Default value
\craft\commerce\records\Sale::APPLY_BY_PERCENT
How the sale should be applied
applyAmount ​
The amount field used by the apply option
applyAmountAsFlat ​
- Type
- string
- Default value
null
applyAmountAsPercent ​
- Type
- string
- Default value
null
categoryIds ​
- Type
- array
- Default value
null
categoryRelationshipType ​
- Type
- string
- Default value
\craft\commerce\records\Sale::CATEGORY_RELATIONSHIP_TYPE_BOTH
Type of relationship between Categories and Products
cpEditUrl ​
dateCreated ​
dateFrom ​
Date From
dateTo ​
Date To
dateUpdated ​
description ​
Description
enabled ​
- Type
- boolean
- Default value
true
Enabled
id ​
ID
ignorePrevious ​
- Type
- boolean
- Default value
false
Ignore the previous sales that affect the purchasable
name ​
Name
purchasableIds ​
- Type
- array
- Default value
null
sortOrder ​
The order index of the application of the sale
stopProcessing ​
- Type
- boolean
- Default value
false
Should the sales system stop processing other sales after this one
userGroupIds ​
- Type
- array
- Default value
null
Public Methods ​
| Method | Description |
|---|---|
| __call() | Calls the named method which is not a class method. |
| __clone() | This method is called after the object is created by cloning an existing one. |
| __construct() | |
| __get() | Returns the value of a component property. |
| __isset() | Checks if a property is set, i.e. defined and not null. |
| __set() | Sets the value of a component property. |
| __unset() | Sets a component property to be null. |
| activeAttributes() | Returns the attribute names that are subject to validation in the current scenario. |
| addError() | Adds a new error to the specified attribute. |
| addErrors() | Adds a list of errors. |
| addModelErrors() | Adds errors from another model, with a given attribute name prefix. |
| afterValidate() | This method is invoked after validation ends. |
| attachBehavior() | Attaches a behavior to this component. |
| attachBehaviors() | Attaches a list of behaviors to the component. |
| attributeHints() | Returns the attribute hints. |
| attributeLabels() | Returns the attribute labels. |
| attributes() | Returns the list of attribute names. |
| beforeValidate() | This method is invoked before validation starts. |
| behaviors() | Returns a list of behaviors that this component should behave as. |
| canGetProperty() | Returns a value indicating whether a property can be read. |
| canSetProperty() | Returns a value indicating whether a property can be set. |
| className() | Returns the fully qualified name of this class. |
| clearErrors() | Removes errors for all attributes or a single attribute. |
| createValidators() | Creates validator objects based on the validation rules specified in rules(). |
| datetimeAttributes() | Returns the names of any attributes that should hold DateTime values. |
| detachBehavior() | Detaches a behavior from the component. |
| detachBehaviors() | Detaches all behaviors from the component. |
| ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. |
| extraFields() | |
| fields() | Returns the list of fields that should be returned by default by toArray() when no specific fields are specified. |
| formName() | Returns the form name that this model class should use. |
| generateAttributeLabel() | Generates a user friendly attribute label based on the give attribute name. |
| getActiveValidators() | Returns the validators applicable to the current scenario. |
| getApplyAmountAsFlat() | |
| getApplyAmountAsPercent() | |
| getAttributeHint() | Returns the text hint for the specified attribute. |
| getAttributeLabel() | Returns the text label for the specified attribute. |
| getAttributes() | Returns attribute values. |
| getBehavior() | Returns the named behavior object. |
| getBehaviors() | Returns all behaviors attached to this component. |
| getCategoryIds() | |
| getCpEditUrl() | |
| getErrorSummary() | Returns the errors for all attributes as a one-dimensional array. |
| getErrors() | Returns the errors for all attributes or a single attribute. |
| getFirstError() | Returns the first error of the specified attribute. |
| getFirstErrors() | Returns the first error of every attribute in the model. |
| getIterator() | Returns an iterator for traversing the attributes in the model. |
| getPurchasableIds() | |
| getScenario() | Returns the scenario that this model is used in. |
| getUserGroupIds() | |
| getValidators() | Returns all the validators declared in rules(). |
| hasErrors() | Returns a value indicating whether there is any validation error. |
| hasEventHandlers() | Returns a value indicating whether there is any handler attached to the named event. |
| hasMethod() | Returns a value indicating whether a method is defined. |
| hasProperty() | Returns a value indicating whether a property is defined for this component. |
| init() | Initializes the object. |
| instance() | Returns static class instance, which can be used to obtain meta information. |
| isAttributeActive() | Returns a value indicating whether the attribute is active in the current scenario. |
| isAttributeRequired() | Returns a value indicating whether the attribute is required. |
| isAttributeSafe() | Returns a value indicating whether the attribute is safe for massive assignments. |
| load() | Populates the model with input data. |
| loadMultiple() | Populates a set of models with the data from end user. |
| off() | Detaches an existing event handler from this component. |
| offsetExists() | Returns whether there is an element at the specified offset. |
| offsetGet() | Returns the element at the specified offset. |
| offsetSet() | Sets the element at the specified offset. |
| offsetUnset() | Sets the element value at the specified offset to null. |
| on() | Attaches an event handler to an event. |
| onUnsafeAttribute() | This method is invoked when an unsafe attribute is being massively assigned. |
| rules() | Returns the validation rules for attributes. |
| safeAttributes() | Returns the attribute names that are safe to be massively assigned in the current scenario. |
| scenarios() | Returns a list of scenarios and the corresponding active attributes. |
| setAttributes() | Sets the attribute values in a massive way. |
| setCategoryIds() | Sets the related category ids |
| setPurchasableIds() | Sets the related purchasable ids |
| setScenario() | Sets the scenario for the model. |
| setUserGroupIds() | Sets the related user group ids |
| toArray() | Converts the model into an array. |
| trigger() | Triggers an event. |
| validate() | Performs the data validation. |
| validateMultiple() | Validates multiple models. |
extraFields() ​
Returns ​
getApplyAmountAsFlat() ​
getApplyAmountAsPercent() ​
getCategoryIds() ​
getCpEditUrl() ​
getPurchasableIds() ​
getUserGroupIds() ​
setCategoryIds() ​
Sets the related category ids
Arguments ​
$ids
setPurchasableIds() ​
Sets the related purchasable ids
Arguments ​
$purchasableIds
setUserGroupIds() ​
Sets the related user group ids
Arguments ​
$userGroupIds
Protected Methods ​
| Method | Description |
|---|---|
| defineBehaviors() | Returns the behaviors to attach to this class. |
| defineRules() | Returns the validation rules for attributes. |
| extractFieldsFor() | Extract nested fields from a fields collection for a given root field Nested fields are separated with dots (.). e.g: "item.id" The previous example would extract "id". |
| extractRootFields() | Extracts the root field names from nested fields. |
| resolveFields() | Determines which fields can be returned by toArray(). |
defineRules() ​
Returns the validation rules for attributes.
See rules() for details about what should be returned.
Models should override this method instead of rules() so EVENT_DEFINE_RULES handlers can modify the class-defined rules.
Returns ​
Constants ​
| Constant | Description |
|---|---|
SCENARIO_DEFAULT | The name of the default scenario. |