function UnRegister($member_id) { if (($ar_member = CControllerMember::GetMember($member_id)) === false) { return false; } $arParameters = array(); $oRequest = new CControllerServerRequestTo($ar_member, "unregister", $arParameters); $oResponse = $oRequest->Send(); $arControllerLog = array('NAME' => 'UNREGISTRATION', 'CONTROLLER_MEMBER_ID' => $ar_member['ID'], 'STATUS' => 'Y', 'DESCRIPTION' => GetMessage("CTRLR_MEM_LOG_DISCON")); if ($oResponse == false) { $e = $GLOBALS['APPLICATION']->GetException(); $arControllerLog['DESCRIPTION'] = $e->GetString(); $result = false; } else { $result = $oResponse->OK(); $arControllerLog['DESCRIPTION'] = $oResponse->text; if ($result === false) { $e = new CApplicationException(GetMessage("CTRLR_MEM_LOG_DISCON_ERR") . " " . $oResponse->text); $GLOBALS["APPLICATION"]->ThrowException($e); } else { CControllerMember::Update($ar_member['ID'], array('DISCONNECTED' => 'Y')); } } if ($result === false) { $arControllerLog['DESCRIPTION'] = $e->GetString() . "\r\n" . $arControllerLog['DESCRIPTION']; $arControllerLog['STATUS'] = 'N'; } CControllerLog::Add($arControllerLog); return $result; }
$bRegistrationByTicketError = false; if ($_SERVER["REQUEST_METHOD"] == "POST" && !$message && $_REQUEST['unregister'] != 'Y' && (strlen($save) > 0 || strlen($save_ext) > 0 || strlen($apply) > 0) && $MOD_RIGHT >= "T") { if (!check_bitrix_sessid()) { $message = new CAdminMessage(GetMessage("CTRLR_MEM_EDIT_ERR3")); } else { $arFields = array("ACTIVE" => $_REQUEST["ACTIVE"], "NAME" => $_REQUEST["NAME"], "URL" => $_REQUEST["PROTOCOL"] . $_REQUEST["URL"], "CONTACT_PERSON" => $_REQUEST["CONTACT_PERSON"], "EMAIL" => $_REQUEST["EMAIL"], "DATE_ACTIVE_FROM" => $_REQUEST["DATE_ACTIVE_FROM"], "DATE_ACTIVE_TO" => $_REQUEST["DATE_ACTIVE_TO"], "MEMBER_ID" => $_REQUEST["MEMBER_ID"], "NOTES" => $_REQUEST["NOTES"], "CONTROLLER_GROUP_ID" => $_REQUEST["CONTROLLER_GROUP_ID"]); if (COption::GetOptionString("controller", "show_hostname") == "Y") { $arFields["HOSTNAME"] = $_REQUEST["HOSTNAME"]; } if (ControllerIsSharedMode()) { $arFields["SHARED_KERNEL"] = $_REQUEST["SHARED_KERNEL"]; } $USER_FIELD_MANAGER->EditFormAddFields($ENTITY_ID, $arFields); if ($ID > 0) { if ($MOD_RIGHT >= "V") { $res = CControllerMember::Update($ID, $arFields); } } else { if ($sRegistrationMode == "ticket") { $arFields["SECRET_ID"] = $_REQUEST["SECRET_ID"]; if (!($ID = CControllerMember::RegisterMemberByTicket($arFields, $_REQUEST["TICKET_ID"], $_REQUEST["PROTOCOL"] . $_REQUEST["URL"]))) { if ($e = $APPLICATION->GetException()) { $message = new CAdminMessage(GetMessage("CTRLR_MEM_EDIT_ERR4"), $e); } $bRegistrationByTicketError = true; } } elseif ($sRegistrationMode == "password") { if (strlen($_REQUEST["ADMIN_LOGIN"]) < 0 || strlen($_REQUEST["ADMIN_PASSWORD"]) <= 0) { $e = new CApplicationException(GetMessage("CTRLR_MEM_EDIT_ERR5")); $message = new CAdminMessage(GetMessage("CTRLR_MEM_EDIT_ERR4"), $e); } elseif (!($ID = CControllerMember::RegisterMemberByPassword($arFields, $_REQUEST["ADMIN_LOGIN"], $_REQUEST["ADMIN_PASSWORD"]))) {
switch ($_REQUEST['action']) { case "delete": if ($MOD_RIGHT >= "W") { @set_time_limit(0); $DB->StartTransaction(); if (!CControllerMember::Delete($ID)) { $DB->Rollback(); $lAdmin->AddGroupError(GetMessage("CTRL_MEMB_ADMIN_DEL_ERR"), $ID); } $DB->Commit(); } break; case "activate": case "deactivate": $arFields = array("ACTIVE" => $_REQUEST['action'] == "activate" ? "Y" : "N"); if (!CControllerMember::Update($ID, $arFields)) { if ($e = $APPLICATION->GetException()) { $lAdmin->AddGroupError(GetMessage("CTRL_MEMB_ADMIN_SAVE_ERR") . " " . $ID . ": " . $e->GetString(), $ID); } } break; case "disconnect": if (!CControllerMember::UnRegister($ID)) { if ($e = $APPLICATION->GetException()) { $lAdmin->AddGroupError(GetMessage("CTRL_MEMB_ADMIN_DISC_ERR") . " " . $ID . ": " . $e->GetString(), $ID); } } break; case "update_settings": if (!CControllerMember::SetGroupSettings($ID)) { if ($e = $APPLICATION->GetException()) {
} else { echo "500 ER\n"; } } else { echo "200 OK\n"; } } else { echo "200 OK\n"; } break; case "group": $rsGroup = CControllerGroup::GetList(array("SORT" => "ASC"), array("NAME" => $arParams["ACTION"])); if ($arGroup = $rsGroup->Fetch()) { if ($arMember["CONTROLLER_GROUP_ID"] != $arGroup["ID"]) { $arFields = array("CONTROLLER_GROUP_ID" => $arGroup['ID']); if (!CControllerMember::Update($arMember["ID"], $arFields, $arParams["NOTES"])) { echo "401 ER\n"; if ($e = $APPLICATION->GetException()) { echo "401 ER\n", GetMessage("CC_BCSC_UPDATE_ERROR", array("#ID#" => $ID, "#MESSAGE#" => $e->GetString())); } else { echo "500 ER\n"; } } else { CControllerMember::UpdateCounters($arMember["ID"]); echo "200 OK\n"; } } elseif (strlen($arParams["NOTES"])) { CControllerMember::addHistoryNote($arMember["ID"], $arParams["NOTES"]); CControllerMember::UpdateCounters($arMember["ID"]); echo "200 OK\n"; } else {