Extract partial for column form and add HTML5 blank validation

https://fizzy.37signals.com/5986089/cards/2046/edit
This commit is contained in:
Jorge Manrubia
2025-09-30 08:33:56 +02:00
parent a629418eed
commit 5c23e962eb
3 changed files with 7 additions and 14 deletions
@@ -7,12 +7,6 @@
<ul class="popup__list">
<li class="popup__item">
<button class="popup__btn btn" data-action="click->clicker#click">Rename column</button>
<dialog class="popup panel flex-column gap fill-white shadow txt-small margin-block-double" data-dialog-target="dialog">
<%= form_with model: [column.collection, column], data: { action: "turbo:submit-end->dialog#close" } do |form| %>
<%= form.text_field :name, class: "input", placeholder: "Column name", value: column.name, required: true, autocomplete: "off" %>
<%= form.submit "Rename column", class: "btn btn--link" %>
<% end %>
</dialog>
</li>
<li class="popup__item">
<%= button_to "Delete column", collection_column_path(column.collection, column),
@@ -27,10 +21,7 @@
<div data-controller="dialog" data-action="keydown.esc->dialog#close click@document->dialog#closeOnClickOutside">
<button id="<%= dom_id(column, :manage_menu) %>" class="popup__btn btn" data-action="click->dialog#open:stop" data-clicker-target="clickable" hidden aria-hidden>Rename column</button>
<dialog class="popup panel flex-column gap-half fill-white shadow txt-small margin-block-double" data-dialog-target="dialog">
<%= form_with model: [column.collection, column], data: { action: "turbo:submit-end->dialog#close" } do |form| %>
<%= form.text_field :name, class: "input", placeholder: "Column name", value: column.name, required: true %>
<%= form.submit "Rename column", class: "btn btn--link" %>
<% end %>
<%= render "collections/show/menu/column_form", collection: column.collection, column: column %>
</dialog>
</div>
</div>
@@ -0,0 +1,5 @@
<%= form_with model: [collection, column], data: { action: "turbo:submit-end->dialog#close" } do |form| %>
<%= form.text_field :name, class: "input", placeholder: "Column name", value: column.name,
required: true, autocomplete: "off", pattern: ".*\\S.*", title: "Column name cannot be blank" %>
<%= form.submit "Rename column", class: "btn btn--link" %>
<% end %>
@@ -3,9 +3,6 @@
<%= icon_tag "add", class: "translucent", "aria-hidden": true %>
</button>
<dialog class="popup panel flex-column gap-half fill-white shadow txt-small margin-block-double" data-dialog-target="dialog">
<%= form_with model: [ collection, Column.new ], data: { controller: "form", action: "turbo:submit-end->dialog#close turbo:submit-end->form#reset" } do |form| %>
<%= form.text_field :name, class: "input", placeholder: "Column name", required: true, autocomplete: "off" %>
<%= form.submit "Add a column", class: "btn btn--link" %>
<% end %>
<%= render "collections/show/menu/column_form", collection: collection, column: Column.new %>
</dialog>
</div>