X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=plugins%2FModPlus%2FModPlusPlugin.php;h=816034f83126a37fce7d82838f03d107c4981312;hb=9101a1db3d6b369bf09590e8de21d66996c3eda1;hp=95265c52ca3459ada012a567cf42e5c94327de93;hpb=7d64d8c78cfa102b91975598ef9e574d2ef14b8c;p=quix0rs-gnu-social.git diff --git a/plugins/ModPlus/ModPlusPlugin.php b/plugins/ModPlus/ModPlusPlugin.php index 95265c52ca..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,10 +27,10 @@ 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' => @@ -43,62 +41,19 @@ class ModPlusPlugin extends Plugin } /** - * 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; } @@ -108,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; } @@ -121,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; } @@ -130,13 +85,12 @@ class ModPlusPlugin extends Plugin * Currently only adds output for remote profiles, nothing for local users. * * @param HTMLOutputter $out - * @param Profile $profile (may also be an ArrayWrapper... sigh) + * @param Profile $profile */ - protected function showProfileOptions(HTMLOutputter $out, $profile) + 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');