PluginProbe
The WP Remote WordPress Plugin / 5.68
The WP Remote WordPress Plugin v5.68
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 +59 -83 6.655.68 View file →
@@ -4,12 +4,10 @@
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: 6.65
8 +Version: 5.68
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)
12 10 */
13 11
14 12 /* Copyright 2017 WP Remote (email : support@wpremote.com)
15 13
@@ -39,13 +37,8 @@
39 37 require_once dirname( __FILE__ ) . '/wp_actions.php';
40 38 require_once dirname( __FILE__ ) . '/info.php';
41 39 require_once dirname( __FILE__ ) . '/account.php';
42 40 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 -
48 41 ##WPCACHEMODULE##
49 42
50 43
51 44 $bvsettings = new WPRWPSettings();
@@ -60,18 +53,15 @@
60 53 register_uninstall_hook(__FILE__, array('WPRWPAction', 'uninstall'));
61 54 register_activation_hook(__FILE__, array($wp_action, 'activate'));
62 55 register_deactivation_hook(__FILE__, array($wp_action, 'deactivate'));
63 56
64 -
65 57 add_action('wp_footer', array($wp_action, 'footerHandler'), 100);
66 -add_action('wpr_clear_bv_services_config', array($wp_action, 'clear_bv_services_config'));
67 -
58 +add_action('clear_bv_services_config', array($wp_action, 'clear_bv_services_config'));
68 59 ##SOADDUNINSTALLACTION##
69 60
70 61 ##DISABLE_OTHER_OPTIMIZATION_PLUGINS##
71 62
72 63 ##WPCLIMODULE##
73 -
74 64 if (is_admin()) {
75 65 require_once dirname( __FILE__ ) . '/wp_admin.php';
76 66 $wpadmin = new WPRWPAdmin($bvsettings, $bvsiteinfo);
77 67 add_action('admin_init', array($wpadmin, 'initHandler'));
@@ -84,24 +74,18 @@
84 74 add_action('admin_menu', array($wpadmin, 'menu'));
85 75 }
86 76 add_filter('plugin_action_links', array($wpadmin, 'settingsLink'), 10, 2);
87 77 add_action('admin_head', array($wpadmin, 'removeAdminNotices'), 3);
88 -
89 - ##MG_AJAX_ACTIONS##
90 - ##POPUP_ON_DEACTIVATION##
91 78 add_action('admin_notices', array($wpadmin, 'activateWarning'));
92 79 add_action('admin_enqueue_scripts', array($wpadmin, 'wprsecAdminMenu'));
80 + ##ALPURGECACHEFUNCTION##
81 + ##ALADMINMENU##
93 82 }
94 83
95 -if ((array_key_exists('bvreqmerge', $_POST)) || (array_key_exists('bvreqmerge', $_GET))) { // phpcs:ignore WordPress.Security.NonceVerification.Missing, WordPress.Security.NonceVerification.Recommended
96 - $_REQUEST = array_merge($_GET, $_POST); // phpcs:ignore WordPress.Security.NonceVerification.Missing, WordPress.Security.NonceVerification.Recommended
84 +if ((array_key_exists('bvreqmerge', $_POST)) || (array_key_exists('bvreqmerge', $_GET))) {
85 + $_REQUEST = array_merge($_GET, $_POST);
97 86 }
98 87
99 -#Service active check
100 -if ($bvinfo->config != false) {
101 - add_action('wpr_remove_bv_preload_include', array($wp_action, 'removeBVPreload'));
102 -}
103 -
104 88 require_once dirname( __FILE__ ) . '/php_error_monitoring/monitoring.php';
105 89 WPRWPPHPErrorMonitoring::init();
106 90
107 91 if ($bvinfo->hasValidDBVersion()) {
@@ -111,39 +95,66 @@
111 95 $actlog = new BVWPActLog($bvdb, $bvsettings, $bvinfo, $bvconfig['activity_log']);
112 96 $actlog->init();
113 97 }
114 98
115 - ##MAINTENANCEMODULE##
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 106 }
117 107
118 -if (WPRHelper::getRawParam('REQUEST', 'bvplugname') == "wpremote") {
108 +if ((array_key_exists('bvplugname', $_REQUEST)) && ($_REQUEST['bvplugname'] == "wpremote")) {
119 109 require_once dirname( __FILE__ ) . '/callback/base.php';
120 110 require_once dirname( __FILE__ ) . '/callback/response.php';
121 111 require_once dirname( __FILE__ ) . '/callback/request.php';
122 112 require_once dirname( __FILE__ ) . '/recover.php';
123 113
124 - $pubkey = WPRHelper::getRawParam('REQUEST', 'pubkey');
125 - $pubkey = isset($pubkey) ? WPRAccount::sanitizeKey($pubkey) : '';
126 - $rcvracc = WPRHelper::getRawParam('REQUEST', 'rcvracc');
114 + $pubkey = WPRAccount::sanitizeKey($_REQUEST['pubkey']);
127 115
128 - if (isset($rcvracc)) {
129 - $bvctag = WPRHelper::getRawParam('REQUEST', 'bvctag');
130 - $bvctag = isset($bvctag) ? WPRAccount::sanitizeKey($bvctag) : null;
131 - $account = WPRRecover::find($bvsettings, $pubkey, $bvctag);
116 + if (array_key_exists('rcvracc', $_REQUEST)) {
117 + $account = WPRRecover::find($bvsettings, $pubkey);
132 118 } else {
133 119 $account = WPRAccount::find($bvsettings, $pubkey);
134 120 }
135 121
136 - $request = new WPRCallbackRequest($account, $_REQUEST, $bvsettings); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
137 - $response = new WPRCallbackResponse($request->bvb64cksize);
122 + $request = new BVCallbackRequest($account, $_REQUEST, $bvsettings);
123 + $response = new BVCallbackResponse($request->bvb64cksize);
138 124
139 125 if ($request->authenticate() === 1) {
140 - $bv_frm_tstng = WPRHelper::getRawParam('REQUEST', 'bv_frm_tstng');
141 - if (isset($bv_frm_tstng)) {
142 - require_once dirname(__FILE__) . '/form_testing/form_testing.php';
143 - $form_testing = new BVFormTesting($_REQUEST); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
144 - $form_testing->init();
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);
145 129
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 + });
146 157 } else {
147 158 define('WPRBASEPATH', plugin_dir_path(__FILE__));
148 159
149 160
@@ -148,17 +159,15 @@
148 159
149 160
150 161 require_once dirname( __FILE__ ) . '/callback/handler.php';
151 162
152 - $params = $request->processParams($_REQUEST); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
163 + $params = $request->processParams($_REQUEST);
153 164 if ($params === false) {
154 165 $response->terminate($request->corruptedParamsResp());
155 166 }
156 167 $request->params = $params;
157 - $callback_handler = new WPRCallbackHandler($bvdb, $bvsettings, $bvsiteinfo, $request, $account, $response);
158 - if ($request->is_aftershutdown) {
159 - $callback_handler->deferExecutionUntilShutdown();
160 - } else if ($request->is_afterload) {
168 + $callback_handler = new BVCallbackHandler($bvdb, $bvsettings, $bvsiteinfo, $request, $account, $response);
169 + if ($request->is_afterload) {
161 170 add_action('wp_loaded', array($callback_handler, 'execute'));
162 171 } else if ($request->is_admin_ajax) {
163 172 add_action('wp_ajax_bvadm', array($callback_handler, 'bvAdmExecuteWithUser'));
164 173 add_action('wp_ajax_nopriv_bvadm', array($callback_handler, 'bvAdmExecuteWithoutUser'));
@@ -173,16 +182,16 @@
173 182 if ($bvinfo->hasValidDBVersion()) {
174 183 if ($bvinfo->isProtectModuleEnabled()) {
175 184 require_once dirname( __FILE__ ) . '/protect/protect.php';
176 185 //For backward compatibility.
177 - WPRProtect_V665::$settings = new WPRWPSettings();
178 - WPRProtect_V665::$db = new WPRWPDb();
179 - WPRProtect_V665::$info = new WPRInfo(WPRProtect_V665::$settings);
186 + WPRProtect_V568::$settings = new WPRWPSettings();
187 + WPRProtect_V568::$db = new WPRWPDb();
188 + WPRProtect_V568::$info = new WPRInfo(WPRProtect_V568::$settings);
180 189
181 - add_action('wpr_clear_pt_config', array('WPRProtect_V665', 'uninstall'));
190 + add_action('clear_pt_config', array('WPRProtect_V568', 'uninstall'));
182 191
183 192 if ($bvinfo->isActivePlugin()) {
184 - WPRProtect_V665::init(WPRProtect_V665::MODE_WP);
193 + WPRProtect_V568::init(WPRProtect_V568::MODE_WP);
185 194 }
186 195 }
187 196
188 197 if ($bvinfo->isDynSyncModuleEnabled()) {
@@ -193,9 +202,9 @@
193 202 }
194 203
195 204 }
196 205 $bv_site_settings = $bvsettings->getOption('bv_site_settings');
197 - if (is_array($bv_site_settings)) {
206 + if (isset($bv_site_settings)) {
198 207 if (isset($bv_site_settings['wp_auto_updates'])) {
199 208 $wp_auto_updates = $bv_site_settings['wp_auto_updates'];
200 209 if (array_key_exists('block_auto_update_core', $wp_auto_updates)) {
201 210 add_filter('auto_update_core', '__return_false' );
@@ -211,28 +220,8 @@
211 220 if (array_key_exists('block_auto_update_translation', $wp_auto_updates)) {
212 221 add_filter('auto_update_translation', '__return_false' );
213 222 }
214 223 }
215 -
216 - if (isset($bv_site_settings['security_hardening'])) {
217 - $bv_security_hardening = $bv_site_settings['security_hardening'];
218 - if (is_array($bv_security_hardening) &&
219 - isset($bv_security_hardening['version']) &&
220 - $bv_security_hardening['version'] === 1) {
221 - if (isset($bv_security_hardening['disable_file_editor']) &&
222 - $bv_security_hardening['disable_file_editor'] === true &&
223 - !defined('DISALLOW_FILE_EDIT')) {
224 - define('DISALLOW_FILE_EDIT', true);
225 - }
226 -
227 - if (isset($bv_security_hardening['block_file_modifications']) &&
228 - $bv_security_hardening['block_file_modifications'] === true &&
229 - !defined('DISALLOW_FILE_MODS')) {
230 - define('DISALLOW_FILE_MODS', true);
231 - }
232 - }
233 - }
234 -
235 224 }
236 225
237 226 if (is_admin()) {
238 227 add_filter('site_transient_update_plugins', array($wpadmin, 'hidePluginUpdate'));
@@ -238,18 +227,5 @@
238 227 add_filter('site_transient_update_plugins', array($wpadmin, 'hidePluginUpdate'));
239 228 }
240 229
241 230 ##THIRDPARTYCACHINGMODULE##
242 -}
243 -
244 -if (WPRWP2FA::isEnabled($bvsettings)) {
245 - $wp_2fa = new WPRWP2FA();
246 - $wp_2fa->init();
247 -}
248 -
249 -if (!empty($bvinfo->getLPWhitelabelInfo())) {
250 - $wp_login_whitelabel = new WPRWPLoginWhitelabel();
251 - $wp_login_whitelabel->init();
252 -}
253 -
254 -add_action('wpr_clear_wp_2fa_config', array($wp_action, 'clear_wp_2fa_config'));
255 -##PLUGIN_LOADED_MODULE##
231 +}