Beispiel #1
0
 public static function ValidateSearchRequest($request, $check_dates = false)
 {
     $date_from = $request->getParameter('date_from');
     $date_to = $request->getParameter('date_to');
     $city_name = $request->getParameter('city');
     $features = $request->getParameter('features');
     $errors = array();
     //  City______________
     $city = Doctrine_Core::getTable('City')->FindByNameLike($city_name);
     if (is_object($city) === false) {
         $error = 'City ' . $request->getParameter('city') . ' not found ... ';
         array_push($errors, $error);
     }
     $city_validator = new sfValidatorString(array('required' => true), array('required' => 'Please enter City to search'));
     try {
         $city_name = $city_validator->clean($city_name);
     } catch (sfValidatorError $e) {
         array_push($errors, $e);
     }
     //  Dates______________
     if ($check_dates) {
         if (strlen($date_from) > 1 === false) {
             array_push($errors, "Please enter date from.");
         }
         if (strlen($date_to) > 1 === false) {
             array_push($errors, "Please enter date to.");
         }
         if (strtotime($date_from) >= strtotime($date_to)) {
             array_push($errors, "Bad date range.");
         }
         if (LinkParser::CheckDate($date_from, '-', true) === false) {
             array_push($errors, "Invalid format for date from.");
         }
         if (LinkParser::CheckDate($date_to, '-', true) === false) {
             array_push($errors, "Invalid format for date to.");
         }
     }
     return $errors;
 }