fixed undefined offset in wc_create_refund()

This commit is contained in:
claudiosmweb 2014-07-23 13:56:43 -03:00
parent 11835826de
commit 23628ad430
1 changed files with 11 additions and 2 deletions

View File

@ -563,7 +563,7 @@ function wc_create_refund( $args = array() ) {
if ( is_wp_error( $refund_id ) ) {
return $refund_id;
}
if ( ! $updating ) {
// Default refund meta data
update_post_meta( $refund_id, '_refund_amount', wc_format_decimal( $args['amount'] ) );
@ -591,7 +591,13 @@ function wc_create_refund( $args = array() ) {
$line_tax_data = maybe_unserialize( $refund_item['line_tax_data'] );
foreach ( $line_tax_data['total'] as $key => $tax ) {
$args['totals']['tax_data']['total'][ $key ] = ( ( $tax / $qty ) * $refund_qty ) * -1;
$order_taxes[ $key ] += ( ( $tax / $qty ) * $refund_qty ) * -1;
$tax_total = ( ( $tax / $qty ) * $refund_qty ) * -1;
if ( isset( $order_taxes[ $key ] ) ) {
$order_taxes[ $key ] += $tax_total;
} else {
$order_taxes[ $key ] = $tax_total;
}
}
foreach ( $line_tax_data['subtotal'] as $key => $tax ) {
$args['totals']['tax_data']['subtotal'][ $key ] = ( ( $tax / $qty ) * $refund_qty ) * -1;
@ -608,6 +614,9 @@ function wc_create_refund( $args = array() ) {
}
}
}
// error_log( print_r( new WC_Order_Refund( $refund_id ), true ) );
return new WC_Order_Refund( $refund_id );
}