OStatus: accept webfinger addresses as well as profile URLs in the explicit remote subscribe form.

This commit is contained in:
Brion Vibber 2010-02-23 21:11:44 +00:00
parent b09304a6c4
commit 5f9a8ca64b

View File

@ -288,10 +288,15 @@ class OStatusSubAction extends Action
} }
$this->profile_uri = $profile_uri; $this->profile_uri = $profile_uri;
// @fixme validate, normalize bla bla
try { try {
$oprofile = Ostatus_profile::ensureProfile($this->profile_uri); if (Validate::email($this->profile_uri)) {
$this->oprofile = $oprofile; $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; return true;
} catch (FeedSubBadURLException $e) { } catch (FeedSubBadURLException $e) {
$this->error = _m('Invalid URL or could not reach server.'); $this->error = _m('Invalid URL or could not reach server.');