Refactor to use PostGIS database instead of gtfs tools
[busui.git] / include / db / route-dao.inc.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
<?php
 
function getRoute($routeID) {
/*
        def handle_json_GET_routerow(self, params):
    schedule = self.server.schedule
    route = schedule.GetRoute(params.get('route', None))
    return [transitfeed.Route._FIELD_NAMES, route.GetFieldValuesTuple()]
*/
}
function getRoutes() {
/* def handle_json_GET_routes(self, params):
    """Return a list of all routes."""
    schedule = self.server.schedule
    result = []
    for r in schedule.GetRouteList():
      servicep = None
      for t in schedule.GetTripList():
        if t.route_id == r.route_id:
          servicep = t.service_period
          break
      result.append( (r.route_id, r.route_short_name, r.route_long_name, servicep.service_id) )
    result.sort(key = lambda x: x[1:3])
    return result
*/    
}
 
function findRouteByNumber($routeNumber) {
    /*
  def handle_json_GET_routesearch(self, params):
    """Return a list of routes with matching short name."""
    schedule = self.server.schedule
    routeshortname = params.get('routeshortname', None)
    result = []
    for r in schedule.GetRouteList():
      if r.route_short_name == routeshortname:
        servicep = None
        for t in schedule.GetTripList():
          if t.route_id == r.route_id:
            servicep = t.service_period
            break
        result.append( (r.route_id, r.route_short_name, r.route_long_name, servicep.service_id) )
    result.sort(key = lambda x: x[1:3])
    return result
    */
}
 
function getRouteNextTrip($routeID) {
    /*
  def handle_json_GET_routetrips(self, params):
    """ Get a trip for a route_id (preferablly the next one) """
    schedule = self.server.schedule
    query = params.get('route_id', None).lower()
    result = []
    for t in schedule.GetTripList():
      if t.route_id == query:
        try:
          starttime = t.GetStartTime()  
        except:
          print "Error for GetStartTime of trip #" + t.trip_id + sys.exc_info()[0]
        else:
          cursor = t._schedule._connection.cursor()
          cursor.execute(
              'SELECT arrival_secs,departure_secs FROM stop_times WHERE '
              'trip_id=? ORDER BY stop_sequence DESC LIMIT 1', (t.trip_id,))
          (arrival_secs, departure_secs) = cursor.fetchone()
          if arrival_secs != None:
            endtime = arrival_secs
          elif departure_secs != None:
            endtime = departure_secs
          else:
            endtime =0
          result.append ( (starttime, t.trip_id, endtime) )
    return sorted(result, key=lambda trip: trip[2])
    */
}
 
?>