mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2026-07-01 15:50:09 +00:00
Customize: Fix php warning due to WP_Customize_Manager::prepare_setting_validity_for_js() incorrectly assuming that WP_Error will only ever have arrays in its $error_data.
* Eliminates the server mutating the a `WP_Error`'s `$error_data` to merge-in a `$from_server` flag (since it may not be an array to begin with). Instead it defers to the client to add a `fromServer` param on any `Notification` instances created from server-sent errors. * Ensures that notifications will be re-rendered if a notification's `message` changes but the `data` and `type` remain the same. * Adds explicit support for the `Notification` class to have a `setting` property, ensuring that the property is set whereas previously it was dropped. Fixes #37890. Props westonruter, dlh. git-svn-id: https://develop.svn.wordpress.org/trunk@38513 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
@@ -1046,17 +1046,9 @@ final class WP_Customize_Manager {
|
||||
if ( is_wp_error( $validity ) ) {
|
||||
$notification = array();
|
||||
foreach ( $validity->errors as $error_code => $error_messages ) {
|
||||
$error_data = $validity->get_error_data( $error_code );
|
||||
if ( is_null( $error_data ) ) {
|
||||
$error_data = array();
|
||||
}
|
||||
$error_data = array_merge(
|
||||
$error_data,
|
||||
array( 'from_server' => true )
|
||||
);
|
||||
$notification[ $error_code ] = array(
|
||||
'message' => join( ' ', $error_messages ),
|
||||
'data' => $error_data,
|
||||
'data' => $validity->get_error_data( $error_code ),
|
||||
);
|
||||
}
|
||||
return $notification;
|
||||
|
||||
Reference in New Issue
Block a user