Esempio n. 1
0
 def try_take_seat_by_class(self, class_of_service):
     order = Order.objects.create(unique_flight=self.unique_flight, class_of_service=class_of_service)
     free_seats = Order.get_free_seats(self.unique_flight.id, self.unique_flight.flight.aircraft, class_of_service)
     self.assertEqual(len(free_seats), 10)
     taken_seat = free_seats[0]
     order.try_take_seat(taken_seat)
     free_seats = Order.get_free_seats(self.unique_flight.id, self.unique_flight.flight.aircraft,
                                       class_of_service)
     self.assertEqual(len(free_seats), 9)
     self.assertNotIn(taken_seat, free_seats)
     order.delete()
Esempio n. 2
0
def show_order(request, order_id, order_hash):
    try:
        order = Order.objects.get(pk=order_id, order_hash=order_hash)
    except Order.DoesNotExist:
        raise Http404
    diff = int((order.unique_flight.departure_datetime - datetime.datetime.now()).total_seconds() / 60)
    if 30 < diff < 360:
        aircraft = order.unique_flight.flight.aircraft
        free_seats = Order.get_free_seats(order.unique_flight.id, aircraft, order.class_of_service)
        return render_to_response('show_order.html', {'order': order,
                                                      'price': order.unique_flight.get_price(order.class_of_service),
                                                      'free_seats': free_seats,
                                                      'order_id': order_id}, context_instance=RequestContext(request))
    else:
        return render_to_response('status.html', {'status': 'It is not time for registration yet'},
                                  context_instance=RequestContext(request))