- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/classes/general/controller_member.php
- Класс: CControllerClient
- Вызов: CControllerClient::JoinToControllerEx
static function JoinToControllerEx($controller_url, $controller_login, $controller_password, $arMemberParams = Array())
{
if(COption::GetOptionString("main", "controller_member", "N")=="Y")
return false;
if($arMemberParams["URL"] == '')
$arMemberParams["URL"] = $_SERVER['HTTP_HOST'];
list($member_id, $member_secret_id, $ticket_id) = CControllerClient::InitTicket($controller_url);
// send to controller
$arVars =
Array(
"member_secret_id" => $member_secret_id,
"ticket_id" => $ticket_id,
"admin_login" => $controller_login,
"admin_password" => $controller_password,
"url" => $arMemberParams["URL"],
"name" => $arMemberParams["NAME"],
"contact_person" => $arMemberParams["CONTACT_PERSON"],
"email" => $arMemberParams["EMAIL"],
"shared_kernel" => ($arMemberParams["SHARED_KERNEL"]?"Y":"N"),
);
if($arMemberParams["CONTROLLER_GROUP"]>0)
$arVars['group_id'] = $arMemberParams["CONTROLLER_GROUP"];
$oRequest = new CControllerClientRequestTo("join", $arVars);
if(($oResponse = $oRequest->Send())==false)
return false;
if(!$oResponse->OK())
{
$e = new CApplicationException(GetMessage("MAIN_CMEMBER_ERR3").": ".$oResponse->text);
$GLOBALS["APPLICATION"]->ThrowException($e);
return false;
}
COption::SetOptionString("main", "controller_member", "Y");
global $USER;
$USER->Authorize($USER->GetID());
return true;
}