• Модуль: fileman
  • Путь к файлу: ~/bitrix/modules/fileman/classes/general/medialib.php
  • Класс: CMedialibCollection
  • Вызов: CMedialibCollection::IsViewable
static function IsViewable($oCol, $arCol=false)
{
	if(!$arCol)
		$arCol = CMedialibCollection::GetList(array('arFilter' => array('ACTIVE' => 'Y')));

	if (!CMedialib::CanDoOperation('medialib_view_collection', $oCol['ID']))
		return false;

	$l = count($arCol);
	if ($oCol['PARENT_ID'])
	{
		$parId = $oCol['PARENT_ID'];
		while(intval($parId) > 0)
		{
			$bFind = false;
			for($i = 0; $i < $l; $i++) // Find parent
			{
				if ($arCol[$i]['ID'] == $parId)
				{
					if (!CMedialib::CanDoOperation('medialib_view_collection', $arCol[$i]['ID']))
						return false;
					$parId = $arCol[$i]['PARENT_ID'];
					$bFind = true;
					break;
				}
			}
			if (!$bFind)
				return false;
		}
	}
	return true;
}