{if $settings.checkout.enable_order_summary_upsell}> <{* Make a collection of related products from the basket. Limit this to 20. When showing the products, duplicates are filtered away *}> <{assign var="max" value=$max|default:6}> <{assign var="collectionMax" value=$max|default:20}> <{section name="i" loop=$basket}> <{* General assignments *}> <{assign var="product" value=$basket[i].product}> <{assign var="productId" value=$product->getProductId()}> <{* Add basket product id to string *}> <{if $basketProductIdsString != ""}> <{assign var="basketProductIdsString" value=$basketProductIdsString|cat:","}> <{/if}> <{assign var="basketProductIdsString" value=$basketProductIdsString|cat:$productId}> <{* Fetch products for basket item *}> <{if $upsellProducts && $upsellProducts|@count > 0}> <{math assign="count" equation="x-y" x=$collectionMax y=$upsellProducts|@count}> <{else}> <{assign var="count" value=$collectionMax}> <{/if}> <{assign var="items" value=$product->getRelatedProducts($count)}> <{if $count !== $collectionMax}> <{assign var="upsellProducts" value=$upsellProducts|@array_merge:$items}> <{else}> <{assign var="upsellProducts" value=$items}> <{/if}> <{/section}> <{* Transform basket_ids to array *}> <{assign var="basketProductIds" value=","|explode:$basketProductIdsString}> <{assign var="basketProductIds" value=$basketProductIds|@array_unique}> <{* Prepare variables to keep track of used id's *}> <{assign var="shownProductIdsString" value=""}> <{assign var="shownProductIds" value=","|explode:$shownProductIdsString}> <{* Loop over upsell products *}> <{if $upsellProducts && $upsellProducts|@count > 0}>
<{/if}> <{/if}>