function wiki_fn_list_users($args, $renderer_state) { $users_mgr =& get_users_manager(); return $users_mgr->get_all_usernames(); }
/** * returns true if current user has permission to execute given action on given page * everyone can login, view, view source and show history * logged user can edit, delete and update * only admin or same user can change password * only admin can create or delete user * only admin can edit pages from internal miniWiki namespace (MW) * @param action action name * @param page MW_Page */ function is_action_permitted($action, $page) { $this->init(); $is_logged = $this->is_logged; $is_admin = $this->is_logged && $this->user == MW_USER_NAME_ADMIN; $is_related = isset($page->related_user) && $this->is_logged && $this->user == $page->related_user; $users_mgr =& get_users_manager(); $is_users_maintenance_allowed = $users_mgr->allows_maintenance(); switch ($action->get_name()) { case MW_ACTION_LOGIN: return true; case MW_ACTION_VIEW: case MW_ACTION_VIEW_SOURCE: case MW_ACTION_HISTORY: return config('auth_read_logged_only') ? $is_logged : true; case MW_ACTION_EDIT: case MW_ACTION_DELETE: case MW_ACTION_RENAME: if (stripos($page->name, MW_PAGE_NAME_PREFIX_MINIWIKI) === 0) { return $is_admin; } return config('auth_write_admin_only') ? $is_admin : $is_logged; case MW_ACTION_CHANGE_PASSWORD: return $is_users_maintenance_allowed && ($is_related || $is_admin); case MW_ACTION_CREATE_USER: case MW_ACTION_DELETE_USER: return $is_users_maintenance_allowed && $is_admin; default: return false; } }
/** * returns true if given password is valid for associated user * @param pass password */ function is_password_valid($pass) { $users_mgr =& get_users_manager(); return $users_mgr->is_password_valid($this->related_user, $pass); }