diff --git a/imio_teleservices_templatetags/templatetags/imio_teleservices.py b/imio_teleservices_templatetags/templatetags/imio_teleservices.py index 4e2f01e..2e0bc48 100644 --- a/imio_teleservices_templatetags/templatetags/imio_teleservices.py +++ b/imio_teleservices_templatetags/templatetags/imio_teleservices.py @@ -164,6 +164,35 @@ def liste_type_rdv_nombres_personnes(value, arg): return [x for x in liste["data"] if arg in x["text"]] +@register.filter +def stop_monday_for_we(value): + """ + EmpĂȘche de prendre rdv le lundi matin pendant le w-e + """ + headers = {"Accept": "application/json"} + meeting_liste = requests.get(value, headers=headers).json() + today = datetime.datetime.today() + weekday = today.weekday() + if 4 >= weekday >= 0: + return meeting_liste + + if 5 <= weekday <= 6: + next_day = today + while weekday != 0: + next_day = next_day + datetime.timedelta(days=1) + weekday = next_day.weekday() + + monday = next_day.replace(hour=12, minute=0, second=0, microsecond=0) + return [ + x + for x in meeting_liste + if datetime.datetime.strptime(x["datetime"], "%Y-%m-%d %H:%M:%S") < monday + ] + + if weekday > 6 or weekday < 0: + raise Exception("Index OutOf weekday") + + @register.filter def calcul_total_abonnement_stationnement(fields_bloc): """