Changeset 28430
- Timestamp:
- 05/15/2014 03:24:21 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/wp-includes/class-wp-ajax-response.php
r21528 r28430 62 62 63 63 $r = wp_parse_args( $args, $defaults ); 64 extract( $r, EXTR_SKIP );65 $position = preg_replace( '/[^a-z0-9:_-]/i', '', $position );66 64 67 if ( is_wp_error($id) ) { 65 $position = preg_replace( '/[^a-z0-9:_-]/i', '', $r['position'] ); 66 $id = $r['id']; 67 $what = $r['what']; 68 $action = $r['action']; 69 $old_id = $r['old_id']; 70 $data = $r['data']; 71 72 if ( is_wp_error( $id ) ) { 68 73 $data = $id; 69 74 $id = 0; … … 71 76 72 77 $response = ''; 73 if ( is_wp_error( $data) ) {78 if ( is_wp_error( $data ) ) { 74 79 foreach ( (array) $data->get_error_codes() as $code ) { 75 $response .= "<wp_error code='$code'><![CDATA[" . $data->get_error_message( $code) . "]]></wp_error>";76 if ( ! $error_data = $data->get_error_data($code) )80 $response .= "<wp_error code='$code'><![CDATA[" . $data->get_error_message( $code ) . "]]></wp_error>"; 81 if ( ! $error_data = $data->get_error_data( $code ) ) { 77 82 continue; 83 } 78 84 $class = ''; 79 if ( is_object( $error_data) ) {80 $class = ' class="' . get_class( $error_data) . '"';81 $error_data = get_object_vars( $error_data);85 if ( is_object( $error_data ) ) { 86 $class = ' class="' . get_class( $error_data ) . '"'; 87 $error_data = get_object_vars( $error_data ); 82 88 } 83 89 84 90 $response .= "<wp_error_data code='$code'$class>"; 85 91 86 if ( is_scalar( $error_data) ) {92 if ( is_scalar( $error_data ) ) { 87 93 $response .= "<![CDATA[$error_data]]>"; 88 } elseif ( is_array( $error_data) ) {89 foreach ( $error_data as $k => $v ) 94 } elseif ( is_array( $error_data ) ) { 95 foreach ( $error_data as $k => $v ) { 90 96 $response .= "<$k><![CDATA[$v]]></$k>"; 97 } 91 98 } 92 99 … … 98 105 99 106 $s = ''; 100 if ( is_array( $supplemental) ) {101 foreach ( $ supplemental as $k => $v )107 if ( is_array( $r['supplemental'] ) ) { 108 foreach ( $r['supplemental'] as $k => $v ) { 102 109 $s .= "<$k><![CDATA[$v]]></$k>"; 110 } 103 111 $s = "<supplemental>$s</supplemental>"; 104 112 } 105 113 106 if ( false === $action ) 114 if ( false === $action ) { 107 115 $action = $_POST['action']; 108 116 } 109 117 $x = ''; 110 118 $x .= "<response action='{$action}_$id'>"; // The action attribute in the xml output is formatted like a nonce action
Note: See TracChangeset
for help on using the changeset viewer.