MDL-31520 user-ws: Optimised if statement for email access by moving admin check...
authorSam Hemelryk <sam@moodle.com>
Tue, 5 Jun 2012 22:35:19 +0000 (10:35 +1200)
committerSam Hemelryk <sam@moodle.com>
Tue, 5 Jun 2012 22:35:19 +0000 (10:35 +1200)
user/lib.php

index cf74c87..bfa5476 100644 (file)
@@ -380,11 +380,11 @@ function user_get_user_details($user, $course = null, array $userfields = array(
         }
     }
 
-    if (in_array('email', $userfields) && ($currentuser
+    if (in_array('email', $userfields) && ($isadmin // The admin is allowed the users email
+      or $currentuser // Of course the current user is as well
       or $canviewuseremail  // this is a capability in course context, it will be false in usercontext
       or $user->maildisplay == 1
-      or ($user->maildisplay == 2 and enrol_sharing_course($user, $USER))
-      or $isadmin)) {
+      or ($user->maildisplay == 2 and enrol_sharing_course($user, $USER)))) {
         $userdetails['email'] = $user->email;
     }