/** * Executes index action * * @param sfRequest $request A request object */ public function executeIndex(sfWebRequest $request) { # for navigation menu sfContext::getInstance()->getConfiguration()->loadHelpers('Partial'); slot('nav_menu', array('instrument', '')); #security /* if( !$this->getUser()->hasCredential(array('Administrator','Staff','Pilot','Member','Coordinator','Volunteer'), false)){ $this->getUser()->setFlash("warning", 'You don\'t have permission to access this url '.$request->getReferer()); $this->redirect('dashboard/index'); }*/ if ($request->getParameter('type')) { $this->flag = 1; } if ($request->hasParameter('return')) { $this->pilot_request = 1; } if ($request->hasParameter('avail')) { $this->window_loc = 'avail'; } if ($request->hasParameter('window_loc_visual')) { $this->window_loc_visual = 'window_loc_visual'; } $member_id = $this->getUser()->getMemberId(); $member = MemberPeer::retrieveByPK($member_id); $pilot = $member->getPilot(); if ($request->getParameter('first') == 1) { if ($pilot) { $first_airport = AirportPeer::retrieveByPK($pilot->getPrimaryAirportId()); $this->orgin_airport = $first_airport->getIdent(); } $this->types = MissionTypePeer::getOnlyNames(); $this->dest_airport = null; $this->miss_type = null; $this->miss_date1 = null; $this->miss_date2 = null; } else { $this->processFilterVisual($request); } $this->airport_list = AirportPeer::getMappable(); $this->legs = MissionLegPeer::getMappable($this->orgin_airport, $this->dest_airport, $this->miss_type, $this->miss_date1, $this->miss_date2); $this->date_widget = new widgetFormDate(array('format_date' => array('js' => 'mm/dd/yy', 'php' => 'm/d/Y')), array('class' => 'text')); }
<dl class="destination-list"> <dt>From:</dt> <dd> <strong> Varied </strong> </dd> <dt>To:</dt> <dd> <strong> <?php $legs = $mission->getMissionLegs(); if ($legs) { $destination_airport = $legs[0]->getToAirportId(); } $airport_from = AirportPeer::retrieveByPK($destination_airport); if (isset($airport_from)) { echo $airport_from->getIdent(); } ?> </strong> <?php if (isset($airport_from)) { if ($airport_from->getCity() || $airport_from->getState()) { echo '( ' . $airport_from->getCity() . ', ' . $airport_from->getState() . ' )'; } } ?> <em>PST</em> </dd> </dl>
if ($coordinator->getMemberId()) { $coordiPerson = $coordinator->getMember()->getPerson(); } } if ($mleg->getMissAssisId()) { $memberMiss = MemberPeer::retrieveByPK($mleg->getMissAssisId()); $miss_assi_persopn = $memberMiss->getPerson(); } if ($mleg->getMissAssisId()) { $memberMiss = MemberPeer::retrieveByPK($mleg->getMissAssisId()); $miss_assi_persopn = $memberMiss->getPerson(); } if ($mleg->getFboId()) { $fbo = FboPeer::retrieveByPK($mleg->getFboId()); if ($fbo->getAirportId()) { $fbo_airport = AirportPeer::retrieveByPK($fbo->getAirportId()); } } $is_air = $mleg->getTransportation() == 'air_mission'; if ($is_air) { $to_airport = $mleg->getAirportRelatedByToAirportId(); $from_airport = $mleg->getAirportRelatedByFromAirportId(); } //// FBO information if ($mleg->getFboId()) { $fromFbo = FboPeer::retrieveByPK($mleg->getFboId()); } if ($mleg->getFboDestId()) { $destFbo = FboPeer::retrieveByPK($mleg->getFboDestId()); } //ETD and ETA information
?> <?php $agency = AgencyPeer::retrieveByPK($agency_id); ?> <?php } ?> <?php $airport_id = $camp->getAirportId(); ?> <?php if ($airport_id) { ?> <?php $airport = AirportPeer::retrieveByPK($airport_id); ?> <?php } ?> <tr> <td class="cell-1"> <?php if ($camp->getCampName()) { echo $camp->getCampName(); } ?> </td> <td class="cell-2"> <?php
</strong> <?php if (isset($airport_from)) { if ($airport_from->getCity() || $airport_from->getState()) { echo '( ' . $airport_from->getCity() . ', ' . $airport_from->getState() . ' )'; } } ?> <em>PST</em> </dd> <dt>To:</dt> <dd> <strong> <?php if ($leg->getToAirportId()) { $airport_to = AirportPeer::retrieveByPK($leg->getToAirportId()); if (isset($airport_to)) { echo $airport_to->getIdent(); } } ?> </strong> <?php if (isset($airport_to)) { if ($airport_to->getCity() || $airport_to->getState()) { echo '( ' . $airport_to->getCity() . ', ' . $airport_to->getState() . ' )'; } } ?> <em>PST</em> </dd>
<thead> <tr> <td>Leg Number</td> <td colspan="2">Origin</td> <td colspan="2">Destination</td> <td>Action</td> </tr> </thead> <tbody> <?php foreach ($miss_legs as $leg) { ?> <?php if ($leg->getTransportation() == 'air_mission') { $from_airport = AirportPeer::retrieveByPK($leg->getFromAirportId()); $to_airport = AirportPeer::retrieveByPK($leg->getToAirportId()); if ($from_airport && $to_airport) { ?> <tr style="<?php echo $leg->getCancelled() ? 'color:gray' : ''; ?> "> <td class="cell-1"><?php echo $leg->getLegNumber(); ?> </td> <td class="cell-2"><?php echo $from_airport->getIdent(); ?> </td> <td class="cell-1"><?php
<li> Country: <?php echo $person->getCountry() ? $person->getCountry() : '--'; ?> </li> <?php $airport = $pilot = null; ?> <?php $pilot = $member->getPilot(); ?> <?php if ($pilot && $pilot->getPrimaryAirportId()) { ?> <?php $airport = AirportPeer::retrieveByPK($pilot->getPrimaryAirportId()); ?> <?php } ?> <?php if ($airport) { ?> <li>Airport</li> <li>Identifier: <?php echo $airport->getIdent(); ?> </li> <li>Name: <?php echo $airport->getName(); ?>
<?php echo $o_airport->getIdent() . ' ( ' . $o_airport->getCity() . ', ' . $o_airport->getState() . ' )'; ?> <?php } ?> <?php } ?> </td> <td class="cell-1"> <?php if ($mission_leg->getToAirportId()) { ?> <?php $d_airport = AirportPeer::retrieveByPK($mission_leg->getToAirportId()); ?> <?php if ($d_airport || $d_airport->getCity() || $d_airport->getState()) { ?> <?php echo $d_airport->getIdent() . ' ( ' . $d_airport->getCity() . ', ' . $d_airport->getState() . ' )'; ?> <?php } ?> <?php } ?> </td> <td class="cell-2">
/** * Searches for camps * CODE:camp_create */ public function executeUpdate(sfWebRequest $request) { if (!$this->getUser()->hasCredential(array('Administrator', 'Staff', 'Coordinator'), false)) { $this->getUser()->setFlash("warning", 'You don\'t have permission to access this url ' . $request->getReferer()); $this->redirect('dashboard/index'); } sfContext::getInstance()->getConfiguration()->loadHelpers('Partial'); $this->agencies = AgencyPeer::getForSelectParent(); $this->agency = trim($this->getRequestParameter('agency', '*')) == '' ? '*' : trim($this->getRequestParameter('agency', '*')); $this->airport = trim($this->getRequestParameter('airport', '*')) == '' ? '*' : trim($this->getRequestParameter('airport', '*')); $this->airports = AirportPeer::doSelect(new Criteria()); if ($request->getParameter('id')) { $camp = CampPeer::retrieveByPK($request->getParameter('id')); $this->forward404Unless($camp); if (isset($camp)) { if ($camp->getAgencyId()) { $agency = AgencyPeer::retrieveByPK($camp->getAgencyId()); if (isset($agency)) { $this->agency_id = $agency->getId(); } } if ($camp->getAirportId()) { $airport = AirportPeer::retrieveByPK($camp->getAirportId()); if (isset($airport)) { $this->airport_id = $airport->getId(); } } } $this->title = 'Edit camp'; $success = 'Camp information has been successfully changed!'; slot('nav_menu', array('mission_coord', '')); } else { $camp = new Camp(); if ($request->getParameter('agency_id')) { $this->agency_id = $request->getParameter('agency_id'); } $this->title = 'Add new camp'; $success = 'Camp information has been successfully created!'; slot('nav_menu', array('mission_coord', 'add-camp')); } //Agency PopUp Form $agency = new Agency(); $this->form_a = new AgencyForm($agency); $this->a_referer = $request->getReferer(); //Aiport PopUp Form $airport = new Airport(); $this->form_airport = new AirportForm($airport); $this->airport_referer = $request->getReferer(); $this->form = new CampForm($camp); if ($request->isMethod('post')) { $this->referer = $request->getParameter('referer'); $this->form->bind($request->getParameter('camp')); $ma = ''; foreach ($this->form as $pass_key => $pass_data) { $ma .= $pass_data . '|'; } if ($this->form->isValid() && $request->getParameter('agency') != null) { if ($request->getParameter('agency')) { $agency = AgencyPeer::getByName($request->getParameter('agency')); } if (isset($agency) && $agency instanceof Agency) { $camp->setAgencyId($agency->getId()); } //$aId = $camp->getAirportId(); //$aInd = $request->getParameter('airport'); $airport = AirportPeer::getByIdent($request->getParameter('airport')); /*if(!empty($aId)){ if(!empty($aInd)){ $camp->setAirportId($airport->getId()); } else{ $camp->setAirportId($aId); } }else{ if($airport) $camp->setAirportId($airport->getId()); }*/ /*if($request->getParameter('airport')){ $camp->setAirportId(null); }else{ $airport = AirportPeer::getByIdent($request->getParameter('airport')); if(isset($airport) instanceof Airport){ $camp->setAirportId($airport->getId()); } }*/ //$camp->setAirport($request->getParameter('airport_name')); $camp->setAirport($airport); $camp->setSession($this->form->getValue('session')); $camp->setCampName($this->form->getValue('camp_name')); $camp->setArrivalDate($this->form->getValue('arrival_date')); $camp->setDepartureDate($this->form->getValue('departure_date')); $camp->setArrivalComment($this->form->getValue('arrival_comment')); $camp->setDepartureComment($this->form->getValue('departure_comment')); $camp->setComment($this->form->getValue('comment')); if ($camp->isNew()) { $content = $this->getUser()->getName() . ' added new Camp: ' . $camp->getCampName(); ActivityPeer::log($content); } $camp->save(); $this->getUser()->setFlash('success', $success); if ($this->form->isNew()) { $this->redirect('camp/view?id=' . $camp->getId()); } else { $this->redirect('camp/index?showlist=true'); } //add passengers to camp then create new mission, legs //missions assocated with camps that will be a group mission } else { if ($request->getParameter('agency_id') == null) { $this->getUser()->setFlash('warning', 'Please choose Agency!'); } } } else { # Set referer URL $this->referer = $request->getReferer() ? $request->getReferer() : '@camp'; //echo $this->referer; exit (); } $this->camp = $camp; }
use_stylesheets_for_form($form_airport); use_javascripts_for_form($form_airport); use_helper('Javascript', 'Form'); use_helper('jQuery', 'Form'); ?> <?php use_helper('jQuery'); ?> <h2><?php echo $title; ?> </h2> <?php $airport_info = AirportPeer::retrieveByPK($camp->getAirportId()); ?> <div class="passenger-form"> <form action="<?php echo url_for('@camp_create'); ?> " method="post" id="camp_form"> <input type="hidden" name="id" value="<?php echo $camp->getId(); ?> " /> <input type="hidden" name="referer" value="<?php echo $referer; ?> " /> <div class="box full">
/** * Specifies the related airport. * CODE: airport_create */ public function executeChangeAirport(sfWebRequest $request) { # security if (!$this->getUser()->hasCredential(array('Administrator'), false)) { $this->getUser()->setFlash("warning", 'You don\'t have permission to access this url ' . $request->getReferer()); $this->redirect('dashboard/index'); } if ($request->hasParameter('use_id')) { $pilot = PilotPeer::retrieveByPK($request->getParameter('for')); $this->forward404Unless($pilot); $change_airport = AirportPeer::retrieveByPK($request->getParameter('use_id')); $this->forward404Unless($change_airport); $pilot->setPrimaryAirportId($change_airport->getId()); $pilot->save(); $this->getUser()->setFlash('success', 'Change Airport have successfully changed!'); $this->redirect('@pilot_view?id=' . $pilot->getId()); } else { $this->redirect('@default_index?module=airport&pilot_for=' . $request->getParameter('for')); } }
<td> </td> </tr> <?php $count = 1; foreach ($camp_passengers_return as $camp_passenger) { ?> <?php $passenger = $camp_passenger->getPassenger(); ?> <?php if ($camp_passenger->getReturnAirportId()) { $air_port = AirportPeer::retrieveByPK($camp_passenger->getReturnAirportId()); ?> <?php } elseif ($camp_passenger->getAirportId()) { $air_port = AirportPeer::retrieveByPK($camp_passenger->getAirportId()); } ?> <tr class="passenger <?php if ($count % 2 != 0) { echo ' alt'; } ?> " id="passenger_<?php echo $passenger->getId(); ?> "> <td><?php echo $count++; ?> </td>
/** * Mission Leg Edit * CODE: mission_leg_create */ public function executeUpdate(sfWebRequest $request) { #Security if (!$this->getUser()->hasCredential(array('Administrator', 'Staff', 'Coordinator'), false)) { $this->getUser()->setFlash("warning", 'You don\'t have permission to access this url ' . $request->getReferer()); $this->redirect('dashboard/index'); } $this->errors = array(); // for validation $this->orig_set = ''; $this->dest_set = ''; if ($request->getParameter('id')) { $this->title = 'Edit Mission Leg'; $this->leg = MissionLegPeer::retrieveByPK($request->getParameter('id')); if ($this->leg->getFromAirportId()) { $this->fromAirport = $this->leg->getAirportRelatedByFromAirportId(); } if ($this->leg->getToAirportId()) { $this->toAirport = $this->leg->getAirportRelatedBytoAirportId(); } if ($this->leg->getCoordinatorId()) { $this->coordinator = CoordinatorPeer::retrieveByPK($this->leg->getCoordinatorId()); } //print_r($this->coordinator); if ($this->leg->getFboId()) { $this->fbo = FboPeer::retrieveByPK($this->leg->getFboId()); $this->fbo_address = $this->leg->getFboId(); } if ($this->leg->getBackupPilotId()) { $this->backup_pilot = PilotPeer::retrieveByPK($this->leg->getBackupPilotId()); if (isset($this->backup_pilot) && $this->backup_pilot instanceof Pilot) { $this->bp_person = $this->backup_pilot->getMember()->getPerson(); } } if ($this->leg->getBackupCopilotId()) { $this->backup_co_pilot = PilotPeer::retrieveByPK($this->leg->getBackupCopilotId()); if (isset($this->backup_co_pilot) && $this->backup_co_pilot instanceof Pilot) { $this->bp_co_person = $this->backup_co_pilot->getMember()->getPerson(); } } if ($this->leg->getWaiverReceived()) { $this->waiver_rec = $this->leg->getWaiverReceived(); } else { $this->waiver_rec = ''; } if ($this->leg->getFboAddressNew()) { $this->new_fbo_address = $this->leg->getFboAddressNew(); } else { $this->new_fbo_address = ''; } $this->date_widget = new widgetFormDate(array('format_date' => array('js' => 'mm/dd/yy', 'php' => 'm/d/Y')), array('class' => 'text')); $this->forward404Unless($this->leg); $this->mission = $this->leg->getMission(); $this->passenger = $this->mission->getPassenger(); $this->person = $this->passenger->getPerson(); $this->member = MemberPeer::getByPersonId($this->person->getId()); /*echo "<pre>"; print_r($this->member ); */ /* if(isset($this->member) && $this->member instanceof Member){ $this->pilot = PilotPeer::getByMemberId($this->member->getId()); } /* if(isset($this->leg) && $this->leg instanceof MissionLeg){ $this->pilot = PilotPeer::retrieveByPK($this->leg->getPilotId()); } * */ if (isset($this->leg) && $this->leg instanceof MissionLeg) { if ($this->leg->getPilotId()) { $this->pilot = PilotPeer::retrieveByPK($this->leg->getPilotId()); $this->pilot_member = MemberPeer::retrieveByPK($this->pilot->getMemberId()); $this->copilot = PilotPeer::retrieveByPK($this->leg->getCoPilotId()); //echo "<pre>"; //print_r($this->mission_assistant); $this->back_up_mission_assistant = PilotPeer::retrieveByPK($this->leg->getBackupMissAssisId()); } if ($this->leg->getMissAssisId()) { $this->mission_assistant = PilotPeer::getByMemberId($this->leg->getMissAssisId()); } } //echo "<pre>"; //print_r($this->pilot_member); $is_pilot_requested = PilotRequestPeer::getByLegId($this->leg->getId()); if (isset($is_pilot_requested) && $is_pilot_requested instanceof PilotRequest) { $this->p_req = $is_pilot_requested; } /* echo "<pre>"; print_r($this->person->getId()); die(); */ $this->forward404Unless($this->mission); $mission_id = $this->mission->getId(); } else { $this->title = 'Add Mission Leg'; $this->leg = new MissionLeg(); $mission_id = $request->hasParameter('mis') ? $request->getParameter('mis') : $request->getParameter('mission_id'); $this->mission = MissionPeer::retrieveByPK($mission_id); $this->forward404Unless($this->mission); } if ($request->isMethod('post')) { if ($request->getParameter('transportation') == 'air_mission') { # AIR MISSION if ($request->getParameter('orgin_airport')) { $o_airport = AirportPeer::getByIdent($request->getParameter('orgin_airport')); if (!$o_airport instanceof Airport) { $this->errors[] = 'Origin airport not found in database'; } } else { $this->errors[] = 'Please specify origin airport'; } if ($request->getParameter('dest_airport')) { $d_airport = AirportPeer::getByIdent($request->getParameter('dest_airport')); if (!$d_airport instanceof Airport) { $this->errors[] = 'Destination airport not found in database'; } } else { $this->errors[] = 'Please specify destination airport'; } if (count($this->errors) == 0) { $mission_leg = $this->leg; $mission_leg->setMissionId($mission_id); $mission_leg->setCancelled($request->getParameter('cancelled')); if ($mission_leg->isNew()) { $mission_leg->setLegNumber(MissionLegPeer::getMaxLegNumber($mission_id) + 1); } $mission_leg->setFromAirportId($o_airport->getId()); $mission_leg->setToAirportId($d_airport->getId()); $o_air = AirportPeer::retrieveByPK($o_airport->getId()); $d_air = AirportPeer::retrieveByPK($d_airport->getId()); $distances = MissionLegPeer::getDistance($o_air->getIdent(), $d_air->getIdent()); //$mission_leg->setBaggageWeight($request->getParameter('baggage_weight')); //$mission_leg->setBaggageDesc($request->getParameter('baggage_desc')); $mission_leg->setPassOnBoard(0); $mission_leg->setTransportation('air_mission'); $mission_leg->save(); $id = $mission_leg->getId(); $leg = MissionLegPeer::retrieveByPK($id); $leg->setReverseFrom($id); $leg->save(); } } elseif ($request->getParameter('transportation') == 'ground_mission') { # GROUND MISSION $origin = $request->getParameter('ground_origin'); $destination = $request->getParameter('ground_destination'); $orgintset = $request->getParameter('orig_set'); $desttset = $request->getParameter('dest_set'); $fbo_address = $request->getParameter('fbo_address'); $this->orig_set = $orgintset; $this->dest_set = $desttset; $this->fbo_address = $fbo_address; if (empty($destination) && empty($desttset)) { $this->errors[] = 'Please specify destination address'; } if (empty($origin) && empty($orgintset)) { $this->errors[] = 'Please specify origin address'; } elseif ($destination == $origin && $destination != '') { $this->errors[] = 'Origin and Destination addresses conflict'; } if (empty($fbo_address)) { $this->errors[] = 'Please specify FBO name'; } if (count($this->errors) == 0) { $mission_leg = $this->leg; $mission_leg->setMissionId($mission_id); if ($mission_leg->isNew()) { $mission_leg->setLegNumber(MissionLegPeer::getMaxLegNumber($mission_id) + 1); } $mission_leg->setPassOnBoard(0); $mission_leg->setTransportation('ground_mission'); //get addresses by type $p = $this->passenger = $this->mission->getPassenger(); if ($p instanceof Passenger) { $this->person = $p->getPerson(); } $this->ground_addresses = array('patient' => '', 'facility' => '', 'lodging' => ''); $orgintsetsave = $request->getParameter('ground_origin'); if (empty($orgintsetsave)) { $orgintsetsave = $request->getParameter('orig_set'); } $desttsetsave = $request->getParameter('ground_destination'); if (empty($desttsetsave)) { $desttsetsave = $request->getParameter('dest_set'); } $mission_leg->setGroundOrigin($orgintsetsave); $mission_leg->setGroundDestination($desttsetsave); $mission_leg->setFboId($fbo_address); //ziyed $fbo_address_new = $request->getParameter('fbo_address_new'); $mission_leg->setFboAddressNew($fbo_address_new); //end ziyed $mission_leg->save(); $id = $mission_leg->getId(); $leg = MissionLegPeer::retrieveByPK($id); $leg->setReverseFrom($id); $leg->save(); } } elseif ($request->getParameter('transportation') == 'commercial_mission') { # COMMERCIAL MISSION $airline_id = $request->getParameter('airline_id'); if ($airline_id) { $custom = $request->getParameter('airline_custom'); if ($airline_id == 'other') { if (empty($custom)) { $this->errors[] = 'Please type a new airline name!'; } } else { $airline = AirlinePeer::retrieveByPK($airline_id = $request->getParameter('airline_id')); if (!$airline instanceof Airline) { $this->errors[] = 'Please select airline!'; } } } else { $this->errors[] = 'Please select airline!'; } $origin = $request->getParameter('origin'); $destination = $request->getParameter('destination'); if (empty($origin)) { $this->errors[] = 'Please specify origin'; } if (empty($destination)) { $this->errors[] = 'Please specify destination'; } if (count($this->errors) == 0) { $flight_time = $request->getParameter('flight_time'); if (empty($flight_time['hour']) || empty($flight_time['minute'])) { $flight_time = null; } $airline_id = $request->getParameter('airline_id'); if ($airline_id == 'other') { $airline = new Airline(); $airline->setName($request->getParameter('airline_custom')); $airline->save(); } else { $airline = AirlinePeer::retrieveByPK($airline_id); $this->forward404Unless($airline); } $flight_number = $request->getParameter('flight_number'); $departure = $request->getParameter('departure'); $arrival = $request->getParameter('arrival'); $mission_leg = $this->leg; $mission_leg->setMissionId($this->mission->getId()); if ($mission_leg->isNew()) { $mission_leg->setLegNumber(MissionLegPeer::getMaxLegNumber($mission_id) + 1); } $mission_leg->setFlightTime($flight_time ? strtotime($flight_time['hour'] . ':' . $flight_time['minute'] . ' ' . $flight_time['period']) : null); //$mission_leg->setBaggageDesc($request->getParameter('baggage_desc')); //$mission_leg->setBaggageWeight($request->getParameter('baggage_weight')); $mission_leg->setAirlineId($airline->getId()); $mission_leg->setFundId($request->getParameter('fund_id')); $mission_leg->setConfirmCode($request->getParameter('confirm_code')); $mission_leg->setFlightCost($request->getParameter('flight_cost')); $mission_leg->setCommOrigin($origin); $mission_leg->setCommDest($destination); $mission_leg->setFlightNumber($flight_number); $v = $departure; if (empty($v[0]['hour']) || empty($v[0]['minute'])) { $v = null; } $mission_leg->setDeparture($v ? strtotime($v[0]['hour'] . ':' . $v[0]['minute'] . ' ' . $v[0]['period']) : null); $v = $arrival; if (empty($v[0]['hour']) || empty($v[0]['minute'])) { $v = null; } $mission_leg->setArrival($v ? strtotime($v[0]['hour'] . ':' . $v[0]['minute'] . ' ' . $v[0]['period']) : null); $mission_leg->setTransportation('commercial_mission'); $mission_leg->save(); } } else { $this->forward404(); } if (count($this->errors) == 0) { $this->getUser()->setFlash('success', 'New Mission leg has successfully created!'); if ($request->getParameter('add_another')) { $this->redirect('@leg_create?mis=' . $this->mission->getId()); } else { $this->redirect('@mission_view?id=' . $this->mission->getId()); } } } $this->date_widget = new widgetFormDate(array('format_date' => array('js' => 'mm/dd/yy', 'php' => 'm/d/Y')), array('class' => 'text')); //echo '<pre>';print_r($this->date_widget); $this->time_widget = new widgetFormTime(); $this->airport_list = AirportPeer::getMappable(); $this->airlines = AirlinePeer::doSelect(new Criteria()); $this->funds = FundPeer::doSelect(new Criteria()); $p = $this->passenger = $this->mission->getPassenger(); if ($p instanceof Passenger) { $this->person = $p->getPerson(); } else { unset($this->passenger); } $this->itinerary = $this->mission->getItinerary(); //echo '<pre>';print_r($this->itinerary); // Pre-define addresses for ground missions $this->ground_addresses = array('patient' => '', 'facility' => '', 'lodging' => '', 'airport' => ''); $this->ground_addr_sel = sfConfig::get('app_ground_address_type', array()); if ($this->itinerary) { $this->ground_addresses['lodging'] = $this->ground_addresses['facility'] = $this->itinerary->getDestCity() . ', ' . $this->itinerary->getDestState(); } if ($this->passenger) { $this->ground_addresses['lodging'] = $this->passenger->getLodgingName() . ' ' . $this->ground_addresses['lodging']; $this->ground_addresses['facility'] = $this->passenger->getFacilityName() . ' ' . $this->ground_addresses['facility']; $this->ground_addresses['patient'] = $this->person->getAddress1() . ' ' . $this->person->getAddress2() . ' ' . $this->person->getCity() . ', ' . $this->person->getState() . ' ' . $this->person->getZipcode(); } }
public function executeVisual(sfWebRequest $request) { #security if (!$this->getUser()->hasCredential(array('Administrator', 'Staff', 'Pilot', 'Member', 'Coordinator', 'Volunteer'), false)) { $this->getUser()->setFlash("warning", 'You don\'t have permission to access this url ' . $request->getReferer()); $this->redirect('dashboard/index'); } $member_id = $this->getUser()->getMemberId(); $member = MemberPeer::retrieveByPK($member_id); $pilot = $member->getPilot(); if ($request->getParameter('first') == 1) { if ($pilot) { $first_airport = AirportPeer::retrieveByPK($pilot->getPrimaryAirportId()); $this->orgin_airport = $first_airport->getIdent(); } $this->types = MissionTypePeer::getOnlyNames(); $this->dest_airport = null; $this->miss_type = null; $this->miss_date1 = null; $this->miss_date2 = null; } else { $this->processFilterVisual($request); } $this->airport_list = AirportPeer::getMappable(); $this->legs = MissionLegPeer::getMappable($this->orgin_airport, $this->dest_airport, $this->miss_type, $this->miss_date1, $this->miss_date2); $this->date_widget = new widgetFormDate(array('format_date' => array('js' => 'mm/dd/yy', 'php' => 'm/d/Y')), array('class' => 'text')); }
public static function getByFilter($max = 10, $page = 1, $sort_by, $availability, $first_date, $last_date, $types, $no_weekday, $no_weekend, $as_ma, $orgin, $dest, $airport_id, $date_range1, $date_range2, $filled, $open, $pilot, $mission_assistant, $ifr_backup, $wing, $ident, $city, $state, $zip, $day_1 = '', $day_2 = '', $day_3 = '', $day_4 = '', $day_5 = '', $day_6 = '', $day_7 = '', $all_type, $max_pass, $max_wei, $max_dist, $max_eff, $home_base) { $c = new Criteria(); $c->addAscendingOrderByColumn(self::MISSION_ID); $c->addJoin(self::MISSION_ID, MissionPeer::ID, Criteria::LEFT_JOIN); if ($sort_by == '0') { $c->addDescendingOrderByColumn(MissionPeer::MISSION_DATE); } else { $c->addAscendingOrderByColumn(MissionPeer::MISSION_DATE); } $c->addJoin(MissionPeer::MISSION_TYPE_ID, MissionTypePeer::ID, Criteria::LEFT_JOIN); $c->addJoin(self::ID, PilotRequestPeer::LEG_ID, Criteria::LEFT_JOIN); //airport $c->addAlias('c1', AirportPeer::TABLE_NAME); $c->addAlias('c2', AirportPeer::TABLE_NAME); $c->addAlias('hb', AirportPeer::TABLE_NAME); $c->addJoin(self::FROM_AIRPORT_ID, AirportPeer::alias('c1', AirportPeer::ID), Criteria::LEFT_JOIN); $c->addJoin(self::TO_AIRPORT_ID, AirportPeer::alias('c2', AirportPeer::ID), Criteria::LEFT_JOIN); //if($home_base){ //$c->addJoin(self::FROM_AIRPORT_ID, AirportPeer::alias('hb', $home_base), Criteria::LEFT_JOIN); //$c->addJoin(self::TO_AIRPORT_ID , AirportPeer::alias('hb', $home_base), Criteria::LEFT_JOIN); //} if ($airport_id != null) { $criterion = $c->getNewCriterion(self::FROM_AIRPORT_ID, $airport_id, Criteria::LIKE); $criterion->addOR($c->getNewCriterion(self::TO_AIRPORT_ID, $airport_id, Criteria::LIKE)); $c->add($criterion); } //wing $c->addJoin(MissionPeer::PASSENGER_ID, PassengerPeer::ID, Criteria::LEFT_JOIN); $c->addJoin(PassengerPeer::PERSON_ID, PersonPeer::ID, Criteria::LEFT_JOIN); $c->addJoin(PersonPeer::ID, MemberPeer::PERSON_ID, Criteria::LEFT_JOIN); $c->addJoin(MemberPeer::WING_ID, WingPeer::ID, Criteria::LEFT_JOIN); $c->addJoin(MemberPeer::ID, AvailabilityPeer::MEMBER_ID, Criteria::LEFT_JOIN); if ($availability == '') { if ($first_date != null && $last_date != null) { $criterion = $c->getNewCriterion(MissionPeer::MISSION_DATE, date('Y-m-d', strtotime($first_date)), Criteria::GREATER_EQUAL); $criterion->addAnd($c->getNewCriterion(MissionPeer::MISSION_DATE, date('Y-m-d', strtotime($last_date)), Criteria::LESS_EQUAL)); $c->add($criterion); } } elseif ($availability == 'on') { if ($date_range1 != null && $date_range2 != null) { $criterion = $c->getNewCriterion(MissionPeer::MISSION_DATE, date('Y-m-d', strtotime($date_range1)), Criteria::GREATER_EQUAL); $criterion->addAnd($c->getNewCriterion(MissionPeer::MISSION_DATE, date('Y-m-d', strtotime($date_range2)), Criteria::LESS_EQUAL)); $c->add($criterion); } #max filters if ($max_dist) { $c->add(self::FROM_AIRPORT_ID, 'Round(ACos(Sin(Radians(c1.latitude)) * Sin(Radians(c2.latitude)) + Cos(Radians(c1.latitude)) * Cos(Radians(c2.latitude)) * Cos(Radians(c1.longitude)-Radians(c2.longitude))) * ((180*60)/3.1415),0) < ' . (int) $max_dist, Criteria::CUSTOM); } $c->addGroupByColumn(CompanionPeer::PASSENGER_ID); if ($max_pass) { $c->addHaving($c->getNewCriterion(CompanionPeer::PASSENGER_ID, 'COUNT(' . CompanionPeer::PASSENGER_ID . ') > ' . $max_pass, Criteria::CUSTOM)); } $c->addGroupByColumn(CompanionPeer::WEIGHT); if ($max_wei) { $c->addHaving($c->getNewCriterion(CompanionPeer::WEIGHT, 'SUM(' . CompanionPeer::WEIGHT . ') > ' . $max_wei, Criteria::CUSTOM)); } $c->addJoin(MissionPeer::PASSENGER_ID, CompanionPeer::PASSENGER_ID, Criteria::LEFT_JOIN); // $c->addAsColumn('aaaa', 'Round(ACos(Sin(Radians(c1.latitude)) * Sin(Radians(c2.latitude)) + Cos(Radians(c1.latitude)) * Cos(Radians(c2.latitude)) * Cos(Radians(c1.longitude)-Radians(c2.longitude))) * ((180*60)/3.1415),0)'); if ($orgin == 'on' && $airport_id != null) { $c->add(self::FROM_AIRPORT_ID, $airport_id, Criteria::LIKE); } if ($dest == 'on' && $airport_id != null) { $c->add(self::TO_AIRPORT_ID, $airport_id, Criteria::LIKE); } if ($all_type == '') { if ($filled == 'on') { $c->add(MissionTypePeer::NAME, 'filled', Criteria::LIKE); } if ($open == 'on') { $c->add(MissionTypePeer::NAME, 'open', Criteria::LIKE); } } if ($pilot == 'on') { $c->add(self::COPILOT_WANTED, '1', Criteria::LIKE); } if ($mission_assistant == 'on') { $c->add(PilotRequestPeer::MISSION_ASSISTANT_WANTED, '1', Criteria::LIKE); } if ($ifr_backup == 'on') { $c->add(PilotRequestPeer::IFR_BACKUP_WANTED, '1', Criteria::LIKE); } if ($as_ma) { $c->add(PilotRequestPeer::MISSION_ASSISTANT_WANTED, '1', Criteria::LIKE); } if (!$no_weekday) { //DAYS if ($day_1) { $c->addOr(MissionPeer::MISSION_DATE, 'date_format(' . MissionPeer::MISSION_DATE . ', "%W")="' . date('l', strtotime($day_1)) . '"', Criteria::CUSTOM); } if ($day_2) { $c->addOr(MissionPeer::MISSION_DATE, 'date_format(' . MissionPeer::MISSION_DATE . ', "%W")="' . date('l', strtotime($day_2)) . '"', Criteria::CUSTOM); } if ($day_3) { $c->addOr(MissionPeer::MISSION_DATE, 'date_format(' . MissionPeer::MISSION_DATE . ', "%W")="' . date('l', strtotime($day_3)) . '"', Criteria::CUSTOM); } if ($day_4) { $c->addOr(MissionPeer::MISSION_DATE, 'date_format(' . MissionPeer::MISSION_DATE . ', "%W")="' . date('l', strtotime($day_4)) . '"', Criteria::CUSTOM); } if ($day_5) { $c->addOr(MissionPeer::MISSION_DATE, 'date_format(' . MissionPeer::MISSION_DATE . ', "%W")="' . date('l', strtotime($day_5)) . '"', Criteria::CUSTOM); } } if (!$no_weekend) { if ($day_6) { $c->addOr(MissionPeer::MISSION_DATE, 'date_format(' . MissionPeer::MISSION_DATE . ', "%W")="' . date('l', strtotime($day_6)) . '"', Criteria::CUSTOM); } if ($day_7) { $c->addOr(MissionPeer::MISSION_DATE, 'date_format(' . MissionPeer::MISSION_DATE . ', "%W")="' . date('l', strtotime($day_7)) . '"', Criteria::CUSTOM); } } // if($wing)$c->add(WingPeer::Name,'%'.$wing.'%',Criteria::LIKE); if ($ident != null) { $criterion = $c->getNewCriterion(AirportPeer::alias("c1", AirportPeer::IDENT), $ident); $criterion->addOr($c->getNewCriterion(AirportPeer::alias("c2", AirportPeer::IDENT), $ident)); $c->add($criterion); } if ($city != null) { $criterion = $c->getNewCriterion(AirportPeer::alias("c1", AirportPeer::CITY), $city); $criterion->addOr($c->getNewCriterion(AirportPeer::alias("c2", AirportPeer::CITY), $city)); $c->add($criterion); } if ($state != null) { $criterion = $c->getNewCriterion(AirportPeer::alias("c1", AirportPeer::STATE), $state); $criterion->addOr($c->getNewCriterion(AirportPeer::alias("c2", AirportPeer::STATE), $state)); $c->add($criterion); } if ($zip != null) { $criterion = $c->getNewCriterion(AirportPeer::alias("c1", AirportPeer::ZIPCODE), $zip); $criterion->addOr($c->getNewCriterion(AirportPeer::alias("c2", AirportPeer::ZIPCODE), $zip)); $c->add($criterion); } } MissionLegPeer::addSelectColumns($c); $c->addAsColumn('distance', 'Round(ACos(Sin(Radians(c1.latitude)) * Sin(Radians(c2.latitude)) + Cos(Radians(c1.latitude)) * Cos(Radians(c2.latitude)) * Cos(Radians(c1.longitude)-Radians(c2.longitude))) * ((180*60)/3.1415),0)'); //EFFECIENCY if ($home_base && ($hb_airport = AirportPeer::retrieveByPK($home_base))) { $c->addAsColumn('efficiency', "\n CEILING(ROUND(ACOS(SIN(RADIANS(c1.latitude))\n *SIN(RADIANS(c2.latitude))+COS(RADIANS(c1.latitude))\n *COS(RADIANS(c2.latitude))*COS(RADIANS(c1.longitude)-RADIANS(c2.longitude))) \n *((180*60)/PI()))/(ROUND(ACOS(SIN(RADIANS(c1.latitude))\n *SIN(RADIANS(c2.latitude))+COS(RADIANS(c1.latitude))\n *COS(RADIANS(c2.latitude))\n * \n COS(RADIANS(c1.longitude)-RADIANS(c2.longitude))\n ) * ((180*60)/PI())\n )\n +\n ROUND(\n ACOS(\n SIN(RADIANS({$hb_airport->getLatitude()}))\n *\n SIN(RADIANS(c2.latitude))\n +\n COS(RADIANS({$hb_airport->getLatitude()}))\n *\n COS(RADIANS(c2.latitude))\n *\n COS(RADIANS({$hb_airport->getLongitude()})-RADIANS(c2.longitude))\n ) * ((180*60)/PI())\n )\n +\n ROUND(\n ACOS(\n SIN(RADIANS({$hb_airport->getLatitude()}))\n *\n SIN(RADIANS(c1.latitude))\n +\n COS(RADIANS({$hb_airport->getLatitude()}))\n *\n COS(RADIANS(c1.latitude))\n *\n COS(RADIANS({$hb_airport->getLongitude()})-RADIANS(c1.longitude))\n ) * ((180*60)/PI()))) * 200)"); $c->addDescendingOrderByColumn('efficiency'); } $c->addDescendingOrderByColumn('distance'); //return self::doSelect($c); $pager = new sfPropelPager('MissionLeg', $max); $pager->setCriteria($c); $pager->setPage($page); $pager->init(); return $pager; }