usman 0.3.38 → 0.4.0.pre.materialize

Sign up to get free protection for your applications and to get access to all the features.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/usman/application_controller.rb +9 -1
  3. data/app/controllers/usman/registrations_controller.rb +2 -2
  4. data/app/controllers/usman/sessions_controller.rb +3 -3
  5. data/app/controllers/usman/user_roles_controller.rb +1 -1
  6. data/app/controllers/usman/users_controller.rb +1 -1
  7. data/app/helpers/usman/authentication_helper.rb +16 -3
  8. data/app/models/user.rb +76 -2
  9. data/app/views/layouts/kuppayam/_sidebar.html.erb +6 -6
  10. data/app/views/usman/dashboard/_index.html.erb +1 -1
  11. data/app/views/usman/dashboard/_super_admin_index.html.erb +1 -1
  12. data/app/views/usman/permissions/_index.html.erb +2 -2
  13. data/app/views/usman/permissions/_row.html.erb +2 -2
  14. data/app/views/usman/registration_devices/_index.html.erb +1 -1
  15. data/app/views/usman/registration_devices/_row.html.erb +1 -1
  16. data/app/views/usman/registrations/_index.html.erb +2 -2
  17. data/app/views/usman/registrations/_row.html.erb +2 -2
  18. data/app/views/usman/registrations/_show.html.erb +3 -3
  19. data/app/views/usman/roles/_index.html.erb +2 -2
  20. data/app/views/usman/roles/_row.html.erb +2 -2
  21. data/app/views/usman/roles/_show.html.erb +2 -2
  22. data/app/views/usman/user_roles/_index.html.erb +1 -1
  23. data/app/views/usman/user_roles/_row.html.erb +1 -1
  24. data/app/views/usman/users/_form.html.erb +1 -1
  25. data/app/views/usman/users/_index.html.erb +2 -2
  26. data/app/views/usman/users/_row.html.erb +2 -2
  27. data/app/views/usman/users/_show.html.erb +8 -5
  28. data/app/views/usman/users/index.html.erb +1 -1
  29. data/db/data/dummy/users.csv +1 -1
  30. data/db/data/users.csv +1 -1
  31. data/db/migrate/20170000000100_create_users.rb +2 -1
  32. data/lib/tasks/usman/data.rake +36 -2
  33. data/lib/usman/version.rb +1 -1
  34. data/spec/dummy/spec/factories/user.rb +3 -1
  35. metadata +4 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a4ee3168d52a0a6676df6a80532cd3ba8fa6c7d76c330237575599f7566b7be4
4
- data.tar.gz: 0a9ed3c330e9274996e86b8037714a72e389e98284aad608b90d00a65af92478
3
+ metadata.gz: 249944b38740618e19948df32b3b5efb35c4d3c5bc40df91cd17f06804fc6b90
4
+ data.tar.gz: 9f14a4c2d4903e35072317db1bf5a687f217ac39a645b22a01dcfd700fb7cce3
5
5
  SHA512:
6
- metadata.gz: 28037f6c77fb6eeaae467ae000732a1dffebca9ee49fbbddd202d5cbe9712d47bd03fa93daba81ef887ffd63f53c0afb2639f4425909caea09f2a658f48fb908
7
- data.tar.gz: c5fc360c18c4c210bde3972418c6d9064c418e8d05b0c1b0759c2af884fd336791a1b2f6619f849e8067253f9c3d35ff5fe90d2b2e5daa4d08f4d43ab466672c
6
+ metadata.gz: ed66807d187066a743ec189bc900ebb3861275e1e7bdcb0849ebd997f4e6f61aae77b4200cbcedd061daa0ef8ca51b8aab243789108f341423c2fb1402ba10ef
7
+ data.tar.gz: d2a1487af1403b6212739e49a9baf9b771582fdd4e7f3214de4784808f89499ad18ad26ff4e57b3f24170571284eee58d785e99732219c30a9dbcbaa2abd37b0
@@ -3,7 +3,7 @@ module Usman
3
3
 
4
4
  include Usman::AuthenticationHelper
5
5
 
6
- layout 'kuppayam/admin'
6
+ layout 'kuppayam/xenon/admin'
7
7
 
8
8
  before_action :current_user
9
9
  before_action :require_user
@@ -12,6 +12,14 @@ module Usman
12
12
 
13
13
  private
14
14
 
15
+ def stylesheet_filename
16
+ @stylesheet_filename = "kuppayam-xenon"
17
+ end
18
+
19
+ def javascript_filename
20
+ @javascript_filename = "kuppayam-xenon"
21
+ end
22
+
15
23
  def set_default_title
16
24
  set_title("Usman Admin | User Management Module")
17
25
  end
@@ -63,10 +63,10 @@ module Usman
63
63
  def breadcrumbs_configuration
64
64
  {
65
65
  heading: "Manage Registrations",
66
- icon: "linecons-mobile",
66
+ icon: "fa-mobile",
67
67
  description: "Listing all Registrations",
68
68
  links: [{name: "Home", link: breadcrumb_home_path, icon: 'fa-home'},
69
- {name: "Manage Registrations", link: registrations_path, icon: 'linecons-mobile', active: true}]
69
+ {name: "Manage Registrations", link: registrations_path, icon: 'fa-mobile', active: true}]
70
70
  }
71
71
  end
72
72
 
@@ -3,7 +3,7 @@ module Usman
3
3
 
4
4
  include Usman::AuthenticationHelper
5
5
 
6
- layout 'kuppayam/blank'
6
+ layout 'kuppayam/xenon/blank'
7
7
 
8
8
  rescue_from ActionController::InvalidAuthenticityToken, :with => :rescue_from_invalid_authenticity_token
9
9
 
@@ -90,11 +90,11 @@ module Usman
90
90
  end
91
91
 
92
92
  def stylesheet_filename
93
- @stylesheet_filename = "kuppayam"
93
+ @stylesheet_filename = "kuppayam-xenon"
94
94
  end
95
95
 
96
96
  def javascript_filename
97
- @javascript_filename = "kuppayam"
97
+ @javascript_filename = "kuppayam-xenon"
98
98
  end
99
99
 
100
100
  end
@@ -113,7 +113,7 @@ module Usman
113
113
  collection_name: :users,
114
114
  item_name: :user,
115
115
  class: User,
116
- feature_class: Role,
116
+ feature_name: Role,
117
117
  show_modal_after_create: false,
118
118
  show_modal_after_update: false,
119
119
  page_title: "Manage User Roles",
@@ -136,7 +136,7 @@ module Usman
136
136
  end
137
137
 
138
138
  def permitted_params
139
- params.require(:user).permit(:name, :username, :email, :designation, :phone, :password, :password_confirmation)
139
+ params.require(:user).permit(:name, :username, :email, :designation_name, :phone, :password, :password_confirmation)
140
140
  end
141
141
 
142
142
  def set_navs
@@ -15,7 +15,7 @@ module Usman
15
15
  end
16
16
 
17
17
  def permission_denied
18
- render :file => "layouts/kuppayam/401", layout: 'layouts/kuppayam/blank_with_nav', :status => :unauthorized
18
+ render :file => "layouts/kuppayam/xenon/401", layout: 'layouts/kuppayam/xenon/blank_with_nav', :status => :unauthorized
19
19
  end
20
20
 
21
21
  # Returns the default URL to which the system should redirect the user after successful authentication
@@ -116,6 +116,19 @@ module Usman
116
116
  end
117
117
  end
118
118
 
119
+ def require_role
120
+ return true if @current_user && @current_user.super_admin?
121
+ unless @current_user && @current_user.roles.any?
122
+ respond_to do |format|
123
+ format.html { permission_denied }
124
+ format.js {
125
+ set_params_hsh
126
+ render(:partial => 'usman/sessions/sign_in.js.erb', :handlers => [:erb], :formats => [:js])
127
+ }
128
+ end
129
+ end
130
+ end
131
+
119
132
  def require_site_admin
120
133
  return true if @current_user && @current_user.super_admin?
121
134
  unless @current_user && @current_user.has_role?("Site Admin")
@@ -186,8 +199,8 @@ module Usman
186
199
  end
187
200
 
188
201
  def current_permission
189
- feature_class = @resource_options[:feature_class] || @resource_options[:class]
190
- @current_feature = Feature.published.find_by_name(feature_class)
202
+ feature_name = @resource_options[:feature_name] || @resource_options[:class]
203
+ @current_feature = Feature.published.find_by_name(feature_name)
191
204
  feature_id = @current_feature ? @current_feature.id : -1
192
205
  @current_permission = @current_user.permissions.where("feature_id = ?", feature_id).first
193
206
  end
data/app/models/user.rb CHANGED
@@ -95,7 +95,9 @@ class User < Usman::ApplicationRecord
95
95
  scope :search, lambda {|query| where("LOWER(users.name) LIKE LOWER('%#{query}%') OR\
96
96
  LOWER(users.username) LIKE LOWER('%#{query}%') OR\
97
97
  LOWER(users.email) LIKE LOWER('%#{query}%') OR\
98
- LOWER(users.designation) LIKE LOWER('%#{query}%')")
98
+ LOWER(users.phone) LIKE LOWER('%#{query}%') OR\
99
+ LOWER(users.designation_name) LIKE LOWER('%#{query}%') OR\
100
+ LOWER(users.organisation_name) LIKE LOWER('%#{query}%')")
99
101
  }
100
102
 
101
103
  scope :status, lambda { |status| where("LOWER(status)='#{status}'") }
@@ -121,7 +123,8 @@ class User < Usman::ApplicationRecord
121
123
  user = User.find_by_username(hsh[:username]) || User.new
122
124
  user.name = hsh[:name]
123
125
  user.username = hsh[:username]
124
- user.designation = hsh[:designation]
126
+ user.designation_name = hsh[:designation_name]
127
+ user.organisation_name = hsh[:organisation_name]
125
128
  user.email = hsh[:email]
126
129
  user.phone = hsh[:phone]
127
130
 
@@ -150,6 +153,77 @@ class User < Usman::ApplicationRecord
150
153
  return error_object
151
154
  end
152
155
 
156
+ def self.save_role_data(hsh)
157
+
158
+ # Initializing error hash for displaying all errors altogether
159
+ error_object = Kuppayam::Importer::ErrorHash.new
160
+
161
+ return if hsh[:user].blank? || hsh[:role].blank?
162
+
163
+ user = User.find_by_username(hsh[:user])
164
+ role = Role.find_by_name(hsh[:role])
165
+
166
+ return if user.blank? || role.blank?
167
+
168
+ begin
169
+ user.add_role(role)
170
+ rescue Exception => e
171
+ summary = "uncaught #{e} exception while handling connection: #{e.message}"
172
+ details = "Stack trace: #{e.backtrace.map {|l| " #{l}\n"}.join}"
173
+ error_object.errors << { summary: summary, details: details }
174
+ end
175
+
176
+ return error_object
177
+ end
178
+
179
+ def self.import_roles_data_file(csv_path, single_transaction=true, verbose=true)
180
+ print_memory_usage do
181
+ print_time_spent do
182
+ if File.exists?(csv_path)
183
+ if File.extname(csv_path) == ".csv"
184
+ puts "CSV file found at '#{csv_path.to_s}'.".green if verbose
185
+
186
+ errors = []
187
+ sum = 0
188
+
189
+ # , encoding: 'windows-1251:utf-8', :row_sep => :auto
190
+ if single_transaction
191
+ ActiveRecord::Base.transaction do
192
+ CSV.foreach(csv_path, headers: true, header_converters: :symbol, skip_blanks: true) do |row|
193
+ error_object = save_role_data(row)
194
+ errors << error_object if error_object
195
+ error_object.print_dot if error_object && verbose
196
+ sum += 1
197
+ end
198
+ end
199
+ else
200
+ CSV.foreach(csv_path, headers: true, header_converters: :symbol, skip_blanks: true) do |row|
201
+ error_object = save_role_data(row)
202
+ errors << error_object if error_object
203
+ error_object.print_dot if error_object && verbose
204
+ sum += 1
205
+ end
206
+ end
207
+ puts "\tScanned #{sum} rows".yellow
208
+
209
+ if verbose
210
+ puts ""
211
+ errors.each do |error_object|
212
+ error_object.print_all if error_object
213
+ end
214
+ end
215
+
216
+ else
217
+ puts "Unsupported File encountered'#{path.to_s}'.".red if verbose
218
+ return
219
+ end
220
+ else
221
+ puts "Import File not found at '#{path.to_s}'.".red if verbose
222
+ end
223
+ end
224
+ end
225
+ end
226
+
153
227
  # ------------------
154
228
  # Instance Methods
155
229
  # ------------------
@@ -14,7 +14,7 @@
14
14
  },
15
15
  roles: {
16
16
  text: "Manage Roles",
17
- icon_class: "linecons-graduation-cap",
17
+ icon_class: "fa-graduation-cap",
18
18
  url: usman.roles_url,
19
19
  has_permission: @current_user.has_read_permission?(Role)
20
20
  },
@@ -30,7 +30,7 @@
30
30
  configuration_items = {
31
31
  features: {
32
32
  text: "Manage Features",
33
- icon_class: "linecons-diamond",
33
+ icon_class: "fa-diamond",
34
34
  url: usman.features_url,
35
35
  has_permission: @current_user.has_read_permission?(Feature)
36
36
  }
@@ -93,11 +93,11 @@
93
93
  <!-- Admin Dashboard -->
94
94
  <% if @current_user.super_admin? || @current_user.has_role?("Site Admin") %>
95
95
  <li class="<%= nav_active?('admin/dashboard') ? 'active' : '' %>">
96
- <%= link_to raw("<i class=\"linecons-desktop\"></i> <span class='title'>Dashboard</span>"), usman.dashboard_path %>
96
+ <%= link_to raw("<i class=\"fa-desktop\"></i> <span class='title'>Dashboard</span>"), usman.dashboard_path %>
97
97
  </li>
98
98
  <% else %>
99
99
  <li class="<%= nav_active?('profile/dashboard') ? 'active' : '' %>">
100
- <%= link_to raw("<i class=\"linecons-desktop\"></i> <span class='title'>Dashboard</span>"), usman.my_account_url %>
100
+ <%= link_to raw("<i class=\"fa-desktop\"></i> <span class='title'>Dashboard</span>"), usman.my_account_url %>
101
101
  </li>
102
102
  <% end %>
103
103
 
@@ -147,10 +147,10 @@
147
147
  </li>
148
148
 
149
149
  <li class="<%= nav_active?('profile/profile') ? 'active' : '' %>">
150
- <a href="#"><i class="linecons-user"></i><span class="title">My Account</span></a>
150
+ <a href="#"><i class="fa-user"></i><span class="title">My Account</span></a>
151
151
  <ul>
152
152
  <li class="<%= nav_class("profile/settings") %>">
153
- <%= link_to raw("<i class=\"linecons-cog\"></i> <span class='title'>User Settings</span>"), "#" %>
153
+ <%= link_to raw("<i class=\"fa-cog\"></i> <span class='title'>User Settings</span>"), "#" %>
154
154
  </li>
155
155
  </ul>
156
156
  </li>
@@ -14,7 +14,7 @@
14
14
  },
15
15
  roles: {
16
16
  text: "Roles",
17
- icon_class: "linecons-graduation-cap",
17
+ icon_class: "fa-graduation-cap",
18
18
  url: usman.roles_url,
19
19
  has_permission: @current_user.has_read_permission?(Role)
20
20
  },
@@ -2,7 +2,7 @@
2
2
  super_admin_items = {
3
3
  features: {
4
4
  text: "Features",
5
- icon_class: "linecons-diamond",
5
+ icon_class: "fa-diamond",
6
6
  url: usman.features_url,
7
7
  has_permission: @current_user.has_read_permission?(Feature)
8
8
  }
@@ -36,9 +36,9 @@
36
36
  <% if display_manage_links? %>
37
37
  <td class="action-links1" style="width:10%;text-align: center;">
38
38
 
39
- <%= link_to raw("<i class=\"linecons-pencil\"></i>"), edit_link, :remote=>true, class: "edit" if display_edit_links? %>
39
+ <%= link_to raw("<i class=\"fa-pencil\"></i>"), edit_link, :remote=>true, class: "edit" if display_edit_links? %>
40
40
 
41
- <%= link_to raw("<i class=\"linecons-trash\"></i>"), delete_link, method: :delete, role: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" if display_delete_links? %>
41
+ <%= link_to raw("<i class=\"fa-trash\"></i>"), delete_link, method: :delete, role: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" if display_delete_links? %>
42
42
 
43
43
  </td>
44
44
  <% end %>
@@ -18,9 +18,9 @@
18
18
  <% if display_manage_links? %>
19
19
  <td class="action-links1" style="width:10%;text-align: center;">
20
20
 
21
- <%= link_to raw("<i class=\"linecons-pencil\"></i>"), edit_link, :remote=>true, class: "edit" if display_edit_links? %>
21
+ <%= link_to raw("<i class=\"fa-pencil\"></i>"), edit_link, :remote=>true, class: "edit" if display_edit_links? %>
22
22
 
23
- <%= link_to raw("<i class=\"linecons-trash\"></i>"), delete_link, method: :delete, role: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" if display_delete_links? %>
23
+ <%= link_to raw("<i class=\"fa-trash\"></i>"), delete_link, method: :delete, role: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" if display_delete_links? %>
24
24
 
25
25
  </td>
26
26
  <% end %>
@@ -44,7 +44,7 @@
44
44
  <% delete_link = registration_device_path(@registration, device) %>
45
45
  <td class="action-links" style="width:10%">
46
46
 
47
- <%= link_to raw("<i class=\"linecons-trash\"></i> Remove Role"), delete_link, method: :delete, device: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" %>
47
+ <%= link_to raw("<i class=\"fa-trash\"></i> Remove Role"), delete_link, method: :delete, device: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" %>
48
48
 
49
49
  </td>
50
50
  <% end %>
@@ -26,7 +26,7 @@
26
26
  <% delete_link = registration_device_path(@registration, device) %>
27
27
  <td class="action-links" style="width:10%"> -->
28
28
 
29
- <%= link_to raw("<i class=\"linecons-trash\"></i> Remove Role"), delete_link, method: :delete, device: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" %>
29
+ <%= link_to raw("<i class=\"fa-trash\"></i> Remove Role"), delete_link, method: :delete, device: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" %>
30
30
 
31
31
  </td>
32
32
  <% end %>
@@ -63,9 +63,9 @@
63
63
  <% delete_link = registration_path(id: registration.id) %>
64
64
 
65
65
  <td class="action-links" style="width:10%">
66
- <%#= link_to raw("<i class=\"linecons-pencil\"></i> Edit Registration"), edit_link, :remote=>true, class: "edit" if registration.can_be_edited? and display_edit_links? %>
66
+ <%#= link_to raw("<i class=\"fa-pencil\"></i> Edit Registration"), edit_link, :remote=>true, class: "edit" if registration.can_be_edited? and display_edit_links? %>
67
67
 
68
- <%= link_to raw("<i class=\"linecons-trash\"></i> Delete"), delete_link, method: :delete, registration: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" if registration.can_be_deleted? and display_delete_links? %>
68
+ <%= link_to raw("<i class=\"fa-trash\"></i> Delete"), delete_link, method: :delete, registration: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" if registration.can_be_deleted? and display_delete_links? %>
69
69
  </td>
70
70
  <% end %>
71
71
 
@@ -45,9 +45,9 @@
45
45
  <% delete_link = registration_path(id: registration.id) %>
46
46
 
47
47
  <td class="action-links" style="width:10%">
48
- <%#= link_to raw("<i class=\"linecons-pencil\"></i> Edit Registration"), edit_link, :remote=>true, class: "edit" if registration.can_be_edited? and display_edit_links? %>
48
+ <%#= link_to raw("<i class=\"fa-pencil\"></i> Edit Registration"), edit_link, :remote=>true, class: "edit" if registration.can_be_edited? and display_edit_links? %>
49
49
 
50
- <%= link_to raw("<i class=\"linecons-trash\"></i> Delete"), delete_link, method: :delete, registration: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" if registration.can_be_deleted? and display_delete_links? %>
50
+ <%= link_to raw("<i class=\"fa-trash\"></i> Delete"), delete_link, method: :delete, registration: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" if registration.can_be_deleted? and display_delete_links? %>
51
51
  </td>
52
52
  <% end %>
53
53
 
@@ -55,9 +55,9 @@
55
55
  <%# edit_link = edit_registration_path(id: @registration.id) %>
56
56
  <%# delete_link = registration_path(id: @registration.id) %>
57
57
 
58
- <%#= link_to raw("<i class=\"linecons-pencil\"></i> Edit Registration"), edit_link, :remote=>true, class: "btn btn-block btn-success" if @current_device.super_admin? and @registration.can_be_edited? %>
58
+ <%#= link_to raw("<i class=\"fa-pencil\"></i> Edit Registration"), edit_link, :remote=>true, class: "btn btn-block btn-success" if @current_device.super_admin? and @registration.can_be_edited? %>
59
59
 
60
- <%#= link_to raw("<i class=\"linecons-trash\"></i> Delete Registration"), delete_link, method: :delete, registration: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "btn btn-block btn-danger btn-only-hover" if @current_device.super_admin? and @registration.can_be_deleted? %>
60
+ <%#= link_to raw("<i class=\"fa-trash\"></i> Delete Registration"), delete_link, method: :delete, registration: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "btn btn-block btn-danger btn-only-hover" if @current_device.super_admin? and @registration.can_be_deleted? %>
61
61
 
62
62
  <div class="visible-sm visible-xs mb-50"></div>
63
63
 
@@ -165,7 +165,7 @@
165
165
  </tr>
166
166
 
167
167
  <tr>
168
- <th>Designation</th><td><%= @user.try(:designation) %></td>
168
+ <th>Designation</th><td><%= @user.try(:designation_name) %></td>
169
169
  <th>Status</th><td>
170
170
  <% if @user.pending? %>
171
171
  <span class="label label-default">Pending</span>
@@ -31,9 +31,9 @@
31
31
  <% if display_manage_links? %>
32
32
 
33
33
  <td class="action-links hidden-xs hidden-sm" style="width:10%">
34
- <%= link_to raw("<i class=\"linecons-pencil\"></i> Edit Role"), edit_link, :remote=>true, class: "edit" if role.can_be_edited? and display_edit_links? %>
34
+ <%= link_to raw("<i class=\"fa-pencil\"></i> Edit Role"), edit_link, :remote=>true, class: "edit" if role.can_be_edited? and display_edit_links? %>
35
35
 
36
- <%= 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 role.can_be_deleted? and display_delete_links? %>
36
+ <%= link_to raw("<i class=\"fa-trash\"></i> Delete"), delete_link, method: :delete, role: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" if role.can_be_deleted? and display_delete_links? %>
37
37
  </td>
38
38
 
39
39
  <% end %>
@@ -16,9 +16,9 @@
16
16
  <% if display_manage_links? %>
17
17
 
18
18
  <td class="action-links hidden-xs hidden-sm" style="width:10%">
19
- <%= link_to raw("<i class=\"linecons-pencil\"></i> Edit Role"), edit_link, :remote=>true, class: "edit" if role.can_be_edited? and display_edit_links? %>
19
+ <%= link_to raw("<i class=\"fa-pencil\"></i> Edit Role"), edit_link, :remote=>true, class: "edit" if role.can_be_edited? and display_edit_links? %>
20
20
 
21
- <%= 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 role.can_be_deleted? and display_delete_links? %>
21
+ <%= link_to raw("<i class=\"fa-trash\"></i> Delete"), delete_link, method: :delete, role: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" if role.can_be_deleted? and display_delete_links? %>
22
22
  </td>
23
23
 
24
24
  <% end %>
@@ -23,9 +23,9 @@
23
23
  <% edit_link = edit_role_path(id: @role.id) %>
24
24
  <% delete_link = role_path(id: @role.id) %>
25
25
 
26
- <%= 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? and display_edit_links? %>
26
+ <%= link_to raw("<i class=\"fa-pencil\"></i> Edit Role"), edit_link, :remote=>true, class: "btn btn-block btn-success" if @current_user.super_admin? and @role.can_be_edited? and display_edit_links? %>
27
27
 
28
- <%= 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? and display_delete_links? %>
28
+ <%= link_to raw("<i class=\"fa-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? and display_delete_links? %>
29
29
 
30
30
  <div class="visible-sm visible-xs mb-50"></div>
31
31
 
@@ -45,7 +45,7 @@
45
45
 
46
46
  <td class="action-links" style="width:10%">
47
47
 
48
- <%= 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" %>
48
+ <%= link_to raw("<i class=\"fa-trash\"></i> Remove Role"), delete_link, method: :delete, user: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" %>
49
49
 
50
50
  </td>
51
51
 
@@ -29,7 +29,7 @@
29
29
 
30
30
  <td class="action-links" style="width:10%">
31
31
 
32
- <%= 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" %>
32
+ <%= link_to raw("<i class=\"fa-trash\"></i> Remove Role"), delete_link, method: :delete, user: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" %>
33
33
 
34
34
  </td>
35
35
 
@@ -11,7 +11,7 @@
11
11
  <%= theme_form_field(@user, :name) %>
12
12
  <%= theme_form_field(@user, :username) %>
13
13
  <%= theme_form_field(@user, :email) %>
14
- <%= theme_form_field(@user, :designation, required: false) %>
14
+ <%= theme_form_field(@user, :designation_name, required: false) %>
15
15
  </div>
16
16
 
17
17
  <div class="col-md-6 col-xs-12">
@@ -68,9 +68,9 @@
68
68
  <% if display_manage_links? %>
69
69
  <td class="action-links hidden-xs hidden-sm" style="width:15%">
70
70
 
71
- <%= link_to raw("<i class=\"linecons-pencil\"></i> Edit User"), edit_link, :remote=>true, class: "edit" if user.can_be_edited? && display_edit_links? %>
71
+ <%= link_to raw("<i class=\"fa-pencil\"></i> Edit User"), edit_link, :remote=>true, class: "edit" if user.can_be_edited? && display_edit_links? %>
72
72
 
73
- <%= 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? && user.can_be_deleted? && (@current_user != user) %>
73
+ <%= link_to raw("<i class=\"fa-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? && user.can_be_deleted? && (@current_user != user) %>
74
74
  </td>
75
75
  <% end %>
76
76
 
@@ -52,9 +52,9 @@
52
52
  <% if display_manage_links? %>
53
53
  <td class="action-links hidden-xs hidden-sm" style="width:15%">
54
54
 
55
- <%= link_to raw("<i class=\"linecons-pencil\"></i> Edit User"), edit_link, :remote=>true, class: "edit" if user.can_be_edited? && display_edit_links? %>
55
+ <%= link_to raw("<i class=\"fa-pencil\"></i> Edit User"), edit_link, :remote=>true, class: "edit" if user.can_be_edited? && display_edit_links? %>
56
56
 
57
- <%= 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? && user.can_be_deleted? && (@current_user != user) %>
57
+ <%= link_to raw("<i class=\"fa-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? && user.can_be_deleted? && (@current_user != user) %>
58
58
  </td>
59
59
  <% end %>
60
60
 
@@ -23,7 +23,7 @@
23
23
  <div class="visible-sm visible-xs mt-50"></div>
24
24
 
25
25
  <%= theme_panel_heading(@user.name) %>
26
- <%= theme_panel_sub_heading(@user.designation, "#") if @user.designation %>
26
+ <%= theme_panel_sub_heading(@user.designation_name, "#") if @user.designation_name %>
27
27
 
28
28
  <%= clear_tag(10) %>
29
29
 
@@ -51,13 +51,13 @@
51
51
  <% edit_link = edit_user_path(id: @user.id) %>
52
52
  <% delete_link = user_path(id: @user.id) %>
53
53
 
54
- <%= link_to raw("<i class=\"linecons-pencil\"></i> Edit User"), edit_link, :remote=>true, class: "btn btn-block btn-success" if @user.can_be_edited? %>
54
+ <%= link_to raw("<i class=\"fa-pencil\"></i> Edit User"), edit_link, :remote=>true, class: "btn btn-block btn-success" if @user.can_be_edited? %>
55
55
 
56
- <%= 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: "btn btn-block btn-danger btn-only-hover" if @user.can_be_deleted? && (@current_user != @user) && @current_permission && @current_permission.can_delete? %>
56
+ <%= link_to raw("<i class=\"fa-trash\"></i> Delete"), 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 @user.can_be_deleted? && (@current_user != @user) && @current_permission && @current_permission.can_delete? %>
57
57
 
58
58
  <% if @current_user.super_admin? %>
59
59
 
60
- <%= link_to raw("<i class=\"linecons-paper-plane\"></i> Masquerade"), masquerade_user_path(@user), method: :put, data: { confirm: "Are you sure? Do you really want to logout current session and login as #{@user.name}?" }, class: "btn btn-block btn-gray btn-only-hover" if @current_user != @user %>
60
+ <%= link_to raw("<i class=\"fa-badge-check\"></i> Masquerade"), masquerade_user_path(@user), method: :put, data: { confirm: "Are you sure? Do you really want to logout current session and login as #{@user.name}?" }, class: "btn btn-block btn-gray btn-only-hover" if @current_user != @user %>
61
61
 
62
62
  <!-- Remove Super Admin -->
63
63
  <%= link_to raw("<i class=\"fa fa-remove mr-5\"></i> Remove Super Admin"), remove_super_admin_user_path(id: @user.id), method: :put, :remote=>true, role: "menuitem", tabindex: "-1", :class=>"btn btn-block btn-danger btn-only-hover" if @user.super_admin? && (@current_user != @user) %>
@@ -102,7 +102,9 @@
102
102
  <tr><th>Gender</th><td><%= @user.gender %></td></tr>
103
103
  <tr><th>Date of Birth</th><td><%= @user.date_of_birth.strftime("%m/%d/%Y") if @user.date_of_birth %></td></tr>
104
104
 
105
- <tr><th>Designation</th><td><%= @user.designation %></td></tr>
105
+ <tr><th>Designation</th><td><%= @user.designation_name %></td></tr>
106
+ <tr><th>Organisation</th><td><%= @user.organisation_name %></td></tr>
107
+
106
108
  <tr><th>Status</th><td>
107
109
  <% if @user.pending? %>
108
110
  <span class="label label-default">Pending</span>
@@ -113,6 +115,7 @@
113
115
  <% end %>
114
116
  </td>
115
117
  </tr>
118
+ <tr><th></th><td></td></tr>
116
119
 
117
120
  <% if @current_user.super_admin? %>
118
121
  <tr><th>Dummy?</th><td><%= @user.dummy.to_s.titleize %></td></tr>
@@ -30,7 +30,7 @@
30
30
 
31
31
  <%= theme_button('Refresh', 'refresh', users_path(sa: params[:sa]), classes: "pull-left mr-10", btn_type: "white") %>
32
32
 
33
- <%= theme_button('Manage Roles', 'nothing linecons-graduation-cap', roles_path(), classes: "pull-left mr-10", btn_type: "white", remote: false) if @current_user.has_create_permission?(Role) %>
33
+ <%= theme_button('Manage Roles', 'nothing fa-graduation-cap', roles_path(), classes: "pull-left mr-10", btn_type: "white", remote: false) if @current_user.has_create_permission?(Role) %>
34
34
 
35
35
  <!-- Single button -->
36
36
  <div class="ml-10 btn-group hidden">
@@ -1,4 +1,4 @@
1
- name,username,designation,email,phone,super_admin,status
1
+ name,username,designation_name,email,phone,super_admin,status
2
2
  Krishna Prasad Varma,kpvarma,Site Admin,prasad@rightsolutions.io,,TRUE,approved
3
3
  Vinodh Ellath,vinodh,Site Admin,vinodh@rightsolutions.io,,TRUE,approved
4
4
  Junaid Ramzan,junaid.ramzan,Site Admin,junaid.ramzan@gmail.com,,TRUE,approved
data/db/data/users.csv CHANGED
@@ -1,4 +1,4 @@
1
- name,username,designation,email,phone,super_admin,status
1
+ name,username,designation_name,email,phone,super_admin,status
2
2
  Krishna Prasad Varma,kpvarma,Site Admin,prasad@rightsolutions.io,,TRUE,approved
3
3
  Vinodh Ellath,vinodh,Site Admin,vinodh@rightsolutions.io,,TRUE,approved
4
4
  Junaid Ramzan,junaid.ramzan,Site Admin,junaid.ramzan@gmail.com,,TRUE,approved
@@ -7,7 +7,8 @@ class CreateUsers < ActiveRecord::Migration[5.0]
7
7
  t.string :username, :null => false, :limit=>32
8
8
  t.string :email, :null => false
9
9
  t.string :phone, :null => true, :limit=>24
10
- t.string :designation, :null => true, :limit=>56
10
+ t.string :designation_name, :null => true, :limit=>56
11
+ t.string :organisation_name, :null => true, :limit=>56
11
12
 
12
13
  t.boolean :super_admin, :null => true, default: false
13
14
 
@@ -9,7 +9,7 @@ namespace 'usman' do
9
9
  desc "Import all data in sequence"
10
10
  task 'all' => :environment do
11
11
 
12
- import_list = ["users", "permissions"]
12
+ import_list = ["users", "permissions", "users_roles"]
13
13
 
14
14
  import_list.each do |item|
15
15
  print "Importing #{item.titleize} \t".yellow
@@ -44,12 +44,29 @@ namespace 'usman' do
44
44
  end
45
45
  end
46
46
 
47
+ desc "Import Users Roles"
48
+ task :users_roles => :environment do
49
+ verbose = true
50
+ verbose = false if ["false", "f","0","no","n"].include?(ENV["verbose"].to_s.downcase.strip)
51
+
52
+ destroy_all = false
53
+ destroy_all = true if ["true", "t","1","yes","y"].include?(ENV["destroy_all"].to_s.downcase.strip)
54
+
55
+ path = Rails.root.join('db', 'data', "users_roles.csv")
56
+ path = Usman::Engine.root.join('db', 'data', "users_roles.csv") unless File.exists?(path)
57
+
58
+ # FIXME - Don't know how to clean up a HABTM intermediate table contents
59
+ # cls_name.constantize.destroy_all if destroy_all
60
+ User.import_roles_data_file(path, true, verbose)
61
+ puts "Importing Completed".green if verbose
62
+ end
63
+
47
64
  namespace 'dummy' do
48
65
 
49
66
  desc "Import all dummy data in sequence"
50
67
  task 'all' => :environment do
51
68
 
52
- import_list = ["users", "permissions"]
69
+ import_list = ["users", "permissions", "users_roles"]
53
70
 
54
71
  import_list.each do |item|
55
72
  print "Loading #{item.split(':').last.titleize} \t".yellow
@@ -83,6 +100,23 @@ namespace 'usman' do
83
100
  puts "Importing Completed".green if verbose
84
101
  end
85
102
  end
103
+
104
+ desc "Import Users Roles"
105
+ task :users_roles => :environment do
106
+ verbose = true
107
+ verbose = false if ["false", "f","0","no","n"].include?(ENV["verbose"].to_s.downcase.strip)
108
+
109
+ destroy_all = false
110
+ destroy_all = true if ["true", "t","1","yes","y"].include?(ENV["destroy_all"].to_s.downcase.strip)
111
+
112
+ path = Rails.root.join('db', 'data', "users_roles.csv")
113
+ path = Usman::Engine.root.join('db', 'data', 'dummy', "users_roles.csv") unless File.exists?(path)
114
+
115
+ # FIXME - Don't know how to clean up a HABTM intermediate table contents
116
+ # cls_name.constantize.destroy_all if destroy_all
117
+ User.import_roles_data_file(path, true, verbose)
118
+ puts "Importing Completed".green if verbose
119
+ end
86
120
  end
87
121
 
88
122
  end
data/lib/usman/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Usman
2
- VERSION = '0.3.38'
2
+ VERSION = '0.4.0-materialize'
3
3
  end
@@ -10,7 +10,9 @@ FactoryBot.define do
10
10
  email
11
11
 
12
12
  phone "123-456-7890"
13
- designation "My Designation"
13
+ designation_name "My Designation"
14
+ organisation_name "My Organisation"
15
+
14
16
  date_of_birth "01/01/1980"
15
17
 
16
18
  password_digest { SecureRandom.hex }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: usman
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.38
4
+ version: 0.4.0.pre.materialize
5
5
  platform: ruby
6
6
  authors:
7
7
  - kpvarma
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-02-02 00:00:00.000000000 Z
11
+ date: 2018-03-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -644,9 +644,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
644
644
  version: '0'
645
645
  required_rubygems_version: !ruby/object:Gem::Requirement
646
646
  requirements:
647
- - - ">="
647
+ - - ">"
648
648
  - !ruby/object:Gem::Version
649
- version: '0'
649
+ version: 1.3.1
650
650
  requirements: []
651
651
  rubyforge_project:
652
652
  rubygems_version: 2.7.3