private matchAgentProp ( String $prop, Mixed $value, Jenssegers\Mongodb\Eloquent\Builder $builder, |
||
$prop | String | |
$value | Mixed | |
$builder | Jenssegers\Mongodb\Eloquent\Builder | |
$opts | Index options. | |
Результат | Jenssegers\Mongodb\Eloquent\Builder |
private function matchAgentProp($prop, $value, Builder $builder, IndexOptions $opts)
{
return $builder->where(function ($query) use($prop, $value, $builder, $opts) {
$keys = ["actor.{$prop}", "actor.members.{$prop}", "object.{$prop}"];
if ($opts->getOpt('related_agents') === true) {
$keys = array_merge($keys, ["authority.{$prop}", "context.instructor.{$prop}", "context.team.{$prop}"]);
}
$query = $this->addWheres($builder, $keys, $value);
});
}