class VideoAnnotationPolicy extendsCachedPolicy

Traits

HandlesAuthorization

Constants

TIME

Time to store the cached values.

(is irrelevant for the array store)

Properties

protectedCache $cache The cache instance to use for caching policies. from CachedPolicy

Methods

__construct()

Create a new CachedPolicy.

mixed
remember(string$key,callable$callback)

Wrapper for the Cache::remember function of the array cache.

bool|null
before(User$user,string$ability)

Intercept all checks.

bool
access(User$user,VideoAnnotation$annotation)

Determine if the user may access the given annotation.

bool
update(User$user,VideoAnnotation$annotation)

Determine if the user may update the given annotation.

bool
attachLabel(User$user,VideoAnnotation$annotation,Label$label)

Determine if the user can attach the given label to the given annotation.

bool
destroy(User$user,VideoAnnotation$annotation)

Determine if the user may delete the given annotation.

Details

inCachedPolicyat line31
__construct()

Create a new CachedPolicy.

inCachedPolicyat line43
mixed remember(string$key,callable$callback)

Wrapper for the Cache::remember function of the array cache.

Parameters

string $key Key of the cached item
callable $callback Callback returning the cached item

Return Value

mixed

at line25
bool|null before(User$user,string$ability)

Intercept all checks.

Parameters

User $user
string $ability

Return Value

bool|null

at line39
bool access(User$user,VideoAnnotation$annotation)

Determine if the user may access the given annotation.

Parameters

User $user
VideoAnnotation $annotation

Return Value

bool

at line57
bool update(User$user,VideoAnnotation$annotation)

Determine if the user may update the given annotation.

Parameters

User $user
VideoAnnotation $annotation

Return Value

bool

at line85
bool attachLabel(User$user,VideoAnnotation$annotation,Label$label)

Determine if the user can attach the given label to the given annotation.

The annototation (image) must belong to a project where the user is an editor or admin. The label must belong to a label tree that is used by one of the projects the user and the annotation belong to.

Parameters

User $user
VideoAnnotation $annotation
Label $label

Return Value

bool

at line117
bool destroy(User$user,VideoAnnotation$annotation)

Determine if the user may delete the given annotation.

Parameters

User $user
VideoAnnotation $annotation

Return Value

bool