Sha256: d59894d4680f7a400afe5177b5af3b4578d86e49c33918470b48f31e4ee25243
Contents?: true
Size: 1.5 KB
Versions: 1
Compression:
Stored size: 1.5 KB
Contents
module Effective class PagesController < ApplicationController before_action(:authenticate_user!) if defined?(Devise) && EffectiveResources.authenticate_user include Effective::CrudController def show @pages = Effective::Page.all @pages = @pages.published unless EffectiveResources.authorized?(self, :admin, :effective_pages) @page = @pages.find(params[:id]) raise ActiveRecord::RecordNotFound unless @page.present? # Incase .find() isn't raising it raise Effective::AccessDenied.new('Access Denied', :show, @page) unless @page.roles_permit?(current_user) EffectiveResources.authorize!(self, :show, @page) @page_title = @page.title @meta_description = @page.meta_description @canonical_url = effective_pages.page_url(@page) if EffectiveResources.authorized?(self, :admin, :effective_pages) flash.now[:warning] = [ 'Hi Admin!', ('You are viewing a hidden page.' unless @page.published?), 'Click here to', ("<a href='#{effective_pages.edit_admin_page_path(@page)}' class='alert-link'>edit page settings</a>.") ].compact.join(' ') end template = File.join(EffectivePages.pages_path, @page.template) layout = (@page.layout.presence || resource_layout) render(template, layout: layout, locals: { page: @page }) end private def admin_edit? EffectiveResources.authorized?(self, :admin, :effective_pages) && (params[:edit].to_s == 'true') end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
effective_pages-3.0.0 | app/controllers/effective/pages_controller.rb |