diff --git a/mod/forum/renderer.php b/mod/forum/renderer.php index 3463504..8c71070 100644 --- a/mod/forum/renderer.php +++ b/mod/forum/renderer.php @@ -83,9 +83,14 @@ class mod_forum_renderer extends plugin_renderer_base { */ public function subscriber_overview($users, $forum , $course) { $output = ''; + $modinfo = get_fast_modinfo($course); if (!$users || !is_array($users) || count($users)===0) { $output .= $this->output->heading(get_string("nosubscribers", "forum")); + } else if (!isset($modinfo->instances['forum'][$forum->id])) { + $output .= $this->output->heading(get_string("invalidmodule", "error")); } else { + $cm = $modinfo->instances['forum'][$forum->id]; + $canviewemail = in_array('email', get_extra_user_fields(context_module::instance($cm->id))); $output .= $this->output->heading(get_string("subscribersto","forum", "'".format_string($forum->name)."'")); $table = new html_table(); $table->cellpadding = 5; @@ -93,7 +98,11 @@ class mod_forum_renderer extends plugin_renderer_base { $table->tablealign = 'center'; $table->data = array(); foreach ($users as $user) { - $table->data[] = array($this->output->user_picture($user, array('courseid'=>$course->id)), fullname($user), $user->email); + $info = array($this->output->user_picture($user, array('courseid'=>$course->id)), fullname($user)); + if ($canviewemail) { + array_push($info, $user->email); + } + $table->data[] = $info; } $output .= html_writer::table($table); } diff --git a/mod/quiz/override_form.php b/mod/quiz/override_form.php index 80976ec..8c6ca6b 100644 --- a/mod/quiz/override_form.php +++ b/mod/quiz/override_form.php @@ -157,10 +157,15 @@ class quiz_override_form extends moodleform { } $userchoices = array(); + $canviewemail = in_array('email', get_extra_user_fields($this->context)); foreach ($users as $id => $user) { if (empty($invalidusers[$id]) || (!empty($override) && $id == $override->userid)) { - $userchoices[$id] = fullname($user) . ', ' . $user->email; + if ($canviewemail) { + $userchoices[$id] = fullname($user) . ', ' . $user->email; + } else { + $userchoices[$id] = fullname($user); + } } } unset($users);