diff --git a/app.py b/app.py index b9f48b5..d469350 100644 --- a/app.py +++ b/app.py @@ -195,13 +195,6 @@ def free_rooms() : ignore_list = ["salle non définie", "salle en Distanciel"] free_rooms = ro.getrooms(date, depts, ignore_list) - # Filtre selon les favoris ( s'il y en a ) - if len(favs_ids)>0: - final_rooms = list() - for r in free_rooms: - if r.id in favs_ids: - final_rooms.append(r) - free_rooms = final_rooms frooms_disp = dict() # Mise en forme des infos pour la page Web @@ -231,7 +224,17 @@ def free_rooms() : for dept in dident_list: nofavslink+="dept="+str(dept)+"&" nofavslink = nofavslink[:-1] # Enlever le dernier & - context = {"free_rooms":free_rooms, "frooms_disp":frooms_disp, "depts_str":depts_str, "dident_list":dident_list, "date_str":date_str, "change_date_str":change_date_str, "favs":len(favs_ids)>0,"nofavslink":nofavslink} + + # Trier les salles selon leurs catégories + favs_free_rooms = [] + favs_soon_rooms = [] + soon_rooms = [] + final_rooms = [] + + for r in free_rooms: + [[soon_rooms,final_rooms],[favs_soon_rooms,favs_free_rooms]][r.id in favs_ids][r.is_free].append(r) + + context = {"favs_free_rooms":favs_free_rooms, "favs_soon_rooms":favs_soon_rooms, "free_rooms":final_rooms, "soon_rooms":soon_rooms, "frooms_disp":frooms_disp, "depts_str":depts_str, "dident_list":dident_list, "date_str":date_str, "change_date_str":change_date_str, "favs":len(favs_ids)>0,"nofavslink":nofavslink} # Crée un log de la date et des départements demandés ( pour des futures statistiques ) log = {} diff --git a/templates/free-rooms.html b/templates/free-rooms.html index 126f058..adcb89c 100644 --- a/templates/free-rooms.html +++ b/templates/free-rooms.html @@ -9,14 +9,6 @@ {% include "base.html" %}
- {% if favs: %} -
-

Attention, tu as des favoris de précisé, les résultats sont donc filtrés et tu ne vois pas toute les salles !

-
-
- Retirer -
- {% endif %}

Départements sélectionnés :
@@ -32,45 +24,81 @@ Choisir une date

-

Disponibles maintenant

+ {% if favs: %} + + {% if favs_free_rooms|length>0: %} +
+

Favoris disponibles maintenant

    - {% for room in free_rooms : %} - {% if room.is_free : %} -
    {{ room.name }} {% if DEBUG :%}( {{ room.id }} ){% endif %}{%if not favs:%} {% endif %} + {% for room in favs_free_rooms : %} +
    {{ room.name }} {% if DEBUG :%}( {{ room.id }} ){% endif %} {% if not(room.end.hour == 23 and room.end.minute == 59 and room.end.second == 59) : %}
    Jusqu'à {{ frooms_disp[room.name]["end"] }} (dans {{ frooms_disp[room.name]["rtime"] }}) {% endif %}
    - {% endif %} {% endfor %}
+ {% endif %} + {% if favs_soon_rooms|length>0: %}
-

Disponibles prochainement

+

Favoris disponibles prochainement

    - {% for room in free_rooms : %} - {% if not room.is_free : %} -
    {{ room.name }} {% if DEBUG :%}( {{ room.id }} ){% endif %}{%if not favs:%} {% endif %} + {% for room in favs_soon_rooms: %} +
    {{ room.name }} {% if DEBUG :%}( {{ room.id }} ){% endif %} {% if room.end.hour == 23 and room.end.minute == 59 and room.end.second == 59 : %}
    À {{ frooms_disp[room.name]["start"] }} (dans {{ frooms_disp[room.name]["rtime"] }}) {% else %}
    De {{ frooms_disp[room.name]["start"] }} à {{ frooms_disp[room.name]["end"] }} (dans {{ frooms_disp[room.name]["rtime"] }}) {% endif %}
    - {% endif %} {% endfor %}
+ {% endif %} + {% endif %} + {% if free_rooms|length>0 %} +
+

Disponibles maintenant

+
+
    + {% for room in free_rooms: %} +
    {{ room.name }} {% if DEBUG :%}( {{ room.id }} ){% endif %} + {% if not(room.end.hour == 23 and room.end.minute == 59 and room.end.second == 59) : %} +
    Jusqu'à {{ frooms_disp[room.name]["end"] }} (dans {{ frooms_disp[room.name]["rtime"] }}) + {% endif %} +
    + {% endfor %} +
+
+ {% endif %} + {% if soon_rooms|length>0 %} +
+

Disponibles prochainement

+
+
    + {% for room in soon_rooms: %} +
    {{ room.name }} {% if DEBUG :%}( {{ room.id }} ){% endif %} + {% if room.end.hour == 23 and room.end.minute == 59 and room.end.second == 59 : %} +
    À {{ frooms_disp[room.name]["start"] }} (dans {{ frooms_disp[room.name]["rtime"] }}) + {% else %} +
    De {{ frooms_disp[room.name]["start"] }} à {{ frooms_disp[room.name]["end"] }} (dans {{ frooms_disp[room.name]["rtime"] }}) + {% endif %} +
    + {% endfor %} +
+
+ {% endif %}
{% for d in dident_list : %} {% endfor %} - {% if not favs:%} - {% endif %}