Class: Locomotive::PagePolicy

Inherits:
ApplicationPolicy show all
Defined in:
app/policies/locomotive/page_policy.rb

Instance Attribute Summary

Attributes inherited from ApplicationPolicy

#membership, #resource

Instance Method Summary collapse

Methods inherited from ApplicationPolicy

#destroy_all?, #edit?, #initialize, #new?, #show?, #site_admin?, #site_admin_or_designer?, #site_staff?, #super_admin?

Constructor Details

This class inherits a constructor from Locomotive::ApplicationPolicy

Instance Method Details

#create?Boolean

Returns:



8
9
10
# File 'app/policies/locomotive/page_policy.rb', line 8

def create?
  site_staff?
end

#destroy?Boolean

Returns:



16
17
18
# File 'app/policies/locomotive/page_policy.rb', line 16

def destroy?
  site_staff? && !@resource.index_or_not_found?
end

#index?Boolean

Returns:



4
5
6
# File 'app/policies/locomotive/page_policy.rb', line 4

def index?
  site_staff?
end

#permitted_attributesObject



20
21
22
23
24
# File 'app/policies/locomotive/page_policy.rb', line 20

def permitted_attributes
  attributes = [:title, :layout_id, :slug, :parent_id, :listed, :published, :redirect, :redirect_url, :redirect_type, :seo_title, :meta_description, :meta_keywords, :cache_enabled]
  attributes += [:handle] if site_admin_or_designer?
  attributes
end

#update?Boolean

Returns:



12
13
14
# File 'app/policies/locomotive/page_policy.rb', line 12

def update?
  site_staff?
end