Class: CamaleonCms::ApplicationDecorator
- Inherits:
-
Draper::Decorator
- Object
- Draper::Decorator
- CamaleonCms::ApplicationDecorator
- Includes:
- MetasDecoratorMethods
- Defined in:
- app/decorators/camaleon_cms/application_decorator.rb
Direct Known Subclasses
PostDecorator, TermTaxonomyDecorator, UserDecorator, UserRoleDecorator
Instance Method Summary collapse
-
#_calc_locale(_l) ⇒ Object
return the current locale prefixed to add in frontend routes.
-
#get_locale(locale = nil) ⇒ Object
Admin requests can render frontend URLs from the dashboard, so prefer the cached frontend locale before falling back to the current I18n locale.
- #marshal_dump ⇒ Object
- #marshal_load(obj) ⇒ Object
-
#set_decoration_locale(locale) ⇒ Object
---------------------.
-
#the_breadcrumb(add_post_type = true) ⇒ Object
draw breadcrumb for this model add_post_type: true/false to include post type link.
-
#the_created_at(format = :long) ⇒ Object
return created at date formatted.
-
#the_id ⇒ Object
return the identifier.
-
#the_keywords ⇒ Object
return the keywords for this model.
- #the_slug(locale = nil) ⇒ Object
-
#the_updated_at(format = :long) ⇒ Object
return updated at date formatted.
Methods included from MetasDecoratorMethods
Instance Method Details
#_calc_locale(_l) ⇒ Object
return the current locale prefixed to add in frontend routes
65 66 67 68 69 70 71 72 73 |
# File 'app/decorators/camaleon_cms/application_decorator.rb', line 65 def _calc_locale(_l) frontend_locale = begin h.cama_get_i18n_frontend rescue NoMethodError nil end _l = (_l || @_deco_locale || frontend_locale || I18n.locale).to_s "_#{_l}" end |
#get_locale(locale = nil) ⇒ Object
Admin requests can render frontend URLs from the dashboard, so prefer the cached frontend locale before falling back to the current I18n locale.
55 56 57 58 59 60 61 62 |
# File 'app/decorators/camaleon_cms/application_decorator.rb', line 55 def get_locale(locale = nil) frontend_locale = begin h.cama_get_i18n_frontend rescue NoMethodError nil end locale || @_deco_locale || frontend_locale || I18n.locale end |
#marshal_dump ⇒ Object
7 8 9 |
# File 'app/decorators/camaleon_cms/application_decorator.rb', line 7 def marshal_dump @object end |
#marshal_load(obj) ⇒ Object
11 12 13 |
# File 'app/decorators/camaleon_cms/application_decorator.rb', line 11 def marshal_load(obj) @object = obj end |
#set_decoration_locale(locale) ⇒ Object
49 50 51 |
# File 'app/decorators/camaleon_cms/application_decorator.rb', line 49 def set_decoration_locale(locale) @_deco_locale = locale.to_sym end |
#the_breadcrumb(add_post_type = true) ⇒ Object
draw breadcrumb for this model add_post_type: true/false to include post type link
43 44 45 46 |
# File 'app/decorators/camaleon_cms/application_decorator.rb', line 43 def (add_post_type = true) (add_post_type) h. end |
#the_created_at(format = :long) ⇒ Object
return created at date formatted
32 33 34 |
# File 'app/decorators/camaleon_cms/application_decorator.rb', line 32 def the_created_at(format = :long) h.l(object.created_at, format: format.to_sym) end |
#the_id ⇒ Object
return the identifier
27 28 29 |
# File 'app/decorators/camaleon_cms/application_decorator.rb', line 27 def the_id object.id.to_s end |
#the_keywords ⇒ Object
return the keywords for this model
16 17 18 19 20 |
# File 'app/decorators/camaleon_cms/application_decorator.rb', line 16 def the_keywords k = object.get_option('keywords', '') k = h.current_site.the_keywords if object.class.name != 'CamaleonCms::Site' && k.blank? k.to_s.translate(get_locale) end |
#the_slug(locale = nil) ⇒ Object
22 23 24 |
# File 'app/decorators/camaleon_cms/application_decorator.rb', line 22 def the_slug(locale = nil) object.slug.translate(get_locale(locale)) end |
#the_updated_at(format = :long) ⇒ Object
return updated at date formatted
37 38 39 |
# File 'app/decorators/camaleon_cms/application_decorator.rb', line 37 def the_updated_at(format = :long) h.l(object.updated_at, format: format.to_sym) end |