gradebook MDL-24791 fixing grader report column highlighting

This commit is contained in:
Andrew Davis
2010-10-29 07:06:46 +00:00
parent 6cfe146bf7
commit 7755bba3f0
2 changed files with 15 additions and 9 deletions
+4 -4
View File
@@ -14,15 +14,15 @@ function set_row(idx) {
}
/** highlight/unset the column of a table **/
function set_col(col,gradecelloffset) {
function set_col(col,gradecelloffset,lastheaderrow) {
var table = document.getElementById('user-grades');
//highlight the column header
flip_vmarked(table,2,col);
flip_vmarked(table,lastheaderrow,col);
//add any grade cell offset (due to colspans) then iterate down the table
col += gradecelloffset;
for (var row = 3; row < table.rows.length; row++) {
for (var row = lastheaderrow + 1; row < table.rows.length; row++) {
flip_vmarked(table,row,col);
}
}
@@ -35,4 +35,4 @@ function flip_vmarked(table,row,col) {
table.rows[row].cells[col].className += ' vmarked';
}
}
}
}
+11 -5
View File
@@ -78,6 +78,10 @@ class grade_report_grader extends grade_report {
* */
var $canviewhidden;
/** @var boolean, whether the current user is allowed to see the user report.
* This affects the table layout. */
var $canviewuserreport;
var $preferences_page=false;
/**
@@ -93,6 +97,7 @@ class grade_report_grader extends grade_report {
parent::grade_report($courseid, $gpr, $context, $page);
$this->canviewhidden = has_capability('moodle/grade:viewhidden', get_context_instance(CONTEXT_COURSE, $this->course->id));
$this->canviewuserreport = has_capability('gradereport/'.$CFG->grade_profilereport.':view', $this->context);
// load collapsed settings for this report
if ($collapsed = get_user_preferences('grade_report_grader_collapsed_categories')) {
@@ -662,14 +667,15 @@ class grade_report_grader extends grade_report {
//The width of the table varies depending on fixedstudents.
// $fixedstudents == 0, students and grades display in the same table.
// $fixedstudents == 1, students and grades are display in separate table.
if ($fixedstudents) {
if ($fixedstudents || !$this->canviewuserreport) {
$incrementcellindex = '0';
} else {
$incrementcellindex = '1';
}
//MDL-21088 - IE 7 ignores nowraps on tds or ths so we this in a span with a nowrap on it.
$headerhtml .= '<th class=" '.$columnclass.' '.$type.$catlevel.$hidden.'" scope="col" onclick="set_col(this.cellIndex,' . $incrementcellindex . ')"><span>'
.shorten_text($headerlink) . $arrow;
$headerhtml .= '<th class=" '.$columnclass.' '.$type.$catlevel.$hidden.
'" scope="col" onclick="set_col(this.cellIndex,' . $incrementcellindex . ',' . (count($this->gtree->levels) - 1) .
')"><span>' . shorten_text($headerlink) . $arrow;
$headerhtml .= '</span></th>';
}
@@ -745,7 +751,7 @@ class grade_report_grader extends grade_report {
//we're either going to add a th or a colspan to keep things aligned
$userreportcell = '';
$userreportcellcolspan = '';
if (has_capability('gradereport/'.$CFG->grade_profilereport.':view', $this->context)) {
if ($this->canviewuserreport) {
$a->user = fullname($user, $canviewfullname);
$strgradesforuser = get_string('gradesforuser', 'grades', $a);
$userreportcell = '<th class="header userreport"><a href="'.$CFG->wwwroot.'/grade/report/'.$CFG->grade_profilereport.'/index.php?id='.$this->courseid.'&amp;userid='.$user->id.'">'
@@ -1032,7 +1038,7 @@ class grade_report_grader extends grade_report {
//either add a th or a colspan to keep things aligned
$userreportcell = '';
$userreportcellcolspan = '';
if (has_capability('gradereport/'.$CFG->grade_profilereport.':view', $this->context)) {
if ($this->canviewuserreport) {
$a->user = fullname($user, $canviewfullname);
$strgradesforuser = get_string('gradesforuser', 'grades', $a);
$userreportcell = '<th class="userreport"><a href="'.$CFG->wwwroot.'/grade/report/'.$CFG->grade_profilereport.'/index.php?id='.$this->courseid.'&amp;userid='.$user->id.'">'