diff --git a/htdocs/lib/price.lib.php b/htdocs/lib/price.lib.php index ab931c94f6a..82488525c97 100644 --- a/htdocs/lib/price.lib.php +++ b/htdocs/lib/price.lib.php @@ -40,7 +40,7 @@ */ function calcul_price_total($qty, $pu, $remise_percent_ligne, $txtva, $txlocaltax1=0, $txlocaltax2=0, $remise_percent_global=0, $price_base_type='HT', $info_bits=0) { - global $conf; + global $conf,$mysoc; $result=array(); @@ -104,16 +104,38 @@ function calcul_price_total($qty, $pu, $remise_percent_ligne, $txtva, $txlocalta $result[11] = price2num(($pu * ( 1 + ( $txlocaltax1 / 100))) - $pu, 'MT'); $result[5] = $result[5] + $result[11]; } + else + { + $result[14] = 0; + $result[9] = 0; + $result[11] = 0; + } + if ($txlocaltax2>0) { $result[15] = price2num(($tot_sans_remise * ( 1 + ( $txlocaltax2 / 100))) - $tot_sans_remise, 'MT'); - $result[8] = $result[8] + $result[15]; - $result[10] = price2num(($tot_avec_remise * ( 1 + ( $txlocaltax2 / 100))) - $tot_avec_remise, 'MT'); - $result[2] = $result[2] + $result[10]; - $result[12] = price2num(($pu * ( 1 + ( $txlocaltax2 / 100))) - $pu, 'MT'); - $result[5] = $result[5] + $result[12]; + + //If Country is Spain, localtax2 (IRPF) will be subtracted + if ($mysoc->pays_code=='ES') + { + $result[8] = $result[8] - $result[15]; + $result[2] = $result[2] - $result[10]; + $result[5] = $result[5] - $result[12]; + } + else + { + $result[8] = $result[8] + $result[15]; + $result[2] = $result[2] + $result[10]; + $result[5] = $result[5] + $result[12]; + } + } + else + { + $result[15] = 0; + $result[10] = 0; + $result[12] = 0; } // If rounding is not using base 10 (rare)