Compare commits
	
		
			2 Commits
		
	
	
		
			6e418b6f2f
			...
			465a42acac
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 465a42acac | |||
| 
						 | 
					ebce600356 | 
@@ -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");
 | 
			
		||||
 
 | 
			
		||||
@@ -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<SqlitePool>, _user: AdminUser) -> Template {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#[get("/reset")]
 | 
			
		||||
async fn reset(db: &State<SqlitePool>, _user: AdminUser) -> Flash<Redirect> {
 | 
			
		||||
async fn reset(db: &State<SqlitePool>, _user: ErgoAdminUser) -> Flash<Redirect> {
 | 
			
		||||
    sqlx::query!("UPDATE user SET dirty_thirty = NULL, dirty_dozen = NULL;")
 | 
			
		||||
        .execute(db.inner())
 | 
			
		||||
        .await
 | 
			
		||||
@@ -74,7 +73,7 @@ async fn reset(db: &State<SqlitePool>, _user: AdminUser) -> Flash<Redirect> {
 | 
			
		||||
#[get("/<challenge>/user/<user_id>/new?<new>")]
 | 
			
		||||
async fn update(
 | 
			
		||||
    db: &State<SqlitePool>,
 | 
			
		||||
    _admin: AdminUser,
 | 
			
		||||
    _admin: ErgoAdminUser,
 | 
			
		||||
    challenge: &str,
 | 
			
		||||
    user_id: i64,
 | 
			
		||||
    new: &str,
 | 
			
		||||
 
 | 
			
		||||
@@ -65,7 +65,7 @@ async fn index(db: &State<SqlitePool>, user: User, flash: Option<FlashMessage<'_
 | 
			
		||||
 | 
			
		||||
    let date = chrono::Utc::now();
 | 
			
		||||
    if date.month() <= 3 || date.month() >= 10 {
 | 
			
		||||
        //        context.insert("show_quick_ergo_button", "yes");
 | 
			
		||||
        context.insert("show_quick_ergo_button", "yes");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    context.insert("achievements", &Achievements::for_user(db, &user).await);
 | 
			
		||||
 
 | 
			
		||||
@@ -15,10 +15,7 @@
 | 
			
		||||
                               class="link-primary">Überblick der Challenges</a>
 | 
			
		||||
                        </li>
 | 
			
		||||
                        <li class="py-1">
 | 
			
		||||
                            Eintragung ist jederzeit möglich, alle Daten die bis Sonntag 23:59 hier hochgeladen wurden, werden gesammelt an die Ister Ergo Challenge geschickt
 | 
			
		||||
                            <li class="py-1">
 | 
			
		||||
                                Montag → gemeinsames Training; bitte um <a href="/planned" class="link-primary">Anmeldung</a>, damit jeder einen Ergo hat
 | 
			
		||||
                            </li>
 | 
			
		||||
                            Eintragung ist jederzeit möglich, wenn du sie auch an die offizielle Liste schicken willst, kannst du das <a href="https://data.ergochallenge.at/" target="_blank">hier</a> machen
 | 
			
		||||
                            <li class="py-1">
 | 
			
		||||
                                <a href="https://data.ergochallenge.at"
 | 
			
		||||
                                   target="_blank"
 | 
			
		||||
@@ -194,7 +191,7 @@
 | 
			
		||||
                            </div>
 | 
			
		||||
                        </details>
 | 
			
		||||
                    </div>
 | 
			
		||||
                    {% if "admin" in loggedin_user.roles %}
 | 
			
		||||
                    {% if "admin" in loggedin_user.roles or "ergo-admin" in loggedin_user.roles %}
 | 
			
		||||
                        <div class="bg-white dark:bg-primary-900 text-black dark:text-white rounded-md block shadow grid gap-3">
 | 
			
		||||
                            <h2 class="h2">Update</h2>
 | 
			
		||||
                            <details class="p-2">
 | 
			
		||||
@@ -233,6 +230,14 @@
 | 
			
		||||
                                    </ol>
 | 
			
		||||
                                </div>
 | 
			
		||||
                            </details>
 | 
			
		||||
                              <div class="mt-3 text-right">
 | 
			
		||||
                                <a href="/ergo/reset"
 | 
			
		||||
                                   class="w-28 btn btn-alert"
 | 
			
		||||
                                   onclick="return confirm('Willst du wirklich alle Ergo-Eingaben löschen?');">
 | 
			
		||||
                                    {% include "includes/delete-icon" %}
 | 
			
		||||
                                    Einträge löschen
 | 
			
		||||
                                </a>
 | 
			
		||||
                            </div>
 | 
			
		||||
                        </div>
 | 
			
		||||
                    </div>
 | 
			
		||||
                {% endif %}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user