{% import "includes/macros" as macros %}
{% import "includes/forms/log" as log %}
{% extends "base" %}
{% block content %}
    <div class="max-w-screen-xl w-full grid sm:grid-cols-2 lg:grid-cols-3 gap-4">
        {% if "scheckbuch" in loggedin_user.roles %}
            <div class="grid gap-3 sm:col-span-2 lg:col-span-3">
                <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>
                    <div class="text-sm p-3">
                        <h3>Du hast bisher {{ last_trips | length }} deiner 5 Scheckbuch-Ausfahrten gemacht:</h3>
                        <ol>
                            {% for last_trip in last_trips %}
                                <li>{{ log::show_old(log=last_trip, state="completed", only_ones=false, index=loop.index) }}</li>
                            {% endfor %}
                        </ol>
                    </div>
                </div>
            </div>
        {% endif %}
        {% if "paid" not in loggedin_user.roles and "Donau Linz" in loggedin_user.roles %}
            <div class="grid gap-3 sm:col-span-2 lg:col-span-3">
                <div class="bg-white dark:bg-primary-900 text-black dark:text-white rounded-md block shadow mt-5"
                     role="alert">
                    <h2 class="h2">Vereinsgebühren</h2>
                    <div class="text-sm p-3">
                        {% include "includes/qrcode" %}
                        <div id="qrcode"
                             style="float: left;
                                    padding-top: 10 pt;
                                    padding-right: 10pt;
                                    padding-bottom: 10pt"></div>
                        <script type="text/javascript">
				var sepaqr = new sepaQR({
				   benefName: 'ASKÖ Ruderverein Donau Linz',
				   benefBIC: 'BKAUATWWXXX',
				   benefAccNr: 'AT131200080413001200',
				   amountEuro: {{ fee.sum_in_cents/100 }},
				   remittanceInf: 'Vereinsgebühren {{ fee.name }}',
				 });
				
				 var code = sepaqr.makeCodeInto("qrcode");
				
                        </script>
                        <b>Dein Vereinsbeitrag ({{ fee.name }}): {{ fee.sum_in_cents / 100 }}€
                            {% if fee.parts | length == 1 %}({{ fee.parts[0].0 }}){% endif %}
                        </b>
                        <br />
                        {% if fee.parts | length > 1 %}
                            <small>
                                Setzt sich zusammen aus:
                                <ul style="list-style: circle; padding-left: 1em;">
                                    {% for p in fee.parts %}
                                        <li>
                                            {{ p.0 }} ({{ p.1 / 100 }}€)
                                            {% if not loop.last %}+{% endif %}
                                        </li>
                                    {% endfor %}
                                </ul>
                            </small>
                        {% endif %}
                        Bitte auf folgendes Konto überweisen:  IBAN AT13 1200 0804 1300 1200. Alternativ kannst du auch mit deiner Bankapp den QR Code scannen, damit sollten alle Daten vorausgefüllt sein.
                        <br />
                        Falls die Berechnung nicht stimmt (korrekte Preise findest du <a href="https://rudernlinz.at/unser-verein/gebuhren/"
    target="_blank"
    rel="noopener noreferrer">hier</a>) melde dich bitte bei it@rudernlinz.at. @Studenten: Bitte die aktuelle Studienbestätigung an it@rudernlinz.at schicken.
                        <br />
                        <small>Wir aktualisieren den Ruderassistent unregelmäßig mit unserem Bankkonto. Falls du schon bezahlt hast, kannst du diese Nachricht getrost ignorieren :^)</small>
                    </div>
                </div>
            </div>
        {% endif %}
        <h1 class="h1 sm:col-span-2 lg:col-span-3">Ausfahrten</h1>
        {% include "includes/buttons" %}
        {% for day in days %}
            {% set amount_trips = day.planned_events | length + day.trips | length %}
            {% set_global day_cox_needed = false %}
            {% if day.planned_events | length > 0 %}
                {% for planned_event in day.planned_events %}
                    {% if planned_event.cox_needed %}
                        {% set_global day_cox_needed = true %}
                    {% endif %}
                {% endfor %}
            {% endif %}
            <div class="bg-white dark:bg-primary-900 rounded-md flex justify-between flex-col shadow reset-js"
                 style="min-height: 10rem"
                 data-trips="{{ amount_trips }}"
                 data-month="{{ day.day| date(format='%m') }}"
                 data-coxneeded="{{ day_cox_needed }}">
                <div>
                    <h2 class="font-bold uppercase tracking-wide text-center rounded-t-md  {% if day.is_pinned %} text-white bg-primary-950 {% else %} text-primary-950 dark:text-white bg-gray-200 dark:bg-primary-950 bg-opacity-80 {% endif %} text-lg px-3 py-3 ">
                        {{ day.day| date(format="%d.%m.%Y") }}
                        <small class="inline-block ml-1 text-xs {% if day.is_pinned %} text-gray-200 {% else %} text-gray-500 dark:text-gray-100 {% endif %}">{{ day.day | date(format="%A", locale="de_AT") }}</small>
                    </h2>
                    {% if day.planned_events | length > 0 or  day.trips | length > 0 %}
                        <div class="grid grid-cols-1 gap-3 mb-3">
                            {# --- START Events --- #}
                            {% if day.planned_events | length > 0 %}
                                {% for planned_event in day.planned_events | sort(attribute="planned_starting_time") %}
                                    {% set amount_cur_cox = planned_event.cox | length %}
                                    {% set amount_cox_missing = planned_event.planned_amount_cox - amount_cur_cox %}
                                    <div class="pt-2 px-3 border-t border-gray-200"
                                         style="order: {{ planned_event.planned_starting_time | replace(from=":", to="") }}">
                                        <div class="flex justify-between items-center">
                                            <div class="mr-1">
                                                <strong class="text-primary-900 dark:text-white">
                                                    {{ planned_event.planned_starting_time }}
                                                    Uhr
                                                </strong>
                                                <small class="text-gray-600 dark:text-gray-100">({{ planned_event.name }}
                                                    {%- if planned_event.trip_type %}
                                                        - {{ planned_event.trip_type.icon | safe }} {{ planned_event.trip_type.name }}
                                                    {%- endif -%}
                                                )</small>
                                                <br />
                                                <a href="#" data-sidebar="true" data-trigger="sidebar" data-header="<strong>{{ planned_event.planned_starting_time }} Uhr</strong> ({{ planned_event.name }})
                                                    {% if planned_event.trip_type %}<small class='block'>{{ planned_event.trip_type.desc }}</small>{% endif %}
                                                    {% if planned_event.notes %}<small class='block'>{{ planned_event.notes }}</small>{% endif %}
                                                    " data-body="#event{{ planned_event.trip_details_id }}" class="inline-block link-primary mr-3">
                                                    Details
                                                </a>
                                            </div>
                                            <div class="text-right grid gap-2">
                                                {# --- START Row Buttons --- #}
                                                {% set_global cur_user_participates = false %}
                                                {% for rower in planned_event.rower %}
                                                    {% if rower.name == loggedin_user.name %}
                                                        {% set_global cur_user_participates = true %}
                                                    {% endif %}
                                                {% endfor %}
                                                {% if cur_user_participates %}
                                                    <a href="/planned/remove/{{ planned_event.trip_details_id }}"
                                                       class="btn btn-attention btn-fw">Abmelden</a>
                                                {% endif %}
                                                {% if planned_event.max_people > planned_event.rower | length %}
                                                    {% if cur_user_participates == false %}
                                                        <a href="/planned/join/{{ planned_event.trip_details_id }}"
                                                           class="btn btn-primary btn-fw"
                                                           {% if planned_event.trip_type %}onclick="return confirm('{{ planned_event.trip_type.question }}');"{% endif %}>Mitrudern</a>
                                                    {% endif %}
                                                {% endif %}
                                                {# --- END Row Buttons --- #}
                                                {# --- START Cox Buttons --- #}
                                                {% if "cox" in loggedin_user.roles %}
                                                    {% set_global cur_user_participates = false %}
                                                    {% for cox in planned_event.cox %}
                                                        {% if cox.name == loggedin_user.name %}
                                                            {% set_global cur_user_participates = true %}
                                                        {% endif %}
                                                    {% endfor %}
                                                    {% if cur_user_participates %}
                                                        <a href="/cox/remove/{{ planned_event.id }}"
                                                           class="block btn btn-attention btn-fw">
                                                            {% include "includes/cox-icon" %}
                                                            Abmelden
                                                        </a>
                                                    {% else %}
                                                        <a href="/cox/join/{{ planned_event.id }}"
                                                           class="block btn {% if amount_cox_missing > 0 %} btn-dark {% else %} btn-gray {% endif %} btn-fw"
                                                           {% if planned_event.trip_type %}onclick="return confirm('{{ planned_event.trip_type.question }}');"{% endif %}>
                                                            {% include "includes/cox-icon" %}
                                                            Steuern
                                                        </a>
                                                    {% endif %}
                                                {% endif %}
                                                {# --- END Cox Buttons --- #}
                                            </div>
                                        </div>
                                        {# --- START Sidebar Content --- #}
                                        <div class="hidden">
                                            <div id="event{{ planned_event.trip_details_id }}">
                                                {# --- START List Coxes --- #}
                                                {% if planned_event.planned_amount_cox > 0 %}
                                                    {% if amount_cox_missing > 0 %}
                                                        {{ macros::box(participants=planned_event.cox, empty_seats=planned_event.planned_amount_cox - amount_cur_cox, header='Noch benötigte Steuerleute:', text='Keine Steuerleute angemeldet') }}
                                                    {% else %}
                                                        {{ macros::box(participants=planned_event.cox, empty_seats="", header='Genügend Steuerleute haben sich angemeldet :-)', text='Keine Steuerleute angemeldet') }}
                                                    {% endif %}
                                                {% endif %}
                                                {# --- END List Coxes --- #}
                                                {# --- START List Rowers --- #}
                                                {% if planned_event.max_people > 0 %}
                                                    {% set amount_cur_rower = planned_event.rower | length %}
                                                    {{ macros::box(participants=planned_event.rower, empty_seats=planned_event.max_people - amount_cur_rower, bg='primary-100', color='black', trip_details_id=planned_event.trip_details_id, allow_removing="planned_event" in loggedin_user.roles) }}
                                                {% endif %}
                                                {# --- END List Rowers --- #}
                                                {% if "planned_event" in loggedin_user.roles %}
                                                    <form action="/planned/join/{{ planned_event.trip_details_id }}"
                                                          method="get" />
                                                    {{ macros::input(label='Gast', class="input rounded-t", name='user_note', type='text', required=true) }}
                                                    <input value="Gast hinzufügen"
                                                           class="btn btn-primary w-full rounded-t-none-important"
                                                           type="submit" />
                                                </form>
                                            {% endif %}
                                            {% if planned_event.allow_guests %}
                                                <div class="text-primary-900 bg-primary-50 text-center p-1 mb-4">Gäste willkommen!</div>
                                            {% endif %}
                                            {% if "planned_event" in loggedin_user.roles %}
                                                {# --- START Edit Form --- #}
                                                <div class="bg-gray-100 dark:bg-primary-900 p-3 mt-4 rounded-md">
                                                    <h3 class="text-primary-950 dark:text-white font-bold uppercase tracking-wide mb-2">Ausfahrt bearbeiten</h3>
                                                    <form action="/admin/planned-event" method="post" class="grid gap-3">
                                                        <input type="hidden" name="_method" value="put" />
                                                        <input type="hidden" name="id" value="{{ planned_event.id }}" />
                                                        {{ macros::input(label='Titel', name='name', type='input', value=planned_event.name) }}
                                                        {{ macros::input(label='Anzahl Ruderer', name='max_people', type='number', required=true, value=planned_event.max_people, min='0') }}
                                                        {{ macros::input(label='Anzahl Steuerleute', name='planned_amount_cox', type='number', value=planned_event.planned_amount_cox, required=true, min='0') }}
                                                        {{ macros::checkbox(label='Immer anzeigen', name='always_show', id=planned_event.id,checked=planned_event.always_show) }}
                                                        {{ macros::checkbox(label='Gesperrt', name='is_locked', id=planned_event.id,checked=planned_event.is_locked) }}
                                                        {{ macros::input(label='Anmerkungen', name='notes', type='input', value=planned_event.notes) }}
                                                        <input value="Speichern" class="btn btn-primary" type="submit" />
                                                    </form>
                                                </div>
                                                {# --- END Edit Form --- #}
                                                {# --- START Delete Btn --- #}
                                                <div class="text-right">
                                                    <a href="/admin/planned-event/{{ planned_event.id }}/delete"
                                                       class="inline-block btn btn-alert">
                                                        {% include "includes/delete-icon" %}
                                                        Termin löschen
                                                    </a>
                                                </div>
                                            {% endif %}
                                            {# --- END Delete Btn --- #}
                                        </div>
                                    </div>
                                    {# --- END Sidebar Content --- #}
                                </div>
                            {% endfor %}
                        {% endif %}
                        {# --- END Events --- #}
                        {# --- START Trips --- #}
                        {% if day.trips | length > 0 %}
                            {% for trip in day.trips | sort(attribute="planned_starting_time") %}
                                <div class="pt-2 px-3 reset-js border-t border-gray-200"
                                     style="order: {{ trip.planned_starting_time | replace(from=":", to="") }}"
                                     data-coxneeded="false">
                                    <div class="flex justify-between items-center">
                                        <div class="mr-1">
                                            {% if trip.max_people == 0 %}
                                                <strong class="text-[#f43f5e]">&#9888;
                                                    {{ trip.planned_starting_time }}
                                                Uhr</strong>
                                                <small class="text-[#f43f5e]">(Absage
                                                    {{ trip.cox_name -}}
                                                    {% if trip.trip_type %}
                                                        -
                                                        {{ trip.trip_type.icon | safe }}{{ trip.trip_type.name }}
                                                    {% endif -%}
                                                )</small>
                                            {% else %}
                                                <strong class="text-primary-900 dark:text-white">{{ trip.planned_starting_time }}
                                                Uhr</strong>
                                                <small class="text-gray-600 dark:text-gray-100">({{ trip.cox_name -}}
                                                    {% if trip.trip_type %}
                                                        - {{ trip.trip_type.icon | safe }} {{ trip.trip_type.name }}
                                                    {% endif -%}
                                                )</small>
                                            {% endif %}
                                            <br />
                                            <a href="#" data-sidebar="true" data-trigger="sidebar" data-header="<strong>
                                                {% if trip.max_people == 0 %}&#9888;{% endif %}
                                                {{ trip.planned_starting_time }} Uhr</strong> ({{ trip.cox_name }})
                                                {% if trip.trip_type %}<small class='block'>{{ trip.trip_type.desc }}</small>{% endif %}
                                                {% if trip.notes %}<small class='block'>{{ trip.notes }}</small>{% endif %}
                                                " data-body="#trip{{ trip.trip_details_id }}" class="inline-block link-primary mr-3">
                                                Details
                                            </a>
                                        </div>
                                        <div>
                                            {% set_global cur_user_participates = false %}
                                            {% for rower in trip.rower %}
                                                {% if rower.name == loggedin_user.name %}
                                                    {% set_global cur_user_participates = true %}
                                                {% endif %}
                                            {% endfor %}
                                            {% if cur_user_participates %}
                                                <a href="/planned/remove/{{ trip.trip_details_id }}"
                                                   class="btn btn-attention btn-fw">Abmelden</a>
                                            {% endif %}
                                            {% if trip.max_people > trip.rower | length and trip.cox_id != loggedin_user.id and cur_user_participates == false %}
                                                <a href="/planned/join/{{ trip.trip_details_id }}"
                                                   class="btn btn-primary btn-fw"
                                                   {% if trip.trip_type %}onclick="return confirm('{{ trip.trip_type.question }}');"{% endif %}>Mitrudern</a>
                                            {% endif %}
                                        </div>
                                    </div>
                                    {# --- START Sidebar Content --- #}
                                    <div class="hidden">
                                        <div id="trip{{ trip.trip_details_id }}">
                                            {% if trip.max_people == 0 %}
                                                {# --- border-[#f43f5e] bg-[#f43f5e] --- #}
                                                {{ macros::box(participants=trip.rower,bg='[#f43f5e]',header='Absage') }}
                                            {% else %}
                                                {% set amount_cur_rower = trip.rower | length %}
                                                {{ macros::box(participants=trip.rower, empty_seats=trip.max_people - amount_cur_rower, bg='primary-100', color='black', trip_details_id=trip.trip_details_id, allow_removing=loggedin_user.id == trip.cox_id) }}
                                                {% if trip.cox_id == loggedin_user.id %}
                                                    <form action="/planned/join/{{ trip.trip_details_id }}" method="get" />
                                                    {{ macros::input(label='Gast', class="input rounded-t", name='user_note', type='text', required=true) }}
                                                    <input value="Gast hinzufügen"
                                                           class="btn btn-primary w-full rounded-t-none-important"
                                                           type="submit" />
                                                </form>
                                            {% endif %}
                                        {% endif %}
                                        {# --- START Edit Form --- #}
                                        {% if trip.cox_id == loggedin_user.id %}
                                            <div class="bg-gray-100 dark:bg-primary-900 p-3 mt-4 rounded-md">
                                                <h3 class="text-primary-950 dark:text-white font-bold uppercase tracking-wide mb-2">Ausfahrt bearbeiten</h3>
                                                <form action="/cox/trip/{{ trip.id }}" method="post" class="grid gap-3">
                                                    {{ macros::input(label='Anzahl Ruderer', name='max_people', type='number', required=true, value=trip.max_people, min='0') }}
                                                    {{ macros::input(label='Anmerkungen', name='notes', type='input', value=trip.notes) }}
                                                    {{ macros::checkbox(label='Immer anzeigen', name='always_show', id=trip.id,checked=trip.always_show) }}
                                                    {{ macros::checkbox(label='Gesperrt', name='is_locked', id=trip.id,checked=trip.is_locked) }}
                                                    {{ macros::select(label='Typ', name='trip_type', data=trip_types, default='Reguläre Ausfahrt', selected_id=trip.trip_type_id) }}
                                                    <input value="Speichern" class="btn btn-primary" type="submit" />
                                                </form>
                                            </div>
                                            {% if trip.rower | length == 0 %}
                                                <div class="text-right mt-6">
                                                    <a href="/cox/remove/trip/{{ trip.id }}"
                                                       class="inline-block btn btn-alert">
                                                        {% include "includes/delete-icon" %}
                                                        Termin löschen
                                                    </a>
                                                </div>
                                            {% endif %}
                                        {% endif %}
                                        {# --- END Edit Form --- #}
                                    </div>
                                </div>
                                {# --- END Sidebar Content --- #}
                            </div>
                        {% endfor %}
                    {% endif %}
                    {# --- END Trips --- #}
                </div>
            {% endif %}
        </div>
        {# --- START Add Buttons --- #}
        {% if "planned_event" in loggedin_user.roles or "cox" in loggedin_user.roles %}
            <div class="grid {% if "planned_event" in loggedin_user.roles %}grid-cols-2{% endif %} text-center">
                {% if "planned_event" in loggedin_user.roles %}
                    <a href="#"
                       data-sidebar="true"
                       data-trigger="sidebar"
                       data-header="<strong>Event</strong> am {{ day.day| date(format='%d.%m.%Y') }} erstellen"
                       data-day="{{ day.day }}"
                       data-body="#addEventForm"
                       class="relative inline-block w-full bg-primary-900 hover:bg-primary-950 focus:bg-primary-950 dark:bg-primary-950 text-white py-2 rounded-bl-md text-sm font-semibold">
                        <span class="absolute inset-y-0 left-0 flex items-center pl-3">{% include "includes/plus-icon" %}</span>
                        Event
                    </a>
                {% endif %}
                {% if "cox" in loggedin_user.roles %}
                    <a href="#" data-sidebar="true" data-trigger="sidebar" data-header="<strong>Ausfahrt</strong> am {{ day.day| date(format='%d.%m.%Y') }} erstellen" data-day="{{ day.day }}" data-body="#sidebarForm" class="relative inline-block w-full py-2 text-primary-900 hover:text-primary-950 dark:bg-primary-600 dark:text-white dark:hover:bg-primary-500 dark:hover:text-white focus:text-primary-950 text-sm font-semibold bg-gray-100 hover:bg-gray-200 focus:bg-gray-200
                        {% if "planned_event" in loggedin_user.roles %}
                            rounded-br-md
                        {% else %}
                            rounded-b-md
                        {% endif %}
                        ">
                        <span class="absolute inset-y-0 left-0 flex items-center pl-3">{% include "includes/plus-icon" %}</span>
                        Ausfahrt
                    </a>
                {% endif %}
            </div>
        {% endif %}
        {# --- END Add Buttons --- #}
    </div>
{% endfor %}
</div>
</div>
{% if "cox" in loggedin_user.roles %}
    {% include "forms/trip" %}
{% endif %}
{% if "planned_event" in loggedin_user.roles %}
    {% include "forms/event" %}
{% endif %}
{% endblock content %}
