Module: Postnhost::SettingsHelper

Included in:
SeoHelper
Defined in:
app/helpers/postnhost/settings_helper.rb

Constant Summary collapse

DEFAULT_SITE_LOGO_PATH =
"postnhost/logo.webp".freeze
DEFAULT_OG_IMAGE_PATH =
"postnhost/og-image.webp".freeze
SITE_COPY_LABELS =
{
  "postnhost.public.site.schema_site_name" => "Site Name",
  "postnhost.public.site.blog_tagline" => "Tagline",
  "postnhost.public.site.blog_subtitle" => "Subtitle",
  "postnhost.public.site.blog_meta_title" => "Meta Title",
  "postnhost.public.site.blog_meta_description" => "Meta Description"
}.freeze

Instance Method Summary collapse

Instance Method Details

#cms_template_optionsObject



55
56
57
58
59
60
61
# File 'app/helpers/postnhost/settings_helper.rb', line 55

def cms_template_options
  [
    ["Default", "default"],
    ["Swiss Editorial", "swiss-editorial"],
    ["Workspace Journal", "workspace-journal"]
  ]
end

#postnhost_timezone_optionsObject



38
39
40
# File 'app/helpers/postnhost/settings_helper.rb', line 38

def postnhost_timezone_options
  ActiveSupport::TimeZone.all.map { |timezone| ["(UTC#{timezone.formatted_offset}) #{timezone.name}", timezone.tzinfo.name] }
end

#render_site_scripts(placement) ⇒ Object



33
34
35
36
# File 'app/helpers/postnhost/settings_helper.rb', line 33

def render_site_scripts(placement)
  scripts = site_scripts_by_placement.fetch(placement, [])
  safe_join(scripts.map { |site_script| site_script.script.to_s.html_safe }, "\n")
end

#setting_og_image_absolute_urlObject



28
29
30
31
# File 'app/helpers/postnhost/settings_helper.rb', line 28

def setting_og_image_absolute_url
  setting = setting_current
  setting&.og_image? ? setting.og_image.url : asset_url(DEFAULT_OG_IMAGE_PATH)
end

#setting_og_image_srcObject



18
19
20
21
# File 'app/helpers/postnhost/settings_helper.rb', line 18

def setting_og_image_src
  setting = setting_current
  setting&.og_image? ? setting.og_image.url : DEFAULT_OG_IMAGE_PATH
end

#setting_site_logo_absolute_urlObject



23
24
25
26
# File 'app/helpers/postnhost/settings_helper.rb', line 23

def setting_site_logo_absolute_url
  setting = setting_current
  setting&.site_logo? ? setting..url : asset_url(DEFAULT_SITE_LOGO_PATH)
end

#setting_site_logo_srcObject



13
14
15
16
# File 'app/helpers/postnhost/settings_helper.rb', line 13

def setting_site_logo_src
  setting = setting_current
  setting&.site_logo? ? setting..url : DEFAULT_SITE_LOGO_PATH
end

#site_copy_label(key, include_key: false) ⇒ Object



50
51
52
53
# File 'app/helpers/postnhost/settings_helper.rb', line 50

def site_copy_label(key, include_key: false)
  label = SITE_COPY_LABELS.fetch(key, key)
  include_key && label != key ? "#{label} (#{key})" : label
end

#translation_entries_advancedObject



46
47
48
# File 'app/helpers/postnhost/settings_helper.rb', line 46

def translation_entries_advanced
  translation_entries_site_and_advanced.last
end

#translation_entries_primaryObject



42
43
44
# File 'app/helpers/postnhost/settings_helper.rb', line 42

def translation_entries_primary
  translation_entries_site_and_advanced.first
end