public function loadModel($id) { if (($model = EmployeeToProject::model()->findByPk($id)) === null) { throw new CHttpException(404, 'Страница не найдена'); } return $model; }
public function run() { if (empty($this->model)) { return; } $criteria = new CDbCriteria(); $criteria->order = 't.sort'; $criteria->with = array('employee'); $criteria->compare('employee.status', Employee::STATUS_PUBLISHED); $projectEmployees = EmployeeToProject::model()->published()->project($this->model->id)->findAll($criteria); if (empty($projectEmployees)) { return; } $this->render($this->view, array('model' => $this->model, 'projectEmployees' => $projectEmployees)); }
/** * Метод выполняемый перед удалением: * * @return void */ public function beforeDelete() { // Обнуляем руководителей отделов foreach ($this->manageDepartments as $department) { $department->chief_id = null; $department->save(false, array('chief_id')); } EmployeeToProject::model()->deleteAllByAttributes(array('employee_id' => $this->id)); return parent::beforeDelete(); }