• Модуль: socialservices
  • Путь к файлу: ~/bitrix/modules/socialservices/classes/general/openidclient.php
  • Класс: COpenIDClient
  • Вызов: COpenIDClient::GetOpenIDServerTags
public function GetOpenIDServerTags($url)
{
	if ($str = @CHTTP::sGet($url, true))
	{
		$server = '';
		$delegate = '';

		if (preg_match('/]+rel=(["'])([^>"]*s)?openid.server(s[^>"]*)?1[^>]*>/i', $str, $arLinks))
			if (preg_match('/href=["']([^"|']+)["']/i', $arLinks[0], $arHref))
				$server = $arHref[1];

		if (preg_match('/]+rel=(["'])([^>"]*s)?openid.delegate(s[^>"]*)?1[^>]*>/i', $str, $arLinks))
			if (preg_match('/href=["']([^"|']+)["']/i', $arLinks[0], $arHref))
				$delegate = $arHref[1];

		if ($server == '')
		{
			$GLOBALS['APPLICATION']->ThrowException(GetMessage('OPENID_CLIENT_NO_OPENID_SERVER_TAG'));
			return false;
		}
		return array('server' => $server, 'delegate' => $delegate);
	}
	$GLOBALS['APPLICATION']->ThrowException(GetMessage('OPENID_CLIENT_NO_OPENID_SERVER_TAG'));
	return false;
}