private function _fixAllDayEvents()
 {
     foreach ($this->_getData() as $e) {
         $eeModel = EventEntry::findOne($e['event_entry_id']);
         $startDate = date('d-m-Y', $eeModel->start_timestamp);
         $dateArray = explode('-', $startDate);
         $endDate = date('d-m-Y', $eeModel->end_timestamp);
         $newStartTimestamp = mktime(7, 0, 0, $dateArray[1], $dateArray[0], $dateArray[2]);
         $newEndTimestamp = mktime(21, 0, 0, $dateArray[1], $dateArray[0], $dateArray[2]);
         $eeModel->start_timestamp = $newStartTimestamp;
         $eeModel->end_timestamp = $newEndTimestamp;
         //if (! $eeModel->save())
         //   print_r($eeModel->getErrors());
     }
 }
 public function actionUpdateevent()
 {
     $request = \yii::$app->request;
     if (yii::$app->CalendarComponent->eventEntryRecord($request->post('pk') !== null)) {
         $post = $request->post('pk');
     }
     // check to see if we are doing an update via form and not resize or drag
     if ($request->post('name')) {
         $post[$request->post('name')] = $request->post('value');
     }
     $eventEntryRecord = yii::$app->CalendarComponent->eventEntryRecord($post['ee_id']);
     $eventEntryModel = EventEntry::findOne($post['ee_id']);
     $eventModel = Event::findOne($eventEntryModel->event->id);
     if (!yii::$app->CalendarComponent->canUpdateEvent(array_merge($eventEntryRecord, $post))) {
         throw new \yii\web\HttpException(403, sprintf('Event update not authorized for use'));
     }
     $bookingModel = new Booking();
     $bookingModel->attributes = array_merge($eventEntryRecord, $eventModel->attributes, $post);
     if ($bookingModel->validate()) {
         $eventEntryModel->load(['EventEntry' => $bookingModel->attributes]);
         $eventModel->load(['Event' => $bookingModel->attributes]);
         if ($eventEntryModel->validate() && $eventModel->validate()) {
             $eventEntryModel->save();
             $eventModel->save();
             yii::$app->AjaxResponse->error = false;
             yii::$app->AjaxResponse->message = $bookingModel->jsObject;
         } else {
             yii::$app->AjaxResponse->message = array_values($eventEntryModel->getErrors() + $eventModel->getErrors());
         }
     } else {
         yii::$app->AjaxResponse->message = array_values($bookingModel->getErrors());
     }
     yii::$app->AjaxResponse->sendContent();
 }
 /**
  * Finds the EventEntry model based on its primary key value.
  * If the model is not found, a 404 HTTP exception will be thrown.
  * @param integer $id
  * @return EventEntry the loaded model
  * @throws NotFoundHttpException if the model cannot be found
  */
 protected function findModel($id)
 {
     if (($model = EventEntry::findOne($id)) !== null) {
         return $model;
     } else {
         throw new NotFoundHttpException('The requested page does not exist.');
     }
 }