- Модуль: fileman
- Путь к файлу: ~/bitrix/modules/fileman/classes/general/medialib.php
- Класс: CMedialib
- Вызов: CMedialib::MultiActionDelete
static function MultiActionDelete($Params = array())
{
global $DB;
if (is_array($Params['Cols']) && count($Params['Cols']) > 0) // Del collections
{
$strCols = "0";
for($i = 0, $l = count($Params['Cols']); $i < $l; $i++)
{
$colId = $Params['Cols'][$i];
if (CMedialib::CanDoOperation('medialib_del_collection', $colId)) // Access
{
$strCols .= ",".intval($colId);
}
}
if ($strCols != "0")
{
$strSql = "DELETE FROM b_medialib_collection WHERE ID in (".$strCols.")";
$z = $DB->Query($strSql, false, "FILE: ".__FILE__."
LINE: ".__LINE__);
$strSql = "DELETE FROM b_medialib_collection_item WHERE COLLECTION_ID in (".$strCols.")";
$z = $DB->Query($strSql, false, "FILE: ".__FILE__."
LINE: ".__LINE__);
}
}
if (is_array($Params['Items']) && count($Params['Items']) > 0) // Del items
{
foreach($Params['Items'] as $colId => $arItems)
{
if (!CMedialib::CanDoOperation('medialib_del_item', $colId)) // Access
{
return false;
}
$strItems = "0";
for($i = 0, $l = count($arItems); $i < $l; $i++)
{
$strItems .= ",".intval($arItems[$i]);
}
$strSql = "DELETE FROM b_medialib_collection_item WHERE ITEM_ID IN (".$strItems.") AND COLLECTION_ID=".intval($colId);
$z = $DB->Query($strSql, false, "FILE: ".__FILE__."
LINE: ".__LINE__);
}
}
CMedialibItem::DeleteEmpty(); // Del all items which are absent in 'b_medialib_collection_item'
return true;
}