-
diff --git a/src/js/_enqueues/vendor/tinymce/langs/wp-langs-en.js b/src/js/_enqueues/vendor/tinymce/langs/wp-langs-en.js
index 9687041853..9fcb177736 100644
|
a
|
b
|
|
| 24 | 24 | clipboard_msg: "Copy/Cut/Paste is not available in Mozilla and Firefox.", |
| 25 | 25 | clipboard_no_support: "Currently not supported by your browser, use keyboard shortcuts instead.", |
| 26 | 26 | popup_blocked: "Sorry, but we have noticed that your popup-blocker has disabled a window that provides application functionality. You will need to disable popup blocking on this site in order to fully utilize this tool.", |
| 27 | | invalid_data: "Error: Invalid values entered, these are marked in red.", |
| | 27 | invalid_data: "Invalid values entered, these are marked in red.", |
| 28 | 28 | invalid_data_number: "{#field} must be a number", |
| 29 | 29 | invalid_data_min: "{#field} must be a number greater than {#min}", |
| 30 | 30 | invalid_data_size: "{#field} must be a number or percentage", |
-
diff --git a/src/wp-admin/import.php b/src/wp-admin/import.php
index 7326f185c1..1404e1f7c1 100644
|
a
|
b
|
$parent_file = 'tools.php'; |
| 61 | 61 | <h1><?php echo esc_html( $title ); ?></h1> |
| 62 | 62 | <?php if ( ! empty( $_GET['invalid'] ) ) : ?> |
| 63 | 63 | <div class="error"> |
| 64 | | <p><strong><?php _e( 'Error:' ); ?></strong> |
| | 64 | <p> |
| 65 | 65 | <?php |
| 66 | 66 | /* translators: %s: Importer slug. */ |
| 67 | 67 | printf( __( 'The %s importer is invalid or is not installed.' ), '<strong>' . esc_html( $_GET['invalid'] ) . '</strong>' ); |
-
diff --git a/src/wp-admin/includes/ajax-actions.php b/src/wp-admin/includes/ajax-actions.php
index 7010262492..25a8b2b078 100644
|
a
|
b
|
function wp_ajax_replyto_comment( $action ) { |
| 1272 | 1272 | if ( empty( $post->post_status ) ) { |
| 1273 | 1273 | wp_die( 1 ); |
| 1274 | 1274 | } elseif ( in_array( $post->post_status, array( 'draft', 'pending', 'trash' ), true ) ) { |
| 1275 | | wp_die( __( 'Error: You are replying to a comment on a draft post.' ) ); |
| | 1275 | wp_die( __( 'You can’t reply to a comment on a draft post.' ) ); |
| 1276 | 1276 | } |
| 1277 | 1277 | |
| 1278 | 1278 | $user = wp_get_current_user(); |
| … |
… |
function wp_ajax_replyto_comment( $action ) { |
| 1302 | 1302 | } |
| 1303 | 1303 | |
| 1304 | 1304 | if ( '' === $comment_content ) { |
| 1305 | | wp_die( __( 'Error: Please type a comment.' ) ); |
| | 1305 | wp_die( __( 'Please type your comment text.' ) ); |
| 1306 | 1306 | } |
| 1307 | 1307 | |
| 1308 | 1308 | $comment_parent = 0; |
| … |
… |
function wp_ajax_edit_comment() { |
| 1404 | 1404 | } |
| 1405 | 1405 | |
| 1406 | 1406 | if ( '' === $_POST['content'] ) { |
| 1407 | | wp_die( __( 'Error: Please type a comment.' ) ); |
| | 1407 | wp_die( __( 'Please type your comment text.' ) ); |
| 1408 | 1408 | } |
| 1409 | 1409 | |
| 1410 | 1410 | if ( isset( $_POST['status'] ) ) { |
-
diff --git a/src/wp-admin/includes/file.php b/src/wp-admin/includes/file.php
index cca39895ba..e343e651fc 100644
|
a
|
b
|
function request_filesystem_credentials( $form_post, $type = '', $error = false, |
| 2099 | 2099 | $connection_type = isset( $credentials['connection_type'] ) ? $credentials['connection_type'] : ''; |
| 2100 | 2100 | |
| 2101 | 2101 | if ( $error ) { |
| 2102 | | $error_string = __( '<strong>Error</strong>: There was an error connecting to the server. Please verify the settings are correct.' ); |
| | 2102 | $error_string = __( 'There was an error connecting to the server. Please verify the settings are correct.' ); |
| 2103 | 2103 | if ( is_wp_error( $error ) ) { |
| 2104 | 2104 | $error_string = esc_html( $error->get_error_message() ); |
| 2105 | 2105 | } |
-
diff --git a/src/wp-admin/includes/network.php b/src/wp-admin/includes/network.php
index 481fd94982..f15aadd542 100644
|
a
|
b
|
function network_step1( $errors = false ) { |
| 110 | 110 | global $is_apache; |
| 111 | 111 | |
| 112 | 112 | if ( defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) ) { |
| 113 | | echo '<div class="error"><p><strong>' . __( 'Error:' ) . '</strong> ' . sprintf( |
| | 113 | echo '<div class="error"><p>' . sprintf( |
| 114 | 114 | /* translators: %s: DO_NOT_UPGRADE_GLOBAL_TABLES */ |
| 115 | 115 | __( 'The constant %s cannot be defined when creating a network.' ), |
| 116 | 116 | '<code>DO_NOT_UPGRADE_GLOBAL_TABLES</code>' |
| … |
… |
function network_step1( $errors = false ) { |
| 136 | 136 | $hostname = get_clean_basedomain(); |
| 137 | 137 | $has_ports = strstr( $hostname, ':' ); |
| 138 | 138 | if ( ( false !== $has_ports && ! in_array( $has_ports, array( ':80', ':443' ), true ) ) ) { |
| 139 | | echo '<div class="error"><p><strong>' . __( 'Error:' ) . '</strong> ' . __( 'You cannot install a network of sites with your server address.' ) . '</p></div>'; |
| | 139 | echo '<div class="error"><p><strong>' . __( 'You cannot install a network of sites with your server address.' ) . '</p></div>'; |
| 140 | 140 | echo '<p>' . sprintf( |
| 141 | 141 | /* translators: %s: Port number. */ |
| 142 | 142 | __( 'You cannot use port numbers such as %s.' ), |
| … |
… |
function network_step1( $errors = false ) { |
| 154 | 154 | |
| 155 | 155 | $error_codes = array(); |
| 156 | 156 | if ( is_wp_error( $errors ) ) { |
| 157 | | echo '<div class="error"><p><strong>' . __( 'Error: The network could not be created.' ) . '</strong></p>'; |
| | 157 | echo '<div class="error"><p><strong>' . __( 'The network could not be created.' ) . '</strong></p>'; |
| 158 | 158 | foreach ( $errors->get_error_messages() as $error ) { |
| 159 | 159 | echo "<p>$error</p>"; |
| 160 | 160 | } |
-
diff --git a/src/wp-admin/includes/plugin-install.php b/src/wp-admin/includes/plugin-install.php
index f58f6cb31a..f59787e7dd 100644
|
a
|
b
|
function install_plugin_information() { |
| 801 | 801 | |
| 802 | 802 | if ( ! $compatible_php ) { |
| 803 | 803 | echo '<div class="notice notice-error notice-alt"><p>'; |
| 804 | | _e( '<strong>Error:</strong> This plugin <strong>requires a newer version of PHP</strong>.' ); |
| | 804 | _e( 'This plugin <strong>requires a newer version of PHP</strong>.' ); |
| 805 | 805 | if ( current_user_can( 'update_php' ) ) { |
| 806 | 806 | printf( |
| 807 | 807 | /* translators: %s: URL to Update PHP page. */ |
| … |
… |
function install_plugin_information() { |
| 822 | 822 | echo '</p></div>'; |
| 823 | 823 | } elseif ( ! $compatible_wp ) { |
| 824 | 824 | echo '<div class="notice notice-error notice-alt"><p>'; |
| 825 | | _e( '<strong>Error:</strong> This plugin <strong>requires a newer version of WordPress</strong>.' ); |
| | 825 | _e( 'This plugin <strong>requires a newer version of WordPress</strong>.' ); |
| 826 | 826 | if ( current_user_can( 'update_core' ) ) { |
| 827 | 827 | printf( |
| 828 | 828 | /* translators: %s: URL to WordPress Updates screen. */ |
-
diff --git a/src/wp-admin/includes/plugin.php b/src/wp-admin/includes/plugin.php
index ca3f1fc054..426d11df0e 100644
|
a
|
b
|
function validate_plugin_requirements( $plugin ) { |
| 1152 | 1152 | 'plugin_wp_php_incompatible', |
| 1153 | 1153 | sprintf( |
| 1154 | 1154 | /* translators: %s: Plugin name. */ |
| 1155 | | _x( '<strong>Error:</strong> Current WordPress and PHP versions do not meet minimum requirements for %s.', 'plugin' ), |
| | 1155 | _x( 'Current WordPress and PHP versions do not meet minimum requirements for %s.', 'plugin' ), |
| 1156 | 1156 | $plugin_headers['Name'] |
| 1157 | 1157 | ) |
| 1158 | 1158 | ); |
| … |
… |
function validate_plugin_requirements( $plugin ) { |
| 1161 | 1161 | 'plugin_php_incompatible', |
| 1162 | 1162 | sprintf( |
| 1163 | 1163 | /* translators: %s: Plugin name. */ |
| 1164 | | _x( '<strong>Error:</strong> Current PHP version does not meet minimum requirements for %s.', 'plugin' ), |
| | 1164 | _x( 'Current PHP version does not meet minimum requirements for %s.', 'plugin' ), |
| 1165 | 1165 | $plugin_headers['Name'] |
| 1166 | 1166 | ) |
| 1167 | 1167 | ); |
| … |
… |
function validate_plugin_requirements( $plugin ) { |
| 1170 | 1170 | 'plugin_wp_incompatible', |
| 1171 | 1171 | sprintf( |
| 1172 | 1172 | /* translators: %s: Plugin name. */ |
| 1173 | | _x( '<strong>Error:</strong> Current WordPress version does not meet minimum requirements for %s.', 'plugin' ), |
| | 1173 | _x( 'Current WordPress version does not meet minimum requirements for %s.', 'plugin' ), |
| 1174 | 1174 | $plugin_headers['Name'] |
| 1175 | 1175 | ) |
| 1176 | 1176 | ); |
-
diff --git a/src/wp-admin/includes/user.php b/src/wp-admin/includes/user.php
index 2268f75e55..1c3d44cc16 100644
|
a
|
b
|
function edit_user( $user_id = 0 ) { |
| 143 | 143 | |
| 144 | 144 | /* checking that username has been typed */ |
| 145 | 145 | if ( '' === $user->user_login ) { |
| 146 | | $errors->add( 'user_login', __( '<strong>Error</strong>: Please enter a username.' ) ); |
| | 146 | $errors->add( 'user_login', __( 'Please enter a username.' ) ); |
| 147 | 147 | } |
| 148 | 148 | |
| 149 | 149 | /* checking that nickname has been typed */ |
| 150 | 150 | if ( $update && empty( $user->nickname ) ) { |
| 151 | | $errors->add( 'nickname', __( '<strong>Error</strong>: Please enter a nickname.' ) ); |
| | 151 | $errors->add( 'nickname', __( 'Please enter a nickname.' ) ); |
| 152 | 152 | } |
| 153 | 153 | |
| 154 | 154 | /** |
| … |
… |
function edit_user( $user_id = 0 ) { |
| 164 | 164 | |
| 165 | 165 | // Check for blank password when adding a user. |
| 166 | 166 | if ( ! $update && empty( $pass1 ) ) { |
| 167 | | $errors->add( 'pass', __( '<strong>Error</strong>: Please enter a password.' ), array( 'form-field' => 'pass1' ) ); |
| | 167 | $errors->add( 'pass', __( 'Please enter a password.' ), array( 'form-field' => 'pass1' ) ); |
| 168 | 168 | } |
| 169 | 169 | |
| 170 | 170 | // Check for "\" in password. |
| 171 | 171 | if ( false !== strpos( wp_unslash( $pass1 ), '\\' ) ) { |
| 172 | | $errors->add( 'pass', __( '<strong>Error</strong>: Passwords may not contain the character "\\".' ), array( 'form-field' => 'pass1' ) ); |
| | 172 | $errors->add( 'pass', __( 'Passwords may not contain the character "\\".' ), array( 'form-field' => 'pass1' ) ); |
| 173 | 173 | } |
| 174 | 174 | |
| 175 | 175 | // Checking the password has been typed twice the same. |
| 176 | 176 | if ( ( $update || ! empty( $pass1 ) ) && $pass1 != $pass2 ) { |
| 177 | | $errors->add( 'pass', __( '<strong>Error</strong>: Please enter the same password in both password fields.' ), array( 'form-field' => 'pass1' ) ); |
| | 177 | $errors->add( 'pass', __( 'Please enter the same password in both password fields.' ), array( 'form-field' => 'pass1' ) ); |
| 178 | 178 | } |
| 179 | 179 | |
| 180 | 180 | if ( ! empty( $pass1 ) ) { |
| … |
… |
function edit_user( $user_id = 0 ) { |
| 182 | 182 | } |
| 183 | 183 | |
| 184 | 184 | if ( ! $update && isset( $_POST['user_login'] ) && ! validate_username( $_POST['user_login'] ) ) { |
| 185 | | $errors->add( 'user_login', __( '<strong>Error</strong>: This username is invalid because it uses illegal characters. Please enter a valid username.' ) ); |
| | 185 | $errors->add( 'user_login', __( 'This username is invalid because it uses illegal characters. Please enter a valid username.' ) ); |
| 186 | 186 | } |
| 187 | 187 | |
| 188 | 188 | if ( ! $update && username_exists( $user->user_login ) ) { |
| 189 | | $errors->add( 'user_login', __( '<strong>Error</strong>: This username is already registered. Please choose another one.' ) ); |
| | 189 | $errors->add( 'user_login', __( 'This username is already registered. Please choose another one.' ) ); |
| 190 | 190 | } |
| 191 | 191 | |
| 192 | 192 | /** This filter is documented in wp-includes/user.php */ |
| 193 | 193 | $illegal_logins = (array) apply_filters( 'illegal_user_logins', array() ); |
| 194 | 194 | |
| 195 | 195 | if ( in_array( strtolower( $user->user_login ), array_map( 'strtolower', $illegal_logins ), true ) ) { |
| 196 | | $errors->add( 'invalid_username', __( '<strong>Error</strong>: Sorry, that username is not allowed.' ) ); |
| | 196 | $errors->add( 'invalid_username', __( 'Sorry, that username is not allowed.' ) ); |
| 197 | 197 | } |
| 198 | 198 | |
| 199 | 199 | /* checking email address */ |
| 200 | 200 | if ( empty( $user->user_email ) ) { |
| 201 | | $errors->add( 'empty_email', __( '<strong>Error</strong>: Please enter an email address.' ), array( 'form-field' => 'email' ) ); |
| | 201 | $errors->add( 'empty_email', __( 'Please enter an email address.' ), array( 'form-field' => 'email' ) ); |
| 202 | 202 | } elseif ( ! is_email( $user->user_email ) ) { |
| 203 | | $errors->add( 'invalid_email', __( '<strong>Error</strong>: The email address isn’t correct.' ), array( 'form-field' => 'email' ) ); |
| | 203 | $errors->add( 'invalid_email', __( 'The email address isn’t correct.' ), array( 'form-field' => 'email' ) ); |
| 204 | 204 | } else { |
| 205 | 205 | $owner_id = email_exists( $user->user_email ); |
| 206 | 206 | if ( $owner_id && ( ! $update || ( $owner_id != $user->ID ) ) ) { |
| 207 | | $errors->add( 'email_exists', __( '<strong>Error</strong>: This email is already registered, please choose another one.' ), array( 'form-field' => 'email' ) ); |
| | 207 | $errors->add( 'email_exists', __( 'This email is already registered. Please choose another one.' ), array( 'form-field' => 'email' ) ); |
| 208 | 208 | } |
| 209 | 209 | } |
| 210 | 210 | |
-
diff --git a/src/wp-admin/options.php b/src/wp-admin/options.php
index 4b02b673c3..dafdd691d8 100644
|
a
|
b
|
if ( 'update' === $action ) { // We are saving settings sent from a settings pag |
| 221 | 221 | wp_die( |
| 222 | 222 | sprintf( |
| 223 | 223 | /* translators: %s: The options page name. */ |
| 224 | | __( '<strong>Error</strong>: Options page %s not found in the options whitelist.' ), |
| | 224 | __( 'Options page %s not found in the options whitelist.' ), |
| 225 | 225 | '<code>' . esc_html( $option_page ) . '</code>' |
| 226 | 226 | ) |
| 227 | 227 | ); |
-
diff --git a/src/wp-admin/setup-config.php b/src/wp-admin/setup-config.php
index b721f8158d..a428f00b04 100644
|
a
|
b
|
switch ( $step ) { |
| 280 | 280 | $tryagain_link = '</p><p class="step"><a href="' . $step_1 . '" onclick="javascript:history.go(-1);return false;" class="button button-large">' . __( 'Try Again' ) . '</a>'; |
| 281 | 281 | |
| 282 | 282 | if ( empty( $prefix ) ) { |
| 283 | | wp_die( __( '<strong>Error</strong>: "Table Prefix" must not be empty.' ) . $tryagain_link ); |
| | 283 | wp_die( __( '"Table Prefix" must not be empty.' ) . $tryagain_link ); |
| 284 | 284 | } |
| 285 | 285 | |
| 286 | 286 | // Validate $prefix: it can only contain letters, numbers and underscores. |
| 287 | 287 | if ( preg_match( '|[^a-z0-9_]|i', $prefix ) ) { |
| 288 | | wp_die( __( '<strong>Error</strong>: "Table Prefix" can only contain numbers, letters, and underscores.' ) . $tryagain_link ); |
| | 288 | wp_die( __( '"Table Prefix" can only contain numbers, letters, and underscores.' ) . $tryagain_link ); |
| 289 | 289 | } |
| 290 | 290 | |
| 291 | 291 | // Test the DB connection. |
| … |
… |
switch ( $step ) { |
| 318 | 318 | $wpdb->show_errors( $errors ); |
| 319 | 319 | if ( ! $wpdb->last_error ) { |
| 320 | 320 | // MySQL was able to parse the prefix as a value, which we don't want. Bail. |
| 321 | | wp_die( __( '<strong>Error</strong>: "Table Prefix" is invalid.' ) ); |
| | 321 | wp_die( __( '"Table Prefix" is invalid.' ) ); |
| 322 | 322 | } |
| 323 | 323 | |
| 324 | 324 | // Generate keys and salts using secure CSPRNG; fallback to API if enabled; further fallback to original wp_generate_password(). |
-
diff --git a/src/wp-admin/themes.php b/src/wp-admin/themes.php
index 0f632d06cc..bb3912bd6a 100644
|
a
|
b
|
if ( ! validate_current_theme() || isset( $_GET['broken'] ) ) { |
| 280 | 280 | $ct = wp_get_theme(); |
| 281 | 281 | |
| 282 | 282 | if ( $ct->errors() && ( ! is_multisite() || current_user_can( 'manage_network_themes' ) ) ) { |
| 283 | | echo '<div class="error"><p>' . __( 'Error:' ) . ' ' . $ct->errors()->get_error_message() . '</p></div>'; |
| | 283 | echo '<div class="error"><p>' . $ct->errors()->get_error_message() . '</p></div>'; |
| 284 | 284 | } |
| 285 | 285 | |
| 286 | 286 | /* |
-
diff --git a/src/wp-admin/users.php b/src/wp-admin/users.php
index 3742e95276..bea003c378 100644
|
a
|
b
|
switch ( $wp_list_table->current_action() ) { |
| 274 | 274 | <h1><?php _e( 'Delete Users' ); ?></h1> |
| 275 | 275 | <?php if ( isset( $_REQUEST['error'] ) ) : ?> |
| 276 | 276 | <div class="error"> |
| 277 | | <p><strong><?php _e( 'Error:' ); ?></strong> <?php _e( 'Please select an option.' ); ?></p> |
| | 277 | <p><?php _e( 'Please select an option.' ); ?></p> |
| 278 | 278 | </div> |
| 279 | 279 | <?php endif; ?> |
| 280 | 280 | |
-
diff --git a/src/wp-includes/class-wp-theme.php b/src/wp-includes/class-wp-theme.php
index ca6359ec7e..2162546d57 100644
|
a
|
b
|
final class WP_Theme implements ArrayAccess { |
| 255 | 255 | ) |
| 256 | 256 | ); |
| 257 | 257 | if ( ! file_exists( $this->theme_root ) ) { // Don't cache this one. |
| 258 | | $this->errors->add( 'theme_root_missing', __( 'Error: The themes directory is either empty or doesn’t exist. Please check your installation.' ) ); |
| | 258 | $this->errors->add( 'theme_root_missing', __( 'The themes directory is either empty or doesn’t exist. Please check your installation.' ) ); |
| 259 | 259 | } |
| 260 | 260 | return; |
| 261 | 261 | } elseif ( ! is_readable( $this->theme_root . '/' . $theme_file ) ) { |
-
diff --git a/src/wp-includes/comment.php b/src/wp-includes/comment.php
index a001eabad7..d101563f85 100644
|
a
|
b
|
function wp_check_comment_data_max_lengths( $comment_data ) { |
| 1239 | 1239 | $max_lengths = wp_get_comment_fields_max_lengths(); |
| 1240 | 1240 | |
| 1241 | 1241 | if ( isset( $comment_data['comment_author'] ) && mb_strlen( $comment_data['comment_author'], '8bit' ) > $max_lengths['comment_author'] ) { |
| 1242 | | return new WP_Error( 'comment_author_column_length', __( '<strong>Error</strong>: Your name is too long.' ), 200 ); |
| | 1242 | return new WP_Error( 'comment_author_column_length', __( 'Your name is too long.' ), 200 ); |
| 1243 | 1243 | } |
| 1244 | 1244 | |
| 1245 | 1245 | if ( isset( $comment_data['comment_author_email'] ) && strlen( $comment_data['comment_author_email'] ) > $max_lengths['comment_author_email'] ) { |
| 1246 | | return new WP_Error( 'comment_author_email_column_length', __( '<strong>Error</strong>: Your email address is too long.' ), 200 ); |
| | 1246 | return new WP_Error( 'comment_author_email_column_length', __( 'Your email address is too long.' ), 200 ); |
| 1247 | 1247 | } |
| 1248 | 1248 | |
| 1249 | 1249 | if ( isset( $comment_data['comment_author_url'] ) && strlen( $comment_data['comment_author_url'] ) > $max_lengths['comment_author_url'] ) { |
| 1250 | | return new WP_Error( 'comment_author_url_column_length', __( '<strong>Error</strong>: Your URL is too long.' ), 200 ); |
| | 1250 | return new WP_Error( 'comment_author_url_column_length', __( 'Your URL is too long.' ), 200 ); |
| 1251 | 1251 | } |
| 1252 | 1252 | |
| 1253 | 1253 | if ( isset( $comment_data['comment_content'] ) && mb_strlen( $comment_data['comment_content'], '8bit' ) > $max_lengths['comment_content'] ) { |
| 1254 | | return new WP_Error( 'comment_content_column_length', __( '<strong>Error</strong>: Your comment is too long.' ), 200 ); |
| | 1254 | return new WP_Error( 'comment_content_column_length', __( 'Your comment is too long.' ), 200 ); |
| 1255 | 1255 | } |
| 1256 | 1256 | |
| 1257 | 1257 | return true; |
| … |
… |
function wp_handle_comment_submission( $comment_data ) { |
| 3382 | 3382 | |
| 3383 | 3383 | if ( get_option( 'require_name_email' ) && ! $user->exists() ) { |
| 3384 | 3384 | if ( '' == $comment_author_email || '' == $comment_author ) { |
| 3385 | | return new WP_Error( 'require_name_email', __( '<strong>Error</strong>: Please fill the required fields (name, email).' ), 200 ); |
| | 3385 | return new WP_Error( 'require_name_email', __( 'Please fill the required fields (name, email).' ), 200 ); |
| 3386 | 3386 | } elseif ( ! is_email( $comment_author_email ) ) { |
| 3387 | | return new WP_Error( 'require_valid_email', __( '<strong>Error</strong>: Please enter a valid email address.' ), 200 ); |
| | 3387 | return new WP_Error( 'require_valid_email', __( 'Please enter a valid email address.' ), 200 ); |
| 3388 | 3388 | } |
| 3389 | 3389 | } |
| 3390 | 3390 | |
| … |
… |
function wp_handle_comment_submission( $comment_data ) { |
| 3409 | 3409 | */ |
| 3410 | 3410 | $allow_empty_comment = apply_filters( 'allow_empty_comment', false, $commentdata ); |
| 3411 | 3411 | if ( '' === $comment_content && ! $allow_empty_comment ) { |
| 3412 | | return new WP_Error( 'require_valid_comment', __( '<strong>Error</strong>: Please type a comment.' ), 200 ); |
| | 3412 | return new WP_Error( 'require_valid_comment', __( 'Please type a comment.' ), 200 ); |
| 3413 | 3413 | } |
| 3414 | 3414 | |
| 3415 | 3415 | $check_max_lengths = wp_check_comment_data_max_lengths( $commentdata ); |
| … |
… |
function wp_handle_comment_submission( $comment_data ) { |
| 3423 | 3423 | } |
| 3424 | 3424 | |
| 3425 | 3425 | if ( ! $comment_id ) { |
| 3426 | | return new WP_Error( 'comment_save_error', __( '<strong>Error</strong>: The comment could not be saved. Please try again later.' ), 500 ); |
| | 3426 | return new WP_Error( 'comment_save_error', __( 'The comment could not be saved. Please try again later.' ), 500 ); |
| 3427 | 3427 | } |
| 3428 | 3428 | |
| 3429 | 3429 | return get_comment( $comment_id ); |
-
diff --git a/src/wp-includes/functions.php b/src/wp-includes/functions.php
index 35c1e2e2f3..dfa4ae3a50 100644
|
a
|
b
|
function do_feed() { |
| 1545 | 1545 | } |
| 1546 | 1546 | |
| 1547 | 1547 | if ( ! has_action( "do_feed_{$feed}" ) ) { |
| 1548 | | wp_die( __( 'Error: This is not a valid feed template.' ), '', array( 'response' => 404 ) ); |
| | 1548 | wp_die( __( 'This is not a valid feed template.' ), '', array( 'response' => 404 ) ); |
| 1549 | 1549 | } |
| 1550 | 1550 | |
| 1551 | 1551 | /** |
-
diff --git a/src/wp-includes/load.php b/src/wp-includes/load.php
index b12a9c458f..3381f5eb3b 100644
|
a
|
b
|
function wp_set_wpdb_vars() { |
| 548 | 548 | wp_die( |
| 549 | 549 | sprintf( |
| 550 | 550 | /* translators: 1: $table_prefix, 2: wp-config.php */ |
| 551 | | __( '<strong>Error</strong>: %1$s in %2$s can only contain numbers, letters, and underscores.' ), |
| | 551 | __( '%1$s in %2$s can only contain numbers, letters, and underscores.' ), |
| 552 | 552 | '<code>$table_prefix</code>', |
| 553 | 553 | '<code>wp-config.php</code>' |
| 554 | 554 | ) |
-
diff --git a/src/wp-includes/ms-deprecated.php b/src/wp-includes/ms-deprecated.php
index 85399342c2..85d21bdb94 100644
|
a
|
b
|
function create_empty_blog( $domain, $path, $weblog_title, $site_id = 1 ) { |
| 401 | 401 | |
| 402 | 402 | // Check if the domain has been used already. We should return an error message. |
| 403 | 403 | if ( domain_exists($domain, $path, $site_id) ) |
| 404 | | return __( '<strong>Error</strong>: Site URL already taken.' ); |
| | 404 | return __( 'Site URL already taken.' ); |
| 405 | 405 | |
| 406 | 406 | /* |
| 407 | 407 | * Need to back up wpdb table names, and create a new wp_blogs entry for new blog. |
| … |
… |
function create_empty_blog( $domain, $path, $weblog_title, $site_id = 1 ) { |
| 410 | 410 | */ |
| 411 | 411 | |
| 412 | 412 | if ( ! $blog_id = insert_blog($domain, $path, $site_id) ) |
| 413 | | return __( '<strong>Error</strong>: Problem creating site entry.' ); |
| | 413 | return __( 'Problem creating site entry.' ); |
| 414 | 414 | |
| 415 | 415 | switch_to_blog($blog_id); |
| 416 | 416 | install_blog($blog_id); |
-
diff --git a/src/wp-includes/pluggable.php b/src/wp-includes/pluggable.php
index c2579659df..3b99d5e6b2 100644
|
a
|
b
|
if ( ! function_exists( 'wp_authenticate' ) ) : |
| 546 | 546 | if ( null == $user ) { |
| 547 | 547 | // TODO: What should the error message be? (Or would these even happen?) |
| 548 | 548 | // Only needed if all authentication handlers fail to return anything. |
| 549 | | $user = new WP_Error( 'authentication_failed', __( '<strong>Error</strong>: Invalid username, email address or incorrect password.' ) ); |
| | 549 | $user = new WP_Error( 'authentication_failed', __( 'Invalid username, email address or incorrect password.' ) ); |
| 550 | 550 | } |
| 551 | 551 | |
| 552 | 552 | $ignore_codes = array( 'empty_username', 'empty_password' ); |
-
diff --git a/src/wp-includes/theme.php b/src/wp-includes/theme.php
index 48ccd29013..46317ff4b4 100644
|
a
|
b
|
function validate_theme_requirements( $stylesheet ) { |
| 930 | 930 | 'theme_wp_php_incompatible', |
| 931 | 931 | sprintf( |
| 932 | 932 | /* translators: %s: Theme name. */ |
| 933 | | _x( '<strong>Error:</strong> Current WordPress and PHP versions do not meet minimum requirements for %s.', 'theme' ), |
| | 933 | _x( 'Current WordPress and PHP versions do not meet minimum requirements for %s.', 'theme' ), |
| 934 | 934 | $theme->display( 'Name' ) |
| 935 | 935 | ) |
| 936 | 936 | ); |
| … |
… |
function validate_theme_requirements( $stylesheet ) { |
| 939 | 939 | 'theme_php_incompatible', |
| 940 | 940 | sprintf( |
| 941 | 941 | /* translators: %s: Theme name. */ |
| 942 | | _x( '<strong>Error:</strong> Current PHP version does not meet minimum requirements for %s.', 'theme' ), |
| | 942 | _x( 'Current PHP version does not meet minimum requirements for %s.', 'theme' ), |
| 943 | 943 | $theme->display( 'Name' ) |
| 944 | 944 | ) |
| 945 | 945 | ); |
| … |
… |
function validate_theme_requirements( $stylesheet ) { |
| 948 | 948 | 'theme_wp_incompatible', |
| 949 | 949 | sprintf( |
| 950 | 950 | /* translators: %s: Theme name. */ |
| 951 | | _x( '<strong>Error:</strong> Current WordPress version does not meet minimum requirements for %s.', 'theme' ), |
| | 951 | _x( 'Current WordPress version does not meet minimum requirements for %s.', 'theme' ), |
| 952 | 952 | $theme->display( 'Name' ) |
| 953 | 953 | ) |
| 954 | 954 | ); |
-
diff --git a/src/wp-includes/user.php b/src/wp-includes/user.php
index a1e88f2e5a..55414726d7 100644
|
a
|
b
|
function wp_authenticate_username_password( $user, $username, $password ) { |
| 134 | 134 | $error = new WP_Error(); |
| 135 | 135 | |
| 136 | 136 | if ( empty( $username ) ) { |
| 137 | | $error->add( 'empty_username', __( '<strong>Error</strong>: The username field is empty.' ) ); |
| | 137 | $error->add( 'empty_username', __( 'The username field is empty.' ) ); |
| 138 | 138 | } |
| 139 | 139 | |
| 140 | 140 | if ( empty( $password ) ) { |
| 141 | | $error->add( 'empty_password', __( '<strong>Error</strong>: The password field is empty.' ) ); |
| | 141 | $error->add( 'empty_password', __( 'The password field is empty.' ) ); |
| 142 | 142 | } |
| 143 | 143 | |
| 144 | 144 | return $error; |
| … |
… |
function wp_authenticate_username_password( $user, $username, $password ) { |
| 172 | 172 | 'incorrect_password', |
| 173 | 173 | sprintf( |
| 174 | 174 | /* translators: %s: User name. */ |
| 175 | | __( '<strong>Error</strong>: The password you entered for the username %s is incorrect.' ), |
| | 175 | __( 'The password you entered for the username %s is incorrect.' ), |
| 176 | 176 | '<strong>' . $username . '</strong>' |
| 177 | 177 | ) . |
| 178 | 178 | ' <a href="' . wp_lostpassword_url() . '">' . |
| … |
… |
function wp_authenticate_email_password( $user, $email, $password ) { |
| 209 | 209 | |
| 210 | 210 | if ( empty( $email ) ) { |
| 211 | 211 | // Uses 'empty_username' for back-compat with wp_signon(). |
| 212 | | $error->add( 'empty_username', __( '<strong>Error</strong>: The email field is empty.' ) ); |
| | 212 | $error->add( 'empty_username', __( 'The email field is empty.' ) ); |
| 213 | 213 | } |
| 214 | 214 | |
| 215 | 215 | if ( empty( $password ) ) { |
| 216 | | $error->add( 'empty_password', __( '<strong>Error</strong>: The password field is empty.' ) ); |
| | 216 | $error->add( 'empty_password', __( 'The password field is empty.' ) ); |
| 217 | 217 | } |
| 218 | 218 | |
| 219 | 219 | return $error; |
| … |
… |
function wp_authenticate_email_password( $user, $email, $password ) { |
| 244 | 244 | 'incorrect_password', |
| 245 | 245 | sprintf( |
| 246 | 246 | /* translators: %s: Email address. */ |
| 247 | | __( '<strong>Error</strong>: The password you entered for the email address %s is incorrect.' ), |
| | 247 | __( 'The password you entered for the email address %s is incorrect.' ), |
| 248 | 248 | '<strong>' . $email . '</strong>' |
| 249 | 249 | ) . |
| 250 | 250 | ' <a href="' . wp_lostpassword_url() . '">' . |
| … |
… |
function wp_authenticate_spam_check( $user ) { |
| 319 | 319 | $spammed = apply_filters( 'check_is_user_spammed', is_user_spammy( $user ), $user ); |
| 320 | 320 | |
| 321 | 321 | if ( $spammed ) { |
| 322 | | return new WP_Error( 'spammer_account', __( '<strong>Error</strong>: Your account has been marked as a spammer.' ) ); |
| | 322 | return new WP_Error( 'spammer_account', __( 'Your account has been marked as a spammer.' ) ); |
| 323 | 323 | } |
| 324 | 324 | } |
| 325 | 325 | return $user; |
| … |
… |
function get_password_reset_key( $user ) { |
| 2278 | 2278 | global $wp_hasher; |
| 2279 | 2279 | |
| 2280 | 2280 | if ( ! ( $user instanceof WP_User ) ) { |
| 2281 | | return new WP_Error( 'invalidcombo', __( '<strong>Error</strong>: There is no account with that username or email address.' ) ); |
| | 2281 | return new WP_Error( 'invalidcombo', __( 'There is no account with that username or email address.' ) ); |
| 2282 | 2282 | } |
| 2283 | 2283 | |
| 2284 | 2284 | /** |
| … |
… |
function register_new_user( $user_login, $user_email ) { |
| 2507 | 2507 | |
| 2508 | 2508 | // Check the username. |
| 2509 | 2509 | if ( '' === $sanitized_user_login ) { |
| 2510 | | $errors->add( 'empty_username', __( '<strong>Error</strong>: Please enter a username.' ) ); |
| | 2510 | $errors->add( 'empty_username', __( 'Please enter a username.' ) ); |
| 2511 | 2511 | } elseif ( ! validate_username( $user_login ) ) { |
| 2512 | | $errors->add( 'invalid_username', __( '<strong>Error</strong>: This username is invalid because it uses illegal characters. Please enter a valid username.' ) ); |
| | 2512 | $errors->add( 'invalid_username', __( 'This username is invalid because it uses illegal characters. Please enter a valid username.' ) ); |
| 2513 | 2513 | $sanitized_user_login = ''; |
| 2514 | 2514 | } elseif ( username_exists( $sanitized_user_login ) ) { |
| 2515 | | $errors->add( 'username_exists', __( '<strong>Error</strong>: This username is already registered. Please choose another one.' ) ); |
| | 2515 | $errors->add( 'username_exists', __( 'This username is already registered. Please choose another one.' ) ); |
| 2516 | 2516 | |
| 2517 | 2517 | } else { |
| 2518 | 2518 | /** This filter is documented in wp-includes/user.php */ |
| 2519 | 2519 | $illegal_user_logins = (array) apply_filters( 'illegal_user_logins', array() ); |
| 2520 | 2520 | if ( in_array( strtolower( $sanitized_user_login ), array_map( 'strtolower', $illegal_user_logins ), true ) ) { |
| 2521 | | $errors->add( 'invalid_username', __( '<strong>Error</strong>: Sorry, that username is not allowed.' ) ); |
| | 2521 | $errors->add( 'invalid_username', __( 'Sorry, that username is not allowed.' ) ); |
| 2522 | 2522 | } |
| 2523 | 2523 | } |
| 2524 | 2524 | |
| 2525 | 2525 | // Check the email address. |
| 2526 | 2526 | if ( '' === $user_email ) { |
| 2527 | | $errors->add( 'empty_email', __( '<strong>Error</strong>: Please type your email address.' ) ); |
| | 2527 | $errors->add( 'empty_email', __( 'Please type your email address.' ) ); |
| 2528 | 2528 | } elseif ( ! is_email( $user_email ) ) { |
| 2529 | | $errors->add( 'invalid_email', __( '<strong>Error</strong>: The email address isn’t correct.' ) ); |
| | 2529 | $errors->add( 'invalid_email', __( 'The email address isn’t correct.' ) ); |
| 2530 | 2530 | $user_email = ''; |
| 2531 | 2531 | } elseif ( email_exists( $user_email ) ) { |
| 2532 | | $errors->add( 'email_exists', __( '<strong>Error</strong>: This email is already registered, please choose another one.' ) ); |
| | 2532 | $errors->add( 'email_exists', __( 'This email is already registered. Please choose another one.' ) ); |
| 2533 | 2533 | } |
| 2534 | 2534 | |
| 2535 | 2535 | /** |
| … |
… |
function register_new_user( $user_login, $user_email ) { |
| 2574 | 2574 | 'registerfail', |
| 2575 | 2575 | sprintf( |
| 2576 | 2576 | /* translators: %s: Admin email address. */ |
| 2577 | | __( '<strong>Error</strong>: Couldn’t register you… please contact the <a href="mailto:%s">webmaster</a> !' ), |
| | 2577 | __( 'Couldn’t register you… please contact the <a href="mailto:%s">webmaster</a>!' ), |
| 2578 | 2578 | get_option( 'admin_email' ) |
| 2579 | 2579 | ) |
| 2580 | 2580 | ); |
| … |
… |
function send_confirmation_on_profile_email() { |
| 2809 | 2809 | if ( ! is_email( $_POST['email'] ) ) { |
| 2810 | 2810 | $errors->add( |
| 2811 | 2811 | 'user_email', |
| 2812 | | __( '<strong>Error</strong>: The email address isn’t correct.' ), |
| | 2812 | __( 'The email address isn’t correct.' ), |
| 2813 | 2813 | array( |
| 2814 | 2814 | 'form-field' => 'email', |
| 2815 | 2815 | ) |
| … |
… |
function send_confirmation_on_profile_email() { |
| 2821 | 2821 | if ( email_exists( $_POST['email'] ) ) { |
| 2822 | 2822 | $errors->add( |
| 2823 | 2823 | 'user_email', |
| 2824 | | __( '<strong>Error</strong>: The email address is already used.' ), |
| | 2824 | __( 'The email address is already used.' ), |
| 2825 | 2825 | array( |
| 2826 | 2826 | 'form-field' => 'email', |
| 2827 | 2827 | ) |
-
diff --git a/src/wp-includes/wp-db.php b/src/wp-includes/wp-db.php
index 76e93ad81d..54c7c0b4e6 100644
|
a
|
b
|
class wpdb { |
| 3530 | 3530 | // Make sure the server has the required MySQL version. |
| 3531 | 3531 | if ( version_compare( $this->db_version(), $required_mysql_version, '<' ) ) { |
| 3532 | 3532 | /* translators: 1: WordPress version number, 2: Minimum required MySQL version number. */ |
| 3533 | | return new WP_Error( 'database_version', sprintf( __( '<strong>Error</strong>: WordPress %1$s requires MySQL %2$s or higher' ), $wp_version, $required_mysql_version ) ); |
| | 3533 | return new WP_Error( 'database_version', sprintf( __( 'WordPress %1$s requires MySQL %2$s or higher' ), $wp_version, $required_mysql_version ) ); |
| 3534 | 3534 | } |
| 3535 | 3535 | } |
| 3536 | 3536 | |
-
diff --git a/src/wp-login.php b/src/wp-login.php
index f289c35d4b..51cd7de3ac 100644
|
a
|
b
|
function retrieve_password() { |
| 358 | 358 | $user_data = false; |
| 359 | 359 | |
| 360 | 360 | if ( empty( $_POST['user_login'] ) || ! is_string( $_POST['user_login'] ) ) { |
| 361 | | $errors->add( 'empty_username', __( '<strong>Error</strong>: Enter a username or email address.' ) ); |
| | 361 | $errors->add( 'empty_username', __( 'Please enter a username or email address.' ) ); |
| 362 | 362 | } elseif ( strpos( $_POST['user_login'], '@' ) ) { |
| 363 | 363 | $user_data = get_user_by( 'email', trim( wp_unslash( $_POST['user_login'] ) ) ); |
| 364 | 364 | if ( empty( $user_data ) ) { |
| 365 | | $errors->add( 'invalid_email', __( '<strong>Error</strong>: There is no account with that username or email address.' ) ); |
| | 365 | $errors->add( 'invalid_email', __( 'There is no account with that username or email address.' ) ); |
| 366 | 366 | } |
| 367 | 367 | } else { |
| 368 | 368 | $login = trim( wp_unslash( $_POST['user_login'] ) ); |
| … |
… |
function retrieve_password() { |
| 387 | 387 | } |
| 388 | 388 | |
| 389 | 389 | if ( ! $user_data ) { |
| 390 | | $errors->add( 'invalidcombo', __( '<strong>Error</strong>: There is no account with that username or email address.' ) ); |
| | 390 | $errors->add( 'invalidcombo', __( 'There is no account with that username or email address.' ) ); |
| 391 | 391 | return $errors; |
| 392 | 392 | } |
| 393 | 393 | |
| … |
… |
function retrieve_password() { |
| 454 | 454 | 'retrieve_password_email_failure', |
| 455 | 455 | sprintf( |
| 456 | 456 | /* translators: %s: Documentation URL. */ |
| 457 | | __( '<strong>Error</strong>: The email could not be sent. Your site may not be correctly configured to send emails. <a href="%s">Get support for resetting your password</a>.' ), |
| | 457 | __( 'The email could not be sent. Your site may not be correctly configured to send emails. <a href="%s">Get support for resetting your password</a>.' ), |
| 458 | 458 | esc_url( __( 'https://wordpress.org/support/article/resetting-your-password/' ) ) |
| 459 | 459 | ) |
| 460 | 460 | ); |
| … |
… |
switch ( $action ) { |
| 1197 | 1197 | 'test_cookie', |
| 1198 | 1198 | sprintf( |
| 1199 | 1199 | /* translators: 1: Browser cookie documentation URL, 2: Support forums URL. */ |
| 1200 | | __( '<strong>Error</strong>: Cookies are blocked due to unexpected output. For help, please see <a href="%1$s">this documentation</a> or try the <a href="%2$s">support forums</a>.' ), |
| | 1200 | __( 'Cookies are blocked due to unexpected output. For help, please see <a href="%1$s">this documentation</a> or try the <a href="%2$s">support forums</a>.' ), |
| 1201 | 1201 | __( 'https://wordpress.org/support/article/cookies/' ), |
| 1202 | 1202 | __( 'https://wordpress.org/support/forums/' ) |
| 1203 | 1203 | ) |
| … |
… |
switch ( $action ) { |
| 1208 | 1208 | 'test_cookie', |
| 1209 | 1209 | sprintf( |
| 1210 | 1210 | /* translators: %s: Browser cookie documentation URL. */ |
| 1211 | | __( '<strong>Error</strong>: Cookies are blocked or not supported by your browser. You must <a href="%s">enable cookies</a> to use WordPress.' ), |
| | 1211 | __( 'Cookies are blocked or not supported by your browser. You must <a href="%s">enable cookies</a> to use WordPress.' ), |
| 1212 | 1212 | __( 'https://wordpress.org/support/article/cookies/#enable-cookies-in-your-browser' ) |
| 1213 | 1213 | ) |
| 1214 | 1214 | ); |
-
diff --git a/tests/phpunit/includes/bootstrap.php b/tests/phpunit/includes/bootstrap.php
index d628d62c09..460454b1b7 100644
|
a
|
b
|
if ( defined( 'WP_TESTS_CONFIG_FILE_PATH' ) ) { |
| 30 | 30 | global $wpdb, $current_site, $current_blog, $wp_rewrite, $shortcode_tags, $wp, $phpmailer, $wp_theme_directories; |
| 31 | 31 | |
| 32 | 32 | if ( ! is_readable( $config_file_path ) ) { |
| 33 | | echo "Error: wp-tests-config.php is missing! Please use wp-tests-config-sample.php to create a config file.\n"; |
| | 33 | echo "wp-tests-config.php is missing! Please use wp-tests-config-sample.php to create a config file.\n"; |
| 34 | 34 | exit( 1 ); |
| 35 | 35 | } |
| 36 | 36 | |
| … |
… |
require_once __DIR__ . '/functions.php'; |
| 39 | 39 | |
| 40 | 40 | if ( version_compare( tests_get_phpunit_version(), '5.4', '<' ) || version_compare( tests_get_phpunit_version(), '8.0', '>=' ) ) { |
| 41 | 41 | printf( |
| 42 | | "Error: Looks like you're using PHPUnit %s. WordPress requires at least PHPUnit 5.4 and is currently only compatible with PHPUnit up to 7.x.\n", |
| | 42 | "Looks like you're using PHPUnit %s. WordPress requires at least PHPUnit 5.4 and is currently only compatible with PHPUnit up to 7.x.\n", |
| 43 | 43 | tests_get_phpunit_version() |
| 44 | 44 | ); |
| 45 | 45 | echo "Please use the latest PHPUnit version from the 7.x branch.\n"; |
| … |
… |
if ( version_compare( tests_get_phpunit_version(), '5.4', '<' ) || version_compa |
| 47 | 47 | } |
| 48 | 48 | |
| 49 | 49 | if ( defined( 'WP_RUN_CORE_TESTS' ) && WP_RUN_CORE_TESTS && ! is_dir( ABSPATH ) ) { |
| 50 | | echo "Error: The /build/ directory is missing! Please run `npm run build` prior to running PHPUnit.\n"; |
| | 50 | echo "The /build/ directory is missing! Please run `npm run build` prior to running PHPUnit.\n"; |
| 51 | 51 | exit( 1 ); |
| 52 | 52 | } |
| 53 | 53 | |
-
diff --git a/tests/phpunit/includes/trac.php b/tests/phpunit/includes/trac.php
index 84617fa661..c901362bb9 100644
|
a
|
b
|
class TracTickets { |
| 54 | 54 | // phpcs:ignore WordPress.NamingConventions.ValidFunctionName.MethodNameInvalid |
| 55 | 55 | public static function forcingKnownBugs() { |
| 56 | 56 | echo PHP_EOL . "\x1b[0m\x1b[37;41m\x1b[2K"; |
| 57 | | echo "Error: Trac was inaccessible, so known bugs weren't able to be skipped." . PHP_EOL; |
| | 57 | echo "Trac was inaccessible, so known bugs weren't able to be skipped." . PHP_EOL; |
| 58 | 58 | echo "\x1b[0m\x1b[2K"; |
| 59 | 59 | } |
| 60 | 60 | } |
-
diff --git a/tests/phpunit/tests/ajax/ReplytoComment.php b/tests/phpunit/tests/ajax/ReplytoComment.php
index d0cabef41e..d17ede023c 100644
|
a
|
b
|
class Tests_Ajax_ReplytoComment extends WP_Ajax_UnitTestCase { |
| 187 | 187 | $_POST['comment_post_ID'] = self::$draft_post->ID; |
| 188 | 188 | |
| 189 | 189 | // Make the request. |
| 190 | | $this->setExpectedException( 'WPAjaxDieStopException', 'Error: You are replying to a comment on a draft post.' ); |
| | 190 | $this->setExpectedException( 'WPAjaxDieStopException', 'You are replying to a comment on a draft post.' ); |
| 191 | 191 | $this->_handleAjax( 'replyto-comment' ); |
| 192 | 192 | } |
| 193 | 193 | |