{% load static %}
<!-- Identify Missing Rules -->
<dialog
  id="identify_missing_rules_modal"
  class="modal"
  x-data="modalForm()"
  @close="reset()"
>
  <div class="modal-box">
    <!-- Header -->
    <h3 class="text-lg font-bold">Identify Missing Rules</h3>

    <!-- Close button (X) -->
    <form method="dialog">
      <button
        class="btn btn-sm btn-circle btn-ghost absolute top-2 right-2"
        :disabled="isSubmitting"
      >
        ✕
      </button>
    </form>

    <!-- Body -->
    <div class="py-4">
      <p class="mb-4">
        By clicking on Download we'll search the Pathway for Reactions that are
        not backed by a Rule or which can be assembled by chaining two rules.
      </p>
      <form
        id="identify-missing-rules-modal-form"
        accept-charset="UTF-8"
        action="{{ pathway.url }}"
        method="GET"
      >
        <div class="form-control">
          <label class="label" for="rule-package">
            <span class="label-text">Select the Rule Package</span>
          </label>
          <select
            id="rule-package"
            name="rule-package"
            class="select select-bordered w-full"
            required
          >
            <optgroup label="Reviewed Packages">
              {% for obj in meta.readable_packages %}
                {% if obj.reviewed %}
                  <option value="{{ obj.url }}">{{ obj.name }}</option>
                {% endif %}
              {% endfor %}
            </optgroup>
            <optgroup label="Unreviewed Packages">
              {% for obj in meta.readable_packages %}
                {% if not obj.reviewed %}
                  <option value="{{ obj.url }}">{{ obj.name }}</option>
                {% endif %}
              {% endfor %}
            </optgroup>
          </select>
        </div>
        <input type="hidden" name="identify-missing-rules" value="true" />
      </form>
    </div>

    <!-- Footer -->
    <div class="modal-action">
      <button
        type="button"
        class="btn"
        onclick="this.closest('dialog').close()"
        :disabled="isSubmitting"
      >
        Close
      </button>
      <button
        type="button"
        class="btn btn-primary"
        @click="document.getElementById('identify-missing-rules-modal-form').submit(); $el.closest('dialog').close()"
      >
        Download
      </button>
    </div>
  </div>

  <!-- Backdrop -->
  <form method="dialog" class="modal-backdrop">
    <button :disabled="isSubmitting">close</button>
  </form>
</dialog>
