Exemple #1
0
 /**
  * Searches aircrafts
  * CODE:aircraft_index
  */
 public function executeIndex(sfWebRequest $request)
 {
     # security
     if (!$this->getUser()->hasCredential(array('Administrator', 'Staff', 'Pilot', 'Coordinator', 'Volunteer'), false)) {
         $this->getUser()->setFlash("warning", 'You don\'t have permission to access this url ' . $request->getReferer());
         $this->redirect('dashboard/index');
     }
     $this->getUser()->addRecentItem('Aircraft', 'aircraft', 'aircraft/index');
     sfContext::getInstance()->getConfiguration()->loadHelpers('Partial');
     slot('nav_menu', array('reference', 'find-aircraft'));
     $this->processFilter($request);
     if ($request->hasParameter('search') && $request->hasParameter('name')) {
         $this->pager = AircraftPeer::getPilotsThatFlySpecificAircraft($this->max, $this->page, $this->make, $this->model, $this->name);
         $this->last_page = ceil(count($this->pager[1]) / $this->max);
         $this->pagers = $this->pager[0];
         $this->selectedAircraft = $this->name;
         if ($this->page - 1 > 1) {
             $this->previousPage = $this->page - 1;
         } else {
             $this->previousPage = 1;
         }
         if ($this->previousPage != $this->last_page) {
             $this->nextPage = $this->previousPage + 1;
         } else {
             $this->nextPage = $this->last_page;
         }
         $this->currentPage = $this->page;
         return 'PilotSearch';
     }
     # filter
     if ($request->isMethod('post') || $request->getParameter('page')) {
         $this->pager = AircraftPeer::getPager($this->max, $this->page, $this->make, $this->model, $this->name);
         $this->aircrafts = $this->pager->getResults();
     }
 }