X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=classes%2FUser_group.php;h=2484f3f265252d8c375684b983cd5bac22bb1175;hb=67801a556610f89a60106c0074c42947967f3adf;hp=01437ace39a6b2aa88506990fc5171c5107d9ab7;hpb=79c40bc73b41147fbc98eb03c590f9d4383c32d1;p=quix0rs-gnu-social.git diff --git a/classes/User_group.php b/classes/User_group.php index 01437ace39..2484f3f265 100644 --- a/classes/User_group.php +++ b/classes/User_group.php @@ -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 @@ -33,6 +34,12 @@ class User_group extends Managed_DataObject /* the code above is auto generated do not remove the tag below */ ###END_AUTOCODE + public function getObjectType() + { + return ActivityObject::GROUP; + } + + public static function schemaDef() { return array( @@ -108,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() @@ -214,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; }