/**
  * Creates a new model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  */
 public function actionCreate($personid)
 {
     $model = new Personbenefits();
     $model->PersonID = intval($personid);
     $valid = true;
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     if (isset($_POST['Personbenefits'])) {
         $model->attributes = $_POST["Personbenefits"];
         $valid = $model->validate() && $valid;
         if ($valid && $model->save()) {
             $person = Person::model()->findByPk($model->PersonID);
             echo CJSON::encode(array("result" => "success", "data" => $this->renderPartial("//person/tabs/_benefits", array('models' => $person->benefits, "personid" => $model->PersonID), true)));
         } else {
             echo CJSON::encode(array("result" => "error", "data" => $this->renderPartial('_form', array('model' => $model), true)));
         }
         Yii::app()->end();
     }
     $this->renderPartial('_Modal', array('model' => $model, true));
 }
Exemplo n.º 2
0
 public function afterSave()
 {
     // автоматическое добавление льготы
     if ($this->CoursedpID > 0) {
         $ben = Personbenefits::model()->find("PersonID = {$this->PersonID} and BenefitID = 41");
         if (empty($ben)) {
             $ben = new Personbenefits("CONVERT");
             $ben->PersonID = $this->PersonID;
             $ben->BenefitID = 41;
             $ben->save();
         }
         if (!in_array($ben->idPersonBenefits, $this->benefits)) {
             $this->benefits[] = $ben->idPersonBenefits;
         }
     } else {
     }
     // Сохраняем массив льгот привязанных к специальности
     Personspecialitybenefits::model()->deleteAll("PersonSpecialityID = {$this->idPersonSpeciality}");
     if (!empty($this->benefits) && is_array($this->benefits)) {
         foreach ($this->benefits as $val) {
             $item = Personspecialitybenefits::model()->findByPk(array("PersonBenefitID" => $val, 'PersonSpecialityID' => $this->idPersonSpeciality));
             if (count($item) == 0) {
                 $item = new Personspecialitybenefits();
             }
             $item->PersonBenefitID = $val;
             $item->PersonSpecialityID = $this->idPersonSpeciality;
             $item->save();
         }
     }
     return parent::afterSave();
 }