Пример #1
0
 function wiki_fn_list_users($args, $renderer_state)
 {
     $users_mgr =& get_users_manager();
     return $users_mgr->get_all_usernames();
 }
Пример #2
0
 /**
  * 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;
     }
 }
Пример #3
0
 /**
  * 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);
 }