<%# app/views/usuarios/index.html.erb %>
<%# Header %>

Usuários

Gerencie o acesso ao sistema

<% if policy(User).create? %> <%= link_to new_usuario_path, class: 'flex items-center gap-2 px-5 py-3 bg-[#f97316] hover:bg-orange-500 text-white font-semibold rounded-xl transition-colors min-h-[48px]' do %> Novo Usuário <% end %> <% end %>
<%# Flash %> <%= render 'shared/flash' %> <%# Tabela %>
<% @usuarios.each do |usuario| %> <% end %> <% if @usuarios.empty? %> <% end %>
Nome E-mail / PIN Perfil Status Ações
<%= usuario.name.to_s[0].upcase %>
<%= usuario.name %>
<% if usuario.motorista? && usuario.pin_acesso.present? %>
PIN: ••••
<% else %>
<%= usuario.email %>
<% end %>
<%= badge_role(usuario.role) %> <%= badge_status_usuario(usuario.ativo?) %>
<% if policy(usuario).edit? %> <%= link_to edit_usuario_path(usuario), class: 'p-2 text-gray-400 hover:text-white hover:bg-white/10 rounded-lg transition-colors', title: 'Editar' do %> <% end %> <% end %> <% if policy(usuario).toggle_ativo? %> <%= button_to toggle_ativo_usuario_path(usuario), method: :post, class: "p-2 rounded-lg transition-colors #{usuario.ativo? ? 'text-green-400 hover:bg-green-900/30' : 'text-red-400 hover:bg-red-900/30'}", title: usuario.ativo? ? 'Desativar' : 'Ativar', data: { confirm: "#{usuario.ativo? ? 'Desativar' : 'Ativar'} #{usuario.name}?" } do %> <% end %> <% end %> <% if policy(usuario).destroy? %> <%= button_to usuario_path(usuario), method: :delete, class: 'p-2 text-gray-600 hover:text-red-400 hover:bg-red-900/20 rounded-lg transition-colors', title: 'Excluir', data: { confirm: "Excluir #{usuario.name} permanentemente?" } do %> <% end %> <% end %>
👥

Nenhum usuário encontrado.

<% if @usuarios.respond_to?(:total_pages) && @usuarios.total_pages > 1 %>
<%= paginate @usuarios %>
<% end %>