From e8513d2ca0943446288b82d834a5297b2869731d Mon Sep 17 00:00:00 2001
From: thepurpleblob <thepurpleblob>
Date: Tue, 17 Jul 2007 14:07:56 +0000
Subject: [PATCH] MDL-10395: Course managers are now displayed in the order
 that the user selects in the Define Roles page.

---
 course/lib.php | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/course/lib.php b/course/lib.php
index 5812d12cab..b97931c2b6 100644
--- a/course/lib.php
+++ b/course/lib.php
@@ -1783,15 +1783,17 @@ function print_course($course) {
     /// first find all roles that are supposed to be displayed
     if ($managerroles = get_config('', 'coursemanager')) {
         $coursemanagerroles = split(',', $managerroles);
-        foreach ($coursemanagerroles as $roleid) {
-            $role = get_record('role','id',$roleid);
-            if ($users = get_role_users($roleid, $context, true, '', 'u.lastname ASC', true)) {
-                foreach ($users as $teacher) {
-                    $fullname = fullname($teacher, has_capability('moodle/site:viewfullnames', $context)); 
-                    $namesarray[] = role_get_name($role, $context).': <a href="'.$CFG->wwwroot.'/user/view.php?id='.
+        $roles = get_records_select( 'role', '', 'sortorder' );
+        foreach ($roles as $role) {
+            if (in_array( $role->id, $coursemanagerroles )) {
+                if ($users = get_role_users($role->id, $context, true, '', 'u.lastname ASC', true)) {
+                    foreach ($users as $teacher) {
+                        $fullname = fullname($teacher, has_capability('moodle/site:viewfullnames', $context)); 
+                        $namesarray[] = role_get_name($role, $context).': <a href="'.$CFG->wwwroot.'/user/view.php?id='.
                                     $teacher->id.'&amp;course='.SITEID.'">'.$fullname.'</a>';
-                }
-            }          
+                    }
+                }          
+            }
         }
         
         if (!empty($namesarray)) {
-- 
2.39.5