def display_matching_trips(request, trip_id=None, lib=None): """Make a request to the BV server to find matching trips. Format the output to be read by javascript clientside code. """ def to_json(trip): return [get_trip_dict(t) for t in trips] trip_search_type = int(request.POST['trip_type']) results = lib.search_trip(trip_id=trip_id, **unicode_to_dict(request.POST)) trip_demands = results['trip_demands'] trip_offers = results['trip_offers'] trip = results['trip'] if trip_search_type == TRIP_OFFER: trips = trip_demands else: trips = trip_offers response_dict = { 'authenticated': is_bvoauth_authenticated(request), } if not trip_id: response_dict['trips'] = to_json(trips) else: response_dict['trip_demands'] = to_json(trip_demands) response_dict['trip_offers'] = to_json(trip_offers) resp = HttpResponse() simplejson.dump(response_dict , resp, ensure_ascii=False, separators=(',',':')) return resp
def show_trip(request, trip_id=None, lib=None): """display informations about a trip """ return render_to_response('show_trip.html', { 'trip': lib.get_trip(trip_id), 'default_zoom': settings.DEFAULT_MAP_CENTER_ZOOM, 'default_center': settings.DEFAULT_MAP_CENTER_POINT, 'authenticated': is_bvoauth_authenticated(request), 'is_trip': True, }, context_instance=RequestContext(request))