{if $alpine}>
<{assign var="key" value=$key|default:'product'}>
<{capture name="sale_badge_text"}>
Math.round(((<{$key}>.sale_price-<{$key}>.price)*100)/<{$key}>.price)+'%';
<{/capture}>
<{include file="components/badge.html" class="" variant="onsale" xtext=$smarty.capture.sale_badge_text}>
<{include file="components/badge.html" class="" variant="new" text="New"|t}>
<{else}>
<{if $product}>
<{if $product->getExtensionValue('badge-1')}>
<{include file="components/badge.html" class="" variant="fewinstock" text=$product->getExtensionValue('badge-1')}>
<{/if}>
<{if $product->getExtensionValue('badge-2')}>
<{include file="components/badge.html" class="" variant="fewinstock" text=$product->getExtensionValue('badge-2')}>
<{/if}>
<{if $product->getExtensionValue('badge-3')}>
<{include file="components/badge.html" class="" variant="fewinstock" text=$product->getExtensionValue('badge-3')}>
<{/if}>
<{if $settings.product.enable_few_in_stock_badge && $product->getStockCount() > 0 && $product->getStockCount() <= $settings.product.few_in_stock_threshold}>
<{if $settings.product.show_stock_count}>
<{capture name="few_in_stock_badge_text"}>
<{t x=$product->getStockCount()}>Only {x} in stock<{/t}>
<{/capture}>
<{include file="components/badge.html" class="" variant="fewinstock" text=$smarty.capture.few_in_stock_badge_text}>
<{else}>
<{include file="components/badge.html" class="" variant="fewinstock" text="Few in stock"|t}>
<{/if}>
<{/if}>
<{if $product->hasBundleProducts()}>
<{capture name="bundle_badge_text"}>
<{t x=$product->getBundleProductsCount()|@count}>Bundle of {x}<{/t}>
<{/capture}>
<{include file="components/badge.html" class="" variant="bundle" text=$smarty.capture.bundle_badge_text}>
<{/if}>
<{assign var="discountIntervals" value=$product->getDiscountIntervals()}>
<{if $discountIntervals}>
<{include file="components/badge.html" class="" variant="volumediscount" text="Volume Discount"|t}>
<{/if}>
<{if $product->hasAttributePrice()}>
<{if $product->getLowestSalePrice() < $product->getLowestPrice()}>
<{math equation="((x - y) / x) * 100" x=$product->getLowestPrice() y=$product->getLowestSalePrice() assign="variantPercentSave"}>
<{capture name="sale_badge_text"}>
<{t}>Save from<{/t}> <{$variantPercentSave|number_format:0}>%
<{/capture}>
<{include file="components/badge.html" class="" variant="onsale" text=$smarty.capture.sale_badge_text}>
<{/if}>
<{else}>
<{assign var="sale_price" value=$product->getSalePrice()}>
<{if $sale_price}>
<{capture name="sale_badge_text"}>
<{t}>Save<{/t}> <{$product->getPercentSave()|number_format:0}>%
<{/capture}>
<{include file="components/badge.html" class="" variant="onsale" text=$smarty.capture.sale_badge_text}>
<{/if}>
<{/if}>
<{if $product->hasVariants() && $settings.badges.variant_enable}>
<{include file="components/badge.html" class="" variant="variant" text="Multiple variants"|t}>
<{/if}>
<{if $product->getOnlineHours() < 360 }>
<{include file="components/badge.html" class="" variant="new" text="New"|t}>
<{/if}>
<{/if}>
<{/if}>