mirror of
https://github.com/friendica/friendica
synced 2025-04-27 08:30:10 +00:00
Add permission set lazy loading to Profile Field model
This commit is contained in:
parent
d475cb5028
commit
d11a0d3814
3 changed files with 59 additions and 4 deletions
|
@ -5,9 +5,10 @@ namespace Friendica\Repository;
|
|||
use Friendica\BaseModel;
|
||||
use Friendica\BaseRepository;
|
||||
use Friendica\Collection;
|
||||
use Friendica\Database\Database;
|
||||
use Friendica\Model;
|
||||
use Friendica\Model\PermissionSet;
|
||||
use Friendica\Util\DateTimeFormat;
|
||||
use Psr\Log\LoggerInterface;
|
||||
|
||||
class ProfileField extends BaseRepository
|
||||
{
|
||||
|
@ -17,13 +18,23 @@ class ProfileField extends BaseRepository
|
|||
|
||||
protected static $collection_class = Collection\ProfileFields::class;
|
||||
|
||||
/** @var PermissionSet */
|
||||
private $permissionSet;
|
||||
|
||||
public function __construct(Database $dba, LoggerInterface $logger, PermissionSet $permissionSet)
|
||||
{
|
||||
parent::__construct($dba, $logger);
|
||||
|
||||
$this->permissionSet = $permissionSet;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array $data
|
||||
* @return Model\ProfileField
|
||||
*/
|
||||
protected function create(array $data)
|
||||
{
|
||||
return new Model\ProfileField($this->dba, $this->logger, $data);
|
||||
return new Model\ProfileField($this->dba, $this->logger, $this->permissionSet, $data);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -84,7 +95,9 @@ class ProfileField extends BaseRepository
|
|||
*/
|
||||
public function selectByContactId(int $cid, int $uid)
|
||||
{
|
||||
$psids = PermissionSet::get($uid, $cid);
|
||||
$permissionSets = $this->permissionSet->selectByContactId($cid, $uid);
|
||||
|
||||
$psids = $permissionSets->column('id');
|
||||
|
||||
// Includes public custom fields
|
||||
$psids[] = 0;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue