]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Add nohub config setting to allowed non-PuSH feeds
authorMikael Nordfeldth <mmn@hethane.se>
Fri, 16 Jan 2015 00:10:55 +0000 (01:10 +0100)
committerMikael Nordfeldth <mmn@hethane.se>
Fri, 16 Jan 2015 00:10:55 +0000 (01:10 +0100)
plugins/OStatus/classes/FeedSub.php
plugins/OStatus/classes/Ostatus_profile.php

index 25a826a5524bf0438b9f2a237ed63cb64f537782..57c056f5fbd7f3b29849221d56b40ffc65ab4e23 100644 (file)
@@ -168,7 +168,7 @@ class FeedSub extends Managed_DataObject
         $discover->discoverFromFeedURL($feeduri);
 
         $huburi = $discover->getHubLink();
-        if (!$huburi && !common_config('feedsub', 'fallback_hub')) {
+        if (!$huburi && !common_config('feedsub', 'fallback_hub') && !common_config('feedsub', 'nohub')) {
             throw new FeedSubNoHubException();
         }
 
@@ -211,8 +211,8 @@ class FeedSub extends Managed_DataObject
                 // No native hub on this feed?
                 // Use our fallback hub, which handles polling on our behalf.
             } else if (common_config('feedsub', 'nohub')) {
-                // Fake it! We're just testing remote feeds w/o hubs.
-                // We'll never actually get updates in this mode.
+                // For this to actually work, we'll need some polling mechanism.
+                // The FeedPoller plugin should take care of it.
                 return;
             } else {
                 // TRANS: Server exception.
@@ -247,8 +247,8 @@ class FeedSub extends Managed_DataObject
                 // No native hub on this feed?
                 // Use our fallback hub, which handles polling on our behalf.
             } else if (common_config('feedsub', 'nohub')) {
-                // Fake it! We're just testing remote feeds w/o hubs.
-                // We'll never actually get updates in this mode.
+                // We need a feedpolling plugin (like FeedPoller) active so it will
+                // set the 'nohub' state to 'inactive' for us.
                 return;
             } else {
                 // TRANS: Server exception.
index 6f5380e68ace71f2c49ac194f12cb5d1a2fbd8b5..b94950138fd15d8acd8d615f1f4c38de4f66d0a2 100644 (file)
@@ -1141,8 +1141,9 @@ class Ostatus_profile extends Managed_DataObject
                         ?: $discover->getAtomLink(Salmon::NS_REPLIES);
         $hints['salmon'] = $salmonuri;
 
-        if (!$huburi && !common_config('feedsub', 'fallback_hub')) {
+        if (!$huburi && !common_config('feedsub', 'fallback_hub') && !common_config('feedsub', 'nohub')) {
             // We can only deal with folks with a PuSH hub
+            // unless we have something similar available locally.
             throw new FeedSubNoHubException();
         }
 
@@ -1534,7 +1535,7 @@ class Ostatus_profile extends Managed_DataObject
             $huburi = $discover->getHubLink();
         }
 
-        if (!$huburi && !common_config('feedsub', 'fallback_hub')) {
+        if (!$huburi && !common_config('feedsub', 'fallback_hub') && !common_config('feedsub', 'nohub')) {
             // We can only deal with folks with a PuSH hub
             throw new FeedSubNoHubException();
         }