/** * Get a list of the user's abilities. * * @param \Illuminate\Database\Eloquent\Model $user * @return \Illuminate\Database\Eloquent\Collection */ public function getAbilities(Model $user) { $query = Ability::whereHas('roles', $this->getRoleUsersConstraint($user)); return $query->orWhereHas('users', $this->getUserConstraint($user))->get(); }
/** * Fetch a list of the user's abilities from the database. * * @param \Illuminate\Database\Eloquent\Model $user * @return stdClass[] */ protected function fetchUserAbilities(Model $user) { $query = Ability::whereHas('roles', $this->getRoleUsersConstraint($user)); $query->orWhereHas('users', $this->getUserConstraint($user)); return $query->getQuery()->select('title', 'entity_id', 'entity_type')->get(); }