lato_settings 3.0.2 → 3.0.3
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.
- checksums.yaml +4 -4
- data/app/controllers/lato_settings/application_controller.rb +1 -1
- data/app/helpers/lato_settings/settings_helper.rb +6 -0
- data/app/models/lato_settings/setting.rb +5 -19
- data/app/views/lato_settings/settings/_form.html.erb +10 -8
- data/lib/lato_settings/version.rb +1 -1
- data/lib/lato_settings.rb +27 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9f13fef2e4c2fd7f13af8b268f8d4cf7dc61bf61224fbd30f2453ea735e7a2df
|
4
|
+
data.tar.gz: 7183ed20e93e11bb9f9306e7f80017a38831f08d9c4042c0da43ccec3077804c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f1714c04b34ef6b7d7aa7687e0c55e045a6c3cf7a1a868fc319eb05eaf5ea40afd22ee248e0861299604032742767fece921d06f6237da9993063ae3a3a3366b
|
7
|
+
data.tar.gz: 4f36b0730a7e2ec348fa9d840b18751a821924f2ebe616e3571bfeceefd8d64d5b006ab6a510d03d53576de44df029dceaafa7f2f8c78c2db8c651f709dc9900
|
@@ -12,7 +12,7 @@ module LatoSettings
|
|
12
12
|
protected
|
13
13
|
|
14
14
|
def authenticate_lato_settings_admin
|
15
|
-
return true if @session.user
|
15
|
+
return true if @session.user&.lato_settings_admin
|
16
16
|
|
17
17
|
redirect_to lato.root_path, alert: 'You have not access to this section.'
|
18
18
|
end
|
@@ -1,5 +1,11 @@
|
|
1
1
|
module LatoSettings
|
2
2
|
module SettingsHelper
|
3
|
+
def lato_settings_setting_key(setting)
|
4
|
+
content_tag(:span, class: 'font-monospace') do
|
5
|
+
setting.key
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
3
9
|
def lato_settings_setting_label(setting)
|
4
10
|
content_tag(:div, class: 'd-flex flex-column') do
|
5
11
|
concat content_tag(:strong, setting.label)
|
@@ -30,8 +30,7 @@ module LatoSettings
|
|
30
30
|
after_save :reload_cache
|
31
31
|
after_destroy :reload_cache
|
32
32
|
def reload_cache
|
33
|
-
|
34
|
-
@@cache = nil
|
33
|
+
LatoSettings.reset_cache
|
35
34
|
end
|
36
35
|
|
37
36
|
# Helpers
|
@@ -57,26 +56,13 @@ module LatoSettings
|
|
57
56
|
##
|
58
57
|
|
59
58
|
def self.get(key, default = nil)
|
60
|
-
|
61
|
-
|
62
|
-
@@cache[key] || default
|
59
|
+
Rails.logger.warn "LatoSettings.get is deprecated. Use LatoSettings.get instead."
|
60
|
+
LatoSettings.get(key, default)
|
63
61
|
end
|
64
62
|
|
65
63
|
def self.load_cache
|
66
|
-
|
67
|
-
|
68
|
-
@@cache = Rails.cache.fetch('LatoSettings::Setting/cache') do
|
69
|
-
cache = {}
|
70
|
-
LatoSettings::Setting.all.select(:key, :value, :typology).each do |setting|
|
71
|
-
cache[setting.key] = setting.value
|
72
|
-
cache[setting.key] = setting.value.to_f if setting.typology_number?
|
73
|
-
end
|
74
|
-
|
75
|
-
cache
|
76
|
-
end
|
77
|
-
|
78
|
-
true
|
64
|
+
Rails.logger.warn "LatoSettings.load_cache is deprecated. Use LatoSettings.reset_cache instead."
|
65
|
+
LatoSettings.reset_cache
|
79
66
|
end
|
80
|
-
|
81
67
|
end
|
82
68
|
end
|
@@ -12,9 +12,16 @@ setting ||= LatoSettings::Setting.new
|
|
12
12
|
<% if setting.typology %>
|
13
13
|
<%= form.hidden_field :typology %>
|
14
14
|
|
15
|
-
<div class="
|
16
|
-
|
17
|
-
|
15
|
+
<div class="row">
|
16
|
+
<div class="col col-12 col-md-6 mb-3">
|
17
|
+
<%= lato_form_item_label form, :key %>
|
18
|
+
<%= lato_form_item_input_text form, :key, required: true, disabled: setting.persisted? %>
|
19
|
+
</div>
|
20
|
+
|
21
|
+
<div class="col col-12 col-md-6 mb-3">
|
22
|
+
<%= lato_form_item_label form, :label %>
|
23
|
+
<%= lato_form_item_input_text form, :label, required: true %>
|
24
|
+
</div>
|
18
25
|
</div>
|
19
26
|
|
20
27
|
<% if setting.typology == 'number' %>
|
@@ -39,11 +46,6 @@ setting ||= LatoSettings::Setting.new
|
|
39
46
|
</div>
|
40
47
|
<% end %>
|
41
48
|
|
42
|
-
<div class="mb-3">
|
43
|
-
<%= lato_form_item_label form, :label %>
|
44
|
-
<%= lato_form_item_input_text form, :label, required: true %>
|
45
|
-
</div>
|
46
|
-
|
47
49
|
<div class="mb-3">
|
48
50
|
<%= lato_form_item_label form, :description %>
|
49
51
|
<%= lato_form_item_input_textarea form, :description %>
|
data/lib/lato_settings.rb
CHANGED
@@ -11,5 +11,32 @@ module LatoSettings
|
|
11
11
|
def configure
|
12
12
|
yield config
|
13
13
|
end
|
14
|
+
|
15
|
+
def get(key, default = nil)
|
16
|
+
load_cache
|
17
|
+
|
18
|
+
@cache[key] || default
|
19
|
+
end
|
20
|
+
|
21
|
+
def load_cache
|
22
|
+
return true if defined?(@cache) && @cache
|
23
|
+
|
24
|
+
@cache = Rails.cache.fetch('LatoSettings/cache') do
|
25
|
+
cache = {}
|
26
|
+
LatoSettings::Setting.all.select(:key, :value, :typology).each do |setting|
|
27
|
+
cache[setting.key] = setting.value
|
28
|
+
cache[setting.key] = setting.value.to_f if setting.typology_number?
|
29
|
+
end
|
30
|
+
|
31
|
+
cache
|
32
|
+
end
|
33
|
+
|
34
|
+
@cache
|
35
|
+
end
|
36
|
+
|
37
|
+
def reset_cache
|
38
|
+
@cache = nil
|
39
|
+
Rails.cache.delete('LatoSettings/cache')
|
40
|
+
end
|
14
41
|
end
|
15
42
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lato_settings
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gregorio Galante
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-04-
|
11
|
+
date: 2025-04-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|