<%= content_for :page_title, t(".title") %>

<%= t(".description") %>

<%= form_with url: admin_users_path, method: :get, class: "flex gap-4 items-end flex-wrap" do |f| %>
<%= f.label :role, t(".filters.role"), class: "block text-sm font-medium text-primary mb-1" %> <%= f.select :role, options_for_select( [[t(".filters.role_all"), ""], [t(".roles.guest"), "guest"], [t(".roles.member", default: "Member"), "member"], [t(".roles.admin"), "admin"], [t(".roles.super_admin"), "super_admin"]], params[:role] ), {}, class: "rounded-lg border border-primary px-3 py-2 text-sm bg-container-inset text-primary w-full" %>
<%= f.label :trial_status, t(".filters.trial_status"), class: "block text-sm font-medium text-primary mb-1" %> <%= f.select :trial_status, options_for_select( [[t(".filters.trial_all"), ""], [t(".filters.trial_expiring_soon"), "expiring_soon"], [t(".filters.trial_trialing"), "trialing"]], params[:trial_status] ), {}, class: "rounded-lg border border-primary px-3 py-2 text-sm bg-container-inset text-primary w-full" %>
<%= render DS::Button.new(variant: :primary, size: :md, type: "submit", text: t(".filters.submit"), class: "md:w-auto w-full justify-center") %> <% end %>
<%= icon "calendar-clock", class: "w-5 h-5 text-secondary" %>

<%= t(".summary.trials_expiring_7_days") %>

<%= @trials_expiring_in_7_days %>

<%= t(".section_title") %>

<% if @users.any? %> <% @users.each do |user| %> <% end %>
<%= t(".table.user") %> <%= t(".table.trial_ends_at") %> <%= t(".table.family_accounts") %> <%= t(".table.family_transactions") %> <%= t(".table.role") %>
<%= user.initials %>

<%= user.display_name %>

<%= user.email %>

<%= t(".table.last_login") %>: <%= @last_login_by_user[user.id]&.to_fs(:long) || t(".table.never") %> <%= t(".table.session_count") %>: <%= number_with_delimiter(@sessions_count_by_user[user.id] || 0) %>

<%= user.family.subscription&.trial_ends_at&.to_fs(:long) || t(".not_available") %> <%= number_with_delimiter(@accounts_count_by_family[user.family_id] || 0) %> <%= number_with_delimiter(@entries_count_by_family[user.family_id] || 0) %> <% if user.id == Current.user.id %> <%= t(".you") %> <% else %> <%= form_with model: [:admin, user], method: :patch, class: "flex items-center justify-end gap-2" do |form| %> <%= form.select :role, options_for_select([ [t(".roles.guest"), "guest"], [t(".roles.member", default: "Member"), "member"], [t(".roles.admin"), "admin"], [t(".roles.super_admin"), "super_admin"] ], user.role), {}, class: "text-sm rounded-lg border border-primary bg-container text-primary px-2 py-1", onchange: "this.form.requestSubmit()" %> <% end %> <% end %>
<% else %>
<%= icon "users", class: "w-12 h-12 mx-auto text-secondary mb-3" %>

<%= t(".no_users") %>

<% end %>
<%= settings_section title: t(".role_descriptions_title"), collapsible: true, open: false do %>
<%= t(".roles.guest") %>

<%= t(".role_descriptions.guest") %>

<%= t(".roles.member", default: "Member") %>

<%= t(".role_descriptions.member", default: "Basic user access. Can manage their own accounts, transactions, and settings.") %>

<%= t(".roles.admin") %>

<%= t(".role_descriptions.admin") %>

<%= t(".roles.super_admin") %>

<%= t(".role_descriptions.super_admin") %>

<% end %>