X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FConsole%2FContact.php;h=f051d870a295c8710a72f21a7b7c57992fc3f486;hb=7d958e8804f5fabc9b748c68c7b8f55d8885360c;hp=8bff00f1d6a18686a8b7ebd0504240631d275ef6;hpb=7a8f9f382e2c167080a25fa7adc7df5eb01f5025;p=friendica.git diff --git a/src/Console/Contact.php b/src/Console/Contact.php index 8bff00f1d6..f051d870a2 100644 --- a/src/Console/Contact.php +++ b/src/Console/Contact.php @@ -1,6 +1,6 @@ getArgument(3); - if (empty($network) && $network !== '') { + if ($network === null) { $this->out('Enter network, or leave blank: '); $network = CliPrompt::prompt(); } - $result = ContactModel::createFromProbe($user, $url, false, $network); + $result = ContactModel::createFromProbeForUser($user['uid'], $url, $network); if ($result['success']) { $this->out('User ' . $user['nickname'] . ' now connected to ' . $url . ', contact ID ' . $result['cid']); @@ -174,11 +178,12 @@ HELP; } /** - * Sends an unfriend message. Does not remove the contact + * Sends an unfriend message. * * @return bool True, if the command was successful + * @throws \Exception */ - private function terminateContact() + private function terminateContact(): bool { $cid = $this->getArgument(1); if (empty($cid)) { @@ -194,15 +199,24 @@ HELP; throw new RuntimeException('Contact not found'); } - $user = UserModel::getById($contact['uid']); + if (empty($contact['uid'])) { + throw new RuntimeException('Contact must be user-specific (uid != 0)'); + } + + try { + ContactModel::unfollow($contact); + + $this->out('Contact was successfully unfollowed'); - $result = ContactModel::terminateFriendship($user, $contact); + return true; + } catch (\Exception $e) { + DI::logger()->error($e->getMessage(), ['contact' => $contact]); + throw new RuntimeException('Unable to unfollow this contact, please check the log'); + } } /** * Marks a contact for removal - * - * @return bool True, if the command was successful */ private function removeContact() { @@ -215,7 +229,7 @@ HELP; } } - $result = ContactModel::remove($cid); + ContactModel::remove($cid); } /** @@ -268,7 +282,7 @@ HELP; } break; case 'url': - $user = $this->getUserByNick(2); + $user = $this->getUserByNick(2); $url = $this->getArgument(3); $contact = ContactModel::getByURLForUser($url, $user['uid'], false, $fields); if (!empty($contact)) {