mirror of
https://github.com/docusealco/docuseal.git
synced 2026-08-07 07:14:43 +00:00
add counters
This commit is contained in:
@@ -85,15 +85,40 @@
|
|||||||
<span><%= t(current_status) %></span>
|
<span><%= t(current_status) %></span>
|
||||||
<%= svg_icon('chevron_down', class: 'w-4 h-4 shrink-0') %>
|
<%= svg_icon('chevron_down', class: 'w-4 h-4 shrink-0') %>
|
||||||
</label>
|
</label>
|
||||||
<ul tabindex="0" class="z-10 dropdown-content p-2 mt-2 shadow menu text-base bg-base-100 rounded-box min-w-[180px]">
|
<ul tabindex="0" class="z-10 dropdown-content p-2 mt-2 shadow menu text-base bg-base-100 rounded-box" style="min-width: 180px;">
|
||||||
<% { 'all' => request.query_parameters.except('status'), 'pending' => request.query_parameters.merge('status' => 'pending'), 'completed' => request.query_parameters.merge('status' => 'completed') }.each do |status, status_params| %>
|
<li>
|
||||||
<li>
|
<%= link_to url_for(params: request.query_parameters.except('status')), class: ('bg-base-200' if current_status == 'all') do %>
|
||||||
<%= link_to url_for(params: status_params), class: ('bg-base-200' if current_status == status) do %>
|
<%= svg_icon('list', class: 'w-5 h-5 shrink-0') %>
|
||||||
<%= svg_icon(status_icons[status], class: 'w-5 h-5 shrink-0') %>
|
<span><%= t('all') %></span>
|
||||||
<span><%= t(status) %></span>
|
<% if local_assigns[:all_count] %>
|
||||||
|
<span class="badge badge-sm badge-ghost font-medium px-2 ml-auto">
|
||||||
|
<%= local_assigns[:all_count] %>
|
||||||
|
</span>
|
||||||
<% end %>
|
<% end %>
|
||||||
</li>
|
<% end %>
|
||||||
<% end %>
|
</li>
|
||||||
|
<li>
|
||||||
|
<%= link_to url_for(params: request.query_parameters.merge('status' => 'pending')), class: ('bg-base-200' if current_status == 'pending') do %>
|
||||||
|
<%= svg_icon('clock', class: 'w-5 h-5 shrink-0') %>
|
||||||
|
<span><%= t('pending') %></span>
|
||||||
|
<% if local_assigns[:pending_count] %>
|
||||||
|
<span class="badge badge-sm badge-ghost font-medium px-2 ml-auto">
|
||||||
|
<%= local_assigns[:pending_count] %>
|
||||||
|
</span>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<%= link_to url_for(params: request.query_parameters.merge('status' => 'completed')), class: ('bg-base-200' if current_status == 'completed') do %>
|
||||||
|
<%= svg_icon('circle_check', class: 'w-5 h-5 shrink-0') %>
|
||||||
|
<span><%= t('completed') %></span>
|
||||||
|
<% if local_assigns[:completed_count] %>
|
||||||
|
<span class="badge badge-sm badge-ghost font-medium px-2 ml-auto">
|
||||||
|
<%= local_assigns[:completed_count] %>
|
||||||
|
</span>
|
||||||
|
<% end %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<span>Filter</span>
|
<span>Filter</span>
|
||||||
<% end %>
|
<% end %>
|
||||||
</label>
|
</label>
|
||||||
<ul tabindex="0" class="z-10 dropdown-content p-2 mt-2 shadow menu text-base bg-base-100 rounded-box min-w-[180px] text-right">
|
<ul tabindex="0" class="z-10 dropdown-content p-2 mt-2 shadow menu text-base bg-base-100 rounded-box text-right" style="min-width: 180px;">
|
||||||
<li class="flex">
|
<li class="flex">
|
||||||
<%= link_to submissions_filter_path('completed_at', query_params.merge(path: url_for)), data: { turbo_frame: 'modal' } do %>
|
<%= link_to submissions_filter_path('completed_at', query_params.merge(path: url_for)), data: { turbo_frame: 'modal' } do %>
|
||||||
<%= svg_icon('calendar_check', class: 'w-5 h-5 flex-shrink-0 stroke-2') %>
|
<%= svg_icon('calendar_check', class: 'w-5 h-5 flex-shrink-0 stroke-2') %>
|
||||||
|
|||||||
@@ -39,7 +39,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<% unless can?(:manage, :countless) %>
|
<% unless can?(:manage, :countless) %>
|
||||||
<div class="badge badge-neutral badge-outline font-medium">
|
<div class="badge badge-neutral badge-outline font-medium">
|
||||||
<%= params[:status].blank? && filter_params.blank? ? @pagy.count : @base_submissions.count %>
|
<%= all_count = params[:status].blank? && filter_params.blank? ? @pagy.count : @base_submissions.count %>
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
</a>
|
</a>
|
||||||
@@ -50,7 +50,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<% unless can?(:manage, :countless) %>
|
<% unless can?(:manage, :countless) %>
|
||||||
<div class="badge badge-neutral badge-outline font-medium">
|
<div class="badge badge-neutral badge-outline font-medium">
|
||||||
<%= params[:status] == 'pending' && filter_params.blank? ? @pagy.count : @base_submissions.pending.count %>
|
<%= pending_count = params[:status] == 'pending' && filter_params.blank? ? @pagy.count : @base_submissions.pending.count %>
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
</a>
|
</a>
|
||||||
@@ -61,13 +61,13 @@
|
|||||||
</div>
|
</div>
|
||||||
<% unless can?(:manage, :countless) %>
|
<% unless can?(:manage, :countless) %>
|
||||||
<div class="badge badge-neutral badge-outline font-medium">
|
<div class="badge badge-neutral badge-outline font-medium">
|
||||||
<%= params[:status] == 'completed' && filter_params.blank? ? @pagy.count : @base_submissions.completed.count %>
|
<%= completed_count = params[:status] == 'completed' && filter_params.blank? ? @pagy.count : @base_submissions.completed.count %>
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center md:items-end gap-2 w-full md:w-fit">
|
<div class="flex items-center md:items-end gap-2 w-full md:w-fit">
|
||||||
<%= render 'submissions_filters/applied_filters', filter_params:, with_status: true %>
|
<%= render 'submissions_filters/applied_filters', filter_params:, with_status: true, all_count:, pending_count:, completed_count: %>
|
||||||
<%= render 'submissions_filters/filter_button', filter_params: %>
|
<%= render 'submissions_filters/filter_button', filter_params: %>
|
||||||
<% unless @template.archived_at? %>
|
<% unless @template.archived_at? %>
|
||||||
<%= render 'submissions_filters/actions', filter_params: filter_params.merge(template_id: @template.id) %>
|
<%= render 'submissions_filters/actions', filter_params: filter_params.merge(template_id: @template.id) %>
|
||||||
|
|||||||
Reference in New Issue
Block a user