Добавление курсов/уроков


Вариант полуавтоматического добавления учебных материалов.

if (CModule::IncludeModule("learning"))
{
	// Курс куда добавляем урок
	$g_learn_parentLessonId = 326;
	$sort = 100;
	$str = "
	<<<
	Первый урок.
	https://youtube.com/watch?v=8888
	https://main_site.ru/files/w20180117.pdf
	<<<
	Второй урок.
	https://youtube.com/watch?v=9985
	https://main_site.ru/files/w20180335.pdf
	<<<
	Третий урок
	https://youtube.com/watch?v=332211
	https://main_site.ru/files/w20198525.pdf
	<<<
	Четвертый урок.
	https://youtube.com/watch?v=88877444
	https://main_site.ru/files/w201899874.pdf
	";

	$arrTmp = explode("<<<",$str);
	foreach($arrTmp as $array){

		$arrExpl = explode("\n",$array);
		$arItem = [];
		foreach($arrExpl as $str){
			if(strlen($str)>3){
				if(strpos($str,"youtu") !== false)
					$arItem["URL"] = $str;
				elseif(strpos($str,"main_site") !== false)
					$arItem["FILE"] = $str;
				else
					$arItem["NAME"] = $str;
			}
		}
		if(!empty($arItem))
			$arRes[] = $arItem;
	}
	foreach($arRes as $item){
		$arFields = array(
			"ACTIVE" => 'Y' ,
			"NAME" => $item["NAME"], 
			// пользовательское свойство тип строка для ссылки 
			"UF_URL" => $item["URL"],
			// пользовательское свойство тип файл
			"UF_PRESENT" => CFile::MakeFileArray($item["FILE"])
		);
		$ID = CLearnLesson::Add(
			$arFields,
			false,
			$g_learn_parentLessonId,
			array('SORT' => $sort++)
		);
		$success = ($ID>0);

		if($success)
		{
			echo "Ok!";
		}
		else
		{
			if($e = $APPLICATION->GetException())
				echo "Error: ".$e->GetString();
		}
	}

}


Добавить комментарий