$message = new CAdminMessage(GetMessage("LEARNING_ERROR") . ': ' . GetMessage('LEARNING_ACCESS_D_FOR_EDIT_CONTENT')); } $bVarsFromForm = true; $res = false; $was_errors = true; } } // Block 2: relations (there is will be silently ignoring on insuficient permissions) // Process relations, data submitted from CLearnRelationHelper::RenderForm() if (!$createNewLesson && $LESSON_ID > 0 && !isset($_REQUEST['SKIP_RELATIONS_SAVING'])) { $sort = false; // default sort order will be used for new edges if (isset($_POST['EDGE_SORT']) && $_POST['EDGE_SORT'] > 0) { $sort = (int) $_POST['EDGE_SORT']; } CLearnRelationHelper::ProccessPOST($oAccess, $LESSON_ID, $sort); } // Block 3: permissions if (array_key_exists('LESSON_RIGHTS_marker', $_POST) && $LESSON_ID > 0 && !isset($_REQUEST['SKIP_RIGHTS_SAVING'])) { $res = true; try { // Work with permissions if ($oAccess->IsLessonAccessible($LESSON_ID, CLearnAccess::OP_LESSON_MANAGE_RIGHTS)) { // Process permissions $arPostedRights = array(); if (is_array($_POST['LESSON_RIGHTS'])) { $arPostedRights = $_POST['LESSON_RIGHTS']; } $arAccessSymbols = array(); $arTaskIds = array(); foreach ($arPostedRights as $key => $arData) {
$course = new CCourse(); $arPREVIEW_PICTURE = $_FILES["PREVIEW_PICTURE"]; $arPREVIEW_PICTURE["del"] = $PREVIEW_PICTURE_del; $arPREVIEW_PICTURE["MODULE_ID"] = "learning"; $arPREVIEW_PICTURE["description"] = $PREVIEW_PICTURE_descr; $arFields = array("ACTIVE" => $ACTIVE, "NAME" => $NAME, "CODE" => $CODE, "SITE_ID" => $SITE_ID, "GROUP_ID" => $GROUP, "SORT" => $SORT, "DETAIL_TEXT" => $DETAIL_TEXT, "DETAIL_TEXT_TYPE" => $DETAIL_TEXT_TYPE, "PREVIEW_PICTURE" => $arPREVIEW_PICTURE, "PREVIEW_TEXT" => $PREVIEW_TEXT, "PREVIEW_TEXT_TYPE" => $PREVIEW_TEXT_TYPE, "ACTIVE_FROM" => $ACTIVE_FROM, "ACTIVE_TO" => $ACTIVE_TO, "RATING" => $RATING, "RATING_TYPE" => $RATING_TYPE); $USER_FIELD_MANAGER->EditFormAddFields('LEARNING_LESSONS', $arFields); $res = false; if ($COURSE_ID > 0) { $linkedLessonId = CCourse::CourseGetLinkedLesson($COURSE_ID); if ($linkedLessonId !== false) { if ($oAccess->IsLessonAccessible($linkedLessonId, CLearnAccess::OP_LESSON_WRITE)) { $res = $course->Update($COURSE_ID, $arFields); } // Process relations, data submitted from CLearnRelationHelper::RenderForm() CLearnRelationHelper::ProccessPOST($oAccess, $linkedLessonId); } } else { if ($oAccess->IsBaseAccess(CLearnAccess::OP_LESSON_CREATE)) { $COURSE_ID = $course->Add($arFields); $res = $COURSE_ID > 0; } } try { // Work with permissions if (isset($_POST['LESSON_RIGHTS_marker']) && $COURSE_ID > 0) { $linkedLessonId = CCourse::CourseGetLinkedLesson($COURSE_ID); if ($linkedLessonId !== false && $oAccess->IsLessonAccessible($linkedLessonId, CLearnAccess::OP_LESSON_MANAGE_RIGHTS)) { // Process permissions $arPostedRights = array(); if (is_array($_POST['LESSON_RIGHTS'])) {