]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - classes/User_group.php
Initial user doesn't need as strict checking on email
[quix0rs-gnu-social.git] / classes / User_group.php
index 344394a682052ef9d8d3203f1e41491002881837..2484f3f265252d8c375684b983cd5bac22bb1175 100644 (file)
@@ -14,6 +14,7 @@ class User_group extends Managed_DataObject
 
     public $__table = 'user_group';                      // table name
     public $id;                              // int(4)  primary_key not_null
+    public $profile_id;                      // int(4)  primary_key not_null
     public $nickname;                        // varchar(64)
     public $fullname;                        // varchar(191)   not 255 because utf8mb4 takes more space
     public $homepage;                        // varchar(191)   not 255 because utf8mb4 takes more space
@@ -114,18 +115,7 @@ class User_group extends Managed_DataObject
 
     function homeUrl()
     {
-        $url = null;
-        if (Event::handle('StartUserGroupHomeUrl', array($this, &$url))) {
-            // normally stored in mainpage, but older ones may be null
-            if (!empty($this->mainpage)) {
-                $url = $this->mainpage;
-            } elseif ($this->isLocal()) {
-                $url = common_local_url('showgroup',
-                                        array('nickname' => $this->nickname));
-            }
-        }
-        Event::handle('EndUserGroupHomeUrl', array($this, &$url));
-        return $url;
+        return $this->getProfile()->getUrl();
     }
 
     function getUri()
@@ -220,24 +210,19 @@ class User_group extends Managed_DataObject
      */
     function getRequests($offset=0, $limit=null)
     {
-        $qry =
-          'SELECT profile.* ' .
-          'FROM profile JOIN group_join_queue '.
-          'ON profile.id = group_join_queue.profile_id ' .
-          'WHERE group_join_queue.group_id = %d ' .
-          'ORDER BY group_join_queue.created DESC ';
+        $rq = new Group_join_queue();
+        $rq->group_id = $this->id;
+
+        $members = new Profile();
+
+        $members->joinAdd(['id', $rq, 'profile_id']);
 
         if ($limit != null) {
-            if (common_config('db','type') == 'pgsql') {
-                $qry .= ' LIMIT ' . $limit . ' OFFSET ' . $offset;
-            } else {
-                $qry .= ' LIMIT ' . $offset . ', ' . $limit;
-            }
+            $members->limit($offset, $limit);
         }
 
-        $members = new Profile();
+        $members->find();
 
-        $members->query(sprintf($qry, $this->id));
         return $members;
     }