Files
mozo-backend/app/models/page.rb
T

26 lines
638 B
Ruby

require 'null_model'
class Page
include Cmtool::Includes::Page
include ActiveModel::SerializerSupport
def self.layouts
%w[theme1 theme1-home theme1-with-subnavigation]
end
def self.suppliers_page(name, locale: :en)
find_by_name_and_locale("suppliers-#{name}", locale) || NullPage.new(name, locale: locale)
end
class NullPage < NullModel
attr_reader :name, :locale, :title, :body
def initialize(name, locale: 'en')
@name = name
@locale = locale
@body = ::I18n.t('page.not_found', locale: locale)
end
def title
@title ||= name.to_s.humanize.gsub(/\W/, ' ')
end
end
end