/**
  * Creates a new model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  */
 public function actionCreate($id)
 {
     $model = new EacStatusLog();
     $decision = EacDecision::model()->findByPk($id);
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     if (isset($_POST['EacStatusLog'])) {
         $model->attributes = $_POST['EacStatusLog'];
         $model->decision_id = $id;
         $model->approved = 0;
         //not approved
         $model->create_user_id = Yii::app()->user->id;
         $model->date_created = date('Y-m-d H:i:s');
         $model->date_updated = date('Y-m-d H:i:s');
         if ($model->save()) {
             if ($decision) {
                 $decision->implementation_status_id = $model->status_id;
                 $decision->save();
                 Yii::app()->user->setFlash(TbHtml::ALERT_COLOR_SUCCESS, 'Status updated successfully.');
             }
             $criteria = new CDbCriteria();
             $criteria->addColumnCondition(array('is_mda' => 0), 'OR');
             $mdas = $decision->getAssignedMdasIds();
             $criteria->addInCondition('mda_id', $mdas);
             $recipients = User::getNotificationSubscribers($criteria);
             $loggedInUser = User::model()->findByPk(Yii::app()->user->user_id);
             $from = "";
             if (Yii::app()->user->is_mda) {
                 $mda = $loggedInUser->mda;
                 $from = $mda->description;
             } else {
                 $meacOffice = $loggedInUser->meacOffice;
                 $from = $meacOffice->description;
             }
             $message = "Decision {$decision->decision_reference}-({$decision->description}) has been updated by " . Yii::app()->user->getState('loggedInUser') . " from {$from}<br />";
             $message .= $model->status_narrative . "<br />";
             $message .= "For more information click " . TbHtml::link("here", Yii::app()->getBaseUrl(true) . "/index.php?r=eacDecision/view&id={$decision->id}");
             $this->notify($recipients, 'Decision Update', $message);
             $this->redirect(array('/eacDecision/view', 'id' => $id));
         }
     }
     $this->render('create', array('model' => $model, 'decision' => $decision));
 }
 public function actionAjaxUpdate()
 {
     $mdas = $_POST['value'];
     //print_r($mdas);exit;
     $excludedMdaIds = $this->unsetMdas($_POST['pk'], $mdas);
     if (!empty($excludedMdaIds)) {
         $this->notifyUnsubscribedMdas($_POST['pk'], $excludedMdaIds);
     }
     foreach ($mdas as $mda) {
         $mapping = new MdaDecisionMapping();
         $mapping->decision_id = $_POST['pk'];
         $mapping->mda_id = $mda;
         if (!$mapping->exists('decision_id=:id AND mda_id=:mda', array(':id' => $mapping->decision_id, ':mda' => $mapping->mda_id))) {
             $mapping->save();
         } else {
             echo "Unable to assign";
         }
     }
     //Notify subscribers
     $criteria = new CDbCriteria();
     $criteria->addColumnCondition(array('is_mda' => 1));
     $criteria->addInCondition('mda_id', $mdas);
     $recipients = User::getNotificationSubscribers($criteria);
     $message = "You have been assigned to report on decision " . $this->loadModel($_POST['pk'])->decision_reference . " by the  " . Yii::app()->params['owner'] . "<br />";
     $message .= "For more information click " . TbHtml::link("here", Yii::app()->getBaseUrl(true) . "/index.php?r=eacDecision/view&id={$_POST['pk']}");
     $this->notify($recipients, 'Decision Update', $message);
 }