- Модуль: socialservices
- Путь к файлу: ~/bitrix/modules/socialservices/classes/general/openid.php
- Класс: CSocServOpenID
- Вызов: CSocServOpenID::Authorize
public function Authorize($identity=false, $var=false)
{
if($var === false)
$var = 'OPENID_IDENTITY_OPENID';
$step = COpenIDClient::GetOpenIDAuthStep($var);
if($step > 0)
{
$obOpenID = new COpenIDClient();
if($step == 2)
{
return $obOpenID->Authorize();
}
elseif($step == 1)
{
if($identity === false || is_array($identity))
{
$identity = $_REQUEST[$var];
}
$return_to = CSocServUtil::GetCurUrl("auth_service_id=".urlencode($_REQUEST["auth_service_id"])."&check_key=".CSocServAuthManager::getUniqueKey(), array("SEF_APPLICATION_CUR_PAGE_URL", "auth_service_error", "auth_service_id", "login"));
if($url = $obOpenID->GetRedirectUrl($identity, $return_to))
LocalRedirect($url, true);
else
LocalRedirect(CSocServUtil::GetCurUrl("auth_service_id=".urlencode($_REQUEST["auth_service_id"])."&auth_service_error=1"));
return false;
}
}
return false;
}