Module: LinkedRails::Policy

Extended by:
ActiveSupport::Concern
Included in:
ApplicationPolicy
Defined in:
lib/linked_rails/policy.rb,
lib/linked_rails/policy/attribute_conditions.rb

Defined Under Namespace

Modules: AttributeConditions, ClassMethods

Instance Method Summary collapse

Instance Method Details

#create?Boolean

Returns:

  • (Boolean)


61
62
63
# File 'lib/linked_rails/policy.rb', line 61

def create?
  false
end

#create_child?(klass, **opts) ⇒ Boolean

Returns:

  • (Boolean)


26
27
28
# File 'lib/linked_rails/policy.rb', line 26

def create_child?(klass, **opts)
  child_policy(klass, **opts).create?
end

#destroy?Boolean

Returns:

  • (Boolean)


65
66
67
# File 'lib/linked_rails/policy.rb', line 65

def destroy?
  false
end

#index_children?(klass, **opts) ⇒ Boolean

Returns:

  • (Boolean)


30
31
32
# File 'lib/linked_rails/policy.rb', line 30

def index_children?(klass, **opts)
  child_policy(klass, **opts).show?
end

#permitted_attributesObject



34
35
36
37
38
39
# File 'lib/linked_rails/policy.rb', line 34

def permitted_attributes
  self.class.permitted_attributes
    .select { |opts| attribute_permitted?(opts[:conditions]) }
    .map { |opts| sanitized_attributes(opts[:attributes], opts[:options] || {}) }
    .flatten
end

#permitted_attributes_from_filters(filters) ⇒ Object



41
42
43
# File 'lib/linked_rails/policy.rb', line 41

def permitted_attributes_from_filters(filters)
  params_parser(filters).attributes_from_filters(policy_class).permit(permitted_attributes)
end

#policy_classObject



45
46
47
# File 'lib/linked_rails/policy.rb', line 45

def policy_class
  self.class.policy_class
end

#public_resource?Boolean

Returns:

  • (Boolean)


49
50
51
# File 'lib/linked_rails/policy.rb', line 49

def public_resource?
  false
end

#show?Boolean

Returns:

  • (Boolean)


53
54
55
# File 'lib/linked_rails/policy.rb', line 53

def show?
  false
end

#update?Boolean

Returns:

  • (Boolean)


57
58
59
# File 'lib/linked_rails/policy.rb', line 57

def update?
  false
end