iThemes Sync - Version 2.1.9

Version Description

  • Enhancement: PHP 8 compatibility
Download this release

Release Info

Developer oakesjosh
Plugin Icon 128x128 iThemes Sync
Version 2.1.9
Comparing to
See all releases

Code changes from version 2.1.8 to 2.1.9

functions.php CHANGED
@@ -550,9 +550,7 @@ class Ithemes_Sync_Functions {
550
 
551
  $details = self::get_function_results( $functions, $details );
552
 
553
- if ( ! isset( $GLOBALS['wpdb'] ) || ( empty( $GLOBALS['wpdb']->use_mysqli ) && self::is_callable_function( 'mysql_get_server_info' ) ) ) {
554
- $details['mysql_get_server_info'] = @mysql_get_server_info();
555
- } else if ( isset( $GLOBALS['wpdb']->dbh ) && self::is_callable_function( 'mysqli_get_server_info' ) ) {
556
  $details['mysqli_get_server_info'] = @mysqli_get_server_info( $GLOBALS['wpdb']->dbh );
557
  }
558
 
@@ -571,9 +569,7 @@ class Ithemes_Sync_Functions {
571
 
572
  $details = self::get_function_results( $functions, $details );
573
 
574
- if ( ! isset( $GLOBALS['wpdb'] ) || ( empty( $GLOBALS['wpdb']->use_mysqli ) && self::is_callable_function( 'mysql_get_host_info' ) ) ) {
575
- $details['mysql_get_host_info'] = @mysql_get_host_info();
576
- } else if ( isset( $GLOBALS['wpdb']->dbh ) && self::is_callable_function( 'mysqli_get_host_info' ) ) {
577
  $details['mysqli_get_host_info'] = @mysqli_get_host_info( $GLOBALS['wpdb']->dbh );
578
  }
579
 
@@ -709,7 +705,7 @@ class Ithemes_Sync_Functions {
709
  }
710
 
711
  if ( self::is_callable_function( $function ) ) {
712
- $data[$var] = call_user_func_array( $function, $args );
713
  } else if ( defined( $function ) && empty( $args ) ) {
714
  $data[$var] = constant( $function );
715
  }
550
 
551
  $details = self::get_function_results( $functions, $details );
552
 
553
+ if ( isset( $GLOBALS['wpdb']->dbh ) && self::is_callable_function( 'mysqli_get_server_info' ) ) {
 
 
554
  $details['mysqli_get_server_info'] = @mysqli_get_server_info( $GLOBALS['wpdb']->dbh );
555
  }
556
 
569
 
570
  $details = self::get_function_results( $functions, $details );
571
 
572
+ if ( isset( $GLOBALS['wpdb']->dbh ) && self::is_callable_function( 'mysqli_get_host_info' ) ) {
 
 
573
  $details['mysqli_get_host_info'] = @mysqli_get_host_info( $GLOBALS['wpdb']->dbh );
574
  }
575
 
705
  }
706
 
707
  if ( self::is_callable_function( $function ) ) {
708
+ $data[$var] = call_user_func_array( $function, array_values( $args ) );
709
  } else if ( defined( $function ) && empty( $args ) ) {
710
  $data[$var] = constant( $function );
711
  }
history.txt CHANGED
@@ -240,4 +240,6 @@
240
  Enhancement: Added support for auto-updates in wordpress 5.5
241
  Enhancement: Return environment type for display in Sync dashboard
242
  2.1.8 - 2020-12-02 - Josh Oakes
243
- Bug Fix: Improved support for plugins using their own updater
 
 
240
  Enhancement: Added support for auto-updates in wordpress 5.5
241
  Enhancement: Return environment type for display in Sync dashboard
242
  2.1.8 - 2020-12-02 - Josh Oakes
243
+ Bug Fix: Improved support for plugins using their own updater
244
+ 2.1.9 - 2021-08-17 - Josh Oakes
245
+ Enhancement: PHP 8 compatibility
init.php CHANGED
@@ -4,7 +4,7 @@ Plugin Name: iThemes Sync
4
  Plugin URI: http://ithemes.com/sync
5
  Description: Manage updates to your WordPress sites easily in one place.
6
  Author: iThemes
7
- Version: 2.1.8
8
  Author URI: http://ithemes.com/
9
  Domain Path: /lang/
10
  iThemes Package: ithemes-sync
4
  Plugin URI: http://ithemes.com/sync
5
  Description: Manage updates to your WordPress sites easily in one place.
6
  Author: iThemes
7
+ Version: 2.1.9
8
  Author URI: http://ithemes.com/
9
  Domain Path: /lang/
10
  iThemes Package: ithemes-sync
lang/ithemes-sync.pot CHANGED
@@ -1,11 +1,11 @@
1
- # Copyright (C) 2020 iThemes Sync
2
  # This file is distributed under the same license as the iThemes Sync package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: iThemes Sync 2.1.8\n"
6
  "Report-Msgid-Bugs-To: http://ithemes.com/support/\n"
7
- "POT-Creation-Date: 2020-12-02 20:22:21+00:00\n"
8
- "PO-Revision-Date: 2020-MO-DA HO:MI+ZONE\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
1
+ # Copyright (C) 2021 iThemes Sync
2
  # This file is distributed under the same license as the iThemes Sync package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: iThemes Sync 2.1.9\n"
6
  "Report-Msgid-Bugs-To: http://ithemes.com/support/\n"
7
+ "POT-Creation-Date: 2021-08-17 18:11:56+00:00\n"
8
+ "PO-Revision-Date: 2021-MO-DA HO:MI+ZONE\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
readme.txt CHANGED
@@ -3,8 +3,8 @@ Contributors: ithemes, layotte, oakesjosh
3
  Tags: manage multiple Sites, backup, security, migrate, SEO, manage updates, administration, update manager, reports, sync, google analytics, optimize, uptime, ithemes, customize dashboard, client sites, maintenance, management, google webmaster tools, reporting
4
  Requires at least: 4.5
5
  Requires PHP: 5.6
6
- Tested up to: 5.5.3
7
- Stable tag: 2.1.8
8
  License: GPLv3 or later
9
  License URI: http://www.gnu.org/licenses/quick-guide-gplv3.html
10
 
@@ -87,6 +87,9 @@ Make steady, reliable income for WordPress maintenance with iThemes Sync Pro’s
87
 
88
  == Changelog ==
89
 
 
 
 
90
  = 2.1.8 =
91
  * Bug Fix: Improved support for plugins using their own updater
92
 
3
  Tags: manage multiple Sites, backup, security, migrate, SEO, manage updates, administration, update manager, reports, sync, google analytics, optimize, uptime, ithemes, customize dashboard, client sites, maintenance, management, google webmaster tools, reporting
4
  Requires at least: 4.5
5
  Requires PHP: 5.6
6
+ Tested up to: 5.9
7
+ Stable tag: 2.1.9
8
  License: GPLv3 or later
9
  License URI: http://www.gnu.org/licenses/quick-guide-gplv3.html
10
 
87
 
88
  == Changelog ==
89
 
90
+ = 2.1.9 =
91
+ * Enhancement: PHP 8 compatibility
92
+
93
  = 2.1.8 =
94
  * Bug Fix: Improved support for plugins using their own updater
95
 
verbs/db-optimization.php CHANGED
@@ -76,7 +76,7 @@ class Ithemes_Sync_Verb_DB_Optimization extends Ithemes_Sync_Verb {
76
  if ( empty( $this->arguments['args']['selected'] ) ) {
77
  return array('success' => 0);
78
  }
79
- foreach( (array) $this->arguments['args']['selected'] as $selected ) {
80
  $function = empty( $this->registered_optimizations[$selected] ) ? false : $this->registered_optimizations[$selected];
81
  if ( ! empty( $function ) && is_callable( array( $this, $function ) ) && false !== ( $result = $this->$function( 'run' ) ) ) {
82
  $optimized[$key] = $result;
@@ -104,7 +104,7 @@ class Ithemes_Sync_Verb_DB_Optimization extends Ithemes_Sync_Verb {
104
  case 'run' :
105
  $this->update_last_run_var( 'delete-trackback-urls' );
106
  if ( $result = $wpdb->get_col( "SELECT ID FROM $wpdb->posts WHERE pinged !='' OR to_ping != ''" ) ) {
107
- if ( $wpdb->query( "UPDATE $wpdb->posts SET pinged = '', to_ping = '' WHERE ID IN (" . implode( $result, ',' ) . ")" ) ) {
108
  return true;
109
  }
110
  }
@@ -317,7 +317,7 @@ class Ithemes_Sync_Verb_DB_Optimization extends Ithemes_Sync_Verb {
317
  case 'run' :
318
  $this->update_last_run_var( 'delete-orphaned-commentmeta' );
319
  if ( $result = $wpdb->get_col( "SELECT meta_id FROM $wpdb->commentmeta WHERE comment_id NOT IN (SELECT comment_ID FROM $wpdb->comments);" ) ) {
320
- if ( $wpdb->query( "DELETE FROM $wpdb->commentmeta WHERE meta_id IN (" . implode( $result, ',' ) . ")" ) ) {
321
  return true;
322
  }
323
  }
76
  if ( empty( $this->arguments['args']['selected'] ) ) {
77
  return array('success' => 0);
78
  }
79
+ foreach( (array) $this->arguments['args']['selected'] as $key => $selected ) {
80
  $function = empty( $this->registered_optimizations[$selected] ) ? false : $this->registered_optimizations[$selected];
81
  if ( ! empty( $function ) && is_callable( array( $this, $function ) ) && false !== ( $result = $this->$function( 'run' ) ) ) {
82
  $optimized[$key] = $result;
104
  case 'run' :
105
  $this->update_last_run_var( 'delete-trackback-urls' );
106
  if ( $result = $wpdb->get_col( "SELECT ID FROM $wpdb->posts WHERE pinged !='' OR to_ping != ''" ) ) {
107
+ if ( $wpdb->query( "UPDATE $wpdb->posts SET pinged = '', to_ping = '' WHERE ID IN (" . implode( ',', $result) . ")" ) ) {
108
  return true;
109
  }
110
  }
317
  case 'run' :
318
  $this->update_last_run_var( 'delete-orphaned-commentmeta' );
319
  if ( $result = $wpdb->get_col( "SELECT meta_id FROM $wpdb->commentmeta WHERE comment_id NOT IN (SELECT comment_ID FROM $wpdb->comments);" ) ) {
320
+ if ( $wpdb->query( "DELETE FROM $wpdb->commentmeta WHERE meta_id IN (" . implode(',', $result ) . ")" ) ) {
321
  return true;
322
  }
323
  }
verbs/manage-options.php CHANGED
@@ -65,7 +65,7 @@ class Ithemes_Sync_Verb_Manage_Options extends Ithemes_Sync_Verb {
65
 
66
  foreach ( $data as $id => $params ) {
67
  if ( ! is_array( $function ) ) {
68
- $response[$id] = call_user_func_array( $function, $params );
69
  continue;
70
  }
71
  }
65
 
66
  foreach ( $data as $id => $params ) {
67
  if ( ! is_array( $function ) ) {
68
+ $response[$id] = call_user_func_array( $function, array_values( $params ) );
69
  continue;
70
  }
71
  }
verbs/manage-roles.php CHANGED
@@ -62,7 +62,7 @@ class Ithemes_Sync_Verb_Manage_Roles extends Ithemes_Sync_Verb {
62
 
63
  foreach ( $data as $id => $params ) {
64
  if ( ! is_array( $function ) ) {
65
- $response[$id] = call_user_func_array( $function, $params );
66
  continue;
67
  }
68
 
@@ -87,10 +87,10 @@ class Ithemes_Sync_Verb_Manage_Roles extends Ithemes_Sync_Verb {
87
  }
88
 
89
  if ( ! is_array( $params[0] ) ) {
90
- $response[$id] = call_user_func_array( array( $role, $function ), $params );
91
  } else {
92
  foreach ( $params as $index => $param ) {
93
- $response[$id][$index] = call_user_func_array( array( $role, $function ), $param );
94
  }
95
  }
96
  }
62
 
63
  foreach ( $data as $id => $params ) {
64
  if ( ! is_array( $function ) ) {
65
+ $response[$id] = call_user_func_array( $function, array_values( $params ) );
66
  continue;
67
  }
68
 
87
  }
88
 
89
  if ( ! is_array( $params[0] ) ) {
90
+ $response[$id] = call_user_func_array( array( $role, $function ), array_values( $params ) );
91
  } else {
92
  foreach ( $params as $index => $param ) {
93
+ $response[$id][$index] = call_user_func_array( array( $role, $function ), array_values( $param ) );
94
  }
95
  }
96
  }
verbs/manage-users.php CHANGED
@@ -78,7 +78,7 @@ class Ithemes_Sync_Verb_Manage_Users extends Ithemes_Sync_Verb {
78
 
79
  foreach ( $data as $id => $params ) {
80
  if ( ! is_array( $function ) ) {
81
- $response[$id] = call_user_func_array( $function, $params );
82
  continue;
83
  }
84
 
@@ -103,10 +103,10 @@ class Ithemes_Sync_Verb_Manage_Users extends Ithemes_Sync_Verb {
103
  }
104
 
105
  if ( ! is_array( $params[0] ) ) {
106
- $response[$id] = call_user_func_array( array( $user, $function ), $params );
107
  } else {
108
  foreach ( $params as $index => $param ) {
109
- $response[$id][$index] = call_user_func_array( array( $user, $function ), $param );
110
  }
111
  }
112
 
78
 
79
  foreach ( $data as $id => $params ) {
80
  if ( ! is_array( $function ) ) {
81
+ $response[$id] = call_user_func_array( $function, array_values( $params ) );
82
  continue;
83
  }
84
 
103
  }
104
 
105
  if ( ! is_array( $params[0] ) ) {
106
+ $response[$id] = call_user_func_array( array( $user, $function ), array_values( $params ) );
107
  } else {
108
  foreach ( $params as $index => $param ) {
109
+ $response[$id][$index] = call_user_func_array( array( $user, $function ), array_values( $param ) );
110
  }
111
  }
112