Compare commits

..

6 Commits

Author SHA1 Message Date
82865799ce Merge pull request 'add impressum' (#505) from impressum into main
All checks were successful
CI/CD Pipeline / test (push) Successful in 9m8s
CI/CD Pipeline / deploy-staging (push) Has been skipped
CI/CD Pipeline / deploy-main (push) Successful in 7m46s
Reviewed-on: #505
2024-05-17 15:35:33 +02:00
8dd878b492 [TASK] change layout imprint
All checks were successful
CI/CD Pipeline / test (push) Successful in 9m31s
CI/CD Pipeline / deploy-staging (push) Has been skipped
CI/CD Pipeline / deploy-main (push) Has been skipped
2024-05-17 13:44:09 +02:00
01c2f0c4a3 [TASK] change layout footer
Some checks failed
CI/CD Pipeline / deploy-staging (push) Blocked by required conditions
CI/CD Pipeline / deploy-main (push) Blocked by required conditions
CI/CD Pipeline / test (push) Has been cancelled
2024-05-17 13:39:50 +02:00
261753c6b4 reformat
All checks were successful
CI/CD Pipeline / test (push) Successful in 9m58s
CI/CD Pipeline / deploy-staging (push) Has been skipped
CI/CD Pipeline / deploy-main (push) Has been skipped
2024-05-17 12:28:45 +02:00
d0038677ca add last data field
Some checks failed
CI/CD Pipeline / deploy-staging (push) Blocked by required conditions
CI/CD Pipeline / deploy-main (push) Blocked by required conditions
CI/CD Pipeline / test (push) Has been cancelled
2024-05-17 12:27:58 +02:00
4bd91b2a7e add impressum
Some checks failed
CI/CD Pipeline / deploy-staging (push) Blocked by required conditions
CI/CD Pipeline / deploy-main (push) Blocked by required conditions
CI/CD Pipeline / test (push) Has been cancelled
2024-05-17 12:26:10 +02:00
3 changed files with 107 additions and 4 deletions

View File

@ -65,6 +65,17 @@ async fn index(db: &State<SqlitePool>, user: User, flash: Option<FlashMessage<'_
Template::render("index", context.into_json()) Template::render("index", context.into_json())
} }
#[get("/impressum")]
async fn impressum(db: &State<SqlitePool>, user: Option<User>) -> Template {
let mut context = Context::new();
if let Some(user) = user {
context.insert("loggedin_user", &UserWithDetails::from_user(user, db).await);
}
Template::render("impressum", context.into_json())
}
#[get("/steering")] #[get("/steering")]
async fn steering(db: &State<SqlitePool>, user: User, flash: Option<FlashMessage<'_>>) -> Template { async fn steering(db: &State<SqlitePool>, user: User, flash: Option<FlashMessage<'_>>) -> Template {
let mut context = Context::new(); let mut context = Context::new();
@ -179,7 +190,7 @@ pub struct Config {
pub fn config(rocket: Rocket<Build>) -> Rocket<Build> { pub fn config(rocket: Rocket<Build>) -> Rocket<Build> {
rocket rocket
.mount("/", routes![index, steering]) .mount("/", routes![index, steering, impressum])
.mount("/auth", auth::routes()) .mount("/auth", auth::routes())
.mount("/wikiauth", routes![wikiauth]) .mount("/wikiauth", routes![wikiauth])
.mount("/log", log::routes()) .mount("/log", log::routes())

View File

@ -0,0 +1,88 @@
{% extends "base" %}
{% block content %}
<div class="max-w-screen-lg w-full">
<h1 class="h1">Impressum</h1>
<div class="grid gap-3 my-5">
<div class="bg-white dark:bg-primary-900 text-black dark:text-white rounded-md block shadow mt-5"
role="alert">
<h2 class="h2">Allgemein</h2>
<div class="p-3">
Die Website wird vom ASKÖ Ruderverein Donau Linz betrieben.
<br />
<strong>Postanschrift:</strong>
<br />
ASKÖ Ruderverein Donau Linz
<br />
Heilhamerweg 2
<br />
4040 Linz
<br />
ZVR: 363903285
</div>
</div>
</div>
<div class="grid gap-3 my-5">
<div class="bg-white dark:bg-primary-900 text-black dark:text-white rounded-md block shadow mt-5"
role="alert">
<h2 class="h2">Datenschutz</h2>
<div class="p-3">
Folgende Daten werden verarbeitet:
<ul>
<li>
Server-Log Files: IP-Adresse, Adresse der besuchten Seite, Browseragent, Datum und Uhrzeit. Wir nutzen diese Daten nicht und geben Sie in der Regel nicht weiter, können jedoch nicht ausschließen, dass diese Daten beim Vorliegen von rechtswidrigem Verhalten eingesehen werden.
</li>
<li>
Cookie: Diese Website verwendet nur einen Cookie (loggedin_user), der verschlüsselte Informationen über den Login-Status speichert. Weitere Cookies werden nicht verwendet.
</li>
</ul>
</div>
</div>
</div>
{% if loggedin_user %}
<div class="grid gap-3 my-5">
<div class="bg-white dark:bg-primary-900 text-black dark:text-white rounded-md block shadow mt-5"
role="alert">
<h2 class="h2">Daten</h2>
<div class="p-3">
Folgende personenbezogenen haben wir von dir gespeichert:
<ul>
<li><strong>Name:</strong> {{ loggedin_user.name }}</li>
<li><strong>Passwort:</strong> (verschlüsselt als argon Hash)</li>
<li><strong>Letzter Zugriff:</strong> {{ loggedin_user.last_access }}</li>
<li><strong>Mitglied seit:</strong> {{ loggedin_user.member_since_date }}</li>
<li><strong>Geburtsdatum:</strong> {{ loggedin_user.birthdate }}</li>
<li><strong>Mail:</strong> {{ loggedin_user.mail }}</li>
{% if loggedin_user.nickname %}<li><strong>Spitzname:</strong> {{ loggedin_user.nickname }}</li>{% endif %}
<li><strong>Telefonnummer:</strong> {{ loggedin_user.phone }}</li>
<li><strong>Adresse:</strong> {{ loggedin_user.address }}</li>
<li>(Beitrittserklärung)</li>
{% if loggedin_user.family_id %}
<li>Verbindung zu Familienmitglied (gespeichert um Familientarif anstatt Vollmitglied zu haben)</li>
{% endif %}
<li><strong>Rollen:</strong> {{ loggedin_user.roles }} (werden für verschiedene Funktionen im Ruderassistenten verwendet)</li>
<li>Anmeldungen zu Ausfahrten</li>
<li>Anmeldungen zu Events (zB Fetzenfahrt, Anrudern, USI-Rudern, ...)</li>
<li>Logbucheinträge</li>
<li>Selber eingetragene Bootsschäden, solange sie nicht > 1 Monat verifiziert und repariert wurden</li>
<li>Selber eingetragene Bootsreservierung</li>
<li>Boote, sofern es welche im Privatbesitz gibt</li>
</ul>
</div>
</div>
</div>
{% endif %}
<div class="grid gap-3 my-5">
<div class="bg-white dark:bg-primary-900 text-black dark:text-white rounded-md block shadow mt-5"
role="alert">
<h2 class="h2">Lizenzen</h2>
<div class="p-3">
<ul>
<li>
Die Wetterdaten werden von <a class="underline" href="https://openweathermap.org">OpenWeather</a> bereitgestellt.
</li>
</ul>
</div>
</div>
</div>
</div>
{% endblock content %}

View File

@ -1,9 +1,9 @@
<footer class="bg-primary-950 dark:bg-primary-900 text-white w-full flex justify-center p-3"> <footer class="bg-primary-950 dark:bg-primary-900 text-white w-full flex justify-center p-3">
<div class="max-w-screen-xl w-full flex justify-between items-center"> <div class="max-w-screen-xl">
<div class="w-full flex justify-between items-center">
<div> <div>
<span class="text-[#ff0000]">&hearts;</span> <span class="text-[#ff0000]">&hearts;</span>
Erstellt vom ASKÖ Ruderverein Donau Linz <a onclick="alert('Wir suchen kreative und motivierte Köpfe, die diesen Ruderassistenten mitgestalten möchten. Das Backend ist in Rust (Rocket), das Frontend in TypeScript und Teraform, wobei wir mit dem Gedanken spielen, zu Svelte(Kit) zu wechseln.\n\nWenn du Lust hast, deine Skills in ein Projekt zu stecken, das Wellen schlagen wird, dann komm an Bord! Wir sind offen für frische Ideen, haben jedoch auch selber noch genügend; langweilig wird uns bestimmt nicht.\n\nWirf den Anker bei uns ausi und melde dich bei Marie oder Philipp oder it@rudernlinz.at für eine Zukunft ohne optische Kenterung in Form von hässlichen Alerts ;)');" Erstellt vom ASKÖ Ruderverein Donau Linz <a class="underline" onclick="alert('Wir suchen kreative und motivierte Köpfe, die diesen Ruderassistenten mitgestalten möchten. Das Backend ist in Rust (Rocket), das Frontend in TypeScript und Teraform, wobei wir mit dem Gedanken spielen, zu Svelte(Kit) zu wechseln.\n\nWenn du Lust hast, deine Skills in ein Projekt zu stecken, das Wellen schlagen wird, dann komm an Bord! Wir sind offen für frische Ideen, haben jedoch auch selber noch genügend; langweilig wird uns bestimmt nicht.\n\nWirf den Anker bei uns ausi und melde dich bei Marie oder Philipp oder it@rudernlinz.at für eine Zukunft ohne optische Kenterung in Form von hässlichen Alerts ;)');">... und dir?</a>
style="text-decoration:underline">... und dir?</a>
</div> </div>
<div> <div>
<button id="theme-toggle-js" <button id="theme-toggle-js"
@ -31,4 +31,8 @@
</button> </button>
</div> </div>
</div> </div>
<div class="mt-3">
<a class="underline" href="/impressum">Impressum</a>
</div>
</div>
</footer> </footer>