]> git.mxchange.org Git - friendica.git/commitdiff
Move ProfileField::selectByContactId() and ProfileField::selectByUserId()
authorPhilipp <admin@philipp.info>
Fri, 8 Oct 2021 18:01:09 +0000 (20:01 +0200)
committerPhilipp <admin@philipp.info>
Mon, 18 Oct 2021 21:32:39 +0000 (23:32 +0200)
src/Module/Profile/Profile.php
src/Module/Settings/Profile/Index.php
src/Profile/ProfileField/Depository/ProfileField.php
src/Protocol/ActivityPub/Transmitter.php
src/Repository/ProfileField.php

index 25b6eccc9abdb6c6514239985483420b19b6e43c..1b8ca34357bde2057407f43e58ae78c420b72b7e 100644 (file)
@@ -213,9 +213,9 @@ class Profile extends BaseProfile
                $contact_id = $view_as_contact_id ?: $remote_contact_id ?: 0;
 
                if ($is_owner && $contact_id === 0) {
-                       $profile_fields = DI::profileField()->selectByUserId($profile['uid']);
+                       $profile_fields = DI::profileFieldNew()->selectByUserId($profile['uid']);
                } else {
-                       $profile_fields = DI::profileField()->selectByContactId($contact_id, $profile['uid']);
+                       $profile_fields = DI::profileFieldNew()->selectByContactId($contact_id, $profile['uid']);
                }
 
                foreach ($profile_fields as $profile_field) {
index a7b71851df85317ef72f4b25b658ceac7c8cd076..1ab3e32fc2e9e3b746635a997e78d1c3bc1f5332 100644 (file)
@@ -100,7 +100,7 @@ class Index extends BaseSettings
                        $homepage = 'http://' . $homepage;
                }
 
-               $profileFields = DI::profileField()->selectByUserId(local_user());
+               $profileFields = DI::profileFieldNew()->selectByUserId(local_user());
 
                $profileFields = DI::profileField()->updateCollectionFromForm(
                        local_user(),
@@ -159,7 +159,7 @@ class Index extends BaseSettings
 
                $custom_fields = [];
 
-               $profileFields = DI::profileField()->selectByUserId(local_user());
+               $profileFields = DI::profileFieldNew()->selectByUserId(local_user());
                foreach ($profileFields as $profileField) {
                        /** @var ProfileField $profileField */
                        $defaultPermissions = $profileField->permissionSet->withAllowedContacts(
index 47abcbd145c4a501a5023b8044bd1befb9c0cf3b..9ec2d4fb452b6fd1da3c5a601480fe0f034ea48b 100644 (file)
@@ -8,7 +8,7 @@ use Friendica\Network\HTTPException\NotFoundException;
 use Friendica\Profile\ProfileField\Factory;
 use Friendica\Profile\ProfileField\Entity;
 use Friendica\Profile\ProfileField\Collection;
-use Friendica\Security\PermissionSet\Depository\PermissionSet;
+use Friendica\Security\PermissionSet\Depository\PermissionSet as PermissionSetDepository;
 use Psr\Log\LoggerInterface;
 
 class ProfileField extends BaseDepository
@@ -18,9 +18,14 @@ class ProfileField extends BaseDepository
 
        protected static $table_name = 'profile_field';
 
-       public function __construct(Database $database, LoggerInterface $logger, Factory\ProfileField $factory)
+       /** @var PermissionSetDepository */
+       protected $permissionSetDepository;
+
+       public function __construct(Database $database, LoggerInterface $logger, Factory\ProfileField $factory, PermissionSetDepository $permissionSetDepository)
        {
                parent::__construct($database, $logger, $factory);
+
+               $this->permissionSetDepository = $this->permissionSetDepository;
        }
 
        /**
@@ -50,7 +55,43 @@ class ProfileField extends BaseDepository
        {
                return $this->select([
                        'uid'  => $uid,
-                       'psid' => PermissionSet::PUBLIC,
+                       'psid' => PermissionSetDepository::PUBLIC,
                ]);
        }
+
+       /**
+        * @param int $uid Field owner user Id
+        *
+        * @throws \Exception
+        */
+       public function selectByUserId(int $uid): Collection\ProfileFields
+       {
+               return $this->select(
+                       ['uid' => $uid],
+                       ['order' => ['order']]
+               );
+       }
+
+       /**
+        * Retrieve all custom profile field a given contact is able to access to, including public profile fields.
+        *
+        * @param int $cid Private contact id, must be owned by $uid
+        * @param int $uid Field owner user id
+        *
+        * @throws \Exception
+        */
+       public function selectByContactId(int $cid, int $uid): Collection\ProfileFields
+       {
+               $permissionSets = $this->permissionSetDepository->selectByContactId($cid, $uid);
+
+               $permissionSetIds = $permissionSets->column('id');
+
+               // Includes public custom fields
+               $permissionSetIds[] = PermissionSetDepository::PUBLIC;
+
+               return $this->select(
+                       ['uid' => $uid, 'psid' => $permissionSetIds],
+                       ['order' => ['order']]
+               );
+       }
 }
index e741789dad217e22913df0bf6dbee8ad093b2f18..462460350e86b6fbdd3eb28a2cce880f8425efed 100644 (file)
@@ -381,7 +381,7 @@ class Transmitter
 
                $custom_fields = [];
 
-               foreach (DI::profileField()->selectByContactId(0, $uid) as $profile_field) {
+               foreach (DI::profileFieldNew()->selectByContactId(0, $uid) as $profile_field) {
                        $custom_fields[] = [
                                'type' => 'PropertyValue',
                                'name' => $profile_field->label,
index 878c6b2b4b68a36ad026b546f5d39210394178a8..c7fe74ea1a19cda896db4333eb8a07798dbc4fc4 100644 (file)
@@ -103,43 +103,7 @@ class ProfileField extends BaseRepository
                return parent::selectByBoundaries($condition, $params, $min_id, $max_id, $limit);
        }
 
-       /**
-        * @param int $uid Field owner user Id
-        *
-        * @return \Friendica\Profile\ProfileField\Collection\ProfileFields
-        * @throws \Exception
-        */
-       public function selectByUserId(int $uid)
-       {
-               return $this->select(
-                       ['uid' => $uid],
-                       ['order' => ['order']]
-               );
-       }
-
-       /**
-        * Retrieve all custom profile field a given contact is able to access to, including public profile fields.
-        *
-        * @param int $cid Private contact id, must be owned by $uid
-        * @param int $uid Field owner user id
-        *
-        * @return \Friendica\Profile\ProfileField\Collection\ProfileFields
-        * @throws \Exception
-        */
-       public function selectByContactId(int $cid, int $uid)
-       {
-               $permissionSets = $this->permissionSet->selectByContactId($cid, $uid);
-
-               $psids = $permissionSets->column('id');
 
-               // Includes public custom fields
-               $psids[] = 0;
-
-               return $this->select(
-                       ['uid' => $uid, 'psid' => $psids],
-                       ['order' => ['order']]
-               );
-       }
 
        /**
         * @param array $fields