{% import "includes/macros" as macros %}
{% import "includes/forms/log" as log %}

{% extends "base" %}

{% block content %}

<div class="max-w-screen-lg w-full">
  <h1 class="h1">Bootschäden</h1>

  {% if flash %}
    {{ macros::alert(message=flash.1, type=flash.0, class="sm:col-span-2 lg:col-span-3 mt-3") }}
  {% endif %}

  <h2 class="text-md font-bold tracking-wide bg-primary-900 mt-3 p-3 text-white flex justify-between items-center rounded-md">
    Neuen Schaden

    <a href="#" class="inline-flex justify-center rounded-md bg-primary-600 mx-1 px-3 py-2 text-sm font-semibold text-white hover:bg-primary-500 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-primary-600 cursor-pointer"
                data-sidebar="true" data-trigger="sidebar" data-header="Neuen Schaden anlegen" data-body="#new-damage">
      {% include "includes/plus-icon" %}
      <span class="sr-only">Neuen Schaden eintragen</span>
    </a>
  </h2>

  <div class="hidden">
    <div id="new-damage">
      <form action="/boatdamage" method="post" class="grid gap-3">
        {{ log::boat_select(only_ones=false, id='boat') }}
	{% if not loggedin_user %}
		{{ macros::select(label='Gemeldet von', data=user, name='user_id') }}
	{% endif %}
        {{ macros::input(label='Beschreibung des Schadens', name='desc', type='text', required=true, wrapper_class='col-span-4') }}
        <div class="col-span-4">
          {{ macros::checkbox(label='Boot sperren', name='lock_boat', type='text', required=true) }}
        </div>
        <input type="submit" class="btn btn-primary w-full col-span-4" value="Schaden eintragen" />
      </form>
    </div>
  </div>

  <div class="search-wrapper">
    <label for="name" class="sr-only">Suche</label>
    <input type="search" name="name" id="filter-js" class="search-bar" placeholder="Suchen nach Namen...">
  </div>

  <div id="filter-result-js" class="search-result"></div>

  {% for boatdamage in boatdamages | sort(attribute="verified") %}
    <div data-filterable="true" data-filter="{{ boatdamage.boat.name }} {{ boatdamage.user_created.name }}" class="w-full border-t bg-white dark:bg-primary-900 text-black dark:text-white p-3 {% if boatdamage.verified_at %} opacity-50 {% endif %}">
      <div class="w-full">
        <strong>{{ boatdamage.created_at | date(format='%d.%m.%Y') }} <span class="font-normal text-gray-600 dark:text-gray-100">({{ boatdamage.boat.name }})</span></strong>{% if boatdamage.boat.damage %}<small class="block text-gray-600 dark:text-gray-100">(Boot gesperrt)</small>{% endif %}
        <div>{{ boatdamage.desc }}</div>
        <small class="block text-gray-600 dark:text-gray-100">
          Schaden eingetragen von {{ boatdamage.user_created.name }} am/um {{ boatdamage.created_at | date(format='%d.%m.%Y (%H:%M)') }}
        </small>

        {% if boatdamage.fixed_at %}
          <small class="block text-gray-600 dark:text-gray-100">Repariert von {{ boatdamage.user_fixed.name }} am/um {{ boatdamage.fixed_at | date(format='%d.%m.%Y (%H:%M)') }}</small>
        {% else %}
          {% if loggedin_user and "cox" in loggedin_user.roles %}
            <form action="/boatdamage/{{ boatdamage.id }}/fixed" method="post" class="flex justify-between mt-3">
              <input type="text" name="desc" value="{{ boatdamage.desc }}" class="grow input rounded-s" />
              {% if loggedin_user and "tech" in loggedin_user.roles %}
                <input type="submit" class="btn btn-primary" style="border-top-left-radius: 0; border-bottom-left-radius: 0;" value="Repariert und verifiziert" />
              {% else %}
                <input type="submit" class="btn btn-primary" style="border-top-left-radius: 0; border-bottom-left-radius: 0;" value="Repariert" />
              {% endif %}
            </form>
          {% endif %}
        {% endif %}
        
        {% if boatdamage.verified_at %}
          <small class="block text-gray-600 dark:text-gray-100">Verifziert von {{ boatdamage.user_verified.name }} am/um {{ boatdamage.verified_at | date(format='%d.%m.%Y (%H:%M)') }}</small>
        {% else %}
          {% if loggedin_user and "tech" in loggedin_user.roles and boatdamage.fixed_at  %}
            <form action="/boatdamage/{{ boatdamage.id }}/verified" method="post" class="flex justify-between mt-3">
              <input type="text" name="desc" value="{{ boatdamage.desc }}" class="grow input rounded-s"/>
              <input type="submit" class="btn btn-dark" style="border-top-left-radius: 0; border-bottom-left-radius: 0;"  value="Verifiziert" />
            </form>
          {% endif %}
        {% endif %}
      </div>
    </div>
  {% endfor %}
</div>

{% endblock content%}