public function executeRemovePassenger(sfWebRequest $request) { if ($request->getParameter('camp_id') && $request->getParameter('member_id') && $request->getParameter('pass_id')) { $camp_mission_legs = MissionLegPeer::getByCampIdPassengerId($request->getParameter('camp_id'), $request->getParameter('pass_id')); if ($camp_mission_legs) { foreach ($camp_mission_legs as $leg) { $leg->setPilotId(null); $leg->save(); } } //if passenger linked then remove also $camp_passenger = CampPassengerPeer::retrieveByPK($request->getParameter('camp_id'), $request->getParameter('pass_id')); if ($camp_passenger->getLink() != null) { $camp_mission_legs = MissionLegPeer::getByCampIdPassengerId($request->getParameter('camp_id'), $camp_passenger->getLink()); if ($camp_mission_legs) { foreach ($camp_mission_legs as $leg) { $leg->setPilotId(null); $leg->save(); } } } } $this->setLayout(false); $this->flight_date = $request->getParameter('flight_date'); $this->pilot_req_id = $request->getParameter('pilot_req_id'); $this->getUser()->setFlash('error', 'Oops! Please try again.'); $this->setTemplate('assignPassenger'); }