@@ -48,28 +48,29 @@ def submit_review(request):
4848
4949@api_view (['GET' ])
5050def get_availability_by_tutor_and_date (request ):
51- # tutor_id = request.GET.get('tutor_id')
52- # selected_date = request.GET.get('date') # format: YYYY-MM-DD
53- #
54- # if not tutor_id or not selected_date:
55- # return Response({"error": "Missing tutor_id or date parameter."}, status=status.HTTP_400_BAD_REQUEST)
56- #
57- # try:
58- # date_obj = datetime.strptime(selected_date, "%Y-%m-%d").date()
59- # except ValueError:
60- # return Response({"error": "Invalid date format. Use YYYY-MM-DD."}, status=status.HTTP_400_BAD_REQUEST)
61- #
62- # start_of_day = datetime.combine(date_obj, datetime.min.time())
63- # end_of_day = datetime.combine(date_obj, datetime.max.time())
64- #
65- # availabilities = Availability.objects.filter(
66- # tutor__id=tutor_id,
67- # start_time__gte=start_of_day,
68- # end_time__lte=end_of_day,
69- # is_booked=False
70- # )
71-
72- availabilities = Availability .objects .all ()
51+ tutor_id = request .GET .get ('tutor_id' )
52+ selected_date = request .GET .get ('date' ) # format: YYYY-MM-DD
53+
54+ if not tutor_id or not selected_date :
55+ return Response ({"error" : "Missing tutor_id or date parameter." }, status = status .HTTP_400_BAD_REQUEST )
56+
57+ try :
58+ date_obj = datetime .strptime (selected_date , "%Y-%m-%d" ).date ()
59+ except ValueError :
60+ return Response ({"error" : "Invalid date format. Use YYYY-MM-DD." }, status = status .HTTP_400_BAD_REQUEST )
61+
62+ start_of_day = datetime .combine (date_obj , datetime .min .time ())
63+ end_of_day = datetime .combine (date_obj , datetime .max .time ())
64+
65+ availabilities = Availability .objects .filter (
66+ tutor__id = tutor_id ,
67+ start_time__gte = start_of_day ,
68+ end_time__lte = end_of_day ,
69+ is_booked = False
70+ )
71+
72+ # For debug purposes
73+ # availabilities = Availability.objects.all()
7374
7475 serializer = AvailabilitySerializer (availabilities , many = True )
7576 return Response (serializer .data )
0 commit comments