five-two-nw-olivander 0.1.2.43 → 0.1.2.45
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/fonts/summernote.eot +0 -0
- data/app/assets/fonts/summernote.ttf +0 -0
- data/app/assets/fonts/summernote.woff +0 -0
- data/app/assets/fonts/summernote.woff2 +0 -0
- data/app/assets/javascripts/adminlte/select2_defaults.coffee +5 -1
- data/app/assets/stylesheets/fa-fix.scss +12 -0
- data/app/components/olivander/components/portlet_component.html.haml +2 -2
- data/app/components/olivander/components/portlet_component.rb +2 -0
- data/app/components/olivander/components/resource_show_component.html.haml +7 -1
- data/app/components/olivander/components/table_portlet_component.html.haml +2 -2
- data/app/components/olivander/components/table_portlet_component.rb +2 -0
- data/app/controllers/concerns/olivander/resources/auto_form_attributes.rb +7 -7
- data/app/datatables/olivander/datatable.rb +3 -5
- data/app/helpers/olivander/application_helper.rb +3 -1
- data/app/views/application/_resource_form_actions.html.haml +1 -1
- data/app/views/application/edit.html.haml +1 -1
- data/app/views/application/show.html.haml +2 -0
- data/app/views/effective/resource/_actions_dropleft.html.haml +9 -2
- data/app/views/layouts/olivander/adminlte/_login_flashes.html.haml +4 -0
- data/app/views/layouts/olivander/adminlte/_navbar.html.haml +98 -82
- data/app/views/layouts/olivander/adminlte/_sidebar.html.haml +1 -7
- data/app/views/layouts/olivander/adminlte/login.html.haml +0 -1
- data/lib/five-two-nw-olivander.rb +1 -0
- data/lib/olivander/engine.rb +1 -1
- data/lib/olivander/version.rb +1 -1
- data/lib/olivander.rb +5 -1
- metadata +20 -69
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/af.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/ar.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/az.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/bg.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/bn.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/bs.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/build.txt +0 -236
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/ca.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/cs.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/da.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/de.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/dsb.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/el.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/en.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/es.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/et.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/eu.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/fa.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/fi.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/fr.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/gl.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/he.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/hi.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/hr.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/hsb.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/hu.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/hy.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/id.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/is.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/it.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/ja.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/ka.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/km.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/ko.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/lt.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/lv.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/mk.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/ms.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/nb.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/ne.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/nl.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/pl.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/ps.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/pt-BR.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/pt.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/ro.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/ru.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/sk.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/sl.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/sq.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/sr-Cyrl.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/sr.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/sv.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/th.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/tk.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/tr.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/uk.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/vi.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/zh-CN.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/i18n/zh-TW.js +0 -3
- data/app/assets/javascripts/adminlte/plugins/select2/js/select2.full.js +0 -6820
- data/app/assets/javascripts/adminlte/plugins/select2/js/select2.js +0 -6108
- data/app/assets/javascripts/adminlte/plugins/select2/js/select2.min.js +0 -2
- data/app/assets/javascripts/controllers/refresh_datatable_controller.js +0 -8
- data/app/controllers/concerns/olivander/resources/model_registrar.rb +0 -49
- data/app/controllers/concerns/olivander/resources/model_registry.rb +0 -201
- data/app/javascript/controllers/refresh_datatable_controller.js +0 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ba4f9dbeed1514a03779ee98689bf49f07d604a494b37b28f8cfd6bcf371afba
|
4
|
+
data.tar.gz: f3b1d97003eac15db5a922fb708ab1045bbc90e438566966fdbd154c93cc3786
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 791870070c907f93452a9492ded3aeaacc869fef869ac7097f105cbb7876e7d4b8e5da3223534b102671b555384b55b8bc6db67363ae9e2c9202e228ec51de3e
|
7
|
+
data.tar.gz: 0f9fb63a3e04530081db4cc89f40fad5a2f5cb1a88fe1ed59939e92d8df419fab909d4f67acac343b5d156b7027490e1aefece3339a500158f9556541958a2f0
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -14,6 +14,10 @@ $.fn.select2.defaults.set('dropdownParent', $('#modal-root'))
|
|
14
14
|
$(document).on 'select2:open', () =>
|
15
15
|
document.querySelector('.select2-search__field').focus()
|
16
16
|
|
17
|
-
initSelect2s = () -> $('select').not('.no-select2').
|
17
|
+
initSelect2s = () -> $('select').not('.no-select2').each (k,v) =>
|
18
|
+
$(v).select2({ dropdownParent: $(v).parent() })
|
18
19
|
|
19
20
|
$(document).ready -> initSelect2s()
|
21
|
+
$(document).on 'show.bs.modal', (e) =>
|
22
|
+
$('select').not('.no-select2').each (k,v) =>
|
23
|
+
$(v).select2({ dropdownParent: $(v).parent() })
|
@@ -39,3 +39,15 @@
|
|
39
39
|
asset-url("fa-solid-900.ttf") format("truetype"),
|
40
40
|
asset-url("fa-solid-900.svg#fontawesome") format("svg");
|
41
41
|
}
|
42
|
+
|
43
|
+
@font-face {
|
44
|
+
font-display: auto;
|
45
|
+
font-family: summernote;
|
46
|
+
font-style: normal;
|
47
|
+
font-weight: 400;
|
48
|
+
src:
|
49
|
+
asset-url("summernote.eot?#iefix") format("embedded-opentype"),
|
50
|
+
asset-url("summernote.woff2") format("woff2"),
|
51
|
+
asset-url("summernote.woff") format("woff"),
|
52
|
+
asset-url("summernote.ttf") format("truetype");
|
53
|
+
}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
- if @turbo_frame.present?
|
2
|
-
|
2
|
+
%turbo-frame{ id: @turbo_frame, src: @src, loading: @loading, data: @turbo_frame_data }/
|
3
3
|
|
4
|
-
.card{ class: @card_type }
|
4
|
+
.card{ class: @card_type, data: @card_data }
|
5
5
|
.card-header{ class: @header_background }
|
6
6
|
%h3.card-title= @title
|
7
7
|
- if header_tools?
|
@@ -22,7 +22,13 @@
|
|
22
22
|
- icon_class = val ? 'fa-check text-success' : 'fa-times text-danger'
|
23
23
|
%i.fa{ class: icon_class }
|
24
24
|
- when :association
|
25
|
-
|
25
|
+
- if val.present?
|
26
|
+
- if val.is_a?(ActiveRecord::Associations::CollectionProxy)
|
27
|
+
%ul
|
28
|
+
- val.each do |val1|
|
29
|
+
%li= link_to val1
|
30
|
+
- else
|
31
|
+
= link_to val if val.present?
|
26
32
|
- else
|
27
33
|
= val
|
28
34
|
- (section.columns-slice.size).times do
|
@@ -1,7 +1,7 @@
|
|
1
1
|
- if @turbo_frame.present?
|
2
|
-
|
2
|
+
%turbo-frame{ id: @turbo_frame, colin: 'ferrel', data: @turbo_frame_data }/
|
3
3
|
|
4
|
-
.card{ class: @card_type }
|
4
|
+
.card{ class: @card_type, data: @card_data }
|
5
5
|
.card-header{ class: @header_background }
|
6
6
|
%h3.card-title= @title
|
7
7
|
.card-tools
|
@@ -19,6 +19,8 @@ module Olivander
|
|
19
19
|
@max_height = options[:max_height]
|
20
20
|
@headers = options[:headers].nil? ? true : options[:headers]
|
21
21
|
@id = options[:id]
|
22
|
+
@card_data = options[:card_data]
|
23
|
+
@turbo_frame_data = options[:turbo_frame_data]
|
22
24
|
end
|
23
25
|
|
24
26
|
class TableComponent < ViewComponent::Base
|
@@ -49,14 +49,14 @@ module Olivander
|
|
49
49
|
sym = att.name.to_sym
|
50
50
|
type = att.type
|
51
51
|
next unless inc == sym
|
52
|
+
resource_field sym, type
|
53
|
+
end
|
52
54
|
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
end
|
59
|
-
|
55
|
+
reflections.map{ |x| x[1] }
|
56
|
+
.filter{ |x| x.foreign_key == inc || x.name == inc }
|
57
|
+
.each do |r|
|
58
|
+
sym = r.name
|
59
|
+
type = :association
|
60
60
|
resource_field sym, type
|
61
61
|
end
|
62
62
|
end
|
@@ -64,14 +64,12 @@ module Olivander
|
|
64
64
|
label = field_label_for(klazz, key)
|
65
65
|
sym = key.gsub('_id', '')
|
66
66
|
visible = show.include?(key) || !(default_hidden.include?(key) || hide.include?(key))
|
67
|
-
if
|
68
|
-
|
69
|
-
elsif link_path.present? && sym == 'name'
|
70
|
-
link_col sym, link_path, :id, visible: visible
|
67
|
+
if %w[id name first_name last_name display_name title].include?(sym)
|
68
|
+
col sym, visible: visible, action: :show
|
71
69
|
elsif sym.include?('.')
|
72
70
|
col sym, visible: visible, label: label
|
73
71
|
else
|
74
|
-
col sym, visible: visible, label: label
|
72
|
+
col sym, visible: visible, label: label
|
75
73
|
end
|
76
74
|
end
|
77
75
|
actions_col
|
@@ -14,7 +14,9 @@ module Olivander
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def user_image_path(user)
|
17
|
-
"avatar#{SecureRandom.random_number(4)}.png"
|
17
|
+
return "avatar#{SecureRandom.random_number(4)}.png" unless user.present? && user.respond_to?(:avatar_path)
|
18
|
+
|
19
|
+
user.avatar_path
|
18
20
|
end
|
19
21
|
|
20
22
|
def authorized_resource_actions(route_builder, resource, for_action: :show)
|
@@ -7,7 +7,7 @@
|
|
7
7
|
= resource_form_action_label(@resource, a.sym)
|
8
8
|
|
9
9
|
- if a.turbo_frame.blank?
|
10
|
-
= link_to({ controller: a.controller, action: a.action }, method: a.verb, class: 'btn btn-tool') do
|
10
|
+
= link_to({ controller: a.controller, action: a.action }, method: a.verb, class: 'btn btn-tool', data: { confirm: 'are you sure?' }) do
|
11
11
|
= yield cf_sym
|
12
12
|
- else
|
13
13
|
= link_to({ controller: a.controller, action: a.action }, class: 'btn btn-tool', data: { turbo: true, turbo_method: a.verb, turbo_frame: a.turbo_frame }) do
|
@@ -12,7 +12,9 @@
|
|
12
12
|
.card-tools
|
13
13
|
= resource_form_actions(@context.route_builder, @resource, for_action: action_name.to_sym)
|
14
14
|
.card-body
|
15
|
+
= render_optional_partial 'show_inside_before'
|
15
16
|
= render Olivander::Components::ResourceShowComponent.new(@resource, [])
|
17
|
+
= render_optional_partial 'show_inside_after'
|
16
18
|
.card-footer.text-right
|
17
19
|
= link_to 'Cancel', @_effective_resource.action_path(:index), class: 'btn btn-secondary'
|
18
20
|
|
@@ -1,6 +1,13 @@
|
|
1
1
|
- route_builder = @context&.route_builder || datatable.class::ROUTE_BUILDER
|
2
|
-
= dropdown(variation: :dropleft, btn_class: btn_class) do
|
2
|
+
-# = dropdown(variation: :dropleft, btn_class: btn_class) do
|
3
|
+
-# - authorized_resource_actions(route_builder, resource, for_action: action_name).select{ |x| x.show_in_datatable }.each do |a|
|
4
|
+
-# - path = a.path_helper.is_a?(Proc) ? a.path_helper.call(resource) : send(a.path_helper, resource.id)
|
5
|
+
-# - data = a.turbo_frame.present? ? { turbo: true, turbo_frame: a.turbo_frame } : {}
|
6
|
+
-# = dropdown_link_to resource_form_action_label(resource, a.sym), path, data: data
|
7
|
+
.text-center
|
3
8
|
- authorized_resource_actions(route_builder, resource, for_action: action_name).select{ |x| x.show_in_datatable }.each do |a|
|
4
9
|
- path = a.path_helper.is_a?(Proc) ? a.path_helper.call(resource) : send(a.path_helper, resource.id)
|
5
10
|
- data = a.turbo_frame.present? ? { turbo: true, turbo_frame: a.turbo_frame } : {}
|
6
|
-
=
|
11
|
+
= link_to path, data: data, method: a.verb, title: resource_form_action_label(resource, a.sym) do
|
12
|
+
- icon_class = (a.verb == :delete ? 'text-danger' : '')
|
13
|
+
%i.fa.fa-edit{ class: icon_class }
|
@@ -23,85 +23,101 @@
|
|
23
23
|
%i.fas.fa-search
|
24
24
|
%button.btn.btn-navbar{"data-widget" => "navbar-search", :type => "button"}
|
25
25
|
%i.fas.fa-times
|
26
|
-
/ Messages Dropdown Menu
|
27
|
-
%li.nav-item.dropdown
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
/ Notifications Dropdown Menu
|
79
|
-
%li.nav-item.dropdown
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
%li.nav-item
|
103
|
-
%a.nav-link{
|
104
|
-
%
|
105
|
-
|
106
|
-
|
107
|
-
|
26
|
+
-# / Messages Dropdown Menu
|
27
|
+
-# %li.nav-item.dropdown
|
28
|
+
-# %a.nav-link{"data-toggle" => "dropdown", :href => "#"}
|
29
|
+
-# %i.far.fa-comments
|
30
|
+
-# %span.badge.badge-danger.navbar-badge 3
|
31
|
+
-# .dropdown-menu.dropdown-menu-lg.dropdown-menu-right
|
32
|
+
-# %a.dropdown-item{:href => "#"}
|
33
|
+
-# / Message Start
|
34
|
+
-# .media
|
35
|
+
-# %img.img-size-50.mr-3.img-circle{:alt => "User Avatar", :src => image_path(user_image_path(nil))}/
|
36
|
+
-# .media-body
|
37
|
+
-# %h3.dropdown-item-title
|
38
|
+
-# Brad Diesel
|
39
|
+
-# %span.float-right.text-sm.text-danger
|
40
|
+
-# %i.fas.fa-star
|
41
|
+
-# %p.text-sm Call me whenever you can...
|
42
|
+
-# %p.text-sm.text-muted
|
43
|
+
-# %i.far.fa-clock.mr-1
|
44
|
+
-# 4 Hours Ago
|
45
|
+
-# / Message End
|
46
|
+
-# .dropdown-divider
|
47
|
+
-# %a.dropdown-item{:href => "#"}
|
48
|
+
-# / Message Start
|
49
|
+
-# .media
|
50
|
+
-# %img.img-size-50.img-circle.mr-3{:alt => "User Avatar", :src => image_path(user_image_path(nil))}/
|
51
|
+
-# .media-body
|
52
|
+
-# %h3.dropdown-item-title
|
53
|
+
-# John Pierce
|
54
|
+
-# %span.float-right.text-sm.text-muted
|
55
|
+
-# %i.fas.fa-star
|
56
|
+
-# %p.text-sm I got your message bro
|
57
|
+
-# %p.text-sm.text-muted
|
58
|
+
-# %i.far.fa-clock.mr-1
|
59
|
+
-# 4 Hours Ago
|
60
|
+
-# / Message End
|
61
|
+
-# .dropdown-divider
|
62
|
+
-# %a.dropdown-item{:href => "#"}
|
63
|
+
-# / Message Start
|
64
|
+
-# .media
|
65
|
+
-# %img.img-size-50.img-circle.mr-3{:alt => "User Avatar", :src => image_path(user_image_path(nil))}/
|
66
|
+
-# .media-body
|
67
|
+
-# %h3.dropdown-item-title
|
68
|
+
-# Nora Silvester
|
69
|
+
-# %span.float-right.text-sm.text-warning
|
70
|
+
-# %i.fas.fa-star
|
71
|
+
-# %p.text-sm The subject goes here
|
72
|
+
-# %p.text-sm.text-muted
|
73
|
+
-# %i.far.fa-clock.mr-1
|
74
|
+
-# 4 Hours Ago
|
75
|
+
-# / Message End
|
76
|
+
-# .dropdown-divider
|
77
|
+
-# %a.dropdown-item.dropdown-footer{:href => "#"} See All Messages
|
78
|
+
-# / Notifications Dropdown Menu
|
79
|
+
-# %li.nav-item.dropdown
|
80
|
+
-# %a.nav-link{"data-toggle" => "dropdown", :href => "#"}
|
81
|
+
-# %i.far.fa-bell
|
82
|
+
-# %span.badge.badge-warning.navbar-badge 15
|
83
|
+
-# .dropdown-menu.dropdown-menu-lg.dropdown-menu-right
|
84
|
+
-# %span.dropdown-item.dropdown-header 15 Notifications
|
85
|
+
-# .dropdown-divider
|
86
|
+
-# %a.dropdown-item{:href => "#"}
|
87
|
+
-# %i.fas.fa-envelope.mr-2
|
88
|
+
-# 4 new messages
|
89
|
+
-# %span.float-right.text-muted.text-sm 3 mins
|
90
|
+
-# .dropdown-divider
|
91
|
+
-# %a.dropdown-item{:href => "#"}
|
92
|
+
-# %i.fas.fa-users.mr-2
|
93
|
+
-# 8 friend requests
|
94
|
+
-# %span.float-right.text-muted.text-sm 12 hours
|
95
|
+
-# .dropdown-divider
|
96
|
+
-# %a.dropdown-item{:href => "#"}
|
97
|
+
-# %i.fas.fa-file.mr-2
|
98
|
+
-# 3 new reports
|
99
|
+
-# %span.float-right.text-muted.text-sm 2 days
|
100
|
+
-# .dropdown-divider
|
101
|
+
-# %a.dropdown-item.dropdown-footer{:href => "#"} See All Notifications
|
102
|
+
%li.nav-item.dropdown.user-menu
|
103
|
+
%a.nav-link.dropdown-toggle{"data-toggle" => "dropdown", :href => "#"}
|
104
|
+
%img.user-image.img-circle.elevation-2{:alt => "User Image", :src => image_path(user_image_path(nil))}/
|
105
|
+
|
106
|
+
%span.d-none.d-md-inline= current_user.display_name
|
107
|
+
%ul.dropdown-menu.dropdown-menu-lg.dropdown-menu-right
|
108
|
+
/ User image
|
109
|
+
%li.user-header.bg-primary
|
110
|
+
%img.img-circle.elevation-2{:alt => "User Image", src: image_path(user_image_path(nil))}/
|
111
|
+
%p= current_user.display_name
|
112
|
+
/ Menu Footer
|
113
|
+
%li.user-footer
|
114
|
+
= link_to user_path(current_user), class: 'btn btn-default btn-flat' do
|
115
|
+
Profile
|
116
|
+
= link_to @context.sign_out_path, method: :delete, class: 'btn btn-default btn-flat float-right' do
|
117
|
+
Sign out
|
118
|
+
-# %li.nav-item
|
119
|
+
-# %a.nav-link{title: 'Full Screen Mode', "data-widget" => "fullscreen", :href => "#", :role => "button"}
|
120
|
+
-# %i.fas.fa-expand-arrows-alt
|
121
|
+
-# %li.nav-item
|
122
|
+
-# %a.nav-link{title: 'Show Sidebar Options', "data-controlsidebar-slide" => "true", "data-widget" => "control-sidebar", :href => "#", :role => "button"}
|
123
|
+
-# %i.fas.fa-th-large
|
@@ -6,14 +6,8 @@
|
|
6
6
|
%span.brand-text.font-weight-light= sidebar_context_name
|
7
7
|
/ Sidebar
|
8
8
|
.sidebar
|
9
|
-
/ Sidebar user panel (optional)
|
10
|
-
.user-panel.mt-3.pb-3.mb-3.d-flex
|
11
|
-
.image
|
12
|
-
%img.img-circle.elevation-2{:alt => "User Image", :src => image_path(user_image_path(nil))}/
|
13
|
-
.info
|
14
|
-
= link_to current_user, @context.sign_out_path, method: :delete, class: 'd-block'
|
15
9
|
/ SidebarSearch Form
|
16
|
-
.form-inline
|
10
|
+
.form-inline{ style: 'padding-top: 7px' }
|
17
11
|
.input-group{"data-widget" => "sidebar-search"}
|
18
12
|
%input.form-control.form-control-sidebar{"aria-label" => "Search Menu Items", :placeholder => "Search Menu Items", :type => "search"}/
|
19
13
|
.input-group-append
|
data/lib/olivander/engine.rb
CHANGED
@@ -3,7 +3,7 @@ module Olivander
|
|
3
3
|
isolate_namespace Olivander
|
4
4
|
|
5
5
|
initializer "olivander.assets.precompile" do |app|
|
6
|
-
app.config.assets.precompile += %w
|
6
|
+
app.config.assets.precompile += %w[adminlte.js adminlte.css avatar0.png avatar1.png avatar2.png avatar3.png avatar4.png]
|
7
7
|
end
|
8
8
|
|
9
9
|
initializer "olivander.action_controller" do |app|
|
data/lib/olivander/version.rb
CHANGED
data/lib/olivander.rb
CHANGED
@@ -2,7 +2,11 @@ require 'olivander/version'
|
|
2
2
|
require 'olivander/engine'
|
3
3
|
require 'olivander/application_context'
|
4
4
|
require 'olivander/menus'
|
5
|
+
require 'pathname'
|
5
6
|
|
6
7
|
module Olivander
|
7
|
-
#
|
8
|
+
# Root pathname to get the path of Olivander files like templates or dictionaries
|
9
|
+
def self.root
|
10
|
+
@root ||= Pathname.new(__dir__).freeze
|
11
|
+
end
|
8
12
|
end
|
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.45
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eric Dennis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-01-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: chartkick
|
@@ -80,6 +80,20 @@ dependencies:
|
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '2.0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: net-http
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: rails
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -149,6 +163,10 @@ files:
|
|
149
163
|
- app/assets/fonts/fa-solid-900.ttf
|
150
164
|
- app/assets/fonts/fa-solid-900.woff
|
151
165
|
- app/assets/fonts/fa-solid-900.woff2
|
166
|
+
- app/assets/fonts/summernote.eot
|
167
|
+
- app/assets/fonts/summernote.ttf
|
168
|
+
- app/assets/fonts/summernote.woff
|
169
|
+
- app/assets/fonts/summernote.woff2
|
152
170
|
- app/assets/images/avatar0.png
|
153
171
|
- app/assets/images/avatar1.png
|
154
172
|
- app/assets/images/avatar2.png
|
@@ -177,70 +195,7 @@ files:
|
|
177
195
|
- app/assets/javascripts/adminlte/plugins/select2/css/select2-bootstrap4.min.css
|
178
196
|
- app/assets/javascripts/adminlte/plugins/select2/css/select2.css
|
179
197
|
- app/assets/javascripts/adminlte/plugins/select2/css/select2.min.css
|
180
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/af.js
|
181
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/ar.js
|
182
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/az.js
|
183
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/bg.js
|
184
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/bn.js
|
185
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/bs.js
|
186
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/build.txt
|
187
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/ca.js
|
188
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/cs.js
|
189
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/da.js
|
190
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/de.js
|
191
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/dsb.js
|
192
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/el.js
|
193
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/en.js
|
194
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/es.js
|
195
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/et.js
|
196
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/eu.js
|
197
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/fa.js
|
198
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/fi.js
|
199
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/fr.js
|
200
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/gl.js
|
201
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/he.js
|
202
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/hi.js
|
203
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/hr.js
|
204
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/hsb.js
|
205
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/hu.js
|
206
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/hy.js
|
207
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/id.js
|
208
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/is.js
|
209
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/it.js
|
210
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/ja.js
|
211
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/ka.js
|
212
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/km.js
|
213
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/ko.js
|
214
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/lt.js
|
215
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/lv.js
|
216
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/mk.js
|
217
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/ms.js
|
218
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/nb.js
|
219
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/ne.js
|
220
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/nl.js
|
221
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/pl.js
|
222
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/ps.js
|
223
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/pt-BR.js
|
224
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/pt.js
|
225
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/ro.js
|
226
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/ru.js
|
227
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/sk.js
|
228
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/sl.js
|
229
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/sq.js
|
230
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/sr-Cyrl.js
|
231
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/sr.js
|
232
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/sv.js
|
233
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/th.js
|
234
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/tk.js
|
235
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/tr.js
|
236
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/uk.js
|
237
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/vi.js
|
238
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/zh-CN.js
|
239
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/i18n/zh-TW.js
|
240
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/select2.full.js
|
241
198
|
- app/assets/javascripts/adminlte/plugins/select2/js/select2.full.min.js
|
242
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/select2.js
|
243
|
-
- app/assets/javascripts/adminlte/plugins/select2/js/select2.min.js
|
244
199
|
- app/assets/javascripts/adminlte/plugins/sparklines/sparkline.js
|
245
200
|
- app/assets/javascripts/adminlte/plugins/summernote/summernote-bs4.min.css
|
246
201
|
- app/assets/javascripts/adminlte/plugins/summernote/summernote-bs4.min.js
|
@@ -249,7 +204,6 @@ files:
|
|
249
204
|
- app/assets/javascripts/adminlte/plugins/tempusdominus-bootstrap-4/css/tempusdominus-bootstrap-4.min.css
|
250
205
|
- app/assets/javascripts/adminlte/plugins/tempusdominus-bootstrap-4/js/tempusdominus-bootstrap-4.min.js
|
251
206
|
- app/assets/javascripts/adminlte/select2_defaults.coffee
|
252
|
-
- app/assets/javascripts/controllers/refresh_datatable_controller.js
|
253
207
|
- app/assets/stylesheets/adminlte.css
|
254
208
|
- app/assets/stylesheets/fa-fix.scss
|
255
209
|
- app/assets/stylesheets/olivander/application.css
|
@@ -269,14 +223,11 @@ files:
|
|
269
223
|
- app/components/olivander/components/table_portlet_component.rb
|
270
224
|
- app/components/olivander/components/table_portlet_component/table_component.html.haml
|
271
225
|
- app/controllers/concerns/olivander/resources/auto_form_attributes.rb
|
272
|
-
- app/controllers/concerns/olivander/resources/model_registrar.rb
|
273
|
-
- app/controllers/concerns/olivander/resources/model_registry.rb
|
274
226
|
- app/controllers/concerns/olivander/resources/route_builder.rb
|
275
227
|
- app/controllers/olivander/application_controller.rb
|
276
228
|
- app/datatables/olivander/datatable.rb
|
277
229
|
- app/helpers/olivander/application_helper.rb
|
278
230
|
- app/inputs/date_time_input.rb
|
279
|
-
- app/javascript/controllers/refresh_datatable_controller.js
|
280
231
|
- app/jobs/olivander/application_job.rb
|
281
232
|
- app/mailers/olivander/application_mailer.rb
|
282
233
|
- app/models/olivander/application_record.rb
|
@@ -1,3 +0,0 @@
|
|
1
|
-
/*! Select2 4.0.13 | https://github.com/select2/select2/blob/master/LICENSE.md */
|
2
|
-
|
3
|
-
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;e.define("select2/i18n/af",[],function(){return{errorLoading:function(){return"Die resultate kon nie gelaai word nie."},inputTooLong:function(e){var n=e.input.length-e.maximum,r="Verwyders asseblief "+n+" character";return 1!=n&&(r+="s"),r},inputTooShort:function(e){return"Voer asseblief "+(e.minimum-e.input.length)+" of meer karakters"},loadingMore:function(){return"Meer resultate word gelaai…"},maximumSelected:function(e){var n="Kies asseblief net "+e.maximum+" item";return 1!=e.maximum&&(n+="s"),n},noResults:function(){return"Geen resultate gevind"},searching:function(){return"Besig…"},removeAllItems:function(){return"Verwyder alle items"}}}),e.define,e.require}();
|
@@ -1,3 +0,0 @@
|
|
1
|
-
/*! Select2 4.0.13 | https://github.com/select2/select2/blob/master/LICENSE.md */
|
2
|
-
|
3
|
-
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/ar",[],function(){return{errorLoading:function(){return"لا يمكن تحميل النتائج"},inputTooLong:function(n){return"الرجاء حذف "+(n.input.length-n.maximum)+" عناصر"},inputTooShort:function(n){return"الرجاء إضافة "+(n.minimum-n.input.length)+" عناصر"},loadingMore:function(){return"جاري تحميل نتائج إضافية..."},maximumSelected:function(n){return"تستطيع إختيار "+n.maximum+" بنود فقط"},noResults:function(){return"لم يتم العثور على أي نتائج"},searching:function(){return"جاري البحث…"},removeAllItems:function(){return"قم بإزالة كل العناصر"}}}),n.define,n.require}();
|
@@ -1,3 +0,0 @@
|
|
1
|
-
/*! Select2 4.0.13 | https://github.com/select2/select2/blob/master/LICENSE.md */
|
2
|
-
|
3
|
-
!function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var n=jQuery.fn.select2.amd;n.define("select2/i18n/az",[],function(){return{inputTooLong:function(n){return n.input.length-n.maximum+" simvol silin"},inputTooShort:function(n){return n.minimum-n.input.length+" simvol daxil edin"},loadingMore:function(){return"Daha çox nəticə yüklənir…"},maximumSelected:function(n){return"Sadəcə "+n.maximum+" element seçə bilərsiniz"},noResults:function(){return"Nəticə tapılmadı"},searching:function(){return"Axtarılır…"},removeAllItems:function(){return"Bütün elementləri sil"}}}),n.define,n.require}();
|