X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=plugins%2FSubMirror%2FSubMirrorPlugin.php;h=9955631b06939bbb6713adf5681761b0375f444e;hb=546a03b5eac5f172d543a889625e2f4de446e8b7;hp=38a4c40d481aeea69e3f5a15e426221f65d7acb6;hpb=b7d07466943a73e1c009467c8daa6e499810080f;p=quix0rs-gnu-social.git diff --git a/plugins/SubMirror/SubMirrorPlugin.php b/plugins/SubMirror/SubMirrorPlugin.php index 38a4c40d48..9955631b06 100644 --- a/plugins/SubMirror/SubMirrorPlugin.php +++ b/plugins/SubMirror/SubMirrorPlugin.php @@ -35,6 +35,9 @@ class SubMirrorPlugin extends Plugin { $m->connect('settings/mirror', array('action' => 'mirrorsettings')); + $m->connect('settings/mirror/add/:provider', + array('action' => 'mirrorsettings'), + array('provider' => '[A-Za-z0-9_-]+')); $m->connect('settings/mirror/add', array('action' => 'addmirror')); $m->connect('settings/mirror/edit', @@ -42,32 +45,6 @@ class SubMirrorPlugin extends Plugin return true; } - /** - * Automatically load the actions and libraries used by the plugin - * - * @param Class $cls the class - * - * @return boolean hook return - * - */ - function onAutoload($cls) - { - $base = dirname(__FILE__); - $lower = strtolower($cls); - $files = array("$base/lib/$lower.php", - "$base/classes/$cls.php"); - if (substr($lower, -6) == 'action') { - $files[] = "$base/actions/" . substr($lower, 0, -6) . ".php"; - } - foreach ($files as $file) { - if (file_exists($file)) { - include_once $file; - return false; - } - } - return true; - } - function handle($notice) { // Is anybody mirroring? @@ -80,13 +57,14 @@ class SubMirrorPlugin extends Plugin } } - function onPluginVersion(&$versions) + function onPluginVersion(array &$versions) { $versions[] = array('name' => 'SubMirror', - 'version' => STATUSNET_VERSION, + 'version' => GNUSOCIAL_VERSION, 'author' => 'Brion Vibber', 'homepage' => 'http://status.net/wiki/Plugin:SubMirror', 'rawdescription' => + // TRANS: Plugin description. _m('Pull feeds into your timeline!')); return true; @@ -95,16 +73,16 @@ class SubMirrorPlugin extends Plugin /** * Menu item for personal subscriptions/groups area * - * @param Widget $widget Widget being executed + * @param Action $action action being executed * * @return boolean hook return */ - - function onEndSubGroupNav($widget) + function onEndAccountSettingsNav($action) { - $action = $widget->out; $action_name = $action->trimmed('action'); + common_debug("ACTION NAME = " . $action_name); + $action->menuItem(common_local_url('mirrorsettings'), // TRANS: SubMirror plugin menu item on user settings page. _m('MENU', 'Mirroring'), @@ -137,7 +115,7 @@ class SubMirrorPlugin extends Plugin return true; } - function onStartEnqueueNotice($notice, &$transports) + function onStartEnqueueNotice(Notice $notice, array &$transports) { $transports[] = 'mirror'; } @@ -151,17 +129,22 @@ class SubMirrorPlugin extends Plugin * @param int $count in/out * @return mixed hook return value */ - function onOstatus_profileSubscriberCount($oprofile, &$count) + function onOstatus_profileSubscriberCount(Ostatus_profile $oprofile, &$count) { - if ($oprofile->profile_id) { + try { + $profile = $oprofile->localProfile(); $mirror = new SubMirror(); - $mirror->subscribed = $oprofile->profile_id; + $mirror->subscribed = $profile->id; if ($mirror->find()) { while ($mirror->fetch()) { $count++; } } + } catch (NoProfileException $e) { + // We can't handle this kind of Ostatus_profile since it has no + // local profile } + return true; } @@ -180,6 +163,7 @@ class SubMirrorPlugin extends Plugin $mirror->subscriber = $profile->id; $entry = array( 'id' => 'mirrors', + // TRANS: Label in profile statistics section, followed by a count. 'label' => _m('Mirrored feeds'), 'link' => common_local_url('mirrorsettings'), 'value' => $mirror->count(),