/**
  * Store available users
  *
  * @since   1.5
  * @since   1.6    Moved to this class from main class
  * @access  public
  * @return  void
  */
 public function store_users()
 {
     // Is the current user a super admin?
     $is_super_admin = is_super_admin($this->get_curUser()->ID);
     // Is it also one of the manually configured superior admins?
     $is_superior_admin = VAA_API::is_superior_admin($this->get_curUser()->ID);
     if (is_network_admin()) {
         // Get super admins (returns logins)
         $users = get_super_admins();
         // Remove current user
         if (in_array($this->get_curUser()->user_login, $users)) {
             unset($users[array_search($this->get_curUser()->user_login, $users)]);
         }
         // Convert logins to WP_User objects and filter them for superior admins
         foreach ($users as $key => $user_login) {
             $user = get_user_by('login', $user_login);
             if ($user && !in_array($user->user_login, VAA_API::get_superior_admins())) {
                 $users[$key] = get_user_by('login', $user_login);
             } else {
                 unset($users[$key]);
             }
         }
     } else {
         $user_args = array('orderby' => 'display_name', 'exclude' => array_merge(VAA_API::get_superior_admins(), array($this->get_curUser()->ID)));
         // Do not get regular admins for normal installs (WP 4.4+)
         if (!is_multisite() && !$is_superior_admin) {
             $user_args['role__not_in'] = 'administrator';
         }
         // Sort users by role and filter them on available roles
         $users = $this->filter_sort_users_by_role(get_users($user_args));
     }
     $userids = array();
     $usernames = array();
     // Loop though all users
     foreach ($users as $user_key => $user) {
         // If the current user is not a superior admin, run the user filters
         if (true !== $is_superior_admin) {
             /**
              * Implement checks instead of is_super_admin() because it adds a lot unnecessary queries
              *
              * @since  1.5.2
              * @See    is_super_admin()
              * @link   https://developer.wordpress.org/reference/functions/is_super_admin/
              */
             //if ( is_super_admin( $user->ID ) ) {
             if (is_multisite() && in_array($user->user_login, (array) get_super_admins())) {
                 // Remove super admins for multisites
                 unset($users[$user_key]);
                 continue;
             } elseif (!is_multisite() && $user->has_cap('administrator')) {
                 // Remove regular admins for normal installs
                 unset($users[$user_key]);
                 continue;
             } elseif (!$is_super_admin && $user->has_cap('view_admin_as')) {
                 // Remove users who can access this plugin for non-admin users with the view_admin_as capability
                 unset($users[$user_key]);
                 continue;
             }
         }
         // Add users who can't access this plugin to the users list
         $userids[$user->data->ID] = $user->data->display_name;
         $usernames[$user->data->user_login] = $user->data->display_name;
     }
     $this->set_users($users);
     $this->set_userids($userids);
     $this->set_usernames($usernames);
 }