X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/9e77185fafaf4e60e2b73821e0e4b9b1a11fb85f..refs/tags/wordpress-4.4:/wp-admin/maint/repair.php diff --git a/wp-admin/maint/repair.php b/wp-admin/maint/repair.php index cdc6c0aa..7849ff94 100644 --- a/wp-admin/maint/repair.php +++ b/wp-admin/maint/repair.php @@ -16,19 +16,57 @@ header( 'Content-Type: text/html; charset=utf-8' ); + <?php _e( 'WordPress › Database Repair' ); ?> -

+ ' . __( 'Allow automatic database repair' ) . ''; + echo '

' . __( 'To allow use of this page to automatically repair database problems, please add the following line to your wp-config.php file. Once this line is added to your config, reload this page.' ) . "

define('WP_ALLOW_REPAIR', true);

"; + + $default_key = 'put your unique phrase here'; + $missing_key = false; + $duplicated_keys = array(); + + foreach ( array( 'AUTH_KEY', 'SECURE_AUTH_KEY', 'LOGGED_IN_KEY', 'NONCE_KEY', 'AUTH_SALT', 'SECURE_AUTH_SALT', 'LOGGED_IN_SALT', 'NONCE_SALT' ) as $key ) { + if ( defined( $key ) ) { + // Check for unique values of each key. + $duplicated_keys[ constant( $key ) ] = isset( $duplicated_keys[ constant( $key ) ] ); + } else { + // If a constant is not defined, it's missing. + $missing_key = true; + } + } + + // If at least one key uses the default value, consider it duplicated. + if ( isset( $duplicated_keys[ $default_key ] ) ) { + $duplicated_keys[ $default_key ] = true; + } + + // Weed out all unique, non-default values. + $duplicated_keys = array_filter( $duplicated_keys ); + + if ( $duplicated_keys || $missing_key ) { + + echo '

' . __( 'Check secret keys' ) . '

'; + + // Translators: 1: wp-config.php; 2: Secret key service URL. + echo '

' . sprintf( __( 'While you are editing your %1$s file, take a moment to make sure you have all 8 keys and that they are unique. You can generate these using the WordPress.org secret key service.' ), 'wp-config.php', 'https://api.wordpress.org/secret-key/1.1/salt/' ) . '

'; + } + } elseif ( isset( $_GET['repair'] ) ) { + + echo '

' . __( 'Database repair results' ) . '

'; + $optimize = 2 == $_GET['repair']; $okay = true; $problems = array(); @@ -109,6 +147,9 @@ if ( ! defined( 'WP_ALLOW_REPAIR' ) ) { echo '

' . __( 'Repairs complete. Please remove the following line from wp-config.php to prevent this page from being used by unauthorized users.' ) . "

define('WP_ALLOW_REPAIR', true);

"; } } else { + + echo '

' . __( 'WordPress database repair' ) . '

'; + if ( isset( $_GET['referrer'] ) && 'is_blog_installed' == $_GET['referrer'] ) echo '

' . __( 'One or more database tables are unavailable. To allow WordPress to attempt to repair these tables, press the “Repair Database” button. Repairing can take a while, so please be patient.' ) . '

'; else