Merged with conflict resolution branch MDL-26835_MASTER_grader_highlight_suspended_users from git://github.com/andyjdavis/moodle.git

This commit is contained in:
Sam Hemelryk
2011-04-19 10:35:50 +08:00
4 changed files with 40 additions and 2 deletions
+31 -2
View File
@@ -391,9 +391,26 @@ class grade_report_grader extends grade_report {
$this->users = array();
$this->userselect_params = array();
} else {
list($usql, $params) = $DB->get_in_or_equal(array_keys($this->users), SQL_PARAMS_NAMED, 'usid');
list($usql, $uparams) = $DB->get_in_or_equal(array_keys($this->users), SQL_PARAMS_NAMED, 'usid0');
$this->userselect = "AND g.userid $usql";
$this->userselect_params = $params;
$this->userselect_params = $uparams;
//add a flag to each user indicating whether their enrolment is active
$sql = "SELECT ue.userid
FROM {user_enrolments} ue
JOIN {enrol} e ON e.id = ue.enrolid
WHERE ue.userid $usql
AND ue.status = :uestatus
AND e.status = :estatus
AND e.courseid = :courseid
GROUP BY ue.userid";
$coursecontext = get_course_context($this->context);
$params = array_merge($uparams, array('estatus'=>ENROL_INSTANCE_ENABLED, 'uestatus'=>ENROL_USER_ACTIVE, 'courseid'=>$coursecontext->instanceid));
$useractiveenrolments = $DB->get_records_sql($sql, $params);
foreach ($this->users as $user) {
$this->users[$user->id]->suspendedenrolment = !array_key_exists($user->id, $useractiveenrolments);
}
}
return $this->users;
@@ -602,6 +619,7 @@ class grade_report_grader extends grade_report {
$rowclasses = array('even', 'odd');
$suspendedstring = null;
foreach ($this->users as $userid => $user) {
$userrow = new html_table_row();
$userrow->id = 'fixed_user_'.$userid;
@@ -609,6 +627,7 @@ class grade_report_grader extends grade_report {
$usercell = new html_table_cell();
$usercell->attributes['class'] = 'user';
$usercell->header = true;
$usercell->scope = 'row';
@@ -618,6 +637,16 @@ class grade_report_grader extends grade_report {
$usercell->text .= html_writer::link(new moodle_url('/user/view.php', array('id' => $user->id, 'course' => $this->course->id)), fullname($user));
if (!empty($user->suspendedenrolment)) {
$usercell->attributes['class'] .= ' usersuspended';
//may be lots of suspended users so only get the string once
if (empty($suspendedstring)) {
$suspendedstring = get_string('userenrolmentsuspended', 'grades');
}
$usercell->text .= html_writer::empty_tag('img', array('src'=>$OUTPUT->pix_url('i/enrolmentsuspended'), 'title'=>$suspendedstring, 'alt'=>$suspendedstring, 'class'=>'usersuspendedicon'));
}
$userrow->cells[] = $usercell;
if (has_capability('gradereport/'.$CFG->grade_profilereport.':view', $this->context)) {
+8
View File
@@ -565,6 +565,14 @@ text-align:left;
vertical-align:middle;
}
.path-grade-report-grader table th.usersuspended a:link {
color:#111111;
}
.path-grade-report-grader table th.usersuspended img.usersuspendedicon {
vertical-align:middle;
}
.path-grade-report-grader .yui-overlay {
background-color: #FFEE69;
border-color: #D4C237 #A6982B #A6982B;
+1
View File
@@ -634,6 +634,7 @@ $string['usepercent'] = 'Use percent';
$string['user'] = 'User';
$string['usergrade'] = 'User {$a->fullname} ({$a->useridnumber}) on item {$a->gradeidnumber}';
$string['userpreferences'] = 'User preferences';
$string['userenrolmentsuspended'] = 'User enrolment suspended';
$string['useweighted'] = 'Use weighted';
$string['verbosescales'] = 'Verbose scales';
$string['viewbygroup'] = 'Group';
Binary file not shown.

After

Width:  |  Height:  |  Size: 88 B