PluginProbe ʕ •ᴥ•ʔ
Advanced Access Manager – Access Governance for WordPress / 5.0
Advanced Access Manager – Access Governance for WordPress v5.0
6.8.4 6.8.5 6.9.0 6.9.1 6.9.10 6.9.11 6.9.12 6.9.13 6.9.14 6.9.15 6.9.16 6.9.17 6.9.18 6.9.19 6.9.2 6.9.20 6.9.21 6.9.22 6.9.23 6.9.24 6.9.25 6.9.26 6.9.27 6.9.28 6.9.29 6.9.3 6.9.30 6.9.31 6.9.32 6.9.33 6.9.34 6.9.35 6.9.36 6.9.37 6.9.38 6.9.39 6.9.4 6.9.41 6.9.42 6.9.43 6.9.44 6.9.45 6.9.46 6.9.47 6.9.48 6.9.49 6.9.5 6.9.51 6.9.6 6.9.7 6.9.8 6.9.9 7.0.0 7.0.0-alpha.6 7.0.0-alpha.7 7.0.0-beta.1 7.0.0-rc1 7.0.0-rc2 7.0.0-rc3 7.0.1 7.0.10 7.0.11 7.0.2 7.0.3 7.0.4 7.0.5 7.0.6 7.0.7 7.0.8 7.0.9 7.1.0 7.1.1 trunk 3.0 4.0 4.0.1 4.1 4.2 4.3 4.4 4.4.1 4.5 4.6 4.6.1 4.6.2 4.7 4.7.1 4.7.2 4.7.5 4.7.6 4.8 4.8.1 4.9 4.9.1 4.9.2 4.9.3 4.9.4 4.9.5 4.9.5.1 4.9.5.2 5.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.1 5.1.1 5.10 5.11 5.2 5.2.1 5.2.5 5.2.6 5.2.7 5.3 5.3.1 5.3.2 5.3.3 5.3.4 5.3.5 5.4 5.4.1 5.4.2 5.4.3 5.4.3.1 5.4.3.2 5.5 5.5.1 5.5.2 5.6 5.6.1 5.6.1.1 5.7 5.7.1 5.7.2 5.7.3 5.8 5.8.1 5.8.2 5.8.3 5.9 5.9.1 5.9.1.1 5.9.2 5.9.2.1 5.9.3 5.9.4 5.9.5 5.9.6 5.9.6.1 5.9.6.2 5.9.6.3 5.9.7 5.9.7.1 5.9.7.2 5.9.7.3 5.9.8 5.9.8.1 5.9.9 5.9.9.1 6.0.0 6.0.1 6.0.2 6.0.3 6.0.4 6.0.5 6.1.0 6.1.1 6.2.0 6.2.1 6.2.2 6.3.0 6.3.1 6.3.2 6.3.3 6.4.0 6.4.1 6.4.2 6.4.3 6.5.0 6.5.1 6.5.2 6.5.3 6.5.4 6.6.0 6.6.1 6.6.2 6.6.3 6.6.4 6.7.0 6.7.1 6.7.2 6.7.3 6.7.4 6.7.5 6.7.6 6.7.7 6.7.8 6.7.9 6.8.0 6.8.1 6.8.2 6.8.3
advanced-access-manager / Application / Frontend / Manager.php
advanced-access-manager / Application / Frontend Last commit date
phtml 8 years ago Authorization.php 8 years ago Filter.php 8 years ago Manager.php 8 years ago
Manager.php
130 lines
1 <?php
2
3 /**
4 * ======================================================================
5 * LICENSE: This file is subject to the terms and conditions defined in *
6 * file 'license.txt', which is part of this source code package. *
7 * ======================================================================
8 */
9
10 /**
11 * AAM frontend manager
12 *
13 * @package AAM
14 * @author Vasyl Martyniuk <vasyl@vasyltech.com>
15 */
16 class AAM_Frontend_Manager {
17
18 /**
19 * Instance of itself
20 *
21 * @var AAM_Frontend_Manager
22 *
23 * @access private
24 */
25 private static $_instance = null;
26
27 /**
28 * Construct the manager
29 *
30 * @return void
31 *
32 * @access public
33 */
34 public function __construct() {
35 if (AAM_Core_Config::get('frontend-access-control', true)) {
36 AAM_Frontend_Filter::register();
37 }
38
39 //manage AAM shortcode
40 add_shortcode('aam', array($this, 'processShortcode'));
41
42 //admin bar
43 $this->checkAdminBar();
44
45 //register login widget
46 if (AAM_Core_Config::get('secure-login', true)) {
47 add_action('widgets_init', array($this, 'registerLoginWidget'));
48 add_action('wp_enqueue_scripts', array($this, 'printJavascript'));
49 }
50 }
51
52 /**
53 * Process AAM short-codes
54 *
55 * @param array $args
56 * @param string $content
57 *
58 * @return string
59 *
60 * @access public
61 */
62 public function processShortcode($args, $content) {
63 $shortcode = new AAM_Shortcode_Factory($args, $content);
64
65 return $shortcode->process();
66 }
67
68 /**
69 * Check admin bar
70 *
71 * Make sure that current user can see admin bar
72 *
73 * @return void
74 *
75 * @access public
76 */
77 public function checkAdminBar() {
78 if (AAM_Core_API::capabilityExists('show_admin_bar')) {
79 if (!AAM::getUser()->hasCapability('show_admin_bar')) {
80 show_admin_bar(false);
81 }
82 }
83 }
84
85 /**
86 * Register login widget
87 *
88 * @return void
89 *
90 * @access public
91 */
92 public function registerLoginWidget() {
93 register_widget('AAM_Backend_Widget_Login');
94 }
95
96 /**
97 * Print JS libraries
98 *
99 * @return void
100 *
101 * @access public
102 */
103 public function printJavascript() {
104 if (AAM_Core_Config::get('secure-login', true)) {
105 wp_enqueue_script('aam-login', AAM_MEDIA . '/js/aam-login.js');
106
107 //add plugin localization
108 $locals = array(
109 'nonce' => wp_create_nonce('aam_ajax'),
110 'ajaxurl' => admin_url('admin-ajax.php')
111 );
112
113 wp_localize_script('aam-login', 'aamLocal', $locals);
114 }
115 }
116
117 /**
118 * Bootstrap the manager
119 *
120 * @return void
121 *
122 * @access public
123 */
124 public static function bootstrap() {
125 if (is_null(self::$_instance)) {
126 self::$_instance = new self;
127 }
128 }
129
130 }