usman 0.1.5 → 0.1.6dev2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +48 -16
- data/app/controllers/usman/admin/base_controller.rb +22 -0
- data/app/controllers/usman/admin/dashboard_controller.rb +1 -1
- data/app/controllers/usman/admin/features_controller.rb +4 -1
- data/app/controllers/usman/admin/permissions_controller.rb +9 -15
- data/app/controllers/usman/admin/resource_controller.rb +3 -1
- data/app/controllers/usman/admin/roles_controller.rb +4 -2
- data/app/controllers/usman/admin/user_roles_controller.rb +142 -0
- data/app/controllers/usman/admin/users_controller.rb +5 -2
- data/app/controllers/usman/application_controller.rb +0 -4
- data/app/controllers/usman/sessions_controller.rb +5 -2
- data/app/helpers/usman/authentication_helper.rb +35 -25
- data/app/models/feature.rb +50 -46
- data/app/models/image/feature_image.rb +1 -1
- data/app/models/image/profile_picture.rb +1 -1
- data/app/models/permission.rb +3 -8
- data/app/models/role.rb +4 -7
- data/app/models/user.rb +81 -103
- data/app/models/usman/application_record.rb +3 -0
- data/app/services/usman/authentication_service.rb +4 -3
- data/app/uploaders/profile_picture_uploader.rb +2 -1
- data/app/views/layouts/kuppayam/_header.html.erb +1 -1
- data/app/views/layouts/kuppayam/_navbar.html.erb +1 -1
- data/app/views/layouts/kuppayam/_sidebar.html.erb +8 -7
- data/app/views/usman/admin/dashboard/index.html.erb +0 -1
- data/app/views/usman/admin/features/_form.html.erb +5 -2
- data/app/views/usman/admin/features/_index.html.erb +4 -1
- data/app/views/usman/admin/features/index.html.erb +20 -3
- data/app/views/usman/admin/permissions/_show.html.erb +2 -10
- data/app/views/usman/admin/permissions/index.html.erb +20 -3
- data/app/views/usman/admin/roles/_form.html.erb +1 -1
- data/app/views/usman/admin/roles/_index.html.erb +3 -3
- data/app/views/usman/admin/roles/_row.html.erb +2 -2
- data/app/views/usman/admin/roles/_show.html.erb +41 -7
- data/app/views/usman/admin/roles/index.html.erb +22 -3
- data/app/views/usman/admin/user_roles/_form.html.erb +24 -0
- data/app/views/usman/admin/user_roles/_index.html.erb +59 -0
- data/app/views/usman/admin/user_roles/_row.html.erb +34 -0
- data/app/views/usman/admin/users/_index.html.erb +22 -16
- data/app/views/usman/admin/users/_row.html.erb +4 -4
- data/app/views/usman/admin/users/_show.html.erb +1 -1
- data/app/views/usman/admin/users/index.html.erb +4 -2
- data/app/views/usman/sessions/_form.html.erb +19 -7
- data/app/views/usman/sessions/sign_in.html.erb +1 -1
- data/config/initializers/overide_kuppayam_controllers.rb +74 -0
- data/config/locales/kuppayam/authentication.en.yml +4 -1
- data/config/routes.rb +3 -1
- data/db/import_data/dummy/features.csv +7 -0
- data/db/import_data/dummy/permissions.csv +18 -1
- data/db/import_data/dummy/roles.csv +5 -0
- data/db/import_data/dummy/users.csv +7 -3
- data/db/import_data/features.csv +7 -0
- data/db/import_data/permissions.csv +1 -30
- data/db/import_data/roles.csv +5 -0
- data/db/migrate/20170000000100_create_users.rb +1 -1
- data/db/migrate/20170000000101_create_features.rb +1 -1
- data/db/migrate/20170000000102_create_roles.rb +1 -1
- data/db/migrate/20170728095744_create_otp_registrations.rb +17 -0
- data/lib/tasks/usman/all.rake +34 -10
- data/lib/{tasks/usman → temp}/features.rake +3 -6
- data/lib/{tasks/usman → temp}/permissions.rake +3 -5
- data/lib/temp/roles.rake +24 -0
- data/lib/{tasks/usman → temp}/users.rake +3 -5
- data/lib/usman/engine.rb +2 -3
- data/lib/usman/version.rb +1 -1
- metadata +27 -45
- data/app/views/usman/admin/features/_action_buttons.html.erb +0 -0
- data/app/views/usman/admin/features/temp/create.js.erb +0 -29
- data/app/views/usman/admin/features/temp/destroy.js.erb +0 -16
- data/app/views/usman/admin/features/temp/edit.js.erb +0 -7
- data/app/views/usman/admin/features/temp/index.js.erb +0 -8
- data/app/views/usman/admin/features/temp/new.js.erb +0 -7
- data/app/views/usman/admin/features/temp/row.js.erb +0 -10
- data/app/views/usman/admin/features/temp/show.js.erb +0 -8
- data/app/views/usman/admin/features/temp/update.js.erb +0 -16
- data/app/views/usman/admin/permissions/temp/create.js.erb +0 -29
- data/app/views/usman/admin/permissions/temp/destroy.js.erb +0 -22
- data/app/views/usman/admin/permissions/temp/edit.js.erb +0 -4
- data/app/views/usman/admin/permissions/temp/index.js.erb +0 -14
- data/app/views/usman/admin/permissions/temp/new.js.erb +0 -4
- data/app/views/usman/admin/permissions/temp/row.js.erb +0 -24
- data/app/views/usman/admin/permissions/temp/show.js.erb +0 -13
- data/app/views/usman/admin/permissions/temp/update.js.erb +0 -29
- data/db/import_data/dummy/images/users/guna.neweast.png +0 -0
- data/db/import_data/dummy/images/users/junaid.ramzan.jpg +0 -0
- data/db/import_data/dummy/images/users/kpvarma.png +0 -0
- data/db/import_data/dummy/images/users/stephen.price.png +0 -0
- data/db/import_data/dummy/images/users/vinodh.jpg +0 -0
- data/db/import_data/images/users/junaid.ramzan.jpg +0 -0
- data/db/import_data/images/users/kpvarma.png +0 -0
- data/db/import_data/images/users/vinodh.jpg +0 -0
- data/lib/usman/extras/import_error_handler.rb +0 -79
@@ -9,10 +9,27 @@
|
|
9
9
|
|
10
10
|
<div id="div_feature_action_buttons">
|
11
11
|
<div class="row">
|
12
|
-
<div class="col-md-
|
13
|
-
|
12
|
+
<div class="col-md-6">
|
13
|
+
|
14
|
+
<%= theme_button('Add a Feature', 'plus', new_admin_feature_path(), classes: "pull-left", btn_type: "success") %>
|
15
|
+
|
16
|
+
<%= theme_button('Refresh', 'refresh', admin_features_path(), classes: "pull-left ml-10", btn_type: "white") %>
|
17
|
+
|
18
|
+
<!-- Single button -->
|
19
|
+
<div class="ml-10 btn-group hidden">
|
20
|
+
<button type="button" class="btn btn-white dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
21
|
+
More Actions <span class="caret"></span>
|
22
|
+
</button>
|
23
|
+
<ul class="dropdown-menu">
|
24
|
+
<li><a href="#">Import Users</a></li>
|
25
|
+
<li><a href="#">Import History</a></li>
|
26
|
+
<li role="separator" class="divider"></li>
|
27
|
+
<li><a href="#">Export Users</a></li>
|
28
|
+
</ul>
|
29
|
+
</div>
|
30
|
+
|
14
31
|
</div>
|
15
|
-
<div class="col-md-
|
32
|
+
<div class="col-md-6">
|
16
33
|
<%= search_form_kuppayam(Feature, admin_features_path, text: @filters[:query]) %>
|
17
34
|
</div>
|
18
35
|
</div>
|
@@ -1,17 +1,9 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
<div class="media <%= status_hash[@permission.status.to_sym] %>">
|
4
|
-
|
5
|
-
<div class="pull-left pt-10 pr-10 pb-10" style="width:30%;">
|
6
|
-
<%= edit_image(@permission, "permission_image.image.large.url", upload_image_link(@permission, :permission_image)) %>
|
7
|
-
</div>
|
1
|
+
<div class="media">
|
8
2
|
|
9
3
|
<div class="pull-left ml-10" style="width:65%;">
|
10
4
|
|
11
|
-
<h1><%= @permission.
|
5
|
+
<h1><%= @permission.id %></h1>
|
12
6
|
|
13
|
-
<span class="ml-5 mt-5 label label-<%= status_hash[@permission.status.to_sym] %>"><%= @permission.status.titleize %></span>
|
14
|
-
|
15
7
|
<%= clear_tag %>
|
16
8
|
</div>
|
17
9
|
|
@@ -9,10 +9,27 @@
|
|
9
9
|
|
10
10
|
<div id="div_permission_action_buttons">
|
11
11
|
<div class="row">
|
12
|
-
<div class="col-md-
|
13
|
-
|
12
|
+
<div class="col-md-6">
|
13
|
+
|
14
|
+
<%= theme_button('Add a Permission', 'plus', new_admin_permission_path(), classes: "pull-left", btn_type: "success") %>
|
15
|
+
|
16
|
+
<%= theme_button('Refresh', 'refresh', admin_permissions_path(), classes: "pull-left ml-10", btn_type: "white") %>
|
17
|
+
|
18
|
+
<!-- Single button -->
|
19
|
+
<div class="ml-10 btn-group hidden">
|
20
|
+
<button type="button" class="btn btn-white dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
21
|
+
More Actions <span class="caret"></span>
|
22
|
+
</button>
|
23
|
+
<ul class="dropdown-menu">
|
24
|
+
<li><a href="#">Import Users</a></li>
|
25
|
+
<li><a href="#">Import History</a></li>
|
26
|
+
<li role="separator" class="divider"></li>
|
27
|
+
<li><a href="#">Export Users</a></li>
|
28
|
+
</ul>
|
29
|
+
</div>
|
30
|
+
|
14
31
|
</div>
|
15
|
-
<div class="col-md-
|
32
|
+
<div class="col-md-6">
|
16
33
|
<%= search_form_kuppayam(Permission, admin_permissions_path, text: @filters[:query]) %>
|
17
34
|
</div>
|
18
35
|
</div>
|
@@ -12,7 +12,7 @@
|
|
12
12
|
|
13
13
|
<%= submit_tag("Save", :class=>"btn btn-primary pull-right ml-10") %>
|
14
14
|
|
15
|
-
<%= link_to raw("<i class='fa fa-close mr-5'></i><span>Cancel</span>"), "#", onclick: "
|
15
|
+
<%= link_to raw("<i class='fa fa-close mr-5'></i><span>Cancel</span>"), "#", onclick: "closeLargeModal();", class: "pull-right ml-10 btn btn-white" %>
|
16
16
|
|
17
17
|
</div>
|
18
18
|
<%= clear_tag(10) %>
|
@@ -2,7 +2,7 @@
|
|
2
2
|
<table class="table table-hover members-table middle-align">
|
3
3
|
<thead>
|
4
4
|
<tr>
|
5
|
-
<th style="text-align: center;width:
|
5
|
+
<th style="text-align: center;width:60px">#</th>
|
6
6
|
<th>Name</th>
|
7
7
|
<th style="text-align: center;">Actions</th>
|
8
8
|
</tr>
|
@@ -28,9 +28,9 @@
|
|
28
28
|
|
29
29
|
<td class="action-links" style="width:10%">
|
30
30
|
|
31
|
-
<%= link_to raw("<i class=\"linecons-pencil\"></i> Edit Role"), edit_link, :remote=>true, class: "edit" %>
|
31
|
+
<%= link_to raw("<i class=\"linecons-pencil\"></i> Edit Role"), edit_link, :remote=>true, class: "edit" if @current_user.super_admin? and role.can_be_edited? %>
|
32
32
|
|
33
|
-
<%= link_to raw("<i class=\"linecons-trash\"></i> Delete"), delete_link, method: :delete, role: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" %>
|
33
|
+
<%= link_to raw("<i class=\"linecons-trash\"></i> Delete"), delete_link, method: :delete, role: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" if @current_user.super_admin? and role.can_be_deleted? %>
|
34
34
|
|
35
35
|
</td>
|
36
36
|
|
@@ -15,9 +15,9 @@
|
|
15
15
|
|
16
16
|
<td class="action-links" style="width:10%">
|
17
17
|
|
18
|
-
<%= link_to raw("<i class=\"linecons-pencil\"></i> Edit Role"), edit_link, :remote=>true, class: "edit" %>
|
18
|
+
<%= link_to raw("<i class=\"linecons-pencil\"></i> Edit Role"), edit_link, :remote=>true, class: "edit" if @current_user.super_admin? and role.can_be_edited? %>
|
19
19
|
|
20
|
-
<%= link_to raw("<i class=\"linecons-trash\"></i> Delete"), delete_link, method: :delete, role: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" %>
|
20
|
+
<%= link_to raw("<i class=\"linecons-trash\"></i> Delete"), delete_link, method: :delete, role: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" if @current_user.super_admin? and role.can_be_deleted? %>
|
21
21
|
|
22
22
|
</td>
|
23
23
|
|
@@ -1,3 +1,5 @@
|
|
1
|
+
<% @users = @role.users.page(@current_page).per(@per_page) %>
|
2
|
+
|
1
3
|
<div id="div_role_show">
|
2
4
|
|
3
5
|
<div class="row">
|
@@ -19,9 +21,9 @@
|
|
19
21
|
<% edit_link = edit_admin_role_path(id: @role.id) %>
|
20
22
|
<% delete_link = admin_role_path(id: @role.id) %>
|
21
23
|
|
22
|
-
<%= link_to raw("<i class=\"linecons-pencil\"></i> Edit Role"), edit_link, :remote=>true, class: "btn btn-block btn-success" if @role.can_be_edited? %>
|
24
|
+
<%= link_to raw("<i class=\"linecons-pencil\"></i> Edit Role"), edit_link, :remote=>true, class: "btn btn-block btn-success" if @current_user.super_admin? and @role.can_be_edited? %>
|
23
25
|
|
24
|
-
<%= link_to raw("<i class=\"linecons-trash\"></i> Delete Role"), delete_link, method: :delete, role: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "btn btn-block btn-danger btn-only-hover" if @role.can_be_deleted? %>
|
26
|
+
<%= link_to raw("<i class=\"linecons-trash\"></i> Delete Role"), delete_link, method: :delete, role: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "btn btn-block btn-danger btn-only-hover" if @current_user.super_admin? and @role.can_be_deleted? %>
|
25
27
|
|
26
28
|
<div class="visible-sm visible-xs mb-50"></div>
|
27
29
|
|
@@ -32,7 +34,15 @@
|
|
32
34
|
<%= clear_tag(50) %>
|
33
35
|
|
34
36
|
<ul class="nav nav-pills">
|
35
|
-
|
37
|
+
|
38
|
+
<li class="active">
|
39
|
+
<a href="#user_roles" data-toggle="tab" aria-expanded="false">
|
40
|
+
<span class="visible-xs"><i class="fa-database"></i></span>
|
41
|
+
<span class="hidden-xs">Users</span>
|
42
|
+
</a>
|
43
|
+
</li>
|
44
|
+
|
45
|
+
<li class="">
|
36
46
|
<a href="#technical_details" data-toggle="tab" aria-expanded="false">
|
37
47
|
<span class="visible-xs"><i class="fa-database"></i></span>
|
38
48
|
<span class="hidden-xs">Technical Details</span>
|
@@ -41,7 +51,32 @@
|
|
41
51
|
</ul>
|
42
52
|
|
43
53
|
<div class="tab-content">
|
44
|
-
|
54
|
+
|
55
|
+
<div class="tab-pane active" id="user_roles" style="border: 1px solid #000;min-height:200px;padding:20px;margin-bottom:20px;max-height: 400px;overflow-y: auto;">
|
56
|
+
|
57
|
+
<%= clear_tag(20) %>
|
58
|
+
|
59
|
+
<div id="div_user_action_buttons">
|
60
|
+
<div class="row">
|
61
|
+
<div class="col-md-6">
|
62
|
+
|
63
|
+
<%= theme_button('Add a User', 'plus', new_admin_role_user_path(@role), classes: "pull-left", btn_type: "success") %>
|
64
|
+
|
65
|
+
<%= theme_button('Refresh', 'refresh', admin_role_users_path(@role), classes: "pull-left ml-10", btn_type: "white") %>
|
66
|
+
</div>
|
67
|
+
<div class="col-md-6">
|
68
|
+
<%= search_form_kuppayam(User, admin_role_users_path(@role), text: "") %>
|
69
|
+
</div>
|
70
|
+
</div>
|
71
|
+
</div>
|
72
|
+
<%= clear_tag(10) %>
|
73
|
+
|
74
|
+
<div id="div_user_index">
|
75
|
+
<%= render :partial=>"usman/admin/user_roles/index" %>
|
76
|
+
</div>
|
77
|
+
</div>
|
78
|
+
|
79
|
+
<div class="tab-pane" id="technical_details">
|
45
80
|
|
46
81
|
<%= clear_tag(20) %>
|
47
82
|
|
@@ -60,13 +95,12 @@
|
|
60
95
|
|
61
96
|
</tbody>
|
62
97
|
</table>
|
63
|
-
|
64
98
|
</div>
|
65
|
-
|
66
99
|
</div>
|
100
|
+
|
67
101
|
</div>
|
68
102
|
|
69
|
-
<%= link_to "Close", "#", onclick: "
|
103
|
+
<%= link_to "Close", "#", onclick: "closeLargeModal();", class: "btn btn-primary pull-right" %>
|
70
104
|
|
71
105
|
<%= clear_tag %>
|
72
106
|
</div>
|
@@ -9,10 +9,29 @@
|
|
9
9
|
|
10
10
|
<div id="div_role_action_buttons">
|
11
11
|
<div class="row">
|
12
|
-
<div class="col-md-
|
13
|
-
|
12
|
+
<div class="col-md-6">
|
13
|
+
|
14
|
+
<%= theme_button('Add a Role', 'plus', new_admin_role_path(), classes: "pull-left", btn_type: "success") if @current_user.super_admin? %>
|
15
|
+
|
16
|
+
<%= theme_button('Refresh', 'refresh', admin_roles_path(), classes: "pull-left ml-10", btn_type: "white") %>
|
17
|
+
|
18
|
+
<%= theme_button('Manage Users', 'nothing linecons-graduation-cap', admin_users_path(), classes: "pull-left ml-10", btn_type: "white", remote: false) %>
|
19
|
+
|
20
|
+
<!-- Single button -->
|
21
|
+
<div class="ml-10 btn-group hidden">
|
22
|
+
<button type="button" class="btn btn-white dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
23
|
+
More Actions <span class="caret"></span>
|
24
|
+
</button>
|
25
|
+
<ul class="dropdown-menu">
|
26
|
+
<li><a href="#">Import Users</a></li>
|
27
|
+
<li><a href="#">Import History</a></li>
|
28
|
+
<li role="separator" class="divider"></li>
|
29
|
+
<li><a href="#">Export Users</a></li>
|
30
|
+
</ul>
|
31
|
+
</div>
|
32
|
+
|
14
33
|
</div>
|
15
|
-
<div class="col-md-
|
34
|
+
<div class="col-md-6">
|
16
35
|
<%= search_form_kuppayam(Role, admin_roles_path, text: @filters[:query]) %>
|
17
36
|
</div>
|
18
37
|
</div>
|
@@ -0,0 +1,24 @@
|
|
1
|
+
<%= form_for([:admin, @role, @user], :html => {:id=>"form_user", :class=>"mb-0 form-horizontal", :user => "form", :method => (@user.new_record? ? :post : :put), :remote=>true}) do |f| %>
|
2
|
+
|
3
|
+
<div id="user_form_error">
|
4
|
+
<%= @user.errors[:base].to_sentence %>
|
5
|
+
</div>
|
6
|
+
|
7
|
+
<div class="form-inputs mb-30 mt-30">
|
8
|
+
<% options = {assoc_collection: User.approved.normal_users.select("id, name").order("name ASC").all, required: false, editable: true, assoc_display_method: :name} %>
|
9
|
+
<%= theme_form_assoc_group(@user, :id, label: "Select User", **options) %>
|
10
|
+
</div>
|
11
|
+
|
12
|
+
<div>
|
13
|
+
|
14
|
+
<%= submit_tag("Save", :class=>"btn btn-primary pull-right ml-10") %>
|
15
|
+
|
16
|
+
<%= link_to raw("<i class='fa fa-close mr-5'></i><span>Cancel</span>"), "#", onclick: "closeGenericModal();", class: "pull-right ml-10 btn btn-white" %>
|
17
|
+
|
18
|
+
</div>
|
19
|
+
<%= clear_tag(10) %>
|
20
|
+
|
21
|
+
</div>
|
22
|
+
|
23
|
+
<% end %>
|
24
|
+
|
@@ -0,0 +1,59 @@
|
|
1
|
+
<div class="table-responsive">
|
2
|
+
<table class="table table-hover members-table middle-align">
|
3
|
+
<thead>
|
4
|
+
<tr>
|
5
|
+
<th style="text-align: center;width:60px">#</th>
|
6
|
+
<th style="text-align: center;width:100px"><i class="fa fa-photo"></i></th>
|
7
|
+
<th>Name</th>
|
8
|
+
<th>Roles</th>
|
9
|
+
<th style="text-align: center;" colspan="2">Actions</th>
|
10
|
+
</tr>
|
11
|
+
</thead>
|
12
|
+
|
13
|
+
<tbody>
|
14
|
+
<% @users.each_with_index do |user, i| %>
|
15
|
+
|
16
|
+
<% delete_link = admin_role_user_path(@role, user) %>
|
17
|
+
|
18
|
+
<tr id="tr_user_<%= user.id %>">
|
19
|
+
|
20
|
+
<th scope="row" style="text-align: center;">
|
21
|
+
<% if i < 0 %>
|
22
|
+
<i class="fa fa-check text-success"></i>
|
23
|
+
<% else %>
|
24
|
+
<%= i + 1 + (@per_page.to_i * (@current_page.to_i - 1)) %>
|
25
|
+
<% end %>
|
26
|
+
</th>
|
27
|
+
|
28
|
+
<td class="user-image">
|
29
|
+
<%= link_to(admin_user_path(user), remote: true) do %>
|
30
|
+
<%= display_image(user, "profile_picture.image.small.url", width: "120", height: "auto", class: "img-rectangle", alt: user.display_name) %>
|
31
|
+
<% end %>
|
32
|
+
</td>
|
33
|
+
|
34
|
+
<td class="user-name"><%= user.display_name %></td>
|
35
|
+
|
36
|
+
<td class="user-name">
|
37
|
+
<% user.roles.collect(&:name).each do |r| %>
|
38
|
+
<span class="ml-5 label label-primary"><%= r %></span>
|
39
|
+
<% end %>
|
40
|
+
</td>
|
41
|
+
|
42
|
+
<td class="action-links" style="width:10%">
|
43
|
+
|
44
|
+
<%= link_to raw("<i class=\"linecons-trash\"></i> Remove Role"), delete_link, method: :delete, user: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" %>
|
45
|
+
|
46
|
+
</td>
|
47
|
+
|
48
|
+
</tr>
|
49
|
+
<% end %>
|
50
|
+
</tbody>
|
51
|
+
</table>
|
52
|
+
</div>
|
53
|
+
|
54
|
+
<div class="row">
|
55
|
+
<div class="col-sm-12">
|
56
|
+
<%= paginate_kuppayam(@users) %>
|
57
|
+
</div>
|
58
|
+
</div>
|
59
|
+
|
@@ -0,0 +1,34 @@
|
|
1
|
+
<% edit_link = edit_admin_role_user_path(@role, user) %>
|
2
|
+
<% delete_link = admin_role_user_path(@role, user) %>
|
3
|
+
|
4
|
+
<tr id="tr_user_<%= user.id %>">
|
5
|
+
|
6
|
+
<th scope="row" style="text-align: center;">
|
7
|
+
<% if i < 0 %>
|
8
|
+
<i class="fa fa-check text-success"></i>
|
9
|
+
<% else %>
|
10
|
+
<%= i + 1 + (@per_page.to_i * (@current_page.to_i - 1)) %>
|
11
|
+
<% end %>
|
12
|
+
</th>
|
13
|
+
|
14
|
+
<td class="user-image">
|
15
|
+
<%= link_to(admin_user_path(user), remote: true) do %>
|
16
|
+
<%= display_image(user, "profile_picture.image.small.url", width: "120", height: "auto", class: "img-rectangle", alt: user.display_name) %>
|
17
|
+
<% end %>
|
18
|
+
</td>
|
19
|
+
|
20
|
+
<td class="user-name"><%= user.display_name %></td>
|
21
|
+
|
22
|
+
<td class="user-name">
|
23
|
+
<% user.roles.collect(&:name).each do |r| %>
|
24
|
+
<span class="ml-5 label label-primary"><%= r %></span>
|
25
|
+
<% end %>
|
26
|
+
</td>
|
27
|
+
|
28
|
+
<td class="action-links" style="width:10%">
|
29
|
+
|
30
|
+
<%= link_to raw("<i class=\"linecons-trash\"></i> Remove Role"), delete_link, method: :delete, user: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" %>
|
31
|
+
|
32
|
+
</td>
|
33
|
+
|
34
|
+
</tr>
|
@@ -2,14 +2,12 @@
|
|
2
2
|
<table class="table table-hover members-table middle-align">
|
3
3
|
<thead>
|
4
4
|
<tr>
|
5
|
-
<th style="text-align: center;width:
|
6
|
-
<th style="text-align: center;width:
|
5
|
+
<th style="text-align: center;width:60px">#</th>
|
6
|
+
<th style="text-align: center;width:100px"><i class="fa fa-photo"></i></th>
|
7
7
|
<th>Name</th>
|
8
8
|
<th class="hidden-xs hidden-sm">Username</th>
|
9
9
|
<th class="hidden-xs hidden-sm">Email</th>
|
10
|
-
|
11
|
-
<th class="hidden-xs hidden-sm">Role</th>
|
12
|
-
<% end %>
|
10
|
+
<th class="hidden-xs hidden-sm">Roles</th>
|
13
11
|
<th>Status</th>
|
14
12
|
<th style="text-align: center;" colspan="2">Actions</th>
|
15
13
|
</tr>
|
@@ -46,14 +44,22 @@
|
|
46
44
|
|
47
45
|
<td class="hidden-xs hidden-sm"><%= link_to user.email, admin_user_path(user), remote: true, class: "email" %></td>
|
48
46
|
|
49
|
-
<% if @current_user.
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
47
|
+
<% if @current_user.super_admin? %>
|
48
|
+
<td class="hidden-xs hidden-sm">
|
49
|
+
<% if user.super_admin? %>
|
50
|
+
<span class="mr-10 mt-5 label label-warning">Super Admin</span>
|
51
|
+
<% else %>
|
52
|
+
<% user.roles.collect(&:name).each do |r| %>
|
53
|
+
<span class="ml-5 label label-primary"><%= r %></span>
|
54
|
+
<% end %>
|
55
|
+
<% end %>
|
56
|
+
</td>
|
57
|
+
<% else %>
|
58
|
+
<td class="user-name">
|
59
|
+
<% user.roles.collect(&:name).each do |r| %>
|
60
|
+
<span class="ml-5 label label-primary"><%= r %></span>
|
61
|
+
<% end %>
|
62
|
+
</td>
|
57
63
|
<% end %>
|
58
64
|
|
59
65
|
<td>
|
@@ -77,13 +83,13 @@
|
|
77
83
|
<td class="action-links" style="width:15%">
|
78
84
|
|
79
85
|
<!-- Approve -->
|
80
|
-
<%= link_to raw("<i class=\"fa fa-circle-o mr-5\"></i> Approve"), update_status_admin_user_path(:id =>user.id, :status =>'approved'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1" if user.can_be_approved? %>
|
86
|
+
<%= link_to raw("<i class=\"fa fa-circle-o mr-5\"></i> Approve"), update_status_admin_user_path(:id =>user.id, :status =>'approved'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1" if user.can_be_approved? && (@current_user != user) %>
|
81
87
|
|
82
88
|
<!-- Mark as Pending -->
|
83
|
-
<%= link_to raw("<i class=\"fa fa-circle mr-5\"></i> Mark as Pending"), update_status_admin_user_path(:id =>user.id, :status =>'pending'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1" if user.can_be_marked_as_pending? %>
|
89
|
+
<%= link_to raw("<i class=\"fa fa-circle mr-5\"></i> Mark as Pending"), update_status_admin_user_path(:id =>user.id, :status =>'pending'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1" if user.can_be_marked_as_pending? && (@current_user != user) %>
|
84
90
|
|
85
91
|
<!-- Suspend -->
|
86
|
-
<%= link_to raw("<i class=\"fa fa-edit mr-5\"></i> Suspend"), update_status_admin_user_path(:id =>user.id, :status =>'suspended'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1" if user.can_be_suspended? %>
|
92
|
+
<%= link_to raw("<i class=\"fa fa-edit mr-5\"></i> Suspend"), update_status_admin_user_path(:id =>user.id, :status =>'suspended'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1" if user.can_be_suspended? && (@current_user != user) %>
|
87
93
|
|
88
94
|
</td>
|
89
95
|
|
@@ -27,7 +27,7 @@
|
|
27
27
|
|
28
28
|
<td class="hidden-xs hidden-sm"><%= link_to user.email, admin_user_path(user), remote: true, class: "email" %></td>
|
29
29
|
|
30
|
-
<% if @current_user.
|
30
|
+
<% if @current_user.super_admin? %>
|
31
31
|
<td class="hidden-xs hidden-sm">
|
32
32
|
<% if user.super_admin %>
|
33
33
|
<span class="mr-10 mt-5 label label-warning">Super Admin</span>
|
@@ -58,13 +58,13 @@
|
|
58
58
|
<td class="action-links" style="width:15%">
|
59
59
|
|
60
60
|
<!-- Approve -->
|
61
|
-
<%= link_to raw("<i class=\"fa fa-circle-o mr-5\"></i> Approve"), update_status_admin_user_path(:id =>user.id, :status =>'approved'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1" if user.can_be_approved? %>
|
61
|
+
<%= link_to raw("<i class=\"fa fa-circle-o mr-5\"></i> Approve"), update_status_admin_user_path(:id =>user.id, :status =>'approved'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1" if user.can_be_approved? && (@current_user != user) %>
|
62
62
|
|
63
63
|
<!-- Mark as Pending -->
|
64
|
-
<%= link_to raw("<i class=\"fa fa-circle mr-5\"></i> Mark as Pending"), update_status_admin_user_path(:id =>user.id, :status =>'pending'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1" if user.can_be_marked_as_pending? %>
|
64
|
+
<%= link_to raw("<i class=\"fa fa-circle mr-5\"></i> Mark as Pending"), update_status_admin_user_path(:id =>user.id, :status =>'pending'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1" if user.can_be_marked_as_pending? && (@current_user != user) %>
|
65
65
|
|
66
66
|
<!-- Suspend -->
|
67
|
-
<%= link_to raw("<i class=\"fa fa-edit mr-5\"></i> Suspend"), update_status_admin_user_path(:id =>user.id, :status =>'suspended'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1" if user.can_be_suspended? %>
|
67
|
+
<%= link_to raw("<i class=\"fa fa-edit mr-5\"></i> Suspend"), update_status_admin_user_path(:id =>user.id, :status =>'suspended'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1" if user.can_be_suspended? && (@current_user != user) %>
|
68
68
|
|
69
69
|
</td>
|
70
70
|
|
@@ -61,7 +61,7 @@
|
|
61
61
|
<% end %>
|
62
62
|
|
63
63
|
<!-- Approve -->
|
64
|
-
<%= link_to raw("<i class=\"fa fa-circle-o mr-5\"></i> Approve"), update_status_admin_user_path(:id =>@user.id, :status =>'approved'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1", :class=>"btn btn-block btn-success btn-only-hover" if @user.can_be_approved? %>
|
64
|
+
<%= link_to raw("<i class=\"fa fa-circle-o mr-5\"></i> Approve"), update_status_admin_user_path(:id =>@user.id, :status =>'approved'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1", :class=>"btn btn-block btn-success btn-only-hover" if @user.can_be_approved? && (@current_user != @user) %>
|
65
65
|
|
66
66
|
<!-- Mark as Pending -->
|
67
67
|
<%= link_to raw("<i class=\"fa fa-circle mr-5\"></i> Mark as Pending"), update_status_admin_user_path(:id =>@user.id, :status =>'pending'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1", :class=>"btn btn-block btn-gray btn-only-hover" if @user.can_be_marked_as_pending? && (@current_user != @user) %>
|
@@ -4,7 +4,7 @@
|
|
4
4
|
<ul class="nav nav-tabs">
|
5
5
|
|
6
6
|
<%# Show Admin tab only for admins %>
|
7
|
-
<% if @current_user.
|
7
|
+
<% if @current_user.super_admin? %>
|
8
8
|
<li class="<%= @super_admin == false ? 'active' : '' %>">
|
9
9
|
<%= link_to "Users", admin_users_path(sa: '0') %>
|
10
10
|
</li>
|
@@ -30,8 +30,10 @@
|
|
30
30
|
|
31
31
|
<%= theme_button('Refresh', 'refresh', admin_users_path(), classes: "pull-left ml-10", btn_type: "white") %>
|
32
32
|
|
33
|
+
<%= theme_button('Manage Roles', 'nothing linecons-graduation-cap', admin_roles_path(), classes: "pull-left ml-10", btn_type: "white", remote: false) %>
|
34
|
+
|
33
35
|
<!-- Single button -->
|
34
|
-
<div class="ml-10 btn-group">
|
36
|
+
<div class="ml-10 btn-group hidden">
|
35
37
|
<button type="button" class="btn btn-white dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
36
38
|
More Actions <span class="caret"></span>
|
37
39
|
</button>
|
@@ -1,10 +1,22 @@
|
|
1
|
-
<%= form_tag create_session_path, :role=>"form", id: "form_sign_in", class: "login-form" do %>
|
1
|
+
<%= form_tag usman.create_session_path, :role=>"form", id: "form_sign_in", class: "login-form" do %>
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
3
|
+
<% if params[:customer_app] %>
|
4
|
+
<%= hidden_field_tag :customer_app, params[:customer_app] %>
|
5
|
+
<% elsif @params_hsh && @params_hsh[:customer_app] %>
|
6
|
+
<%= hidden_field_tag :customer_app, @params_hsh[:customer_app] %>
|
7
|
+
<% end %>
|
8
|
+
|
9
|
+
<% if params[:redirect_back_url] %>
|
10
|
+
<%= hidden_field_tag :redirect_back_url, params[:redirect_back_url] %>
|
11
|
+
<% elsif @params_hsh && @params_hsh[:redirect_back_url] %>
|
12
|
+
<%= hidden_field_tag :redirect_back_url, @params_hsh[:redirect_back_url] %>
|
13
|
+
<% end %>
|
14
|
+
|
15
|
+
<% if params[:requested_url] %>
|
16
|
+
<%= hidden_field_tag :requested_url, params[:requested_url] %>
|
17
|
+
<% elsif @params_hsh && @params_hsh[:requested_url] %>
|
18
|
+
<%= hidden_field_tag :requested_url, @params_hsh[:requested_url] %>
|
19
|
+
<% end %>
|
8
20
|
|
9
21
|
<div class="row pt-10">
|
10
22
|
<div class="col-sm-offset-3 col-sm-4">
|
@@ -13,7 +25,7 @@
|
|
13
25
|
</div>
|
14
26
|
|
15
27
|
<div class="login-header text-center">
|
16
|
-
<p>
|
28
|
+
<p>Login</p>
|
17
29
|
</div>
|
18
30
|
|
19
31
|
<div class="form-group">
|
@@ -0,0 +1,74 @@
|
|
1
|
+
Kuppayam::ImagesController.class_eval do
|
2
|
+
|
3
|
+
include Usman::AuthenticationHelper
|
4
|
+
|
5
|
+
layout 'kuppayam/admin'
|
6
|
+
|
7
|
+
before_action :current_user
|
8
|
+
before_action :require_user
|
9
|
+
before_action :require_site_admin
|
10
|
+
|
11
|
+
def set_default_title
|
12
|
+
set_title("Manage Images | Admin")
|
13
|
+
end
|
14
|
+
|
15
|
+
def require_site_admin
|
16
|
+
return true if @current_user && @current_user.super_admin?
|
17
|
+
unless @current_user.has_role?("Site Admin")
|
18
|
+
text = "#{I18n.t("authentication.permission_denied.heading")}: #{I18n.t("authentication.permission_denied.message")}"
|
19
|
+
set_flash_message(text, :error, false) if defined?(flash) && flash
|
20
|
+
redirect_to default_redirect_url_after_sign_in
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
|
26
|
+
Kuppayam::ImportDataController.class_eval do
|
27
|
+
|
28
|
+
include Usman::AuthenticationHelper
|
29
|
+
|
30
|
+
layout 'kuppayam/admin'
|
31
|
+
|
32
|
+
before_action :current_user
|
33
|
+
before_action :require_user
|
34
|
+
before_action :require_site_admin
|
35
|
+
|
36
|
+
def set_default_title
|
37
|
+
set_title("Manage Images | Admin")
|
38
|
+
end
|
39
|
+
|
40
|
+
def require_site_admin
|
41
|
+
return true if @current_user && @current_user.super_admin?
|
42
|
+
unless @current_user.has_role?("Site Admin")
|
43
|
+
text = "#{I18n.t("authentication.permission_denied.heading")}: #{I18n.t("authentication.permission_denied.message")}"
|
44
|
+
set_flash_message(text, :error, false) if defined?(flash) && flash
|
45
|
+
redirect_to default_redirect_url_after_sign_in
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
end
|
50
|
+
|
51
|
+
Kuppayam::DocumentsController.class_eval do
|
52
|
+
|
53
|
+
include Usman::AuthenticationHelper
|
54
|
+
|
55
|
+
layout 'kuppayam/admin'
|
56
|
+
|
57
|
+
before_action :current_user
|
58
|
+
before_action :require_user
|
59
|
+
before_action :require_site_admin
|
60
|
+
|
61
|
+
def set_default_title
|
62
|
+
set_title("Manage Images | Admin")
|
63
|
+
end
|
64
|
+
|
65
|
+
def require_site_admin
|
66
|
+
return true if @current_user && @current_user.super_admin?
|
67
|
+
unless @current_user.has_role?("Site Admin")
|
68
|
+
text = "#{I18n.t("authentication.permission_denied.heading")}: #{I18n.t("authentication.permission_denied.message")}"
|
69
|
+
set_flash_message(text, :error, false) if defined?(flash) && flash
|
70
|
+
redirect_to default_redirect_url_after_sign_in
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
end
|
@@ -1,5 +1,8 @@
|
|
1
1
|
en:
|
2
2
|
authentication:
|
3
|
+
login_required:
|
4
|
+
heading: "Login Required / Session Expired"
|
5
|
+
message: "You need to login to perform this action."
|
3
6
|
permission_denied:
|
4
7
|
heading: "Permission Denied"
|
5
8
|
message: "You don't have permission to perform this action"
|
@@ -21,5 +24,5 @@ en:
|
|
21
24
|
logged_out:
|
22
25
|
heading: "Signed Out"
|
23
26
|
message: "You have successfully signed out"
|
24
|
-
masquerade: "
|
27
|
+
masquerade: "You have successfully logged in as - %{user}"
|
25
28
|
sign_in_back: "You have successfully signed in back as %{user}"
|