Refactor users.html to only make one db call to get roles (GRN2-121) (#513)

* Refactor _users.html to only make one db call to get role

* Apply comments
This commit is contained in:
shawn-higgins1 2019-05-09 18:24:58 -04:00 committed by Jesus Federico
parent 75bde6a42d
commit 55afbe99f5
1 changed files with 8 additions and 7 deletions

View File

@ -68,15 +68,16 @@
<td><%= user.email && user.email != "" ? user.email : user.username%></td>
<td><%= user.provider %></td>
<td class="text-center">
<% if user.has_role? :denied %>
<% roles = user.roles().pluck(:name) %>
<% if roles.include?("denied")%>
<div class="user-role btn btn-sm btn-gray-dark">
<%= t("roles.banned") %>
</div>
<% elsif user.has_role? :super_admin %>
<% elsif roles.include?("super_admin") %>
<div class="user-role btn btn-sm btn-red">
<%= t("roles.super_admin") %>
</div>
<% elsif user.has_role? :admin %>
<% elsif roles.include?("admin") %>
<div class="user-role btn btn-sm btn-yellow">
<%= t("roles.administrator") %>
</div>
@ -87,13 +88,13 @@
<% end %>
</td>
<td>
<% unless user.has_role? :super_admin %>
<% unless roles.include?("super_admin") %>
<div class="item-action dropdown">
<a href="javascript:void(0)" data-toggle="dropdown" class="icon">
<i class="fas fa-ellipsis-v px-4"></i>
</a>
<div class="dropdown-menu dropdown-menu">
<% if user.has_role? :denied %>
<% if roles.include?("denied") %>
<%= button_to admin_unban_path(user_uid: user.uid), class: "dropdown-item" do %>
<i class="dropdown-icon fas fa-lock-open"></i> <%= t("administrator.users.settings.unban") %>
<% end %>
@ -105,11 +106,11 @@
<i class="dropdown-icon fas fa-user-minus"></i> <%= t("administrator.users.settings.delete") %>
</button>
<% if user.has_role? :admin %>
<% if roles.include?("admin") %>
<%= button_to admin_demote_path(user_uid: user.uid), class: "dropdown-item" do %>
<i class="dropdown-icon fas fa-level-down-alt"></i> <%= t("administrator.users.settings.demote") %>
<% end %>
<% elsif user.has_role? :user %>
<% elsif roles.include?("user") %>
<%= button_to admin_promote_path(user_uid: user.uid), class: "dropdown-item" do %>
<i class="dropdown-icon fas fa-level-up-alt"></i> <%= t("administrator.users.settings.promote") %>
<% end %>