lato_settings 3.0.1 → 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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fd5d83c3bb221be49d1636650583441d836c508049df3015b2e9725914b50adc
4
- data.tar.gz: 02a1ddf4f5e16a95341c3dd363c81d8ae3836a1ad36f6c2f2dd21e627c7345c6
3
+ metadata.gz: 9f13fef2e4c2fd7f13af8b268f8d4cf7dc61bf61224fbd30f2453ea735e7a2df
4
+ data.tar.gz: 7183ed20e93e11bb9f9306e7f80017a38831f08d9c4042c0da43ccec3077804c
5
5
  SHA512:
6
- metadata.gz: 5d2828a713f453a2e99b5cefb93435681a76fd9946423801c9c20c052b588b912160199384cf2dbce1ca22f2e09d96c1cad5d273bcc5ea3a8e9bdadc19ca1769
7
- data.tar.gz: ac8627afecf54c4dc66133585d7183eec305b3d3e547a65411e5b41f8cccbc77cd5733537bd340254e902c774a8a750285affbdf5326bfb05e70a91c13cdcf57
6
+ metadata.gz: f1714c04b34ef6b7d7aa7687e0c55e045a6c3cf7a1a868fc319eb05eaf5ea40afd22ee248e0861299604032742767fece921d06f6237da9993063ae3a3a3366b
7
+ data.tar.gz: 4f36b0730a7e2ec348fa9d840b18751a821924f2ebe616e3571bfeceefd8d64d5b006ab6a510d03d53576de44df029dceaafa7f2f8c78c2db8c651f709dc9900
data/README.md CHANGED
@@ -29,6 +29,13 @@ Rails.application.routes.draw do
29
29
  end
30
30
  ```
31
31
 
32
+ Import Lato Scss on **app/assets/stylesheets/application.scss** file:
33
+ ```scss
34
+ @import 'lato_settings/application';
35
+
36
+ // ....
37
+ ```
38
+
32
39
  Import Lato Settings Js on **app/javascript/application.js** file:
33
40
  ```js
34
41
  import "lato_settings/application";
@@ -12,7 +12,7 @@ module LatoSettings
12
12
  protected
13
13
 
14
14
  def authenticate_lato_settings_admin
15
- return true if @session.user.lato_settings_admin
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
- Rails.cache.delete('LatoSettings::Setting/cache')
34
- @@cache = nil
33
+ LatoSettings.reset_cache
35
34
  end
36
35
 
37
36
  # Helpers
@@ -57,25 +56,13 @@ module LatoSettings
57
56
  ##
58
57
 
59
58
  def self.get(key, default = nil)
60
- load_cache
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
- return true if defined?(@@cache) && @@cache
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
- end
73
-
74
- cache
75
- end
76
-
77
- true
64
+ Rails.logger.warn "LatoSettings.load_cache is deprecated. Use LatoSettings.reset_cache instead."
65
+ LatoSettings.reset_cache
78
66
  end
79
-
80
67
  end
81
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="mb-3">
16
- <%= lato_form_item_label form, :key %>
17
- <%= lato_form_item_input_text form, :key, required: true, disabled: setting.persisted? %>
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 %>
@@ -1,3 +1,3 @@
1
1
  module LatoSettings
2
- VERSION = "3.0.1"
2
+ VERSION = "3.0.3"
3
3
  end
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.1
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-03-29 00:00:00.000000000 Z
11
+ date: 2025-04-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails