]> git.mjollnir.org Git - moodle.git/commitdiff
Issue:
authornicolasconnault <nicolasconnault>
Thu, 13 Sep 2007 15:11:16 +0000 (15:11 +0000)
committernicolasconnault <nicolasconnault>
Thu, 13 Sep 2007 15:11:16 +0000 (15:11 +0000)
    Only students should appear in the tutor report, however
    sorting by Surname results in the tutor being included, which we don't want.
Solution:
    Confirmed as a bug and filed in tracker: http://tracker.moodle.org/browse/MDL-11233

Issue:
    Clicking on Hide Groups reveals the results for all students
    and all tutors and course staff appear. A tutor should only be able to see
    the results for their tutor group
Solution:
    Prevent tutors from ever seeing student grades from other groups: use existing capabilities
        moodle/site:accessallgroups = off AND moodle/grade:viewall = on

Issue:
    Preferences tab should not be available to users without gradereport/grader:manage capability
Solution:
    Hide the tab completely

Issue:
    Apply different style to average cells
Solution:
    Add css classes to the different average cells, and write a default style in css file.

Issue:
    The Average under group average might be better labelled Course average.
Solution:
    Rename to "Complete average"

grade/report/grader/lib.php
grade/report/grader/tabs.php
lang/en_utf8/grades.php
theme/standard/styles_color.css
theme/standard/styles_fonts.css

index cae568727f2520ecd1499cffcc676506da0cbac8..a081f632ee2e7801420a6a9999515d9667296872 100644 (file)
@@ -348,7 +348,13 @@ class grade_report_grader extends grade_report {
         }
 
         $html .= $this->print_toggle('averages', true);
-        $html .= $this->print_toggle('groups', true);
+
+        if (has_capability('moodle/grade:viewall', $this->context)
+         and has_capability('moodle/site:accessallgroups', $this->context)
+         and $course_has_groups = true) { // TODO replace that last condition with proper check
+            $html .= $this->print_toggle('groups', true);
+        }
+
         $html .= $this->print_toggle('ranges', true);
         if (!empty($CFG->enableoutcomes)) {
             $html .= $this->print_toggle('nooutcomes', true);
@@ -787,14 +793,16 @@ class grade_report_grader extends grade_report {
         $averagesdecimalpoints = $this->get_pref('averagesdecimalpoints');
         $meanselection = $this->get_pref('meanselection');
         $avghtml = '';
+        $avgcssclass = 'avg';
 
         if ($grouponly) {
             $straverage = get_string('groupavg', 'grades');
             $showaverages = $this->currentgroup && $this->get_pref('showgroups');
             $groupsql = $this->groupsql;
             $groupwheresql = $this->groupwheresql;
+            $avgcssclass = 'groupavg';
         } else {
-            $straverage = get_string('average', 'grades');
+            $straverage = get_string('completeaverage', 'grades');
             $showaverages = $this->get_pref('showaverages');
             $groupsql = null;
             $groupwheresql = null;
@@ -827,7 +835,7 @@ class grade_report_grader extends grade_report {
                 }
             }
 
-            $avghtml = '<tr class="r'.$this->rowcount++.'"><th class="header c0" scope="row">'.$straverage.'</th>';
+            $avghtml = '<tr class="' . $avgcssclass . ' r'.$this->rowcount++.'"><th class="header c0" scope="row">'.$straverage.'</th>';
 
             $columncount=1;
             foreach ($this->items as $item) {
index 84e349bb842d67ca69ca898b17ab195f201d4338..f1a4d3572c8031e664e3904986656e7157351a91 100644 (file)
@@ -1,12 +1,14 @@
 <?php  // $Id$
     $row = $tabs = array();
+
     $row[] = new tabobject('graderreport',
                            $CFG->wwwroot.'/grade/report/grader/index.php?id='.$courseid,
                            get_string('modulename', 'gradereport_grader'));
-
-    $row[] = new tabobject('preferences',
-                           $CFG->wwwroot.'/grade/report/grader/preferences.php?id='.$courseid,
-                           get_string('preferences'));
+    if (has_capability('moodle/grade:manage', get_context_instance(CONTEXT_COURSE, $COURSE->id))) {
+        $row[] = new tabobject('preferences',
+                               $CFG->wwwroot.'/grade/report/grader/preferences.php?id='.$courseid,
+                               get_string('preferences'));
+    }
 
     $tabs[] = $row;
     echo '<div class="gradedisplay">';
index f164af6220d26786a83ad431c5eb60397fe81fac..37a5b2a4aafdbd416e5e8e35b17a3bf383d4db68 100644 (file)
@@ -57,6 +57,7 @@ $string['categorytotal'] = 'Category total';
 $string['changesitedefaults'] = 'Change site defaults';
 $string['choosecategory'] = 'Select Category';
 $string['compact'] = 'Compact';
+$string['completeaverage'] = 'Complete average';
 $string['configaggregationposition'] = 'The position of the aggregation column in the grader report table, in reference to the real grades.';
 $string['configaggregationview'] = 'Each category can be displayed in three ways: Full mode (aggregated column and grade item columns), the aggregated column only, or the grade items alone.';
 $string['configaveragesdecimalpoints'] = 'The number of decimal points to display for each average (group or whole), below a column of grades. This can be overriden per grading item.';
index 7c510318f0d3987dbcfe68981563ef9376ebc90a..462dcea04b71a3852b327630665d55f341cad254 100644 (file)
@@ -721,6 +721,13 @@ body#grade-index .grades .r1 {
   background-color: #dddddd;
 }
 
+.grade-report-grader .gradestable tr.avg td.cell {
+       background-color: #efefff;
+}
+
+.grade-report-grader .gradestable tr.groupavg td.cell {
+       background-color: #efffef;
+}
 /***
  *** Login
  ***/
index 6b85bceefcdb0fec10c7b2e791a67713c04d835f..ed80910321e8769f37affa9c20b5e52c03d66f26 100644 (file)
@@ -485,7 +485,16 @@ body#grade-index .grades .header {
   font-size: 0.7em;
 }
 
+.grade-report-grader .gradestable tr.groupavg td.cell {
+       font-weight: bold;
+       color: #006400;
+}
 
+.grade-report-grader .gradestable tr.avg td.cell {
+       font-weight: bold;
+       color: #00008B;
+       
+}
 /***
  *** Login
  ***/