Ejemplo n.º 1
0
 /**
  * Gets calendar.
  *
  * @param integer $id
  * @return CalendarModel|null
  */
 public function getCalendarById($id)
 {
     $calendarRow = $this->db()->select('*')->from('calendar')->where(array('id' => $id))->execute()->fetchAssoc();
     if (empty($calendarRow)) {
         return null;
     }
     $calendarModel = new CalendarModel();
     $calendarModel->setId($calendarRow['id']);
     $calendarModel->setTitle($calendarRow['title']);
     $calendarModel->setPlace($calendarRow['place']);
     $calendarModel->setStart($calendarRow['start']);
     $calendarModel->setEnd($calendarRow['end']);
     $calendarModel->setText($calendarRow['text']);
     $calendarModel->setColor($calendarRow['color']);
     return $calendarModel;
 }
Ejemplo n.º 2
0
 public function treatAction()
 {
     $calendarMapper = new CalendarMapper();
     $calendarModel = new CalendarModel();
     if ($this->getRequest()->getParam('id')) {
         $this->getLayout()->getAdminHmenu()->add($this->getTranslator()->trans('menuCalendar'), array('action' => 'index'))->add($this->getTranslator()->trans('edit'), array('action' => 'treat'));
         $this->getView()->set('calendar', $calendarMapper->getCalendarById($this->getRequest()->getParam('id')));
     } else {
         $this->getLayout()->getAdminHmenu()->add($this->getTranslator()->trans('menuCalendar'), array('action' => 'index'))->add($this->getTranslator()->trans('add'), array('action' => 'treat'));
     }
     if ($this->getRequest()->isPost()) {
         if ($this->getRequest()->getParam('id')) {
             $calendarModel->setId($this->getRequest()->getParam('id'));
         }
         $title = trim($this->getRequest()->getPost('title'));
         $place = trim($this->getRequest()->getPost('place'));
         $start = new \Ilch\Date(trim($this->getRequest()->getPost('start')));
         $end = new \Ilch\Date(trim($this->getRequest()->getPost('end')));
         $text = trim($this->getRequest()->getPost('text'));
         $color = trim($this->getRequest()->getPost('color'));
         if (empty($start)) {
             $this->addMessage('missingDate', 'danger');
         } elseif (empty($title)) {
             $this->addMessage('missingTitle', 'danger');
         } else {
             $calendarModel->setTitle($title);
             $calendarModel->setPlace($place);
             $calendarModel->setStart($start);
             $calendarModel->setEnd($end);
             $calendarModel->setText($text);
             $calendarModel->setColor($color);
             $calendarMapper->save($calendarModel);
             $this->addMessage('saveSuccess');
             $this->redirect(array('action' => 'index'));
         }
     }
 }