<template id="search" name="Search hidden fields">
<input type="hidden" name="category" t-att-value="search.get('category') or ''"/>
- <input type="hidden" name="filter_domain" t-att-value="search.get('filter_domain') or ''"/>
+ <input type="hidden" name="filters" t-att-value="search.get('filters') or ''"/>
<input type="text" name="search" class="search-query form-control" placeholder="Search..." t-att-value="search.get('search') or ''"/>
</template>
<div class="ribbon">Promo</div>
</div>
<div class="oe_product_description">
- <a t-href="/shop/product/#{ slug(product) }/" t-keep-query="category,search,filter_domain">
+ <a t-href="/shop/product/#{ slug(product) }/" t-keep-query="category,search,filters">
<b t-field="product.name"/>
</a>
</div>
</b>
</div>
<div class="oe_product_image text-center">
- <a t-href="/shop/product/#{ product.id }/" t-keep-query="category,search,filter_domain">
+ <a t-href="/shop/product/#{ product.id }/" t-keep-query="category,search,filters">
<span t-field="product.image" t-field-options='{"widget": "image"}'/>
</a>
</div>
<div class="col-md-12" id="products_grid">
<table width="100%">
<tbody>
+ <tr>
+ <td t-foreach="range(0,rows)" t-as="row" t-attf-width="#{100/rows}%"></td>
+ </tr>
<tr t-foreach="bins" t-as="tr_product">
<t t-foreach="tr_product" t-as="td_product">
<t t-if="td_product">
<t t-set="product" t-value="td_product['product']"/>
<td t-att-colspan="td_product['x']"
- t-attf-width="#{td_product['x']*25}%"
t-att-rowspan="td_product['y']"
t-attf-class="oe_product oe-height-#{td_product['y']*2} #{ td_product['class'] }">
<!-- product -->
+ <template id="404">
+ <t t-call="website.layout">
+ <div id="wrap">
+ <div class="oe_structure oe_empty">
+ <div class="container">
+ <h1 class="mt32">Product not found!</h1>
+ <p>Sorry, this product is not available anymore.</p>
+ <p><a t-href="/shop/">Return to the product list.</a></p>
+ </div>
+ </div>
+ </div>
+ </t>
+ </template>
<template id="product" name="Product">
<t t-call="website.layout">
<div class="col-sm-5">
<ol class="breadcrumb">
<li><a href="/shop">Products</a></li>
- <li t-if="search.get('category')"><a t-href="/shop/" t-keep-query="category,search,filter_domain"><span t-field="category.name"/></a></li>
+ <li t-if="search.get('category')"><a t-href="/shop/" t-keep-query="category,search,filters"><span t-field="category.name"/></a></li>
<li class="active"><span t-field="product.name"/></li>
</ol>
</div><div class="col-sm-3">
<template id="products_attributes" inherit_option_id="website_sale.products" name="Product Filters and Attributes">
<xpath expr="//div[@id='products_grid_before']" position="inside">
- <form t-action="/shop/filter/" method="post" t-keep-query="category,search">
+ <form t-action="/shop/filters/" method="post" t-keep-query="category,search">
<ul class="nav nav-pills nav-stacked mt16">
<t t-set="attribute_ids" t-value="Ecommerce.get_attribute_ids()"/>
<t t-foreach="attribute_ids" t-as="attribute_id">
</t>
</ul>
<button class="btn btn-xs btn-primary mt16">Apply filter</button>
- <a t-href="/shop/" t-keep-query="category,search,add_filter" class="btn btn-xs btn-default mt16">Cancel filter</a>
+ <a t-href="/shop/" t-keep-query="category,search" class="btn btn-xs btn-default mt16">Cancel filter</a>
</form>
</xpath>
<xpath expr="//div[@id='products_grid_before']" position="attributes">
</div>
</div>
- <div class="js_payment mb64" t-if="not payment_acquirer_id and payments" id="payment_method">
+ <div class="js_payment mb64" t-if="acquirers" id="payment_method">
<h3>Choose your payment method</h3>
<div class="col-lg-5 col-sm-6">
- <t t-foreach="payments or []" t-as="payment">
- <label t-if="payment._content">
- <input t-att-value="payment.id" type="radio" name="payment_type"/> <span t-field="payment.name"/>
+ <t t-foreach="acquirers or []" t-as="acquirer">
+ <label t-if="acquirer.button" class="oe_sale_acquirer_logo" style="display: block;">
+ <input t-att-value="acquirer.id" type="radio" name="acquirer"/>
+ <img class="media-object" style="width: 60px; display: inline-block;"
+ t-att-title="acquirer.name"
+ t-att-src="'/payment_acquirer_%s/static/src/img/%s_icon.png' % (acquirer.name, acquirer.name)"/>
</label>
</t>
- <t t-foreach="payments" t-as="payment">
- <div t-att-data-id="payment.id" t-raw="payment._content" class="oe_payment_acquirer hidden"/>
- </t>
</div>
<div class="col-lg-3 col-sm-3">
- <button class="btn btn-primary pull-right">Pay Now !!!</button>
+ <t t-foreach="acquirers or []" t-as="acquirer">
+ <div t-att-data-id="acquirer.id" t-raw="acquirer.button" class="oe_sale_acquirer_button hidden"/>
+ </t>
</div>
</div>