Aggiunge navigazione mobile dedicata e trasforma le principali liste operative in layout più leggibili e facili da toccare. Co-authored-by: Cursor <cursoragent@cursor.com>
28 lines
1.7 KiB
ERB
28 lines
1.7 KiB
ERB
<div class="overflow-hidden rounded-xl border border-zinc-200 bg-white text-zinc-900 dark:border-zinc-800 dark:bg-zinc-900 dark:text-zinc-100">
|
|
<div class="divide-y divide-zinc-100 dark:divide-zinc-800">
|
|
<% tasks.each do |task| %>
|
|
<div class="flex flex-col gap-3 px-4 py-3 sm:flex-row sm:items-center <%= 'bg-rose-50' if task.overdue? %> <%= 'bg-amber-50' if task.due_today? %>">
|
|
<div class="min-w-0 flex-1">
|
|
<div class="flex flex-wrap items-center gap-2">
|
|
<%= link_to task.organization.name, task.organization, class: "font-medium text-zinc-900 hover:underline dark:text-zinc-100" %>
|
|
<%= priority_badge(task.priority) %>
|
|
<span class="text-xs text-zinc-500"><%= task.task_type_label %></span>
|
|
</div>
|
|
<div class="mt-0.5 text-sm text-zinc-700 dark:text-zinc-200"><%= task.title %></div>
|
|
<div class="mt-0.5 text-xs text-zinc-500">
|
|
<%= task.contact&.full_name || "—" %> · <%= format_dt(task.due_at) %>
|
|
<% if task.assigned_user %>· <%= task.assigned_user.full_name %><% end %>
|
|
</div>
|
|
</div>
|
|
<div class="flex w-full flex-wrap items-center gap-2 sm:w-auto">
|
|
<%= button_to "Completa", complete_task_path(task), method: :patch, class: "rounded-md bg-emerald-600 px-3 py-1.5 text-xs font-medium text-white hover:bg-emerald-700" %>
|
|
<%= link_to "Apri", task.organization, class: "rounded-md border border-zinc-300 px-3 py-1.5 text-xs font-medium text-zinc-700 hover:bg-zinc-50 dark:border-zinc-600 dark:text-zinc-200 dark:hover:bg-zinc-800" %>
|
|
</div>
|
|
</div>
|
|
<% end %>
|
|
<% if tasks.blank? %>
|
|
<div class="px-4 py-6 text-center text-sm text-slate-500">Nessun task</div>
|
|
<% end %>
|
|
</div>
|
|
</div>
|