X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fopenid.php;h=2bb7f495431d348c1295a1737c9bb68243762528;hb=1f535016d473b2e619ff9dc5b45c75b45be92a70;hp=209960ee58b44968bd0c65d010e3824631f41856;hpb=53e9203d37ee0c1a2afed0faf295e3c622ac2e17;p=friendica.git diff --git a/mod/openid.php b/mod/openid.php index 209960ee58..2bb7f49543 100644 --- a/mod/openid.php +++ b/mod/openid.php @@ -4,31 +4,29 @@ */ use Friendica\App; -use Friendica\Core\Authentication; use Friendica\Core\Config; use Friendica\Core\L10n; use Friendica\Core\Logger; -use Friendica\Core\System; +use Friendica\Core\Session; use Friendica\Database\DBA; use Friendica\Util\Strings; function openid_content(App $a) { - $noid = Config::get('system','no_openid'); - if($noid) + if (Config::get('system','no_openid')) { $a->internalRedirect(); + } Logger::log('mod_openid ' . print_r($_REQUEST,true), Logger::DATA); - if((x($_GET,'openid_mode')) && (x($_SESSION,'openid'))) { + if (!empty($_GET['openid_mode']) && !empty($_SESSION['openid'])) { $openid = new LightOpenID($a->getHostName()); - if($openid->validate()) { - - $authid = $_REQUEST['openid_identity']; + if ($openid->validate()) { + $authid = $openid->identity; - if(! strlen($authid)) { + if (empty($authid)) { Logger::log(L10n::t('OpenID protocol error. No ID returned.') . EOL); $a->internalRedirect(); } @@ -38,22 +36,16 @@ function openid_content(App $a) { // mod/settings.php in 8367cad so it might have left mixed // records in the user table // - $r = q("SELECT * - FROM `user` - WHERE ( `openid` = '%s' OR `openid` = '%s' ) - AND `blocked` = 0 AND `account_expired` = 0 - AND `account_removed` = 0 AND `verified` = 1 - LIMIT 1", - DBA::escape($authid), DBA::escape(Strings::normaliseOpenID($authid)) - ); - - if (DBA::isResult($r)) { + $condition = ['blocked' => false, 'account_expired' => false, 'account_removed' => false, 'verified' => true, + 'openid' => [$authid, Strings::normaliseOpenID($authid)]]; + $user = DBA::selectFirst('user', [], $condition); + if (DBA::isResult($user)) { // successful OpenID login unset($_SESSION['openid']); - Authentication::setAuthenticatedSessionForUser($r[0],true,true); + Session::setAuthenticatedForUser($a, $user, true, true); // just in case there was no return url set // and we fell through @@ -64,7 +56,7 @@ function openid_content(App $a) { // Successful OpenID login - but we can't match it to an existing account. // New registration? - if (intval(Config::get('config', 'register_policy')) === REGISTER_CLOSED) { + if (intval(Config::get('config', 'register_policy')) === \Friendica\Module\Register::CLOSED) { notice(L10n::t('Account not found and OpenID registration is not permitted on this site.') . EOL); $a->internalRedirect(); } @@ -77,10 +69,10 @@ function openid_content(App $a) { if ($k === 'namePerson/friendly') { $nick = Strings::escapeTags(trim($v)); } - if($k === 'namePerson/first') { + if ($k === 'namePerson/first') { $first = Strings::escapeTags(trim($v)); } - if($k === 'namePerson') { + if ($k === 'namePerson') { $args .= '&username=' . urlencode(Strings::escapeTags(trim($v))); } if ($k === 'contact/email') { @@ -94,17 +86,15 @@ function openid_content(App $a) { } } } - if ($nick) { + if (!empty($nick)) { $args .= '&nickname=' . urlencode($nick); - } - elseif ($first) { + } elseif (!empty($first)) { $args .= '&nickname=' . urlencode($first); } - if ($photosq) { + if (!empty($photosq)) { $args .= '&photo=' . urlencode($photosq); - } - elseif ($photo) { + } elseif (!empty($photo)) { $args .= '&photo=' . urlencode($photo); }