]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - plugins/SubMirror/SubMirrorPlugin.php
Merged
[quix0rs-gnu-social.git] / plugins / SubMirror / SubMirrorPlugin.php
index a9cb2315b45e040cb1726914b41dafc10e7e1c86..60560b4afc5bc4cef2d62174736ede7f382e0e7a 100644 (file)
@@ -28,10 +28,10 @@ class SubMirrorPlugin extends Plugin
     /**
      * Hook for RouterInitialized event.
      *
-     * @param Net_URL_Mapper $m path-to-action mapper
+     * @param URLMapper $m path-to-action mapper
      * @return boolean hook return
      */
-    function onRouterInitialized($m)
+    public function onRouterInitialized(URLMapper $m)
     {
         $m->connect('settings/mirror',
                     array('action' => 'mirrorsettings'));
@@ -45,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?
@@ -83,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;
@@ -98,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'),
@@ -140,7 +115,7 @@ class SubMirrorPlugin extends Plugin
         return true;
     }
 
-    function onStartEnqueueNotice($notice, &$transports)
+    function onStartEnqueueNotice(Notice $notice, array &$transports)
     {
         $transports[] = 'mirror';
     }
@@ -154,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;
     }
 
@@ -175,7 +155,7 @@ class SubMirrorPlugin extends Plugin
      * @param array $stats
      * @return boolean hook return value
      */
-    function onProfileStats($profile, &$stats)
+    function onProfileStats(Profile $profile, array &$stats)
     {
         $cur = common_current_user();
         if (!empty($cur) && $cur->id == $profile->id) {
@@ -183,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(),