From: nicolasconnault Date: Mon, 9 Jul 2007 14:54:32 +0000 (+0000) Subject: MDL-10368 Finished implementation of toggle actions, and added icons near each toggle... X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=d490d87c22d7207d0a333436151d72a606b43f63;p=moodle.git MDL-10368 Finished implementation of toggle actions, and added icons near each toggle. Also added a few css rules for display. --- diff --git a/grade/report/grader/index.php b/grade/report/grader/index.php index 351566ec70..6dd23b296a 100644 --- a/grade/report/grader/index.php +++ b/grade/report/grader/index.php @@ -27,6 +27,13 @@ function get_grade_clean($gradeval) { */ function grader_report_print_toggle($type, $baseurl, $return=false) { global $CFG; + + $icons = array('eyecons' => 'hide', + 'calculations' => 'calc', + 'locks' => 'lock', + 'grandtotals' => 'sigma', + 'notes' => 'feedback'); + $pref_name = 'grade_report_show' . $type; $show_pref = get_user_preferences($pref_name, $CFG->$pref_name); @@ -41,8 +48,19 @@ function grader_report_print_toggle($type, $baseurl, $return=false) { $toggle_action = 0; } - $retval = '
" - . ${'str' . $show_hide} . '
'; + if (array_key_exists($type, $icons)) { + $image_name = $icons[$type]; + } else { + $image_name = $type; + } + + $string = ${'str' . $show_hide}; + + $img = ''
+                  .$string.''. "\n"; + + $retval = '
' . $img . '" + . $string . '
'; if ($return) { return $retval; @@ -100,11 +118,17 @@ $target = optional_param('target', 0, PARAM_ALPHANUM); $toggle = optional_param('toggle', NULL, PARAM_INT); $toggle_type = optional_param('toggle_type', 0, PARAM_ALPHANUM); +// Handle toggle change request +// TODO print visual feedback +if (!is_null($toggle) && !empty($toggle_type)) { + set_user_preferences(array('grade_report_show' . $toggle_type => $toggle)); +} + // Get the user preferences $perpage = get_user_preferences('grade_report_studentsperpage', $CFG->grade_report_studentsperpage); // number of users on a page $decimals = get_user_preferences('grade_report_decimalpoints', $CFG->grade_report_decimalpoints); // decimals in grades -$displaytotals = get_user_preferences('grade_report_showgrandtotals', $CFG->grade_report_showgrandtotals); -$displaygrouptotals = get_user_preferences('grade_report_showgroups', $CFG->grade_report_showgroups); +$showgrandtotals = get_user_preferences('grade_report_showgrandtotals', $CFG->grade_report_showgrandtotals); +$showgroups = get_user_preferences('grade_report_showgroups', $CFG->grade_report_showgroups); $aggregation_position = get_user_preferences('grade_report_aggregationposition', $CFG->grade_report_aggregationposition); $showscales = get_user_preferences('grade_report_showscales', $CFG->grade_report_showscales); @@ -124,29 +148,27 @@ $baseurl = 'report.php?id='.$courseid.'&perpage='.$perpage.'&report=grad // base url for paging $pbarurl = 'report.php?id='.$courseid.'&perpage='.$perpage.'&report=grader&'; -// Handle toggle change request -// TODO print visual feedback -if (!is_null($toggle) && !empty($toggle_type)) { - set_user_preferences(array('grade_report_show' . $toggle_type => $toggle)); -} - -/// find out current groups mode -$course = get_record('course', 'id', $courseid); -$groupmode = $course->groupmode; -ob_start(); -$currentgroup = setup_and_print_groups($course, $groupmode, $baseurl); -$group_selector = ob_get_clean(); - -// update paging after group -$baseurl .= 'group='.$currentgroup.'&'; -$pbarurl .= 'group='.$currentgroup.'&'; - -if ($currentgroup) { - $groupsql = " LEFT JOIN {$CFG->prefix}groups_members gm ON gm.userid = u.id "; - $groupwheresql = " AND gm.groupid = $currentgroup "; -} else { - $groupsql = ''; - $groupwheresql = ''; +$groupsql = ''; +$groupwheresql = ''; +$group_selector = null; +$currentgroup = null; + +if ($showgroups) { + /// find out current groups mode + $course = get_record('course', 'id', $courseid); + $groupmode = $course->groupmode; + ob_start(); + $currentgroup = setup_and_print_groups($course, $groupmode, $baseurl); + $group_selector = ob_get_clean(); + + // update paging after group + $baseurl .= 'group='.$currentgroup.'&'; + $pbarurl .= 'group='.$currentgroup.'&'; + + if ($currentgroup) { + $groupsql = " LEFT JOIN {$CFG->prefix}groups_members gm ON gm.userid = u.id "; + $groupwheresql = " AND gm.groupid = $currentgroup "; + } } // Grab the grade_tree for this course @@ -359,6 +381,7 @@ include('tabs.php'); echo $group_selector; // Show/hide toggles +echo '
'; if ($USER->gradeediting) { grader_report_print_toggle('eyecons', $baseurl); grader_report_print_toggle('locks', $baseurl); @@ -369,6 +392,7 @@ grader_report_print_toggle('notes', $baseurl); grader_report_print_toggle('grandtotals', $baseurl); grader_report_print_toggle('groups', $baseurl); grader_report_print_toggle('scales', $baseurl); +echo '
'; // Paging bar print_paging_bar($numusers, $page, $perpage, $pbarurl); @@ -552,7 +576,9 @@ foreach ($users as $userid => $user) { } // if user preference to display group sum -if ($currentgroup && ($displaygrouptotals || 1)) { +$groupsumhtml = ''; + +if ($currentgroup && $showgroups) { /** SQL for finding group sum */ $SQL = "SELECT g.itemid, SUM(g.finalgrade) as sum @@ -583,12 +609,11 @@ if ($currentgroup && ($displaygrouptotals || 1)) { } } $groupsumhtml .= ''; -} else { - $groupsumhtml = ''; } // Grand totals -if ($displaytotals) { +$gradesumhtml = ''; +if ($showgrandtotals) { /** SQL for finding the SUM grades of all visible users ($CFG->gradebookroles) */ @@ -618,21 +643,16 @@ if ($displaytotals) { } } $gradesumhtml .= ''; -} else { - $gradesumhtml = ''; } - // finding the ranges of each gradeitem - +$scalehtml = ''; if ($showscales) { $scalehtml = ''.get_string('range','grades').''; foreach ($items as $item) { $scalehtml .= ''. get_grade_clean($item->grademin).'-'. get_grade_clean($item->grademax).''; } $scalehtml .= ''; -} else { - $scalehtml = ''; } $reporthtml = "$headerhtml"; diff --git a/pix/t/scales.gif b/pix/t/scales.gif new file mode 100644 index 0000000000..3674474370 Binary files /dev/null and b/pix/t/scales.gif differ diff --git a/pix/t/sigma.gif b/pix/t/sigma.gif new file mode 100644 index 0000000000..8b52472fd6 Binary files /dev/null and b/pix/t/sigma.gif differ diff --git a/theme/standard/styles_layout.css b/theme/standard/styles_layout.css index e6ab085f1c..03dee4976a 100644 --- a/theme/standard/styles_layout.css +++ b/theme/standard/styles_layout.css @@ -2163,6 +2163,10 @@ body#grade-index .grades .weighted { margin-left: 4px; } +#grade-report-toggles { + text-align: center; +} + /*** *** Login ***/