]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
OStatus: accept webfinger addresses as well as profile URLs in the explicit remote...
authorBrion Vibber <brion@pobox.com>
Tue, 23 Feb 2010 21:11:44 +0000 (21:11 +0000)
committerBrion Vibber <brion@pobox.com>
Tue, 23 Feb 2010 21:11:44 +0000 (21:11 +0000)
plugins/OStatus/actions/ostatussub.php

index b3569e6951c11f70da6c95ef3ca22a73ddeca6b4..12832cdcfb2fab8b2a0e4a8298ef42ecd99bd68e 100644 (file)
@@ -288,10 +288,15 @@ class OStatusSubAction extends Action
         }
         $this->profile_uri = $profile_uri;
 
-        // @fixme validate, normalize bla bla
         try {
-            $oprofile = Ostatus_profile::ensureProfile($this->profile_uri);
-            $this->oprofile = $oprofile;
+            if (Validate::email($this->profile_uri)) {
+                $this->oprofile = Ostatus_profile::ensureWebfinger($this->profile_uri);
+            } else if (Validate::uri($this->profile_uri)) {
+                $this->oprofile = Ostatus_profile::ensureProfile($this->profile_uri);
+            } else {
+                $this->error = _m("Invalid address format.");
+                return false;
+            }
             return true;
         } catch (FeedSubBadURLException $e) {
             $this->error = _m('Invalid URL or could not reach server.');