• Модуль: socialservices
  • Путь к файлу: ~/bitrix/modules/socialservices/classes/general/mailru2.php
  • Класс: CSocServMailRu2
  • Вызов: CSocServMailRu2::getUrl
public function getUrl($arParams)
{
	global $APPLICATION;

	if (IsModuleInstalled('bitrix24') && defined('BX24_HOST_NAME'))
	{
		$redirect_uri = static::CONTROLLER_URL . "/redirect.php";
		$state = $this->getEntityOAuth()->GetRedirectURI() . "?check_key=" . CSocServAuthManager::getUniqueKey() . "&state=";
		$backurl = $APPLICATION->GetCurPageParam('', array("logout", "auth_service_error", "auth_service_id", "backurl"));
		$state .= urlencode("state=" . urlencode("backurl=" . urlencode($backurl) . (isset($arParams['BACKURL']) ? '&redirect_url=' . urlencode($arParams['BACKURL']) : '')));
	}
	else
	{
		$state = 'site_id=' . SITE_ID . '&backurl=' . urlencode($APPLICATION->GetCurPageParam('check_key=' . CSocServAuthManager::getUniqueKey(), array("logout", "auth_service_error", "auth_service_id", "backurl"))) . (isset($arParams['BACKURL']) ? '&redirect_url=' . urlencode($arParams['BACKURL']) : '');
		$redirect_uri = $this->getEntityOAuth()->GetRedirectURI();
	}

	return $this->getEntityOAuth()->GetAuthUrl($redirect_uri, $state);
}