Can get and return following state of a user.

This commit is contained in:
Pierre HUBERT
2018-07-17 10:56:12 +02:00
parent 46730f2b97
commit f054107277
4 changed files with 46 additions and 3 deletions

View File

@ -431,6 +431,21 @@ class GroupsComponent {
return $this->dbToGroupMember($results[0]);
}
/**
* Determine whether a user is following or not a group
*
* @param int $userID Target user ID
* @param int $groupID The ID of the related group
* @return bool TRUE if the user is following the group / FALSE else
*/
public function isFollowing(int $userID, int $groupID) : bool {
return db()->count(
self::GROUPS_MEMBERS_TABLE,
"WHERE groups_id = ? AND user_ID = ? AND following = 1",
array($groupID, $userID)
) > 0;
}
/**
* Check whether a user is an administrator of a group
* or not
@ -751,6 +766,7 @@ class GroupsComponent {
$member->set_userID($entry["user_id"]);
$member->set_time_sent($entry["time_create"]);
$member->set_level($entry["level"]);
$member->set_following($entry["following"] == 1);
return $member;

View File

@ -41,6 +41,7 @@ class GroupInfo extends BaseUniqueObject {
private $registration_level = -1;
private $posts_level = -1;
private $virtual_directory;
private $following = FALSE;
//Get and set the name of group
public function set_name(string $name){
@ -160,4 +161,13 @@ class GroupInfo extends BaseUniqueObject {
public function get_virtual_directory() : string {
return $this->virtual_directory != null ? $this->virtual_directory : "null";
}
//Set and get following status
public function set_following(bool $following){
$this->following = $following;
}
public function isFollowing() : bool {
return $this->following;
}
}

View File

@ -19,7 +19,8 @@ class GroupMember extends BaseUniqueObjectFromUser {
//Private fields
private $group_id = 1;
private $level = -1;
private $level = -1;
private $following;
//Set and get group id
public function set_group_id(int $group_id){
@ -46,4 +47,13 @@ class GroupMember extends BaseUniqueObjectFromUser {
public function get_level() : int {
return $this->level;
}
//Set and get following status
public function set_following(bool $following){
$this->is_following = $following;
}
public function isFollowing() : bool {
return $this->is_following;
}
}