$APPLICATION->AddChainItem(GetMessage("SONET_C10_TITLE")); } if ($_SERVER["REQUEST_METHOD"] == "POST" && $arResult["CurrentUserPerms"]["UserCanModifyGroup"] && strlen($_POST["save"]) > 0 && check_bitrix_sessid()) { $errorMessage = ""; $arIDs = array(); if (strlen($errorMessage) <= 0) { for ($i = 0; $i <= IntVal($_POST["max_count"]); $i++) { if ($_POST["checked_" . $i] == "Y") { $arIDs[] = IntVal($_POST["id_" . $i]); } } if (count($arIDs) <= 0) { $errorMessage .= GetMessage("SONET_C10_NO_SELECTED") . ". "; } } if (strlen($errorMessage) <= 0 && !CSocNetUserToGroup::TransferModerator2Member($GLOBALS["USER"]->GetID(), $arResult["Group"]["ID"], $arIDs, CSocNetUser::IsCurrentUserModuleAdmin()) && ($e = $APPLICATION->GetException())) { $errorMessage .= $e->GetString(); } if (strlen($errorMessage) > 0) { $arResult["ErrorMessage"] = $errorMessage; } } $arResult["Moderators"] = false; $dbRequests = CSocNetUserToGroup::GetList(array("USER_LAST_NAME" => "ASC", "USER_NAME" => "ASC"), array("GROUP_ID" => $arResult["Group"]["ID"], "<=ROLE" => SONET_ROLES_MODERATOR, "USER_ACTIVE" => "Y"), false, $arNavParams, array("ID", "USER_ID", "ROLE", "DATE_CREATE", "DATE_UPDATE", "USER_NAME", "USER_LAST_NAME", "USER_SECOND_NAME", "USER_LOGIN", "USER_PERSONAL_PHOTO", "USER_PERSONAL_GENDER", "USER_IS_ONLINE")); if ($dbRequests) { $arResult["Moderators"] = array(); $arResult["Moderators"]["List"] = false; while ($arRequests = $dbRequests->GetNext()) { if ($arResult["Moderators"]["List"] == false) { $arResult["Moderators"]["List"] = array(); }
$arCurrentUserPerms = CSocNetUserToGroup::InitUserPerms($GLOBALS["USER"]->GetID(), $arGroup, CSocNetUser::IsCurrentUserModuleAdmin()); if (!$arCurrentUserPerms || !$arCurrentUserPerms["UserCanViewGroup"] || !$arCurrentUserPerms["UserCanModifyGroup"]) { echo CUtil::PhpToJsObject(array('ERROR' => 'USER_GROUP_NO_PERMS')); 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) {