Compare commits
No commits in common. "bdc5c406c7cf01de1c408cc4763606ca8106114e" and "cbbe45c7917653b423770bf16d3e21a83dbf02d2" have entirely different histories.
bdc5c406c7
...
cbbe45c791
|
@ -12,9 +12,9 @@ class UsersController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def create
|
def create
|
||||||
@user = User.new(user_params.except(:roles))
|
@user = User.new(user_params)
|
||||||
if @user.save
|
if @user.save
|
||||||
update_user_roles(@user, params[:user][:roles] || ['user'])
|
assign_roles(@user)
|
||||||
redirect_to users_path, notice: 'User was successfully created.'
|
redirect_to users_path, notice: 'User was successfully created.'
|
||||||
else
|
else
|
||||||
render :new
|
render :new
|
||||||
|
@ -43,12 +43,7 @@ class UsersController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def user_params
|
def user_params
|
||||||
params.require(:user).permit(
|
params.require(:user).permit(:email, :password, :password_confirmation, :remember_me, :first_name, :last_name, :phone, :company, :access_revoked, :access_start_date, :access_end_date, roles: [])
|
||||||
:email, :password, :password_confirmation, :remember_me,
|
|
||||||
:first_name, :last_name, :phone, :company,
|
|
||||||
:access_revoked, :access_start_date, :access_end_date,
|
|
||||||
roles: []
|
|
||||||
)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
@ -67,10 +62,9 @@ class UsersController < ApplicationController
|
||||||
|
|
||||||
|
|
||||||
def update_user_roles(user, roles_names)
|
def update_user_roles(user, roles_names)
|
||||||
user.roles.delete_all # Remove existing roles if you want to reset roles on update
|
user.roles.delete_all # Remove existing roles
|
||||||
roles_names = ['user'] if roles_names.blank? # Ensure there's a default role
|
|
||||||
roles_names.each do |role_name|
|
roles_names.each do |role_name|
|
||||||
user.add_role(role_name)
|
user.add_role(role_name) unless role_name.blank?
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,2 @@
|
||||||
module UsersHelper
|
module UsersHelper
|
||||||
def display_user_role(user)
|
|
||||||
user.roles.first&.name&.capitalize || "None"
|
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
|
@ -1,9 +1,4 @@
|
||||||
class User < ApplicationRecord
|
class User < ApplicationRecord
|
||||||
rolify
|
rolify
|
||||||
devise :database_authenticatable, :registerable, :recoverable, :rememberable, :validatable
|
devise :database_authenticatable, :registerable, :recoverable, :rememberable, :validatable
|
||||||
|
|
||||||
def active_for_authentication?
|
|
||||||
super && !access_revoked
|
|
||||||
end
|
|
||||||
|
|
||||||
end
|
end
|
|
@ -7,20 +7,16 @@
|
||||||
<table class="table">
|
<table class="table">
|
||||||
<thead class="table-light">
|
<thead class="table-light">
|
||||||
<tr>
|
<tr>
|
||||||
<th>Name</th>
|
|
||||||
<th>Email</th>
|
<th>Email</th>
|
||||||
<th>Company</th>
|
<th>Admin</th>
|
||||||
<th>Permissions</th>
|
|
||||||
<th>Actions</th>
|
<th>Actions</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<% @users.each do |user| %>
|
<% @users.each do |user| %>
|
||||||
<tr>
|
<tr>
|
||||||
<td><%= user.first_name %> <%= user.last_name %></td>
|
|
||||||
<td><%= user.email %></td>
|
<td><%= user.email %></td>
|
||||||
<td><%= user.company %></td>
|
<td><%= user.has_role?(:admin) ? 'Yes' : 'No' %></td> <!-- Assuming you're using Rolify for role management -->
|
||||||
<td><%= display_user_role(user) %></td>
|
|
||||||
<td>
|
<td>
|
||||||
<%= link_to edit_user_path(user), class: 'btn btn-info btn-sm' do %>
|
<%= link_to edit_user_path(user), class: 'btn btn-info btn-sm' do %>
|
||||||
<i class="bi bi-pencil-fill" style="color: white;"></i>
|
<i class="bi bi-pencil-fill" style="color: white;"></i>
|
||||||
|
|
Loading…
Reference in New Issue