/**
* @global \CUser $USER
* @global \CMain $APPLICATION
* @global \CDatabase $DB
*/
IncludeModuleLangFile(__FILE__);
$module_id = $module_id ?? '';
$MODULE_RIGHT = $APPLICATION->GetGroupRight($module_id);
$md = CModule::CreateModuleObject($module_id);
$arFilter = Array("ACTIVE"=>"Y");
if($md->SHOW_SUPER_ADMIN_GROUP_RIGHTS != "Y")
$arFilter["ADMIN"] = "N";
$arGROUPS = array();
$z = CGroup::GetList("sort", "asc", $arFilter);
while($zr = $z->Fetch())
{
$ar = array();
$ar["ID"] = intval($zr["ID"]);
$ar["NAME"] = htmlspecialcharsbx($zr["NAME"]);
$arGROUPS[] = $ar;
}
if (!function_exists("__GroupRightsShowRow"))
{
function __GroupRightsShowRowDefault($module_id, $ar, $arSites, $arRightsUseSites, $site_id_tmp)
{
$GROUP_DEFAULT_RIGHT = COption::GetOptionString($module_id, "GROUP_DEFAULT_RIGHT", false, ($site_id_tmp <> '' ? $site_id_tmp : ""), ($site_id_tmp <> ''));
if (!$GROUP_DEFAULT_RIGHT)
{
if ($site_id_tmp == '')
$GROUP_DEFAULT_RIGHT = "D";
else
return;
}
$titleCol = bitrix_sessid_post()."".GetMessage("MAIN_BY_DEFAULT")."";
__GroupRightsShowRow($titleCol, false, 0, $ar, $GROUP_DEFAULT_RIGHT, $site_id_tmp, $arRightsUseSites, $arSites, false);
}
function __GetGroupRight($module_id, $groupID, $site_id_tmp, $arSites, $arGROUPS)
{
global $APPLICATION;
static $arRightsAll = array();
static $bInit = false;
if (!$bInit)
{
$arGroupId = array();
foreach($arGROUPS as $valueTmp)
{
if (
isset($valueTmp["ID"])
&& !is_array($valueTmp["ID"])
&& intval($valueTmp["ID"]) > 0
)
{
$arGroupId[] = $valueTmp["ID"];
}
}
if (!empty($arGroupId))
{
$arRightsAll = $APPLICATION->GetUserRightArray($module_id, $arGroupId);
}
$bInit = true;
}
if (!$site_id_tmp)
{
$site_id_tmp = "common";
}
$res = '';
if (
isset($arRightsAll[$site_id_tmp])
&& isset($arRightsAll[$site_id_tmp][$groupID])
)
{
$res = $arRightsAll[$site_id_tmp][$groupID];
}
return $res;
}
function __GroupRightsShowRowGroup($module_id, $ar, $value, $arSites, $arRightsUseSites, $site_id_tmp, $arGROUPS)
{
$v = __GetGroupRight($module_id, $value["ID"], $site_id_tmp, $arSites, $arGROUPS);
if($v == '')
{
return;
}
$titleCol = $value["NAME"]." [".$value["ID"]."]:".(($value["ID"]==1 && $md->SHOW_SUPER_ADMIN_GROUP_RIGHTS=="Y") ? "
".GetMessage("MAIN_SUPER_ADMIN_RIGHTS_COMMENT")."" : "");
__GroupRightsShowRow($titleCol, $value["ID"], $value["ID"], $ar, $v, $site_id_tmp, $arRightsUseSites, $arSites, true);
}
function __GroupRightsShowRow($titleCol, $groupID, $group_id, $ar, $v, $site_id_tmp, $arRightsUseSites, $arSites, $useDefault = true)
{
?>