cannery/lib/cannery_web/live/container_live/form_component.html.heex

56 lines
1.8 KiB
Plaintext

<div>
<h2 class="text-center title text-xl text-primary-500">
<%= @title %>
</h2>
<.form
let={f}
for={@changeset}
id="container-form"
class="grid grid-cols-3 justify-center items-center space-y-4"
phx-target={@myself}
phx-change="validate"
phx-submit="save"
>
<%= unless @changeset.valid? do %>
<div class="invalid-feedback col-span-3 text-center">
<%= changeset_errors(@changeset) %>
</div>
<% end %>
<%= label(f, :name, gettext("Name"), class: "title text-lg text-primary-500") %>
<%= text_input(f, :name,
class: "input input-primary col-span-2",
placeholder: gettext("My cool ammo can")
) %>
<%= error_tag(f, :name, "col-span-3 text-center") %>
<%= label(f, :desc, gettext("Description"), class: "title text-lg text-primary-500") %>
<%= textarea(f, :desc,
class: "input input-primary col-span-2",
phx_hook: "MaintainAttrs",
placeholder: gettext("Metal ammo can with the anime girl sticker")
) %>
<%= error_tag(f, :desc, "col-span-3 text-center") %>
<%= label(f, :type, gettext("Type"), class: "title text-lg text-primary-500") %>
<%= text_input(f, :type,
class: "input input-primary col-span-2",
placeholder: gettext("Magazine, Clip, Ammo Box, etc")
) %>
<%= error_tag(f, :type, "col-span-3 text-center") %>
<%= label(f, :location, gettext("Location"), class: "title text-lg text-primary-500") %>
<%= textarea(f, :location,
class: "input input-primary col-span-2",
phx_hook: "MaintainAttrs",
placeholder: gettext("On the bookshelf")
) %>
<%= error_tag(f, :location, "col-span-3 text-center") %>
<%= submit(dgettext("actions", "Save"),
class: "mx-auto btn btn-primary col-span-3",
phx_disable_with: dgettext("prompts", "Saving...")
) %>
</.form>
</div>