]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - plugins/OStatus/actions/ostatusinit.php
OStatus remote address example now more generic
[quix0rs-gnu-social.git] / plugins / OStatus / actions / ostatusinit.php
index d8b3fdec51832d36f7fdac3f28b9b67c567ef1e1..4edaafaa4eb97f3003d25febd17746fa0fb074a3 100644 (file)
@@ -35,14 +35,13 @@ class OStatusInitAction extends Action
     var $profile;
     var $err;
 
-    function prepare($args)
+    protected function prepare(array $args=array())
     {
         parent::prepare($args);
 
         if (common_logged_in()) {
             // TRANS: Client error.
             $this->clientError(_m('You can use the local subscription!'));
-            return false;
         }
 
         // Local user or group the remote wants to subscribe to
@@ -57,9 +56,9 @@ class OStatusInitAction extends Action
         return true;
     }
 
-    function handle($args)
+    protected function handle()
     {
-        parent::handle($args);
+        parent::handle();
 
         if ($_SERVER['REQUEST_METHOD'] == 'POST') {
             /* Use a session token for CSRF protection. */
@@ -144,7 +143,7 @@ class OStatusInitAction extends Action
         // TRANS: Field label.
         $this->input('profile', _m('Profile Account'), $this->profile,
                       // TRANS: Tooltip for field label "Profile Account".
-                     _m('Your account ID (e.g. user@identi.ca).'));
+                     _m('Your account ID (e.g. user@example.com).'));
         $this->elementEnd('li');
         $this->elementEnd('ul');
         $this->submit('submit', $submit);
@@ -180,7 +179,11 @@ class OStatusInitAction extends Action
         $link = $xrd->get('http://ostatus.org/schema/1.0/subscribe');
         if (!is_null($link)) {
             // We found a URL - let's redirect!
-            $url = Discovery::applyTemplate($link['template'], $target_profile);
+            if (!empty($link->template)) {
+                $url = Discovery::applyTemplate($link->template, $target_profile);
+            } else {
+                $url = $link->href;
+            }
             common_log(LOG_INFO, "Sending remote subscriber $acct to $url");
             common_redirect($url, 303);
         }