X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=plugins%2FModPlus%2FModPlusPlugin.php;h=816034f83126a37fce7d82838f03d107c4981312;hb=9101a1db3d6b369bf09590e8de21d66996c3eda1;hp=f8351f0988759feb88dbb825ce53f6c20c2e7126;hpb=f9cf1dddfe81f5ad61f89f8080d418ced27ecb5f;p=quix0rs-gnu-social.git diff --git a/plugins/ModPlus/ModPlusPlugin.php b/plugins/ModPlus/ModPlusPlugin.php index f8351f0988..816034f831 100644 --- a/plugins/ModPlus/ModPlusPlugin.php +++ b/plugins/ModPlus/ModPlusPlugin.php @@ -17,9 +17,7 @@ * along with this program. If not, see . */ -if (!defined('STATUSNET')) { - exit(1); -} +if (!defined('GNUSOCIAL')) { exit(1); } /** * Some UI extras for now... @@ -29,75 +27,33 @@ if (!defined('STATUSNET')) { */ class ModPlusPlugin extends Plugin { - function onPluginVersion(&$versions) + function onPluginVersion(array &$versions) { $versions[] = array('name' => 'ModPlus', - 'version' => STATUSNET_VERSION, + 'version' => GNUSOCIAL_VERSION, 'author' => 'Brion Vibber', 'homepage' => 'http://status.net/wiki/Plugin:ModPlus', 'rawdescription' => - _m('UI extensions for profile moderation actions.')); + // TRANS: Plugin description. + _m('UI extension for profile moderation actions.')); return true; } /** - * Load JS at runtime if we're logged in. + * Load JS at runtime. * * @param Action $action * @return boolean hook result */ - function onEndShowScripts($action) + function onEndShowScripts(Action $action) { - $user = common_current_user(); - if ($user) { - $action->script($this->path('modplus.js')); - } - return true; - } - - function onEndShowStatusNetStyles($action) { - $action->cssLink($this->path('modplus.css')); + $action->script($this->path('js/modplus.js')); return true; } - /** - * Autoloader - * - * Loads our classes if they're requested. - * - * @param string $cls Class requested - * - * @return boolean hook return - */ - function onAutoload($cls) - { - switch ($cls) - { - case 'RemoteprofileAction': - case 'RemoteProfileAction': - require_once dirname(__FILE__) . '/remoteprofileaction.php'; - return false; - default: - return true; - } - } - - /** - * Add ModPlus-related paths to the router table - * - * Hook for RouterInitialized event. - * - * @param Net_URL_Mapper $m URL mapper - * - * @return boolean hook return - */ - function onStartInitializeRouter($m) - { - $m->connect('user/remote/:id', - array('action' => 'remoteprofile'), - array('id' => '[\d]+')); - + public function onEndShowStylesheets(Action $action) { + $action->cssLink($this->path('css/modplus.css')); return true; } @@ -107,9 +63,9 @@ class ModPlusPlugin extends Plugin * @param NoticeListItem $item * @return boolean hook value */ - function onStartShowNoticeItem($item) + function onEndShowNoticeItemAuthor(Profile $profile, HTMLOutputter $out) { - $this->showProfileOptions($item->out, $item->profile); + $this->showProfileOptions($out, $profile); return true; } @@ -120,7 +76,7 @@ class ModPlusPlugin extends Plugin */ function onStartProfileListItemProfile($item) { - $this->showProfileOptions($item->out, $item->profile); + $this->showProfileOptions($item->out, $item->profile->getProfile()); return true; } @@ -133,9 +89,9 @@ class ModPlusPlugin extends Plugin */ protected function showProfileOptions(HTMLOutputter $out, Profile $profile) { - $isRemote = !(User::staticGet('id', $profile->id)); - if ($isRemote) { - $target = common_local_url('remoteprofile', array('id' => $profile->id)); + if (!$profile->isGroup() && !$profile->isLocal()) { + $target = common_local_url('userbyid', array('id' => $profile->getID())); + // TRANS: Label for access to remote profile options. $label = _m('Remote profile options...'); $out->elementStart('div', 'remote-profile-options'); $out->element('a', array('href' => $target), $label);