202 lines
11 KiB
Plaintext
202 lines
11 KiB
Plaintext
{% import "includes/macros" as macros %}
|
|
{% extends "base" %}
|
|
{% block content %}
|
|
<div class="max-w-screen-lg w-full">
|
|
<h1 class="h1">
|
|
Ruder
|
|
<wbr />
|
|
assistent
|
|
</h1>
|
|
<div class="grid gap-3 my-5">
|
|
<div class="m-auto">
|
|
<a href="/planned"
|
|
class="btn btn-primary flex items-center justify-center">
|
|
{% include "includes/rowing-icon" %}
|
|
<span class="text-xl px-3">Geplante Ausfahrten</span>
|
|
</a>
|
|
</div>
|
|
<div id="notification"
|
|
class="bg-white dark:bg-primary-900 text-black dark:text-white rounded-md block shadow mt-5"
|
|
role="alert">
|
|
<h2 class="h2">Nachrichten</h2>
|
|
{% if notifications | length > 10 %}
|
|
<div class="text-primary-950 dark:text-white bg-gray-200 dark:bg-primary-950 bg-opacity-80 text-center pb-3 px-3">
|
|
Du hast viele ungelesene Benachrichtigungen. Um deine Oberfläche übersichtlich zu halten und wichtige Updates nicht zu verpassen, nimm dir bitte einen Moment Zeit, sie zu überprüfen und als gelesen zu markieren (✓).
|
|
</div>
|
|
{% endif %}
|
|
<div class="divide-y">
|
|
{% for notification in notifications %}
|
|
{% if not notification.read_at %}
|
|
<div class="relative flex justify-between items-center p-3">
|
|
<div class="grow me-4">
|
|
<small class="uppercase text-gray-600 dark:text-gray-100">
|
|
<strong>{{ notification.category }}</strong> • {{ notification.created_at | date(timezone="Europe/Vienna", format="%d.%m.%Y %H:%M",) }}
|
|
</small>
|
|
<div class="mt-1">{{ notification.message | safe }}</div>
|
|
</div>
|
|
<div>
|
|
{% if not notification.read_at %}
|
|
<a href="/notification/{{ notification.id }}/read" class="inline-block">
|
|
<button class="btn btn-primary" type="button">
|
|
✓
|
|
<span class="sr-only">Notification gelesen</span>
|
|
</button>
|
|
</a>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
{% endfor %}
|
|
</div>
|
|
<details class="py-3 border-t rounded-b-md">
|
|
<summary class="px-3 cursor-pointer">Vergangene Nachrichten (14 Tage)</summary>
|
|
<div class="divide-y text-sm">
|
|
{% for notification in notifications %}
|
|
{% if notification.read_at %}
|
|
<div class="p-3 relative">
|
|
<small class="uppercase text-gray-600 dark:text-gray-100">
|
|
<strong>{{ notification.category }}</strong> • {{ notification.created_at | date(timezone="Europe/Vienna", format="%d.%m.%Y %H:%M") }}
|
|
</small>
|
|
<div class="mt-1">{{ notification.message | safe }}</div>
|
|
</div>
|
|
{% endif %}
|
|
{% endfor %}
|
|
</div>
|
|
</details>
|
|
</div>
|
|
{% if "Donau Linz" in loggedin_user.roles and "Unterstützend" not in loggedin_user.roles and "Förderndes Mitglied" not in loggedin_user.roles %}
|
|
<div class="bg-white dark:bg-primary-900 text-black dark:text-white rounded-md block shadow mt-5"
|
|
role="alert">
|
|
<h2 class="h2">Aktives Vereinsmitglied</h2>
|
|
<ul class="list-none ms-2 divide-y divide-gray-200 dark:divide-primary-600">
|
|
<li class="py-1">
|
|
<a href="/planned" class="block w-100 py-2 hover:text-primary-600">Geplante Ausfahrten</a>
|
|
</li>
|
|
<li class="py-1">
|
|
<a href="/log" class="block w-100 py-2 hover:text-primary-600">Ausfahrt eintragen</a>
|
|
</li>
|
|
<li class="py-1">
|
|
<a href="/log/show" class="block w-100 py-2 hover:text-primary-600">Logbuch</a>
|
|
</li>
|
|
<li class="py-1">
|
|
<a href="/stat" class="block w-100 py-2 hover:text-primary-600">Statistik</a>
|
|
</li>
|
|
<li class="py-1">
|
|
<a href="/stat/boats" class="block w-100 py-2 hover:text-primary-600">Bootsauswertung</a>
|
|
</li>
|
|
<li class="py-1">
|
|
<a href="/boatdamage" class="block w-100 py-2 hover:text-primary-600">Bootsschaden</a>
|
|
</li>
|
|
<li class="py-1">
|
|
<a href="/boatreservation"
|
|
class="block w-100 py-2 hover:text-primary-600">Bootsreservierung</a>
|
|
</li>
|
|
<li class="py-1">
|
|
<a href="/steering" class="block w-100 py-2 hover:text-primary-600">Steuerleute & Co</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
{% endif %}
|
|
{% if "scheckbuch" in loggedin_user.roles %}
|
|
<div class="bg-white dark:bg-primary-900 text-black dark:text-white rounded-md block shadow mt-5"
|
|
role="alert">
|
|
<h2 class="h2">Scheckbuch</h2>
|
|
<ul class="list-none ms-2 divide-y divide-gray-200 dark:divide-primary-600">
|
|
<li class="py-1">
|
|
<a href="/planned" class="block w-100 py-2 hover:text-primary-600">Geplante Ausfahrten</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
{% endif %}
|
|
{% if "schnupper-betreuer" in loggedin_user.roles %}
|
|
<div class="bg-white dark:bg-primary-900 text-black dark:text-white rounded-md block shadow mt-5"
|
|
role="alert">
|
|
<h2 class="h2">Schnupper-Betreuer</h2>
|
|
<ul class="list-none ms-2 divide-y divide-gray-200 dark:divide-primary-600">
|
|
<li class="py-1">
|
|
<a href="/admin/schnupper"
|
|
class="block w-100 py-2 hover:text-primary-600">Schnuppern</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
{% endif %}
|
|
{% if "Vorstand" in loggedin_user.roles %}
|
|
<div class="bg-white dark:bg-primary-900 text-black dark:text-white rounded-md block shadow mt-5"
|
|
role="alert">
|
|
<h2 class="h2">Vorstand</h2>
|
|
<ul class="list-none ms-2 divide-y divide-gray-200 dark:divide-primary-600">
|
|
<li class="py-1">
|
|
<a href="/admin/user/fees"
|
|
class="block w-100 py-2 hover:text-primary-600">Übersicht User Gebühren</a>
|
|
</li>
|
|
<li class="py-1">
|
|
<a href="/admin/user/scheckbuch"
|
|
class="block w-100 py-2 hover:text-primary-600">Scheckbuch</a>
|
|
</li>
|
|
<li class="py-1">
|
|
<a href="/admin/user" class="block w-100 py-2 hover:text-primary-600">User</a>
|
|
</li>
|
|
<li class="py-1">
|
|
<a href="/board/boathouse"
|
|
class="block w-100 py-2 hover:text-primary-600">Bootshaus</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
{% endif %}
|
|
{% if "admin" in loggedin_user.roles %}
|
|
<div class="bg-white dark:bg-primary-900 text-black dark:text-white rounded-md block shadow mt-5"
|
|
role="alert">
|
|
<h2 class="h2">Admin</h2>
|
|
<ul class="list-none ms-2 divide-y divide-gray-200 dark:divide-primary-600">
|
|
<li class="py-1">
|
|
<a href="/admin/boat" class="block w-100 py-2 hover:text-primary-600">Boote</a>
|
|
</li>
|
|
<li class="py-1">
|
|
<a href="/admin/user" class="block w-100 py-2 hover:text-primary-600">User</a>
|
|
</li>
|
|
<li class="py-1">
|
|
<a href="/admin/mail" class="block w-100 py-2 hover:text-primary-600">Mail</a>
|
|
</li>
|
|
<li class="py-1">
|
|
<a href="/admin/rss" class="block w-100 py-2 hover:text-primary-600">Logs</a>
|
|
</li>
|
|
<li class="py-1">
|
|
<a href="/admin/list" class="block w-100 py-2 hover:text-primary-600">Fingerabdruck-Liste überprüfen</a>
|
|
</li>
|
|
<li class="py-1">
|
|
<a href="/admin/notification"
|
|
class="block w-100 py-2 hover:text-primary-600">Nachricht ausschreiben</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
{% endif %}
|
|
{% if loggedin_user.weight and loggedin_user.sex and loggedin_user.dob %}
|
|
<div class="bg-white dark:bg-primary-900 text-black dark:text-white rounded-md block shadow mt-5"
|
|
role="alert">
|
|
<h2 class="h2">Ergo</h2>
|
|
<div class="p-3">
|
|
<ul class="list-none ms-2">
|
|
<li class="py-1">
|
|
<a href="/ergo" class="block w-100 py-2 hover:text-primary-600">Ergo</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
<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">
|
|
<ul class="list-none ms-2">
|
|
<li class="py-1">
|
|
<a href="https://wiki.rudernlinz.at/ruderassistent#faq"
|
|
target="_blank"
|
|
class="block w-100 py-2 hover:text-primary-600">FAQ (extern)</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endblock content %}
|