philomena/lib/philomena_web/templates/gallery/index.html.slime
2024-06-06 22:28:35 +02:00

51 lines
2 KiB
Text

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