VariantCondition
- Type
- Class
- Namespace
- craft\commerce\elements\conditions\variants
- Inherits
- craft\commerce\elements\conditions\variants\VariantCondition » craft\elements\conditions\ElementCondition » craft\base\conditions\BaseCondition » craft\base\Component » craft\base\Model » yii\base\Model » yii\base\Component » yii\base\BaseObject
- Implements
- ArrayAccess, IteratorAggregate, craft\base\ComponentInterface, craft\base\ModelInterface, craft\base\conditions\ConditionInterface, craft\elements\conditions\ElementConditionInterface, yii\base\Arrayable, yii\base\Configurable, yii\base\StaticInstanceInterface
- Uses traits
- craft\base\ClonefixTrait, yii\base\ArrayableTrait, yii\base\StaticInstanceTrait
- Extended by
- craft\commerce\elements\conditions\variants\CatalogPricingRuleVariantCondition
- Since
- 4.0.0
Variant query condition.
Public Properties
Property | Description |
---|---|
activeValidators | yii\validators\Validator – The validators applicable to the current scenario. |
addRuleLabel | string, null – The “Add a rule” button label. |
attributes | array – Attribute values (name => value). |
behaviors | yii\base\Behavior – List of behaviors attached to this component. |
builderConfig | array |
builderHtml | string – The HTML for the condition builder, including its outer container element |
builderInnerHtml | string – The inner HTML for the condition builder, excluding its outer container element |
conditionRuleTypes | string[], array{class: string}[] – The available rule types for this condition |
conditionRules | craft\base\conditions\ConditionRuleInterface – The rules this condition is configured with |
config | array – The condition’s portable config |
elementType | class-string<\craft\base\ElementInterface> , null – The element type being queried. |
errors | array – Errors for all attributes or the specified attribute. |
fieldContext | string – The field context that should be used when fetching custom fields’ condition rule types. |
fieldLayouts | craft\models\FieldLayout |
firstErrors | array – The first errors. |
forProjectConfig | boolean – Whether the condition will be stored in the project config |
id | string, null – The ID of the condition builder |
iterator | ArrayIterator – An iterator for traversing the items in the list. |
mainTag | string – The condition builder container tag name |
name | string – The root input name of the condition builder |
queryParams | string[] – The element query params that available rules shouldn’t compete with. |
referenceElement | craft\base\ElementInterface, null – The element that this condition is being executed in reference to, if any. |
scenario | string – The scenario that this model is in. |
selectableConditionRules | craft\base\conditions\ConditionRuleInterface |
sortable | |
sourceKey | string, null – The selected element source key. |
validators | ArrayObject, yii\validators\Validator – All the validators declared in the model. |
elementType
- Type
class-string<\craft\base\ElementInterface>
, null- Default value
\craft\commerce\elements\Variant::class
The element type being queried.
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() | Constructor. |
__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. |
addConditionRule() | Adds a rule to the condition. |
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. |
createConditionRule() | Creates a condition rule instance. |
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. |
displayName() | Returns the display name of this class. |
ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. |
extraFields() | Returns the list of fields that can be expanded further and returned by toArray(). |
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. |
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. |
getBuilderConfig() | Returns configuration that should be maintained for the builder. |
getBuilderHtml() | Renders the HTML for the condition builder, including its outer container element. |
getBuilderInnerHtml() | Renders the inner HTML for the condition builder, excluding its outer container element. |
getConditionRules() | Returns the rules this condition is configured with. |
getConfig() | Returns the condition’s portable config. |
getErrorSummary() | Returns the errors for all attributes as a one-dimensional array. |
getErrors() | Returns the errors for all attributes or a single attribute. |
getFieldLayouts() | Returns the possible field layouts that the condition could be working with. |
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. |
getScenario() | Returns the scenario that this model is used in. |
getSelectableConditionRules() | Returns the selectable rules for the condition, indexed by type. |
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. |
isSelectable() | Returns whether the component should be selectable in component Type selects. |
load() | Populates the model with input data. |
loadMultiple() | Populates a set of models with the data from end user. |
matchElement() | Returns whether the given element matches the condition. |
modifyQuery() | Modifies a given query based on the configured condition rules. |
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. |
setConditionRules() | Sets the rules this condition should be configured with. |
setFieldLayouts() | Sets the possible field layouts that the condition could be working with. |
setScenario() | Sets the scenario for the model. |
toArray() | Converts the model into an array. |
trigger() | Triggers an event. |
validate() | Performs the data validation. |
validateMultiple() | Validates multiple models. |
Protected Methods
Method | Description |
---|---|
config() | Returns the base config that should be maintained by the builder and included in the condition’s portable config. |
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. |
isConditionRuleSelectable() | Returns whether the given rule should be selectable by the condition builder. |
resolveFields() | Determines which fields can be returned by toArray(). |
selectableConditionRules() | Returns the selectable rules for this condition. |
validateConditionRule() | Ensures that a rule can be added to this condition. |
selectableConditionRules()
Returns the selectable rules for this condition.
Conditions should override this method instead of getSelectableConditionRules() so EVENT_REGISTER_CONDITION_RULES handlers can modify the class-defined rules.
Rules should be defined as either the class name or an array with a class
key set to the class name.
Returns
Constants
Constant | Description |
---|---|
SCENARIO_DEFAULT | The name of the default scenario. |