PluginProbe
The WP Remote WordPress Plugin / 6.36
The WP Remote WordPress Plugin v6.36
6.72 6.69 6.65 6.62 6.48 6.47 4.87 4.97 5.05 5.09 5.16 5.22 5.24 5.25 5.38 5.41 5.42 5.45 5.47 5.53 5.56 5.65 5.68 5.72 5.73 All 53 releases
← All changes | plugin.php +56 -49 5.656.36 View file →
@@ -4,10 +4,12 @@
4 4 Plugin URI: https://wpremote.com
5 5 Description: Manage your WordPress site with <a href="https://wpremote.com/">WP Remote</a>.
6 6 Author: WP Remote
7 7 Author URI: https://wpremote.com
8 -Version: 5.65
8 +Version: 6.36
9 9 Network: True
10 +License: GPLv2 or later
11 +License URI: [http://www.gnu.org/licenses/gpl-2.0.html](http://www.gnu.org/licenses/gpl-2.0.html)
10 12 */
11 13
12 14 /* Copyright 2017 WP Remote (email : support@wpremote.com)
13 15
@@ -37,8 +39,13 @@
37 39 require_once dirname( __FILE__ ) . '/wp_actions.php';
38 40 require_once dirname( __FILE__ ) . '/info.php';
39 41 require_once dirname( __FILE__ ) . '/account.php';
40 42 require_once dirname( __FILE__ ) . '/helper.php';
43 +require_once dirname( __FILE__ ) . '/wp_file_system.php';
44 +require_once dirname( __FILE__ ) . '/wp_2fa/wp_2fa.php';
45 +
46 +require_once dirname( __FILE__ ) . '/wp_login_whitelabel.php';
47 +
41 48 ##WPCACHEMODULE##
42 49
43 50
44 51 $bvsettings = new WPRWPSettings();
@@ -53,10 +60,12 @@
53 60 register_uninstall_hook(__FILE__, array('WPRWPAction', 'uninstall'));
54 61 register_activation_hook(__FILE__, array($wp_action, 'activate'));
55 62 register_deactivation_hook(__FILE__, array($wp_action, 'deactivate'));
56 63
64 +
57 65 add_action('wp_footer', array($wp_action, 'footerHandler'), 100);
58 -add_action('clear_bv_services_config', array($wp_action, 'clear_bv_services_config'));
66 +add_action('wpr_clear_bv_services_config', array($wp_action, 'clear_bv_services_config'));
67 +
59 68 ##SOADDUNINSTALLACTION##
60 69
61 70 ##DISABLE_OTHER_OPTIMIZATION_PLUGINS##
62 71
@@ -74,8 +83,11 @@
74 83 add_action('admin_menu', array($wpadmin, 'menu'));
75 84 }
76 85 add_filter('plugin_action_links', array($wpadmin, 'settingsLink'), 10, 2);
77 86 add_action('admin_head', array($wpadmin, 'removeAdminNotices'), 3);
87 +
88 + ##MG_AJAX_ACTIONS##
89 + ##POPUP_ON_DEACTIVATION##
78 90 add_action('admin_notices', array($wpadmin, 'activateWarning'));
79 91 add_action('admin_enqueue_scripts', array($wpadmin, 'wprsecAdminMenu'));
80 92 ##ALPURGECACHEFUNCTION##
81 93 ##ALADMINMENU##
@@ -80,12 +92,17 @@
80 92 ##ALPURGECACHEFUNCTION##
81 93 ##ALADMINMENU##
82 94 }
83 95
84 -if ((array_key_exists('bvreqmerge', $_POST)) || (array_key_exists('bvreqmerge', $_GET))) {
85 - $_REQUEST = array_merge($_GET, $_POST);
96 +if ((array_key_exists('bvreqmerge', $_POST)) || (array_key_exists('bvreqmerge', $_GET))) { // phpcs:ignore WordPress.Security.NonceVerification.Missing, WordPress.Security.NonceVerification.Recommended
97 + $_REQUEST = array_merge($_GET, $_POST); // phpcs:ignore WordPress.Security.NonceVerification.Missing, WordPress.Security.NonceVerification.Recommended
86 98 }
87 99
100 +#Service active check
101 +if ($bvinfo->config != false) {
102 + add_action('wpr_remove_bv_preload_include', array($wp_action, 'removeBVPreload'));
103 +}
104 +
88 105 require_once dirname( __FILE__ ) . '/php_error_monitoring/monitoring.php';
89 106 WPRWPPHPErrorMonitoring::init();
90 107
91 108 if ($bvinfo->hasValidDBVersion()) {
@@ -95,66 +112,37 @@
95 112 $actlog = new BVWPActLog($bvdb, $bvsettings, $bvinfo, $bvconfig['activity_log']);
96 113 $actlog->init();
97 114 }
98 115
99 - if ($bvinfo->isServiceActive('maintenance_mode')) {
100 - require_once dirname( __FILE__ ). '/maintenance/wp_maintenance.php';
101 - $bvconfig = $bvinfo->config;
102 - $maintenance = new BVWPMaintenance($bvconfig['maintenance_mode']);
103 - $maintenance->init();
104 - }
105 -
116 + ##MAINTENANCEMODULE##
106 117 }
107 118
108 -if ((array_key_exists('bvplugname', $_REQUEST)) && ($_REQUEST['bvplugname'] == "wpremote")) {
119 +if (WPRHelper::getRawParam('REQUEST', 'bvplugname') == "wpremote") {
109 120 require_once dirname( __FILE__ ) . '/callback/base.php';
110 121 require_once dirname( __FILE__ ) . '/callback/response.php';
111 122 require_once dirname( __FILE__ ) . '/callback/request.php';
112 123 require_once dirname( __FILE__ ) . '/recover.php';
113 124
114 - $pubkey = WPRAccount::sanitizeKey($_REQUEST['pubkey']);
125 + $pubkey = WPRHelper::getRawParam('REQUEST', 'pubkey');
126 + $pubkey = isset($pubkey) ? WPRAccount::sanitizeKey($pubkey) : '';
127 + $rcvracc = WPRHelper::getRawParam('REQUEST', 'rcvracc');
115 128
116 - if (array_key_exists('rcvracc', $_REQUEST)) {
129 + if (isset($rcvracc)) {
117 130 $account = WPRRecover::find($bvsettings, $pubkey);
118 131 } else {
119 132 $account = WPRAccount::find($bvsettings, $pubkey);
120 133 }
121 134
122 - $request = new BVCallbackRequest($account, $_REQUEST, $bvsettings);
135 + $request = new BVCallbackRequest($account, $_REQUEST, $bvsettings); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
123 136 $response = new BVCallbackResponse($request->bvb64cksize);
124 137
125 138 if ($request->authenticate() === 1) {
126 - if (array_key_exists('bv_ignr_frm_cptch', $_REQUEST)) {
127 - #handling of Contact Forms 7
128 - add_filter('wpcf7_skip_spam_check', '__return_true', PHP_INT_MAX, 2);
139 + $bv_frm_tstng = WPRHelper::getRawParam('REQUEST', 'bv_frm_tstng');
140 + if (isset($bv_frm_tstng)) {
141 + require_once dirname(__FILE__) . '/form_testing/form_testing.php';
142 + $form_testing = new BVFormTesting($_REQUEST); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
143 + $form_testing->init();
129 144
130 - #handling of Formidable plugin
131 - add_filter('frm_is_field_hidden', '__return_true', PHP_INT_MAX, 3);
132 -
133 - #handling of WP Forms plugin
134 - add_filter('wpforms_process_bypass_captcha', '__return_true', PHP_INT_MAX, 3);
135 -
136 - #handling of Forminator plugin
137 - if (defined('WP_PLUGIN_DIR')) {
138 - $abstractFrontActionFilePath = WP_PLUGIN_DIR . '/forminator/library/abstracts/abstract-class-front-action.php';
139 - $frontActionFilePath = WP_PLUGIN_DIR . '/forminator/library/modules/custom-forms/front/front-action.php';
140 -
141 - if (file_exists($abstractFrontActionFilePath) && file_exists($frontActionFilePath)) {
142 - require_once $abstractFrontActionFilePath;
143 - require_once $frontActionFilePath;
144 - if (class_exists('Forminator_CForm_Front_Action')) {
145 - Forminator_CForm_Front_Action::$hidden_fields[] = "bv-stripe-";
146 - }
147 - }
148 - }
149 -
150 - #handling of CleanTalk Antispam plugin
151 - add_action('init', function() {
152 - global $apbct;
153 - if (isset($apbct) && is_object($apbct)) {
154 - $apbct->settings['forms__contact_forms_test'] = 0;
155 - }
156 - });
157 145 } else {
158 146 define('WPRBASEPATH', plugin_dir_path(__FILE__));
159 147
160 148
@@ -159,9 +147,9 @@
159 147
160 148
161 149 require_once dirname( __FILE__ ) . '/callback/handler.php';
162 150
163 - $params = $request->processParams($_REQUEST);
151 + $params = $request->processParams($_REQUEST); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
164 152 if ($params === false) {
165 153 $response->terminate($request->corruptedParamsResp());
166 154 }
167 155 $request->params = $params;
@@ -181,11 +169,17 @@
181 169 } else {
182 170 if ($bvinfo->hasValidDBVersion()) {
183 171 if ($bvinfo->isProtectModuleEnabled()) {
184 172 require_once dirname( __FILE__ ) . '/protect/protect.php';
185 - add_action('clear_pt_config', array('WPRProtect_V565', 'uninstall'));
173 + //For backward compatibility.
174 + WPRProtect_V636::$settings = new WPRWPSettings();
175 + WPRProtect_V636::$db = new WPRWPDb();
176 + WPRProtect_V636::$info = new WPRInfo(WPRProtect_V636::$settings);
177 +
178 + add_action('wpr_clear_pt_config', array('WPRProtect_V636', 'uninstall'));
179 +
186 180 if ($bvinfo->isActivePlugin()) {
187 - WPRProtect_V565::init(WPRProtect_V565::MODE_WP);
181 + WPRProtect_V636::init(WPRProtect_V636::MODE_WP);
188 182 }
189 183 }
190 184
191 185 if ($bvinfo->isDynSyncModuleEnabled()) {
@@ -221,5 +215,18 @@
221 215 add_filter('site_transient_update_plugins', array($wpadmin, 'hidePluginUpdate'));
222 216 }
223 217
224 218 ##THIRDPARTYCACHINGMODULE##
225 -}
219 +}
220 +
221 +if (WPRWP2FA::isEnabled($bvsettings)) {
222 + $wp_2fa = new WPRWP2FA();
223 + $wp_2fa->init();
224 +}
225 +
226 +if (!empty($bvinfo->getLPWhitelabelInfo())) {
227 + $wp_login_whitelabel = new WPRWPLoginWhitelabel();
228 + $wp_login_whitelabel->init();
229 +}
230 +
231 +add_action('wpr_clear_wp_2fa_config', array($wp_action, 'clear_wp_2fa_config'));
232 +##PLUGIN_LOADED_MODULE##