Пример #1
0
 public static function getCountOfavailableSeats($rideId)
 {
     $ride = Rides::model()->find('id=:rideId', array(':rideId' => $rideId));
     if ($ride) {
         $approved = RideUsers::model()->findAll('ride_id=:rideId AND status=:status', array(':rideId' => $rideId, ':status' => 'APPROVED'));
         $approvedCount = 0;
         if (!empty($approved)) {
             $approvedCount = count($approved);
         }
         $count = $ride->seats_available_to_book - $approvedCount;
         return $count;
     } else {
         return false;
     }
 }
Пример #2
0
 public static function searchRides($data)
 {
     $criteria = new CDbCriteria();
     $condition = null;
     $params = null;
     /*$goingFromLat=getGoingFromName($fromLat);
       $goingFromLong=getGoingFromName($fromLong);
       $goingToLat=getGoingToName($toLat);
       $goingToLong=getGoingToName($toLong);*/
     $goingFromLat = 11.0168445;
     $goingFromLong = 76.95583209999995;
     $fromLat1 = $goingFromLat - 0.01;
     $fromLat2 = $goingFromLat + 0.01;
     $fromLong1 = $goingFromLong - 0.01;
     $fromLong2 = $goingFromLong + 0.01;
     $goingToLat = 11.0168445;
     $goingToLong = 76.95583209999995;
     $toLat1 = $goingToLat - 0.01;
     $toLat2 = $goingToLat + 0.01;
     $toLong1 = $goingToLong - 0.01;
     $toLong2 = $goingToLong + 0.01;
     if ($data['GoingFrom'] != "") {
         $condition .= 'start_point_lat>=:fromLat1 AND start_point_lat<=:fromLat2 AND start_point_long>=:fromLong1 AND start_point_long<=:fromLong2';
         $params[':fromLat1'] = $fromLat1;
         $params[':fromLat2'] = $fromLat2;
         $params[':fromLong1'] = $fromLong1;
         $params[':fromLong2'] = $fromLong2;
     }
     if ($data['GoingTo'] != "") {
         if ($condition != "") {
             $condition .= ' && ';
         }
         $condition .= 'end_point_lat>=:toLat1 AND end_point_lat<=:toLat2 AND end_point_long>=:toLong1 AND end_point_long<=:toLong2';
         $params[':toLat1'] = $toLat1;
         $params[':toLat2'] = $toLat2;
         $params[':toLong1'] = $toLong1;
         $params[':toLong2'] = $toLong2;
     }
     if ($data['date'] != "") {
         if ($condition != "") {
             $condition .= ' && ';
         }
         $condition .= 'start_date=:date';
         $params[':date'] = $data['date'];
     } else {
         if ($condition != "") {
             $condition .= ' && ';
         }
         $condition .= 'start_date>=:date';
         $sdate = date("Y-m-d");
         $params[':date'] = $sdate;
     }
     if ($data['time'] != "") {
         if ($condition != "") {
             $condition .= ' && ';
         }
         $condition .= 'start_time=:time';
         $params[':time'] = $data['time'];
     }
     if ($data['age'] != "") {
         if ($condition != "") {
             $condition .= ' && ';
         }
         $condition .= 'age_group=:age';
         $params[':age'] = $data['age'];
     }
     if ($condition != null) {
         $criteria->condition = $condition;
         $criteria->params = $params;
     }
     $rides = Rides::model()->findAll($criteria);
     return $rides;
 }