public function loadModel($id) { if (($model = EavSet::model()->findByPk($id)) === null) { throw new CHttpException(404, 'Страница не найдена'); } return $model; }
protected function afterSave() { parent::afterSave(); if (!empty($this->orderedEavAttributes)) { if ($this->oldEavAttributes !== $this->orderedEavAttributes) { $this->updateEavAttributeOrder($this->orderedEavAttributes); } } }
public function testUpdateEavAttributeOrder() { $model = EavSet::model()->findByPk(2); $attr = $model->getEavAttributes(); $keys = array_keys($attr); $this->assertEquals(1, $keys[0]); $this->assertEquals(2, $keys[1]); $model->updateEavAttributeOrder(array(2, 1)); $model = EavSet::model()->findByPk(2); $attr = $model->getEavAttributes(); $keys = array_keys($attr); $this->assertEquals(2, $keys[0]); $this->assertEquals(1, $keys[1]); }
protected function setAttributeInstances() { $set = EavSet::model()->findByPk($this->eav_set_id); $attributes = $set->getEavAttributes(); foreach ($attributes as $attr) { $this->eavAttributeInstances[$attr->name] = $attr; } }
/** * Метод выполняемый перед удалением: * * @return void */ public function beforeDelete() { EavAttributeToSet::model()->deleteAllByAttributes(array('eav_set_id' => $this->id)); return parent::beforeDelete(); }