Пример #1
0
 public function actionBookingTableActivate()
 {
     $field = isset($_GET['field']) ? $_GET['field'] : 'active';
     if (Yii::app()->request->getParam('id') && Yii::app()->request->getParam('value') != null) {
         $this->scenario = 'update_status';
         $action = Yii::app()->request->getParam('value', null);
         $id = Yii::app()->request->getParam('id', null);
         $availableStatuses = Bookingtable::getAllStatuses();
         if (!array_key_exists($action, $availableStatuses)) {
             $action = 0;
         }
     }
     if (!(!$id && $action === null)) {
         $model = $this->loadModelUserBookingTable($id);
         if ($this->scenario) {
             $model->scenario = $this->scenario;
         }
         if ($model) {
             $model->{$field} = $action;
             $model->save(false);
             if (issetModule('bookingcalendar')) {
                 if ($field == 'active' && $action == Bookingtable::STATUS_CONFIRM) {
                     $modelBookingCalendar = new Bookingcalendar();
                     $modelBookingCalendar->date_start = $model->date_start;
                     $modelBookingCalendar->date_end = $model->date_end;
                     $modelBookingCalendar->status = Bookingcalendar::STATUS_BUSY;
                     $modelBookingCalendar->apartment_id = $model->apartment_id;
                     $modelBookingCalendar->save(false);
                 }
             }
         }
     }
     echo CHtml::link($availableStatuses[$action]);
 }