| @@ -1,40 +1,42 @@ | ||
| 1 | -<?php | |
| 2 | -class Admin { | |
| 3 | - /** | |
| 4 | - * Admin class construct | |
| 5 | - */ | |
| 6 | - public function __construct() { | |
| 7 | - if ( ! class_exists( 'bbPress' ) ) { | |
| 8 | - add_action( 'admin_notices', [ $this, 'admin_notices' ] ); | |
| 9 | - } | |
| 10 | - | |
| 11 | - new admin\Menu(); | |
| 12 | - $this->load_csf(); | |
| 13 | - } | |
| 14 | - | |
| 15 | - /** | |
| 16 | - * Load Codestar Framework and related settings. | |
| 17 | - * | |
| 18 | - * @return void | |
| 19 | - */ | |
| 20 | - public function load_csf() { | |
| 21 | - require BBPC_DIR . 'includes/admin/settings/codestar-framework/codestar-framework.php'; | |
| 22 | - if ( ! class_exists( 'BBPCorePro' ) ) { | |
| 23 | - require BBPC_DIR . 'includes/admin/settings/options/settings.php'; | |
| 24 | - } | |
| 25 | - } | |
| 26 | - | |
| 27 | - /** | |
| 28 | - * Show admin notices when needed. | |
| 29 | - */ | |
| 30 | - public function admin_notices() { | |
| 31 | - $message = sprintf( | |
| 32 | - /* translators: 1: BBP Core 2: bbPress */ | |
| 33 | - esc_html__( '"%1$s" requires "%2$s" to be installed and activated.', 'bbp-core' ), | |
| 34 | - '<strong>' . esc_html__( 'BBP Core Plugin', 'bbp-core' ) . '</strong>', | |
| 35 | - '<strong>' . esc_html__( 'bbPress', 'bbp-core' ) . '</strong>' | |
| 36 | - ); | |
| 37 | - | |
| 38 | - printf( '<div class="notice notice-error is-dismissible"><p>%1$s</p></div>', $message ); | |
| 39 | - } | |
| 40 | -} | |
| 1 | +<?php | |
| 2 | +class Admin { | |
| 3 | + /** | |
| 4 | + * Admin class construct | |
| 5 | + */ | |
| 6 | + public function __construct() { | |
| 7 | + add_filter( 'admin_body_class', [ $this, 'body_class' ] ); | |
| 8 | + new admin\Menu(); | |
| 9 | + | |
| 10 | + // Load Demo Importer. | |
| 11 | + require_once FORUMAX_PATH . 'includes/admin/Demo_Importer.php'; | |
| 12 | + } | |
| 13 | + | |
| 14 | + /** | |
| 15 | + * Add body class to admin pages. | |
| 16 | + * | |
| 17 | + * @param string $classes Body classes. | |
| 18 | + * @return string | |
| 19 | + */ | |
| 20 | + public function body_class( $classes ) { | |
| 21 | + // if current page is ?page=forumax in admin. | |
| 22 | + if ( isset( $_GET['page'] ) && 'forumax' === $_GET['page'] ) { | |
| 23 | + $classes .= ' bbpc-forum-ui'; | |
| 24 | + } | |
| 25 | + | |
| 26 | + // if has no pro plan. | |
| 27 | + if ( forumax_is_premium() !== true ) { | |
| 28 | + $classes .= ' bbpc-no-pro'; | |
| 29 | + } | |
| 30 | + | |
| 31 | + // if has no promax plan. | |
| 32 | + if ( forumax_is_promax() !== true ) { | |
| 33 | + $classes .= ' bbpc-no-promax'; | |
| 34 | + } | |
| 35 | + | |
| 36 | + if ( class_exists( 'BBPC_GEO_ROLES' ) ) { | |
| 37 | + $classes .= ' bbpc-geo-roles'; | |
| 38 | + } | |
| 39 | + | |
| 40 | + return $classes; | |
| 41 | + } | |
| 42 | +} | |