X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModel%2FContact.php;h=1bbc0228a806a46dc7729ef1a852e7d12d53cb81;hb=c4ea3bfb3e8a603aacd386438b23fe5a59068114;hp=d53126f6ff2aed90db3f1eda8c393f79f205a79b;hpb=a3570d00273b974270620ccbd5e080d628f422ec;p=friendica.git diff --git a/src/Model/Contact.php b/src/Model/Contact.php index d53126f6ff..1bbc0228a8 100644 --- a/src/Model/Contact.php +++ b/src/Model/Contact.php @@ -17,6 +17,7 @@ use Friendica\Model\Profile; use Friendica\Network\Probe; use Friendica\Object\Image; use Friendica\Protocol\Diaspora; +use Friendica\Protocol\DFRN; use Friendica\Protocol\OStatus; use Friendica\Protocol\PortableContact; use Friendica\Protocol\Salmon; @@ -528,13 +529,16 @@ class Contact extends BaseObject /** * @brief Sends an unfriend message. Does not remove the contact * - * @param array $user User unfriending - * @param array $contact Contact unfriended + * @param array $user User unfriending + * @param array $contact Contact unfriended + * @param boolean $dissolve Remove the contact on the remote side * @return void */ - public static function terminateFriendship(array $user, array $contact) + public static function terminateFriendship(array $user, array $contact, $dissolve = false) { - if (in_array($contact['network'], [Protocol::OSTATUS, Protocol::DFRN])) { + if (($contact['network'] == Protocol::DFRN) && $dissolve) { + DFRN::deliver($user, $contact, 'placeholder', true); + } elseif (in_array($contact['network'], [Protocol::OSTATUS, Protocol::DFRN])) { // create an unfollow slap $item = []; $item['verb'] = NAMESPACE_OSTATUS . "/unfollow";