X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=plugins%2FOStatus%2Factions%2Fostatussub.php;h=7531bb688644faa556684b799566702f317daf6d;hb=2744bdcdb76e5d8affa7c54a583effadb7b1430d;hp=8fc1e2e25f38cbb86978a929d4e090186315a6f2;hpb=e58c529c5380f1f45c9b6cf306888d8f52c61316;p=quix0rs-gnu-social.git diff --git a/plugins/OStatus/actions/ostatussub.php b/plugins/OStatus/actions/ostatussub.php index 8fc1e2e25f..7531bb6886 100644 --- a/plugins/OStatus/actions/ostatussub.php +++ b/plugins/OStatus/actions/ostatussub.php @@ -193,31 +193,31 @@ class OStatusSubAction extends Action $hasFN = ($fullname !== '') ? 'nickname' : 'fn nickname entity_nickname'; $this->elementStart('a', array('href' => $profile, 'class' => 'url '.$hasFN)); - $this->raw($nickname); + $this->text($nickname); $this->elementEnd('a'); if (!is_null($fullname)) { $this->elementStart('div', 'fn entity_fn'); - $this->raw($fullname); + $this->text($fullname); $this->elementEnd('div'); } if (!is_null($location)) { $this->elementStart('div', 'label entity_location'); - $this->raw($location); + $this->text($location); $this->elementEnd('div'); } if (!is_null($homepage)) { $this->elementStart('a', array('href' => $homepage, 'class' => 'url entity_url')); - $this->raw($homepage); + $this->text($homepage); $this->elementEnd('a'); } if (!is_null($note)) { $this->elementStart('div', 'note entity_note'); - $this->raw($note); + $this->text($note); $this->elementEnd('div'); } $this->elementEnd('div'); @@ -241,11 +241,16 @@ class OStatusSubAction extends Action */ function pullRemoteProfile() { - $this->profile_uri = $this->trimmed('profile'); + $validate = new Validate(); try { - if (Validate::email($this->profile_uri)) { + $this->profile_uri = Discovery::normalize($this->trimmed('profile')); + } catch (Exception $e) { + $this->profile_uri = null; + } + try { + if (Discovery::isAcct($this->profile_uri) && $validate->email(mb_substr($this->profile_uri, 5))) { $this->oprofile = Ostatus_profile::ensureWebfinger($this->profile_uri); - } else if (Validate::uri($this->profile_uri)) { + } else if ($validate->uri($this->profile_uri)) { $this->oprofile = Ostatus_profile::ensureProfileURL($this->profile_uri); } else { // TRANS: Error message in OStatus plugin. Do not translate the domain names example.com