/**
  * view Holiday list
  * @param sfWebRequest $request
  */
 public function execute($request)
 {
     //Keep Menu in Leave/Config
     $request->setParameter('initialActionName', 'viewHolidayList');
     $this->searchForm = $this->getSearchForm();
     $dateRange = $this->getLeavePeriodService()->getCalenderYearByDate(time());
     $startDate = $dateRange[0];
     $endDate = $dateRange[1];
     if ($request->isMethod('post')) {
         $this->searchForm->bind($request->getParameter($this->searchForm->getName()));
         if ($this->searchForm->isValid()) {
             $values = $this->searchForm->getValues();
             $startDate = $values['calFromDate'];
             $endDate = $values['calToDate'];
         }
     }
     $this->daysLenthList = WorkWeek::getDaysLengthList();
     $this->yesNoList = WorkWeek::getYesNoList();
     $this->holidayList = $this->getHolidayService()->searchHolidays($startDate, $endDate);
     $this->setListComponent($this->holidayList);
     $message = $this->getUser()->getFlash('templateMessage');
     $this->messageType = isset($message[0]) ? strtolower($message[0]) : "";
     $this->message = isset($message[1]) ? $message[1] : "";
     if ($this->getUser()->hasFlash('templateMessage')) {
         $this->templateMessage = $this->getUser()->getFlash('templateMessage');
         $this->getUser()->setFlash('templateMessage', array());
     }
 }
 /**
  * view Holiday list
  * @param sfWebRequest $request
  */
 public function execute($request)
 {
     $this->searchForm = $this->getSearchForm();
     $leavePeriodService = $this->getLeavePeriodService();
     //retrieve current leave period id
     $leavePeriodId = !$leavePeriodService->getCurrentLeavePeriod() instanceof LeavePeriod ? 0 : $leavePeriodService->getCurrentLeavePeriod()->getLeavePeriodId();
     $startDate = date("Y-m-d");
     $endDate = date("Y-m-d");
     if ($leavePeriodService->getCurrentLeavePeriod() instanceof LeavePeriod) {
         $startDate = $leavePeriodService->getCurrentLeavePeriod()->getStartDate();
         $endDate = $leavePeriodService->getCurrentLeavePeriod()->getEndDate();
     }
     if ($request->isMethod('post')) {
         $this->searchForm->bind($request->getParameter($this->searchForm->getName()));
         if ($this->searchForm->isValid()) {
             $leavePeriodId = $this->searchForm->getValue('leave_period');
             $leavePeriod = $leavePeriodService->readLeavePeriod($leavePeriodId);
             if ($leavePeriod instanceof LeavePeriod) {
                 $startDate = $leavePeriod->getStartDate();
                 $endDate = $leavePeriod->getEndDate();
             }
         }
     }
     $this->leavePeriodId = $leavePeriodId;
     $this->daysLenthList = WorkWeek::getDaysLengthList();
     $this->yesNoList = WorkWeek::getYesNoList();
     $this->holidayList = $this->getHolidayService()->searchHolidays($startDate, $endDate);
     $this->setListComponent($this->holidayList);
     $message = $this->getUser()->getFlash('templateMessage');
     $this->messageType = isset($message[0]) ? strtolower($message[0]) : "";
     $this->message = isset($message[1]) ? $message[1] : "";
     if ($this->getUser()->hasFlash('templateMessage')) {
         $this->templateMessage = $this->getUser()->getFlash('templateMessage');
         $this->getUser()->setFlash('templateMessage', array());
     }
 }