- cleaning and update * @author Julio Montoya - Improving the list of templates * @package chamilo.learnpath */ $this_section = SECTION_COURSES; api_protect_course_script(); $isStudentView = isset($_REQUEST['isStudentView']) ? $_REQUEST['isStudentView'] : null; $learnpath_id = isset($_REQUEST['lp_id']) ? intval($_REQUEST['lp_id']) : null; $submit = isset($_POST['submit_button']) ? $_POST['submit_button'] : null; $type = isset($_GET['type']) ? $_GET['type'] : null; $action = isset($_GET['action']) ? $_GET['action'] : null; $is_allowed_to_edit = api_is_allowed_to_edit(null, false); $listUrl = api_get_path(WEB_CODE_PATH).'lp/lp_controller.php?action=view&lp_id='.$learnpath_id.'&'.api_get_cidreq().'&isStudentView=true'; if (!$is_allowed_to_edit) { header("Location: $listUrl"); exit; } /** @var learnpath $learnPath */ $learnPath = Session::read('oLP'); if (empty($learnPath)) { api_not_allowed(); } if ($learnPath->get_lp_session_id() != api_get_session_id()) { // You cannot edit an LP from a base course. header("Location: $listUrl"); exit; } $htmlHeadXtra[] = '"; /* SHOWING THE ADMIN TOOLS */ if (isset($_SESSION['gradebook'])) { $gradebook = $_SESSION['gradebook']; } if (!empty($gradebook) && $gradebook == 'view') { $interbreadcrumb[] = array( 'url' => '../gradebook/'.$_SESSION['gradebook_dest'], 'name' => get_lang('ToolGradebook') ); } $htmlHeadXtra[] = api_get_jquery_libraries_js(array('jquery-ui', 'jquery-upload')); $interbreadcrumb[] = array( 'url' => 'lp_controller.php?action=list&'.api_get_cidreq(), 'name' => get_lang('LearningPaths'), ); $interbreadcrumb[] = array( 'url' => api_get_self()."?action=build&lp_id=$learnpath_id&".api_get_cidreq(), 'name' => $learnPath->get_name(), ); switch ($type) { case 'dir': $interbreadcrumb[] = array( 'url' => 'lp_controller.php?action=add_item&type=step&lp_id='.$learnPath->get_id().'&'.api_get_cidreq(), 'name' => get_lang('NewStep'), ); $interbreadcrumb[] = array('url' => '#', 'name' => get_lang('NewChapter')); break; case 'document': $interbreadcrumb[] = array( 'url' => 'lp_controller.php?action=add_item&type=step&lp_id='.$learnPath->get_id().'&'.api_get_cidreq(), 'name' => get_lang('NewStep'), ); break; default: $interbreadcrumb[] = array('url' => '#', 'name' => get_lang('NewStep')); break; } if ($action == 'add_item' && $type == 'document') { $interbreadcrumb[] = array('url' => '#', 'name' => get_lang('NewDocumentCreated')); } // Theme calls. $show_learn_path = true; $lp_theme_css = $learnPath->get_theme(); Display::display_header(null, 'Path'); $suredel = trim(get_lang('AreYouSureToDeleteJS')); //@todo move this somewhere else css/fix.css ?> build_action_menu(); echo '
'; echo '
'; echo $learnPath->return_new_tree(null, true); $message = isset($_REQUEST['message']) ? $_REQUEST['message'] : null; // Show the template list. if (($type == 'document' || $type == 'step') && !isset($_GET['file'])) { // Show the template list. echo '
'; echo '
'; } echo '
'; echo '
'; //@todo use session flash messages if (in_array($message, array('ItemUpdated'))) { echo Display::return_message(get_lang($message)); } if (isset($new_item_id) && is_numeric($new_item_id)) { switch ($type) { case 'dir': echo $learnPath->display_manipulate($new_item_id, $_POST['type']); echo Display::return_message(get_lang('NewChapterCreated'), 'confirmation'); break; case TOOL_LINK: echo $learnPath->display_manipulate($new_item_id, $type); echo Display::return_message(get_lang('NewLinksCreated'), 'confirmation'); break; case TOOL_STUDENTPUBLICATION: echo $learnPath->display_manipulate($new_item_id, $type); echo Display::return_message(get_lang('NewStudentPublicationCreated'), 'confirmation'); break; case TOOL_QUIZ: echo $learnPath->display_manipulate($new_item_id, $type); echo Display::return_message(get_lang('NewExerciseCreated'), 'confirmation'); break; case TOOL_DOCUMENT: echo Display::return_message(get_lang('NewDocumentCreated'), 'confirmation'); echo $learnPath->display_item($new_item_id); break; case TOOL_FORUM: echo $learnPath->display_manipulate($new_item_id, $type); echo Display::return_message(get_lang('NewForumCreated'), 'confirmation'); break; case 'thread': echo $learnPath->display_manipulate($new_item_id, $type); echo Display::return_message(get_lang('NewThreadCreated'), 'confirmation'); break; } } else { switch ($type) { case 'dir': echo $learnPath->display_item_form($type, get_lang('EnterDataNewChapter')); break; case TOOL_DOCUMENT: if (isset($_GET['file']) && is_numeric($_GET['file'])) { echo $learnPath->display_document_form('add', 0, $_GET['file']); } else { echo $learnPath->display_document_form('add', 0); } break; case 'hotpotatoes': echo $learnPath->display_hotpotatoes_form('add', 0, $_GET['file']); break; case TOOL_QUIZ: echo Display::return_message(get_lang('ExerciseCantBeEditedAfterAddingToTheLP'), 'warning'); echo $learnPath->display_quiz_form('add', 0, $_GET['file']); break; case TOOL_FORUM: echo $learnPath->display_forum_form('add', 0, $_GET['forum_id']); break; case 'thread': echo $learnPath->display_thread_form('add', 0, $_GET['thread_id']); break; case TOOL_LINK: echo $learnPath->display_link_form('add', 0, $_GET['file']); break; case TOOL_STUDENTPUBLICATION: $extra = isset($_GET['file']) ? $_GET['file'] : null; echo $learnPath->display_student_publication_form('add', 0, $extra); break; case 'step': $learnPath->display_resources(); break; } } echo '
'; echo '
'; Display::display_footer();