<div class="js-sourcesauce">
  <% has_sources = Enum.any?(@image.sources) %>
  <%= form_for @changeset, ~p"/images/#{@image}/sources", [method: "put", class: "hidden", id: "source-form", data: [remote: "true"]], fn f -> %>
    <%= if can?(@conn, :edit_metadata, @image) and !@conn.assigns.current_ban do %>
      <%= if @changeset.action do %>
        <div class="alert alert-danger">
          <p>
            Oops, something went wrong! Please check the errors below.
          </p>
        </div>
      <% end %>
      <p>
        The page(s) you found this image on. Images may have a maximum of
        <span class="js-max-source-count">
          10
        </span>
        source URLs. Leave any sources you don't want to use blank.
      </p>
      <%= inputs_for f, :sources, [as: "image[old_sources]", skip_hidden: true], fn fs -> %>
        <%= hidden_input(fs, :source) %>
      <% end %>
      <%= inputs_for f, :sources, [skip_hidden: true], fn fs -> %>
        <div class="field js-image-source field--inline flex--no-wrap flex--centered">
          <%= text_input(fs, :source, class: "input flex__grow js-source-url", placeholder: "Source URL") %>
          <%= error_tag(fs, :source) %>
          <label class="input--separate-left flex__fixed flex--centered">
            <a class="js-source-remove" href="#">
              <i class="fa fa-trash"></i>
              Delete
            </a>
          </label>
        </div>
      <% end %>
      <div class="field">
        <button class="button js-image-add-source" type="button">
          <i class="fa fa-plus"></i>
          Add source
        </button>
        <%= submit("Save sources", class: "button button--separate-left") %>
        <button class="button button--separate-left" data-click-hide="#source-form" data-click-show="#image-source" type="reset">
          Cancel
        </button>
      </div>
      <%= render(PhilomenaWeb.CaptchaView, "_captcha.html", name: "source", conn: @conn) %>
    <% else %>
      <p>
        You can't edit the source on this image.
      </p>
    <% end %>
  <% end %>
  <div class="block" id="image-source">
    <div class="block__header flex">
      <span class="block__header__title">
        <i class="fas fa-link"></i>
        <%= if !has_sources || length(@image.sources) == 1 do %>
          Source
        <% else %>
          Sources
        <% end %>
      </span>
      <div class="block__header__buttons">
        <a accessKey="s" class="button button--inline" data-click-focus=".js-image-source" data-click-hide="#image-source" data-click-show="#source-form" id="edit-source" title="Edit source">
          <i class="fas fa-edit"></i>
          <%= if has_sources do %>
            Add/Edit
          <% else %>
            Add
          <% end %>
        </a>
        <%= if @source_change_count > 0 do %>
          <a class="button button--link button--inline" href={~p"/images/#{@image}/source_changes"} title="Source history">
            <i class="fa fa-history"></i>
            <spanspan class="hide-mobile">
              History
            </spanspan>
            (
            <%= @source_change_count %>
            )
          </a>
        <% end %>
        <%= if can?(@conn, :hide, @image) and not hide_staff_tools?(@conn) do %>
          <%= form_for @changeset, ~p"/images/#{@image}/source_history", [method: "delete"], fn _f -> %>
            <a class="button button--state-danger button--inline" data-confirm="Are you really, really sure?" title="Wipe sources" type="submit">
              <i class="fas fa-eraser"></i>
              Wipe
            </a>
          <% end %>
        <% end %>
      </div>
    </div>
    <div class="block__content flex flex--wrap flex--column">
      <div class="image_sources">
        <%= if has_sources do %>
          <% [first_source | sources] = @image.sources %>
          <div class="image_source__icon">
            <i class={image_source_icon(first_source.source)}></i>
          </div>
          <div class="image_source__link">
            <a class="js-source-link" href={first_source.source}>
              <strong>
                <%= first_source.source %>
              </strong>
            </a>
          </div>
          <%= for source <- sources do %>
            <div class="image_source__icon">
              <i class={image_source_icon(source.source)}></i>
            </div>
            <div class="image_source__link">
              <a href={source.source}>
                <strong>
                  <%= source.source %>
                </strong>
              </a>
            </div>
          <% end %>
        <% else %>
          <div class="image_source__icon">
            <i class="fa fa-unlink"></i>
          </div>
          <div class="image_source__link">
            <em>
              not provided yet
            </em>
          </div>
        <% end %>
      </div>
    </div>
  </div>
</div>