This repository has been archived on 2026-10-23. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
aktiv-web/wp-content/plugins/user-role-editor/includes/classes/bbpress.php
T
2016-01-27 09:52:51 +01:00

77 lines
1.7 KiB
PHP

<?php
/**
* Support for bbPress user roles and capabilities
*
* Project: User Role Editor WordPress plugin
* Author: Vladimir Garagulya
* Author email: vladimir@shinephp.com
* Author URI: http://shinephp.com
*
**/
class URE_bbPress {
public static $instance = null;
protected $lib = null;
protected function __construct(Ure_Lib $lib) {
$this->lib = $lib;
}
// end of __construct()
static public function get_instance(Ure_Lib $lib) {
if (!function_exists('bbp_filter_blog_editable_roles')) { // bbPress plugin is not active
return null;
}
if (self::$instance!==null) {
return self::$instance;
}
if ($lib->is_pro()) {
self::$instance = new URE_bbPress_Pro($lib);
} else {
self::$instance = new URE_bbPress($lib);
}
return self::$instance;
}
// end of get_instance()
/**
* Exclude roles created by bbPress
*
* @global array $wp_roles
* @return array
*/
public function get_roles() {
global $wp_roles;
$roles = bbp_filter_blog_editable_roles($wp_roles->roles); // exclude bbPress roles
return $roles;
}
// end of get_roles()
/**
* Get full list user capabilities created by bbPress
*
* @return array
*/
public function get_caps() {
$caps = array_keys(bbp_get_caps_for_role(bbp_get_keymaster_role()));
return $caps;
}
// end of get_caps()
}
// end of URE_bbPress class