<?php require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_before.php"; IncludeModuleLangFile(__FILE__); $errorMessage = ""; if (check_bitrix_sessid()) { $GROUP_ID = intval($_REQUEST['GROUP_ID']); $USER_ID = intval($_REQUEST['USER_ID']); if ($GROUP_ID && $USER_ID && CModule::IncludeModule('socialnetwork')) { $arGroup = CSocNetGroup::GetByID($GROUP_ID); if (intval($arGroup["OWNER_ID"]) != $USER_ID) { if ($arGroup) { $CurrentUserPerms = CSocNetUserToGroup::InitUserPerms($GLOBALS["USER"]->GetID(), $arGroup, CSocNetUser::IsCurrentUserModuleAdmin($arGroup["SITE_ID"])); if ($CurrentUserPerms["UserCanModifyGroup"]) { $res = CSocNetUserToGroup::SetOwner($USER_ID, $GROUP_ID, $arGroup); if (!$res && ($e = $GLOBALS["APPLICATION"]->GetException())) { $errorMessage = $e->GetString(); } if (strlen($errorMessage) <= 0) { echo '<script>window.location.reload();</script>'; } else { echo '<script>alert(\'' . CUtil::JSEscape($errorMessage) . '\');</script>'; } } else { echo '<script>alert(\'Access denied!\');</script>'; } } else { echo '<script>alert(\'Group error!\');</script>'; } } else { // new owner is equal to old one
die; } $arRelationID = array(); $arRelalationData = array(); $rsRelation = CSocNetUserToGroup::GetList(array("ID" => "DESC"), array("USER_ID" => $arUserID, "GROUP_ID" => $arGroup["ID"]), false, false, array("ID", "USER_ID", "GROUP_ID", "ROLE")); while ($arRelation = $rsRelation->Fetch()) { $arRelationID[] = $arRelation["ID"]; $arRelalationData[] = $arRelation; } if ($_POST['ACTION'] == 'U2M' && !CSocNetUserToGroup::TransferMember2Moderator($GLOBALS["USER"]->GetID(), $arGroup["ID"], $arRelationID, CSocNetUser::IsCurrentUserModuleAdmin())) { echo CUtil::PhpToJsObject(array('ERROR' => 'USER_ACTION_FAILED: ' . (($e = $APPLICATION->GetException()) ? $e->GetString() : ""))); die; } elseif ($_POST['ACTION'] == 'M2U' && !CSocNetUserToGroup::TransferModerator2Member($GLOBALS["USER"]->GetID(), $arGroup["ID"], $arRelationID, CSocNetUser::IsCurrentUserModuleAdmin())) { echo CUtil::PhpToJsObject(array('ERROR' => 'USER_ACTION_FAILED: ' . (($e = $APPLICATION->GetException()) ? $e->GetString() : ""))); die; } elseif ($_POST['ACTION'] == 'SETOWNER' && !CSocNetUserToGroup::SetOwner($arUserID[0], $arGroup["ID"], $arGroup)) { echo CUtil::PhpToJsObject(array('ERROR' => 'USER_ACTION_FAILED: ' . (($e = $APPLICATION->GetException()) ? $e->GetString() : ""))); die; } elseif ($_POST['ACTION'] == 'BAN' && !CSocNetUserToGroup::BanMember($GLOBALS["USER"]->GetID(), $arGroup["ID"], $arRelationID, CSocNetUser::IsCurrentUserModuleAdmin())) { echo CUtil::PhpToJsObject(array('ERROR' => 'USER_ACTION_FAILED: ' . (($e = $APPLICATION->GetException()) ? $e->GetString() : ""))); die; } elseif ($_POST['ACTION'] == 'UNBAN' && !CSocNetUserToGroup::UnBanMember($GLOBALS["USER"]->GetID(), $arGroup["ID"], $arRelationID, CSocNetUser::IsCurrentUserModuleAdmin())) { echo CUtil::PhpToJsObject(array('ERROR' => 'USER_ACTION_FAILED: ' . (($e = $APPLICATION->GetException()) ? $e->GetString() : ""))); die; } elseif ($_POST['ACTION'] == 'EX') { foreach ($arRelalationData as $relationData) { //group owner can't exclude himself from the group if ($relationData["ROLE"] == SONET_ROLES_OWNER) { echo CUtil::PhpToJsObject(array('ERROR' => 'SONET_GUE_T_OWNER_CANT_EXCLUDE_HIMSELF')); die; }