orbit-basic/app/controllers/pages_controller.rb

25 lines
814 B
Ruby

class PagesController < ApplicationController
Liquid::Template.register_filter(SnippetFilter)
def show
@page = Page.find(:first, :conditions => { :name => params[:page_name], :is_published => true })
if @page && !@page.external_link.blank?
redirect_to @page.external_link
elsif @page && @page.use_engine
#model_class = Kernel.const_get( "Announcement" ) # page.use_engine
redirect_to announcements_path
elsif @page
@layout = @page.layout
@page_content = Liquid::Template.parse(@page.content).render
@layout_content = (@page.layout)? @layout.content : "{{page_content}}"
render :text => Liquid::Template.parse(@layout_content).render( 'page_content' => @page_content )
else
render :text => '404 not found'
end
end
end