Version Description
- Dec 2nd 2020 =
- Improvement: Improved support for the recent WordPress DB update
- Fix: Percentage ( % ) converted to random string after Restore the single call backup in certain databases
- Fix: IWP maintancemode not working if Minimal Coming Soon & Maintenance Mode Coming Soon Page plugin activated
- Fix: SSL verification disabled during install plugins/themes from the panel.
- Fix: PHP Notice: Trying to get property 'old_version' of non-object in /home/public_html/wp-content/plugins/iwp-client/installer.class.php on line 250
Download this release
Release Info
Developer | infinitewp |
Plugin | InfiniteWP Client |
Version | 1.9.4.8.2 |
Comparing to | |
See all releases |
Code changes from version 1.9.4.6 to 1.9.4.8.2
- backup.class.multicall.php +19 -4
- backup.class.singlecall.php +3 -2
- core.class.php +43 -5
- init.php +33 -31
- installer.class.php +2 -1
- readme.txt +18 -3
backup.class.multicall.php
CHANGED
@@ -6722,9 +6722,10 @@ function ftp_backup($historyID,$args = '')
|
|
6722 |
$result = true;
|
6723 |
|
6724 |
$IWP_FILE_LIST_TABLE_VERSION = iwp_mmb_get_site_option('iwp_file_list_table_version');
|
6725 |
-
|
|
|
6726 |
//write in db and refresh for_every_count, all_files_detail;
|
6727 |
-
if($
|
6728 |
$result = $wpdb->query('TRUNCATE TABLE ' . $this_table_name );
|
6729 |
$error_msg = 'Unable to empty File list table : <span style="font-weight:700;">' . $wpdb->last_error.'</span>' ;
|
6730 |
if(version_compare($IWP_FILE_LIST_TABLE_VERSION, '1.1') == -1){
|
@@ -6780,7 +6781,9 @@ function ftp_backup($historyID,$args = '')
|
|
6780 |
if($wpdb->last_error !== '') {
|
6781 |
$iwp_db_upgrade_error = $wpdb->last_error;
|
6782 |
}
|
6783 |
-
|
|
|
|
|
6784 |
$table_created = true;
|
6785 |
update_option( "iwp_file_list_table_version", '1.1');
|
6786 |
}
|
@@ -6994,7 +6997,9 @@ function ftp_backup($historyID,$args = '')
|
|
6994 |
}
|
6995 |
$table_name = $wpdb->base_prefix . "iwp_file_list";
|
6996 |
|
6997 |
-
|
|
|
|
|
6998 |
if (!empty($charset_collate)){
|
6999 |
$cachecollation = str_ireplace('DEFAULT ', '', $charset_collate);
|
7000 |
}
|
@@ -7069,6 +7074,16 @@ if( !function_exists('upgradeOldDropBoxBackupList')){
|
|
7069 |
}
|
7070 |
}
|
7071 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7072 |
/*if( function_exists('add_filter') ){
|
7073 |
add_filter( 'iwp_website_add', 'IWP_MMB_Backup::readd_tasks' );
|
7074 |
}*/
|
6722 |
$result = true;
|
6723 |
|
6724 |
$IWP_FILE_LIST_TABLE_VERSION = iwp_mmb_get_site_option('iwp_file_list_table_version');
|
6725 |
+
$this_table_name_from_db = $wpdb->get_var("SHOW TABLES LIKE '$this_table_name'");
|
6726 |
+
$this_table_name = check_iwp_file_list_table($this_table_name_from_db,$this_table_name);
|
6727 |
//write in db and refresh for_every_count, all_files_detail;
|
6728 |
+
if($this_table_name_from_db == $this_table_name) {
|
6729 |
$result = $wpdb->query('TRUNCATE TABLE ' . $this_table_name );
|
6730 |
$error_msg = 'Unable to empty File list table : <span style="font-weight:700;">' . $wpdb->last_error.'</span>' ;
|
6731 |
if(version_compare($IWP_FILE_LIST_TABLE_VERSION, '1.1') == -1){
|
6781 |
if($wpdb->last_error !== '') {
|
6782 |
$iwp_db_upgrade_error = $wpdb->last_error;
|
6783 |
}
|
6784 |
+
$this_table_name_from_db = $wpdb->get_var("SHOW TABLES LIKE '$table_name'");
|
6785 |
+
$table_name = check_iwp_file_list_table($this_table_name_from_db,$table_name);
|
6786 |
+
if($this_table_name_from_db == $table_name){
|
6787 |
$table_created = true;
|
6788 |
update_option( "iwp_file_list_table_version", '1.1');
|
6789 |
}
|
6997 |
}
|
6998 |
$table_name = $wpdb->base_prefix . "iwp_file_list";
|
6999 |
|
7000 |
+
$this_table_name_from_db = $wpdb->get_var("SHOW TABLES LIKE '$table_name'");
|
7001 |
+
$table_name = check_iwp_file_list_table($this_table_name_from_db,$table_name);
|
7002 |
+
if($this_table_name_from_db == $table_name) {
|
7003 |
if (!empty($charset_collate)){
|
7004 |
$cachecollation = str_ireplace('DEFAULT ', '', $charset_collate);
|
7005 |
}
|
7074 |
}
|
7075 |
}
|
7076 |
}
|
7077 |
+
|
7078 |
+
function check_iwp_file_list_table($this_table_name_from_db,$this_table_name_from_config){
|
7079 |
+
if(!empty($this_table_name_from_db)){
|
7080 |
+
$table_name = $this_table_name_from_db == $this_table_name_from_config ? $this_table_name_from_config : ($this_table_name_from_db == strtolower($this_table_name_from_config) ? strtolower($this_table_name_from_config) : strtoupper($this_table_name_from_config));
|
7081 |
+
return $table_name;
|
7082 |
+
}else{
|
7083 |
+
return $this_table_name_from_config;
|
7084 |
+
// the first time $this_table_name_from_db is NULL so we are try to create a table based on config file prefix
|
7085 |
+
}
|
7086 |
+
}
|
7087 |
/*if( function_exists('add_filter') ){
|
7088 |
add_filter( 'iwp_website_add', 'IWP_MMB_Backup::readd_tasks' );
|
7089 |
}*/
|
backup.class.singlecall.php
CHANGED
@@ -1210,8 +1210,9 @@ function delete_task_now($task_name){
|
|
1210 |
$insert_sql .= "'', ";
|
1211 |
}
|
1212 |
else {
|
1213 |
-
|
1214 |
-
$
|
|
|
1215 |
}
|
1216 |
//mb_convert_encoding(esc_sql($final[$i] ), "HTML-ENTITIES", "ISO-8859-1")
|
1217 |
}
|
1210 |
$insert_sql .= "'', ";
|
1211 |
}
|
1212 |
else {
|
1213 |
+
$value = addslashes($final[$i]);
|
1214 |
+
$value = preg_replace("/\n/Ui", "\\n", $value);
|
1215 |
+
$insert_sql .= "'" .$value. "', ";
|
1216 |
}
|
1217 |
//mb_convert_encoding(esc_sql($final[$i] ), "HTML-ENTITIES", "ISO-8859-1")
|
1218 |
}
|
core.class.php
CHANGED
@@ -141,7 +141,6 @@ class IWP_MMB_Core extends IWP_MMB_Helper
|
|
141 |
'delete_links' => 'iwp_mmb_delete_links',
|
142 |
|
143 |
'create_post' => 'iwp_mmb_post_create',
|
144 |
-
'change_post_status' => 'iwp_mmb_change_post_status',
|
145 |
'get_posts' => 'iwp_mmb_get_posts',
|
146 |
'delete_post' => 'iwp_mmb_delete_post',
|
147 |
'delete_posts' => 'iwp_mmb_delete_posts',
|
@@ -150,7 +149,7 @@ class IWP_MMB_Core extends IWP_MMB_Helper
|
|
150 |
'delete_page' => 'iwp_mmb_delete_page',
|
151 |
|
152 |
'install_addon' => 'iwp_mmb_install_addon',
|
153 |
-
|
154 |
'add_user' => 'iwp_mmb_add_user',
|
155 |
'email_backup' => 'iwp_mmb_email_backup',
|
156 |
'check_backup_compat' => 'iwp_mmb_check_backup_compat',
|
@@ -285,7 +284,11 @@ class IWP_MMB_Core extends IWP_MMB_Helper
|
|
285 |
$data = call_user_func( $_callback, $params );
|
286 |
}
|
287 |
$iwp_mmb_filters[$_name] = isset($iwp_mmb_filters[$_name]) && !empty($iwp_mmb_filters[$_name]) ? array_merge($iwp_mmb_filters[$_name], $data) : $data;
|
288 |
-
add_filter( $_name,
|
|
|
|
|
|
|
|
|
289 |
}
|
290 |
}
|
291 |
|
@@ -297,11 +300,32 @@ class IWP_MMB_Core extends IWP_MMB_Helper
|
|
297 |
call_user_func($this->action_call, $params);
|
298 |
}
|
299 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
300 |
|
301 |
function register_action_params( $action = false, $params = array() ){
|
302 |
if ($action == 'get_stats' || $action == 'do_upgrade') {
|
303 |
add_action('wp_loaded', array( &$this, 'iwp_mmb_remote_action'), 2147483650);
|
304 |
add_action('wp_loaded', array( &$this, 'admin_wp_loaded_iwp'), 2147483649);
|
|
|
|
|
|
|
305 |
}elseif ($action == 'install_addon') {
|
306 |
add_action('wp_loaded', array( &$this, 'iwp_mmb_remote_action'));
|
307 |
}elseif ($action == 'new_run_task' || $action == 'new_scheduled_backup') {
|
@@ -366,17 +390,19 @@ class IWP_MMB_Core extends IWP_MMB_Helper
|
|
366 |
}
|
367 |
|
368 |
$notice_display_URL = rtrim($notice_display_URL, '/').'/';
|
|
|
369 |
|
370 |
|
371 |
echo '<div class="updated" style="text-align: center; display:block !important; "><p style="color: green; font-size: 14px; font-weight: bold;">Add this site to IWP Admin panel</p><p>
|
372 |
<table border="0" align="center" cellpadding="5">';
|
373 |
if(!empty($iwp_client_activate_key)){
|
374 |
echo '<tr><td align="right">WP-ADMIN URL:</td><td align="left"><strong>'.$notice_display_URL.'</strong></td></tr>
|
|
|
375 |
<tr><td align="right">ADMIN USERNAME:</td><td align="left"><strong>'.$username.'</strong> (or any admin id)</td></tr>
|
376 |
<tr><td align="right">ACTIVATION KEY:</td><td align="left"><strong>'.$iwp_client_activate_key.'</strong></td></tr>
|
377 |
<tr class="only_flash"><td></td><td align="left" style="position:relative;">
|
378 |
-
<tr id="copy_at_once"><td align="right">To quick add, copy this</td><td align="left" style="position:relative;"><input type="text" style="width:295px;" class="read_creds" readonly value="'.$notice_display_URL.'|^|'.$username.'|^|'.$iwp_client_activate_key.'" /></td></tr>
|
379 |
-
<tr class="only_flash"><td></td><td align="left" style="position:relative;"><div id="copy_details" data-clipboard-text="'.$notice_display_URL.'|^|'.$username.'|^|'.$iwp_client_activate_key.'" style="background:#008000;display: inline-block;padding: 4px 10px;border-radius: 5px;color:#fff;font-weight:600;cursor:pointer;">Copy details</div><span class="copy_message" style="display:none;margin-left:10px;color:#008000;">Copied :)</span></td></tr>
|
380 |
|
381 |
<script type="text/javascript">
|
382 |
(function(){
|
@@ -1461,10 +1487,22 @@ EOF;
|
|
1461 |
$result['dbUser'] = DB_USER;
|
1462 |
$result['dbPassword'] = DB_PASSWORD;
|
1463 |
$result['db_table_prefix'] = $wpdb->base_prefix;
|
|
|
|
|
1464 |
}
|
1465 |
|
1466 |
return $result;
|
1467 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1468 |
|
1469 |
}
|
1470 |
?>
|
141 |
'delete_links' => 'iwp_mmb_delete_links',
|
142 |
|
143 |
'create_post' => 'iwp_mmb_post_create',
|
|
|
144 |
'get_posts' => 'iwp_mmb_get_posts',
|
145 |
'delete_post' => 'iwp_mmb_delete_post',
|
146 |
'delete_posts' => 'iwp_mmb_delete_posts',
|
149 |
'delete_page' => 'iwp_mmb_delete_page',
|
150 |
|
151 |
'install_addon' => 'iwp_mmb_install_addon',
|
152 |
+
|
153 |
'add_user' => 'iwp_mmb_add_user',
|
154 |
'email_backup' => 'iwp_mmb_email_backup',
|
155 |
'check_backup_compat' => 'iwp_mmb_check_backup_compat',
|
284 |
$data = call_user_func( $_callback, $params );
|
285 |
}
|
286 |
$iwp_mmb_filters[$_name] = isset($iwp_mmb_filters[$_name]) && !empty($iwp_mmb_filters[$_name]) ? array_merge($iwp_mmb_filters[$_name], $data) : $data;
|
287 |
+
add_filter( $_name, function($a) use ($_name){
|
288 |
+
global $iwp_mmb_filters;
|
289 |
+
return array_merge($a,$iwp_mmb_filters[$_name]);
|
290 |
+
});
|
291 |
+
// $_name closure variable, $a is an arg
|
292 |
}
|
293 |
}
|
294 |
|
300 |
call_user_func($this->action_call, $params);
|
301 |
}
|
302 |
}
|
303 |
+
|
304 |
+
function iwp_mmb_manual_wp_upgrade(){
|
305 |
+
/* in case database upgrade required, do database backup and perform upgrade ( wordpress wp_upgrade() function ) */
|
306 |
+
global $wp_db_version, $wpmu_version;
|
307 |
+
if( strlen(trim($wp_db_version)) && !defined('ACX_PLUGIN_DIR') ){
|
308 |
+
if ( get_option('db_version') != $wp_db_version ) {
|
309 |
+
/* in multisite network, please update database manualy */
|
310 |
+
if (empty($wpmu_version) || (function_exists('is_multisite') && !is_multisite())){
|
311 |
+
if( ! function_exists('wp_upgrade'))
|
312 |
+
include_once(ABSPATH.'wp-admin/includes/upgrade.php');
|
313 |
+
ob_clean();
|
314 |
+
@wp_upgrade();
|
315 |
+
@do_action('after_db_upgrade');
|
316 |
+
ob_end_clean();
|
317 |
+
}
|
318 |
+
}
|
319 |
+
}
|
320 |
+
}
|
321 |
|
322 |
function register_action_params( $action = false, $params = array() ){
|
323 |
if ($action == 'get_stats' || $action == 'do_upgrade') {
|
324 |
add_action('wp_loaded', array( &$this, 'iwp_mmb_remote_action'), 2147483650);
|
325 |
add_action('wp_loaded', array( &$this, 'admin_wp_loaded_iwp'), 2147483649);
|
326 |
+
if($action == 'get_stats' && !isset( $_GET['step'])){
|
327 |
+
add_action('wp_loaded', array( &$this, 'iwp_mmb_manual_wp_upgrade'),2147483648);
|
328 |
+
}
|
329 |
}elseif ($action == 'install_addon') {
|
330 |
add_action('wp_loaded', array( &$this, 'iwp_mmb_remote_action'));
|
331 |
}elseif ($action == 'new_run_task' || $action == 'new_scheduled_backup') {
|
390 |
}
|
391 |
|
392 |
$notice_display_URL = rtrim($notice_display_URL, '/').'/';
|
393 |
+
$website_URL = rtrim(get_option('home'), '/').'/';
|
394 |
|
395 |
|
396 |
echo '<div class="updated" style="text-align: center; display:block !important; "><p style="color: green; font-size: 14px; font-weight: bold;">Add this site to IWP Admin panel</p><p>
|
397 |
<table border="0" align="center" cellpadding="5">';
|
398 |
if(!empty($iwp_client_activate_key)){
|
399 |
echo '<tr><td align="right">WP-ADMIN URL:</td><td align="left"><strong>'.$notice_display_URL.'</strong></td></tr>
|
400 |
+
<tr><td align="right">WEBSITE URL:</td><td align="left"><strong>'.$website_URL.'</strong></td></tr>
|
401 |
<tr><td align="right">ADMIN USERNAME:</td><td align="left"><strong>'.$username.'</strong> (or any admin id)</td></tr>
|
402 |
<tr><td align="right">ACTIVATION KEY:</td><td align="left"><strong>'.$iwp_client_activate_key.'</strong></td></tr>
|
403 |
<tr class="only_flash"><td></td><td align="left" style="position:relative;">
|
404 |
+
<tr id="copy_at_once"><td align="right">To quick add, copy this</td><td align="left" style="position:relative;"><input type="text" style="width:295px;" class="read_creds" readonly value="'.$notice_display_URL.'|^|'.$username.'|^|'.$iwp_client_activate_key.'|^|'.$website_URL.'" /></td></tr>
|
405 |
+
<tr class="only_flash"><td></td><td align="left" style="position:relative;"><div id="copy_details" data-clipboard-text="'.$notice_display_URL.'|^|'.$username.'|^|'.$iwp_client_activate_key.'|^|'.$website_URL.'" style="background:#008000;display: inline-block;padding: 4px 10px;border-radius: 5px;color:#fff;font-weight:600;cursor:pointer;">Copy details</div><span class="copy_message" style="display:none;margin-left:10px;color:#008000;">Copied :)</span></td></tr>
|
406 |
|
407 |
<script type="text/javascript">
|
408 |
(function(){
|
1487 |
$result['dbUser'] = DB_USER;
|
1488 |
$result['dbPassword'] = DB_PASSWORD;
|
1489 |
$result['db_table_prefix'] = $wpdb->base_prefix;
|
1490 |
+
$result['site_url'] = site_url();
|
1491 |
+
$result['home_url'] = home_url();
|
1492 |
}
|
1493 |
|
1494 |
return $result;
|
1495 |
}
|
1496 |
+
|
1497 |
+
function flush_redis_cache(){
|
1498 |
+
@include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
|
1499 |
+
if ( is_plugin_active( 'redis-cache/redis-cache.php' ) ) {
|
1500 |
+
@include_once(WP_PLUGIN_DIR . '/redis-cache/redis-cache.php');
|
1501 |
+
if(method_exists( $GLOBALS[ 'wp_object_cache' ], 'redis_status' )) {
|
1502 |
+
wp_cache_flush();
|
1503 |
+
}
|
1504 |
+
}
|
1505 |
+
}
|
1506 |
|
1507 |
}
|
1508 |
?>
|
init.php
CHANGED
@@ -4,7 +4,7 @@ Plugin Name: InfiniteWP - Client
|
|
4 |
Plugin URI: http://infinitewp.com/
|
5 |
Description: This is the client plugin of InfiniteWP that communicates with the InfiniteWP Admin panel.
|
6 |
Author: Revmakx
|
7 |
-
Version: 1.9.4.
|
8 |
Author URI: http://www.revmakx.com
|
9 |
Network: true
|
10 |
*/
|
@@ -29,7 +29,7 @@ if(basename($_SERVER['SCRIPT_FILENAME']) == "init.php"):
|
|
29 |
exit;
|
30 |
endif;
|
31 |
if(!defined('IWP_MMB_CLIENT_VERSION'))
|
32 |
-
define('IWP_MMB_CLIENT_VERSION', '1.9.4.
|
33 |
|
34 |
|
35 |
|
@@ -109,26 +109,26 @@ if( !function_exists ( 'iwp_mmb_filter_params' )) {
|
|
109 |
if( !function_exists ('iwp_mmb_parse_request')) {
|
110 |
function iwp_mmb_parse_request()
|
111 |
{
|
112 |
-
global $
|
113 |
-
$
|
114 |
-
$
|
115 |
-
if(empty($
|
116 |
-
if (isset($
|
117 |
-
$
|
118 |
}
|
119 |
}
|
120 |
|
121 |
|
122 |
|
123 |
global $current_user, $iwp_mmb_core, $new_actions, $wp_db_version, $wpmu_version, $_wp_using_ext_object_cache;
|
124 |
-
if (strrpos($
|
125 |
-
$request_data_array = explode('_IWP_JSON_PREFIX_', $
|
126 |
$request_raw_data = $request_data_array[1];
|
127 |
$data = trim(base64_decode($request_raw_data));
|
128 |
$GLOBALS['IWP_JSON_COMMUNICATION'] = 1;
|
129 |
}else{
|
130 |
$data = false;
|
131 |
-
$request_raw_data = $
|
132 |
$serialized_data = trim(base64_decode($request_raw_data));
|
133 |
if (is_serialized($serialized_data)) {
|
134 |
iwp_mmb_response(array('error' => 'Please update your IWP Admin Panel to latest version', 'error_code' => 'update_panel'), false, true);
|
@@ -207,10 +207,6 @@ if( !function_exists ('iwp_mmb_parse_request')) {
|
|
207 |
} else {
|
208 |
iwp_mmb_response($auth, false);
|
209 |
}
|
210 |
-
} else {
|
211 |
-
//IWP_MMB_Stats::set_hit_count();
|
212 |
-
// $GLOBALS['HTTP_RAW_POST_DATA'] = $HTTP_RAW_POST_DATA_LOCAL;
|
213 |
-
$HTTP_RAW_POST_DATA = $HTTP_RAW_POST_DATA_LOCAL;
|
214 |
}
|
215 |
|
216 |
}
|
@@ -278,21 +274,6 @@ if (!function_exists ('iwp_mmb_set_request')) {
|
|
278 |
if ($action == 'get_cookie') {
|
279 |
iwp_mmb_response(true, true);
|
280 |
}
|
281 |
-
/* in case database upgrade required, do database backup and perform upgrade ( wordpress wp_upgrade() function ) */
|
282 |
-
if( strlen(trim($wp_db_version)) && !defined('ACX_PLUGIN_DIR') ){
|
283 |
-
if ( get_option('db_version') != $wp_db_version ) {
|
284 |
-
/* in multisite network, please update database manualy */
|
285 |
-
if (empty($wpmu_version) || (function_exists('is_multisite') && !is_multisite())){
|
286 |
-
if( ! function_exists('wp_upgrade'))
|
287 |
-
include_once(ABSPATH.'wp-admin/includes/upgrade.php');
|
288 |
-
|
289 |
-
ob_clean();
|
290 |
-
@wp_upgrade();
|
291 |
-
@do_action('after_db_upgrade');
|
292 |
-
ob_end_clean();
|
293 |
-
}
|
294 |
-
}
|
295 |
-
}
|
296 |
|
297 |
if(isset($params['secure'])){
|
298 |
if (isset($GLOBALS['IWP_JSON_COMMUNICATION']) && $GLOBALS['IWP_JSON_COMMUNICATION']) {
|
@@ -787,6 +768,9 @@ if( !function_exists ( 'iwp_get_additional_stats' )) {
|
|
787 |
if( !function_exists ( 'iwp_mmb_new_scheduled_backup' )) {
|
788 |
function iwp_mmb_new_scheduled_backup($params)
|
789 |
{
|
|
|
|
|
|
|
790 |
require_once($GLOBALS['iwp_mmb_plugin_dir']."/backup/backup-repo-test.php");
|
791 |
global $iwp_backup_core;
|
792 |
|
@@ -928,6 +912,9 @@ if( !function_exists ( 'iwp_get_db_details' )) {
|
|
928 |
if( !function_exists ( 'iwp_mmb_new_run_task_now' )) {
|
929 |
function iwp_mmb_new_run_task_now($params)
|
930 |
{
|
|
|
|
|
|
|
931 |
require_once($GLOBALS['iwp_mmb_plugin_dir']."/backup/backup-repo-test.php");
|
932 |
global $iwp_backup_core;
|
933 |
|
@@ -2099,6 +2086,19 @@ if( !function_exists('iwp_mmb_plugin_actions') ){
|
|
2099 |
}
|
2100 |
}
|
2101 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2102 |
}
|
2103 |
|
2104 |
if( !function_exists ( 'iwp_mmb_execute_php_code' )) {
|
@@ -3272,12 +3272,14 @@ if (function_exists('register_activation_hook'))
|
|
3272 |
|
3273 |
if (function_exists('register_deactivation_hook'))
|
3274 |
register_deactivation_hook(__FILE__, array( $iwp_mmb_core, 'uninstall' ));
|
|
|
|
|
3275 |
|
3276 |
if (function_exists('add_action'))
|
3277 |
add_action('init', 'iwp_mmb_plugin_actions', 99999);
|
3278 |
|
3279 |
if (function_exists('add_action'))
|
3280 |
-
add_action('template_redirect', 'iwp_mmb_check_maintenance',
|
3281 |
|
3282 |
if (function_exists('add_action'))
|
3283 |
add_action('template_redirect', 'iwp_mmb_check_redirects', 99999);
|
4 |
Plugin URI: http://infinitewp.com/
|
5 |
Description: This is the client plugin of InfiniteWP that communicates with the InfiniteWP Admin panel.
|
6 |
Author: Revmakx
|
7 |
+
Version: 1.9.4.8.2
|
8 |
Author URI: http://www.revmakx.com
|
9 |
Network: true
|
10 |
*/
|
29 |
exit;
|
30 |
endif;
|
31 |
if(!defined('IWP_MMB_CLIENT_VERSION'))
|
32 |
+
define('IWP_MMB_CLIENT_VERSION', '1.9.4.8.2');
|
33 |
|
34 |
|
35 |
|
109 |
if( !function_exists ('iwp_mmb_parse_request')) {
|
110 |
function iwp_mmb_parse_request()
|
111 |
{
|
112 |
+
global $post_data, $iwp_mmb_activities_log;
|
113 |
+
$post_data_local = NULL;
|
114 |
+
$post_data_local = file_get_contents('php://input');
|
115 |
+
if(empty($post_data_local)){
|
116 |
+
if (isset($post_data)) {
|
117 |
+
$post_data_local = $post_data;
|
118 |
}
|
119 |
}
|
120 |
|
121 |
|
122 |
|
123 |
global $current_user, $iwp_mmb_core, $new_actions, $wp_db_version, $wpmu_version, $_wp_using_ext_object_cache;
|
124 |
+
if (strrpos($post_data_local, '_IWP_JSON_PREFIX_') !== false) {
|
125 |
+
$request_data_array = explode('_IWP_JSON_PREFIX_', $post_data_local);
|
126 |
$request_raw_data = $request_data_array[1];
|
127 |
$data = trim(base64_decode($request_raw_data));
|
128 |
$GLOBALS['IWP_JSON_COMMUNICATION'] = 1;
|
129 |
}else{
|
130 |
$data = false;
|
131 |
+
$request_raw_data = $post_data_local;
|
132 |
$serialized_data = trim(base64_decode($request_raw_data));
|
133 |
if (is_serialized($serialized_data)) {
|
134 |
iwp_mmb_response(array('error' => 'Please update your IWP Admin Panel to latest version', 'error_code' => 'update_panel'), false, true);
|
207 |
} else {
|
208 |
iwp_mmb_response($auth, false);
|
209 |
}
|
|
|
|
|
|
|
|
|
210 |
}
|
211 |
|
212 |
}
|
274 |
if ($action == 'get_cookie') {
|
275 |
iwp_mmb_response(true, true);
|
276 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
277 |
|
278 |
if(isset($params['secure'])){
|
279 |
if (isset($GLOBALS['IWP_JSON_COMMUNICATION']) && $GLOBALS['IWP_JSON_COMMUNICATION']) {
|
768 |
if( !function_exists ( 'iwp_mmb_new_scheduled_backup' )) {
|
769 |
function iwp_mmb_new_scheduled_backup($params)
|
770 |
{
|
771 |
+
global $iwp_mmb_core;
|
772 |
+
$iwp_mmb_core->flush_redis_cache();
|
773 |
+
|
774 |
require_once($GLOBALS['iwp_mmb_plugin_dir']."/backup/backup-repo-test.php");
|
775 |
global $iwp_backup_core;
|
776 |
|
912 |
if( !function_exists ( 'iwp_mmb_new_run_task_now' )) {
|
913 |
function iwp_mmb_new_run_task_now($params)
|
914 |
{
|
915 |
+
global $iwp_mmb_core;
|
916 |
+
$iwp_mmb_core->flush_redis_cache();
|
917 |
+
|
918 |
require_once($GLOBALS['iwp_mmb_plugin_dir']."/backup/backup-repo-test.php");
|
919 |
global $iwp_backup_core;
|
920 |
|
2086 |
}
|
2087 |
}
|
2088 |
}
|
2089 |
+
}
|
2090 |
+
|
2091 |
+
if(!function_exists('iwp_mmb_minimal_maintenance_plugin_fix')){
|
2092 |
+
function iwp_mmb_minimal_maintenance_plugin_fix(){
|
2093 |
+
if(get_option('iwp_mmb_maintenance_mode')){
|
2094 |
+
if ( ! function_exists( 'is_plugin_active' )) {
|
2095 |
+
@include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
|
2096 |
+
}
|
2097 |
+
if(is_plugin_active('minimal-coming-soon-maintenance-mode/minimal-coming-soon-maintenance-mode.php')){
|
2098 |
+
remove_action('init', 'csmm_plugin_init');
|
2099 |
+
}
|
2100 |
+
}
|
2101 |
+
}
|
2102 |
}
|
2103 |
|
2104 |
if( !function_exists ( 'iwp_mmb_execute_php_code' )) {
|
3272 |
|
3273 |
if (function_exists('register_deactivation_hook'))
|
3274 |
register_deactivation_hook(__FILE__, array( $iwp_mmb_core, 'uninstall' ));
|
3275 |
+
if (function_exists('add_action'))
|
3276 |
+
add_action('plugins_loaded', 'iwp_mmb_minimal_maintenance_plugin_fix');
|
3277 |
|
3278 |
if (function_exists('add_action'))
|
3279 |
add_action('init', 'iwp_mmb_plugin_actions', 99999);
|
3280 |
|
3281 |
if (function_exists('add_action'))
|
3282 |
+
add_action('template_redirect', 'iwp_mmb_check_maintenance',99999);
|
3283 |
|
3284 |
if (function_exists('add_action'))
|
3285 |
add_action('template_redirect', 'iwp_mmb_check_redirects', 99999);
|
installer.class.php
CHANGED
@@ -93,6 +93,7 @@ class IWP_MMB_Installer extends IWP_MMB_Core
|
|
93 |
// $password = parse_url($url, PHP_URL_PASS);
|
94 |
// $r['headers'] = array('Authorization'=>'Basic'. base64_encode( $username . ':' . $password ) );
|
95 |
$r['reject_unsafe_urls'] = false;
|
|
|
96 |
return $r;
|
97 |
}
|
98 |
|
@@ -283,7 +284,7 @@ class IWP_MMB_Installer extends IWP_MMB_Core
|
|
283 |
$plugin_name = $plugin['name'];
|
284 |
if (isset($file_path)) {
|
285 |
$plugin_details[] = $plugin;
|
286 |
-
$plugin_files[$file_path] = $plugin
|
287 |
} else {
|
288 |
$premium_plugin_details[] = $plugin;
|
289 |
$premium_upgrades[md5($plugin_name)] = $plugin;
|
93 |
// $password = parse_url($url, PHP_URL_PASS);
|
94 |
// $r['headers'] = array('Authorization'=>'Basic'. base64_encode( $username . ':' . $password ) );
|
95 |
$r['reject_unsafe_urls'] = false;
|
96 |
+
$r['sslverify'] = false;
|
97 |
return $r;
|
98 |
}
|
99 |
|
284 |
$plugin_name = $plugin['name'];
|
285 |
if (isset($file_path)) {
|
286 |
$plugin_details[] = $plugin;
|
287 |
+
$plugin_files[$file_path] = $plugin['old_version'];
|
288 |
} else {
|
289 |
$premium_plugin_details[] = $plugin;
|
290 |
$premium_upgrades[md5($plugin_name)] = $plugin;
|
readme.txt
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
Contributors: infinitewp
|
3 |
Tags: admin, administration, amazon, api, authentication, automatic, dashboard, dropbox, events, integration, manage, multisite, multiple, notification, performance, s3, security, seo, stats, tracking, infinitewp, updates, backup, restore, iwp, infinite
|
4 |
Requires at least: 3.1
|
5 |
-
Tested up to: 5.
|
6 |
Stable tag: trunk
|
7 |
|
8 |
Install this plugin on unlimited sites and manage them all from a central dashboard.
|
@@ -24,9 +24,9 @@ Main features:
|
|
24 |
|
25 |
Visit us at [InfiniteWP.com](https://infinitewp.com/ "Manage Multiple WordPress").
|
26 |
|
27 |
-
Check out the [InfiniteWP Overview Video](https://www.youtube.com/watch?v=
|
28 |
|
29 |
-
https://www.youtube.com/watch?v=
|
30 |
|
31 |
Credits: [Vladimir Prelovac](http://prelovac.com/vladimir) for his worker plugin on which the client plugin is being developed.
|
32 |
|
@@ -47,6 +47,21 @@ Credits: [Vladimir Prelovac](http://prelovac.com/vladimir) for his worker plugin
|
|
47 |
5. One-click updates
|
48 |
|
49 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
50 |
= 1.9.4.6 - Apr 24th 2020 =
|
51 |
* Improvement: WPMerge Temp folder Excluded on all backup methods (single call, multicall, Phoenix).
|
52 |
* Improvement: Improved Error messages for failed plugins, themes, translation updates in the process queue, and activity log.
|
2 |
Contributors: infinitewp
|
3 |
Tags: admin, administration, amazon, api, authentication, automatic, dashboard, dropbox, events, integration, manage, multisite, multiple, notification, performance, s3, security, seo, stats, tracking, infinitewp, updates, backup, restore, iwp, infinite
|
4 |
Requires at least: 3.1
|
5 |
+
Tested up to: 5.6
|
6 |
Stable tag: trunk
|
7 |
|
8 |
Install this plugin on unlimited sites and manage them all from a central dashboard.
|
24 |
|
25 |
Visit us at [InfiniteWP.com](https://infinitewp.com/ "Manage Multiple WordPress").
|
26 |
|
27 |
+
Check out the [InfiniteWP Overview Video](https://www.youtube.com/watch?v=s35ZoW95cnU) below.
|
28 |
|
29 |
+
https://www.youtube.com/watch?v=s35ZoW95cnU
|
30 |
|
31 |
Credits: [Vladimir Prelovac](http://prelovac.com/vladimir) for his worker plugin on which the client plugin is being developed.
|
32 |
|
47 |
5. One-click updates
|
48 |
|
49 |
== Changelog ==
|
50 |
+
|
51 |
+
= 1.9.4.8.2 - Dec 2nd 2020 =
|
52 |
+
* Improvement: Improved support for the recent WordPress DB update
|
53 |
+
* Fix: Percentage ( % ) converted to random string after Restore the single call backup in certain databases
|
54 |
+
* Fix: IWP maintancemode not working if Minimal Coming Soon & Maintenance Mode – Coming Soon Page plugin activated
|
55 |
+
* Fix: SSL verification disabled during install plugins/themes from the panel.
|
56 |
+
* Fix: PHP Notice: Trying to get property 'old_version' of non-object in /home/public_html/wp-content/plugins/iwp-client/installer.class.php on line 250
|
57 |
+
|
58 |
+
= 1.9.4.7 - Aug 10th 2020 =
|
59 |
+
* Improvement: Multicall backup iwp_file_list table prefix validation improved.
|
60 |
+
* Improvement: Improved compatibility for PHP 7.4 or above.
|
61 |
+
* Improvement: Clone,Staging and restore DB details call improved.
|
62 |
+
* Improvement: Website URL added in the Activation key section after activating the IWP client plugin.
|
63 |
+
* Improvement: Redis cache will be cleared while running the Phoenix backup.
|
64 |
+
|
65 |
= 1.9.4.6 - Apr 24th 2020 =
|
66 |
* Improvement: WPMerge Temp folder Excluded on all backup methods (single call, multicall, Phoenix).
|
67 |
* Improvement: Improved Error messages for failed plugins, themes, translation updates in the process queue, and activity log.
|