Esempio n. 1
0
 /**
  * Get a list of the user IDs of every student user.
  *
  * @return array a list of all student user IDs
  *
  * @since 0.5
  */
 public static function get_student_user_ids()
 {
     $students = array();
     // If in multisite mode, populate the list with all users who are the
     // sole administrator on a non-root blog.  If running in single-site
     // mode, add any users who can edit posts but who are not admins.
     if (ClassBlogs_Utils::is_multisite()) {
         foreach (ClassBlogs_Utils::get_non_root_blog_ids() as $blog_id) {
             $admins = get_users('blog_id=' . $blog_id . '&role=administrator');
             if (count($admins) == 1) {
                 $admin = $admins[0];
                 if (!in_array($admin->ID, $students)) {
                     $students[] = $admin->ID;
                 }
             }
         }
     } else {
         foreach (get_users() as $user) {
             if (!ClassBlogs_NXTClass::user_can($user->ID, 'administrator') && ClassBlogs_NXTClass::user_can($user->ID, 'edit_posts')) {
                 $students[] = $user->ID;
             }
         }
     }
     return $students;
 }