1
1
Fork 0

Merge pull request #11770 from MrPetovan/bug/notices

Handle rare case where contact doesn't exist in Model\Group::getIdsByContactId
This commit is contained in:
Michael Vogel 2022-07-25 21:01:12 +02:00 committed by GitHub
commit f9777ce0dc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -138,25 +138,29 @@ class Group
*/ */
public static function getIdsByContactId(int $cid): array public static function getIdsByContactId(int $cid): array
{ {
$return = []; $contact = Contact::getById($cid, ['rel']);
if (!$contact) {
return [];
}
$groupIds = [];
$stmt = DBA::select('group_member', ['gid'], ['contact-id' => $cid]); $stmt = DBA::select('group_member', ['gid'], ['contact-id' => $cid]);
while ($group = DBA::fetch($stmt)) { while ($group = DBA::fetch($stmt)) {
$return[] = $group['gid']; $groupIds[] = $group['gid'];
} }
DBA::close($stmt); DBA::close($stmt);
// Meta-groups // Meta-groups
$contact = Contact::getById($cid, ['rel']);
if ($contact['rel'] == Contact::FOLLOWER || $contact['rel'] == Contact::FRIEND) { if ($contact['rel'] == Contact::FOLLOWER || $contact['rel'] == Contact::FRIEND) {
$return[] = self::FOLLOWERS; $groupIds[] = self::FOLLOWERS;
} }
if ($contact['rel'] == Contact::FRIEND) { if ($contact['rel'] == Contact::FRIEND) {
$return[] = self::MUTUALS; $groupIds[] = self::MUTUALS;
} }
return $return; return $groupIds;
} }
/** /**