-
Notifications
You must be signed in to change notification settings - Fork 979
/
index.html.erb
69 lines (66 loc) · 3.37 KB
/
index.html.erb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
<% if @role
breadcrumbs do
[
{caption: _("Roles"), url: (url_for(roles_path) if authorized_for(hash_for_roles_path))},
{caption: _("%s filters") % @role.to_s}
]
end
else
title _("Filters")
end %>
<% title_actions new_link_unless_locked(_("Create Filter"), { :controller => :filters, :role_id => @role }, @role),
documentation_button('4.1.2RolesandPermissions') %>
<table class="<%= table_css_classes 'table-fixed' %>" <%= "data-table='inline'".html_safe if params[:paginate] == 'client' %> >
<thead>
<tr>
<% unless params[:role_id] %>
<th><%= sort :role, :as => _("Role"), :permitted => [:role_id] %></th>
<% end %>
<th><%= sort :resource, :as => s_("Filter|Resource"), :permitted => [:role_id] %></th>
<th><%= s_("Filter|Permissions") %></th>
<th><%= sort :search, :as => s_("Filter|Unlimited"), :permitted => [:role_id] %></th>
<th><%= sort :search, :as => s_("Filter|Override"), :permitted => [:role_id] %></th>
<th><%= sort :search, :as => s_("Filter|Search"), :permitted => [:role_id] %></th>
<% if @role && !@role.locked? %>
<th><%= _('Actions') %></th>
<% end %>
</tr>
</thead>
<tbody>
<% @filters.each do |filter| %>
<tr>
<% unless params[:role_id] %>
<td>
<%= content_tag('span', link_to_if_authorized(filter.role.name, hash_for_roles_path(:search => "name = #{filter.role.name}").
merge(:auth_object => filter.role, :authorizer => @roles_authorizer))) %>
</td>
<% end %>
<td>
<%= _(filter.resource_class.try(:humanize_class_name) || filter.resource_type || '(Miscellaneous)') %>
</td>
<td><%= filter.permissions.map(&:name).join(', ') %></td>
<td><%= checked_icon filter.unlimited? %></td>
<td><%= checked_icon filter.override? %></td>
<td>
<%= content_tag('span', link_to_unless_locked(filter.search || _('N/A'), @role,
hash_for_edit_filter_path(:id => filter, :role_id => @role).
merge(:auth_object => filter, :authorizer => authorizer))) %>
</td>
<% if @role && !@role.locked? %>
<td>
<% buttons = [] %>
<% buttons.push display_link_if_authorized(_("Edit"), hash_for_edit_filter_path(:id => filter, :role_id => @role).
merge(:auth_object => filter, :authorizer => authorizer)) %>
<% buttons.push display_link_if_authorized(_("Disable overriding"), hash_for_disable_overriding_filter_path(:id => filter, :role_id => @role).
merge(:auth_object => filter, :authorizer => authorizer), :method => :patch) if filter.override? && Taxonomy.enabled_taxonomies.any? %>
<% buttons.push display_delete_if_authorized(hash_for_filter_path(:id => filter, :role_id => @role).
merge(:auth_object => filter, :authorizer => authorizer),
:data => { :confirm => (_("Delete filter?")) } ) %>
<%= action_buttons(buttons) %>
</td>
<% end %>
</tr>
<% end %>
</tbody>
</table>
<%= will_paginate_with_info(@filters) unless params[:paginate] == 'client' %>