trait EnforcesPermissionPartition

Properties

protected PermissionRegistrar $permissionPartitionRegistrar
protected PermissionRelationContext $permissionRelationContext

Methods

void
initializePermissionPartitionRelation(PermissionRegistrar $registrar, PermissionRelationContext $context)

Initialize the permission partition relation state.

array
formatAttachRecord(int|string $key, mixed $value, array $attributes, bool $hasTimestamps)

Format an attachment record without allowing partition overrides.

int
updateExistingPivot(mixed $id, array $attributes, bool $touch = true)

Update an existing pivot without allowing partition movement.

getResults()

Get and mark lazily loaded relation results.

array
initRelation(array $models, string $relation)

Initialize and mark eager-loaded relation collections.

array
match(array $models, Collection $results, string $relation)

Match and mark eager-loaded relation collections.

void
ensurePivotMatchesPermissionPartition(array $attributes)

Reject conflicting caller-supplied partition attributes.

void
markPermissionRelationCollections(array $models, string $relation)

Mark the loaded collection attached to each eager-loaded model.

Details

at line 23
protected void initializePermissionPartitionRelation(PermissionRegistrar $registrar, PermissionRelationContext $context)

Initialize the permission partition relation state.

Parameters

PermissionRegistrar $registrar
PermissionRelationContext $context

Return Value

void

at line 34
protected array formatAttachRecord(int|string $key, mixed $value, array $attributes, bool $hasTimestamps)

Format an attachment record without allowing partition overrides.

Parameters

int|string $key
mixed $value
array $attributes
bool $hasTimestamps

Return Value

array

at line 58
int updateExistingPivot(mixed $id, array $attributes, bool $touch = true)

Update an existing pivot without allowing partition movement.

Parameters

mixed $id
array $attributes
bool $touch

Return Value

int

at line 75
Collection getResults()

Get and mark lazily loaded relation results.

Return Value

Collection

at line 97
array initRelation(array $models, string $relation)

Initialize and mark eager-loaded relation collections.

Parameters

array $models
string $relation

Return Value

array

at line 111
array match(array $models, Collection $results, string $relation)

Match and mark eager-loaded relation collections.

Parameters

array $models
Collection $results
string $relation

Return Value

array

at line 122
protected void ensurePivotMatchesPermissionPartition(array $attributes)

Reject conflicting caller-supplied partition attributes.

Parameters

array $attributes

Return Value

void

at line 141
protected void markPermissionRelationCollections(array $models, string $relation)

Mark the loaded collection attached to each eager-loaded model.

Parameters

array $models
string $relation

Return Value

void