Fix toolbar filter see BT#15972

pull/2981/head
Julio Montoya 6 years ago
parent 65ce27e5a0
commit b2915bdef2
  1. 52
      main/exercise/exercise_report.php

@ -44,8 +44,6 @@ $_course = api_get_course_info();
// document path
$documentPath = api_get_path(SYS_COURSE_PATH).$_course['path']."/document";
$origin = api_get_origin();
$path = isset($_GET['path']) ? Security::remove_XSS($_GET['path']) : null;
$is_allowedToEdit = api_is_allowed_to_edit(null, true) ||
api_is_drh() ||
api_is_student_boss() ||
@ -57,7 +55,6 @@ $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);
$allowCoachFeedbackExercises = api_get_setting('allow_coach_feedback_exercises') === 'true';
$course_id = api_get_course_int_id();
$exercise_id = isset($_REQUEST['exerciseId']) ? (int) $_REQUEST['exerciseId'] : 0;
$locked = api_resource_is_locked_by_gradebook($exercise_id, LINK_EXERCISE);
@ -153,11 +150,9 @@ if (!empty($_REQUEST['export_report']) && $_REQUEST['export_report'] == '1') {
$objExerciseTmp = new Exercise();
$exerciseExists = $objExerciseTmp->read($exercise_id);
$courseInfo = api_get_course_info();
//Send student email @todo move this code in a class, library
if (isset($_REQUEST['comments']) &&
$_REQUEST['comments'] == 'update' &&
$_REQUEST['comments'] === 'update' &&
($is_allowedToEdit || $is_tutor || $allowCoachFeedbackExercises)
) {
// Filtered by post-condition
@ -167,7 +162,6 @@ if (isset($_REQUEST['comments']) &&
if (empty($track_exercise_info)) {
api_not_allowed();
}
$test = $track_exercise_info['title'];
$student_id = $track_exercise_info['exe_user_id'];
$session_id = $track_exercise_info['session_id'];
$lp_id = $track_exercise_info['orig_lp_id'];
@ -175,10 +169,6 @@ if (isset($_REQUEST['comments']) &&
$lp_item_view_id = (int) $track_exercise_info['orig_lp_item_view_id'];
$exerciseId = $track_exercise_info['exe_exo_id'];
$exeWeighting = $track_exercise_info['exe_weighting'];
$url = api_get_path(WEB_CODE_PATH).'exercise/result.php?id='.$track_exercise_info['exe_id'].'&'.api_get_cidreq().'&show_headers=1&id_session='.$session_id;
$my_post_info = [];
$post_content_id = [];
$comments_exist = false;
@ -186,14 +176,12 @@ if (isset($_REQUEST['comments']) &&
$my_post_info = explode('_', $key_index);
$post_content_id[] = isset($my_post_info[1]) ? $my_post_info[1] : null;
if ($my_post_info[0] == 'comments') {
if ($my_post_info[0] === 'comments') {
$comments_exist = true;
}
}
$loop_in_track = $comments_exist === true ? (count($_POST) / 2) : count($_POST);
$array_content_id_exe = [];
if ($comments_exist === true) {
$array_content_id_exe = array_slice($post_content_id, $loop_in_track);
} else {
@ -349,7 +337,6 @@ if ($is_allowedToEdit && $origin != 'learnpath') {
Display::return_icon('activity_monitor.png', get_lang('LiveResults'), '', ICON_SIZE_MEDIUM).'</a>';
$actions .= '<a href="stats.php?'.api_get_cidreq().'&exerciseId='.$exercise_id.'">'.
Display::return_icon('statistics.png', get_lang('ReportByQuestion'), '', ICON_SIZE_MEDIUM).'</a>';
$actions .= '<a id="export_opener" href="'.api_get_self().'?export_report=1&exerciseId='.$exercise_id.'" >'.
Display::return_icon('save.png', get_lang('Export'), '', ICON_SIZE_MEDIUM).'</a>';
// clean result before a selected date icon
@ -397,7 +384,7 @@ if ($is_allowedToEdit && $origin != 'learnpath') {
// Deleting an attempt
if (($is_allowedToEdit || $is_tutor || api_is_coach()) &&
isset($_GET['delete']) && $_GET['delete'] == 'delete' &&
isset($_GET['delete']) && $_GET['delete'] === 'delete' &&
!empty($_GET['did']) && $locked == false
) {
$exe_id = (int) $_GET['did'];
@ -420,7 +407,7 @@ if (($is_allowedToEdit || $is_tutor || api_is_coach()) &&
if ($is_allowedToEdit || $is_tutor) {
$interbreadcrumb[] = [
'url' => "exercise.php?".api_get_cidreq(),
'url' => 'exercise.php?'.api_get_cidreq(),
'name' => get_lang('Exercises'),
];
@ -442,17 +429,17 @@ if ($is_allowedToEdit || $is_tutor) {
}
if (($is_allowedToEdit || $is_tutor || api_is_coach()) &&
isset($_GET['a']) && $_GET['a'] == 'close' &&
isset($_GET['a']) && $_GET['a'] === 'close' &&
!empty($_GET['id']) && $locked == false
) {
// Close the user attempt otherwise left pending
$exe_id = intval($_GET['id']);
$exe_id = (int) $_GET['id'];
$sql = "UPDATE $TBL_TRACK_EXERCISES SET status = ''
WHERE exe_id = $exe_id AND status = 'incomplete'";
Database::query($sql);
}
Display :: display_header($nameTools);
Display::display_header($nameTools);
// Clean all results for this test before the selected date
if (($is_allowedToEdit || $is_tutor || api_is_coach()) &&
@ -512,7 +499,7 @@ $extra = '<script>
});
</script>';
$extra .= '<div id="dialog-confirm" title="'.get_lang("ConfirmYourChoice").'">';
$extra .= '<div id="dialog-confirm" title="'.get_lang('ConfirmYourChoice').'">';
$form = new FormValidator(
'report',
'post',
@ -641,7 +628,7 @@ if ($is_allowedToEdit || $is_tutor) {
['name' => 'actions', 'index' => 'actions', 'width' => '60', 'align' => 'left', 'search' => 'false', 'sortable' => 'false'],
];
if ($officialCodeInList == 'true') {
if ($officialCodeInList === 'true') {
$officialCodeRow = ['name' => 'official_code', 'index' => 'official_code', 'width' => '50', 'align' => 'left', 'search' => 'true'];
$column_model = array_merge([$officialCodeRow], $column_model);
}
@ -650,7 +637,7 @@ if ($is_allowedToEdit || $is_tutor) {
// add username as title in lastname filed - ref 4226
function action_formatter(cellvalue, options, rowObject) {
// rowObject is firstname,lastname,login,... get the third word
var loginx = "'.api_htmlentities(sprintf(get_lang("LoginX"), ":::"), ENT_QUOTES).'";
var loginx = "'.api_htmlentities(sprintf(get_lang('LoginX'), ':::'), ENT_QUOTES).'";
var tabLoginx = loginx.split(/:::/);
// tabLoginx[0] is before and tabLoginx[1] is after :::
// may be empty string but is defined
@ -672,7 +659,6 @@ $extra_params['gridComplete'] = "
";
$extra_params['beforeRequest'] = "
//console.log('beforeRequest');
var defaultGroupId = $('#gs_group_name').val();
// Load from group menu
@ -681,15 +667,17 @@ if (typeof defaultGroupId !== 'undefined') {
} else {
// get from cookies
defaultGroupId = Cookies.get('default_group_".$exercise_id."');
$('#gs_group_name').val(defaultGroupId);
//console.log('from cookies');
$('#gs_group_name').val(defaultGroupId);
}
if (typeof defaultGroupId !== 'undefined') {
var posted_data = $(\"#results\").jqGrid('getGridParam', 'postData');
var defFilter = '{\"groupOp\":\"AND\",\"rules\":[{\"field\":\"group_id\",\"op\":\"eq\",\"data\":\"'+ defaultGroupId +'\"}]}';
posted_data.filters = defFilter;
//console.log(posted_data);
var extraFilter = ',{\"field\":\"group_id\",\"op\":\"eq\",\"data\":\"'+ defaultGroupId +'\"}]}';
// var defFilter = '{\"groupOp\":\"AND\",\"rules\": [{\"field\":\"group_id\",\"op\":\"eq\",\"data\":\"'+ defaultGroupId +'\"}] }';
// posted_data.filters = defFilter;
var filters = posted_data.filters;
var stringObj = new String(filters);
stringObj.replace(']}', extraFilter);
$(this).jqGrid('setGridParam', 'postData', posted_data);
}
";
@ -715,7 +703,8 @@ $gridJs = Display::grid_js(
var ii = 0;
for (var i in data) {
colNames[ii++] = i;
} // capture col names
}
// capture col names
var html = "";
for (i = 0; i < mya.length; i++) {
data = $("#results").getRowData(mya[i]); // get each row
@ -758,8 +747,6 @@ $gridJs = Display::grid_js(
// Update group
var defaultGroupId = Cookies.get('default_group_<?php echo $exercise_id; ?>');
//console.log('cookie GET defaultGroupId ' + defaultGroupId );
$('#gs_group_name').val(defaultGroupId);
// Adding search options
var options = {
@ -776,7 +763,6 @@ $gridJs = Display::grid_js(
});
}
}
jQuery("#results").jqGrid('filterToolbar', options);
sgrid.triggerToolbar();
$('#results').on('click', 'a.exercise-recalculate', function (e) {

Loading…
Cancel
Save