A criterion that matches content based on one of the user metadata (owner, group, modifier).
Supported Operators:
The following example is a criterion for contents owned by a user with ID 10 or 14:
$createdCriterion = new Criterion\UserMetadata(
Criterion\UserMetadata::OWNER,
Criterion\Operator::IN,
[10, 14]
);
Constants¶
GROUP ¶
UserMetadata target: Owner user group.
|
|
MODIFIER ¶
UserMetadata target: Modifier.
|
|
OWNER ¶
UserMetadata target: Owner user.
|
|
Properties¶
$operator
¶
The operator used by the Criterion.
|
|
$target
¶
The target used by the criteria (field, metadata...).
|
|
$value
¶
The value(s) matched by the criteria.
|
|
$valueData
¶
Additional value data, required by some criterions, MapLocationDistance for instance.
|
|
Methods¶
__construct()
¶
Creates a new UserMetadata criterion.
|
|
Parameters
Name | Type | Default value | Description |
---|---|---|---|
$target | string | - |
One of UserMetadata::OWNER, UserMetadata::GROUP, or UserMetadata::MODIFIER. |
$operator | string|null | - |
The operator the Criterion uses. If null is given, will default to Operator::IN if $value is an array, Operator::EQ if it isn't. |
$value | mixed | - |
The match value, either as an array of as a single value, depending on the operator. |
Tags
getSpecifications()
¶
Criterion description function.
|
|
Returns the combination of the Criterion's supported operator/value, as an array of Specifications objects
- Specifications::$operator is a supported Operator constant.
- Specifications::$valueFormat is the type of input value this operator requires, either array (Specifications::FORMAT_ARRAY) or single (Specifications::FORMAT_SINGLE).
- Specifications::$valueTypes are bitwise flags of types the operator will accept (Specifications::TYPE_BOOLEAN, Specifications::TYPE_INTEGER, and/or Specifications::TYPE_STRING).
- Specifications::$valueCount is an integer saying how many values are expected.
// IN and EQ are supported
return [
// The EQ operator expects a single value, either as an integer or a string
new Specifications(
Operator::EQ,
Specifications::FORMAT_SINGLE,
Specifications::TYPE_INTEGER | Specifications::TYPE_STRING
),
// The IN operator expects an array of values, of either integers or strings
new Specifications(
Operator::IN,
Specifications::FORMAT_ARRAY,
Specifications::TYPE_INTEGER | Specifications::TYPE_STRING
)
]
Return values
array<int, Specifications>