From 6ba51b365f7c6ada9c188fbb7b3f0851a922076b Mon Sep 17 00:00:00 2001
From: Reinhold Kainhofer <reinhold@kainhofer.com>
Date: Tue, 22 Jan 2013 17:56:03 +0100
Subject: [PATCH] Version 1.1.0: Allow ShippingWithTax in assignments

---
 .../en-GB.plg_vmshipment_rules_shipping.ini   |   4 +-
 ...hipment_rules_shipping_advanced_v1.1.0.zip | Bin 15406 -> 16080 bytes
 .../plg_vmshipment_rules_shipping_v1.1.0.zip  | Bin 12356 -> 13030 bytes
 rules_shipping.php                            |  56 +++++++++++++++++-
 4 files changed, 56 insertions(+), 4 deletions(-)

diff --git a/language/en-GB/en-GB.plg_vmshipment_rules_shipping.ini b/language/en-GB/en-GB.plg_vmshipment_rules_shipping.ini
index 6547cb7..61c4685 100644
--- a/language/en-GB/en-GB.plg_vmshipment_rules_shipping.ini
+++ b/language/en-GB/en-GB.plg_vmshipment_rules_shipping.ini
@@ -16,7 +16,7 @@ VMSHIPMENT_RULES_HELP="<div style='background: #DDDDDD; padding:5px; margin:3px;
 <li>All rule parts with <b>comparison operators (&lt;, &lt;=, =&lt;, ==, !=, &lt;&gt;, &gt;=, =&gt;, &gt;)</b> are conditions.</li>
 <li> Supported <b>variables (case-insensitive)</b>: <b><tt>Amount</tt></b>, <b><tt>Weight</tt></b>, <b><tt>ZIP</tt></b>, <b><tt>Products</tt></b> (number of different products), <b><tt>Articles</tt></b> (counted with quantity), <b><tt>Volume</tt></b> (total volume of the order) and <b><tt>MinVolume</tt>, <tt>MinLength</tt>, <tt>MinWidth</tt>, <tt>MinHeight</tt></b> as well as the same variables with <tt>Max</tt> instead of <tt>Min</tt>.</li>
 <li>A condition can consist of multiple chained comparisons.</li>
-<li>All rule parts of the form <b><tt>[VARIABLE]=VALUE</tt> are assignments</b>, with <tt>[VARIABLE]</tt> being one of <b><tt>Name</tt></b> (optional name of the rule, displayed in the cart and invoice), <b><tt>Shipping</tt></b> (shipping cost if the rule matches). The <tt>Shipping=</tt> can be left out. I.e. a rule part consisting only of a numerical value is understood as shipping cost.</li>
+<li>All rule parts of the form <b><tt>[VARIABLE]=VALUE</tt> are assignments</b>, with <tt>[VARIABLE]</tt> being one of <b><tt>Name</tt></b> (optional name of the rule, displayed in the cart and invoice), <b><tt>Shipping</tt></b> (shipping cost without tax if the rule matches) and <b><tt>ShippingWithTax</tt></b> (shipping cost including taxes if the rule matches). The <tt>Shipping=</tt> can be left out (<tt>ShippingWithTax=</tt> can not be left out). I.e. a rule part consisting only of a numerical value is understood as net shipping cost without tax.</li>
 </ul>
 <p>EXAMPLE: A rule named &quot;Europe&quot; that sets shipping costs of 4.50 for order amounts from 50 to less than 100, and free shipping from 100€ on would be:</p><blockquote><tt>Name=Europe; 50&lt;=Amount&lt;100; Shipping=4.50<br>Name=Free Shipping; 100&lt;= Amount; 0</tt></blockquote>
 </div>"
@@ -26,7 +26,7 @@ VMSHIPMENT_RULES_HELP_ADV="<div style='background: #DDDDDD; padding:5px; margin:
 <li>All rule parts with <b>comparison operators (&lt;, &lt;=, =&lt;, ==, !=, &lt;&gt;, &gt;=, =&gt;, &gt;)</b> are conditions.</li>
 <li> Supported <b>variables (case-insensitive)</b>: <b><tt>Amount</tt></b>, <b><tt>Weight</tt></b>, <b><tt>ZIP</tt></b>, <b><tt>Products</tt></b> (number of different products), <b><tt>Articles</tt></b> (counted with quantity), <b><tt>Volume</tt></b> (total volume of the order) and <b><tt>MinVolume</tt>, <tt>MinLength</tt>, <tt>MinWidth</tt>, <tt>MinHeight</tt></b> as well as the same variables with <tt>Max</tt> instead of <tt>Min</tt>.</li>
 <li>A condition can consist of multiple chained comparisons.</li>
-<li>All rule parts of the form <b><tt>[VARIABLE]=VALUE</tt> are assignments</b>, with <tt>[VARIABLE]</tt> being one of <b><tt>Name</tt></b> (optional name of the rule, displayed in the cart and invoice), <b><tt>Shipping</tt></b> (shipping cost if the rule matches). The <tt>Shipping=</tt> can be left out. I.e. a rule part consisting only of a numerical value is understood as shipping cost.</li>
+<li>All rule parts of the form <b><tt>[VARIABLE]=VALUE</tt> are assignments</b>, with <tt>[VARIABLE]</tt> being one of <b><tt>Name</tt></b> (optional name of the rule, displayed in the cart and invoice), <b><tt>Shipping</tt></b> (shipping cost without tax if the rule matches) and <b><tt>ShippingWithTax</tt></b> (shipping cost including taxes if the rule matches). The <tt>Shipping=</tt> can be left out (<tt>ShippingWithTax=</tt> can not be left out). I.e. a rule part consisting only of a numerical value is understood as net shipping cost without tax.</li>
 <li>In the advanced version, all expressions (conditions and shipping costs) may contain <b>arbitrary basic arithmetic expressions (+, -, *, /, %, ^ and parentheses)</b> of the above variables.</li>
 </ul>
 <p>EXAMPLE: A rule named &quot;Europe&quot; that sets shipping costs of 5€ plus 1.50€ per article for order amounts from 50 to less than 100, and free shipping from 100€ on would be:</p><blockquote><tt>Name=Europe; 50&lt;=Amount&lt;100; Shipping=5+1.50*Articles<br>Name=Free Shipping; 100&lt;= Amount; 0</blockquote>
diff --git a/releases/plg_vmshipment_rules_shipping_advanced_v1.1.0.zip b/releases/plg_vmshipment_rules_shipping_advanced_v1.1.0.zip
index 71c2698fe8ca2c5d4845c37e5e472481a0c1a01b..bc8194d2c78effe96a515be99d637d0c52a1b353 100644
GIT binary patch
delta 9006
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
C`5Y|(

delta 8301
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
Gkm~^-apb`O

diff --git a/releases/plg_vmshipment_rules_shipping_v1.1.0.zip b/releases/plg_vmshipment_rules_shipping_v1.1.0.zip
index 97ee94ce54995548e32170d87491efefb4ec0be4..4e48f0e5155014a3d69236c4796f41a724009750 100644
GIT binary patch
delta 8895
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%0A%3<9C?DxU6OauUUZ2
z(;06IX4n7xGU=S2{(~pZlX}<ka+gP?wa+zqEN^?pvD`$dewqC21K)c$>L1N`aWTh5
z=|<*UwM4l;ans_Z+-uHT@V6}dbDuRl^O*gE>6$Z*y|;$!n|~z!(8GGfB95d&GpBkv
z#iVzWC#ZR`zv%xL@S^|U=7(yNS@}@ccT8^5(Pp}Fbn<!~YbGwK$!~P*LG`+>t_+iw
z>|}3UNv2Qzlh^BrPp;KfVNy|?yja&j5w((MU@&8lU;qI|1_p*LjTwpzlLO@~Sy>sF
z=YoutRfM~Rfq|ilk%7SqMZLTxNWIDAb84I*Jug7k$xc46C&$#NHTk_>1k*{~$)5V*
d%tm?)lh<m?Ox~~Wz_d_rGNXYl8<#%FS^z6q@_zsT

delta 8217
zcmaEsdL%(2z?+#xgn@y9gW+(2nUnenUfV8l28O#q6D4Hp_xAk@0O8UKZU#n{7t9O{
zU}A5~@2cBYegCa1xy<J8_j+elHYv`$(^kFo&NbVezHgRnzWwZTpw6vpA=6@FAEj)s
zT~OOsyOH%k_loY>Ce`OktZcV&{NrF!V3;)F`~Ph-bgx~Hwfo5Q&giyO?VG=guWx;&
z(=+3B;cctu^@T!}k6EJTew=Z9W9a?p_<Y;yZRh4~Ja{JhOyz_Pt@Hi%Hux^MK84+;
z=nq?W(EQ`Gulw=DCVNVl&v;+^ROiv<E9FYtI36GQ7<p!~H2;B{m%P(*WX_4(?O*E0
ztv};Xvqj<oH!HtO9mfrf`2OAI?N8F@iCFvo+KYpSB<o9;&55n551jNVS>5YJ;hebD
z(~KV(r_G+Fyhx(Gd-sXi=Y+0Zo&P3p?%SN)y*KXMymik|;pPPEVg`#3wQf@k&#<W<
zxckgD;r98PmfxEqU+jKU&Tj8h!O}G8eBJL=^GqFCTAntCG|ku?IZ3B1dhOGqn{(JQ
zjeC~q${c$>d5LN4kF$|R-*5h|pWJ=z_vXcH9g{aNuG?O2^ujc7e?!WL_eXPt7+q!j
zCM^~Is3v{x!OTg|?(9r9e%`h@``p9m7gfUiCObS9Ta>o!nKVJwxbN}C?@qVh=<H>S
zyE*Z}_Jea6-l(z(JH6iNcd^Ds!b;-zO71E?<s*%Ov2vB>evb}TJZ#ZD{383zlO?hB
z)7UQ5oDUGvVp-*JhC9a~hT(PL47bNQv$)LEba@*#Jl#>O@4z=#r6($*EV03@OWxgF
zWuv9Xnya?9zxzM``_1n>MNP7D*<%Ht6GerG^!#PcFJ~;^S-FLW<EvX%>7^7ljnHEX
z*SKFWF5mma;#h{vGR6);w~O9RdOKcQm%aR<Q15*1*T&DL&l)9mZ++)G<8R6v>q47H
z+YOFOh<!i%Cr2TyA$0xb|8eo%Kek`#-tqV2n}i>UC6zW-*1Ib1+e>axvp!P4;JA{Q
z^TR8JFaNJ_iTiQ+^v+Lg&v$%qXFjRLd-PhgZkg1Nas}lVT(=Iq6y!KldS>=nHA_)5
zgX=Xtdg?tf^?&%x)NQ*9be6c9d5Cu#IKAFgqI7;|TU+e6&L!6p{@=9E-q38xwf^9_
zMHg8AGoHzt%(l~b-p1C78wr2dc-Yj;{Qn+de$MR1vh4U>D+ZSZ2?tV59yrQWUuIxW
zGQZi;^_tDP@Y$Rv`p>=z?=+~J{oz1s>+-EkT9NV2*LSJyiDaqoQ`_@TU0!_+n;(z;
z3|~KygHfql3nhH^Xl~nb?Ydf~fnR}a|A8E)hbA-shA^9m)XsH_X4Xi^EjM?MQ@iJU
zD~hQvX|wUC!!M_}Tu3|ox%=L{i&GwaJ{n%fo;&S%)Y5JHqVpEEmCJp1l*%<+E9lU$
zPUYYfb>}6LfBt$*y7|?LvA#j*QDVikW5zFL2F9oLzujdRbY`-i?+YH)6T%zR=d??u
ztE5?9`Ln>vk>jQY$G5{5g3KTJDXp2A=D4jjA*;11u<>!Rvw=c^=$k(Eo-kkG-Q2le
z`3&4Y>;E5*Iq9^J`{BDSafM~YiTX(es**D_*JVar5m04T?I~<LcFAz|nThp*-Jx@?
z<qNfx1a4WQm3!fYX@$|rl^5HVXRpZJ_RD`a^EUyNZ)J01=kWY`?_bsa=1Iv3KfS)b
z8wZbmD7j+)a^Cm8YIWz;jukWAWiMLEK4rU5!M5Oy#){^Wy0eRoyl)iR6f6Dy>9^Nr
zl9$ARth9yR&PnZ-<$Fuw9>jkOi*;k1Q6HFT^M<$0Re9f?TepIe7geu*7kF{?yxB85
z#IG7NAAfyT_Wr$lS$j@=FIv*B{q3~KWaa68pX-WjYbB3eI$&IJdP!`0``&VPad+o$
zM}PhOE57=Mth3|NFFl%>y{hNlW^CP?xL#t{k4b?qoZdOEmCQZR`qe>l(gmBR{sJbk
z+vX%rt2gAHE;2vOC}V{V!z9@%i_Sv~vbMSv*Zd9CqkiyJnCFB}zSARaFq2cK<hrNK
zVM~s1{x_dA6RvCd$j=CN{?7mYb;zcqSF*+PgS*zx`Wh1}EKqDYL+gmp<qex-8CdNv
z*PhuM&0y=P80xlvMLDBEsd}PBrOuD@5|{V0c`GOw{jNX!;l~QSOFNf}f3CJ&l4nzv
zcXQ+O!>9VfEBv^QEkDR$Qr7jT>iXq5w?mt9|HKsWelyYMc*)XwpZ9E`TxWd4`c0lb
zF_X@y%=J_<PD>OpK5<a9zhCk2(|2;mlnU-w-kyBwp30T#w*u1x*XC6JcseUMOR9B;
z|C78>DdS_Z9UlJ*>Z`*hp5-_uD9)qYTH<fhk?8$sm1*gZvZ*sK&hqKGx~s(HL8#ij
z6FJ?E+k%Y@;`$C$GB5h0$h6&mS8Ca|&95Ha$!O!X<eixucr53-iu+C*SGP~e7gM_P
z=Ig$6UbFiAwc86zx8D3YbKw<NqxE|w*v{FqaejAH*yh@%VPv>N@l<L(n^f~Udy(l@
z{z54k$+q)Pn<~9sviR(z?q!F5yyxp<n<Da0KyudnPd|!NFYI$lv`IL%>hL_y8Qjn8
zU5zxqhkXd)d(WS`?uxOwiyixpQ(O4Y@h@oob+It(=e6R$n{yg|X^Fl#E~+#!@<8ah
zODCd^p5t(v<hJTU4@2yFhAW&-tV`<e$#Gs-_0B4B#fy2lr?qy4s|i>dO7LE_)hs_z
zdQjamYNp|njw8m!j~o64zrFlRAY$=>kNgK+7iFs}Y;>LE?U2{~Z;8mGTaxv)K5UJd
zCF>{N?mG~%@_kTU?b*n#blwe{r!`0{dG4d)z$;e0!LYp{@#urqwetR|msGyRJT#J3
zs;@hwccA~&fvSxS6D?PM&E?<5BKJmp=VQB{;_AjmaUw=DZD#SfuW^(3n;^6)_+y8k
zLg2cDt=xRac$cj`dvZ~-T=%rc@pE2;99j7L)6DJv_t&^t6iTi>mH6Q8T#lex^ZtJu
z3YIKllnt4-r{U3W=51l0=AFJIxMWA7Xw}+Rvx291)F*0}ZQ+0F?DAz+HSgvhKlnnV
z+{$<FW+?daEo81~&0*y}$M-9)%O1M${+xgRO?k2GO?MnQmY(xX`+KlJd=uMzyV@6X
zzu%A-UHq@Hfn$S~+OF#*+dh7u;$D8>hxsGtRYIaq7PdCun0Ss~He71=+R{?v|4$k!
z3cNYfKJgyA)$rf6-j#nwtbW&_7Z&qYHH$ChJ}tB=^swkT*4>#b+wAvQi|`#g<+Hfp
zLq$Qw9s8I3ZO_>cUoNiwWAWH-&A}U&_>T$sTj`W)Xj-mVnKmOUF(oKaUS?9WpYL4G
zgVPrB-kx6Y(J#u$r^NaBx3{tXC!}r)7IgeRdBcUf-R?@ITR&FL{o7mru--oUf$?!=
zE?$AChSG%xoGxd)JFqH};i#TAZ<yTabG5mf&*sX!e=Hz#>fJkzr?pi!yWY&_*RMLx
z{`~O8n?GMZbS<}#lKYcfQdD(m^D7I#HbuX$PiAfTc9c_W<%YeE?T_tV6fSO_lV8JW
z_RXa9a?GI}QFaZB-T9ZeMEjP?>D5m>VzuAm6|Y+}|KH7<|DF7O@#Mk6^I0>PG;(X?
z+J3BTU;d?1!&v=NmBx#hCrL`yyBcDYmj7I(v*cgFJO}>2dNnH^d8vk-2=9Kg*kfVQ
z^7j7gwz3mgu0-8<qob66X6n_Db3Db1;%5lW5bm3BGjQMPt@o9@jovIfRk?oR_q5tV
z^?DaW@y$_geSv9qR$Z5!xtaoJbZq8&yI0#NbK=_*ygOxf>du{-Ba$v&wP>-c&7SB9
z?qV;udA|Bo5#!sX+azM|daubM$oZfgkE4Of!-*LOroUNiR~Z(QS9ZmqX~Vp)Uk+>T
z%)RJvYlHR-hfNVb9A62&-uyai8EdVZpR-2XCkCtfz7Ic@c5ZfE{pr!nl&1=pbmawC
zD2a9Zr81~R6#mn2>W!W7ylzhc)6>~S2d{**zEOw?Q?;A)Zo9ym#g(fT-d%X<wo`7X
z%`4t;v&yTP%{Qgb8YLDl-nY;_BIO$ArAbBEb}3ODTa)aJS})8o`Fcj9DE*Vc<mElW
z6P>0`Ua?A;cXR#T5AJ!h>f9PRl#84T^`x7Z>{Akbed+4`Rn4M?QOfMImaYrRer6_l
zHq=XWNB2&T<d@%+_dj)W=r~oVXMc2~er9ueUf@IhCqGNtBP4k8_hwJrBKTy5SZ<lZ
zss40}IZ{rN7o!r7dmc+XR^RN@utT|Ml1F&P^)_|KD=!-yomxfe7l|%gmZ#)-k1c=E
z<W18b?VI`LXZwVMXYV|{{_@JUE!Wm8d#9jdwEI_(WW~F->qf%Abu%YEc(PHWK{|Tw
zo<{+zG;+M2y_^&jH=%n)i~8oEjYdogAI;9x2!4FYQ8Q)w4Qbuq-d|LI^wlq}%3ges
z$LEpO<qdE0SBc4#)Jrk2Do;+X-zUDH@c9}8Ce!}I3Ll$7GMH|k;fcI+Y@ta(*kb1I
zY?p(tYt3da{P1&Cui}zT{5@e}EdfvYkJa8-YA^6H-NEUz$S&<i1%;)CyBD;ba*c>_
zxXpX{nTq%`=ZzMd)Svx*XM4js^oF(So4Lmm?AITvi#t^JPvVVu=nZ|Z8~Sq1e>c^0
z{Z8fl{WN()d}!i+t;GFRJl|exy}7RX=6e6Zy5QEo%Ub@bwf{}tTNFBl-)l9~><GoR
z>1(*<+*J;5aXjL3BXL7+>$zQzTKpCk2+#cWLN#%}P*NtZ*d?2V8N1Z1uY6%!?0ZgB
zX2K`mRZH~_6iiZLc~Iy0&eAHnv`A{E@)_X?&h=B`w;aFZ{4YA%Jg;nD;@cV1?>trN
z;4)lw`mdACmjv^M)U5wehFMDCoIzW6%v!iD@I!&{FU@=Rw_E3U$9SKgd;5-a+QE0X
zDn7mc)xWHLPTs6DK2?uBS^r)t-gt4rbpKT+(>H}FD4Wj{dGWPyl456BwRh^FV~5}F
zjW?4}WKE0euK!~oB;3}r@s3OJ>Kwt#6K47^n}6O*J3M7((UtVoIVSf_gXQCd517xm
z)%C6I(7N!48B2xvB9`u5_4m2OEt{}Ui*HG5Ki$>jD7>TVpgWT`bL`0tIqRC1E)#tt
zwIcM69arf3zNu$cebb7$xUDHxct_X$c4qrS7t@mOzR%h`duRQ^`o&lK7KyAc38-?|
zW0bf`^E+2lAaC{R&9@K56>JSSGI!&itlB@KIm=cXbx5-HRtFz1RhCoUyEe^6;*sS?
zF<I|!_5Ah<wlz^#^R}t{40`o}+s>Am`Lc-ML&j@b-={n?i)jh*j?36?y(~kzXBuPj
zwfai#oXMO2``ll@DXq4;*QEYa@wHX@%NK^$=Dk=KV$<V$Eb(x<b{WGXp8W?by274x
zmRtJuyq3D@V}5p5|3romH!a^8{_<h%a=!Du^}^aDnD3p?4RaS_u2bDBsK8U9Y#I6T
zJMR~r;>f4xd2^KWBi}CL{V?^*%<oq{`-=olX<X%WeR$%{>Du(PO$D#g+tW7HGram2
zy!o}km#b3?Zu&P`%hkVaYkaNR*8Jl&-?_SvPu}?3nN|N;7_l!%xqIp_pVb;C=F8;z
z?olb9uvBZozdc@sfp&|g$Z+c(zu|u6QebTxQ&;LrMwbY^s`^7#ldT=Tt%xY_5#6xp
z5zBg)SoNaNg)Tyy3LCHfaNPQ8>eZs<2N~+M(_cKh`u*zPT{~7wp1SqB{?y}~(54Cc
z3H-$z+SOs#nb*WkE1ID2^>6hl?G<c`x<8#erOma&zxTuZ=XTfcN3g4{H<_@<)0(Mu
z|Le7D-kW5Vu5fEzrZ2L5b?b^Fm!2hT`}J$h)`E8{0{r*<Dti5ZyX@#DnOI?G29xz0
zzMSjSJAAQT_3&TknqqGDX>3cPyzIKIH{4kya(2>D&AmQ15`@{$t35n<<YP_E?)8pV
zhFq3QL&do*TNCHA^(1F9mHhTF<=VY_;^U(-t0gZS%AJwFuF>xLO`Bff%}iQtSDzi=
zd30mur&Hy|U96V-qblYEfAI1SIv3Twy?6KL<t5p-_*dziF|98&&Yv$@wQAq~T~1ny
zgDf@fRzG%rw>^dDzWlCFJ8p+svwQ7)Cp<Ud$I6qA%KxuwT+`b*>y)DL%4ZIzXM}S9
zHd(N>euCOV8FNeK;>wa%>G`eRH`3V3FI`JsBawWLcMV5LiSM=fD`bVI^`AYFqrB})
z!rTXw7F;*Ye0km}VcE&5i24O5F0l6G<>%jI%8A+~^3?bU(*ljAb*y&XA0BruI#ej(
z`hw?!*r&wqg_mXpIP9JoY;?EtVSV8X1(WMPStg}!xT9O8sxOky&1UhNODRp|ra|N$
zm(NCpl7<ss)C;Xxb@huuv9Yh?`{-A%cpLSe{j)hWN%ynn>kV&f4&DhXEMK*ze)Fuu
zq1Q6|_IzKxb;TFf1wwzA>Sk}7JN4^wk#?7gKz$*b53$oOE`DXdImzFY`O`zI*<7Z}
zSI6-?T(UX7$*=h2!7HEixox(E8Ry3wJFV~_V1?b~HJ<qro1-31m%9_2wM(G-i1&7-
z%0*05ZfJ<|9`Wvb)GHPenL0z$*}z)6r}bYwTaSb0+o`LVm#w>d#BV42l$v$7emzOI
zcyMy12RCbbR@Jr{fsa=*tnPm0yH)Xk+Tw_qediKlFEV!Q=+&Q)BB>s<_Ib8z(NwcX
z3s${q<qBJ1lDhp<DA!}Y?N^&jUh!=fyEV=5`1JQK#?tLQ;uQy`sVNz*QkI=o?OH5r
zS$2K1?xcDhZz+|$>GvYUzE-b(f3n5qh_CM4pf2{CzH2`Q+`Do~_%Yu*#|PG-53E%`
z%yn<HU(Zw@$5j7M<AZqU1AVUt`f{xQHgWw)<^1z>@qzfz#{F82`>RBLyw>_~UG>BD
zex~|h)_==b{w-sfS6)<juv^1^`sdt36W^?i>iAmvV}Hf%`}I1D4=k;E?2;DPsl~nI
z_|1H)7bT9SFM}4W?TMJ{w1s=is#(j{W-iTNJTdIA41;0lx=$zevMhKt>urzM^nEA8
zPxor3xXj#c6#ICu#Qg2+P8r;6tqqe4tuj?tPnZ??aZ&uVtxNWux!}7~gmY7qVut4<
zv;DC@7M{+{K0is+>Cqb5_<FvB^LY*XR(@|hbSwYy{xAOR{{-*9ERGJi@Lc^-<?Wz?
z#U0z%UYq`7=HC1N?!Bvde_{Xcx$pfSIRF0r@B6p!ezLQo!*-f=Mu@V1{KX;ngK6QJ
z+=?aH{a0eWHtMZpGhWDbb&VZYG0zju_Y0+RigzD8cdq)qd-LYS{|ZWOSih3*-&N0^
zez^N{9Gm|8D2_Gv^73C_w%WNX<Y~Bd`I;4BXD7H9-<0e*s1v(rN~B3neB%j+3?a+7
zDo!uPFY{aKb{tt1)w`hM+A%&CPjBA*x0~YAGuS1Pt}A?AU#+GV%9U+1HEf06PdUB$
z7AyIGFT9hj%+5XG+YQI)Ew5+G%GG#VzA-vd@7SX2{rfTNvRdKWyKIgvs{EtbGEw8`
zK8v4!pM1G|^2MhId+I-Y>p1mdDnmf&2KJ2_{2QKZec11_Cdg)jU&``1yeHT`*gk6c
zd8aWp(dh8}D~d<dUG~nYd{I-p>RpB}_j$n==1Nm8eQ1r?nqagy#m|BF|4%P{_08}9
zUMsQ}%n0bJPssKCbA)3>{i5du^}&7_+1d52V*cl=zA*VLJNh<DSIXOrn<Hv(&`B#N
z(LJ$oRu3L1)y}>x?%vU-qZMM$byee!*ma4rmg{qTZU5YqDX`|7{oox}eA>e;=A|`l
zI}GY&rmm~lEWY83*V2XFax)*h8vRS-+;E&l@GncZ{QdK4%jyr!G(EXGX^nR+&vDax
z%Pt0P+2Fw@lKf%DRoBqRmFn;IC6)g1)H(H;p<463hV0MJ&Nh<fud{YDEEFxv+mJ1D
z_{*y|FN1Hi9FMrw&oMt+CRUtp-M)9B<x^h2IB#;~-qV8@j~?96p3gluM&|pu-?3X<
z*G-=us1&{7q*S>1(PtM~_3Picmr6GLlU2EWA=ggUSofgbkDOE?*P7b&6bYa1y@!?8
zwb{HEVvi}2y?tP_l1+tiuiB)tO}q12O!sD<Hj=!S7`<YTdfQ>;sV{dwI8#3JXaCOq
zhcD+>vd(Y)vM7AX3A?a~f75oyYR=zSAQs74{x&UL^r_!GA(axr8s0-os~nB$({!h?
zZ4!^&rgA}edZ3i_`d0_83EfvwoB4i~jzaoUa{;M+_31y;t*ux*41K0Zv^-zsIwd&G
zKXeBBxr5hF?^9xW@BAZm6EolT{twk>diG4(z&qvGce8IM*4tdq2OTf7_P-J5%At98
zon?ah{r4wV)y=KhU$!tlJ$3(~E7nU_{+|$V>h1ZD>0J*0|IO7ooZqq9SzoN{%J#k`
zUTZyB)^A=ksjkDcbi((oSA>~dSG+j7K6{Pi{jTh-fA|h*`3HQG+P3r8OZ|cpp-mg*
zkCkkG>2v)*|70#H2WAWBzngufo-;9}<xe(~)nrrX{THCnyE#>smxZrtmx0sKx?`F*
z*%%o9i%o7&bgb`C{~loB{5PN!bq?TdM0EabGm$#|3;zpVCFX9nESqE&n;6Y@C&ahc
zYSTmSUEJFmre(}t;j>C5^?LQ4_czzy(!XgrCB?eisQduin}wAHDwCdDfA7B0@_M!L
zjwh3{#SUjEPI5V6sZwYq{^?<}TFi=+#Ybxr>mR;6DtO@L$(J`bD~cB_e8h3juxdtO
zY_p$Cvvs;d@!_vs?xu_0cTVs=oS2w<X~p&HuS;|FF3-C3xoS@C%wIO0+1$H(9vaQK
zqR(!-h<nP@3k4gTxMp<Dke)EdJwepRQld?!L2^dVeVP3&$tn%ue^<BjuUqeyzq?u6
zUgAEFx@~<ui(H7u@yBz^F7xsPA6b3Jw)XQa`B(wZn{m&-e&t&$ymkgpVB7g7*Gsi8
zCJ8s+d$LKoV(PUmz8&6rx;`@<*}M+fluuBrso3=_<)xNNlxt>&ujq}SrI+L!51F=n
zSz&&Bzt&0L)pohlIj3w?-ubU|TIiPuiRFSfTQU>Hz4Kf-{?rFIO-yW=w9`j5Xz$l*
z<|*nz+6HC9#qUo}X_bE_^>8s;&DUFhO%)Rb7n+}&?C%?4)VuLkMcaA*TWgO-?%sds
zgK!OR7F*dt<K+i3ly!e!S@pQFoj)q`PTtW)Z#Ne(Zk!-vdLUPkch$MM=e8uZY+S<1
zB)PBXnM3qLHx->%i4C4z^^VHVCiSET6ke&&T9a1A?B$*zWtCKM$YgUyM33O%=}IAn
zlP1e%T{z^TF!4iq&n2binHP>NiZhE5C|B<_n6N0lqs2%erEtbEj+Z7Tt{iQrB7$!_
zmt=Z=(O@{W-7P;wOQ+CL;>%{I|Awnge*GxSnH{<yemz&*w`UI@E9*zs+SHf-{#;Z4
zyX?u5q+2(2%+Kx<Fz}k}l6gtKa{UCu*}E2S8Q$o-_#%RBLe^2)fM&j}YjVqD8n(Xr
z;qm%v(%-$@M|Z!rFJmtkXRq9oSN>q7&-CCD9xGEJW1TpWZ>|yPe%7}pm7BEXo%w#!
z@~BUp9e2%@(~@Bde~(Y`)PD2q#WeA<`ZmY&CzZB%w4_Q!PYl?hYw$-P^ZBg(#VK;P
zjF(PtU11+v-gfug>UsY+m*0KqTcf_|^QpL&v~4F3JrMIPt2!0CBbiH~S;joUd*AYX
zULL$>SUO*~%BVz&p3R&zBR7Ea409A;VAym9r*$G>zvsqwFWSjoqut^7reU+sgJ&z)
z^c?HIo!IM>vq|$?%Z&3EmaSatxcyl6fikw;Q_mRPn{bE6KwyX146hAIg|nW{aQQC1
zddh3v?Jl>f7WW-x{;!(*|M$783!W!WKV>n|RjJ~SVd%D(%cYF9tKEEO9Nn|M-mxUF
zCeGSk(O&H7A=bT(GsC<O$et<Xv3C{_^7Hpwb#9*V+3)q6?#(^A*S_xeT&?d>OK;3x
zzUSg9^|#kd!XB~<HRtbrnR>`n@V;vGw2Utu3TJbjKYMJs7Lsm~-;uiUs!Ca(n9(D(
zIU?)sd{mB3)YN}#AM*0^yU$B+)vx>(zv}PwtpESleEV_x?3d)DNBXxm9*fX9`eNDL
z2yex@-4S=rT~Q9n4W3djXLNR5#e*xo!bLAP^sKla_HYN+{g8!mt?O5R=sxV`dhuw6
zhRIap%y%+oq1t@6xBTwkb<Ogt)E_UCf-c`fdjr0n{`9>5*12>0RU`M`RQqZFBIl{^
z+9hjazo;Lqxbf9}x%u96+WVi|t=lxs#qH$&$tPA7RNY^GQ|$2@g=04zd(zqK4d=-o
zsi+fp{L``LbF;*AcEdQCBNc@Lk9Rjq+?PF4Q7Q2FsUy$&qKD_YKmBfcYgwNCAk@v~
z*^P#nnYu4DW?tiN{HvMGSGeZdQ5Hwb+0S|J9)IvtKw5m-smL(%pGF&JzuNZV(wc^?
zJ*u2x-YrWHZF?H5EnINt=e^ZEH<wp`E81B9ks-k`dc_Hgf{AzU-<g@Tg3(~7X4Vav
z<;*j=r)_TzQoOT1eCPLTspU%_-z|Raw7xm7pi;PGU5!a`A+J;GLY|L%@9(X#{-#wM
zes|N&C13WXTfB?2c-U1Gte+;FHN9`oo%f4B&XW+&m|b*G{ow8e|Lt~YM(qlpd4fM^
z?bB^v4o|LMe^xl@*(#g8Qw((qelgeIko?|mJtryT&Z8MltM;?Xl(Z@Tf40h6YGUNa
zv;2Fy)|)c9t}L70&2wA*-~F!^?AIFV4yD#9War*kwDG2Qs%B66m&gw<>ZbKw^}Qf}
zKjzCX<^Nxw7rnjnX!|k828p(fi@G<oSatWA_n+GP;PRWRlE3Rum~p6u|J%?#@!9Dd
zzbhhdWZcct55(~J9cJI0S5v@i7G(2y#`}Wl^+&f%I;++H;N@%+c}{7*cPq~DMQ6I%
zv&?AzSK#sQj9qKPd+Fr(u7?T>B0F3nic_3|)%yQwo<85Jyf1x@^`U@&`OT|M9>4!^
zdaBNh)TmVkK3|^~{16WC=7!CVm+vx|tfLvg-UO)+H#cieX5~AKGG#tlMPHj~Z{OrV
zeQTy`;*<OI?Ll?yd3_nCZ&H)r>Ps>y^iB@c7oRL|pu+S)ZnCR^fdXoU%fMj9Ai)3v
zj0_A6TN+K|Ckq;ya%bjchK8^*Fn6ebpS)3DMxlI{fm6MlV$wSX28Jp|1_mn>O|@#1
z1q~gUn;?oO7aGbj-B+JH(J+EZU3>Ct!*J#a+6<HZ^<*Y987WO}Hj-ohugx%dpPty{
MT}Enb89E@_0a%8{5dZ)H

diff --git a/rules_shipping.php b/rules_shipping.php
index e11f970..6c3265d 100644
--- a/rules_shipping.php
+++ b/rules_shipping.php
@@ -226,6 +226,7 @@ class plgVmShipmentRules_Shipping extends vmPSPlugin {
 				$method->matched_rule = $r;
 				$method->rule_name = $r->name;
 				$method->cost = $r->getShippingCosts($cartvals);
+				$method->includes_tax = $r->includes_tax;
 				return $method->cost;
 			}
 		}
@@ -234,6 +235,57 @@ class plgVmShipmentRules_Shipping extends vmPSPlugin {
 		return 0;
 	}
 
+	/**
+	 * update the plugin cart_prices (
+	 *
+	 * @author Valérie Isaksen (original), Reinhold Kainhofer (tax calculations from shippingWithTax)
+	 *
+	 * @param $cart_prices: $cart_prices['salesPricePayment'] and $cart_prices['paymentTax'] updated. Displayed in the cart.
+	 * @param $value :   fee
+	 * @param $tax_id :  tax id
+	 */
+
+	function setCartPrices (VirtueMartCart $cart, &$cart_prices, $method) {
+
+		if (!class_exists ('calculationHelper')) {
+			require(JPATH_VM_ADMINISTRATOR . DS . 'helpers' . DS . 'calculationh.php');
+		}
+
+		$calculator = calculationHelper::getInstance ();
+
+		$value = $calculator->roundInternal ($this->getCosts ($cart, $method, $cart_prices), 'salesPrice');
+
+		$_psType = ucfirst ($this->_psType);
+		$cart_prices[$this->_psType . 'Value'] = $value;
+
+		$taxrules = array();
+		if (!empty($method->tax_id)) {
+			$cart_prices[$this->_psType . '_calc_id'] = $method->tax_id;
+
+			$db = JFactory::getDBO ();
+			$q = 'SELECT * FROM #__virtuemart_calcs WHERE `virtuemart_calc_id`="' . $method->tax_id . '" ';
+			$db->setQuery ($q);
+			$taxrules = $db->loadAssocList ();
+		}
+
+		if (count ($taxrules) > 0) {
+			if ($method->includes_tax) {
+				$cart_prices['salesPrice' . $_psType] = $calculator->roundInternal ($cart_prices[$this->_psType . 'Value'], 'salesPrice');
+				// Calculate the tax from the final sales price:
+				$calculator->setRevert (true);
+				$cart_prices[$this->_psType . 'Tax'] = $cart_prices['salesPrice' . $_psType] - $calculator->roundInternal ($calculator->executeCalculation($taxrules, $cart_prices[$this->_psType . 'Value'], true));
+				$calculator->setRevert (false);
+			} else {
+				$cart_prices['salesPrice' . $_psType] = $calculator->roundInternal ($calculator->executeCalculation ($taxrules, $cart_prices[$this->_psType . 'Value']), 'salesPrice');
+				$cart_prices[$this->_psType . 'Tax'] = $calculator->roundInternal (($cart_prices['salesPrice' . $_psType] - $cart_prices[$this->_psType . 'Value']), 'salesPrice');
+			}
+			$cart_prices[$this->_psType . '_calc_id'] = $taxrules[0]['virtuemart_calc_id'];
+		} else {
+			$cart_prices['salesPrice' . $_psType] = $value;
+			$cart_prices[$this->_psType . 'Tax'] = 0;
+			$cart_prices[$this->_psType . '_calc_id'] = 0;
+		}
+	}
 
 	private function parseMethodRule ($rulestring, $countries, $tax, &$method) {
 		$rules1 = preg_split("/(\r\n|\n|\r)/", $rulestring);
@@ -478,7 +530,7 @@ class ShippingRule {
 	var $tax_id = 0;
 	var $conditions = array();
 	var $shipping = 0;
-	var $shippingWithTax = 0;
+	var $includes_tax = 0;
 	var $name = '';
 	
 	function __construct ($rule, $countries, $tax_id) {
@@ -495,7 +547,7 @@ class ShippingRule {
 	function handleAssignment ($variable, $value, $rulepart) {
 		switch ($variable) {
 			case 'shipping': $this->shipping = $this->parseShippingTerm($value); break;
-			case 'shippingwithtax': $this->shippingWithTax = $this->parseShippingTerm($value); break;
+			case 'shippingwithtax': $this->shipping = $this->parseShippingTerm($value); $this->includes_tax = True; break;
 			case 'name': $this->name = $value; break;
 			default: JFactory::getApplication()->enqueueMessage(JText::sprintf('VMSHIPMENT_RULES_UNKNOWN_VARIABLE', $variable, $rulepart), 'error');
 		}
-- 
GitLab