]> git.mxchange.org Git - friendica.git/blobdiff - src/Model/Contact/Group.php
Merge pull request #12041 from nupplaphil/feat/usersession_Module
[friendica.git] / src / Model / Contact / Group.php
index b2d165f6a7f6426506f598356dd056bd791dc469..f18e344d03fda4e59402cf0225fc68672862f929 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @copyright Copyright (C) 2020, Friendica
+ * @copyright Copyright (C) 2010-2022, the Friendica project
  *
  * @license GNU AGPL version 3 or any later version
  *
@@ -22,6 +22,7 @@
 namespace Friendica\Model\Contact;
 
 use Friendica\Database\DBA;
+use Friendica\Model\Contact;
 
 /**
  * This class provides information about contact groups based on the "group_member" table.
@@ -35,7 +36,7 @@ class Group
         * @return array
         * @throws \Exception
         */
-       public static function getById(int $gid)
+       public static function getById(int $gid): array
        {
                $return = [];
 
@@ -52,7 +53,7 @@ class Group
                                AND NOT `contact`.`pending`
                                ORDER BY `contact`.`name` ASC',
                                $gid,
-                               local_user()
+                               DI::userSession()->getLocalUserId()
                        );
 
                        if (DBA::isResult($stmt)) {
@@ -75,19 +76,9 @@ class Group
         */
        public static function listUngrouped(int $uid)
        {
-               return q("SELECT *
-                          FROM `contact`
-                          WHERE `uid` = %d
-                          AND NOT `self`
-                          AND NOT `deleted`
-                          AND NOT `blocked`
-                          AND NOT `pending`
-                          AND `id` NOT IN (
-                               SELECT DISTINCT(`contact-id`)
-                               FROM `group_member`
-                               INNER JOIN `group` ON `group`.`id` = `group_member`.`gid`
-                               WHERE `group`.`uid` = %d
-                          )", intval($uid), intval($uid));
+               return Contact::selectToArray([], ["`uid` = ? AND NOT `self` AND NOT `deleted` AND NOT `blocked` AND NOT `pending` AND NOT `failed`
+                       AND `id` NOT IN (SELECT DISTINCT(`contact-id`) FROM `group_member` INNER JOIN `group` ON `group`.`id` = `group_member`.`gid`
+                               WHERE `group`.`uid` = ?)", $uid, $uid]);
        }
 
        /**