ucb_rails_user 7.1.0 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +18 -1
  3. data/app/assets/config/ucb_rails_user_manifest.js +1 -0
  4. data/app/assets/stylesheets/ucb_rails_user/components/impersonations.css +12 -0
  5. data/app/assets/stylesheets/ucb_rails_user/components/loader.css +41 -0
  6. data/app/assets/stylesheets/ucb_rails_user/components/users_table.css +54 -0
  7. data/app/assets/stylesheets/ucb_rails_user/main.css +1 -0
  8. data/app/assets/stylesheets/ucb_rails_user/pagy_tailwind.css +21 -0
  9. data/app/assets/stylesheets/ucb_rails_user/user.css +29 -0
  10. data/app/controllers/concerns/ucb_rails_user/auth_concerns.rb +1 -0
  11. data/app/controllers/concerns/ucb_rails_user/sessions_controller_concerns.rb +2 -2
  12. data/app/controllers/concerns/ucb_rails_user/users_controller_concerns.rb +2 -5
  13. data/app/helpers/ucb_rails_user/users_helper.rb +1 -0
  14. data/app/helpers/ucb_rails_user_helper.rb +0 -15
  15. data/app/views/ucb_rails_user/home/logged_in.html.erb +6 -0
  16. data/app/views/ucb_rails_user/home/not_logged_in.html.erb +5 -0
  17. data/app/views/ucb_rails_user/impersonations/index.html.erb +32 -0
  18. data/app/views/ucb_rails_user/lps/_form.html.erb +20 -0
  19. data/app/views/ucb_rails_user/lps/_modal.html.erb +15 -0
  20. data/app/views/ucb_rails_user/lps/_results.html.erb +44 -0
  21. data/app/views/ucb_rails_user/lps/search.js.erb +5 -0
  22. data/app/views/ucb_rails_user/users/_form.html.erb +15 -0
  23. data/app/views/ucb_rails_user/users/_search_results.html.erb +33 -0
  24. data/app/views/ucb_rails_user/users/_user.html.erb +18 -0
  25. data/app/views/ucb_rails_user/users/edit.html.erb +3 -0
  26. data/app/views/ucb_rails_user/users/index.html.erb +34 -0
  27. data/app/views/ucb_rails_user/users/new.html.erb +19 -0
  28. data/app/views/ucb_rails_user/users/search.js.erb +4 -0
  29. data/config/initializers/simple_form_bootstrap.rb +0 -2
  30. data/lib/ucb_rails_user/configuration/email.rb +2 -58
  31. data/lib/ucb_rails_user/engine.rb +14 -0
  32. data/lib/ucb_rails_user/version.rb +1 -1
  33. data/lib/ucb_rails_user.rb +0 -7
  34. metadata +77 -50
  35. data/app/assets/stylesheets/ucb_rails_user/components/_impersonations.sass +0 -13
  36. data/app/assets/stylesheets/ucb_rails_user/components/_loader.sass +0 -46
  37. data/app/assets/stylesheets/ucb_rails_user/components/_users_table.sass +0 -10
  38. data/app/assets/stylesheets/ucb_rails_user/components/index.sass +0 -3
  39. data/app/assets/stylesheets/ucb_rails_user/main.sass +0 -6
  40. data/app/views/ucb_rails_user/home/logged_in.html.haml +0 -5
  41. data/app/views/ucb_rails_user/home/not_logged_in.html.haml +0 -5
  42. data/app/views/ucb_rails_user/impersonations/index.html.haml +0 -20
  43. data/app/views/ucb_rails_user/lps/_form.html.haml +0 -19
  44. data/app/views/ucb_rails_user/lps/_modal.html.haml +0 -9
  45. data/app/views/ucb_rails_user/lps/_results.html.haml +0 -34
  46. data/app/views/ucb_rails_user/lps/search.js.haml +0 -3
  47. data/app/views/ucb_rails_user/users/_form.html.haml +0 -14
  48. data/app/views/ucb_rails_user/users/_search_results.html.haml +0 -24
  49. data/app/views/ucb_rails_user/users/_user.html.haml +0 -11
  50. data/app/views/ucb_rails_user/users/edit.html.haml +0 -3
  51. data/app/views/ucb_rails_user/users/index.html.haml +0 -22
  52. data/app/views/ucb_rails_user/users/new.html.haml +0 -16
  53. data/app/views/ucb_rails_user/users/search.js.haml +0 -4
  54. data/lib/ucb_rails_user/configuration/exception_notification.rb +0 -21
@@ -1,3 +1,3 @@
1
1
  module UcbRailsUser
2
- VERSION = '7.1.0'
2
+ VERSION = '8.0.0'
3
3
  end
@@ -1,7 +1,5 @@
1
1
  require "ucb_rails_user/engine"
2
2
 
3
- require "haml"
4
- require "haml-rails"
5
3
  require "omniauth"
6
4
  require "omniauth-cas"
7
5
  require "ucb_ldap"
@@ -10,7 +8,6 @@ require "active_attr"
10
8
  module UcbRailsUser
11
9
 
12
10
  mattr_accessor :user_class
13
- mattr_accessor :use_bootstrap_config
14
11
 
15
12
  def self.logger
16
13
  Rails.logger
@@ -20,8 +17,4 @@ module UcbRailsUser
20
17
  @@user_class&.constantize || ::User
21
18
  end
22
19
 
23
- def self.use_bootstrap_config
24
- @@use_bootstrap_config.nil? ? true : @@use_bootstrap_config
25
- end
26
-
27
20
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ucb_rails_user
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.1.0
4
+ version: 8.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steve Downey
@@ -9,10 +9,11 @@ authors:
9
9
  - Tyler Minard
10
10
  - Darin Wilson
11
11
  - Brandon Zylstra
12
+ - Chris Chernesky
12
13
  autorequire:
13
14
  bindir: bin
14
15
  cert_chain: []
15
- date: 2025-09-08 00:00:00.000000000 Z
16
+ date: 2025-03-04 00:00:00.000000000 Z
16
17
  dependencies:
17
18
  - !ruby/object:Gem::Dependency
18
19
  name: rails
@@ -20,7 +21,7 @@ dependencies:
20
21
  requirements:
21
22
  - - ">="
22
23
  - !ruby/object:Gem::Version
23
- version: '6.0'
24
+ version: '8.0'
24
25
  - - "<"
25
26
  - !ruby/object:Gem::Version
26
27
  version: '9.0'
@@ -30,44 +31,70 @@ dependencies:
30
31
  requirements:
31
32
  - - ">="
32
33
  - !ruby/object:Gem::Version
33
- version: '6.0'
34
+ version: '8.0'
34
35
  - - "<"
35
36
  - !ruby/object:Gem::Version
36
37
  version: '9.0'
37
38
  - !ruby/object:Gem::Dependency
38
- name: haml
39
+ name: propshaft
39
40
  requirement: !ruby/object:Gem::Requirement
40
41
  requirements:
41
42
  - - ">="
42
43
  - !ruby/object:Gem::Version
43
- version: '5.0'
44
+ version: 1.1.0
44
45
  - - "<"
45
46
  - !ruby/object:Gem::Version
46
- version: '7.0'
47
+ version: '2.0'
47
48
  type: :runtime
48
49
  prerelease: false
49
50
  version_requirements: !ruby/object:Gem::Requirement
50
51
  requirements:
51
52
  - - ">="
52
53
  - !ruby/object:Gem::Version
53
- version: '5.0'
54
+ version: 1.1.0
54
55
  - - "<"
55
56
  - !ruby/object:Gem::Version
56
- version: '7.0'
57
+ version: '2.0'
57
58
  - !ruby/object:Gem::Dependency
58
- name: haml-rails
59
+ name: turbo-rails
59
60
  requirement: !ruby/object:Gem::Requirement
60
61
  requirements:
61
- - - "~>"
62
+ - - ">="
62
63
  - !ruby/object:Gem::Version
63
- version: '2.0'
64
+ version: 2.0.11
65
+ - - "<"
66
+ - !ruby/object:Gem::Version
67
+ version: '3.0'
64
68
  type: :runtime
65
69
  prerelease: false
66
70
  version_requirements: !ruby/object:Gem::Requirement
67
71
  requirements:
68
- - - "~>"
72
+ - - ">="
69
73
  - !ruby/object:Gem::Version
70
- version: '2.0'
74
+ version: 2.0.11
75
+ - - "<"
76
+ - !ruby/object:Gem::Version
77
+ version: '3.0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: importmap-rails
80
+ requirement: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: 2.0.3
85
+ - - "<"
86
+ - !ruby/object:Gem::Version
87
+ version: '3.0'
88
+ type: :runtime
89
+ prerelease: false
90
+ version_requirements: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - ">="
93
+ - !ruby/object:Gem::Version
94
+ version: 2.0.3
95
+ - - "<"
96
+ - !ruby/object:Gem::Version
97
+ version: '3.0'
71
98
  - !ruby/object:Gem::Dependency
72
99
  name: active_attr
73
100
  requirement: !ruby/object:Gem::Requirement
@@ -96,6 +123,20 @@ dependencies:
96
123
  - - ">="
97
124
  - !ruby/object:Gem::Version
98
125
  version: '0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: pagy
128
+ requirement: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - "~>"
131
+ - !ruby/object:Gem::Version
132
+ version: 9.3.3
133
+ type: :runtime
134
+ prerelease: false
135
+ version_requirements: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - "~>"
138
+ - !ruby/object:Gem::Version
139
+ version: 9.3.3
99
140
  - !ruby/object:Gem::Dependency
100
141
  name: omniauth
101
142
  requirement: !ruby/object:Gem::Requirement
@@ -150,14 +191,14 @@ dependencies:
150
191
  requirements:
151
192
  - - "~>"
152
193
  - !ruby/object:Gem::Version
153
- version: '1.0'
194
+ version: 2.12.1
154
195
  type: :runtime
155
196
  prerelease: false
156
197
  version_requirements: !ruby/object:Gem::Requirement
157
198
  requirements:
158
199
  - - "~>"
159
200
  - !ruby/object:Gem::Version
160
- version: '1.0'
201
+ version: 2.12.1
161
202
  - !ruby/object:Gem::Dependency
162
203
  name: puma
163
204
  requirement: !ruby/object:Gem::Requirement
@@ -228,20 +269,6 @@ dependencies:
228
269
  - - ">="
229
270
  - !ruby/object:Gem::Version
230
271
  version: '0'
231
- - !ruby/object:Gem::Dependency
232
- name: sprockets-rails
233
- requirement: !ruby/object:Gem::Requirement
234
- requirements:
235
- - - ">="
236
- - !ruby/object:Gem::Version
237
- version: '0'
238
- type: :development
239
- prerelease: false
240
- version_requirements: !ruby/object:Gem::Requirement
241
- requirements:
242
- - - ">="
243
- - !ruby/object:Gem::Version
244
- version: '0'
245
272
  - !ruby/object:Gem::Dependency
246
273
  name: capybara
247
274
  requirement: !ruby/object:Gem::Requirement
@@ -317,15 +344,16 @@ files:
317
344
  - app/assets/javascripts/ucb_rails_user/scripts.js
318
345
  - app/assets/javascripts/ucb_rails_user/typeahead.bundle.js
319
346
  - app/assets/javascripts/ucb_rails_user/ucb_rails_user.js
320
- - app/assets/stylesheets/ucb_rails_user/components/_impersonations.sass
321
- - app/assets/stylesheets/ucb_rails_user/components/_loader.sass
322
- - app/assets/stylesheets/ucb_rails_user/components/_users_table.sass
323
- - app/assets/stylesheets/ucb_rails_user/components/index.sass
347
+ - app/assets/stylesheets/ucb_rails_user/components/impersonations.css
348
+ - app/assets/stylesheets/ucb_rails_user/components/loader.css
349
+ - app/assets/stylesheets/ucb_rails_user/components/users_table.css
324
350
  - app/assets/stylesheets/ucb_rails_user/datatables.css
325
351
  - app/assets/stylesheets/ucb_rails_user/index.sass
326
- - app/assets/stylesheets/ucb_rails_user/main.sass
352
+ - app/assets/stylesheets/ucb_rails_user/main.css
353
+ - app/assets/stylesheets/ucb_rails_user/pagy_tailwind.css
327
354
  - app/assets/stylesheets/ucb_rails_user/styles.css
328
355
  - app/assets/stylesheets/ucb_rails_user/typeahead_tweaks.sass
356
+ - app/assets/stylesheets/ucb_rails_user/user.css
329
357
  - app/controllers/concerns/ucb_rails_user/auth_concerns.rb
330
358
  - app/controllers/concerns/ucb_rails_user/home_controller_concerns.rb
331
359
  - app/controllers/concerns/ucb_rails_user/impersonations_controller_concerns.rb
@@ -355,20 +383,20 @@ files:
355
383
  - app/models/ucb_rails_user/user_session_manager/ldap_person_user_wrapper.rb
356
384
  - app/models/ucb_rails_user/user_session_manager/test_session_manager.rb
357
385
  - app/models/ucb_rails_user/user_uc_path_service.rb
358
- - app/views/ucb_rails_user/home/logged_in.html.haml
359
- - app/views/ucb_rails_user/home/not_logged_in.html.haml
360
- - app/views/ucb_rails_user/impersonations/index.html.haml
361
- - app/views/ucb_rails_user/lps/_form.html.haml
362
- - app/views/ucb_rails_user/lps/_modal.html.haml
363
- - app/views/ucb_rails_user/lps/_results.html.haml
364
- - app/views/ucb_rails_user/lps/search.js.haml
365
- - app/views/ucb_rails_user/users/_form.html.haml
366
- - app/views/ucb_rails_user/users/_search_results.html.haml
367
- - app/views/ucb_rails_user/users/_user.html.haml
368
- - app/views/ucb_rails_user/users/edit.html.haml
369
- - app/views/ucb_rails_user/users/index.html.haml
370
- - app/views/ucb_rails_user/users/new.html.haml
371
- - app/views/ucb_rails_user/users/search.js.haml
386
+ - app/views/ucb_rails_user/home/logged_in.html.erb
387
+ - app/views/ucb_rails_user/home/not_logged_in.html.erb
388
+ - app/views/ucb_rails_user/impersonations/index.html.erb
389
+ - app/views/ucb_rails_user/lps/_form.html.erb
390
+ - app/views/ucb_rails_user/lps/_modal.html.erb
391
+ - app/views/ucb_rails_user/lps/_results.html.erb
392
+ - app/views/ucb_rails_user/lps/search.js.erb
393
+ - app/views/ucb_rails_user/users/_form.html.erb
394
+ - app/views/ucb_rails_user/users/_search_results.html.erb
395
+ - app/views/ucb_rails_user/users/_user.html.erb
396
+ - app/views/ucb_rails_user/users/edit.html.erb
397
+ - app/views/ucb_rails_user/users/index.html.erb
398
+ - app/views/ucb_rails_user/users/new.html.erb
399
+ - app/views/ucb_rails_user/users/search.js.erb
372
400
  - config/initializers/simple_form.rb
373
401
  - config/initializers/simple_form_bootstrap.rb
374
402
  - config/locales/simple_form.en.yml
@@ -381,7 +409,6 @@ files:
381
409
  - lib/ucb_rails_user/configuration/cas.rb
382
410
  - lib/ucb_rails_user/configuration/configuration.rb
383
411
  - lib/ucb_rails_user/configuration/email.rb
384
- - lib/ucb_rails_user/configuration/exception_notification.rb
385
412
  - lib/ucb_rails_user/configuration/ldap.rb
386
413
  - lib/ucb_rails_user/engine.rb
387
414
  - lib/ucb_rails_user/spec_helpers.rb
@@ -1,13 +0,0 @@
1
- @media screen and (min-width: 768px)
2
- .impersonation-form
3
- width: 300px
4
-
5
- .recent-impersonations
6
- margin-top: 24px
7
- padding-bottom: 200px
8
-
9
- ul
10
- padding-left: 0px
11
- li
12
- list-style-type: none
13
- font-size: 110%
@@ -1,46 +0,0 @@
1
- .ucb-rails-user-loader,
2
- .ucb-rails-user-loader:after
3
- border-radius: 50%
4
- width: 6em
5
- height: 6em
6
-
7
- .ucb-rails-user-loader
8
- display: none
9
- margin: 60px auto
10
- font-size: 10px
11
- position: relative
12
- text-indent: -9999em
13
- border-top: .8em solid rgba(0,50,97, 0.2)
14
- border-right: .8em solid rgba(0,50,97, 0.2)
15
- border-bottom: .8em solid rgba(0,50,97, 0.2)
16
- border-left: .8em solid #003261
17
- -webkit-transform: translateZ(0)
18
- -ms-transform: translateZ(0)
19
- transform: translateZ(0)
20
- -webkit-animation: load8 1.1s infinite linear
21
- animation: load8 1.1s infinite linear
22
-
23
- @-webkit-keyframes load8
24
- 0%
25
- -webkit-transform: rotate(0deg)
26
- transform: rotate(0deg)
27
-
28
- 100%
29
- -webkit-transform: rotate(360deg)
30
- transform: rotate(360deg)
31
-
32
-
33
- @keyframes load8
34
- 0%
35
- -webkit-transform: rotate(0deg)
36
- transform: rotate(0deg)
37
-
38
- 100%
39
- -webkit-transform: rotate(360deg)
40
- transform: rotate(360deg)
41
-
42
- .ucb-rails-user-loader-small
43
- margin: 16px
44
- font-size: 6px
45
-
46
-
@@ -1,10 +0,0 @@
1
- .ucb-rails-users-table-header
2
- margin-top: 16px
3
- margin-bottom: 16px
4
-
5
- a
6
- margin-top: 16px
7
-
8
- table.ucb-rails-users-table
9
- margin-top: 16px
10
-
@@ -1,3 +0,0 @@
1
- @use "impersonations"
2
- @use "loader"
3
- @use "users_table"
@@ -1,6 +0,0 @@
1
- /* this is here for backwards compatibility - it should be removed in the future */
2
- @import "datatables"
3
- @import "typeahead_tweaks"
4
- @import "components/impersonations"
5
- @import "components/loader"
6
- @import "components/users_table"
@@ -1,5 +0,0 @@
1
- %h1 Home
2
-
3
- %p You are logged in as #{current_user.full_name}
4
-
5
- %p= link_to "Logout", logout_path()
@@ -1,5 +0,0 @@
1
- %h1 Home
2
-
3
- %p You are not logged in.
4
-
5
- %p= link_to "Login", login_path()
@@ -1,20 +0,0 @@
1
- %h1 Impersonate user
2
-
3
- - if current_user.impersonating?
4
- .clear-impersonation
5
- = link_to "Stop impersonating #{current_user.impersonation_target.full_name}", admin_stop_impersonation_path(), class: "btn btn-primary"
6
- - else
7
- .impersonation-form
8
- = simple_form_for UcbRailsUser::Impersonation.new, url: admin_impersonations_path(), method: :post do |f|
9
- = f.input :target, label: "User", input_html: { class: "typeahead" }
10
- = f.input :target_id, as: :hidden
11
- = f.button :submit, value: "Impersonate", class: "btn btn-primary", disabled: true, data: { impersonate_button: true }
12
-
13
- .recent-impersonations
14
- - if current_user.recent_impersonations.present?
15
- %h3 Recent impersonations
16
- %ul
17
- - current_user.recent_impersonations.each do |imp|
18
- %li= link_to full_name_with_uid(imp.target), admin_impersonations_path() + "?ucb_rails_user_impersonation[target_id]=#{imp.target.id}", method: :post
19
- - else
20
- %h4 No recent impersonations
@@ -1,19 +0,0 @@
1
- = form_tag('/ucb_rails/ldap_person_search', :class => "well form-inline", :id => 'lps-form', :method => :get, :remote => true) do
2
-
3
- = hidden_field_tag('search-field-name')
4
- = hidden_field_tag('result-link-http-method')
5
- = hidden_field_tag('result-link-text')
6
- = hidden_field_tag('result-link-class')
7
- = hidden_field_tag('result-link-url')
8
-
9
- .form-group
10
- = label_tag 'first_name', 'First Name'
11
- = text_field_tag("first_name", nil, class: "form-control")
12
-
13
- .form-group
14
- = label_tag 'last_name', 'Last Name'
15
- = text_field_tag("last_name", nil, class: "form-control")
16
-
17
- = submit_button_tag('Search', id: 'lps-search')
18
- = button("Clear", url: "#", :id => 'lps-clear')
19
-
@@ -1,9 +0,0 @@
1
- = modal(id: "lps-modal") do
2
- = modal_header do
3
- %h3.title Search For Person
4
- = render partial: "ucb_rails_user/lps/form"
5
- = modal_body do
6
- #lps-results
7
- = modal_footer do
8
- #matches.pull-left
9
- = modal_footer_close_button
@@ -1,34 +0,0 @@
1
- = ucbr_table_tag(class: 'table-condensed') do
2
- %thead
3
- %tr
4
- %th{style: 'width="1%"'}
5
- %th First Name
6
- %th Last Name
7
- %th Email
8
- %th Department
9
- %tbody
10
- - @lps_entries.each do |entry|
11
- - entry_id = "ldap_uid_#{entry.uid}"
12
- %tr{id: entry_id, class: ldap_entry_class(entry)}
13
- %td= link_to_ldap_person_entry(entry)
14
- %td= entry.first_name
15
- %td= entry.last_name
16
- %td= entry.email
17
- %td= entry.departments
18
-
19
- :javascript
20
- $('#lps-modal table').dataTable({
21
- "bPaginate": false,
22
- "bFilter": false,
23
- "bInfo": false,
24
- "oLanguage": {
25
- "sEmptyTable": "No matches for your search."
26
- },
27
- "aaSorting": [ [1, "asc"], [2, "asc"] ],
28
- "aoColumnDefs": [
29
- { "bSortable": false, "aTargets": [ 0 ] }, // selection link
30
- { "aDataSort": [ 1, 2 ], "aTargets": [ 1 ] }, // first name
31
- { "aDataSort": [ 2, 1 ], "aTargets": [ 2 ] }, // last name
32
- { "aDataSort": [ 3, 1, 2 ], "aTargets": [ 3 ] }, // department
33
- ]
34
- });
@@ -1,3 +0,0 @@
1
- - results = render :partial => 'ucb_rails_user/lps/results'
2
- $('#lps-results').html('#{j results}');
3
- $('#matches').html('#{lps_matches}');
@@ -1,14 +0,0 @@
1
- = simple_form_for(@user, url: url, method: method, :html => {:class => 'form-horizontal'}, wrapper: :horizontal_form) do |f|
2
- = f.input :ldap_uid, :input_html => {disabled: 'disabled'}
3
- = f.input :first_name, :input_html => {disabled: 'disabled'}
4
- = f.input :last_name, :input_html => {disabled: 'disabled'}
5
- = f.input :email, :input_html => {disabled: 'disabled'}
6
- = f.input :alternate_email
7
- = f.input :last_login_at, as: :string, :input_html => {disabled: 'disabled', value: @user.last_login_at&.strftime("%m/%d/%Y %H:%M:%S")}
8
- = f.input :superuser_flag, :as => :boolean, label: "Superuser?", wrapper: :horizontal_boolean
9
- = f.input :inactive_flag, :as => :boolean, :label => "Inactive User?", wrapper: :horizontal_boolean
10
-
11
- .form-actions
12
- %button{type: "submit", class: "btn btn-primary"} Submit
13
- = link_to "Cancel", admin_users_path
14
-
@@ -1,24 +0,0 @@
1
- %h3 Search Results
2
- - if @results.empty?
3
- %p No results matched your search
4
- - else
5
- %table.table.table-striped.add-user-search-results-table
6
- %thead
7
- %tr
8
- %th UID
9
- %th Employee ID
10
- %th First Name
11
- %th Last Name
12
- %th
13
- %tbody
14
- - @results.each do |person|
15
- %tr
16
- %td= person.uid
17
- %td= person.employee_id
18
- %td= person.first_name
19
- %td= person.last_name
20
- %td
21
- = form_tag admin_users_path(), method: :post do
22
- = hidden_field_tag :ldap_uid, person.uid
23
- = submit_tag "Add", class: "btn btn-primary"
24
-
@@ -1,11 +0,0 @@
1
- %tr[user]
2
- %td= checkmark(user.superuser?)
3
- %td= checkmark(user.inactive?)
4
- %td= user.first_name
5
- %td= user.last_name
6
- %td= mail_to(user.email)
7
- %td.dt= user.last_login_at&.strftime("%m/%d/%Y %H:%M:%S")
8
- %td.min= user.ldap_uid
9
- %td.min= user.employee_id
10
- %td= link_to('edit', edit_admin_user_path(user), :class => 'btn btn-info btn-xs', :id => dom_id(user, 'edit'))
11
- %td= button_to 'delete', admin_user_path(user), method: :delete, data: {confirm: "Are you sure?"}, class: "btn btn-danger btn-xs"
@@ -1,3 +0,0 @@
1
- %h1 Edit User
2
-
3
- = render partial: 'form', locals: { url: admin_user_path(@user), method: :put }
@@ -1,22 +0,0 @@
1
- .ucb-rails-users-table-header.clearfix
2
- %h1
3
- Users
4
-
5
- .table-responsive.ucb-rails-users-table-wrapper
6
- %table.table.table-striped.table-bordered.table-hover.ucb-rails-users-table
7
- %thead
8
- %tr
9
- %th.min Superuser?
10
- %th.min Inactive?
11
- %th First Name
12
- %th Last Name
13
- %th Email
14
- %th.dt Last Login
15
- %th UID
16
- %th Employee ID
17
- %th.min.unsorted Edit
18
- %th.min.unsorted Delete
19
- %tbody.highlight
20
- = render partial: "ucb_rails_user/users/user", collection: @users
21
-
22
-
@@ -1,16 +0,0 @@
1
- %h2 Add New User
2
-
3
- = form_tag admin_user_search_path(), method: :get, remote: true, class: "form-inline user-search-form" do
4
- = text_field_tag :first_name, "", placeholder: "First name", class: "form-control"
5
- = text_field_tag :last_name, "", placeholder: "Last name", class: "form-control"
6
- = text_field_tag :employee_id, "", placeholder: "Employee ID", class: "form-control"
7
- = submit_tag "Search", class: "btn btn-primary"
8
- = link_to "Cancel", admin_users_path(), class: "btn btn-default"
9
-
10
- .ucb-rails-user-loader
11
- Loading...
12
-
13
- .search-results
14
- - if @results
15
- = render "results"
16
-
@@ -1,4 +0,0 @@
1
- $('.ucb-rails-user-loader').hide()
2
- $('.search-results').html("#{ j render(partial: "search_results") }")
3
- addDatatablesToNewUserSearchResults()
4
- $('.search-results').show()
@@ -1,21 +0,0 @@
1
- module UcbRailsUser
2
- module Configuration
3
-
4
- class ExceptionNotification
5
-
6
- class << self
7
-
8
- def configure(config)
9
- return if config.blank?
10
-
11
- config = config.symbolize_keys
12
- config[:email].symbolize_keys!
13
- config[:email][:email_prefix] = config[:email][:email_prefix].gsub("{env}", RailsEnvironment.short)
14
-
15
- Rails.application.config.middleware.use ::ExceptionNotification::Rack, config
16
- end
17
- end
18
- end
19
-
20
- end
21
- end