Shawn M Moore > Jifty > Jifty::RightsFrom

Download:
Jifty-1.10518.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  13
Open  4
Stalled  1
View/Report Bugs
Source  

NAME ^

Jifty::RightsFrom - Delegate access control to a related object

SYNOPSIS ^

  package Application::Model::Thing;
  use Jifty::DBI::Schema;
  use Application::Record schema {
    column owner => refers_to Application::Model::Person;
  }

  use Jifty::RightsFrom column => 'owner';

DESCRIPTION ^

Provides a delegate_current_user_can method that various task-related objects can use as a base to make their own access control decisions based on their task. "current_user_can" in Jifty::Record uses this method to make an access control decision if it exists.

Note that this means that a model class can use Jifty::RightsFrom, and still have a custom current_user_can method, and they will not interfere with each other.

export_curried_sub HASHREF

Takes:

sub_name

The subroutine in this package that you want to export.

export_to

The name of the package you want to export to.

as

The name your new curried sub should be exported into in the package export_to

args (arrayref)

The arguments you want to hand to your sub.

delegate_current_user_can 'column', $column_name, $right_name, @attributes

Make a decision about permissions based on checking permissions on the column of this record specified in the call to import. create, delete, and update rights all check for the update right on the delegated object. On create, we look in the passed attributes for an argument with the name of that column.

syntax highlighting: