Fix unfollowing not showing on contact page

- Deleted contact rows kept the relationship status which would keep showing
- Deleting contact rows would also not update the corresponding user-contact record
This commit is contained in:
Hypolite Petovan 2022-10-30 16:40:21 -04:00
parent 3020dfbeeb
commit 5de8fe3a48
2 changed files with 2 additions and 2 deletions

View file

@ -70,7 +70,7 @@ class VCard
$rel = $contact['rel'];
$pending = $contact['pending'];
} else {
$pcontact = Contact::selectFirst([], ['uid' => DI::userSession()->getLocalUserId(), 'uri-id' => $contact['uri-id']]);
$pcontact = Contact::selectFirst([], ['uid' => DI::userSession()->getLocalUserId(), 'uri-id' => $contact['uri-id'], 'deleted' => false]);
$id = $pcontact['id'] ?? 0;
$rel = $pcontact['rel'] ?? Contact::NOTHING;

View file

@ -902,7 +902,7 @@ class Contact
self::clearFollowerFollowingEndpointCache($contact['uid']);
// Archive the contact
self::update(['archive' => true, 'network' => Protocol::PHANTOM, 'deleted' => true], ['id' => $id]);
self::update(['archive' => true, 'network' => Protocol::PHANTOM, 'rel' => self::NOTHING, 'deleted' => true], ['id' => $id]);
if (!DBA::exists('contact', ['uri-id' => $contact['uri-id'], 'deleted' => false])) {
Avatar::deleteCache($contact);