/** * * get all users */ static function getAllUsers() { // // use database // if (gatorconf::get('use_database')) { $db = new DBDriver(); $rs = $db->query("SELECT * FROM users"); return $db->fetchAll($rs); } // // use user_config_file // $config_file = gatorconf::get('user_config_file'); // load users database on start and on file change if (!isset($_SESSION['cached_users']) || $_SESSION['user_config_stamp'] != filemtime($config_file)) { $_SESSION['user_config_stamp'] = filemtime($config_file); $_SESSION['cached_users'] = json_decode(file_get_contents($config_file), true); } // refresh user's permissions if (isset($_SESSION['simple_auth']['username']) && $_SESSION['simple_auth']['username'] != 'admin' && isset($_SESSION['simple_auth']['permissions'])) { foreach ($_SESSION['cached_users'] as $key => $user) { // account match if ($user['username'] == $_SESSION['simple_auth']['username']) { $_SESSION['simple_auth']['permissions'] = $user['permissions']; break; } } } if (!is_array($_SESSION['cached_users'])) { gator::error('cannot read users file!'); } return $_SESSION['cached_users']; }