Beispiel #1
0
 public function executeGanttIndex(sfWebRequest $request)
 {
     $this->handleZoneParameters($request);
     $this->getUser()->syncParameters($this, 'home', 'ganttIndex', array('rooms'), $request);
     if (is_null($this->rooms)) {
         $this->redirect('home/overallIndex?activityId=' . $this->activity->getId());
     }
     $room_id_list = explode(',', $this->rooms);
     $this->room_list = RoomPeer::doSelectFromIdList($room_id_list);
     $this->count = count($this->room_list);
     $this->forward404Unless($this->count > 0, 'No rooms specified');
     $this->getUser()->syncParameters($this, 'general', 'index', array('date'), $request);
     if (is_null($this->date)) {
         $this->date = time();
     } else {
         $this->date = strtotime($this->date);
     }
     if ($this->count == 1) {
         if ($request->hasParameter('autobook')) {
             $this->redirect('reservation/new?roomId=' . $this->room_list[0]->getId() . '&date=' . date('Y-m-d H:i:s', $this->date));
         } else {
             $this->redirect('reservation/index?roomId=' . $this->room_list[0]->getId());
         }
     }
     $this->availability = RoomPeer::getGantt($this->room_list, $this->activity->getId(), $this->person, $this->date);
     $this->checkFeatures();
 }