Поддержка серверов

CMain::SetGroupRight: метод Битрикс

Постоянная ссылка: http://bxapi.ru/src/?id=161889

<?php 
//    /bitrix/modules/main/classes/general/main.phpCMain::SetGroupRight()
//    2566:

    
public static function SetGroupRight($module_id$group_id$right$site_id=false)
    {
        global 
$DB;
        
$err_mess = (CAllMain::err_mess())."<br>Function: SetGroupRight<br>Line: ";
        
$group_id intval($group_id);

        if(
COption::GetOptionString("main""event_log_module_access""N") === "Y")
        {
            
//get old value
            
$sOldRight "";
            
$rsRight $DB->Query("SELECT G_ACCESS FROM b_module_group WHERE MODULE_ID='".$DB->ForSql($module_id,50)."' AND GROUP_ID=".$group_id." AND SITE_ID ".($site_id "= '".$DB->ForSql($site_id)."'" "IS NULL"));
            if(
$arRight $rsRight->Fetch())
                
$sOldRight $arRight["G_ACCESS"];
            if(
$sOldRight <> $right)
                
CEventLog::Log("SECURITY""MODULE_RIGHTS_CHANGED""main"$group_id$module_id.($site_id "/".$site_id "").": (".$sOldRight.") => (".$right.")");
        }

        
$arFields = array(
            
"MODULE_ID"    => "'".$DB->ForSql($module_id,50)."'",
            
"GROUP_ID"    => $group_id,
            
"G_ACCESS"    => "'".$DB->ForSql($right,255)."'"
            
);

        
$rows $DB->Update("b_module_group"$arFields"WHERE MODULE_ID='".$DB->ForSql($module_id,50)."' AND GROUP_ID='".$group_id."' AND SITE_ID ".($site_id "= '".$DB->ForSql($site_id)."'" "IS NULL"), $err_mess.__LINE__);
        if(
intval($rows)<=0)
        {
            if (
$site_id)
                
$arFields["SITE_ID"] = "'".$DB->ForSql($site_id,2)."'";

            
$DB->Insert("b_module_group",$arFields$err_mess.__LINE__);
        }

        foreach (
GetModuleEvents("main""OnAfterSetGroupRight"true) as $arEvent)
        {
            
ExecuteModuleEventEx($arEvent, array("MODULE_ID" => $module_id"GROUP_ID" => $group_id));
        }
    }

Блог разработчика

9 Августа 2016 ResizeImageGet и простой водяной знак налету

Сегодня поговорим о том как проще всего воткнуть водяной знак на картинки в Битрикс. Например, на все изображения каталога.

21 Июля 2016 Добавление вкладки в CRM коробки Битрикс24

В этом посте я покажу, как легко и просто добавить вкладку в сущность CRM. И не просто добавить, а вывести там свой контент.

21 Июля 2016 Как просто обращаться из коробки Битрикс24 на сайт на базе Битрикс

К примеру вам хочется внутренним скриптом дернуть с сайта-магазина информацию, которая там, в свою очередь, закрыта некоторыми правами. Например, админскими. Можно конечно мутить свой REST, или иной формат общения, но проще всего воспользоваться штатным инструментом:

Текст сообщения*
Загрузить изображение