Elgg  Version 2.3
Public Member Functions | List of all members
Elgg\UserCapabilities Class Reference

WARNING: API IN FLUX. More...

Public Member Functions

 __construct (PluginHooksService $hooks, EntityTable $entities, ElggSession $session)
 Constructor. More...
 
 canEdit (ElggEntity $entity, $user_guid=0)
 Can a user edit this entity? More...
 
 canDelete (ElggEntity $entity, $user_guid=0)
 Can a user delete this entity? More...
 
 canDeleteRiverItem (ElggRiverItem $item, $user_guid=0)
 Can a user delete this river item? More...
 
 canEditMetadata (ElggEntity $entity, $user_guid=0, ElggMetadata $metadata=null)
 Can a user edit metadata on this entity? More...
 
 canEditAnnotation (ElggEntity $entity, $user_guid=0, ElggAnnotation $annotation=null)
 Determines whether or not the user can edit this annotation. More...
 
 canWriteToContainer (ElggEntity $entity, $user_guid=0, $type='all', $subtype='all')
 Can a user add an entity to this container. More...
 
 canComment (ElggEntity $entity, $user_guid=0, $default=null)
 Can a user comment on an entity? More...
 
 canAnnotate (ElggEntity $entity, $user_guid=0, $annotation_name='')
 Can a user annotate an entity? More...
 

Detailed Description

WARNING: API IN FLUX.

DO NOT USE DIRECTLY.

Use the elgg_* versions instead.

@access private

Since
2.2

Definition at line 22 of file UserCapabilities.php.

Constructor & Destructor Documentation

◆ __construct()

Elgg\UserCapabilities::__construct ( PluginHooksService  $hooks,
EntityTable  $entities,
ElggSession  $session 
)

Constructor.

Parameters
PluginHooksService$hooksPlugin hooks service
EntityTable$entitiesEntity table
ElggSession$sessionSession

Definition at line 46 of file UserCapabilities.php.

Member Function Documentation

◆ canAnnotate()

Elgg\UserCapabilities::canAnnotate ( ElggEntity  $entity,
  $user_guid = 0,
  $annotation_name = '' 
)

Can a user annotate an entity?

@tip Can be overridden by registering for the plugin hook [permissions_check:annotate:<name>, <entity type>] or [permissions_check:annotate, <entity type>]. The hooks are called in that order.

@tip If you want logged out users to annotate an object, do not call canAnnotate(). It's easier than using the plugin hook.

Parameters
ElggEntity$entityObjet entity
int$user_guidUser guid (default is logged in user)
string$annotation_nameThe name of the annotation (default is unspecified)
Returns
bool

Definition at line 352 of file UserCapabilities.php.

◆ canComment()

Elgg\UserCapabilities::canComment ( ElggEntity  $entity,
  $user_guid = 0,
  $default = null 
)

Can a user comment on an entity?

@tip Can be overridden by registering for the permissions_check:comment, <entity type> plugin hook.

Parameters
ElggEntity$entityObject entity
int$user_guidUser guid (default is logged in user)
bool$defaultDefault permission
Returns
bool

Definition at line 321 of file UserCapabilities.php.

◆ canDelete()

Elgg\UserCapabilities::canDelete ( ElggEntity  $entity,
  $user_guid = 0 
)

Can a user delete this entity?

@tip Can be overridden by registering for the permissions_check:delete plugin hook.

Parameters
ElggEntity$entityObject entity
int$user_guidThe user GUID, optionally (default: logged in user)
Returns
bool Whether this entity is deletable by the given user.
Since
1.11
See also
elgg_set_ignore_access()

Definition at line 117 of file UserCapabilities.php.

◆ canDeleteRiverItem()

Elgg\UserCapabilities::canDeleteRiverItem ( ElggRiverItem  $item,
  $user_guid = 0 
)

Can a user delete this river item?

@tip Can be overridden by registering for the "permissions_check:delete", "river" plugin hook.

Note
This is not called by elgg_delete_river().
Parameters
ElggRiverItem$itemRiver item
int$user_guidThe user GUID, optionally (default: logged in user)
Returns
bool Whether this river item should be considered deletable by the given user.
Since
2.3
See also
elgg_set_ignore_access()

Definition at line 147 of file UserCapabilities.php.

◆ canEdit()

Elgg\UserCapabilities::canEdit ( ElggEntity  $entity,
  $user_guid = 0 
)

Can a user edit this entity?

@tip Can be overridden by registering for the permissions_check plugin hook.

Parameters
ElggEntity$entityObject entity
int$user_guidThe user GUID, optionally (default: logged in user)
Returns
bool Whether this entity is editable by the given user.
See also
elgg_set_ignore_access()

Definition at line 63 of file UserCapabilities.php.

◆ canEditAnnotation()

Elgg\UserCapabilities::canEditAnnotation ( ElggEntity  $entity,
  $user_guid = 0,
ElggAnnotation  $annotation = null 
)

Determines whether or not the user can edit this annotation.

Parameters
Elggentity$entityObject entity
int$user_guidThe GUID of the user (defaults to currently logged in user)
ElggAnnotation$annotationAnnotation
Returns
bool
See also
elgg_set_ignore_access()

Definition at line 221 of file UserCapabilities.php.

◆ canEditMetadata()

Elgg\UserCapabilities::canEditMetadata ( ElggEntity  $entity,
  $user_guid = 0,
ElggMetadata  $metadata = null 
)

Can a user edit metadata on this entity?

If no specific metadata is passed, it returns whether the user can edit any metadata on the entity.

@tip Can be overridden by by registering for the permissions_check:metadata plugin hook.

Parameters
ElggEntity$entityObject entity
int$user_guidThe user GUID, optionally (default: logged in user)
ElggMetadata$metadataThe piece of metadata to specifically check or null for any metadata
Returns
bool
See also
elgg_set_ignore_access()

Definition at line 179 of file UserCapabilities.php.

◆ canWriteToContainer()

Elgg\UserCapabilities::canWriteToContainer ( ElggEntity  $entity,
  $user_guid = 0,
  $type = 'all',
  $subtype = 'all' 
)

Can a user add an entity to this container.

Parameters
ElggEntity$entityContainer entity
int$user_guidThe GUID of the user creating the entity (0 for logged in user).
string$typeThe type of entity we're looking to write
string$subtypeThe subtype of the entity we're looking to write
Returns
bool
See also
elgg_set_ignore_access()

Definition at line 266 of file UserCapabilities.php.


The documentation for this class was generated from the following file: