From d24c4f349fb602e62bb69fe199a8040d00fc2cb9 Mon Sep 17 00:00:00 2001 From: Mikael Nordfeldth Date: Thu, 12 Mar 2015 15:58:57 +0100 Subject: [PATCH] Move share command interpretation to SharePlugin Some fixes to the SharePlugin.php file came along --- lib/commandinterpreter.php | 15 ------- plugins/Share/SharePlugin.php | 78 +++-------------------------------- 2 files changed, 6 insertions(+), 87 deletions(-) diff --git a/lib/commandinterpreter.php b/lib/commandinterpreter.php index e7d98da025..d2b744e93d 100644 --- a/lib/commandinterpreter.php +++ b/lib/commandinterpreter.php @@ -192,21 +192,6 @@ class CommandInterpreter $result = new ReplyCommand($user, $other, $extra); } break; - case 'repeat': - case 'rp': - case 'rt': - case 'rd': - if (!$arg) { - $result = null; - } else { - list($other, $extra) = self::split_arg($arg); - if ($extra) { - $result = null; - } else { - $result = new RepeatCommand($user, $other); - } - } - break; case 'whois': if (!$arg) { $result = null; diff --git a/plugins/Share/SharePlugin.php b/plugins/Share/SharePlugin.php index 14c0c2ad2a..18143d5a63 100644 --- a/plugins/Share/SharePlugin.php +++ b/plugins/Share/SharePlugin.php @@ -349,7 +349,7 @@ class SharePlugin extends ActivityVerbHandlerPlugin */ public function onStartInterpretCommand($cmd, $arg, $user, &$result) { - if ($result === false && $cmd == 'fav') { + if ($result === false && in_array($cmd, array('repeat', 'rp', 'rt', 'rd'))) { if (empty($arg)) { $result = null; } else { @@ -357,7 +357,7 @@ class SharePlugin extends ActivityVerbHandlerPlugin if (!empty($extra)) { $result = null; } else { - $result = new FavCommand($user, $other); + $result = new RepeatCommand($user, $other); } } return false; @@ -378,7 +378,7 @@ class SharePlugin extends ActivityVerbHandlerPlugin */ public function onCommandSupportedAPI(Command $cmd, &$supported) { - $supported = $supported || $cmd instanceof FavCommand; + $supported = $supported || $cmd instanceof RepeatCommand; } // Form stuff (settings etc.) @@ -509,80 +509,14 @@ class SharePlugin extends ActivityVerbHandlerPlugin public function onPluginVersion(array &$versions) { - $versions[] = array('name' => 'Favorite', + $versions[] = array('name' => 'Share verb', 'version' => GNUSOCIAL_VERSION, 'author' => 'Mikael Nordfeldth', - 'homepage' => 'http://gnu.io/', + 'homepage' => 'https://gnu.io/', 'rawdescription' => // TRANS: Plugin description. - _m('Favorites (likes) using ActivityStreams.')); + _m('Shares (repeats) using ActivityStreams.')); return true; } } - -/** - * Notify a user that one of their notices has been chosen as a 'fave' - * - * @param User $rcpt The user whose notice was faved - * @param Profile $sender The user who faved the notice - * @param Notice $notice The notice that was faved - * - * @return void - */ -function mail_notify_fave(User $rcpt, Profile $sender, Notice $notice) -{ - if (!$rcpt->receivesEmailNotifications() || !$rcpt->getConfigPref('email', 'notify_fave')) { - return; - } - - // This test is actually "if the sender is sandboxed" - if (!$sender->hasRight(Right::EMAILONFAVE)) { - return; - } - - if ($rcpt->hasBlocked($sender)) { - // If the author has blocked us, don't spam them with a notification. - return; - } - - // We need the global mail.php for various mail related functions below. - require_once INSTALLDIR.'/lib/mail.php'; - - $bestname = $sender->getBestName(); - - common_switch_locale($rcpt->language); - - // TRANS: Subject for favorite notification e-mail. - // TRANS: %1$s is the adding user's long name, %2$s is the adding user's nickname. - $subject = sprintf(_('%1$s (@%2$s) added your notice as a favorite'), $bestname, $sender->getNickname()); - - // TRANS: Body for favorite notification e-mail. - // TRANS: %1$s is the adding user's long name, $2$s is the date the notice was created, - // TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, - // TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, - // TRANS: %7$s is the adding user's nickname. - $body = sprintf(_("%1\$s (@%7\$s) just added your notice from %2\$s". - " as one of their favorites.\n\n" . - "The URL of your notice is:\n\n" . - "%3\$s\n\n" . - "The text of your notice is:\n\n" . - "%4\$s\n\n" . - "You can see the list of %1\$s's favorites here:\n\n" . - "%5\$s"), - $bestname, - common_exact_date($notice->created), - common_local_url('shownotice', - array('notice' => $notice->id)), - $notice->content, - common_local_url('showfavorites', - array('nickname' => $sender->getNickname())), - common_config('site', 'name'), - $sender->getNickname()) . - mail_footer_block(); - - $headers = _mail_prepare_headers('fave', $rcpt->getNickname(), $sender->getNickname()); - - common_switch_locale(); - mail_to_user($rcpt, $subject, $body, $headers); -} -- 2.39.5