ucb_rails_user 7.2.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 (55) 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 +79 -59
  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/config/initializers/pagy.rb +0 -6
  55. data/lib/ucb_rails_user/configuration/exception_notification.rb +0 -21
@@ -1,3 +1,3 @@
1
1
  module UcbRailsUser
2
- VERSION = '7.2.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.2.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-12-10 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
@@ -148,22 +189,16 @@ dependencies:
148
189
  name: faraday
149
190
  requirement: !ruby/object:Gem::Requirement
150
191
  requirements:
151
- - - ">="
152
- - !ruby/object:Gem::Version
153
- version: '1.0'
154
- - - "<"
192
+ - - "~>"
155
193
  - !ruby/object:Gem::Version
156
- version: '3.0'
194
+ version: 2.12.1
157
195
  type: :runtime
158
196
  prerelease: false
159
197
  version_requirements: !ruby/object:Gem::Requirement
160
198
  requirements:
161
- - - ">="
162
- - !ruby/object:Gem::Version
163
- version: '1.0'
164
- - - "<"
199
+ - - "~>"
165
200
  - !ruby/object:Gem::Version
166
- version: '3.0'
201
+ version: 2.12.1
167
202
  - !ruby/object:Gem::Dependency
168
203
  name: puma
169
204
  requirement: !ruby/object:Gem::Requirement
@@ -234,20 +269,6 @@ dependencies:
234
269
  - - ">="
235
270
  - !ruby/object:Gem::Version
236
271
  version: '0'
237
- - !ruby/object:Gem::Dependency
238
- name: sprockets-rails
239
- requirement: !ruby/object:Gem::Requirement
240
- requirements:
241
- - - ">="
242
- - !ruby/object:Gem::Version
243
- version: '0'
244
- type: :development
245
- prerelease: false
246
- version_requirements: !ruby/object:Gem::Requirement
247
- requirements:
248
- - - ">="
249
- - !ruby/object:Gem::Version
250
- version: '0'
251
272
  - !ruby/object:Gem::Dependency
252
273
  name: capybara
253
274
  requirement: !ruby/object:Gem::Requirement
@@ -323,15 +344,16 @@ files:
323
344
  - app/assets/javascripts/ucb_rails_user/scripts.js
324
345
  - app/assets/javascripts/ucb_rails_user/typeahead.bundle.js
325
346
  - app/assets/javascripts/ucb_rails_user/ucb_rails_user.js
326
- - app/assets/stylesheets/ucb_rails_user/components/_impersonations.sass
327
- - app/assets/stylesheets/ucb_rails_user/components/_loader.sass
328
- - app/assets/stylesheets/ucb_rails_user/components/_users_table.sass
329
- - 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
330
350
  - app/assets/stylesheets/ucb_rails_user/datatables.css
331
351
  - app/assets/stylesheets/ucb_rails_user/index.sass
332
- - 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
333
354
  - app/assets/stylesheets/ucb_rails_user/styles.css
334
355
  - app/assets/stylesheets/ucb_rails_user/typeahead_tweaks.sass
356
+ - app/assets/stylesheets/ucb_rails_user/user.css
335
357
  - app/controllers/concerns/ucb_rails_user/auth_concerns.rb
336
358
  - app/controllers/concerns/ucb_rails_user/home_controller_concerns.rb
337
359
  - app/controllers/concerns/ucb_rails_user/impersonations_controller_concerns.rb
@@ -361,21 +383,20 @@ files:
361
383
  - app/models/ucb_rails_user/user_session_manager/ldap_person_user_wrapper.rb
362
384
  - app/models/ucb_rails_user/user_session_manager/test_session_manager.rb
363
385
  - app/models/ucb_rails_user/user_uc_path_service.rb
364
- - app/views/ucb_rails_user/home/logged_in.html.haml
365
- - app/views/ucb_rails_user/home/not_logged_in.html.haml
366
- - app/views/ucb_rails_user/impersonations/index.html.haml
367
- - app/views/ucb_rails_user/lps/_form.html.haml
368
- - app/views/ucb_rails_user/lps/_modal.html.haml
369
- - app/views/ucb_rails_user/lps/_results.html.haml
370
- - app/views/ucb_rails_user/lps/search.js.haml
371
- - app/views/ucb_rails_user/users/_form.html.haml
372
- - app/views/ucb_rails_user/users/_search_results.html.haml
373
- - app/views/ucb_rails_user/users/_user.html.haml
374
- - app/views/ucb_rails_user/users/edit.html.haml
375
- - app/views/ucb_rails_user/users/index.html.haml
376
- - app/views/ucb_rails_user/users/new.html.haml
377
- - app/views/ucb_rails_user/users/search.js.haml
378
- - config/initializers/pagy.rb
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
379
400
  - config/initializers/simple_form.rb
380
401
  - config/initializers/simple_form_bootstrap.rb
381
402
  - config/locales/simple_form.en.yml
@@ -388,7 +409,6 @@ files:
388
409
  - lib/ucb_rails_user/configuration/cas.rb
389
410
  - lib/ucb_rails_user/configuration/configuration.rb
390
411
  - lib/ucb_rails_user/configuration/email.rb
391
- - lib/ucb_rails_user/configuration/exception_notification.rb
392
412
  - lib/ucb_rails_user/configuration/ldap.rb
393
413
  - lib/ucb_rails_user/engine.rb
394
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,6 +0,0 @@
1
- # Optionally override some pagy default with your own in the pagy initializer
2
- Pagy::DEFAULT[:limit] = 10 # items per page
3
- # Better user experience handled automatically
4
- require 'pagy/extras/overflow'
5
- Pagy::DEFAULT[:overflow] = :last_page
6
-
@@ -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