Acme - Custom Packaging Fees
<mvt:comment>
| PACKAGING FEES
| Reads customfields: sheet_fee and tube_rod_fee, based on the variant NOT MASTER PRODUCT
| Rod fees: $25 for orders under $500. Orders over $500 will increase $25 every $500. Example: Order is 1,500 the fee will be $75.
| Packaging fee will take the HIGHEST fee. If Rod fee is higher, it will take over.
| Added as an UPCHARGE labeled "Packaging Fee". This is reset on basket page.
</mvt:comment>
<mvt:assign name="l.settings:basket:sheet_fee" value="0" />
<mvt:assign name="l.settings:basket:rod_tube_fee" value="0" />
<mvt:foreach iterator="group" array="basket:groups">
<mvt:if expr="l.settings:group:parts[1]:code">
<mvt:item name="customfields" param="Read_Product_Code( l.settings:group:parts[1]:code, 'sheet_fee, tube_rod_fee', l.settings:fees )" />
<mvt:if expr="l.settings:fees:sheet_fee GT l.settings:basket:sheet_fee">
<mvt:assign name="l.settings:basket:sheet_fee" value="l.settings:fees:sheet_fee" />
</mvt:if>
<mvt:if expr="l.settings:fees:tube_rod_fee">
<mvt:assign name="l.settings:basket:rod_tube_fee" value="l.settings:fees:tube_rod_fee" />
</mvt:if>
</mvt:if>
</mvt:foreach>
<mvt:assign name="l.settings:basket:total500" value="floor(l.settings:basket:total / 500)" />
<mvt:assign name="l.settings:basket:totalrodtubefee" value="l.settings:basket:rod_tube_fee * l.settings:basket:total500" />
<mvt:if expr="l.settings:basket:totalrodtubefee NE 0 OR l.settings:basket:sheet_fee NE 0">
<mvt:if expr="l.settings:basket:totalrodtubefee GT l.settings:basket:sheet_fee">
<mvt:item name="toolkit" param="upcharge|'Packaging Fee'|l.all_settings:basket:totalrodtubefee|1" />
<mvt:assign name="l.settings:basket:packagingfee" value="l.settings:basket:totalrodtubefee" />
<mvt:else>
<mvt:item name="toolkit" param="upcharge|'Packaging Fee'|l.all_settings:basket:sheet_fee|1" />
<mvt:assign name="l.settings:basket:packagingfee" value="l.settings:basket:sheet_fee" />
</mvt:if>
</mvt:if>