five-two-nw-olivander 0.1.2.27 → 0.1.2.28
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/config/olivander_manifest.js +0 -3
- data/app/assets/stylesheets/adminlte.css +1 -3
- data/app/components/olivander/components/small_box_component.html.haml +17 -0
- data/app/components/olivander/components/small_box_component.rb +34 -0
- data/app/controllers/concerns/olivander/resources/route_builder.rb +0 -4
- data/app/datatables/olivander/datatable.rb +3 -3
- data/app/views/application/_form.html.haml +1 -1
- data/app/views/layouts/olivander/adminlte/_login_flashes.html.haml +0 -4
- data/config/initializers/simple_form.rb +10 -57
- data/lib/olivander/version.rb +1 -1
- metadata +4 -19
- data/app/assets/config/manifest.js +0 -4
- data/app/inputs/custom_form_builder.rb +0 -43
- data/app/views/devise/confirmations/new.html.erb +0 -20
- data/app/views/devise/mailer/confirmation_instructions.html.erb +0 -5
- data/app/views/devise/mailer/email_changed.html.erb +0 -7
- data/app/views/devise/mailer/password_change.html.erb +0 -3
- data/app/views/devise/mailer/reset_password_instructions.html.erb +0 -8
- data/app/views/devise/mailer/unlock_instructions.html.erb +0 -7
- data/app/views/devise/passwords/edit.html.erb +0 -27
- data/app/views/devise/passwords/new.html.erb +0 -18
- data/app/views/devise/registrations/edit.html.erb +0 -35
- data/app/views/devise/registrations/new.html.erb +0 -25
- data/app/views/devise/sessions/new.html.erb +0 -20
- data/app/views/devise/shared/_error_messages.html.erb +0 -15
- data/app/views/devise/shared/_links.html.haml +0 -19
- data/app/views/devise/unlocks/new.html.erb +0 -19
- data/config/initializers/effective_datatables.rb.old +0 -49
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 80addbfd5fe9f9691a5b0b37db9456e0920abb8c31907d067c8dfe60683bd6fc
|
4
|
+
data.tar.gz: 1bd44fc8d34dd873c80ed5768da7d0b94d75aed63e6568370a64ba033dbb861c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9a8bd33731c14f442c8857df913bb77c259c2edf64cec9a0d59a73cf22f7515f7c1a78ace886fbb46f710087d8b30ae470e26df1d176efe5b61c7fc3ba9c4e4e
|
7
|
+
data.tar.gz: 2a03cdfae9a10222167c04af1b8deb133a491b1057f6796965135e3201b6e3f1d606710bf0340f646cff56726282824550918dff39391d1775710486b7c5cda0
|
@@ -0,0 +1,17 @@
|
|
1
|
+
- if @turbo_frame.present?
|
2
|
+
<turbo-frame id="#{@turbo_frame}" src="#{@src}" loading="#{@loading}">
|
3
|
+
.small-box{ class: @background }
|
4
|
+
.inner
|
5
|
+
%h3= @primary_text
|
6
|
+
%p= @secondary_text
|
7
|
+
- if @icon.present?
|
8
|
+
.icon
|
9
|
+
%i{ class: @icon }
|
10
|
+
- if @more_link.present?
|
11
|
+
%a.small-box-footer{ href: @more_link }
|
12
|
+
= @more_text
|
13
|
+
%i{ class: @more_icon }
|
14
|
+
- if @turbo_frame.present?
|
15
|
+
.overlay.dark
|
16
|
+
- if @turbo_frame.present?
|
17
|
+
</turbo-frame>
|
@@ -0,0 +1,34 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Olivander
|
4
|
+
module Components
|
5
|
+
class SmallBoxComponent < ViewComponent::Base
|
6
|
+
def initialize(
|
7
|
+
background: 'bg-danger',
|
8
|
+
primary_text: 'Loading...',
|
9
|
+
secondary_text: " ".html_safe,
|
10
|
+
icon: 'fas fa-sync-alt fa-spin',
|
11
|
+
more_link: nil,
|
12
|
+
more_text: '',
|
13
|
+
more_icon: 'fas fa-arrow-circle-right',
|
14
|
+
turbo_frame: nil,
|
15
|
+
loading: true,
|
16
|
+
src: nil,
|
17
|
+
overlay: 'dark'
|
18
|
+
)
|
19
|
+
super
|
20
|
+
@background = background
|
21
|
+
@primary_text = primary_text
|
22
|
+
@secondary_text = secondary_text
|
23
|
+
@icon = icon
|
24
|
+
@more_link = more_link
|
25
|
+
@more_text = more_text
|
26
|
+
@more_icon = more_icon
|
27
|
+
@turbo_frame = turbo_frame
|
28
|
+
@loading = loading
|
29
|
+
@src = src
|
30
|
+
@overlay = overlay
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -90,10 +90,6 @@ module Olivander
|
|
90
90
|
end
|
91
91
|
|
92
92
|
class_methods do
|
93
|
-
def resource_action(model, action)
|
94
|
-
resources[model].actions.select{ |x| x.sym == action }.first
|
95
|
-
end
|
96
|
-
|
97
93
|
def resource(model, only: DEFAULT_CRUD_ACTIONS, except: [], &block)
|
98
94
|
self.current_resource = RoutedResource.new(model, DEFAULT_CRUD_ACTIONS & (only - except))
|
99
95
|
yield if block_given?
|
@@ -40,11 +40,11 @@ module Olivander
|
|
40
40
|
bulk_actions_col
|
41
41
|
column_attributes.each do |key|
|
42
42
|
label = field_label_for(klazz, key)
|
43
|
-
sym = key.gsub('_id', '')
|
43
|
+
sym = key.gsub('_id', '')
|
44
44
|
visible = show.include?(key) || !(default_hidden.include?(key) || hide.include?(key))
|
45
45
|
if link_path.present? && sym == :id
|
46
|
-
link_col sym, link_path,
|
47
|
-
elsif link_path.present? && sym ==
|
46
|
+
link_col sym, link_path, 'id', visible: visible
|
47
|
+
elsif link_path.present? && sym == 'name'
|
48
48
|
link_col sym, link_path, :id, visible: visible
|
49
49
|
elsif sym.include?('.')
|
50
50
|
col sym, visible: visible, label: label
|
@@ -70,49 +70,16 @@ SimpleForm.setup do |config|
|
|
70
70
|
config.wrappers :checkbox, class: "form-check",
|
71
71
|
hint_class: :field_with_hint, error_class: :field_with_errors, valid_class: :field_without_errors do |b|
|
72
72
|
b.use :html5
|
73
|
+
b.use :placeholder
|
74
|
+
b.optional :maxlength
|
75
|
+
b.optional :minlength
|
76
|
+
b.optional :pattern
|
77
|
+
b.optional :min_max
|
73
78
|
b.optional :readonly
|
74
|
-
b.
|
75
|
-
|
76
|
-
|
77
|
-
b.use :
|
78
|
-
b.use :full_error, wrap_with: { tag: 'div', class: 'invalid-feedback d-block' }
|
79
|
-
b.use :hint, wrap_with: { tag: 'small', class: 'form-text text-muted' }
|
80
|
-
end
|
81
|
-
|
82
|
-
# vertical input for boolean
|
83
|
-
config.wrappers :vertical_boolean, tag: 'fieldset', class: 'form-group', error_class: 'form-group-invalid', valid_class: 'form-group-valid' do |b|
|
84
|
-
b.use :html5
|
85
|
-
b.optional :readonly
|
86
|
-
b.wrapper :form_check_wrapper, tag: 'div', class: 'form-check' do |bb|
|
87
|
-
bb.use :input, class: 'form-check-input' #, error_class: 'is-invalid', valid_class: 'is-valid'
|
88
|
-
bb.use :label, class: 'form-check-label'
|
89
|
-
bb.use :full_error, wrap_with: { tag: 'div', class: 'invalid-feedback' }
|
90
|
-
bb.use :hint, wrap_with: { tag: 'small', class: 'form-text text-muted' }
|
91
|
-
end
|
92
|
-
end
|
93
|
-
|
94
|
-
# vertical input for radio buttons and check boxes
|
95
|
-
config.wrappers :vertical_collection, item_wrapper_class: 'form-check', item_label_class: 'form-check-label', tag: 'fieldset', class: 'form-group', error_class: 'form-group-invalid', valid_class: 'form-group-valid' do |b|
|
96
|
-
b.use :html5
|
97
|
-
b.optional :readonly
|
98
|
-
b.wrapper :legend_tag, tag: 'legend', class: 'col-form-label pt-0' do |ba|
|
99
|
-
ba.use :label_text
|
100
|
-
end
|
101
|
-
b.use :input, class: 'form-check-input', error_class: 'is-invalid', valid_class: 'is-valid'
|
102
|
-
b.use :full_error, wrap_with: { tag: 'div', class: 'invalid-feedback d-block' }
|
103
|
-
b.use :hint, wrap_with: { tag: 'small', class: 'form-text text-muted' }
|
104
|
-
end
|
105
|
-
|
106
|
-
# vertical input for inline radio buttons and check boxes
|
107
|
-
config.wrappers :vertical_collection_inline, item_wrapper_class: 'form-check form-check-inline', item_label_class: 'form-check-label', tag: 'fieldset', class: 'form-group', error_class: 'form-group-invalid', valid_class: 'form-group-valid' do |b|
|
108
|
-
b.use :html5
|
109
|
-
b.optional :readonly
|
110
|
-
b.wrapper :legend_tag, tag: 'legend', class: 'col-form-label pt-0' do |ba|
|
111
|
-
ba.use :label_text
|
112
|
-
end
|
113
|
-
b.use :input, class: 'form-check-input', error_class: 'is-invalid', valid_class: 'is-valid'
|
114
|
-
b.use :full_error, wrap_with: { tag: 'div', class: 'invalid-feedback d-block' }
|
115
|
-
b.use :hint, wrap_with: { tag: 'small', class: 'form-text text-muted' }
|
79
|
+
b.use :input, class: 'form-check-input'
|
80
|
+
b.use :label #, class: 'form-control'
|
81
|
+
b.use :hint, wrap_with: { tag: :span, class: :hint }
|
82
|
+
b.use :error, wrap_with: { tag: :span, class: "text-danger" }
|
116
83
|
end
|
117
84
|
|
118
85
|
config.wrappers :switch, class: "custom-control custom-switch",
|
@@ -203,24 +170,10 @@ SimpleForm.setup do |config|
|
|
203
170
|
# Custom wrappers for input types. This should be a hash containing an input
|
204
171
|
# type as key and the wrapper that will be used for all inputs with specified type.
|
205
172
|
# config.wrapper_mappings = { string: :prepend }
|
206
|
-
config.wrapper_mappings = {
|
207
|
-
boolean: :vertical_boolean,
|
208
|
-
check_boxes: :check_box,
|
209
|
-
# date: :horizontal_multi_select,
|
210
|
-
# datetime: :horizontal_multi_select,
|
211
|
-
# file: :horizontal_file,
|
212
|
-
# radio_buttons: :horizontal_collection,
|
213
|
-
# range: :horizontal_range,
|
214
|
-
# time: :horizontal_multi_select
|
215
|
-
}
|
216
173
|
|
217
174
|
# Namespaces where SimpleForm should look for custom input classes that
|
218
175
|
# override default inputs.
|
219
|
-
|
220
|
-
.map{ |x| x.gsub('app/inputs/', '').split('/').reject(&:blank?).join('/').camelize }
|
221
|
-
.reject(&:blank?).each do |d|
|
222
|
-
config.custom_inputs_namespaces << d
|
223
|
-
end
|
176
|
+
# config.custom_inputs_namespaces << "CustomInputs"
|
224
177
|
|
225
178
|
# Default priority for time_zone inputs.
|
226
179
|
# config.time_zone_priority = nil
|
data/lib/olivander/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: five-two-nw-olivander
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.2.
|
4
|
+
version: 0.1.2.28
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eric Dennis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-08-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: chartkick
|
@@ -133,7 +133,6 @@ files:
|
|
133
133
|
- MIT-LICENSE
|
134
134
|
- README.md
|
135
135
|
- Rakefile
|
136
|
-
- app/assets/config/manifest.js
|
137
136
|
- app/assets/config/olivander_manifest.js
|
138
137
|
- app/assets/fonts/fa-brands-400.eot
|
139
138
|
- app/assets/fonts/fa-brands-400.svg
|
@@ -189,12 +188,13 @@ files:
|
|
189
188
|
- app/components/olivander/components/resource_form_component.rb
|
190
189
|
- app/components/olivander/components/resource_show_component.html.haml
|
191
190
|
- app/components/olivander/components/resource_show_component.rb
|
191
|
+
- app/components/olivander/components/small_box_component.html.haml
|
192
|
+
- app/components/olivander/components/small_box_component.rb
|
192
193
|
- app/controllers/concerns/olivander/resources/auto_form_attributes.rb
|
193
194
|
- app/controllers/concerns/olivander/resources/route_builder.rb
|
194
195
|
- app/controllers/olivander/application_controller.rb
|
195
196
|
- app/datatables/olivander/datatable.rb
|
196
197
|
- app/helpers/olivander/application_helper.rb
|
197
|
-
- app/inputs/custom_form_builder.rb
|
198
198
|
- app/inputs/date_time_input.rb
|
199
199
|
- app/jobs/olivander/application_job.rb
|
200
200
|
- app/mailers/olivander/application_mailer.rb
|
@@ -206,20 +206,6 @@ files:
|
|
206
206
|
- app/views/application/index.json.jbuilder
|
207
207
|
- app/views/application/new.html.haml
|
208
208
|
- app/views/application/show.html.haml
|
209
|
-
- app/views/devise/confirmations/new.html.erb
|
210
|
-
- app/views/devise/mailer/confirmation_instructions.html.erb
|
211
|
-
- app/views/devise/mailer/email_changed.html.erb
|
212
|
-
- app/views/devise/mailer/password_change.html.erb
|
213
|
-
- app/views/devise/mailer/reset_password_instructions.html.erb
|
214
|
-
- app/views/devise/mailer/unlock_instructions.html.erb
|
215
|
-
- app/views/devise/passwords/edit.html.erb
|
216
|
-
- app/views/devise/passwords/new.html.erb
|
217
|
-
- app/views/devise/registrations/edit.html.erb
|
218
|
-
- app/views/devise/registrations/new.html.erb
|
219
|
-
- app/views/devise/sessions/new.html.erb
|
220
|
-
- app/views/devise/shared/_error_messages.html.erb
|
221
|
-
- app/views/devise/shared/_links.html.haml
|
222
|
-
- app/views/devise/unlocks/new.html.erb
|
223
209
|
- app/views/effective/resource/_actions_dropleft.html.haml
|
224
210
|
- app/views/layouts/olivander/adminlte/_content.html.haml
|
225
211
|
- app/views/layouts/olivander/adminlte/_content_kanban.html.haml
|
@@ -233,7 +219,6 @@ files:
|
|
233
219
|
- app/views/layouts/olivander/adminlte/login.html.haml
|
234
220
|
- app/views/layouts/olivander/adminlte/main.html.haml
|
235
221
|
- app/views/layouts/olivander/application.html.haml
|
236
|
-
- config/initializers/effective_datatables.rb.old
|
237
222
|
- config/initializers/simple_form.rb
|
238
223
|
- config/locales/simple_form.en.yml
|
239
224
|
- config/routes.rb
|
@@ -1,43 +0,0 @@
|
|
1
|
-
class CustomFormBuilder < SimpleForm::FormBuilder
|
2
|
-
def initialize(*)
|
3
|
-
Rails.logger.warn "instantiating this class"
|
4
|
-
super
|
5
|
-
end
|
6
|
-
|
7
|
-
def association(association, options = {}, &block)
|
8
|
-
Rails.logger.warn "making an association"
|
9
|
-
resolve_custom_input_association(association, options)
|
10
|
-
super(association, options, &block)
|
11
|
-
end
|
12
|
-
|
13
|
-
def resolve_custom_input_association(association, options)
|
14
|
-
return if options[:as].present?
|
15
|
-
|
16
|
-
[
|
17
|
-
"#{object.class.name.demodulize}#{association.to_s.titleize}", "#{association.to_s.titleize}"
|
18
|
-
].each do |key|
|
19
|
-
Rails.logger.debug "trying for #{key}"
|
20
|
-
next unless attempt_mapping_with_custom_namespace("#{key}Input").present?
|
21
|
-
|
22
|
-
options[:as] = key.to_sym
|
23
|
-
break
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
private
|
28
|
-
|
29
|
-
def fetch_association_collection(reflection, options)
|
30
|
-
Rails.logger.warn "we got into here"
|
31
|
-
|
32
|
-
options_method = "options_for_#{reflection.name}".to_sym
|
33
|
-
if object.respond_to?(options_method) then
|
34
|
-
Rails.logger.info "using specific method"
|
35
|
-
options.fetch(:collection) do
|
36
|
-
object.send(options_method)
|
37
|
-
end
|
38
|
-
else
|
39
|
-
Rails.logger.info "doing it old school"
|
40
|
-
super(reflection, options)
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
@@ -1,20 +0,0 @@
|
|
1
|
-
<h2>Resend confirmation instructions</h2>
|
2
|
-
|
3
|
-
<%= simple_form_for(resource, as: resource_name, url: confirmation_path(resource_name), html: { method: :post }) do |f| %>
|
4
|
-
<%= f.error_notification %>
|
5
|
-
<%= f.full_error :confirmation_token %>
|
6
|
-
|
7
|
-
<div class="form-inputs">
|
8
|
-
<%= f.input :email,
|
9
|
-
required: true,
|
10
|
-
autofocus: true,
|
11
|
-
value: (resource.pending_reconfirmation? ? resource.unconfirmed_email : resource.email),
|
12
|
-
input_html: { autocomplete: "email" } %>
|
13
|
-
</div>
|
14
|
-
|
15
|
-
<div class="form-actions">
|
16
|
-
<%= f.button :submit, "Resend confirmation instructions" %>
|
17
|
-
</div>
|
18
|
-
<% end %>
|
19
|
-
|
20
|
-
<%= render "devise/shared/links" %>
|
@@ -1,7 +0,0 @@
|
|
1
|
-
<p>Hello <%= @email %>!</p>
|
2
|
-
|
3
|
-
<% if @resource.try(:unconfirmed_email?) %>
|
4
|
-
<p>We're contacting you to notify you that your email is being changed to <%= @resource.unconfirmed_email %>.</p>
|
5
|
-
<% else %>
|
6
|
-
<p>We're contacting you to notify you that your email has been changed to <%= @resource.email %>.</p>
|
7
|
-
<% end %>
|
@@ -1,8 +0,0 @@
|
|
1
|
-
<p>Hello <%= @resource.email %>!</p>
|
2
|
-
|
3
|
-
<p>Someone has requested a link to change your password. You can do this through the link below.</p>
|
4
|
-
|
5
|
-
<p><%= link_to 'Change my password', edit_password_url(@resource, reset_password_token: @token) %></p>
|
6
|
-
|
7
|
-
<p>If you didn't request this, please ignore this email.</p>
|
8
|
-
<p>Your password won't change until you access the link above and create a new one.</p>
|
@@ -1,7 +0,0 @@
|
|
1
|
-
<p>Hello <%= @resource.email %>!</p>
|
2
|
-
|
3
|
-
<p>Your account has been locked due to an excessive number of unsuccessful sign in attempts.</p>
|
4
|
-
|
5
|
-
<p>Click the link below to unlock your account:</p>
|
6
|
-
|
7
|
-
<p><%= link_to 'Unlock my account', unlock_url(@resource, unlock_token: @token) %></p>
|
@@ -1,27 +0,0 @@
|
|
1
|
-
<h2>Change your password</h2>
|
2
|
-
|
3
|
-
<%= simple_form_for(resource, as: resource_name, url: password_path(resource_name), html: { method: :put }) do |f| %>
|
4
|
-
<%= f.error_notification %>
|
5
|
-
|
6
|
-
<%= f.input :reset_password_token, as: :hidden %>
|
7
|
-
<%= f.full_error :reset_password_token %>
|
8
|
-
|
9
|
-
<div class="form-inputs">
|
10
|
-
<%= f.input :password,
|
11
|
-
label: "New password",
|
12
|
-
required: true,
|
13
|
-
autofocus: true,
|
14
|
-
hint: ("#{@minimum_password_length} characters minimum" if @minimum_password_length),
|
15
|
-
input_html: { autocomplete: "new-password" } %>
|
16
|
-
<%= f.input :password_confirmation,
|
17
|
-
label: "Confirm your new password",
|
18
|
-
required: true,
|
19
|
-
input_html: { autocomplete: "new-password" } %>
|
20
|
-
</div>
|
21
|
-
|
22
|
-
<div class="form-actions">
|
23
|
-
<%= f.button :submit, "Change my password" %>
|
24
|
-
</div>
|
25
|
-
<% end %>
|
26
|
-
|
27
|
-
<%= render "devise/shared/links" %>
|
@@ -1,18 +0,0 @@
|
|
1
|
-
<h2>Forgot your password?</h2>
|
2
|
-
|
3
|
-
<%= simple_form_for(resource, as: resource_name, url: password_path(resource_name), html: { method: :post }) do |f| %>
|
4
|
-
<%= f.error_notification %>
|
5
|
-
|
6
|
-
<div class="form-inputs">
|
7
|
-
<%= f.input :email,
|
8
|
-
required: true,
|
9
|
-
autofocus: true,
|
10
|
-
input_html: { autocomplete: "email" } %>
|
11
|
-
</div>
|
12
|
-
|
13
|
-
<div class="form-actions">
|
14
|
-
<%= f.button :submit, "Send me reset password instructions" %>
|
15
|
-
</div>
|
16
|
-
<% end %>
|
17
|
-
|
18
|
-
<%= render "devise/shared/links" %>
|
@@ -1,35 +0,0 @@
|
|
1
|
-
<h2>Edit <%= resource_name.to_s.humanize %></h2>
|
2
|
-
|
3
|
-
<%= simple_form_for(resource, as: resource_name, url: registration_path(resource_name), html: { method: :put }) do |f| %>
|
4
|
-
<%= f.error_notification %>
|
5
|
-
|
6
|
-
<div class="form-inputs">
|
7
|
-
<%= f.input :email, required: true, autofocus: true %>
|
8
|
-
|
9
|
-
<% if devise_mapping.confirmable? && resource.pending_reconfirmation? %>
|
10
|
-
<p>Currently waiting confirmation for: <%= resource.unconfirmed_email %></p>
|
11
|
-
<% end %>
|
12
|
-
|
13
|
-
<%= f.input :password,
|
14
|
-
hint: "leave it blank if you don't want to change it",
|
15
|
-
required: false,
|
16
|
-
input_html: { autocomplete: "new-password" } %>
|
17
|
-
<%= f.input :password_confirmation,
|
18
|
-
required: false,
|
19
|
-
input_html: { autocomplete: "new-password" } %>
|
20
|
-
<%= f.input :current_password,
|
21
|
-
hint: "we need your current password to confirm your changes",
|
22
|
-
required: true,
|
23
|
-
input_html: { autocomplete: "current-password" } %>
|
24
|
-
</div>
|
25
|
-
|
26
|
-
<div class="form-actions">
|
27
|
-
<%= f.button :submit, "Update" %>
|
28
|
-
</div>
|
29
|
-
<% end %>
|
30
|
-
|
31
|
-
<h3>Cancel my account</h3>
|
32
|
-
|
33
|
-
<p>Unhappy? <%= link_to "Cancel my account", registration_path(resource_name), data: { confirm: "Are you sure?" }, method: :delete %></p>
|
34
|
-
|
35
|
-
<%= link_to "Back", :back %>
|
@@ -1,25 +0,0 @@
|
|
1
|
-
<h2>Sign up</h2>
|
2
|
-
|
3
|
-
<%= simple_form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
|
4
|
-
<%= f.error_notification %>
|
5
|
-
|
6
|
-
<div class="form-inputs">
|
7
|
-
<%= f.input :email,
|
8
|
-
required: true,
|
9
|
-
autofocus: true,
|
10
|
-
input_html: { autocomplete: "email" }%>
|
11
|
-
<%= f.input :password,
|
12
|
-
required: true,
|
13
|
-
hint: ("#{@minimum_password_length} characters minimum" if @minimum_password_length),
|
14
|
-
input_html: { autocomplete: "new-password" } %>
|
15
|
-
<%= f.input :password_confirmation,
|
16
|
-
required: true,
|
17
|
-
input_html: { autocomplete: "new-password" } %>
|
18
|
-
</div>
|
19
|
-
|
20
|
-
<div class="form-actions">
|
21
|
-
<%= f.button :submit, "Sign up" %>
|
22
|
-
</div>
|
23
|
-
<% end %>
|
24
|
-
|
25
|
-
<%= render "devise/shared/links" %>
|
@@ -1,20 +0,0 @@
|
|
1
|
-
<h2>Log in</h2>
|
2
|
-
|
3
|
-
<%= simple_form_for(resource, as: resource_name, url: session_path(resource_name)) do |f| %>
|
4
|
-
<div class="form-inputs">
|
5
|
-
<%= f.input :email,
|
6
|
-
required: false,
|
7
|
-
autofocus: true,
|
8
|
-
input_html: { autocomplete: "email" } %>
|
9
|
-
<%= f.input :password,
|
10
|
-
required: false,
|
11
|
-
input_html: { autocomplete: "current-password" } %>
|
12
|
-
<%= f.input :remember_me, as: :boolean if devise_mapping.rememberable? %>
|
13
|
-
</div>
|
14
|
-
|
15
|
-
<div class="form-actions">
|
16
|
-
<%= f.button :submit, "Log in" %>
|
17
|
-
</div>
|
18
|
-
<% end %>
|
19
|
-
|
20
|
-
<%= render "devise/shared/links" %>
|
@@ -1,15 +0,0 @@
|
|
1
|
-
<% if resource.errors.any? %>
|
2
|
-
<div id="error_explanation">
|
3
|
-
<h2>
|
4
|
-
<%= I18n.t("errors.messages.not_saved",
|
5
|
-
count: resource.errors.count,
|
6
|
-
resource: resource.class.model_name.human.downcase)
|
7
|
-
%>
|
8
|
-
</h2>
|
9
|
-
<ul>
|
10
|
-
<% resource.errors.full_messages.each do |message| %>
|
11
|
-
<li><%= message %></li>
|
12
|
-
<% end %>
|
13
|
-
</ul>
|
14
|
-
</div>
|
15
|
-
<% end %>
|
@@ -1,19 +0,0 @@
|
|
1
|
-
- if controller_name != 'sessions'
|
2
|
-
= link_to "Log in", new_session_path(resource_name)
|
3
|
-
%br/
|
4
|
-
- if devise_mapping.registerable? && controller_name != 'registrations'
|
5
|
-
%p.mb-0
|
6
|
-
= link_to "Sign up", new_registration_path(resource_name)
|
7
|
-
- if devise_mapping.recoverable? && controller_name != 'passwords' && controller_name != 'registrations'
|
8
|
-
%p.mb-1
|
9
|
-
= link_to "I forgot my password", new_password_path(resource_name)
|
10
|
-
- if devise_mapping.confirmable? && controller_name != 'confirmations'
|
11
|
-
= link_to "Didn't receive confirmation instructions?", new_confirmation_path(resource_name)
|
12
|
-
%br/
|
13
|
-
- if devise_mapping.lockable? && resource_class.unlock_strategy_enabled?(:email) && controller_name != 'unlocks'
|
14
|
-
= link_to "Didn't receive unlock instructions?", new_unlock_path(resource_name)
|
15
|
-
%br/
|
16
|
-
- if devise_mapping.omniauthable?
|
17
|
-
- resource_class.omniauth_providers.each do |provider|
|
18
|
-
= link_to "Sign in with #{OmniAuth::Utils.camelize(provider)}", omniauth_authorize_path(resource_name, provider), method: :post
|
19
|
-
%br/
|
@@ -1,19 +0,0 @@
|
|
1
|
-
<h2>Resend unlock instructions</h2>
|
2
|
-
|
3
|
-
<%= simple_form_for(resource, as: resource_name, url: unlock_path(resource_name), html: { method: :post }) do |f| %>
|
4
|
-
<%= f.error_notification %>
|
5
|
-
<%= f.full_error :unlock_token %>
|
6
|
-
|
7
|
-
<div class="form-inputs">
|
8
|
-
<%= f.input :email,
|
9
|
-
required: true,
|
10
|
-
autofocus: true,
|
11
|
-
input_html: { autocomplete: "email" } %>
|
12
|
-
</div>
|
13
|
-
|
14
|
-
<div class="form-actions">
|
15
|
-
<%= f.button :submit, "Resend unlock instructions" %>
|
16
|
-
</div>
|
17
|
-
<% end %>
|
18
|
-
|
19
|
-
<%= render "devise/shared/links" %>
|
@@ -1,49 +0,0 @@
|
|
1
|
-
EffectiveDatatables.setup do |config|
|
2
|
-
# Authorization Method
|
3
|
-
#
|
4
|
-
# This method is called by all controller actions with the appropriate action and resource
|
5
|
-
# If it raises an exception or returns false, an Effective::AccessDenied Error will be raised
|
6
|
-
#
|
7
|
-
# Use via Proc:
|
8
|
-
# Proc.new { |controller, action, resource| authorize!(action, resource) } # CanCan
|
9
|
-
# Proc.new { |controller, action, resource| can?(action, resource) } # CanCan with skip_authorization_check
|
10
|
-
# Proc.new { |controller, action, resource| authorize "#{action}?", resource } # Pundit
|
11
|
-
# Proc.new { |controller, action, resource| current_user.is?(:admin) } # Custom logic
|
12
|
-
#
|
13
|
-
# Use via Boolean:
|
14
|
-
# config.authorization_method = true # Always authorized
|
15
|
-
# config.authorization_method = false # Always unauthorized
|
16
|
-
#
|
17
|
-
# Use via Method (probably in your application_controller.rb):
|
18
|
-
# config.authorization_method = :my_authorization_method
|
19
|
-
# def my_authorization_method(resource, action)
|
20
|
-
# true
|
21
|
-
# end
|
22
|
-
config.authorization_method = Proc.new { |controller, action, resource| true }
|
23
|
-
|
24
|
-
# Default number of entries shown per page
|
25
|
-
# Valid options are: 5, 10, 25, 50, 100, 250, 500, :all
|
26
|
-
config.default_length = 25
|
27
|
-
|
28
|
-
# Default class used on the <table> tag
|
29
|
-
config.html_class = 'table table-hover'
|
30
|
-
|
31
|
-
# Log search/sort information to the console
|
32
|
-
config.debug = true
|
33
|
-
|
34
|
-
# Use a cookie to save and restore state from previous page visits.
|
35
|
-
config.save_state = true
|
36
|
-
|
37
|
-
# Configure the _effective_dt cookie.
|
38
|
-
config.cookie_max_size = 1500 # String size. Final byte size is about 1.5 times bigger, after rails signs it
|
39
|
-
config.cookie_domain = :all # Should usually be :all
|
40
|
-
config.cookie_tld_length = nil # Leave nil to autodetect, or set to probably 2
|
41
|
-
|
42
|
-
# Date formatting
|
43
|
-
config.format_datetime = '%F %H:%M'
|
44
|
-
config.format_date = '%F'
|
45
|
-
config.format_time = '%H:%M'
|
46
|
-
|
47
|
-
# Enable the Download button which serves a CSV of your collection
|
48
|
-
config.download = false
|
49
|
-
end
|