diff --git a/src/model/user/mod.rs b/src/model/user/mod.rs index b71c030..7eff351 100644 --- a/src/model/user/mod.rs +++ b/src/model/user/mod.rs @@ -860,6 +860,7 @@ special_user!(AllowedForPlannedTripsUser, +"Donau Linz", +"scheckbuch", +"Förde special_user!(DonauLinzUser, +"Donau Linz", +"Förderndes Mitglied", -"Unterstützend"); // TODO: // remove -> // RegularUser +special_user!(ErgoAdminUser, +"ergo-admin", +"admin"); special_user!(SchnupperBetreuerUser, +"schnupper-betreuer"); special_user!(VorstandUser, +"admin", +"Vorstand"); special_user!(EventUser, +"manage_events"); diff --git a/src/tera/ergo.rs b/src/tera/ergo.rs index 5d007d1..64b99e3 100644 --- a/src/tera/ergo.rs +++ b/src/tera/ergo.rs @@ -2,7 +2,6 @@ use std::env; use chrono::Utc; use rocket::{ - FromForm, Route, State, form::Form, fs::TempFile, get, @@ -10,9 +9,9 @@ use rocket::{ post, request::FlashMessage, response::{Flash, Redirect}, - routes, + routes, FromForm, Route, State, }; -use rocket_dyn_templates::{Template, context}; +use rocket_dyn_templates::{context, Template}; use serde::Serialize; use sqlx::SqlitePool; use tera::Context; @@ -21,7 +20,7 @@ use crate::model::{ log::Log, notification::Notification, role::Role, - user::{AdminUser, User, UserWithDetails}, + user::{AdminUser, ErgoAdminUser, User, UserWithDetails}, }; #[derive(Serialize)] @@ -59,7 +58,7 @@ async fn send(db: &State, _user: AdminUser) -> Template { } #[get("/reset")] -async fn reset(db: &State, _user: AdminUser) -> Flash { +async fn reset(db: &State, _user: ErgoAdminUser) -> Flash { sqlx::query!("UPDATE user SET dirty_thirty = NULL, dirty_dozen = NULL;") .execute(db.inner()) .await @@ -74,7 +73,7 @@ async fn reset(db: &State, _user: AdminUser) -> Flash { #[get("//user//new?")] async fn update( db: &State, - _admin: AdminUser, + _admin: ErgoAdminUser, challenge: &str, user_id: i64, new: &str, diff --git a/src/tera/mod.rs b/src/tera/mod.rs index 1f26ee4..d7cabca 100644 --- a/src/tera/mod.rs +++ b/src/tera/mod.rs @@ -65,7 +65,7 @@ async fn index(db: &State, user: User, flash: Option= 10 { - // context.insert("show_quick_ergo_button", "yes"); + context.insert("show_quick_ergo_button", "yes"); } context.insert("achievements", &Achievements::for_user(db, &user).await); diff --git a/templates/ergo/index.html.tera b/templates/ergo/index.html.tera index 99729f1..223c067 100644 --- a/templates/ergo/index.html.tera +++ b/templates/ergo/index.html.tera @@ -15,10 +15,7 @@ class="link-primary">Überblick der Challenges
  • - Eintragung ist jederzeit möglich, alle Daten die bis Sonntag 23:59 hier hochgeladen wurden, werden gesammelt an die Ister Ergo Challenge geschickt -
  • - Montag → gemeinsames Training; bitte um Anmeldung, damit jeder einen Ergo hat -
  • + Eintragung ist jederzeit möglich, wenn du sie auch an die offizielle Liste schicken willst, kannst du das hier machen
  • - {% if "admin" in loggedin_user.roles %} + {% if "admin" in loggedin_user.roles or "ergo-admin" in loggedin_user.roles %}

    Update

    @@ -233,6 +230,14 @@
    +
    {% endif %}