elixir:
  route = fn p -> ~p"/galleries?#{p}" end
  pagination = render PhilomenaWeb.PaginationView, "_pagination.html", page: @galleries, route: route, params: [gallery: @conn.params["gallery"]]

.column-layout
  .column-layout__left
    .block
      .block__content
        h3 Search Galleries

        = form_for @conn, ~p"/galleries", [as: :gallery, method: "get", class: "hform"], fn f ->
          .field = label f, :title, "Title"
          .field = text_input f, :title, class: "input hform__text", placeholder: "Gallery title (* as wildcard)"

          .field = label f, :description, "Description"
          .field = textarea f, :description, class: "input hform__text", placeholder: "Gallery description"

          .field = label f, :creator, "Creator"
          .field = text_input f, :creator, class: "input hform__text", placeholder: "Gallery creator (exact match)"

          .field = label f, :include_image, "Include image"
          .field = number_input f, :include_image, class: "input hform__text", placeholder: "Image ID (e.g. 100)"

          .field = label f, :sf, "Sort by"
          .field
            => select f, :sf, ["Creation Date": "created_at", "Update Date": "updated_at", "Image Count": "image_count", "Relevance": "_score"], class: "input"
            => select f, :sd, ["Descending": "desc", "Ascending": "asc"], class: "input"

          .field
          = submit "Search", class: "button button--primary"
    .block
      .block__header
        a href="/galleries/new" title="Create Gallery"
          ' Create Gallery

  .column-layout__main
    .block
      .block__header.page__header
        .page__pagination = pagination

      .media-list
        = if Enum.any?(@galleries) do
          = for gallery <- @galleries do
            = render PhilomenaWeb.GalleryView, "_gallery.html", gallery: gallery, conn: @conn

        - else
          .block.block--fixed.block--no-margin.block--warning
            ' No galleries found!

      .block__header.block__header--light.page__header
        .page__pagination = pagination
