public hasAccess ( string $module, string $function, eZ\Publish\API\Repository\Values\User\UserReference $user = null ) : boolean | array | ||
$module | string | |
$function | string | |
$user | eZ\Publish\API\Repository\Values\User\UserReference | |
Résultat | boolean | array | Bool if user has full or no access, array if limitations if not |
/** * Loads all incoming relations for a content object. * * The relations come only from published versions of the source content objects * * @throws \eZ\Publish\API\Repository\Exceptions\UnauthorizedException if the user is not allowed to read this version * * @param \eZ\Publish\API\Repository\Values\Content\ContentInfo $contentInfo * * @return \eZ\Publish\API\Repository\Values\Content\Relation[] */ public function loadReverseRelations( ContentInfo $contentInfo ) { if ( $this->repository->hasAccess( 'content', 'reverserelatedlist' ) !== true ) throw new UnauthorizedException( 'content', 'reverserelatedlist', array( 'contentId' => $contentInfo->id ) ); $spiRelations = $this->persistenceHandler->contentHandler()->loadReverseRelations( $contentInfo->id ); $returnArray = array(); foreach ( $spiRelations as $spiRelation ) { $sourceContentInfo = $this->internalLoadContentInfo( $spiRelation->sourceContentId ); if ( !$this->repository->canUser( 'content', 'read', $sourceContentInfo ) ) continue; $returnArray[] = $this->domainMapper->buildRelationDomainObject( $spiRelation, $sourceContentInfo, $contentInfo ); } return $returnArray; }