diff --git a/src/filters.rs b/src/filters.rs index a98cce0e..3ff50fef 100644 --- a/src/filters.rs +++ b/src/filters.rs @@ -1,6 +1,12 @@ -pub fn show_area_query(a: &Option) -> ::askama::Result { +pub fn show_area_query(a: &Option, first: bool) -> ::askama::Result { + let char = if first { + '?' + } else { + '&' + }; + if let Some(a) = a { - return Ok(format!("&area={}", a)); + return Ok(format!("{}area={}", char, a)); } else { return Ok(String::new()); } diff --git a/templates/base.html b/templates/base.html index a0e8ed8b..1f105db0 100644 --- a/templates/base.html +++ b/templates/base.html @@ -43,6 +43,10 @@ opacity: 0; transition: opacity 2s ease-in; } + + section.htmx-request { + visibility: hidden; + } diff --git a/templates/index.html b/templates/index.html index 1dc17a3f..f90ba4a7 100644 --- a/templates/index.html +++ b/templates/index.html @@ -1,172 +1,177 @@ {% extends "nav.html" %} {% block content %} -
-
-
-
- - - - - - - +
+
+
+
+ + +
+ + + {% if user.role == Role::Admin %} +
+ +
+ {% endif %} +
+ +
-
- - {% if user.role == Role::Admin %} -
- + +
+
+ +
+
+
+
+

+ Events am {{ date.format("%d.%m.%Y") }} +

+
+ {% if (user.role == Role::Admin || user.role == Role::AreaManager) && (selected_area.is_none() || + selected_area.unwrap() == user.area_id) %} + {% endif %}
- -
- -
-
-
-
-

- Events am {{ date.format("%d.%m.%Y") }} -

-
- {% if (user.role == Role::Admin || user.role == Role::AreaManager) && (selected_area.is_none() || - selected_area.unwrap() == user.area_id) %} - +

Ort: {{ event.location.as_ref().unwrap().name }}

+

Zeitraum: {{ event.start_time }} bis {{ event.end_time }}

+

Anzahl der Posten: {{ event.amount_of_posten }}

+

Wachhabender durch FF gestellt: {{ event.voluntary_wachhabender }}

+

Kleidungsordnung: {{ event.clothing }}

+ {% endfor %} {% endif %}
+
- {% if events.len() == 0 %} -
-
keine Events geplant
-
- {% else %} - {% for event in events %} -
- {% if event.canceled %}Veranstaltung abgesagt!{% endif %} +
+
-
{{ event.name }}
- - {% if user.role == Role::AreaManager || user.role == Role::Admin %} - Planen - bearbeiten - als abgesagt markieren - {% endif %} - +
+

+ Verfügbarkeiten am {{ date.format("%d.%m.%Y") }} +

+
+ {% if (user.role == Role::Admin || user.role == Role::AreaManager) && (selected_area.is_none() || + selected_area.unwrap() == user.area_id) %} + + {% endif %}
-

Ort: {{ event.location.as_ref().unwrap().name }}

-

Zeitraum: {{ event.start_time }} bis {{ event.end_time }}

-

Anzahl der Posten: {{ event.amount_of_posten }}

-

Wachhabender durch FF gestellt: {{ event.voluntary_wachhabender }}

-

Kleidungsordnung: {{ event.clothing }}

-
- {% endfor %} - {% endif %} -
-
-
-
-
-
-

- Verfügbarkeiten am {{ date.format("%d.%m.%Y") }} -

+ {% if availabillities.len() == 0 %} +
+
keine Verfügbarkeiten eingetragen
- {% if (user.role == Role::Admin || user.role == Role::AreaManager) && selected_area.is_some() && - selected_area.unwrap() == user.area_id %} -
- Neue Verfügbarkeit für diesen Tag + {% else %} +
+ + + + + + + + + + + + {% for availabillity in availabillities %} + {% let u = availabillity.user.as_ref().unwrap() %} + + + + + + + + {% endfor %} + +
NameFunktionZeitraumKommentar
{{ u.name }} + {% match u.function %} + {% when Function::Posten %} + Posten + {% when Function::Wachhabender %} + Wachhabender + {% else %} + {% endmatch %} + + {% if availabillity.start_time.is_some() && availabillity.end_time.is_some() %} + {{ availabillity.start_time.as_ref().unwrap().format("%R") }} bis {{ + availabillity.end_time.as_ref().unwrap().format("%R") }} + {% else %} + ganztägig + {% endif %} + + {{ availabillity.comment.as_deref().unwrap_or("") }} + + {% if availabillity.user_id == user.id %} +
+ Bearbeiten + +
+ {% endif %} +
{% endif %} -
- {% if availabillities.len() == 0 %} -
-
keine Verfügbarkeiten eingetragen
- {% else %} -
- - - - - - - - - - - - {% for availabillity in availabillities %} - {% let u = availabillity.user.as_ref().unwrap() %} - - - - - - - - {% endfor %} - -
NameFunktionZeitraumKommentar
{{ u.name }} - {% match u.function %} - {% when Function::Posten %} - Posten - {% when Function::Wachhabender %} - Wachhabender - {% else %} - {% endmatch %} - - {% if availabillity.start_time.is_some() && availabillity.end_time.is_some() %} - {{ availabillity.start_time.as_ref().unwrap().format("%R") }} bis {{ - availabillity.end_time.as_ref().unwrap().format("%R") }} - {% else %} - ganztägig - {% endif %} - - {{ availabillity.comment.as_deref().unwrap_or("") }} - - {% if availabillity.user_id == user.id %} -
- Bearbeiten - -
- {% endif %} -
-
- {% endif %} - -
-
+ + {% endblock %} diff --git a/templates/user/profile.html b/templates/user/profile.html index e4d8fc3a..12f05bc2 100644 --- a/templates/user/profile.html +++ b/templates/user/profile.html @@ -5,84 +5,125 @@

Profil

-
- -
- +
+
Allgemeines
+ +
+
+ +
+
+
+
+ +
+
+
-
-
- -
- +
+
+ +
+
+
+
+ +
+
+
-
-
- -
- {% match user.role %} - {% when Role::Staff %} - Nutzer - {% when Role::AreaManager %} - Bereichsleiter - {% when Role::Admin %} - Admin - {% else %} - {% endmatch %} +
+
+ +
+
+
+
+ {% match user.role %} + {% when Role::Staff %} + Nutzer + {% when Role::AreaManager %} + Bereichsleiter + {% when Role::Admin %} + Admin + {% else %} + {% endmatch %} +
+
+
-
-
- -
- {% match user.function %} - {% when Function::Posten %} - Posten - {% when Function::Wachhabender %} - Wachhabender - {% else %} - {% endmatch %} +
+
+ +
+
+
+
+ {% match user.function %} + {% when Function::Posten %} + Posten + {% when Function::Wachhabender %} + Wachhabender + {% else %} + {% endmatch %} +
+
+
-
-
- -
- +
+
+ +
+
+
+
+ +
+
+
-
+ +
+
Benachrichtigungen
-
-
-
+
-
-
- +
+
Passwort
+ +
+
+ +
-
+