Automatically fix coding standard violations using phpcbf

This commit is contained in:
Rodrigo Primo 2018-01-25 12:15:48 -02:00
parent e2d553fb61
commit a15ecc1601
3 changed files with 478 additions and 414 deletions

View File

@ -13,7 +13,7 @@ if ( ! class_exists( 'WC_REST_System_Status_Controller', false ) ) {
wp_die( 'Cannot load the REST API to access WC_REST_System_Status_Controller.' );
}
$system_status = new WC_REST_System_Status_Controller;
$system_status = new WC_REST_System_Status_Controller();
$environment = $system_status->get_environment_info();
$database = $system_status->get_database_info();
$post_type_counts = $system_status->get_post_type_counts();
@ -22,7 +22,7 @@ $theme = $system_status->get_theme_info();
$security = $system_status->get_security_info();
$settings = $system_status->get_settings();
$pages = $system_status->get_pages();
$plugin_updates = new WC_Plugin_Updates;
$plugin_updates = new WC_Plugin_Updates();
$untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor' );
?>
<div class="updated woocommerce-message inline">
@ -45,33 +45,35 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<tr>
<td data-export-label="Home URL"><?php _e( 'Home URL', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The homepage URL of your site.', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $environment['home_url'] ) ?></td>
<td><?php echo esc_html( $environment['home_url'] ); ?></td>
</tr>
<tr>
<td data-export-label="Site URL"><?php _e( 'Site URL', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The root URL of your site.', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $environment['site_url'] ) ?></td>
<td><?php echo esc_html( $environment['site_url'] ); ?></td>
</tr>
<tr>
<td data-export-label="WC Version"><?php _e( 'WC version', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The version of WooCommerce installed on your site.', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $environment['version'] ) ?></td>
<td><?php echo esc_html( $environment['version'] ); ?></td>
</tr>
<tr>
<td data-export-label="Log Directory Writable"><?php _e( 'Log directory writable', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'Several WooCommerce extensions can write logs which makes debugging problems easier. The directory must be writable for this to happen.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
if ( $environment['log_directory_writable'] ) {
echo '<mark class="yes"><span class="dashicons dashicons-yes"></span> <code class="private">' . esc_html( $environment['log_directory'] ) . '</code></mark> ';
} else {
echo '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . sprintf( __( 'To allow logging, make %1$s writable or define a custom %2$s.', 'woocommerce' ), '<code>' . $environment['log_directory'] . '</code>', '<code>WC_LOG_DIR</code>' ) . '</mark>';
}
?></td>
?>
</td>
</tr>
<tr>
<td data-export-label="WP Version"><?php _e( 'WP version', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The version of WordPress installed on your site.', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $environment['wp_version'] ) ?></td>
<td><?php echo esc_html( $environment['wp_version'] ); ?></td>
</tr>
<tr>
<td data-export-label="WP Multisite"><?php _e( 'WP multisite', 'woocommerce' ); ?>:</td>
@ -81,13 +83,15 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<tr>
<td data-export-label="WP Memory Limit"><?php _e( 'WP memory limit', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The maximum amount of memory (RAM) that your site can use at one time.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
if ( $environment['wp_memory_limit'] < 67108864 ) {
echo '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . sprintf( __( '%1$s - We recommend setting memory to at least 64MB. See: %2$s', 'woocommerce' ), size_format( $environment['wp_memory_limit'] ), '<a href="https://codex.wordpress.org/Editing_wp-config.php#Increasing_memory_allocated_to_PHP" target="_blank">' . __( 'Increasing memory allocated to PHP', 'woocommerce' ) . '</a>' ) . '</mark>';
} else {
echo '<mark class="yes">' . size_format( $environment['wp_memory_limit'] ) . '</mark>';
}
?></td>
?>
</td>
</tr>
<tr>
<td data-export-label="WP Debug Mode"><?php _e( 'WP debug mode', 'woocommerce' ); ?>:</td>
@ -114,7 +118,7 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<tr>
<td data-export-label="Language"><?php _e( 'Language', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The current language used by WordPress. Default = English', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $environment['language'] ) ?></td>
<td><?php echo esc_html( $environment['language'] ); ?></td>
</tr>
</tbody>
</table>
@ -133,34 +137,36 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<tr>
<td data-export-label="PHP Version"><?php _e( 'PHP version', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The version of PHP installed on your hosting server.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
if ( version_compare( $environment['php_version'], '5.6', '<' ) ) {
echo '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . sprintf( __( '%1$s - We recommend a minimum PHP version of 5.6. See: %2$s', 'woocommerce' ), esc_html( $environment['php_version'] ), '<a href="https://docs.woocommerce.com/document/how-to-update-your-php-version/" target="_blank">' . __( 'How to update your PHP version', 'woocommerce' ) . '</a>' ) . '</mark>';
} else {
echo '<mark class="yes">' . esc_html( $environment['php_version'] ) . '</mark>';
}
?></td>
?>
</td>
</tr>
<?php if ( function_exists( 'ini_get' ) ) : ?>
<tr>
<td data-export-label="PHP Post Max Size"><?php _e( 'PHP post max size', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The largest filesize that can be contained in one post.', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( size_format( $environment['php_post_max_size'] ) ) ?></td>
<td><?php echo esc_html( size_format( $environment['php_post_max_size'] ) ); ?></td>
</tr>
<tr>
<td data-export-label="PHP Time Limit"><?php _e( 'PHP time limit', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The amount of time (in seconds) that your site will spend on a single operation before timing out (to avoid server lockups)', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $environment['php_max_execution_time'] ) ?></td>
<td><?php echo esc_html( $environment['php_max_execution_time'] ); ?></td>
</tr>
<tr>
<td data-export-label="PHP Max Input Vars"><?php _e( 'PHP max input vars', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The maximum number of variables your server can use for a single function to avoid overloads.', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $environment['php_max_input_vars'] ) ?></td>
<td><?php echo esc_html( $environment['php_max_input_vars'] ); ?></td>
</tr>
<tr>
<td data-export-label="cURL Version"><?php _e( 'cURL version', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The version of cURL installed on your server.', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $environment['curl_version'] ) ?></td>
<td><?php echo esc_html( $environment['curl_version'] ); ?></td>
</tr>
<tr>
<td data-export-label="SUHOSIN Installed"><?php _e( 'SUHOSIN installed', 'woocommerce' ); ?>:</td>
@ -191,94 +197,110 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<tr>
<td data-export-label="Max Upload Size"><?php _e( 'Max upload size', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The largest filesize that can be uploaded to your WordPress installation.', 'woocommerce' ) ); ?></td>
<td><?php echo size_format( $environment['max_upload_size'] ) ?></td>
<td><?php echo size_format( $environment['max_upload_size'] ); ?></td>
</tr>
<tr>
<td data-export-label="Default Timezone is UTC"><?php _e( 'Default timezone is UTC', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The default timezone for your server.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
if ( 'UTC' !== $environment['default_timezone'] ) {
echo '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . sprintf( __( 'Default timezone is %s - it should be UTC', 'woocommerce' ), $environment['default_timezone'] ) . '</mark>';
} else {
echo '<mark class="yes"><span class="dashicons dashicons-yes"></span></mark>';
} ?>
}
?>
</td>
</tr>
<tr>
<td data-export-label="fsockopen/cURL"><?php _e( 'fsockopen/cURL', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'Payment gateways can use cURL to communicate with remote servers to authorize payments, other plugins may also use it when communicating with remote services.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
if ( $environment['fsockopen_or_curl_enabled'] ) {
echo '<mark class="yes"><span class="dashicons dashicons-yes"></span></mark>';
} else {
echo '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . __( 'Your server does not have fsockopen or cURL enabled - PayPal IPN and other scripts which communicate with other servers will not work. Contact your hosting provider.', 'woocommerce' ) . '</mark>';
} ?>
}
?>
</td>
</tr>
<tr>
<td data-export-label="SoapClient"><?php _e( 'SoapClient', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'Some webservices like shipping use SOAP to get information from remote servers, for example, live shipping quotes from FedEx require SOAP to be installed.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
if ( $environment['soapclient_enabled'] ) {
echo '<mark class="yes"><span class="dashicons dashicons-yes"></span></mark>';
} else {
echo '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . sprintf( __( 'Your server does not have the %s class enabled - some gateway plugins which use SOAP may not work as expected.', 'woocommerce' ), '<a href="https://php.net/manual/en/class.soapclient.php">SoapClient</a>' ) . '</mark>';
} ?>
}
?>
</td>
</tr>
<tr>
<td data-export-label="DOMDocument"><?php _e( 'DOMDocument', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'HTML/Multipart emails use DOMDocument to generate inline CSS in templates.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
if ( $environment['domdocument_enabled'] ) {
echo '<mark class="yes"><span class="dashicons dashicons-yes"></span></mark>';
} else {
echo '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . sprintf( __( 'Your server does not have the %s class enabled - HTML/Multipart emails, and also some extensions, will not work without DOMDocument.', 'woocommerce' ), '<a href="https://php.net/manual/en/class.domdocument.php">DOMDocument</a>' ) . '</mark>';
} ?>
}
?>
</td>
</tr>
<tr>
<td data-export-label="GZip"><?php _e( 'GZip', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'GZip (gzopen) is used to open the GEOIP database from MaxMind.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
if ( $environment['gzip_enabled'] ) {
echo '<mark class="yes"><span class="dashicons dashicons-yes"></span></mark>';
} else {
echo '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . sprintf( __( 'Your server does not support the %s function - this is required to use the GeoIP database from MaxMind.', 'woocommerce' ), '<a href="https://php.net/manual/en/zlib.installation.php">gzopen</a>' ) . '</mark>';
} ?>
}
?>
</td>
</tr>
<tr>
<td data-export-label="Multibyte String"><?php _e( 'Multibyte string', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'Multibyte String (mbstring) is used to convert character encoding, like for emails or converting characters to lowercase.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
if ( $environment['mbstring_enabled'] ) {
echo '<mark class="yes"><span class="dashicons dashicons-yes"></span></mark>';
} else {
echo '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . sprintf( __( 'Your server does not support the %s functions - this is required for better character encoding. Some fallbacks will be used instead for it.', 'woocommerce' ), '<a href="https://php.net/manual/en/mbstring.installation.php">mbstring</a>' ) . '</mark>';
} ?>
}
?>
</td>
</tr>
<tr>
<td data-export-label="Remote Post"><?php _e( 'Remote post', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'PayPal uses this method of communicating when sending back transaction information.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
if ( $environment['remote_post_successful'] ) {
echo '<mark class="yes"><span class="dashicons dashicons-yes"></span></mark>';
} else {
echo '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . sprintf( __( '%s failed. Contact your hosting provider.', 'woocommerce' ), 'wp_remote_post()' ) . ' ' . esc_html( $environment['remote_post_response'] ) . '</mark>';
} ?>
}
?>
</td>
</tr>
<tr>
<td data-export-label="Remote Get"><?php _e( 'Remote get', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'WooCommerce plugins may use this method of communication when checking for plugin updates.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
if ( $environment['remote_get_successful'] ) {
echo '<mark class="yes"><span class="dashicons dashicons-yes"></span></mark>';
} else {
echo '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . sprintf( __( '%s failed. Contact your hosting provider.', 'woocommerce' ), 'wp_remote_get()' ) . ' ' . esc_html( $environment['remote_get_response'] ) . '</mark>';
} ?>
}
?>
</td>
</tr>
<?php
@ -300,8 +322,10 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<?php echo $icon; ?> <?php echo ! empty( $row['note'] ) ? wp_kses_data( $row['note'] ) : ''; ?>
</mark>
</td>
</tr><?php
} ?>
</tr>
<?php
}
?>
</tbody>
</table>
<table class="wc_status_table widefat" cellspacing="0">
@ -319,7 +343,8 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<tr>
<td data-export-label="WC Database Prefix"><?php _e( 'Database prefix', 'woocommerce' ); ?></td>
<td class="help">&nbsp;</td>
<td><?php
<td>
<?php
if ( strlen( $database['database_prefix'] ) > 20 ) {
echo '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . sprintf( __( '%1$s - We recommend using a prefix with less than 20 characters. See: %2$s', 'woocommerce' ), esc_html( $database['database_prefix'] ), '<a href="https://docs.woocommerce.com/document/completed-order-email-doesnt-contain-download-links/#section-2" target="_blank">' . __( 'How to update your database table prefix', 'woocommerce' ) . '</a>' ) . '</mark>';
} else {
@ -333,13 +358,15 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<tr>
<td data-export-label="MaxMind GeoIP Database"><?php _e( 'MaxMind GeoIP database', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The GeoIP database from MaxMind is used to geolocate customers.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
if ( file_exists( $database['maxmind_geoip_database'] ) ) {
echo '<mark class="yes"><span class="dashicons dashicons-yes"></span> <code class="private">' . esc_html( $database['maxmind_geoip_database'] ) . '</code></mark> ';
} else {
printf( '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . sprintf( __( 'The MaxMind GeoIP Database does not exist - Geolocation will not function. You can download and install it manually from %1$s to the path: %2$s. Scroll down to "Downloads" and download the "Binary / gzip" file next to "GeoLite Country". Please remember to uncompress GeoIP.dat.gz and upload the GeoIP.dat file only.', 'woocommerce' ), make_clickable( 'http://dev.maxmind.com/geoip/legacy/geolite/' ), '<code class="private">' . $database['maxmind_geoip_database'] . '</code>' ) . '</mark>', WC_LOG_DIR );
}
?></td>
?>
</td>
</tr>
<?php } ?>
@ -366,11 +393,13 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<td><?php echo esc_html( $table ); ?></td>
<td class="help">&nbsp;</td>
<td>
<?php if( ! $table_data ) {
<?php
if ( ! $table_data ) {
echo '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . __( 'Table does not exist', 'woocommerce' ) . '</mark>';
} else {
printf( __( 'Data: %.2fMB + Index: %.2fMB', 'woocommerce' ), wc_format_decimal( $table_data['data'], 2 ), wc_format_decimal( $table_data['index'], 2 ) );
} ?>
printf( __( 'Data: %1$.2fMB + Index: %2$.2fMB', 'woocommerce' ), wc_format_decimal( $table_data['data'], 2 ), wc_format_decimal( $table_data['index'], 2 ) );
}
?>
</td>
</tr>
<?php } ?>
@ -380,7 +409,7 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<td><?php echo esc_html( $table ); ?></td>
<td class="help">&nbsp;</td>
<td>
<?php printf( __( 'Data: %.2fMB + Index: %.2fMB', 'woocommerce' ), wc_format_decimal( $table_data['data'], 2 ), wc_format_decimal( $table_data['index'], 2 ) ); ?>
<?php printf( __( 'Data: %1$.2fMB + Index: %2$.2fMB', 'woocommerce' ), wc_format_decimal( $table_data['data'], 2 ), wc_format_decimal( $table_data['index'], 2 ) ); ?>
</td>
</tr>
<?php } ?>
@ -440,7 +469,7 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<table class="wc_status_table widefat" cellspacing="0">
<thead>
<tr>
<th colspan="3" data-export-label="Active Plugins (<?php echo count( $active_plugins ) ?>)"><h2><?php _e( 'Active plugins', 'woocommerce' ); ?> (<?php echo count( $active_plugins ) ?>)</h2></th>
<th colspan="3" data-export-label="Active Plugins (<?php echo count( $active_plugins ); ?>)"><h2><?php _e( 'Active plugins', 'woocommerce' ); ?> (<?php echo count( $active_plugins ); ?>)</h2></th>
</tr>
</thead>
<tbody>
@ -475,11 +504,13 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<tr>
<td><?php echo $plugin_name; ?></td>
<td class="help">&nbsp;</td>
<td><?php
<td>
<?php
/* translators: %s: plugin author */
printf( __( 'by %s', 'woocommerce' ), $plugin['author_name'] );
echo ' &ndash; ' . esc_html( $plugin['version'] ) . $version_string . $untested_string . $network_string;
?></td>
?>
</td>
</tr>
<?php
}
@ -505,51 +536,55 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<td><?php echo $settings['force_ssl'] ? '<mark class="yes"><span class="dashicons dashicons-yes"></span></mark>' : '<mark class="no">&ndash;</mark>'; ?></td>
</tr>
<tr>
<td data-export-label="Currency"><?php _e( 'Currency', 'woocommerce' ) ?></td>
<td data-export-label="Currency"><?php _e( 'Currency', 'woocommerce' ); ?></td>
<td class="help"><?php echo wc_help_tip( __( 'What currency prices are listed at in the catalog and which currency gateways will take payments in.', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $settings['currency'] ) ?> (<?php echo esc_html( $settings['currency_symbol'] ) ?>)</td>
<td><?php echo esc_html( $settings['currency'] ); ?> (<?php echo esc_html( $settings['currency_symbol'] ); ?>)</td>
</tr>
<tr>
<td data-export-label="Currency Position"><?php _e( 'Currency position', 'woocommerce' ) ?></td>
<td data-export-label="Currency Position"><?php _e( 'Currency position', 'woocommerce' ); ?></td>
<td class="help"><?php echo wc_help_tip( __( 'The position of the currency symbol.', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $settings['currency_position'] ) ?></td>
<td><?php echo esc_html( $settings['currency_position'] ); ?></td>
</tr>
<tr>
<td data-export-label="Thousand Separator"><?php _e( 'Thousand separator', 'woocommerce' ) ?></td>
<td data-export-label="Thousand Separator"><?php _e( 'Thousand separator', 'woocommerce' ); ?></td>
<td class="help"><?php echo wc_help_tip( __( 'The thousand separator of displayed prices.', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $settings['thousand_separator'] ) ?></td>
<td><?php echo esc_html( $settings['thousand_separator'] ); ?></td>
</tr>
<tr>
<td data-export-label="Decimal Separator"><?php _e( 'Decimal separator', 'woocommerce' ) ?></td>
<td data-export-label="Decimal Separator"><?php _e( 'Decimal separator', 'woocommerce' ); ?></td>
<td class="help"><?php echo wc_help_tip( __( 'The decimal separator of displayed prices.', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $settings['decimal_separator'] ) ?></td>
<td><?php echo esc_html( $settings['decimal_separator'] ); ?></td>
</tr>
<tr>
<td data-export-label="Number of Decimals"><?php _e( 'Number of decimals', 'woocommerce' ) ?></td>
<td data-export-label="Number of Decimals"><?php _e( 'Number of decimals', 'woocommerce' ); ?></td>
<td class="help"><?php echo wc_help_tip( __( 'The number of decimal points shown in displayed prices.', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $settings['number_of_decimals'] ) ?></td>
<td><?php echo esc_html( $settings['number_of_decimals'] ); ?></td>
</tr>
<tr>
<td data-export-label="Taxonomies: Product Types"><?php _e( 'Taxonomies: Product types', 'woocommerce' ); ?></th>
<td class="help"><?php echo wc_help_tip( __( 'A list of taxonomy terms that can be used in regard to order/product statuses.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
$display_terms = array();
foreach ( $settings['taxonomies'] as $slug => $name ) {
$display_terms[] = strtolower( $name ) . ' (' . $slug . ')';
}
echo implode( ', ', array_map( 'esc_html', $display_terms ) );
?></td>
?>
</td>
</tr>
<tr>
<td data-export-label="Taxonomies: Product Visibility"><?php _e( 'Taxonomies: Product visibility', 'woocommerce' ); ?></th>
<td class="help"><?php echo wc_help_tip( __( 'A list of taxonomy terms used for product visibility.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
$display_terms = array();
foreach ( $settings['product_visibility_terms'] as $slug => $name ) {
$display_terms[] = strtolower( $name ) . ' (' . $slug . ')';
}
echo implode( ', ', array_map( 'esc_html', $display_terms ) );
?></td>
?>
</td>
</tr>
</tbody>
</table>
@ -613,34 +648,34 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<tr>
<td data-export-label="Name"><?php _e( 'Name', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The name of the current active theme.', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $theme['name'] ) ?></td>
<td><?php echo esc_html( $theme['name'] ); ?></td>
</tr>
<tr>
<td data-export-label="Version"><?php _e( 'Version', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The installed version of the current active theme.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
echo esc_html( $theme['version'] );
if ( version_compare( $theme['version'], $theme['version_latest'], '<' ) ) {
/* translators: %s: theme latest version */
echo ' &ndash; <strong style="color:red;">' . sprintf( __( '%s is available', 'woocommerce' ), esc_html( $theme['version_latest'] ) ) . '</strong>';
}
?></td>
?>
</td>
</tr>
<tr>
<td data-export-label="Author URL"><?php _e( 'Author URL', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The theme developers URL.', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $theme['author_url'] ) ?></td>
<td><?php echo esc_html( $theme['author_url'] ); ?></td>
</tr>
<tr>
<td data-export-label="Child Theme"><?php _e( 'Child theme', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'Displays whether or not the current theme is a child theme.', 'woocommerce' ) ); ?></td>
<td><?php
echo $theme['is_child_theme'] ? '<mark class="yes"><span class="dashicons dashicons-yes"></span></mark>' : '<span class="dashicons dashicons-no-alt"></span> &ndash; ' . sprintf( __( 'If you are modifying WooCommerce on a parent theme that you did not build personally we recommend using a child theme. See: <a href="%s" target="_blank">How to create a child theme</a>', 'woocommerce' ), 'https://codex.wordpress.org/Child_Themes' );
?></td>
<td>
<?php echo $theme['is_child_theme'] ? '<mark class="yes"><span class="dashicons dashicons-yes"></span></mark>' : '<span class="dashicons dashicons-no-alt"></span> &ndash; ' . sprintf( __( 'If you are modifying WooCommerce on a parent theme that you did not build personally we recommend using a child theme. See: <a href="%s" target="_blank">How to create a child theme</a>', 'woocommerce' ), 'https://codex.wordpress.org/Child_Themes' ); ?>
</td>
</tr>
<?php
if ( $theme['is_child_theme'] ) :
?>
<?php if ( $theme['is_child_theme'] ) : ?>
<tr>
<td data-export-label="Parent Theme Name"><?php _e( 'Parent theme name', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The name of the parent theme.', 'woocommerce' ) ); ?></td>
@ -649,29 +684,33 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<tr>
<td data-export-label="Parent Theme Version"><?php _e( 'Parent theme version', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The installed version of the parent theme.', 'woocommerce' ) ); ?></td>
<td><?php
<td>
<?php
echo esc_html( $theme['parent_version'] );
if ( version_compare( $theme['parent_version'], $theme['parent_version_latest'], '<' ) ) {
/* translators: %s: parant theme latest version */
echo ' &ndash; <strong style="color:red;">' . sprintf( __( '%s is available', 'woocommerce' ), esc_html( $theme['parent_version_latest'] ) ) . '</strong>';
}
?></td>
?>
</td>
</tr>
<tr>
<td data-export-label="Parent Theme Author URL"><?php _e( 'Parent theme author URL', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'The parent theme developers URL.', 'woocommerce' ) ); ?></td>
<td><?php echo esc_html( $theme['parent_author_url'] ) ?></td>
<td><?php echo esc_html( $theme['parent_author_url'] ); ?></td>
</tr>
<?php endif ?>
<tr>
<td data-export-label="WooCommerce Support"><?php _e( 'WooCommerce support', 'woocommerce' ); ?>:</td>
<td class="help"><?php echo wc_help_tip( __( 'Displays whether or not the current active theme declares WooCommerce support.', 'woocommerce' ) ); ?></td>
<td>
<?php if ( ! $theme['has_woocommerce_support'] ) {
<?php
if ( ! $theme['has_woocommerce_support'] ) {
echo '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . __( 'Not declared', 'woocommerce' ) . '</mark>';
} else {
echo '<mark class="yes"><span class="dashicons dashicons-yes"></span></mark>';
} ?>
}
?>
</td>
</tr>
</tbody>
@ -690,8 +729,7 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<td><?php _e( 'Your theme has a woocommerce.php file, you will not be able to override the woocommerce/archive-product.php custom template since woocommerce.php has priority over archive-product.php. This is intended to prevent display issues.', 'woocommerce' ); ?></td>
</tr>
<?php endif ?>
<?php
if ( ! empty( $theme['overrides'] ) ) { ?>
<?php if ( ! empty( $theme['overrides'] ) ) { ?>
<tr>
<td data-export-label="Overrides"><?php _e( 'Overrides', 'woocommerce' ); ?></td>
<td class="help">&nbsp;</td>
@ -720,8 +758,7 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
</td>
</tr>
<?php
} else {
?>
} else { ?>
<tr>
<td data-export-label="Overrides"><?php _e( 'Overrides', 'woocommerce' ); ?>:</td>
<td class="help">&nbsp;</td>
@ -735,7 +772,7 @@ $untested_plugins = $plugin_updates->get_untested_plugins( WC()->version, 'minor
<tr>
<td data-export-label="Outdated Templates"><?php _e( 'Outdated templates', 'woocommerce' ); ?>:</td>
<td class="help">&nbsp;</td>
<td><mark class="error"><span class="dashicons dashicons-warning"></span></mark><a href="https://docs.woocommerce.com/document/fix-outdated-templates-woocommerce/" target="_blank"><?php _e( 'Learn how to update', 'woocommerce' ) ?></a></td>
<td><mark class="error"><span class="dashicons dashicons-warning"></span></mark><a href="https://docs.woocommerce.com/document/fix-outdated-templates-woocommerce/" target="_blank"><?php _e( 'Learn how to update', 'woocommerce' ); ?></a></td>
</tr>
<?php
}

View File

@ -38,7 +38,9 @@ class WC_REST_System_Status_Controller extends WC_REST_Controller {
* Register the route for /system_status
*/
public function register_routes() {
register_rest_route( $this->namespace, '/' . $this->rest_base, array(
register_rest_route(
$this->namespace, '/' . $this->rest_base,
array(
array(
'methods' => WP_REST_Server::READABLE,
'callback' => array( $this, 'get_items' ),
@ -46,7 +48,8 @@ class WC_REST_System_Status_Controller extends WC_REST_Controller {
'args' => $this->get_collection_params(),
),
'schema' => array( $this, 'get_public_item_schema' ),
) );
)
);
}
/**
@ -573,14 +576,17 @@ class WC_REST_System_Status_Controller extends WC_REST_Controller {
}
// Test POST requests
$post_response = wp_safe_remote_post( 'https://www.paypal.com/cgi-bin/webscr', array(
$post_response = wp_safe_remote_post(
'https://www.paypal.com/cgi-bin/webscr',
array(
'timeout' => 10,
'user-agent' => 'WooCommerce/' . WC()->version,
'httpversion' => '1.1',
'body' => array(
'cmd' => '_notify-validate',
),
) );
)
);
$post_response_successful = false;
if ( ! is_wp_error( $post_response ) && $post_response['response']['code'] >= 200 && $post_response['response']['code'] < 300 ) {
$post_response_successful = true;
@ -647,18 +653,23 @@ class WC_REST_System_Status_Controller extends WC_REST_Controller {
public function get_database_info() {
global $wpdb;
$database_table_sizes = $wpdb->get_results( $wpdb->prepare( "
SELECT
$database_table_sizes = $wpdb->get_results(
$wpdb->prepare(
"SELECT
table_name AS 'name',
round( ( data_length / 1024 / 1024 ), 2 ) 'data',
round( ( index_length / 1024 / 1024 ), 2 ) 'index'
FROM information_schema.TABLES
WHERE table_schema = %s
ORDER BY name ASC;
", DB_NAME ) );
ORDER BY name ASC;",
DB_NAME
)
);
// WC Core tables to check existence of
$core_tables = apply_filters( 'woocommerce_database_tables', array(
$core_tables = apply_filters(
'woocommerce_database_tables',
array(
'woocommerce_sessions',
'woocommerce_api_keys',
'woocommerce_attribute_taxonomies',
@ -673,7 +684,8 @@ class WC_REST_System_Status_Controller extends WC_REST_Controller {
'woocommerce_payment_tokens',
'woocommerce_payment_tokenmeta',
'woocommerce_log',
) );
)
);
if ( get_option( 'db_version' ) < 34370 ) {
$core_tables[] = 'woocommerce_termmeta';
@ -693,12 +705,12 @@ class WC_REST_System_Status_Controller extends WC_REST_Controller {
*/
$tables = array(
'woocommerce' => array_fill_keys( $core_tables, false ),
'other' => array()
'other' => array(),
);
$database_size = array(
'data' => 0,
'index' => 0
'index' => 0,
);
foreach ( $database_table_sizes as $table ) {
@ -706,7 +718,7 @@ class WC_REST_System_Status_Controller extends WC_REST_Controller {
$tables[ $table_type ][ $table->name ] = array(
'data' => $table->data,
'index' => $table->index
'index' => $table->index,
);
$database_size['data'] += $table->data;
@ -742,8 +754,8 @@ class WC_REST_System_Status_Controller extends WC_REST_Controller {
* @return array
*/
public function get_active_plugins() {
require_once( ABSPATH . 'wp-admin/includes/plugin.php' );
require_once( ABSPATH . 'wp-admin/includes/update.php' );
require_once ABSPATH . 'wp-admin/includes/plugin.php';
require_once ABSPATH . 'wp-admin/includes/update.php';
if ( ! function_exists( 'get_plugin_updates' ) ) {
return array();
@ -775,9 +787,14 @@ class WC_REST_System_Status_Controller extends WC_REST_Controller {
foreach ( $cl_lines as $line_num => $cl_line ) {
if ( preg_match( '/^[0-9]/', $cl_line ) ) {
$date = str_replace( '.', '-', trim( substr( $cl_line, 0, strpos( $cl_line, '-' ) ) ) );
$version = preg_replace( '~[^0-9,.]~' , '' ,stristr( $cl_line , "version" ) );
$update = trim( str_replace( "*" , "" , $cl_lines[ $line_num + 1 ] ) );
$version_data = array( 'date' => $date , 'version' => $version , 'update' => $update , 'changelog' => $changelog );
$version = preg_replace( '~[^0-9,.]~', '', stristr( $cl_line, 'version' ) );
$update = trim( str_replace( '*', '', $cl_lines[ $line_num + 1 ] ) );
$version_data = array(
'date' => $date,
'version' => $version,
'update' => $update,
'changelog' => $changelog,
);
set_transient( md5( $plugin ) . '_version_data', $version_data, DAY_IN_SECONDS );
break;
}
@ -825,7 +842,12 @@ class WC_REST_System_Status_Controller extends WC_REST_Controller {
'parent_author_url' => $parent_theme->{'Author URI'},
);
} else {
$parent_theme_info = array( 'parent_name' => '', 'parent_version' => '', 'parent_version_latest' => '', 'parent_author_url' => '' );
$parent_theme_info = array(
'parent_name' => '',
'parent_version' => '',
'parent_version_latest' => '',
'parent_author_url' => '',
);
}
/**

View File

@ -12,9 +12,11 @@ class WC_Tests_REST_System_Status extends WC_REST_Unit_Test_Case {
public function setUp() {
parent::setUp();
$this->endpoint = new WC_REST_System_Status_Controller();
$this->user = $this->factory->user->create( array(
$this->user = $this->factory->user->create(
array(
'role' => 'administrator',
) );
)
);
}
/**
@ -216,7 +218,7 @@ class WC_Tests_REST_System_Status extends WC_REST_Unit_Test_Case {
public function test_get_system_tools() {
wp_set_current_user( $this->user );
$tools_controller = new WC_REST_System_Status_Tools_Controller;
$tools_controller = new WC_REST_System_Status_Tools_Controller();
$raw_tools = $tools_controller->get_tools();
$response = $this->server->dispatch( new WP_REST_Request( 'GET', '/wc/v2/system_status/tools' ) );
@ -224,7 +226,8 @@ class WC_Tests_REST_System_Status extends WC_REST_Unit_Test_Case {
$this->assertEquals( 200, $response->get_status() );
$this->assertEquals( count( $raw_tools ), count( $data ) );
$this->assertContains( array(
$this->assertContains(
array(
'id' => 'reset_tracking',
'name' => 'Reset usage tracking',
'action' => 'Reset',
@ -237,7 +240,9 @@ class WC_Tests_REST_System_Status extends WC_REST_Unit_Test_Case {
),
),
),
), $data );
),
$data
);
}
/**
@ -259,7 +264,7 @@ class WC_Tests_REST_System_Status extends WC_REST_Unit_Test_Case {
public function test_get_system_tool() {
wp_set_current_user( $this->user );
$tools_controller = new WC_REST_System_Status_Tools_Controller;
$tools_controller = new WC_REST_System_Status_Tools_Controller();
$raw_tools = $tools_controller->get_tools();
$raw_tool = $raw_tools['recount_terms'];
@ -293,7 +298,7 @@ class WC_Tests_REST_System_Status extends WC_REST_Unit_Test_Case {
public function test_execute_system_tool() {
wp_set_current_user( $this->user );
$tools_controller = new WC_REST_System_Status_Tools_Controller;
$tools_controller = new WC_REST_System_Status_Tools_Controller();
$raw_tools = $tools_controller->get_tools();
$raw_tool = $raw_tools['recount_terms'];