Returns all behaviors attached to this component.
public getBehaviors ( ) : |
||
return | list of behaviors attached to this component |
/** * Getting behavior object from given model * * @param Component $model * @return SeoBehavior * @throws InvalidConfigException if model don't have our SeoBehavior */ protected static function behavior(Component $model) { foreach ($model->getBehaviors() as $b) { if ($b instanceof SeoBehavior) { return $b; } } throw new InvalidConfigException('Model ' . $model->className() . ' must have SeoBehavior'); }
/** * @param Component $component * @return \skeeks\sx\validate\Result */ public function validate($component) { if (!$component instanceof Component) { return $this->_bad(\Yii::t('app', "The object must be inherited from") . ": " . Component::className()); } if (!$this->_behavior) { return $this->_ok(); } $hasBehaviors = $component->getBehaviors(); foreach ($hasBehaviors as $behavior) { if ($behavior instanceof $this->_behavior) { return $this->_ok(); } } return $this->_bad(\Yii::t('app', "At the component: {class} requires a behavior", ['class' => $component->className()]) . ": " . $this->_behavior); }