jqgrid integration * Modified by hubert.borderiou (question category) * * @todo fix excel export * */ /** * Code */ // name of the language file that needs to be included $language_file = array('exercice'); api_protect_global_admin_script(); $urlMainExercise = api_get_path(WEB_CODE_PATH).'exercice/'; // Setting the tabs $this_section = SECTION_COURSES; $htmlHeadXtra[] = api_get_jqgrid_js(); // including additional libraries require_once api_get_path(SYS_CODE_PATH).'exercice/exercise.class.php'; require_once api_get_path(SYS_CODE_PATH).'exercice/question.class.php'; require_once api_get_path(SYS_CODE_PATH).'exercice/answer.class.php'; // need functions of statsutils lib to display previous exercices scores require_once api_get_path(LIBRARY_PATH).'statsUtils.lib.inc.php'; // document path $documentPath = api_get_path(SYS_COURSE_PATH).$_course['path']."/document"; /* Constants and variables */ $is_tutor = api_is_allowed_to_edit(true); $TBL_QUESTIONS = Database :: get_course_table(TABLE_QUIZ_QUESTION); $TBL_TRACK_EXERCICES = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_EXERCICES); $TBL_TRACK_ATTEMPT = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_ATTEMPT); $TBL_TRACK_ATTEMPT_RECORDING = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_ATTEMPT_RECORDING); $TBL_LP_ITEM_VIEW = Database :: get_course_table(TABLE_LP_ITEM_VIEW); $course_id = api_get_course_int_id(); if (!empty($_REQUEST['export_report']) && $_REQUEST['export_report'] == '1') { $load_extra_data = false; if (isset($_REQUEST['extra_data']) && $_REQUEST['extra_data'] == 1) { $load_extra_data = true; } require_once 'exercise_result.class.php'; switch ($_GET['export_format']) { case 'xls': $export = new ExerciseResult(); $export->exportCompleteReportXLS( $documentPath, null, $load_extra_data, null, $_GET['exerciseId'], $_GET['hotpotato_name'] ); exit; break; case 'csv': default: $export = new ExerciseResult(); $export->exportCompleteReportCSV( $documentPath, null, $load_extra_data, null, $_GET['exerciseId'], $_GET['hotpotato_name'] ); exit; break; } } $nameTools = get_lang('StudentScore'); $interbreadcrumb[] = array ('url' => 'index.php', 'name' => get_lang('PlatformAdmin')); $interbreadcrumb[] = array("url" => "", "name" => get_lang('ExercicesReport')); Display :: display_header($nameTools); $extra = ''; $extra .= '
'; $form = new FormValidator('report', 'post', null, null, array('class' => 'form-vertical')); $form->addElement( 'radio', 'export_format', null, get_lang('ExportAsCSV'), 'csv', array('id' => 'export_format_csv_label') ); $form->addElement( 'radio', 'export_format', null, get_lang('ExportAsXLS'), 'xls', array('id' => 'export_format_xls_label') ); $form->addElement( 'checkbox', 'load_extra_data', null, get_lang('LoadExtraData'), '0', array('id' => 'export_format_xls_label') ); $form->setDefaults(array('export_format' => 'csv')); $extra .= $form->return_form(); $extra .= '
'; echo $extra; $url = api_get_path(WEB_AJAX_PATH).'model.ajax.php?a=get_admin_exercise_results'; $action_links = ''; //The order is important you need to check the the $column variable in the model.ajax.php file $columns = array( get_lang('LoginName'), get_lang('FirstName'), get_lang('LastName'), get_lang('Score'), get_lang('Link'), get_lang('Session') // get_lang('Actions') ); //Column config $column_model = array( array( 'name' => 'login', 'index' => 'username', 'width' => '40', 'align' => 'left', 'search' => 'true' ), array('name' => 'firstname', 'index' => 'firstname', 'width' => '50', 'align' => 'left', 'search' => 'true'), array( 'name' => 'lastname', 'index' => 'lastname', 'width' => '50', 'align' => 'left', //'formatter' => 'action_formatter', 'search' => 'true' ), array('name' => 'score', 'index' => 'exe_result', 'width' => '50', 'align' => 'left', 'search' => 'true'), array('name' => 'link', 'index' => 'link', 'width' => '50', 'align' => 'left', 'search' => 'false'), array('name' => 'session', 'index' => 'session_id', 'width' => '50', 'align' => 'left', 'search' => 'true'), ); //Autowidth $extra_params['autowidth'] = 'true'; //height auto $extra_params['height'] = 'auto'; ?>