Sha256: c0000f967babc9bba3b6ab9980f3db635a99113ca2a98a6f28de127ef7c532f5
Contents?: true
Size: 969 Bytes
Versions: 2
Compression:
Stored size: 969 Bytes
Contents
class PagesController < ApplicationController include SpudCmsLayoutActions respond_to :html before_action :set_default_content_type def show # prevents 500 errors if a url like "/home.jpg" is hit if request.format != :html render_404 return end url_name = !params[:id].blank? ? params[:id] : Spud::Cms.root_page_name @page = SpudPage.published_pages.find_ignoring_case(url_name) if @page.blank? render_404 return end if @page.is_private? return if defined?(require_user) && require_user == false end layout = @page.layout || Spud::Cms.default_page_layout action_name = "#{layout}_action" send(action_name, request.method.downcase.to_sym) if respond_to?(action_name) render layout: layout end private def render_404 raise TbCore::NotFoundError, item: 'page' end def set_default_content_type request.format = :html if params[:format].blank? end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
tb_cms-1.3.6 | app/controllers/pages_controller.rb |
tb_cms-1.3.5 | app/controllers/pages_controller.rb |