- Модуль: learning
- Путь к файлу: ~/bitrix/modules/learning/classes/general/ilearngraphnode.php
- Класс: CLearnGraphNode
- Вызов: CLearnGraphNode::Remove
static function Remove($id)
{
global $DB;
if ( ! is_numeric($id) )
throw new LearnException ('EA_PARAMS', LearnException::EXC_ERR_GN_REMOVE);
$lessonData = self::GetByID($id);
if ( ! array_key_exists('NAME', $lessonData) )
throw new LearnException ('EA_NOT_EXISTS', LearnException::EXC_ERR_GN_REMOVE);
// Remove pictures
if ( array_key_exists('PREVIEW_PICTURE', $lessonData) && ($lessonData['PREVIEW_PICTURE'] > 0) )
CFile::Delete($lessonData['PREVIEW_PICTURE']);
if ( array_key_exists('DETAIL_PICTURE', $lessonData) && ($lessonData['DETAIL_PICTURE'] > 0) )
CFile::Delete($lessonData['DETAIL_PICTURE']);
// Remove SCORM data
if ( array_key_exists('SCORM', $lessonData) && ($lessonData['SCORM'] === 'Y') )
DeleteDirFilesEx("/".(COption::GetOptionString("main", "upload_dir", "upload"))."/learning/scorm/" . $id);
// Remove graph node
$rc = $DB->Query (
"DELETE FROM b_learn_lesson
WHERE ID = '" . ($id + 0) . "'",
true // ignore errors
);
if ($rc === false)
throw new LearnException ('EA_SQLERROR', LearnException::EXC_ERR_GN_REMOVE);
if ($rc->AffectedRowsCount() == 0)
throw new LearnException ('EA_NOT_EXISTS', LearnException::EXC_ERR_GN_REMOVE);
}