- Модуль: calendar
- Путь к файлу: ~/bitrix/modules/calendar/classes/general/calendar_sect.php
- Класс: CCalendarSect
- Вызов: CCalendarSect::CleanAccessTable
static function CleanAccessTable()
{
global $DB;
$res = $DB->Query(
"SELECT DISTINCT CA.SECT_ID from b_calendar_access CA
LEFT JOIN b_calendar_section CS ON (CA.SECT_ID=CS.ID)
WHERE concat('',CA.SECT_ID * 1)=CA.SECT_ID AND CS.ID is null",
false, "File: ".__FILE__."
Line: ".__LINE__);
$items = [];
while($r = $res->Fetch())
{
$items[] = "'". (int)$r['SECT_ID'] ."'";
}
// Clean from 'b_calendar_event'
if (count($items))
{
$DB->Query("DELETE FROM b_calendar_access WHERE SECT_ID in (".implode(',', $items).")", false,
"FILE: ".__FILE__."
LINE: ".__LINE__);
}
}