usman 0.1.4 → 0.1.5dev

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/usman/admin/dashboard_controller.rb +1 -1
  3. data/app/controllers/usman/admin/features_controller.rb +2 -0
  4. data/app/controllers/usman/admin/permissions_controller.rb +8 -15
  5. data/app/controllers/usman/admin/roles_controller.rb +3 -2
  6. data/app/controllers/usman/admin/user_roles_controller.rb +142 -0
  7. data/app/controllers/usman/admin/users_controller.rb +3 -1
  8. data/app/helpers/usman/authentication_helper.rb +18 -7
  9. data/app/models/feature.rb +16 -29
  10. data/app/models/permission.rb +3 -8
  11. data/app/models/role.rb +3 -6
  12. data/app/models/user.rb +43 -63
  13. data/app/models/usman/application_record.rb +4 -0
  14. data/app/views/layouts/kuppayam/_sidebar.html.erb +8 -7
  15. data/app/views/usman/admin/features/_form.html.erb +5 -2
  16. data/app/views/usman/admin/features/_index.html.erb +4 -1
  17. data/app/views/usman/admin/features/index.html.erb +20 -3
  18. data/app/views/usman/admin/permissions/_show.html.erb +2 -10
  19. data/app/views/usman/admin/permissions/index.html.erb +20 -3
  20. data/app/views/usman/admin/roles/_form.html.erb +1 -1
  21. data/app/views/usman/admin/roles/_index.html.erb +3 -3
  22. data/app/views/usman/admin/roles/_row.html.erb +2 -2
  23. data/app/views/usman/admin/roles/_show.html.erb +41 -7
  24. data/app/views/usman/admin/roles/index.html.erb +22 -3
  25. data/app/views/usman/admin/user_roles/_form.html.erb +24 -0
  26. data/app/views/usman/admin/user_roles/_index.html.erb +59 -0
  27. data/app/views/usman/admin/user_roles/_row.html.erb +30 -0
  28. data/app/views/usman/admin/user_roles/_show.html.erb +74 -0
  29. data/app/views/usman/admin/users/_index.html.erb +21 -15
  30. data/app/views/usman/admin/users/_row.html.erb +3 -3
  31. data/app/views/usman/admin/users/_show.html.erb +1 -1
  32. data/app/views/usman/admin/users/index.html.erb +3 -1
  33. data/app/views/usman/sessions/_form.html.erb +18 -6
  34. data/config/locales/kuppayam/authentication.en.yml +1 -1
  35. data/config/routes.rb +3 -1
  36. data/db/import_data/dummy/roles.csv +9 -0
  37. data/db/import_data/dummy/users.csv +3 -3
  38. data/db/import_data/roles.csv +5 -0
  39. data/lib/tasks/usman/all.rake +34 -10
  40. data/lib/{tasks/usman → temp}/features.rake +3 -6
  41. data/lib/{tasks/usman → temp}/permissions.rake +3 -5
  42. data/lib/temp/roles.rake +24 -0
  43. data/lib/{tasks/usman → temp}/users.rake +3 -5
  44. data/lib/usman/engine.rb +0 -2
  45. data/lib/usman/version.rb +1 -1
  46. metadata +17 -37
  47. data/app/views/usman/admin/features/_action_buttons.html.erb +0 -0
  48. data/app/views/usman/admin/features/temp/create.js.erb +0 -29
  49. data/app/views/usman/admin/features/temp/destroy.js.erb +0 -16
  50. data/app/views/usman/admin/features/temp/edit.js.erb +0 -7
  51. data/app/views/usman/admin/features/temp/index.js.erb +0 -8
  52. data/app/views/usman/admin/features/temp/new.js.erb +0 -7
  53. data/app/views/usman/admin/features/temp/row.js.erb +0 -10
  54. data/app/views/usman/admin/features/temp/show.js.erb +0 -8
  55. data/app/views/usman/admin/features/temp/update.js.erb +0 -16
  56. data/app/views/usman/admin/permissions/temp/create.js.erb +0 -29
  57. data/app/views/usman/admin/permissions/temp/destroy.js.erb +0 -22
  58. data/app/views/usman/admin/permissions/temp/edit.js.erb +0 -4
  59. data/app/views/usman/admin/permissions/temp/index.js.erb +0 -14
  60. data/app/views/usman/admin/permissions/temp/new.js.erb +0 -4
  61. data/app/views/usman/admin/permissions/temp/row.js.erb +0 -24
  62. data/app/views/usman/admin/permissions/temp/show.js.erb +0 -13
  63. data/app/views/usman/admin/permissions/temp/update.js.erb +0 -29
  64. data/db/import_data/dummy/images/users/guna.neweast.png +0 -0
  65. data/db/import_data/dummy/images/users/junaid.ramzan.jpg +0 -0
  66. data/db/import_data/dummy/images/users/kpvarma.png +0 -0
  67. data/db/import_data/dummy/images/users/stephen.price.png +0 -0
  68. data/db/import_data/dummy/images/users/vinodh.jpg +0 -0
  69. data/db/import_data/features.csv +0 -10
  70. data/db/import_data/images/users/junaid.ramzan.jpg +0 -0
  71. data/db/import_data/images/users/kpvarma.png +0 -0
  72. data/db/import_data/images/users/vinodh.jpg +0 -0
  73. data/db/import_data/permissions.csv +0 -30
  74. data/lib/usman/extras/import_error_handler.rb +0 -79
@@ -9,8 +9,11 @@
9
9
  </div>
10
10
 
11
11
  <div>
12
- <%= link_to raw("<i class='fa fa-close mr-5'></i><span>Cancel</span>"), "#", onclick: "closeGenericModal();", class: "pull-left btn btn-white" %>
13
- <%= submit_tag("Save", :class=>"btn btn-secondary pull-right") %>
12
+
13
+ <%= submit_tag("Save", :class=>"btn btn-primary pull-right ml-10") %>
14
+
15
+ <%= link_to raw("<i class='fa fa-close mr-5'></i><span>Cancel</span>"), "#", onclick: "closeGenericModal();", class: "pull-right ml-10 btn btn-white" %>
16
+
14
17
  </div>
15
18
  <%= clear_tag(10) %>
16
19
  </div>
@@ -2,7 +2,8 @@
2
2
  <table class="table table-hover members-table middle-align">
3
3
  <thead>
4
4
  <tr>
5
- <th style="text-align: center;width:30px">#</th>
5
+ <th style="text-align: center;width:60px">#</th>
6
+ <th style="text-align: center;width:100px"><i class="fa fa-photo"></i></th>
6
7
  <th>Name</th>
7
8
  <th style="width:100px;">Status</th>
8
9
  <th style="text-align: center;" colspan="2">Actions</th>
@@ -16,6 +17,8 @@
16
17
 
17
18
  <tr id="tr_feature_<%= feature.id %>">
18
19
 
20
+ <td class="feature-image"></td>
21
+
19
22
  <td class="feature-image">
20
23
  <%= link_to(admin_feature_path(feature), remote: true) do %>
21
24
  <%= display_image(feature, "feature_image.image.small.url", width: "32", height: "auto", class: "img-rectangle", alt: feature.display_name) %>
@@ -9,10 +9,27 @@
9
9
 
10
10
  <div id="div_feature_action_buttons">
11
11
  <div class="row">
12
- <div class="col-md-4">
13
- <%= link_to raw("<i class='fa fa-plus mr-10'></i><span class='btn-text'> New Feature</span>"), new_admin_feature_path, :class=>"btn btn-primary pull-left mb-5", :remote=>true %>
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-8">
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
- <% status_hash = {published: "success", unpublished: "default", disabled: "danger"} %>
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.name %></h1>
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-4">
13
- <%= link_to raw("<i class='fa fa-plus mr-10'></i><span class='btn-text'> New Permission</span>"), new_admin_permission_path, :class=>"btn btn-primary pull-left mb-5", :remote=>true %>
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-8">
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: "closeGenericModal();", class: "pull-right ml-10 btn btn-white" %>
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:20px">#</th>
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
- <li class="active">
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
- <div class="tab-pane active" id="technical_details">
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: "closeGenericModal();", class: "btn btn-primary pull-right" %>
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-4">
13
- <%= link_to raw("<i class='fa fa-plus mr-10'></i><span class='btn-text'> New Role</span>"), new_admin_role_path, :class=>"btn btn-primary pull-left mb-5", :remote=>true %>
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-8">
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,30 @@
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"><%= user.roles.collect(&:name) %></td>
23
+
24
+ <td class="action-links" style="width:10%">
25
+
26
+ <%= 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" %>
27
+
28
+ </td>
29
+
30
+ </tr>
@@ -0,0 +1,74 @@
1
+ <div id="div_user_show">
2
+
3
+ <div class="row">
4
+
5
+ <div class="col-md-9 col-sm-12 col-xs-12" style="border-right:1px solid #f1f1f1;">
6
+
7
+ <div class="visible-sm visible-xs mt-50"></div>
8
+
9
+ <%= theme_panel_heading(@user.display_name) %>
10
+ <%= theme_panel_sub_heading(@user.code, "#") %>
11
+ <%= theme_panel_description(@user.role.name) if @user.role %>
12
+
13
+ <%= clear_tag(10) %>
14
+
15
+ <div class="visible-sm visible-xs mb-50"></div>
16
+
17
+ </div>
18
+
19
+ <div class="col-md-3 col-sm-12 col-xs-12">
20
+
21
+ <% edit_link = edit_admin_role_user_path(@user.role, @user) %>
22
+ <% delete_link = admin_role_user_path(@user.role, @user) %>
23
+
24
+ <%= link_to raw("<i class=\"linecons-pencil\"></i> Edit"), edit_link, :remote=>true, class: "btn btn-block btn-success" if @user.can_be_edited? %>
25
+
26
+ <%= link_to raw("<i class=\"linecons-trash\"></i> Delete"), delete_link, method: :delete, user: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "btn btn-block btn-danger btn-only-hover" if @user.can_be_deleted? %>
27
+
28
+ <div class="visible-sm visible-xs mb-50"></div>
29
+
30
+ </div>
31
+
32
+ </div>
33
+
34
+ <%= clear_tag(50) %>
35
+
36
+ <ul class="nav nav-pills">
37
+ <li class="active">
38
+ <a href="#technical_details" data-toggle="tab" aria-expanded="false">
39
+ <span class="visible-xs"><i class="fa-database"></i></span>
40
+ <span class="hidden-xs">Technical Details</span>
41
+ </a>
42
+ </li>
43
+ </ul>
44
+
45
+ <div class="tab-content">
46
+ <div class="tab-pane active" id="technical_details">
47
+
48
+ <%= clear_tag(20) %>
49
+
50
+ <div class="table-responsive">
51
+ <table class="table table-striped table-condensed table-bordered mb-30">
52
+ <tbody>
53
+
54
+ <tr>
55
+ <th>ID</th><td colspan="3"><%= @user.id %></td>
56
+ </tr>
57
+
58
+ <tr>
59
+ <th>Created At</th><td><%= @user.created_at.strftime("%m/%d/%Y - %H:%M:%S") if @user.created_at %></td>
60
+ <th>Updated At</th><td><%= @user.updated_at.strftime("%m/%d/%Y - %H:%M:%S") if @user.updated_at %></td>
61
+ </tr>
62
+
63
+ </tbody>
64
+ </table>
65
+
66
+ </div>
67
+
68
+ </div>
69
+ </div>
70
+
71
+ <%= link_to "Close", "#", onclick: "closeGenericModal();", class: "btn btn-primary pull-right" %>
72
+
73
+ <%= clear_tag %>
74
+ </div>
@@ -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:10px">#</th>
6
- <th style="text-align: center;width:30px">Image</th>
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
- <% if @current_user.is_super_admin? %>
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>
@@ -47,13 +45,21 @@
47
45
  <td class="hidden-xs hidden-sm"><%= link_to user.email, admin_user_path(user), remote: true, class: "email" %></td>
48
46
 
49
47
  <% if @current_user.is_super_admin? %>
50
- <td class="hidden-xs hidden-sm">
51
- <% if user.super_admin %>
52
- <span class="mr-10 mt-5 label label-warning">Super Admin</span>
53
- <% else %>
54
- <span class="mr-10 mt-5 label label-default">Normal</span>
55
- <% end %>
56
- </td>
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
 
@@ -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) %>
@@ -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 fade-in-effect" do %>
1
+ <%= form_tag usman.create_session_path, :role=>"form", id: "form_sign_in", class: "login-form" do %>
2
2
 
3
- <%= hidden_field_tag :customer_app, params[:customer_app] if params[:customer_app] %>
4
-
5
- <%= hidden_field_tag :redirect_back_url, params[:redirect_back_url] if params[:redirect_back_url] %>
6
-
7
- <%= hidden_field_tag :requested_url, params[:requested_url] if params[:requested_url] %>
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">
@@ -21,5 +21,5 @@ en:
21
21
  logged_out:
22
22
  heading: "Signed Out"
23
23
  message: "You have successfully signed out"
24
- masquerade: "لقد سجلت الدخول بنجاح - %{user}"
24
+ masquerade: "You have successfully logged in as - %{user}"
25
25
  sign_in_back: "You have successfully signed in back as %{user}"
data/config/routes.rb CHANGED
@@ -24,7 +24,9 @@ Usman::Engine.routes.draw do
24
24
  end
25
25
  end
26
26
 
27
- resources :roles
27
+ resources :roles do
28
+ resources :users, :controller => "user_roles"
29
+ end
28
30
 
29
31
  resources :features do
30
32
  member do