cmor_core 0.0.54.pre → 0.0.59.pre

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: 42ce1390b38d3ef90beb44794fbddf1c72578975f71cdf7deaab3e09662df2b4
4
- data.tar.gz: a4b519f29b180983b14bd966738c37b37fecdb562c5ed4b6c72b694b568ac382
3
+ metadata.gz: 0a90f86e10b32eeb1836a0b6a8c7cf209e31036d21c11ff363bda7d3d323abde
4
+ data.tar.gz: ead75dcd8d132699d375b8b2151b618f2898796fe0ef45b5bc326d4927cd865f
5
5
  SHA512:
6
- metadata.gz: b23e504288131b5b978f7f81ba545a216511dc51cad5a39aaf8ffdaecf8d2acfb88fa67ab9195232b4124ccb63dba607ae812ab1009df99bc3e8a84927cd68f0
7
- data.tar.gz: 62328b7904d2c0b2ea633ee29439800c0403332ade25cf2f7330f55b33fea438e6185be6f35c9985beb98aebb0d9c87fc0ff01310517fc0b57951075bafa30e9
6
+ metadata.gz: d92a51e6cf209b8fb79243bea0b594ec2b70f1b25a0e97a9d229e295376eec653e710cdd147e6a2e10cc10a2f54ab34b31ef8e36ebbae7ef00b8d2c6947f1ffe
7
+ data.tar.gz: 7ba5e6dc4dc1d0fa3ac52bc4d880d3a2b3a0474cc3d5fe9bd157e7700aac4d11c7312181e8d893decd9ce91400d5865ac5e005d2496e01a7f6d832021015fe32
@@ -36,6 +36,45 @@ module Cmor
36
36
  end
37
37
 
38
38
  include FlashConcern
39
+
40
+ module PageTitleConcern
41
+ extend ActiveSupport::Concern
42
+
43
+ def application_title
44
+ t("#{Rails.application.class.to_s.deconstantize.underscore}.application.name")
45
+ end
46
+
47
+ def page_title
48
+ page_title = t(page_title_i18n_key, default: page_title_fallbacks)
49
+ [application_title, page_title].join(" - ")
50
+ end
51
+
52
+ private
53
+
54
+ def page_title_fallbacks
55
+ page_title_from_content || page_title_from_resource
56
+ end
57
+
58
+ def page_title_i18n_key
59
+ splitted_controller_name = c.params[:controller].split('/')
60
+ controller_namespace = splitted_controller_name[0..1].join('.')
61
+ controller_demodulized_name = splitted_controller_name.last
62
+
63
+ [controller_namespace, 'pages', controller_demodulized_name, c.controller.action_name].join('.')
64
+ end
65
+
66
+ def page_title_from_resource
67
+ if(resource = c.controller.instance_variable_get(:@resource)).respond_to?(:title)
68
+ resource.title
69
+ end
70
+ end
71
+
72
+ def page_title_from_content
73
+ c.content_for(:title)
74
+ end
75
+ end
76
+
77
+ include PageTitleConcern
39
78
  end
40
79
  end
41
- end
80
+ end
@@ -1,5 +1,5 @@
1
1
  - messages.each do |type, content|
2
2
  .alert.alert-dismissible.fade.show{ role: "alert", class: "alert-#{type}"}
3
- = content
3
+ = content.html_safe
4
4
  %button.close{"aria-label" => "Close", "data-dismiss" => "alert", :type => "button"}
5
5
  %span{"aria-hidden" => "true"} ×
@@ -5,7 +5,7 @@ module Cmor
5
5
  extend ActiveSupport::Concern
6
6
 
7
7
  included do
8
- validates :locale, inclusion: { in: I18n.available_locales.map(&:to_s) }, allow_nil: true, allow_blank: true
8
+ validates :locale, inclusion: { in: I18n.available_locales.map(&:to_s) }, allow_nil: true
9
9
 
10
10
  scope :for_locale, ->(locale = I18n.locale, options = {}) do
11
11
  options.reverse_merge!(include_without_locale: true)
@@ -16,6 +16,11 @@ module Cmor
16
16
  where(locale: locale)
17
17
  end
18
18
  end
19
+
20
+ # We have to override the setter for the locale to avoid empty strings as locale value.
21
+ def locale=(value)
22
+ super(value.blank? ? nil : value)
23
+ end
19
24
  end
20
25
  end
21
26
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cmor_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.54.pre
4
+ version: 0.0.59.pre
5
5
  platform: ruby
6
6
  authors:
7
7
  - Roberto Vasquez Angel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-05-20 00:00:00.000000000 Z
11
+ date: 2020-08-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - '='
32
32
  - !ruby/object:Gem::Version
33
- version: 0.0.54.pre
33
+ version: 0.0.59.pre
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
- version: 0.0.54.pre
40
+ version: 0.0.59.pre
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: delayed_job_active_record
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -369,7 +369,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
369
369
  - !ruby/object:Gem::Version
370
370
  version: 1.3.1
371
371
  requirements: []
372
- rubygems_version: 3.1.3
372
+ rubygems_version: 3.1.4
373
373
  signing_key:
374
374
  specification_version: 4
375
375
  summary: Cmor Core Module.