* @author Julio Montoya Bugfixes session support * @package chamilo.course_progress */ // including files require_once '../inc/global.inc.php'; require_once 'thematic_controller.php'; // current section $this_section = SECTION_COURSES; $current_course_tool = TOOL_COURSE_PROGRESS; // protect a course script api_protect_course_script(true); // defining constants define('ADD_THEMATIC_PLAN', 6); // get actions $actions = array( 'thematic_details', 'thematic_list', 'thematic_add', 'thematic_edit', 'thematic_copy', 'thematic_delete', 'moveup', 'movedown', 'thematic_import_select', 'thematic_import', 'thematic_export', 'thematic_export_pdf', 'thematic_plan_list', 'thematic_plan_add', 'thematic_plan_edit', 'thematic_plan_delete', 'thematic_advance_list', 'thematic_advance_add', 'thematic_advance_edit', 'thematic_advance_delete' ); $action = 'thematic_details'; if (isset($_REQUEST['action']) && in_array($_REQUEST['action'], $actions)) { $action = $_REQUEST['action']; } if (isset($_POST['action']) && $_POST['action'] == 'thematic_delete_select') { $action = 'thematic_delete_select'; } if (isset($_GET['isStudentView']) && $_GET['isStudentView'] == 'true') { $action = 'thematic_details'; } if ($action == 'thematic_details' || $action == 'thematic_list') { Session::write('thematic_control', $action); } // get thematic id if (isset($_GET['thematic_id'])) { $thematic_id = intval($_GET['thematic_id']); } // get thematic plan description type if (isset($_GET['description_type'])) { $description_type = intval($_GET['description_type']); } // instance thematic object for using like library here $thematic = new Thematic(); // thematic controller object $thematic_controller = new ThematicController(); $thematic_data = []; if (!empty($thematic_id)) { // thematic data by id $thematic_data = $thematic->get_thematic_list($thematic_id); } // get default thematic plan title $default_thematic_plan_title = $thematic->get_default_thematic_plan_title(); // Only when I see the 3 columns. Avoids double or triple click binding for onclick event $htmlHeadXtra[] = ''; $htmlHeadXtra[] = ''; $thematicControl = Session::read('thematic_control'); if ($action == 'thematic_list') { $interbreadcrumb[] = array ('url' => '#', 'name' => get_lang('ThematicControl')); } if ($action == 'thematic_add') { $interbreadcrumb[] = array ('url' => 'index.php?'.api_get_cidreq().'&action='.$thematicControl, 'name' => get_lang('ThematicControl')); $interbreadcrumb[] = array ('url' => '#', 'name' => get_lang('NewThematicSection')); } if ($action == 'thematic_edit') { $interbreadcrumb[] = array ('url' => 'index.php?'.api_get_cidreq().'&action='.$thematicControl, 'name' => get_lang('ThematicControl')); $interbreadcrumb[] = array ('url' => '#', 'name' => get_lang('EditThematicSection')); } if ($action == 'thematic_details') { $interbreadcrumb[] = array ('url' => '#', 'name' => get_lang('ThematicControl')); } if ($action == 'thematic_plan_list' || $action == 'thematic_plan_delete') { $interbreadcrumb[] = array ('url' => 'index.php?'.api_get_cidreq().'&action='.$thematicControl, 'name' => get_lang('ThematicControl')); if (!empty($thematic_data)) { $interbreadcrumb[] = array( 'url' => '#', 'name' => get_lang('ThematicPlan').' ('.$thematic_data['title'].') ' ); } } if ($action == 'thematic_plan_add' || $action == 'thematic_plan_edit') { $interbreadcrumb[] = array ('url' => 'index.php?'.api_get_cidreq().'&action='.$thematicControl, 'name' => get_lang('ThematicControl')); $interbreadcrumb[] = array ('url' => 'index.php?'.api_get_cidreq().'&action=thematic_plan_list&thematic_id='.$thematic_id, 'name' => get_lang('ThematicPlan').' ('.$thematic_data['title'].')'); if ($description_type >= ADD_THEMATIC_PLAN) { $interbreadcrumb[] = array ('url' => '#', 'name' => get_lang('NewBloc')); } else { $interbreadcrumb[] = array ('url' => '#', 'name' => $default_thematic_plan_title[$description_type]); } } if ($action == 'thematic_advance_list' || $action == 'thematic_advance_delete') { $interbreadcrumb[] = array ('url' => 'index.php?'.api_get_cidreq().'&action='.$thematicControl, 'name' => get_lang('ThematicControl')); $interbreadcrumb[] = array ('url' => '#', 'name' => get_lang('ThematicAdvance').' ('.$thematic_data['title'].')'); } if ($action == 'thematic_advance_add' || $action == 'thematic_advance_edit') { $interbreadcrumb[] = array ('url' => 'index.php?'.api_get_cidreq().'&action='.$thematicControl, 'name' => get_lang('ThematicControl')); $interbreadcrumb[] = array ('url' => 'index.php?'.api_get_cidreq().'&action=thematic_advance_list&thematic_id='.$thematic_id, 'name' => get_lang('ThematicAdvance').' ('.$thematic_data['title'].')'); $interbreadcrumb[] = array ('url' => '#', 'name' => get_lang('NewThematicAdvance')); } // Distpacher actions to controller switch ($action) { case 'thematic_add': case 'thematic_edit': case 'thematic_delete': case 'thematic_delete_select': case 'thematic_copy': case 'thematic_import_select': case 'thematic_import': case 'moveup': case 'movedown': if (!api_is_allowed_to_edit(null,true)) { api_not_allowed(); } case 'thematic_list': case 'thematic_export': case 'thematic_export_pdf': case 'thematic_details': $thematic_controller->thematic($action); break; case 'thematic_plan_add': case 'thematic_plan_edit': case 'thematic_plan_delete': if (!api_is_allowed_to_edit(null,true)) { api_not_allowed(); } case 'thematic_plan_list': $thematic_controller->thematic_plan($action); break; case 'thematic_advance_add': case 'thematic_advance_edit': case 'thematic_advance_delete': if (!api_is_allowed_to_edit(null,true)) { api_not_allowed(); } case 'thematic_advance_list': $thematic_controller->thematic_advance($action); break; }