• Модуль: lists
  • Путь к файлу: ~/bitrix/modules/lists/classes/general/lists.php
  • Класс: CLists
  • Вызов: CLists::GetSocnetPermission
static function GetSocnetPermission($iblock_id)
{
	global $DB, $CACHE_MANAGER;
	$iblock_id = intval($iblock_id);

	$arCache = array();
	if(!array_key_exists($iblock_id, $arCache))
	{
		$arCache[$iblock_id] = CLists::GetDefaultSocnetPermission();

		if(CACHED_b_lists_permission !== false)
		{
			$cache_id = "b_lists_perm".$iblock_id;

			if($CACHE_MANAGER->Read(CACHED_b_lists_permission, $cache_id))
			{
				$arCache[$iblock_id] = $CACHE_MANAGER->Get($cache_id);
			}
			else
			{
				$res = $DB->Query("
					select SOCNET_ROLE, PERMISSION
					from b_lists_socnet_group
					where IBLOCK_ID=".$iblock_id."
				", false, "FILE: ".__FILE__."
LINE: ".__LINE__); while($ar = $res->Fetch()) $arCache[$iblock_id][$ar["SOCNET_ROLE"]] = $ar["PERMISSION"]; $CACHE_MANAGER->Set($cache_id, $arCache[$iblock_id]); } } else { $res = $DB->Query(" select SOCNET_ROLE, PERMISSION from b_lists_socnet_group where IBLOCK_ID=".$iblock_id." ", false, "FILE: ".__FILE__."
LINE: ".__LINE__); while($ar = $res->Fetch()) $arCache[$iblock_id][$ar["SOCNET_ROLE"]] = $ar["PERMISSION"]; } $arCache[$iblock_id]["A"] = "X"; //Group owner always in charge $arCache[$iblock_id]["T"] = "D"; //Banned $arCache[$iblock_id]["Z"] = "D"; //and Request never get to list } return $arCache[$iblock_id]; }