Rende la pipeline verticale su mobile e semplifica i form lunghi con sezioni, tap target più grandi e azioni più facili da usare in movimento. Co-authored-by: Cursor <cursoragent@cursor.com>
69 lines
3.4 KiB
ERB
69 lines
3.4 KiB
ERB
<%= form_with model: mail_identity, class: "space-y-6 rounded-xl border border-zinc-200 bg-white p-4 text-zinc-900 dark:border-zinc-800 dark:bg-zinc-900 dark:text-zinc-100 md:p-6" do |f| %>
|
|
<%= render "shared/errors", object: mail_identity %>
|
|
|
|
<div class="grid gap-4 md:grid-cols-2">
|
|
<div class="md:col-span-2">
|
|
<label class="mb-1 block text-sm font-medium">Nome account</label>
|
|
<%= f.text_field :name, required: true, placeholder: "MatchLiveTV produzione", class: input_class %>
|
|
</div>
|
|
<div>
|
|
<label class="mb-1 block text-sm font-medium">Nome mittente</label>
|
|
<%= f.text_field :from_name, required: true, placeholder: "MatchLiveTV", class: input_class %>
|
|
</div>
|
|
<div>
|
|
<label class="mb-1 block text-sm font-medium">Email mittente</label>
|
|
<%= f.email_field :from_email, required: true, placeholder: "hello@example.com", class: input_class %>
|
|
</div>
|
|
<div class="md:col-span-2">
|
|
<label class="mb-1 block text-sm font-medium">Reply-To (opzionale)</label>
|
|
<%= f.email_field :reply_to, class: input_class %>
|
|
</div>
|
|
<div>
|
|
<label class="mb-1 block text-sm font-medium">Host SMTP</label>
|
|
<%= f.text_field :smtp_host, required: true, placeholder: "smtp.example.com", class: input_class %>
|
|
</div>
|
|
<div>
|
|
<label class="mb-1 block text-sm font-medium">Porta</label>
|
|
<%= f.number_field :smtp_port, required: true, min: 1, max: 65535, class: input_class %>
|
|
<p class="mt-1 text-xs text-zinc-500">587 con STARTTLS · 465 con SSL/TLS (Aruba: smtp.aruba.it:587 oppure smtps.aruba.it:465)</p>
|
|
</div>
|
|
<div>
|
|
<label class="mb-1 block text-sm font-medium">Crittografia</label>
|
|
<%= f.select :encryption, Catalog::MAIL_ENCRYPTIONS.map { |k, v| [v, k] }, {}, class: input_class %>
|
|
</div>
|
|
<div>
|
|
<label class="mb-1 block text-sm font-medium">Autenticazione</label>
|
|
<%= f.select :smtp_authentication, Catalog::MAIL_AUTH_METHODS.map { |k, v| [v, k] }, {}, class: input_class %>
|
|
</div>
|
|
<div>
|
|
<label class="mb-1 block text-sm font-medium">Utente SMTP</label>
|
|
<%= f.text_field :smtp_username, autocomplete: "off", class: input_class %>
|
|
</div>
|
|
<div>
|
|
<label class="mb-1 block text-sm font-medium">Password SMTP<%= " (lascia vuoto per non cambiare)" unless mail_identity.new_record? %></label>
|
|
<%= f.password_field :smtp_password, autocomplete: "new-password", class: input_class %>
|
|
</div>
|
|
<label class="flex min-h-11 items-center gap-3 rounded-lg border border-zinc-200 px-3 py-2 text-sm dark:border-zinc-700">
|
|
<%= f.check_box :verify_ssl, class: "size-5" %>
|
|
Verifica il certificato SSL del server
|
|
</label>
|
|
<label class="flex min-h-11 items-center gap-3 rounded-lg border border-zinc-200 px-3 py-2 text-sm dark:border-zinc-700">
|
|
<%= f.check_box :active, class: "size-5" %>
|
|
Account attivo
|
|
</label>
|
|
</div>
|
|
|
|
<div class="flex flex-col gap-2 border-t border-zinc-100 pt-4 sm:flex-row dark:border-zinc-800">
|
|
<%= f.submit mail_identity.new_record? ? "Crea account" : "Salva", class: "#{btn_primary} w-full sm:w-auto" %>
|
|
<%= link_to "Annulla", mail_identities_path, class: "#{btn_secondary} w-full sm:w-auto" %>
|
|
</div>
|
|
<% end %>
|
|
|
|
<% unless mail_identity.new_record? %>
|
|
<div class="mt-4">
|
|
<%= button_to "Elimina account", mail_identity_path(mail_identity), method: :delete,
|
|
class: btn_danger,
|
|
form: { data: { turbo_confirm: "Eliminare #{mail_identity.name}?" } } %>
|
|
</div>
|
|
<% end %>
|