first commit
This commit is contained in:
@@ -0,0 +1,252 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
|
||||
<section id="main" class="product-detail product-image-gallery product-image-gallery" itemscope itemtype="https://schema.org/Product">
|
||||
<meta itemprop="url" content="{$product.url}"><div class="row"><div class="col-md-6 col-lg-6 col-xl-6">
|
||||
{block name='page_content_container'}
|
||||
<section class="page-content" id="content" data-templatezoomtype="in" data-zoomposition="right" data-zoomwindowwidth="400" data-zoomwindowheight="400">
|
||||
{block name='page_content'}
|
||||
<div class="images-container">
|
||||
{block name='product_cover_thumbnails'}
|
||||
{if $isMobile && $dmobile_swipe}
|
||||
<div class="list-images-mobile">
|
||||
{foreach from=$product.images item=image}
|
||||
<div>
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}{if $aplazyload} lazy{/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
{if $aplazyload}data-src{else}src{/if}="{$image.bySize.large_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
{else}
|
||||
{block name='product_cover'}
|
||||
<div class="product-cover">
|
||||
{block name='product_flags'}
|
||||
<ul class="product-flags">
|
||||
{foreach from=$product.flags item=flag}
|
||||
<li class="product-flag {$flag.type}">{$flag.label}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/block}
|
||||
{if $product.cover}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid{if $aplazyload} lazy{/if}" {if $aplazyload}data-src{else}src{/if}="{$product.cover.bySize.large_default.url}" alt="{$product.cover.legend}" title="{$product.cover.legend}" itemprop="image">
|
||||
<div class="layer hidden-sm-down" data-toggle="modal" data-target="#product-modal">
|
||||
<i class="material-icons zoom-in"></i>
|
||||
</div>
|
||||
{else}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid{if $aplazyload} lazy{/if}" {if $aplazyload}data-src{else}src{/if}="{$urls.no_picture_image.bySize.large_default.url}" alt="{$product.name}" title="{$product.name}" itemprop="image">
|
||||
{/if}
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{block name='product_images'}
|
||||
<div id="thumb-gallery" class="product-thumb-images">
|
||||
{if $product.cover}
|
||||
{foreach from=$product.images item=image}
|
||||
<div class="thumb-container {if $image.id_image == $product.cover.id_image} active {/if}">
|
||||
<a href="javascript:void(0)" data-image="{$image.bySize.large_default.url}" data-zoom-image="{$image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}{if $aplazyload} lazy{/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
{if $aplazyload}data-src{else}src{/if}="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/foreach}
|
||||
{else}
|
||||
<div class="thumb-container">
|
||||
<a href="javascript:void(0)" data-image="{$urls.no_picture_image.bySize.large_default.url}" data-zoom-image="{$urls.no_picture_image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb img-fluid{if $aplazyload} lazy{/if}"
|
||||
data-image-medium-src="{$urls.no_picture_image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$urls.no_picture_image.bySize.large_default.url}"
|
||||
{if $aplazyload}data-src{else}src{/if}="{$urls.no_picture_image.bySize.home_default.url}"
|
||||
alt="{$product.name}"
|
||||
title="{$product.name}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
{if $product.images|@count > 1}
|
||||
<div class="arrows-product-fake slick-arrows">
|
||||
<button class="slick-prev slick-arrow" aria-label="Previous" type="button" >{l s='Previous' d='Shop.Theme.Catalog'}</button>
|
||||
<button class="slick-next slick-arrow" aria-label="Next" type="button">{l s='Next' d='Shop.Theme.Catalog'}</button>
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
{/if}
|
||||
{/block}
|
||||
{hook h='displayAfterProductThumbs'}
|
||||
</div>
|
||||
{/block}
|
||||
</section>
|
||||
{/block}
|
||||
|
||||
{block name='product_images_modal'}
|
||||
{include file='catalog/_partials/product-images-modal.tpl'}
|
||||
{/block}
|
||||
</div><div class="col-md-6 col-lg-6 col-xl-6">
|
||||
{block name='page_header_container'}
|
||||
{block name='page_header'}
|
||||
<h1 class="h1 product-detail-name" itemprop="name">{block name='page_title'}{$product.name}{/block}</h1>
|
||||
{/block}
|
||||
{/block}
|
||||
{block name='product_prices'}
|
||||
{include file='catalog/_partials/product-prices.tpl'}
|
||||
{/block}
|
||||
<div class="leo-more-cdown" data-idproduct="{$product.id_product}"></div>
|
||||
{block name='product_description_short'}
|
||||
<div id="product-description-short-{$product.id}" class="description-short" itemprop="description">{$product.description_short nofilter}</div>
|
||||
{/block}
|
||||
{if $product.is_customizable && count($product.customizations.fields)}
|
||||
{block name='product_customization'}
|
||||
{include file="catalog/_partials/product-customization.tpl" customizations=$product.customizations}
|
||||
{/block}
|
||||
{/if}
|
||||
<div class="product-actions">
|
||||
{block name='product_buy'}
|
||||
<form action="{$urls.pages.cart}" method="post" id="add-to-cart-or-refresh">
|
||||
<input type="hidden" name="token" value="{$static_token}">
|
||||
<input type="hidden" name="id_product" value="{$product.id}" id="product_page_product_id">
|
||||
<input type="hidden" name="id_customization" value="{$product.id_customization}" id="product_customization_id">
|
||||
|
||||
{block name='product_variants'}
|
||||
{include file='catalog/_partials/product-variants.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_pack'}
|
||||
{if $packItems}
|
||||
<section class="product-pack">
|
||||
<h3 class="h4">{l s='This pack contains' d='Shop.Theme.Catalog'}</h3>
|
||||
{foreach from=$packItems item="product_pack"}
|
||||
{block name='product_miniature'}
|
||||
{include file='catalog/_partials/miniatures/pack-product.tpl' product=$product_pack}
|
||||
{/block}
|
||||
{/foreach}
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
{block name='product_discounts'}
|
||||
{include file='catalog/_partials/product-discounts.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_add_to_cart'}
|
||||
{include file='catalog/_partials/product-add-to-cart.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_refresh'}
|
||||
<input class="product-refresh ps-hidden-by-js" name="refresh" type="submit" value="{l s='Refresh' d='Shop.Theme.Actions'}">
|
||||
{/block}
|
||||
</form>
|
||||
{/block}
|
||||
</div>
|
||||
{hook h='displayLeoProductReviewExtra' product=$product}
|
||||
{block name='product_additional_info'}
|
||||
{include file='catalog/_partials/product-additional-info.tpl'}
|
||||
{/block}
|
||||
{block name='hook_display_reassurance'}
|
||||
{hook h='displayReassurance'}
|
||||
{/block}
|
||||
</div><div class="col-md-12 col-lg-12 col-xl-12">
|
||||
{include file="sub/product_info/tab.tpl"}
|
||||
{block name='product_accessories'}
|
||||
{if $accessories}
|
||||
<section class="product-accessories clearfix">
|
||||
<h3 class="h5 products-section-title">{l s='You might also like' d='Shop.Theme.Catalog'}</h3>
|
||||
<div class="products">
|
||||
<div class="owl-row {if isset($productClassWidget)} {$productClassWidget}{/if}">
|
||||
<div id="category-products2">
|
||||
{foreach from=$accessories item="product_accessory"}
|
||||
<div class="item{if $smarty.foreach.mypLoop.index == 0} first{/if}">
|
||||
{block name='product_miniature'}
|
||||
{if isset($productProfileDefault) && $productProfileDefault}
|
||||
|
||||
{hook h='displayLeoProfileProduct' product=$product_accessory profile=$productProfileDefault}
|
||||
{else}
|
||||
{include file='catalog/_partials/miniatures/product.tpl' product=$product_accessory}
|
||||
{/if}
|
||||
{/block}
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
products_list_functions.push(
|
||||
function(){
|
||||
$('#category-products2').owlCarousel({
|
||||
{if isset($IS_RTL) && $IS_RTL}
|
||||
direction:'rtl',
|
||||
{else}
|
||||
direction:'ltr',
|
||||
{/if}
|
||||
items : 4,
|
||||
itemsCustom : false,
|
||||
itemsDesktop : [1200, 4],
|
||||
itemsDesktopSmall : [992, 3],
|
||||
itemsTablet : [768, 2],
|
||||
itemsTabletSmall : false,
|
||||
itemsMobile : [480, 1],
|
||||
singleItem : false, // true : show only 1 item
|
||||
itemsScaleUp : false,
|
||||
slideSpeed : 200, // change speed when drag and drop a item
|
||||
paginationSpeed :800, // change speed when go next page
|
||||
|
||||
autoPlay : false, // time to show each item
|
||||
stopOnHover : false,
|
||||
navigation : true,
|
||||
navigationText : ["‹", "›"],
|
||||
|
||||
scrollPerPage :true,
|
||||
responsive :true,
|
||||
|
||||
pagination : false,
|
||||
paginationNumbers : false,
|
||||
|
||||
addClassActive : true,
|
||||
|
||||
mouseDrag : true,
|
||||
touchDrag : true,
|
||||
|
||||
});
|
||||
}
|
||||
);
|
||||
|
||||
</script>
|
||||
{block name='product_footer'}
|
||||
{hook h='displayFooterProduct' product=$product category=$category}
|
||||
{/block}
|
||||
</div></div>
|
||||
{block name='page_footer_container'}
|
||||
<footer class="page-footer">
|
||||
{block name='page_footer'}
|
||||
<!-- Footer content -->
|
||||
{/block}
|
||||
</footer>
|
||||
{/block}
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,267 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
|
||||
<section id="main" class="product-detail product-image-thumbs-left product-image-thumbs product-thumbs-left" itemscope itemtype="https://schema.org/Product">
|
||||
<meta itemprop="url" content="{$product.url}"><div class="row"><div class="col-md-6 col-lg-6 col-xl-6">
|
||||
|
||||
{block name='page_content_container'}
|
||||
<section class="page-content" id="content" data-templateview="left" data-numberimage="5" data-numberimage1200="4" data-numberimage992="3" data-numberimage768="3" data-numberimage576="3" data-numberimage480="2" data-numberimage360="2" data-templatemodal="0" data-templatezoomtype="in_scrooll" data-zoomposition="right" data-zoomwindowwidth="400" data-zoomwindowheight="400">
|
||||
{block name='page_content'}
|
||||
<div class="images-container">
|
||||
{block name='product_cover_thumbnails'}
|
||||
{if $isMobile && $dmobile_swipe}
|
||||
<div class="list-images-mobile">
|
||||
{foreach from=$product.images item=image}
|
||||
<div>
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
src="{$image.bySize.large_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
{else}
|
||||
{block name='product_cover'}
|
||||
<div class="product-cover">
|
||||
{block name='product_flags'}
|
||||
<ul class="product-flags">
|
||||
{foreach from=$product.flags item=flag}
|
||||
<li class="product-flag {$flag.type}">{$flag.label}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/block}
|
||||
{if $product.cover}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid" src="{$product.cover.bySize.large_default.url}" alt="{$product.cover.legend}" title="{$product.cover.legend}" itemprop="image">
|
||||
<div class="layer hidden-sm-down" data-toggle="modal" data-target="#product-modal">
|
||||
<i class="material-icons zoom-in"></i>
|
||||
</div>
|
||||
{else}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid" src="{$urls.no_picture_image.bySize.large_default.url}" alt="{$product.name}" title="{$product.name}" itemprop="image">
|
||||
{/if}
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{block name='product_images'}
|
||||
<div id="thumb-gallery" class="product-thumb-images">
|
||||
{if $product.cover}
|
||||
{foreach from=$product.images item=image}
|
||||
<div class="thumb-container {if $image.id_image == $product.cover.id_image} active {/if}">
|
||||
<a href="javascript:void(0)" data-image="{$image.bySize.large_default.url}" data-zoom-image="{$image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/foreach}
|
||||
{else}
|
||||
<div class="thumb-container">
|
||||
<a href="javascript:void(0)" data-image="{$urls.no_picture_image.bySize.large_default.url}" data-zoom-image="{$urls.no_picture_image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb img-fluid"
|
||||
data-image-medium-src="{$urls.no_picture_image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$urls.no_picture_image.bySize.large_default.url}"
|
||||
src="{$urls.no_picture_image.bySize.home_default.url}"
|
||||
alt="{$product.name}"
|
||||
title="{$product.name}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
{if $product.images|@count > 1}
|
||||
<div class="arrows-product-fake slick-arrows">
|
||||
<button class="slick-prev slick-arrow" aria-label="Previous" type="button" >{l s='Previous' d='Shop.Theme.Catalog'}</button>
|
||||
<button class="slick-next slick-arrow" aria-label="Next" type="button">{l s='Next' d='Shop.Theme.Catalog'}</button>
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
{/if}
|
||||
{/block}
|
||||
{hook h='displayAfterProductThumbs'}
|
||||
</div>
|
||||
{/block}
|
||||
</section>
|
||||
{/block}
|
||||
|
||||
{block name='product_images_modal'}
|
||||
{include file='catalog/_partials/product-images-modal.tpl'}
|
||||
{/block}
|
||||
</div><div class="col-md-6 col-lg-6 col-xl-6">
|
||||
{block name='page_header_container'}
|
||||
{block name='page_header'}
|
||||
<h1 class="h1 product-detail-name" itemprop="name">{block name='page_title'}{$product.name}{/block}</h1>
|
||||
{/block}
|
||||
{/block}<div class="leo-more-cdown" data-idproduct="{$product.id_product}"></div>
|
||||
{block name='product_prices'}
|
||||
{include file='catalog/_partials/product-prices.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_description_short'}
|
||||
<div id="product-description-short-{$product.id}" class="description-short" itemprop="description">{$product.description_short nofilter}</div>
|
||||
{/block}
|
||||
{if $product.is_customizable && count($product.customizations.fields)}
|
||||
{block name='product_customization'}
|
||||
{include file="catalog/_partials/product-customization.tpl" customizations=$product.customizations}
|
||||
{/block}
|
||||
{/if}
|
||||
<div class="product-actions">
|
||||
{block name='product_buy'}
|
||||
<form action="{$urls.pages.cart}" method="post" id="add-to-cart-or-refresh">
|
||||
<input type="hidden" name="token" value="{$static_token}">
|
||||
<input type="hidden" name="id_product" value="{$product.id}" id="product_page_product_id">
|
||||
<input type="hidden" name="id_customization" value="{$product.id_customization}" id="product_customization_id">
|
||||
|
||||
{block name='product_variants'}
|
||||
{include file='catalog/_partials/product-variants.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_pack'}
|
||||
{if $packItems}
|
||||
<section class="product-pack">
|
||||
<h3 class="h4">{l s='This pack contains' d='Shop.Theme.Catalog'}</h3>
|
||||
{foreach from=$packItems item="product_pack"}
|
||||
{block name='product_miniature'}
|
||||
{include file='catalog/_partials/miniatures/pack-product.tpl' product=$product_pack}
|
||||
{/block}
|
||||
{/foreach}
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
{block name='product_discounts'}
|
||||
{include file='catalog/_partials/product-discounts.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_add_to_cart'}
|
||||
{include file='catalog/_partials/product-add-to-cart.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_refresh'}
|
||||
<input class="product-refresh ps-hidden-by-js" name="refresh" type="submit" value="{l s='Refresh' d='Shop.Theme.Actions'}">
|
||||
{/block}
|
||||
</form>
|
||||
{/block}
|
||||
</div>
|
||||
{hook h='displayLeoProductReviewExtra' product=$product}
|
||||
{block name='product_additional_info'}
|
||||
{include file='catalog/_partials/product-additional-info.tpl'}
|
||||
{/block}<div class="p-reference">
|
||||
{block name='product_reference'}
|
||||
{if isset($product.reference_to_display)}
|
||||
<div class="product-reference">
|
||||
<label class="label">{l s='Reference' d='Shop.Theme.Catalog'} </label>
|
||||
<span itemprop="sku">{$product.reference_to_display}</span>
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
{block name='product_quantities'}
|
||||
{if $product.show_quantities}
|
||||
<div class="product-quantities">
|
||||
<label class="label">{l s='In stock' d='Shop.Theme.Catalog'}</label>
|
||||
<span>{$product.quantity} {$product.quantity_label}</span>
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
</div>
|
||||
</div><div class="col-md-12 col-lg-12 col-xl-12">
|
||||
{include file="sub/product_info/tab.tpl"}
|
||||
{block name='product_accessories'}
|
||||
{if $accessories}
|
||||
<section class="product-accessories clearfix">
|
||||
<h3 class="h5 products-section-title">{l s='You might also like' d='Shop.Theme.Catalog'}</h3>
|
||||
<div class="products">
|
||||
<div class="owl-row {if isset($productClassWidget)} {$productClassWidget}{/if}">
|
||||
<div id="category-products2">
|
||||
{foreach from=$accessories item="product_accessory"}
|
||||
<div class="item{if $smarty.foreach.mypLoop.index == 0} first{/if}">
|
||||
{block name='product_miniature'}
|
||||
{if isset($productProfileDefault) && $productProfileDefault}
|
||||
|
||||
{hook h='displayLeoProfileProduct' product=$product_accessory profile=$productProfileDefault}
|
||||
{else}
|
||||
{include file='catalog/_partials/miniatures/product.tpl' product=$product_accessory}
|
||||
{/if}
|
||||
{/block}
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
products_list_functions.push(
|
||||
function(){
|
||||
$('#category-products2').owlCarousel({
|
||||
{if isset($IS_RTL) && $IS_RTL}
|
||||
direction:'rtl',
|
||||
{else}
|
||||
direction:'ltr',
|
||||
{/if}
|
||||
items : 4,
|
||||
itemsCustom : false,
|
||||
itemsDesktop : [1200, 4],
|
||||
itemsDesktopSmall : [992, 3],
|
||||
itemsTablet : [768, 2],
|
||||
itemsTabletSmall : false,
|
||||
itemsMobile : [480, 1],
|
||||
singleItem : false, // true : show only 1 item
|
||||
itemsScaleUp : false,
|
||||
slideSpeed : 200, // change speed when drag and drop a item
|
||||
paginationSpeed :800, // change speed when go next page
|
||||
|
||||
autoPlay : false, // time to show each item
|
||||
stopOnHover : false,
|
||||
navigation : true,
|
||||
navigationText : ["‹", "›"],
|
||||
|
||||
scrollPerPage :true,
|
||||
responsive :true,
|
||||
|
||||
pagination : false,
|
||||
paginationNumbers : false,
|
||||
|
||||
addClassActive : true,
|
||||
|
||||
mouseDrag : true,
|
||||
touchDrag : true,
|
||||
|
||||
});
|
||||
}
|
||||
);
|
||||
|
||||
</script>
|
||||
{block name='product_footer'}
|
||||
{hook h='displayFooterProduct' product=$product category=$category}
|
||||
{/block}
|
||||
</div></div>
|
||||
{block name='page_footer_container'}
|
||||
<footer class="page-footer">
|
||||
{block name='page_footer'}
|
||||
<!-- Footer content -->
|
||||
{/block}
|
||||
</footer>
|
||||
{/block}
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,253 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
|
||||
<section id="main" class="product-detail product-image-no-thumbs-fullwidth product-image-thumbs no-thumbs" itemscope itemtype="https://schema.org/Product">
|
||||
<meta itemprop="url" content="{$product.url}"><div class="row"><div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12 col-sp-12">
|
||||
|
||||
{block name='page_content_container'}
|
||||
<section class="page-content" id="content" data-templateview="none" data-numberimage="5" data-numberimage1200="5" data-numberimage992="4" data-numberimage768="3" data-numberimage576="3" data-numberimage480="2" data-numberimage360="2" data-templatemodal="1" data-templatezoomtype="none" data-zoomposition="right" data-zoomwindowwidth="400" data-zoomwindowheight="400">
|
||||
{block name='page_content'}
|
||||
<div class="images-container">
|
||||
{block name='product_cover_thumbnails'}
|
||||
{if $isMobile && $dmobile_swipe}
|
||||
<div class="list-images-mobile">
|
||||
{foreach from=$product.images item=image}
|
||||
<div>
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
src="{$image.bySize.large_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
{else}
|
||||
{block name='product_cover'}
|
||||
<div class="product-cover">
|
||||
{block name='product_flags'}
|
||||
<ul class="product-flags">
|
||||
{foreach from=$product.flags item=flag}
|
||||
<li class="product-flag {$flag.type}">{$flag.label}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/block}
|
||||
{if $product.cover}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid" src="{$product.cover.bySize.large_default.url}" alt="{$product.cover.legend}" title="{$product.cover.legend}" itemprop="image">
|
||||
<div class="layer hidden-sm-down" data-toggle="modal" data-target="#product-modal">
|
||||
<i class="material-icons zoom-in"></i>
|
||||
</div>
|
||||
{else}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid" src="{$urls.no_picture_image.bySize.large_default.url}" alt="{$product.name}" title="{$product.name}" itemprop="image">
|
||||
{/if}
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{block name='product_images'}
|
||||
<div id="thumb-gallery" class="product-thumb-images">
|
||||
{if $product.cover}
|
||||
{foreach from=$product.images item=image}
|
||||
<div class="thumb-container {if $image.id_image == $product.cover.id_image} active {/if}">
|
||||
<a href="javascript:void(0)" data-image="{$image.bySize.large_default.url}" data-zoom-image="{$image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/foreach}
|
||||
{else}
|
||||
<div class="thumb-container">
|
||||
<a href="javascript:void(0)" data-image="{$urls.no_picture_image.bySize.large_default.url}" data-zoom-image="{$urls.no_picture_image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb img-fluid"
|
||||
data-image-medium-src="{$urls.no_picture_image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$urls.no_picture_image.bySize.large_default.url}"
|
||||
src="{$urls.no_picture_image.bySize.home_default.url}"
|
||||
alt="{$product.name}"
|
||||
title="{$product.name}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
{if $product.images|@count > 1}
|
||||
<div class="arrows-product-fake slick-arrows">
|
||||
<button class="slick-prev slick-arrow" aria-label="Previous" type="button" >{l s='Previous' d='Shop.Theme.Catalog'}</button>
|
||||
<button class="slick-next slick-arrow" aria-label="Next" type="button">{l s='Next' d='Shop.Theme.Catalog'}</button>
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
{/if}
|
||||
{/block}
|
||||
{hook h='displayAfterProductThumbs'}
|
||||
</div>
|
||||
{/block}
|
||||
</section>
|
||||
{/block}
|
||||
|
||||
{block name='product_images_modal'}
|
||||
{include file='catalog/_partials/product-images-modal.tpl'}
|
||||
{/block}
|
||||
</div><div class="offset-lg-2 offset-xl-2 col-xl-8 col-lg-8 col-md-12 col-sm-12 col-xs-12 col-sp-12">
|
||||
{block name='page_header_container'}
|
||||
{block name='page_header'}
|
||||
<h1 class="h1 product-detail-name" itemprop="name">{block name='page_title'}{$product.name}{/block}</h1>
|
||||
{/block}
|
||||
{/block}<div class="leo-more-cdown" data-idproduct="{$product.id_product}"></div>
|
||||
{block name='product_prices'}
|
||||
{include file='catalog/_partials/product-prices.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_description_short'}
|
||||
<div id="product-description-short-{$product.id}" class="description-short" itemprop="description">{$product.description_short nofilter}</div>
|
||||
{/block}
|
||||
{if $product.is_customizable && count($product.customizations.fields)}
|
||||
{block name='product_customization'}
|
||||
{include file="catalog/_partials/product-customization.tpl" customizations=$product.customizations}
|
||||
{/block}
|
||||
{/if}
|
||||
<div class="product-actions">
|
||||
{block name='product_buy'}
|
||||
<form action="{$urls.pages.cart}" method="post" id="add-to-cart-or-refresh">
|
||||
<input type="hidden" name="token" value="{$static_token}">
|
||||
<input type="hidden" name="id_product" value="{$product.id}" id="product_page_product_id">
|
||||
<input type="hidden" name="id_customization" value="{$product.id_customization}" id="product_customization_id">
|
||||
|
||||
{block name='product_variants'}
|
||||
{include file='catalog/_partials/product-variants.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_pack'}
|
||||
{if $packItems}
|
||||
<section class="product-pack">
|
||||
<h3 class="h4">{l s='This pack contains' d='Shop.Theme.Catalog'}</h3>
|
||||
{foreach from=$packItems item="product_pack"}
|
||||
{block name='product_miniature'}
|
||||
{include file='catalog/_partials/miniatures/pack-product.tpl' product=$product_pack}
|
||||
{/block}
|
||||
{/foreach}
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
{block name='product_discounts'}
|
||||
{include file='catalog/_partials/product-discounts.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_add_to_cart'}
|
||||
{include file='catalog/_partials/product-add-to-cart.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_refresh'}
|
||||
<input class="product-refresh ps-hidden-by-js" name="refresh" type="submit" value="{l s='Refresh' d='Shop.Theme.Actions'}">
|
||||
{/block}
|
||||
</form>
|
||||
{/block}
|
||||
</div>
|
||||
{hook h='displayLeoProductReviewExtra' product=$product}
|
||||
{block name='product_additional_info'}
|
||||
{include file='catalog/_partials/product-additional-info.tpl'}
|
||||
{/block}
|
||||
{block name='hook_display_reassurance'}
|
||||
{hook h='displayReassurance'}
|
||||
{/block}
|
||||
{include file="sub/product_info/tab.tpl"}
|
||||
</div><div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12 col-sp-12">
|
||||
{block name='product_accessories'}
|
||||
{if $accessories}
|
||||
<section class="product-accessories clearfix">
|
||||
<h3 class="h5 products-section-title">{l s='You might also like' d='Shop.Theme.Catalog'}</h3>
|
||||
<div class="products">
|
||||
<div class="owl-row {if isset($productClassWidget)} {$productClassWidget}{/if}">
|
||||
<div id="category-products2">
|
||||
{foreach from=$accessories item="product_accessory"}
|
||||
<div class="item{if $smarty.foreach.mypLoop.index == 0} first{/if}">
|
||||
{block name='product_miniature'}
|
||||
{if isset($productProfileDefault) && $productProfileDefault}
|
||||
|
||||
{hook h='displayLeoProfileProduct' product=$product_accessory profile=$productProfileDefault}
|
||||
{else}
|
||||
{include file='catalog/_partials/miniatures/product.tpl' product=$product_accessory}
|
||||
{/if}
|
||||
{/block}
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
products_list_functions.push(
|
||||
function(){
|
||||
$('#category-products2').owlCarousel({
|
||||
{if isset($IS_RTL) && $IS_RTL}
|
||||
direction:'rtl',
|
||||
{else}
|
||||
direction:'ltr',
|
||||
{/if}
|
||||
items : 4,
|
||||
itemsCustom : false,
|
||||
itemsDesktop : [1200, 4],
|
||||
itemsDesktopSmall : [992, 3],
|
||||
itemsTablet : [768, 2],
|
||||
itemsTabletSmall : false,
|
||||
itemsMobile : [480, 1],
|
||||
singleItem : false, // true : show only 1 item
|
||||
itemsScaleUp : false,
|
||||
slideSpeed : 200, // change speed when drag and drop a item
|
||||
paginationSpeed :800, // change speed when go next page
|
||||
|
||||
autoPlay : false, // time to show each item
|
||||
stopOnHover : false,
|
||||
navigation : true,
|
||||
navigationText : ["‹", "›"],
|
||||
|
||||
scrollPerPage :true,
|
||||
responsive :true,
|
||||
|
||||
pagination : false,
|
||||
paginationNumbers : false,
|
||||
|
||||
addClassActive : true,
|
||||
|
||||
mouseDrag : true,
|
||||
touchDrag : true,
|
||||
|
||||
});
|
||||
}
|
||||
);
|
||||
|
||||
</script>
|
||||
{block name='product_footer'}
|
||||
{hook h='displayFooterProduct' product=$product category=$category}
|
||||
{/block}
|
||||
</div></div>
|
||||
{block name='page_footer_container'}
|
||||
<footer class="page-footer">
|
||||
{block name='page_footer'}
|
||||
<!-- Footer content -->
|
||||
{/block}
|
||||
</footer>
|
||||
{/block}
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,253 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
|
||||
<section id="main" class="product-detail product-image-no-thumbs product-image-thumbs no-thumbs" itemscope itemtype="https://schema.org/Product">
|
||||
<meta itemprop="url" content="{$product.url}"><div class="row"><div class="col-md-6 col-lg-6 col-xl-6">
|
||||
|
||||
{block name='page_content_container'}
|
||||
<section class="page-content" id="content" data-templateview="none" data-numberimage="5" data-numberimage1200="5" data-numberimage992="4" data-numberimage768="3" data-numberimage576="3" data-numberimage480="2" data-numberimage360="2" data-templatemodal="1" data-templatezoomtype="none" data-zoomposition="right" data-zoomwindowwidth="400" data-zoomwindowheight="400">
|
||||
{block name='page_content'}
|
||||
<div class="images-container">
|
||||
{block name='product_cover_thumbnails'}
|
||||
{if $isMobile && $dmobile_swipe}
|
||||
<div class="list-images-mobile">
|
||||
{foreach from=$product.images item=image}
|
||||
<div>
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
src="{$image.bySize.large_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
{else}
|
||||
{block name='product_cover'}
|
||||
<div class="product-cover">
|
||||
{block name='product_flags'}
|
||||
<ul class="product-flags">
|
||||
{foreach from=$product.flags item=flag}
|
||||
<li class="product-flag {$flag.type}">{$flag.label}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/block}
|
||||
{if $product.cover}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid" src="{$product.cover.bySize.large_default.url}" alt="{$product.cover.legend}" title="{$product.cover.legend}" itemprop="image">
|
||||
<div class="layer hidden-sm-down" data-toggle="modal" data-target="#product-modal">
|
||||
<i class="material-icons zoom-in"></i>
|
||||
</div>
|
||||
{else}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid" src="{$urls.no_picture_image.bySize.large_default.url}" alt="{$product.name}" title="{$product.name}" itemprop="image">
|
||||
{/if}
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{block name='product_images'}
|
||||
<div id="thumb-gallery" class="product-thumb-images">
|
||||
{if $product.cover}
|
||||
{foreach from=$product.images item=image}
|
||||
<div class="thumb-container {if $image.id_image == $product.cover.id_image} active {/if}">
|
||||
<a href="javascript:void(0)" data-image="{$image.bySize.large_default.url}" data-zoom-image="{$image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/foreach}
|
||||
{else}
|
||||
<div class="thumb-container">
|
||||
<a href="javascript:void(0)" data-image="{$urls.no_picture_image.bySize.large_default.url}" data-zoom-image="{$urls.no_picture_image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb img-fluid"
|
||||
data-image-medium-src="{$urls.no_picture_image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$urls.no_picture_image.bySize.large_default.url}"
|
||||
src="{$urls.no_picture_image.bySize.home_default.url}"
|
||||
alt="{$product.name}"
|
||||
title="{$product.name}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
{if $product.images|@count > 1}
|
||||
<div class="arrows-product-fake slick-arrows">
|
||||
<button class="slick-prev slick-arrow" aria-label="Previous" type="button" >{l s='Previous' d='Shop.Theme.Catalog'}</button>
|
||||
<button class="slick-next slick-arrow" aria-label="Next" type="button">{l s='Next' d='Shop.Theme.Catalog'}</button>
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
{/if}
|
||||
{/block}
|
||||
{hook h='displayAfterProductThumbs'}
|
||||
</div>
|
||||
{/block}
|
||||
</section>
|
||||
{/block}
|
||||
|
||||
{block name='product_images_modal'}
|
||||
{include file='catalog/_partials/product-images-modal.tpl'}
|
||||
{/block}
|
||||
</div><div class="col-md-6 col-lg-6 col-xl-6">
|
||||
{block name='page_header_container'}
|
||||
{block name='page_header'}
|
||||
<h1 class="h1 product-detail-name" itemprop="name">{block name='page_title'}{$product.name}{/block}</h1>
|
||||
{/block}
|
||||
{/block}<div class="leo-more-cdown" data-idproduct="{$product.id_product}"></div>
|
||||
{block name='product_prices'}
|
||||
{include file='catalog/_partials/product-prices.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_description_short'}
|
||||
<div id="product-description-short-{$product.id}" class="description-short" itemprop="description">{$product.description_short nofilter}</div>
|
||||
{/block}
|
||||
{if $product.is_customizable && count($product.customizations.fields)}
|
||||
{block name='product_customization'}
|
||||
{include file="catalog/_partials/product-customization.tpl" customizations=$product.customizations}
|
||||
{/block}
|
||||
{/if}
|
||||
<div class="product-actions">
|
||||
{block name='product_buy'}
|
||||
<form action="{$urls.pages.cart}" method="post" id="add-to-cart-or-refresh">
|
||||
<input type="hidden" name="token" value="{$static_token}">
|
||||
<input type="hidden" name="id_product" value="{$product.id}" id="product_page_product_id">
|
||||
<input type="hidden" name="id_customization" value="{$product.id_customization}" id="product_customization_id">
|
||||
|
||||
{block name='product_variants'}
|
||||
{include file='catalog/_partials/product-variants.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_pack'}
|
||||
{if $packItems}
|
||||
<section class="product-pack">
|
||||
<h3 class="h4">{l s='This pack contains' d='Shop.Theme.Catalog'}</h3>
|
||||
{foreach from=$packItems item="product_pack"}
|
||||
{block name='product_miniature'}
|
||||
{include file='catalog/_partials/miniatures/pack-product.tpl' product=$product_pack}
|
||||
{/block}
|
||||
{/foreach}
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
{block name='product_discounts'}
|
||||
{include file='catalog/_partials/product-discounts.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_add_to_cart'}
|
||||
{include file='catalog/_partials/product-add-to-cart.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_refresh'}
|
||||
<input class="product-refresh ps-hidden-by-js" name="refresh" type="submit" value="{l s='Refresh' d='Shop.Theme.Actions'}">
|
||||
{/block}
|
||||
</form>
|
||||
{/block}
|
||||
</div>
|
||||
{hook h='displayLeoProductReviewExtra' product=$product}
|
||||
{block name='product_additional_info'}
|
||||
{include file='catalog/_partials/product-additional-info.tpl'}
|
||||
{/block}
|
||||
{block name='hook_display_reassurance'}
|
||||
{hook h='displayReassurance'}
|
||||
{/block}
|
||||
</div><div class="col-md-12 col-lg-12 col-xl-12">
|
||||
{include file="sub/product_info/tab.tpl"}
|
||||
{block name='product_accessories'}
|
||||
{if $accessories}
|
||||
<section class="product-accessories clearfix">
|
||||
<h3 class="h5 products-section-title">{l s='You might also like' d='Shop.Theme.Catalog'}</h3>
|
||||
<div class="products">
|
||||
<div class="owl-row {if isset($productClassWidget)} {$productClassWidget}{/if}">
|
||||
<div id="category-products2">
|
||||
{foreach from=$accessories item="product_accessory"}
|
||||
<div class="item{if $smarty.foreach.mypLoop.index == 0} first{/if}">
|
||||
{block name='product_miniature'}
|
||||
{if isset($productProfileDefault) && $productProfileDefault}
|
||||
|
||||
{hook h='displayLeoProfileProduct' product=$product_accessory profile=$productProfileDefault}
|
||||
{else}
|
||||
{include file='catalog/_partials/miniatures/product.tpl' product=$product_accessory}
|
||||
{/if}
|
||||
{/block}
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
products_list_functions.push(
|
||||
function(){
|
||||
$('#category-products2').owlCarousel({
|
||||
{if isset($IS_RTL) && $IS_RTL}
|
||||
direction:'rtl',
|
||||
{else}
|
||||
direction:'ltr',
|
||||
{/if}
|
||||
items : 4,
|
||||
itemsCustom : false,
|
||||
itemsDesktop : [1200, 4],
|
||||
itemsDesktopSmall : [992, 3],
|
||||
itemsTablet : [768, 2],
|
||||
itemsTabletSmall : false,
|
||||
itemsMobile : [480, 1],
|
||||
singleItem : false, // true : show only 1 item
|
||||
itemsScaleUp : false,
|
||||
slideSpeed : 200, // change speed when drag and drop a item
|
||||
paginationSpeed :800, // change speed when go next page
|
||||
|
||||
autoPlay : false, // time to show each item
|
||||
stopOnHover : false,
|
||||
navigation : true,
|
||||
navigationText : ["‹", "›"],
|
||||
|
||||
scrollPerPage :true,
|
||||
responsive :true,
|
||||
|
||||
pagination : false,
|
||||
paginationNumbers : false,
|
||||
|
||||
addClassActive : true,
|
||||
|
||||
mouseDrag : true,
|
||||
touchDrag : true,
|
||||
|
||||
});
|
||||
}
|
||||
);
|
||||
|
||||
</script>
|
||||
{block name='product_footer'}
|
||||
{hook h='displayFooterProduct' product=$product category=$category}
|
||||
{/block}
|
||||
</div></div>
|
||||
{block name='page_footer_container'}
|
||||
<footer class="page-footer">
|
||||
{block name='page_footer'}
|
||||
<!-- Footer content -->
|
||||
{/block}
|
||||
</footer>
|
||||
{/block}
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,253 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
|
||||
<section id="main" class="product-detail product-image-thumbs-right product-image-thumbs product-thumbs-right" itemscope itemtype="https://schema.org/Product">
|
||||
<meta itemprop="url" content="{$product.url}"><div class="row"><div class="col-md-6 col-lg-6 col-xl-6">
|
||||
|
||||
{block name='page_content_container'}
|
||||
<section class="page-content" id="content" data-templateview="right" data-numberimage="5" data-numberimage1200="3" data-numberimage992="3" data-numberimage768="3" data-numberimage576="3" data-numberimage480="2" data-numberimage360="2" data-templatemodal="0" data-templatezoomtype="out" data-zoomposition="right" data-zoomwindowwidth="400" data-zoomwindowheight="400">
|
||||
{block name='page_content'}
|
||||
<div class="images-container">
|
||||
{block name='product_cover_thumbnails'}
|
||||
{if $isMobile && $dmobile_swipe}
|
||||
<div class="list-images-mobile">
|
||||
{foreach from=$product.images item=image}
|
||||
<div>
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
src="{$image.bySize.large_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
{else}
|
||||
{block name='product_cover'}
|
||||
<div class="product-cover">
|
||||
{block name='product_flags'}
|
||||
<ul class="product-flags">
|
||||
{foreach from=$product.flags item=flag}
|
||||
<li class="product-flag {$flag.type}">{$flag.label}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/block}
|
||||
{if $product.cover}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid" src="{$product.cover.bySize.large_default.url}" alt="{$product.cover.legend}" title="{$product.cover.legend}" itemprop="image">
|
||||
<div class="layer hidden-sm-down" data-toggle="modal" data-target="#product-modal">
|
||||
<i class="material-icons zoom-in"></i>
|
||||
</div>
|
||||
{else}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid" src="{$urls.no_picture_image.bySize.large_default.url}" alt="{$product.name}" title="{$product.name}" itemprop="image">
|
||||
{/if}
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{block name='product_images'}
|
||||
<div id="thumb-gallery" class="product-thumb-images">
|
||||
{if $product.cover}
|
||||
{foreach from=$product.images item=image}
|
||||
<div class="thumb-container {if $image.id_image == $product.cover.id_image} active {/if}">
|
||||
<a href="javascript:void(0)" data-image="{$image.bySize.large_default.url}" data-zoom-image="{$image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/foreach}
|
||||
{else}
|
||||
<div class="thumb-container">
|
||||
<a href="javascript:void(0)" data-image="{$urls.no_picture_image.bySize.large_default.url}" data-zoom-image="{$urls.no_picture_image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb img-fluid"
|
||||
data-image-medium-src="{$urls.no_picture_image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$urls.no_picture_image.bySize.large_default.url}"
|
||||
src="{$urls.no_picture_image.bySize.home_default.url}"
|
||||
alt="{$product.name}"
|
||||
title="{$product.name}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
{if $product.images|@count > 1}
|
||||
<div class="arrows-product-fake slick-arrows">
|
||||
<button class="slick-prev slick-arrow" aria-label="Previous" type="button" >{l s='Previous' d='Shop.Theme.Catalog'}</button>
|
||||
<button class="slick-next slick-arrow" aria-label="Next" type="button">{l s='Next' d='Shop.Theme.Catalog'}</button>
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
{/if}
|
||||
{/block}
|
||||
{hook h='displayAfterProductThumbs'}
|
||||
</div>
|
||||
{/block}
|
||||
</section>
|
||||
{/block}
|
||||
|
||||
{block name='product_images_modal'}
|
||||
{include file='catalog/_partials/product-images-modal.tpl'}
|
||||
{/block}
|
||||
</div><div class="col-md-6 col-lg-6 col-xl-6">
|
||||
{block name='page_header_container'}
|
||||
{block name='page_header'}
|
||||
<h1 class="h1 product-detail-name" itemprop="name">{block name='page_title'}{$product.name}{/block}</h1>
|
||||
{/block}
|
||||
{/block}
|
||||
{block name='product_prices'}
|
||||
{include file='catalog/_partials/product-prices.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_description_short'}
|
||||
<div id="product-description-short-{$product.id}" class="description-short" itemprop="description">{$product.description_short nofilter}</div>
|
||||
{/block}<div class="leo-more-cdown" data-idproduct="{$product.id_product}"></div>
|
||||
{if $product.is_customizable && count($product.customizations.fields)}
|
||||
{block name='product_customization'}
|
||||
{include file="catalog/_partials/product-customization.tpl" customizations=$product.customizations}
|
||||
{/block}
|
||||
{/if}
|
||||
<div class="product-actions">
|
||||
{block name='product_buy'}
|
||||
<form action="{$urls.pages.cart}" method="post" id="add-to-cart-or-refresh">
|
||||
<input type="hidden" name="token" value="{$static_token}">
|
||||
<input type="hidden" name="id_product" value="{$product.id}" id="product_page_product_id">
|
||||
<input type="hidden" name="id_customization" value="{$product.id_customization}" id="product_customization_id">
|
||||
|
||||
{block name='product_variants'}
|
||||
{include file='catalog/_partials/product-variants.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_pack'}
|
||||
{if $packItems}
|
||||
<section class="product-pack">
|
||||
<h3 class="h4">{l s='This pack contains' d='Shop.Theme.Catalog'}</h3>
|
||||
{foreach from=$packItems item="product_pack"}
|
||||
{block name='product_miniature'}
|
||||
{include file='catalog/_partials/miniatures/pack-product.tpl' product=$product_pack}
|
||||
{/block}
|
||||
{/foreach}
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
{block name='product_discounts'}
|
||||
{include file='catalog/_partials/product-discounts.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_add_to_cart'}
|
||||
{include file='catalog/_partials/product-add-to-cart.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_refresh'}
|
||||
<input class="product-refresh ps-hidden-by-js" name="refresh" type="submit" value="{l s='Refresh' d='Shop.Theme.Actions'}">
|
||||
{/block}
|
||||
</form>
|
||||
{/block}
|
||||
</div>
|
||||
{hook h='displayLeoProductReviewExtra' product=$product}
|
||||
{block name='product_additional_info'}
|
||||
{include file='catalog/_partials/product-additional-info.tpl'}
|
||||
{/block}
|
||||
{block name='hook_display_reassurance'}
|
||||
{hook h='displayReassurance'}
|
||||
{/block}
|
||||
</div><div class="col-md-12 col-lg-12 col-xl-12">
|
||||
{include file="sub/product_info/accordions.tpl"}
|
||||
{block name='product_accessories'}
|
||||
{if $accessories}
|
||||
<section class="product-accessories clearfix">
|
||||
<h3 class="h5 products-section-title">{l s='You might also like' d='Shop.Theme.Catalog'}</h3>
|
||||
<div class="products">
|
||||
<div class="owl-row {if isset($productClassWidget)} {$productClassWidget}{/if}">
|
||||
<div id="category-products2">
|
||||
{foreach from=$accessories item="product_accessory"}
|
||||
<div class="item{if $smarty.foreach.mypLoop.index == 0} first{/if}">
|
||||
{block name='product_miniature'}
|
||||
{if isset($productProfileDefault) && $productProfileDefault}
|
||||
|
||||
{hook h='displayLeoProfileProduct' product=$product_accessory profile=$productProfileDefault}
|
||||
{else}
|
||||
{include file='catalog/_partials/miniatures/product.tpl' product=$product_accessory}
|
||||
{/if}
|
||||
{/block}
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
products_list_functions.push(
|
||||
function(){
|
||||
$('#category-products2').owlCarousel({
|
||||
{if isset($IS_RTL) && $IS_RTL}
|
||||
direction:'rtl',
|
||||
{else}
|
||||
direction:'ltr',
|
||||
{/if}
|
||||
items : 4,
|
||||
itemsCustom : false,
|
||||
itemsDesktop : [1200, 4],
|
||||
itemsDesktopSmall : [992, 3],
|
||||
itemsTablet : [768, 2],
|
||||
itemsTabletSmall : false,
|
||||
itemsMobile : [480, 1],
|
||||
singleItem : false, // true : show only 1 item
|
||||
itemsScaleUp : false,
|
||||
slideSpeed : 200, // change speed when drag and drop a item
|
||||
paginationSpeed :800, // change speed when go next page
|
||||
|
||||
autoPlay : false, // time to show each item
|
||||
stopOnHover : false,
|
||||
navigation : true,
|
||||
navigationText : ["‹", "›"],
|
||||
|
||||
scrollPerPage :true,
|
||||
responsive :true,
|
||||
|
||||
pagination : false,
|
||||
paginationNumbers : false,
|
||||
|
||||
addClassActive : true,
|
||||
|
||||
mouseDrag : true,
|
||||
touchDrag : true,
|
||||
|
||||
});
|
||||
}
|
||||
);
|
||||
|
||||
</script>
|
||||
{block name='product_footer'}
|
||||
{hook h='displayFooterProduct' product=$product category=$category}
|
||||
{/block}
|
||||
</div></div>
|
||||
{block name='page_footer_container'}
|
||||
<footer class="page-footer">
|
||||
{block name='page_footer'}
|
||||
<!-- Footer content -->
|
||||
{/block}
|
||||
</footer>
|
||||
{/block}
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,254 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
|
||||
<section id="main" class="product-detail product-image-no-thumbs-center product-image-thumbs no-thumbs" itemscope itemtype="https://schema.org/Product">
|
||||
<meta itemprop="url" content="{$product.url}"><div class="row"><div class="col-xl-4 col-lg-4 col-md-12 col-sm-12 col-xs-12 col-sp-12">
|
||||
{block name='page_header_container'}
|
||||
{block name='page_header'}
|
||||
<h1 class="h1 product-detail-name" itemprop="name">{block name='page_title'}{$product.name}{/block}</h1>
|
||||
{/block}
|
||||
{/block}
|
||||
{block name='product_prices'}
|
||||
{include file='catalog/_partials/product-prices.tpl'}
|
||||
{/block}
|
||||
<div class="leo-more-cdown" data-idproduct="{$product.id_product}"></div>
|
||||
{block name='product_description_short'}
|
||||
<div id="product-description-short-{$product.id}" class="description-short" itemprop="description">{$product.description_short nofilter}</div>
|
||||
{/block}
|
||||
{hook h='displayLeoProductReviewExtra' product=$product}
|
||||
{block name='product_additional_info'}
|
||||
{include file='catalog/_partials/product-additional-info.tpl'}
|
||||
{/block}
|
||||
{block name='hook_display_reassurance'}
|
||||
{hook h='displayReassurance'}
|
||||
{/block}
|
||||
</div><div class="col-xl-5 col-lg-5 col-md-12 col-sm-12 col-xs-12 col-sp-12">
|
||||
|
||||
{block name='page_content_container'}
|
||||
<section class="page-content" id="content" data-templateview="none" data-numberimage="5" data-numberimage1200="5" data-numberimage992="4" data-numberimage768="3" data-numberimage576="3" data-numberimage480="2" data-numberimage360="2" data-templatemodal="1" data-templatezoomtype="in" data-zoomposition="right" data-zoomwindowwidth="400" data-zoomwindowheight="400">
|
||||
{block name='page_content'}
|
||||
<div class="images-container">
|
||||
{block name='product_cover_thumbnails'}
|
||||
{if $isMobile && $dmobile_swipe}
|
||||
<div class="list-images-mobile">
|
||||
{foreach from=$product.images item=image}
|
||||
<div>
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
src="{$image.bySize.large_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
{else}
|
||||
{block name='product_cover'}
|
||||
<div class="product-cover">
|
||||
{block name='product_flags'}
|
||||
<ul class="product-flags">
|
||||
{foreach from=$product.flags item=flag}
|
||||
<li class="product-flag {$flag.type}">{$flag.label}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/block}
|
||||
{if $product.cover}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid" src="{$product.cover.bySize.large_default.url}" alt="{$product.cover.legend}" title="{$product.cover.legend}" itemprop="image">
|
||||
<div class="layer hidden-sm-down" data-toggle="modal" data-target="#product-modal">
|
||||
<i class="material-icons zoom-in"></i>
|
||||
</div>
|
||||
{else}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid" src="{$urls.no_picture_image.bySize.large_default.url}" alt="{$product.name}" title="{$product.name}" itemprop="image">
|
||||
{/if}
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{block name='product_images'}
|
||||
<div id="thumb-gallery" class="product-thumb-images">
|
||||
{if $product.cover}
|
||||
{foreach from=$product.images item=image}
|
||||
<div class="thumb-container {if $image.id_image == $product.cover.id_image} active {/if}">
|
||||
<a href="javascript:void(0)" data-image="{$image.bySize.large_default.url}" data-zoom-image="{$image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/foreach}
|
||||
{else}
|
||||
<div class="thumb-container">
|
||||
<a href="javascript:void(0)" data-image="{$urls.no_picture_image.bySize.large_default.url}" data-zoom-image="{$urls.no_picture_image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb img-fluid"
|
||||
data-image-medium-src="{$urls.no_picture_image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$urls.no_picture_image.bySize.large_default.url}"
|
||||
src="{$urls.no_picture_image.bySize.home_default.url}"
|
||||
alt="{$product.name}"
|
||||
title="{$product.name}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
{if $product.images|@count > 1}
|
||||
<div class="arrows-product-fake slick-arrows">
|
||||
<button class="slick-prev slick-arrow" aria-label="Previous" type="button" >{l s='Previous' d='Shop.Theme.Catalog'}</button>
|
||||
<button class="slick-next slick-arrow" aria-label="Next" type="button">{l s='Next' d='Shop.Theme.Catalog'}</button>
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
{/if}
|
||||
{/block}
|
||||
{hook h='displayAfterProductThumbs'}
|
||||
</div>
|
||||
{/block}
|
||||
</section>
|
||||
{/block}
|
||||
|
||||
{block name='product_images_modal'}
|
||||
{include file='catalog/_partials/product-images-modal.tpl'}
|
||||
{/block}
|
||||
</div><div class="col-xl-3 col-lg-3 col-md-12 col-sm-12 col-xs-12 col-sp-12">
|
||||
{if $product.is_customizable && count($product.customizations.fields)}
|
||||
{block name='product_customization'}
|
||||
{include file="catalog/_partials/product-customization.tpl" customizations=$product.customizations}
|
||||
{/block}
|
||||
{/if}
|
||||
<div class="product-actions">
|
||||
{block name='product_buy'}
|
||||
<form action="{$urls.pages.cart}" method="post" id="add-to-cart-or-refresh">
|
||||
<input type="hidden" name="token" value="{$static_token}">
|
||||
<input type="hidden" name="id_product" value="{$product.id}" id="product_page_product_id">
|
||||
<input type="hidden" name="id_customization" value="{$product.id_customization}" id="product_customization_id">
|
||||
|
||||
{block name='product_variants'}
|
||||
{include file='catalog/_partials/product-variants.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_pack'}
|
||||
{if $packItems}
|
||||
<section class="product-pack">
|
||||
<h3 class="h4">{l s='This pack contains' d='Shop.Theme.Catalog'}</h3>
|
||||
{foreach from=$packItems item="product_pack"}
|
||||
{block name='product_miniature'}
|
||||
{include file='catalog/_partials/miniatures/pack-product.tpl' product=$product_pack}
|
||||
{/block}
|
||||
{/foreach}
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
{block name='product_discounts'}
|
||||
{include file='catalog/_partials/product-discounts.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_add_to_cart'}
|
||||
{include file='catalog/_partials/product-add-to-cart.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_refresh'}
|
||||
<input class="product-refresh ps-hidden-by-js" name="refresh" type="submit" value="{l s='Refresh' d='Shop.Theme.Actions'}">
|
||||
{/block}
|
||||
</form>
|
||||
{/block}
|
||||
</div>
|
||||
</div><div class="col-xl-12 col-lg-12 col-md-12 col-sm-12 col-xs-12 col-sp-12">
|
||||
{include file="sub/product_info/tab.tpl"}
|
||||
{block name='product_accessories'}
|
||||
{if $accessories}
|
||||
<section class="product-accessories clearfix">
|
||||
<h3 class="h5 products-section-title">{l s='You might also like' d='Shop.Theme.Catalog'}</h3>
|
||||
<div class="products">
|
||||
<div class="owl-row {if isset($productClassWidget)} {$productClassWidget}{/if}">
|
||||
<div id="category-products2">
|
||||
{foreach from=$accessories item="product_accessory"}
|
||||
<div class="item{if $smarty.foreach.mypLoop.index == 0} first{/if}">
|
||||
{block name='product_miniature'}
|
||||
{if isset($productProfileDefault) && $productProfileDefault}
|
||||
|
||||
{hook h='displayLeoProfileProduct' product=$product_accessory profile=$productProfileDefault}
|
||||
{else}
|
||||
{include file='catalog/_partials/miniatures/product.tpl' product=$product_accessory}
|
||||
{/if}
|
||||
{/block}
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
products_list_functions.push(
|
||||
function(){
|
||||
$('#category-products2').owlCarousel({
|
||||
{if isset($IS_RTL) && $IS_RTL}
|
||||
direction:'rtl',
|
||||
{else}
|
||||
direction:'ltr',
|
||||
{/if}
|
||||
items : 4,
|
||||
itemsCustom : false,
|
||||
itemsDesktop : [1200, 4],
|
||||
itemsDesktopSmall : [992, 3],
|
||||
itemsTablet : [768, 2],
|
||||
itemsTabletSmall : false,
|
||||
itemsMobile : [480, 1],
|
||||
singleItem : false, // true : show only 1 item
|
||||
itemsScaleUp : false,
|
||||
slideSpeed : 200, // change speed when drag and drop a item
|
||||
paginationSpeed :800, // change speed when go next page
|
||||
|
||||
autoPlay : false, // time to show each item
|
||||
stopOnHover : false,
|
||||
navigation : true,
|
||||
navigationText : ["‹", "›"],
|
||||
|
||||
scrollPerPage :true,
|
||||
responsive :true,
|
||||
|
||||
pagination : false,
|
||||
paginationNumbers : false,
|
||||
|
||||
addClassActive : true,
|
||||
|
||||
mouseDrag : true,
|
||||
touchDrag : true,
|
||||
|
||||
});
|
||||
}
|
||||
);
|
||||
|
||||
</script>
|
||||
{block name='product_footer'}
|
||||
{hook h='displayFooterProduct' product=$product category=$category}
|
||||
{/block}
|
||||
</div></div>
|
||||
{block name='page_footer_container'}
|
||||
<footer class="page-footer">
|
||||
{block name='page_footer'}
|
||||
<!-- Footer content -->
|
||||
{/block}
|
||||
</footer>
|
||||
{/block}
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,296 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
|
||||
<section id="main" class="product-detail product-image-thumbs-bottom product-image-thumbs product-thumbs-bottom"
|
||||
itemscope itemtype="https://schema.org/Product">
|
||||
<meta itemprop="url" content="{$product.url}">
|
||||
<div class="row">
|
||||
<div class="col-form_id-form_9367402777406408 col-md-6 col-lg-6 col-xl-6">
|
||||
|
||||
{block name='page_content_container'}
|
||||
<section class="page-content" id="content" data-templateview="bottom" data-numberimage="5"
|
||||
data-numberimage1200="4" data-numberimage992="4" data-numberimage768="4" data-numberimage576="4"
|
||||
data-numberimage480="3" data-numberimage360="3" data-templatemodal="0" data-templatezoomtype="in"
|
||||
data-zoomposition="right" data-zoomwindowwidth="400" data-zoomwindowheight="400">
|
||||
{block name='page_content'}
|
||||
<div class="images-container">
|
||||
{block name='product_cover_thumbnails'}
|
||||
{if $isMobile && $dmobile_swipe}
|
||||
<div class="list-images-mobile">
|
||||
{foreach from=$product.images item=image}
|
||||
<div>
|
||||
<img class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}" src="{$image.bySize.large_default.url}"
|
||||
alt="{$image.legend}" title="{$image.legend}" itemprop="image">
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
{else}
|
||||
{block name='product_cover'}
|
||||
<div class="product-cover">
|
||||
{block name='product_flags'}
|
||||
<ul class="product-flags">
|
||||
{foreach from=$product.flags item=flag}
|
||||
<li class="product-flag {$flag.type}">{$flag.label}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/block}
|
||||
{if $product.cover}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid"
|
||||
src="{$product.cover.bySize.large_default.url}" alt="{$product.cover.legend}"
|
||||
title="{$product.cover.legend}" itemprop="image">
|
||||
<div class="layer hidden-sm-down" data-toggle="modal" data-target="#product-modal">
|
||||
<i class="material-icons zoom-in"></i>
|
||||
</div>
|
||||
{else}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid"
|
||||
src="{$urls.no_picture_image.bySize.large_default.url}" alt="{$product.name}" title="{$product.name}"
|
||||
itemprop="image">
|
||||
{/if}
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{block name='product_images'}
|
||||
<div id="thumb-gallery" class="product-thumb-images">
|
||||
{if $product.cover}
|
||||
{foreach from=$product.images item=image}
|
||||
<div class="thumb-container {if $image.id_image == $product.cover.id_image} active {/if}">
|
||||
<a href="javascript:void(0)" data-image="{$image.bySize.large_default.url}"
|
||||
data-zoom-image="{$image.bySize.large_default.url}">
|
||||
<img class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}" src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}" title="{$image.legend}" itemprop="image">
|
||||
</a>
|
||||
</div>
|
||||
{/foreach}
|
||||
{else}
|
||||
<div class="thumb-container">
|
||||
<a href="javascript:void(0)" data-image="{$urls.no_picture_image.bySize.large_default.url}"
|
||||
data-zoom-image="{$urls.no_picture_image.bySize.large_default.url}">
|
||||
<img class="thumb js-thumb img-fluid"
|
||||
data-image-medium-src="{$urls.no_picture_image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$urls.no_picture_image.bySize.large_default.url}"
|
||||
src="{$urls.no_picture_image.bySize.home_default.url}" alt="{$product.name}" title="{$product.name}"
|
||||
itemprop="image">
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
{if $product.images|@count > 1}
|
||||
<div class="arrows-product-fake slick-arrows">
|
||||
<button class="slick-prev slick-arrow" aria-label="Previous"
|
||||
type="button">{l s='Previous' d='Shop.Theme.Catalog'}</button>
|
||||
<button class="slick-next slick-arrow" aria-label="Next"
|
||||
type="button">{l s='Next' d='Shop.Theme.Catalog'}</button>
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
{/if}
|
||||
{/block}
|
||||
{hook h='displayAfterProductThumbs'}
|
||||
</div>
|
||||
{/block}
|
||||
</section>
|
||||
{/block}
|
||||
|
||||
{block name='product_images_modal'}
|
||||
{include file='catalog/_partials/product-images-modal.tpl'}
|
||||
{/block}
|
||||
</div>
|
||||
<div class="col-form_id-form_15874367062488778 col-md-6 col-lg-6 col-xl-6">
|
||||
{block name='page_header_container'}
|
||||
{block name='page_header'}
|
||||
<h1 class="h1 product-detail-name" itemprop="name">{block name='page_title'}{$product.name}{/block}</h1>
|
||||
{/block}
|
||||
{/block}
|
||||
{block name='product_prices'}
|
||||
{include file='catalog/_partials/product-prices.tpl'}
|
||||
{/block}
|
||||
{block name='product_availability'}
|
||||
<span id="product-availability">
|
||||
{if $product.available_for_order}
|
||||
{if $product.availability == 'available'}
|
||||
<span class="product-available">
|
||||
<span class="product-status-ball"></span>
|
||||
<strong>{l s='product-count-status' d='Shop.Theme.Global'}</strong>
|
||||
<span>{l s='product-available' d='Shop.Theme.Global'}</span>
|
||||
</span>
|
||||
{elseif $product.availability == 'last_remaining_items'}
|
||||
<span class="product-last-items">
|
||||
<span class="product-status-ball"></span>
|
||||
<strong>{l s='product-count-status' d='Shop.Theme.Global'}</strong>
|
||||
<span>{l s='product-last-items' d='Shop.Theme.Global'}</span>
|
||||
</span>
|
||||
{else}
|
||||
<span class="product-unavailable">
|
||||
<span class="product-status-ball"></span>
|
||||
<strong>{l s='product-count-status' d='Shop.Theme.Global'}</strong>
|
||||
<span>{l s='product-unavailable' d='Shop.Theme.Global'}</span>
|
||||
</span>
|
||||
{/if}
|
||||
{else if $product.show_price}
|
||||
<span class="product-available">
|
||||
<span class="product-status-ball"></span>
|
||||
<strong>{l s='product-count-status' d='Shop.Theme.Global'}</strong>
|
||||
<span>{l s='custom-product-available-text' d='Shop.Theme.Global'}</span>
|
||||
</span>
|
||||
{else if !$product.available_for_order and !$product.show_price}
|
||||
<span class="product-available">
|
||||
<span class="product-status-ball"></span>
|
||||
<strong>{l s='product-count-status' d='Shop.Theme.Global'}</strong>
|
||||
<span>{l s='custom-product-available-text-2' d='Shop.Theme.Global'}</span>
|
||||
</span>
|
||||
{/if}
|
||||
</span>
|
||||
{/block}
|
||||
<div class="product-actions">
|
||||
{block name='product_buy'}
|
||||
<form action="{$urls.pages.cart}" method="post" id="add-to-cart-or-refresh">
|
||||
<input type="hidden" name="token" value="{$static_token}">
|
||||
<input type="hidden" name="id_product" value="{$product.id}" id="product_page_product_id">
|
||||
<input type="hidden" name="id_customization" value="{$product.id_customization}"
|
||||
id="product_customization_id">
|
||||
|
||||
{block name='product_variants'}
|
||||
{include file='catalog/_partials/product-variants.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_pack'}
|
||||
{if $packItems}
|
||||
<section class="product-pack">
|
||||
<h3 class="h4">{l s='This pack contains' d='Shop.Theme.Catalog'}</h3>
|
||||
{foreach from=$packItems item="product_pack"}
|
||||
{block name='product_miniature'}
|
||||
{include file='catalog/_partials/miniatures/pack-product.tpl' product=$product_pack}
|
||||
{/block}
|
||||
{/foreach}
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
{block name='product_discounts'}
|
||||
{include file='catalog/_partials/product-discounts.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_add_to_cart'}
|
||||
{include file='catalog/_partials/product-add-to-cart.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_additional_info'}
|
||||
{include file='catalog/_partials/product-additional-info.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_refresh'}
|
||||
<input class="product-refresh ps-hidden-by-js" name="refresh" type="submit"
|
||||
value="{l s='Refresh' d='Shop.Theme.Actions'}">
|
||||
{/block}
|
||||
</form>
|
||||
{/block}
|
||||
</div>
|
||||
{block name='hook_display_reassurance'}
|
||||
{hook h='displayReassurance'}
|
||||
{/block}
|
||||
</div>
|
||||
<div class="col-form_id-form_4666379129988496 col-md-12 col-lg-12 col-xl-12">
|
||||
{include file="sub/product_info/tab.tpl"}
|
||||
{block name='product_description_short'}
|
||||
<div id="product-description-short-{$product.id}" class="description-short" itemprop="description">
|
||||
<div class="description-short-title">
|
||||
<img src="/themes/at_movic/assets/img/modules/appagebuilder/images/arrow_triple.svg" alt="">
|
||||
<h2>{l s='description-short-title' d='Shop.Theme.Global'}</h2>
|
||||
</div>
|
||||
{$product.description nofilter}
|
||||
</div>
|
||||
{/block}
|
||||
{block name='product_accessories'}
|
||||
{if $accessories}
|
||||
<section class="product-accessories clearfix">
|
||||
<h3 class="h5 products-section-title">
|
||||
<img src="/themes/at_movic/assets/img/modules/appagebuilder/images/arrow_triple.svg" alt="">
|
||||
{l s='You might also like' d='Shop.Theme.Catalog'}
|
||||
</h3>
|
||||
<div class="products">
|
||||
<div class="owl-row {if isset($productClassWidget)} {$productClassWidget}{/if}">
|
||||
<div id="category-products2">
|
||||
{foreach from=$accessories item="product_accessory"}
|
||||
<div class="item{if $smarty.foreach.mypLoop.index == 0} first{/if}">
|
||||
{block name='product_miniature'}
|
||||
{if isset($productProfileDefault) && $productProfileDefault}
|
||||
|
||||
{hook h='displayLeoProfileProduct' product=$product_accessory profile=$productProfileDefault}
|
||||
{else}
|
||||
{include file='catalog/_partials/miniatures/product.tpl' product=$product_accessory}
|
||||
{/if}
|
||||
{/block}
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
{block name='product_footer'}
|
||||
{hook h='displayFooterProduct' product=$product category=$category}
|
||||
{/block}
|
||||
|
||||
<script type="text/javascript">
|
||||
products_list_functions.push(
|
||||
function() {
|
||||
$('#category-products2').owlCarousel({
|
||||
{if isset($IS_RTL) && $IS_RTL}
|
||||
direction: 'rtl',
|
||||
{else}
|
||||
direction: 'ltr',
|
||||
{/if}
|
||||
items: 4,
|
||||
itemsCustom: false,
|
||||
itemsDesktop: [1200, 4],
|
||||
itemsDesktopSmall: [992, 3],
|
||||
itemsTablet: [768, 2],
|
||||
itemsTabletSmall: false,
|
||||
itemsMobile: [480, 1],
|
||||
singleItem: false, // true : show only 1 item
|
||||
itemsScaleUp: false,
|
||||
slideSpeed: 200, // change speed when drag and drop a item
|
||||
paginationSpeed: 800, // change speed when go next page
|
||||
|
||||
autoPlay: false, // time to show each item
|
||||
stopOnHover: false,
|
||||
navigation: true,
|
||||
navigationText: ["‹", "›"],
|
||||
|
||||
scrollPerPage: true,
|
||||
responsive: true,
|
||||
|
||||
pagination: false,
|
||||
paginationNumbers: false,
|
||||
|
||||
addClassActive: true,
|
||||
|
||||
mouseDrag: true,
|
||||
touchDrag: true,
|
||||
|
||||
});
|
||||
}
|
||||
);
|
||||
</script>
|
||||
</div>
|
||||
</div>
|
||||
{block name='page_footer_container'}
|
||||
<footer class="page-footer">
|
||||
{block name='page_footer'}
|
||||
<!-- Footer content -->
|
||||
{/block}
|
||||
</footer>
|
||||
{/block}
|
||||
</section>
|
||||
@@ -0,0 +1,253 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
|
||||
<section id="main" class="product-detail product-detail-mobile product-image-thumbs product-thumbs-bottom" itemscope itemtype="https://schema.org/Product">
|
||||
<meta itemprop="url" content="{$product.url}"><div class="row"><div class="col-form_id-form_9367402777406408 col-md-6 col-lg-6 col-xl-6 col-sm-12 col-xs-12 col-sp-12">
|
||||
|
||||
{block name='page_content_container'}
|
||||
<section class="page-content" id="content" data-templateview="bottom" data-numberimage="5" data-numberimage1200="5" data-numberimage992="4" data-numberimage768="3" data-numberimage576="3" data-numberimage480="2" data-numberimage360="2" data-templatemodal="1" data-templatethumb="1" data-templatezoomtype="out" data-zoomposition="right" data-zoomwindowwidth="400" data-zoomwindowheight="400">
|
||||
{block name='page_content'}
|
||||
<div class="images-container">
|
||||
{block name='product_cover_thumbnails'}
|
||||
{if $isMobile && $dmobile_swipe}
|
||||
<div class="list-images-mobile">
|
||||
{foreach from=$product.images item=image}
|
||||
<div>
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
src="{$image.bySize.large_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
{else}
|
||||
{block name='product_cover'}
|
||||
<div class="product-cover">
|
||||
{block name='product_flags'}
|
||||
<ul class="product-flags">
|
||||
{foreach from=$product.flags item=flag}
|
||||
<li class="product-flag {$flag.type}">{$flag.label}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/block}
|
||||
{if $product.cover}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid" src="{$product.cover.bySize.large_default.url}" alt="{$product.cover.legend}" title="{$product.cover.legend}" itemprop="image">
|
||||
<div class="layer hidden-sm-down" data-toggle="modal" data-target="#product-modal">
|
||||
<i class="material-icons zoom-in"></i>
|
||||
</div>
|
||||
{else}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid" src="{$urls.no_picture_image.bySize.large_default.url}" alt="{$product.name}" title="{$product.name}" itemprop="image">
|
||||
{/if}
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{block name='product_images'}
|
||||
<div id="thumb-gallery" class="product-thumb-images">
|
||||
{if $product.cover}
|
||||
{foreach from=$product.images item=image}
|
||||
<div class="thumb-container {if $image.id_image == $product.cover.id_image} active {/if}">
|
||||
<a href="javascript:void(0)" data-image="{$image.bySize.large_default.url}" data-zoom-image="{$image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/foreach}
|
||||
{else}
|
||||
<div class="thumb-container">
|
||||
<a href="javascript:void(0)" data-image="{$urls.no_picture_image.bySize.large_default.url}" data-zoom-image="{$urls.no_picture_image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb img-fluid"
|
||||
data-image-medium-src="{$urls.no_picture_image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$urls.no_picture_image.bySize.large_default.url}"
|
||||
src="{$urls.no_picture_image.bySize.home_default.url}"
|
||||
alt="{$product.name}"
|
||||
title="{$product.name}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
{if $product.images|@count > 1}
|
||||
<div class="arrows-product-fake slick-arrows">
|
||||
<button class="slick-prev slick-arrow" aria-label="Previous" type="button" >{l s='Previous' d='Shop.Theme.Catalog'}</button>
|
||||
<button class="slick-next slick-arrow" aria-label="Next" type="button">{l s='Next' d='Shop.Theme.Catalog'}</button>
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
{/if}
|
||||
{/block}
|
||||
{hook h='displayAfterProductThumbs'}
|
||||
</div>
|
||||
{/block}
|
||||
</section>
|
||||
{/block}
|
||||
|
||||
{block name='product_images_modal'}
|
||||
{include file='catalog/_partials/product-images-modal.tpl'}
|
||||
{/block}
|
||||
</div><div class="col-form_id-form_15874367062488778 col-md-6 col-lg-6 col-xl-6 col-sm-12 col-xs-12 col-sp-12">
|
||||
{block name='page_header_container'}
|
||||
{block name='page_header'}
|
||||
<h1 class="h1 product-detail-name" itemprop="name">{block name='page_title'}{$product.name}{/block}</h1>
|
||||
{/block}
|
||||
{/block}
|
||||
{block name='product_additional_info'}
|
||||
{include file='catalog/_partials/product-additional-info.tpl'}
|
||||
{/block}
|
||||
{hook h='displayLeoProductReviewExtra' product=$product}
|
||||
{block name='product_prices'}
|
||||
{include file='catalog/_partials/product-prices.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_description_short'}
|
||||
<div id="product-description-short-{$product.id}" class="description-short" itemprop="description">{$product.description_short nofilter}</div>
|
||||
{/block}
|
||||
{if $product.is_customizable && count($product.customizations.fields)}
|
||||
{block name='product_customization'}
|
||||
{include file="catalog/_partials/product-customization.tpl" customizations=$product.customizations}
|
||||
{/block}
|
||||
{/if}
|
||||
<div class="product-actions">
|
||||
{block name='product_buy'}
|
||||
<form action="{$urls.pages.cart}" method="post" id="add-to-cart-or-refresh">
|
||||
<input type="hidden" name="token" value="{$static_token}">
|
||||
<input type="hidden" name="id_product" value="{$product.id}" id="product_page_product_id">
|
||||
<input type="hidden" name="id_customization" value="{$product.id_customization}" id="product_customization_id">
|
||||
|
||||
{block name='product_variants'}
|
||||
{include file='catalog/_partials/product-variants.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_pack'}
|
||||
{if $packItems}
|
||||
<section class="product-pack">
|
||||
<h3 class="h4">{l s='This pack contains' d='Shop.Theme.Catalog'}</h3>
|
||||
{foreach from=$packItems item="product_pack"}
|
||||
{block name='product_miniature'}
|
||||
{include file='catalog/_partials/miniatures/pack-product.tpl' product=$product_pack}
|
||||
{/block}
|
||||
{/foreach}
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
{block name='product_discounts'}
|
||||
{include file='catalog/_partials/product-discounts.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_add_to_cart'}
|
||||
{include file='catalog/_partials/product-add-to-cart.tpl'}
|
||||
{/block}
|
||||
|
||||
{block name='product_refresh'}
|
||||
<input class="product-refresh ps-hidden-by-js" name="refresh" type="submit" value="{l s='Refresh' d='Shop.Theme.Actions'}">
|
||||
{/block}
|
||||
</form>
|
||||
{/block}
|
||||
</div>
|
||||
{block name='hook_display_reassurance'}
|
||||
{hook h='displayReassurance'}
|
||||
{/block}
|
||||
</div><div class="col-form_id-form_4666379129988496 col-md-12 col-lg-12 col-xl-12 col-sm-12 col-xs-12 col-sp-12">
|
||||
{include file="sub/product_info/tab.tpl"}
|
||||
{block name='product_accessories'}
|
||||
{if $accessories}
|
||||
<section class="product-accessories clearfix">
|
||||
<h3 class="h5 products-section-title">{l s='You might also like' d='Shop.Theme.Catalog'}</h3>
|
||||
<div class="products">
|
||||
<div class="owl-row {if isset($productClassWidget)} {$productClassWidget}{/if}">
|
||||
<div id="category-products2">
|
||||
{foreach from=$accessories item="product_accessory"}
|
||||
<div class="item{if $smarty.foreach.mypLoop.index == 0} first{/if}">
|
||||
{block name='product_miniature'}
|
||||
{if isset($productProfileDefault) && $productProfileDefault}
|
||||
|
||||
{hook h='displayLeoProfileProduct' product=$product_accessory profile=$productProfileDefault}
|
||||
{else}
|
||||
{include file='catalog/_partials/miniatures/product.tpl' product=$product_accessory}
|
||||
{/if}
|
||||
{/block}
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
products_list_functions.push(
|
||||
function(){
|
||||
$('#category-products2').owlCarousel({
|
||||
{if isset($IS_RTL) && $IS_RTL}
|
||||
direction:'rtl',
|
||||
{else}
|
||||
direction:'ltr',
|
||||
{/if}
|
||||
items : 4,
|
||||
itemsCustom : false,
|
||||
itemsDesktop : [1200, 4],
|
||||
itemsDesktopSmall : [992, 3],
|
||||
itemsTablet : [768, 2],
|
||||
itemsTabletSmall : false,
|
||||
itemsMobile : [480, 1],
|
||||
singleItem : false, // true : show only 1 item
|
||||
itemsScaleUp : false,
|
||||
slideSpeed : 200, // change speed when drag and drop a item
|
||||
paginationSpeed :800, // change speed when go next page
|
||||
|
||||
autoPlay : false, // time to show each item
|
||||
stopOnHover : false,
|
||||
navigation : true,
|
||||
navigationText : ["‹", "›"],
|
||||
|
||||
scrollPerPage :true,
|
||||
responsive :true,
|
||||
|
||||
pagination : false,
|
||||
paginationNumbers : false,
|
||||
|
||||
addClassActive : true,
|
||||
|
||||
mouseDrag : true,
|
||||
touchDrag : true,
|
||||
|
||||
});
|
||||
}
|
||||
);
|
||||
|
||||
</script>
|
||||
{block name='product_footer'}
|
||||
{hook h='displayFooterProduct' product=$product category=$category}
|
||||
{/block}
|
||||
</div></div>
|
||||
{block name='page_footer_container'}
|
||||
<footer class="page-footer">
|
||||
{block name='page_footer'}
|
||||
<!-- Footer content -->
|
||||
{/block}
|
||||
</footer>
|
||||
{/block}
|
||||
</section>
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2017 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License 3.0 (AFL-3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* https://opensource.org/licenses/AFL-3.0
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright PrestaShop SA
|
||||
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
|
||||
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
|
||||
header('Location: ../');
|
||||
exit;
|
||||
@@ -0,0 +1,76 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
{block name='product_accessories'}
|
||||
{if $accessories}
|
||||
<section class="product-accessories clearfix">
|
||||
<h3 class="h5 products-section-title">{l s='You might also like' d='Shop.Theme.Catalog'}</h3>
|
||||
<div class="products">
|
||||
<div class="owl-row {if isset($productClassWidget)} {$productClassWidget}{/if}">
|
||||
<div id="category-products2">
|
||||
{foreach from=$accessories item="product_accessory"}
|
||||
<div class="item{if $smarty.foreach.mypLoop.index == 0} first{/if}">
|
||||
{block name='product_miniature'}
|
||||
{if isset($productProfileDefault) && $productProfileDefault}
|
||||
{* exits THEME_NAME/profiles/profile_name.tpl -> load template*}
|
||||
{hook h='displayLeoProfileProduct' product=$product_accessory profile=$productProfileDefault}
|
||||
{else}
|
||||
{include file='catalog/_partials/miniatures/product.tpl' product=$product_accessory}
|
||||
{/if}
|
||||
{/block}
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
products_list_functions.push(
|
||||
function(){
|
||||
$('#category-products2').owlCarousel({
|
||||
{if isset($IS_RTL) && $IS_RTL}
|
||||
direction:'rtl',
|
||||
{else}
|
||||
direction:'ltr',
|
||||
{/if}
|
||||
items : 4,
|
||||
itemsCustom : false,
|
||||
itemsDesktop : [1200, 4],
|
||||
itemsDesktopSmall : [992, 3],
|
||||
itemsTablet : [768, 2],
|
||||
itemsTabletSmall : false,
|
||||
itemsMobile : [480, 1],
|
||||
singleItem : false, // true : show only 1 item
|
||||
itemsScaleUp : false,
|
||||
slideSpeed : 200, // change speed when drag and drop a item
|
||||
paginationSpeed :800, // change speed when go next page
|
||||
|
||||
autoPlay : false, // time to show each item
|
||||
stopOnHover : false,
|
||||
navigation : true,
|
||||
navigationText : ["‹", "›"],
|
||||
|
||||
scrollPerPage :true,
|
||||
responsive :true,
|
||||
|
||||
pagination : false,
|
||||
paginationNumbers : false,
|
||||
|
||||
addClassActive : true,
|
||||
|
||||
mouseDrag : true,
|
||||
touchDrag : true,
|
||||
|
||||
});
|
||||
}
|
||||
);
|
||||
|
||||
</script>
|
||||
@@ -0,0 +1,103 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
|
||||
{block name='page_content_container'}
|
||||
<section class="page-content" id="content">
|
||||
{block name='page_content'}
|
||||
<div class="images-container">
|
||||
{block name='product_cover_thumbnails'}
|
||||
{if $isMobile && $dmobile_swipe}
|
||||
<div class="list-images-mobile">
|
||||
{foreach from=$product.images item=image}
|
||||
<div>
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
src="{$image.bySize.large_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
{else}
|
||||
{block name='product_cover'}
|
||||
<div class="product-cover">
|
||||
{block name='product_flags'}
|
||||
<ul class="product-flags">
|
||||
{foreach from=$product.flags item=flag}
|
||||
<li class="product-flag {$flag.type}">{$flag.label}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/block}
|
||||
{if $product.cover}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid" src="{$product.cover.bySize.large_default.url}" alt="{$product.cover.legend}" title="{$product.cover.legend}" itemprop="image">
|
||||
<div class="layer hidden-sm-down" data-toggle="modal" data-target="#product-modal">
|
||||
<i class="material-icons zoom-in"></i>
|
||||
</div>
|
||||
{else}
|
||||
<img id="zoom_product" data-type-zoom="" class="js-qv-product-cover img-fluid" src="{$urls.no_picture_image.bySize.large_default.url}" alt="{$product.name}" title="{$product.name}" itemprop="image">
|
||||
{/if}
|
||||
</div>
|
||||
{/block}
|
||||
|
||||
{block name='product_images'}
|
||||
<div id="thumb-gallery" class="product-thumb-images">
|
||||
{if $product.cover}
|
||||
{foreach from=$product.images item=image}
|
||||
<div class="thumb-container {if $image.id_image == $product.cover.id_image} active {/if}">
|
||||
<a href="javascript:void(0)" data-image="{$image.bySize.large_default.url}" data-zoom-image="{$image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
data-image-medium-src="{$image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$image.bySize.large_default.url}"
|
||||
src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/foreach}
|
||||
{else}
|
||||
<div class="thumb-container">
|
||||
<a href="javascript:void(0)" data-image="{$urls.no_picture_image.bySize.large_default.url}" data-zoom-image="{$urls.no_picture_image.bySize.large_default.url}">
|
||||
<img
|
||||
class="thumb js-thumb img-fluid"
|
||||
data-image-medium-src="{$urls.no_picture_image.bySize.medium_default.url}"
|
||||
data-image-large-src="{$urls.no_picture_image.bySize.large_default.url}"
|
||||
src="{$urls.no_picture_image.bySize.home_default.url}"
|
||||
alt="{$product.name}"
|
||||
title="{$product.name}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
{if $product.images|@count > 1}
|
||||
<div class="arrows-product-fake slick-arrows">
|
||||
<button class="slick-prev slick-arrow" aria-label="Previous" type="button" >{l s='Previous' d='Shop.Theme.Catalog'}</button>
|
||||
<button class="slick-next slick-arrow" aria-label="Next" type="button">{l s='Next' d='Shop.Theme.Catalog'}</button>
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
{/if}
|
||||
{/block}
|
||||
{hook h='displayAfterProductThumbs'}
|
||||
</div>
|
||||
{/block}
|
||||
</section>
|
||||
{/block}
|
||||
|
||||
{block name='product_images_modal'}
|
||||
{include file='catalog/_partials/product-images-modal.tpl'}
|
||||
{/block}
|
||||
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2017 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License 3.0 (AFL-3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* https://opensource.org/licenses/AFL-3.0
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright PrestaShop SA
|
||||
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
|
||||
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
|
||||
header('Location: ../');
|
||||
exit;
|
||||
@@ -0,0 +1,83 @@
|
||||
@charset "utf-8";
|
||||
|
||||
#toolspanelcontent{
|
||||
width:240px
|
||||
}
|
||||
#toolspanelcontent > div:hover {
|
||||
color:#285151
|
||||
}
|
||||
#toolspanelcontent #bottombox input{
|
||||
*clear: both;
|
||||
*margin-left: 10px;
|
||||
}
|
||||
#toolspanelcontent #bottombox a{
|
||||
|
||||
}
|
||||
#toolspanelcontent #bottombox input[type="submit"]{height: 28px; line-height: 28px;}
|
||||
|
||||
#toolspanel {
|
||||
position:fixed;
|
||||
top:100px;
|
||||
left:0;
|
||||
background:red;
|
||||
z-index:999;
|
||||
*height:0;
|
||||
}
|
||||
#toolspanelcontent {
|
||||
position:fixed;
|
||||
top:100px;
|
||||
-webkit-border-radius: 0 5px 5px 0;
|
||||
-moz-border-radius: 0 5px 5px 0;
|
||||
border-radius: 0 5px 5px 0;
|
||||
color: #000;
|
||||
font-size: 90%;
|
||||
z-index: 999;
|
||||
border-bottom: 1px solid #DBDDD8;
|
||||
border-top: 1px solid #DBDDD8;
|
||||
background: #fff;
|
||||
}
|
||||
#toolspanelcontent > div {
|
||||
padding:12px
|
||||
}
|
||||
#toolspanel .pn-button {
|
||||
cursor: pointer;
|
||||
right:-38px;
|
||||
height:20px;
|
||||
width:14px;
|
||||
position: absolute;
|
||||
top: 115px;
|
||||
z-index: 999;
|
||||
border-bottom: 1px solid #DBDDD8;
|
||||
border-right: 1px solid #DBDDD8;
|
||||
border-top: 1px solid #DBDDD8;
|
||||
-webkit-border-radius: 0 5px 5px 0;
|
||||
-moz-border-radius: 0 5px 5px 0;
|
||||
border-radius: 0 5px 5px 0;
|
||||
-webkit-box-shadow: 3px 0 4px #cecece;
|
||||
-moz-box-shadow: 3px 0 4px #cecece;
|
||||
box-shadow: 3px 0 4px #cecece;
|
||||
background: #fff;
|
||||
}
|
||||
#toolspanel .pn-button {
|
||||
background: url("icon.png") no-repeat scroll 12px 13px #FFFFFF;
|
||||
opacity:1;
|
||||
}
|
||||
#toolspanel .open {
|
||||
background: url("icon.png") no-repeat scroll 12px -27px #FFFFFF;
|
||||
}
|
||||
#pnpartterns a {
|
||||
border: 1px solid #BBBBBB;
|
||||
display: block;
|
||||
float: left;
|
||||
height: 6px;
|
||||
margin: 0 5px 5px 0;
|
||||
padding: 6px;
|
||||
width: 6px;
|
||||
}
|
||||
#pnpartterns a.active{ border-color:red; -moz-transition:border-color 0.8s}
|
||||
|
||||
#template_theme select {
|
||||
width: 200px;
|
||||
background: #fff!important;
|
||||
border-color: #ccc;
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
/*
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*/
|
||||
// JavaScript Document
|
||||
$(document).ready( function(){
|
||||
$(".bgpattern").each( function(){
|
||||
var wrap = this;
|
||||
if( $("input",wrap).val() ){
|
||||
$("#" + $("input",wrap).val()).addClass("active");
|
||||
}
|
||||
$("a",this).click( function(){
|
||||
$("input",wrap).val( $(this).attr("id").replace(/\.\w+$/,"") );
|
||||
$("a",wrap).removeClass( "active" );
|
||||
$(this).addClass("active");
|
||||
} );
|
||||
} );
|
||||
} );
|
||||
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2017 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License 3.0 (AFL-3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* https://opensource.org/licenses/AFL-3.0
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright PrestaShop SA
|
||||
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
|
||||
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
|
||||
header('Location: ../');
|
||||
exit;
|
||||
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2017 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License 3.0 (AFL-3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* https://opensource.org/licenses/AFL-3.0
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright PrestaShop SA
|
||||
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
|
||||
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
|
||||
header('Location: ../');
|
||||
exit;
|
||||
@@ -0,0 +1,89 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
{if class_exists("LeoFrameworkHelper")}
|
||||
{$skins=LeoFrameworkHelper::getSkins($LEO_THEMENAME)}
|
||||
{$header_styles=LeoFrameworkHelper::getPanelConfigByTheme('header',$LEO_THEMENAME)}
|
||||
{$sidebarmenu=LeoFrameworkHelper::getPanelConfigByTheme('sidebarmenu',$LEO_THEMENAME)}
|
||||
{$theme_customizations=LeoFrameworkHelper::getLayoutSettingByTheme($LEO_THEMENAME)}
|
||||
<div id="leo-paneltool" class="hidden-md-down" data-cname="{$LEO_COOKIE_THEME}">
|
||||
{if $skins || $header_styles || $theme_customizations || $sidebarmenu}
|
||||
<div class="paneltool themetool">
|
||||
<div class="panelbutton">
|
||||
<span>THEME OPTIONS</span>
|
||||
</div>
|
||||
<div class="block-panelcontent">
|
||||
<div class="panelcontent">
|
||||
<div class="panelinner">
|
||||
<h4>{l s='Panel Tool' d='Shop.Theme.Global'}</h4>
|
||||
<!-- Theme layout mod section -->
|
||||
{*
|
||||
{if $theme_customizations && isset($theme_customizations.layout) && isset($theme_customizations.layout.layout_mode) && isset($theme_customizations.layout.layout_mode.option)}
|
||||
<div class="group-input clearfix layout">
|
||||
<label class="col-sm-12 control-label"><span class="fa fa-desktop"></span>{l s='Layout Mod' d='Shop.Theme.Global'}</label>
|
||||
<div class="col-sm-12">
|
||||
{foreach $theme_customizations.layout.layout_mode.option as $layout}
|
||||
<span class="leo-dynamic-update-layout {if $LEO_LAYOUT_MODE == $layout.id}current-layout-mod{/if}" data-layout-mod="{$layout.id}">
|
||||
{$layout.name}
|
||||
</span>
|
||||
{/foreach}
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
*}
|
||||
<!-- Theme skin section -->
|
||||
{if $skins}
|
||||
<div class="group-input clearfix">
|
||||
<label class="col-sm-12 control-label"><span class="fa fa-pencil"></span>{l s='Theme' d='Shop.Theme.Global'}</label>
|
||||
<div class="col-sm-12">
|
||||
<div data-theme-skin-id="default" class="skin-default leo-dynamic-theme-skin{if $LEO_DEFAULT_SKIN=='default'} current-theme-skin{/if}">
|
||||
<label>{l s='Default' d='Shop.Theme.Global'}</label>
|
||||
</div>
|
||||
{foreach $skins as $skin}
|
||||
<div data-theme-skin-id="{$skin.id}" data-theme-skin-css="{$skin.css}" data-theme-skin-rtl="{$skin.rtl}" class="leo-dynamic-theme-skin{if isset($skin.icon) && $skin.icon} theme-skin-type-image{/if}{if $LEO_DEFAULT_SKIN==$skin.id} current-theme-skin{/if}">
|
||||
{if isset($skin.icon) && $skin.icon}
|
||||
<img class="lazy" data-src="{$skin.icon}" width="20" height="20" alt="{$skin.name}" />
|
||||
{else}
|
||||
<label>{$skin.name}</label>
|
||||
{/if}
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
<!-- Float Header -->
|
||||
<div class="group-input clearfix">
|
||||
<label class="col-sm-12 control-label"><span class="fa fa-credit-card"></span>{l s='Float Header' d='Shop.Theme.Global'}</label>
|
||||
<div class="col-sm-12">
|
||||
<div class="btn_enable_fheader">
|
||||
<span class="enable_fheader btn_yes {if $USE_FHEADER}current{/if}" data-value="1">
|
||||
<span>{l s='Yes' d='Shop.Theme.Global'}</span>
|
||||
</span>
|
||||
<span class="enable_fheader btn_no {if !$USE_FHEADER}current{/if}" data-value="0">
|
||||
<span>{l s='No' d='Shop.Theme.Global'}</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Show Profile -->
|
||||
{hook h="pagebuilderConfig" configName="profile"}
|
||||
{hook h="pagebuilderConfig" configName="header"}
|
||||
{hook h="pagebuilderConfig" configName="footer"}
|
||||
{*
|
||||
{hook h="pagebuilderConfig" configName="content"}
|
||||
{hook h="pagebuilderConfig" configName="product"}
|
||||
{hook h="pagebuilderConfig" configName="product_builder"}
|
||||
*}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
<!-- Live Theme Editor -->
|
||||
|
||||
</div>
|
||||
{/if}
|
||||
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2017 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License 3.0 (AFL-3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* https://opensource.org/licenses/AFL-3.0
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright PrestaShop SA
|
||||
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
|
||||
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
|
||||
header('Location: ../');
|
||||
exit;
|
||||
@@ -0,0 +1,21 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
<div class="quickview{if !$product.main_variants} no-variants{/if} hidden-sm-down">
|
||||
<a
|
||||
href="#"
|
||||
class="quick-view"
|
||||
data-link-action="quickview" title="{l s='Quick view' d='Shop.Theme.Global'}"
|
||||
>
|
||||
<span class="leo-quickview-bt-loading cssload-speeding-wheel"></span>
|
||||
<span class="leo-quickview-bt-content">
|
||||
<i class="material-icons search"></i>
|
||||
<span>{l s='Quick view' d='Shop.Theme.Global'}</span>
|
||||
</span>
|
||||
</a>
|
||||
</div>
|
||||
@@ -0,0 +1,8 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<div class="header-logo"> <a href="{$urls.base_url}"> <img class="lazy img-fluid" data-src="{$shop.logo}" alt="{$shop.name} {l s='logo' d='Shop.Theme'}"> </a></div>
|
||||
@@ -0,0 +1,8 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<div class="f-logo"> <a href="{$urls.base_url}"> <img class="lazy img-fluid" data-src="{$shop.logo}" alt="{$shop.name} {l s='logo' d='Shop.Theme'}"> </a></div>
|
||||
@@ -0,0 +1,8 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<div class="h-logo"> <a href="{$urls.base_url}"> <img class="lazy img-fluid" data-src="{$shop.logo}" alt="{$shop.name}"> </a></div>
|
||||
@@ -0,0 +1,8 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
{if isset($LEO_BACKTOP) && $LEO_BACKTOP} <div id="back-top"><a href="#" class="fa fa-angle-double-up"></a></div> {/if}
|
||||
@@ -0,0 +1,8 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<div class="h-logo"> <a href="{$urls.base_url}"> <img class="img-fluid" src="/themes/at_movic/assets/img/logo.svg" alt="{$shop.name}"> </a></div>
|
||||
@@ -0,0 +1,8 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<div class="wislish-button"> <a class="ap-btn-wishlist" href="{url entity='module' name='leofeature' controller='mywishlist'}" title="" rel="nofollow" > <i class="ti-heart"></i> <span class="ap-total-wishlist ap-total"></span> </a> </div>
|
||||
@@ -0,0 +1,8 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<div class="f-logo2"> <a href="{$urls.base_url}"> <img class="img-fluid" src="{$shop.logo}" alt="{$shop.name}"> </a></div>
|
||||
@@ -0,0 +1,8 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<div class="f-logo"> <a href="{$urls.base_url}"> <img class="img-fluid" src="{$shop.logo}" alt="{$shop.name}"> </a></div>
|
||||
@@ -0,0 +1,8 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<div class="h-logo"> <a href="{$urls.base_url}"> <img class="img-fluid" src="{$shop.logo}" alt="{$shop.name}"> </a></div>
|
||||
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2017 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License 3.0 (AFL-3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* https://opensource.org/licenses/AFL-3.0
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright PrestaShop SA
|
||||
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
|
||||
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
|
||||
header('Location: ../');
|
||||
exit;
|
||||
@@ -0,0 +1,172 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<article class="product-miniature js-product-miniature" data-id-product="{$product.id_product}" data-id-product-attribute="{$product.id_product_attribute}" itemscope itemtype="http://schema.org/Product">
|
||||
<div class="thumbnail-container">
|
||||
<div class="product-image">
|
||||
{block name='product_thumbnail'}
|
||||
{if isset($cfg_product_list_image) && $cfg_product_list_image}
|
||||
<div class="leo-more-info" data-idproduct="{$product.id_product}"></div>
|
||||
{/if}
|
||||
|
||||
{if $product.cover}
|
||||
{if isset($formAtts) && isset($formAtts.lazyload) && $formAtts.lazyload}
|
||||
|
||||
|
||||
{if $lmobile_swipe && $isMobile}
|
||||
<div class="product-list-images-mobile">
|
||||
<div>
|
||||
{/if}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid lazyOwl"
|
||||
src = ""
|
||||
data-src = "{$product.cover.bySize.home_default.url}"
|
||||
alt = "{$product.cover.legend}"
|
||||
data-full-size-image-url = "{$product.cover.large.url}"
|
||||
>
|
||||
{if isset($cfg_product_one_img) && $cfg_product_one_img}
|
||||
<span class="product-additional" data-idproduct="{if $lmobile_swipe && $isMobile}0{else}{$product.id_product}{/if}"></span>
|
||||
{/if}
|
||||
</a>
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
</div>
|
||||
{foreach from=$product.images item=image}
|
||||
{if $product.cover.bySize.home_default.url != $image.bySize.home_default.url}
|
||||
<div>
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}{if $aplazyload} lazy{/if}"
|
||||
data-src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
<div>
|
||||
{/if}
|
||||
{else}
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
<div class="product-list-images-mobile">
|
||||
<div>
|
||||
{/if}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid"
|
||||
src = "{$product.cover.bySize.home_default.url}"
|
||||
alt = "{$product.cover.legend}"
|
||||
data-full-size-image-url = "{$product.cover.large.url}"
|
||||
>
|
||||
{if isset($cfg_product_one_img) && $cfg_product_one_img}
|
||||
<span class="product-additional" data-idproduct="{if $lmobile_swipe && $isMobile}0{else}{$product.id_product}{/if}"></span>
|
||||
{/if}
|
||||
</a>
|
||||
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
</div>
|
||||
{foreach from=$product.images item=image}
|
||||
{if $product.cover.bySize.home_default.url != $image.bySize.home_default.url}
|
||||
<div>
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="thumb js-thumb img-fluid {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</div>
|
||||
{/if}
|
||||
{/if}
|
||||
{else}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail leo-noimage">
|
||||
<img
|
||||
{if $aplazyload}class="lazy" data-src{else}src{/if} = "{$urls.no_picture_image.bySize.home_default.url}"
|
||||
>
|
||||
</a>
|
||||
{/if}
|
||||
|
||||
{/block}
|
||||
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_flags'}
|
||||
<ul class="product-flags">
|
||||
{foreach from=$product.flags item=flag}
|
||||
<li class="product-flag {$flag.type}">{$flag.label}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/block}
|
||||
<div class="functional-buttons clearfix">
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
<div class="quickview{if !$product.main_variants} no-variants{/if} hidden-sm-down">
|
||||
<a
|
||||
href="#"
|
||||
class="quick-view"
|
||||
data-link-action="quickview" title="{l s='Quick view' d='Shop.Theme.Global'}"
|
||||
>
|
||||
<span class="leo-quickview-bt-loading cssload-speeding-wheel"></span>
|
||||
<span class="leo-quickview-bt-content">
|
||||
<i class="material-icons search"></i>
|
||||
<span>{l s='Quick view' d='Shop.Theme.Global'}</span>
|
||||
</span>
|
||||
</a>
|
||||
</div>
|
||||
</div></div>
|
||||
<div class="product-meta"><div class="p-name">
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_name'}
|
||||
<h3 class="h3 product-title" itemprop="name"><a href="{$product.url}">{$product.name|truncate:30:'...'}</a></h3>
|
||||
{/block}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoWishlistButton' product=$product}
|
||||
</div><div class="p-price">
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoCartButton' product=$product}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_price_and_shipping'}
|
||||
{if $product.show_price}
|
||||
<div class="product-price-and-shipping {if $product.has_discount}has_discount{/if}">
|
||||
{if $product.has_discount}
|
||||
{hook h='displayProductPriceBlock' product=$product type="old_price"}
|
||||
<span class="sr-only">{l s='Regular price' d='Shop.Theme.Catalog'}</span>
|
||||
<span class="regular-price">{$product.regular_price}</span>
|
||||
{if $product.discount_type === 'percentage'}
|
||||
<span class="discount-percentage">{$product.discount_percentage}</span>
|
||||
{elseif $product.discount_type === 'amount'}
|
||||
<span class="discount-amount discount-product">{$product.discount_amount_to_display}</span>
|
||||
{/if}
|
||||
{/if}
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type="before_price"}
|
||||
|
||||
<span class="sr-only">{l s='Price' d='Shop.Theme.Catalog'}</span>
|
||||
<span class="price" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
|
||||
<span itemprop="priceCurrency" content="{$currency.iso_code}"></span><span itemprop="price" content="{$product.price_amount}">{$product.price}</span>
|
||||
</span>
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type='unit_price'}
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type='weight'}
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
</div>
|
||||
{block name='product_description_short'}
|
||||
<div class="product-description-short" itemprop="description">{$product.description_short|strip_tags|truncate:150:'...' nofilter}</div>
|
||||
{/block}</div>
|
||||
</div>
|
||||
</article>
|
||||
@@ -0,0 +1,182 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<article class="product-miniature js-product-miniature" data-id-product="{$product.id_product}" data-id-product-attribute="{$product.id_product_attribute}" itemscope itemtype="http://schema.org/Product">
|
||||
<div class="thumbnail-container">
|
||||
<div class="product-image">
|
||||
{block name='product_thumbnail'}
|
||||
{if isset($cfg_product_list_image) && $cfg_product_list_image}
|
||||
<div class="leo-more-info" data-idproduct="{$product.id_product}"></div>
|
||||
{/if}
|
||||
|
||||
{if $product.cover}
|
||||
{if isset($formAtts) && isset($formAtts.lazyload) && $formAtts.lazyload}
|
||||
|
||||
|
||||
{if $lmobile_swipe && $isMobile}
|
||||
<div class="product-list-images-mobile">
|
||||
<div>
|
||||
{/if}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid lazyOwl"
|
||||
src = ""
|
||||
data-src = "{$product.cover.bySize.home_default.url}"
|
||||
alt = "{$product.cover.legend}"
|
||||
data-full-size-image-url = "{$product.cover.large.url}"
|
||||
>
|
||||
{if isset($cfg_product_one_img) && $cfg_product_one_img}
|
||||
<span class="product-additional" data-idproduct="{if $lmobile_swipe && $isMobile}0{else}{$product.id_product}{/if}"></span>
|
||||
{/if}
|
||||
</a>
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
</div>
|
||||
{foreach from=$product.images item=image}
|
||||
{if $product.cover.bySize.home_default.url != $image.bySize.home_default.url}
|
||||
<div>
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}{if $aplazyload} lazy{/if}"
|
||||
data-src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
<div>
|
||||
{/if}
|
||||
{else}
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
<div class="product-list-images-mobile">
|
||||
<div>
|
||||
{/if}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid"
|
||||
src = "{$product.cover.bySize.home_default.url}"
|
||||
alt = "{$product.cover.legend}"
|
||||
data-full-size-image-url = "{$product.cover.large.url}"
|
||||
>
|
||||
{if isset($cfg_product_one_img) && $cfg_product_one_img}
|
||||
<span class="product-additional" data-idproduct="{if $lmobile_swipe && $isMobile}0{else}{$product.id_product}{/if}"></span>
|
||||
{/if}
|
||||
</a>
|
||||
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
</div>
|
||||
{foreach from=$product.images item=image}
|
||||
{if $product.cover.bySize.home_default.url != $image.bySize.home_default.url}
|
||||
<div>
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="thumb js-thumb img-fluid {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</div>
|
||||
{/if}
|
||||
{/if}
|
||||
{else}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail leo-noimage">
|
||||
<img
|
||||
{if $aplazyload}class="lazy" data-src{else}src{/if} = "{$urls.no_picture_image.bySize.home_default.url}"
|
||||
>
|
||||
</a>
|
||||
{/if}
|
||||
|
||||
{/block}
|
||||
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_flags'}
|
||||
<ul class="product-flags">
|
||||
{foreach from=$product.flags item=flag}
|
||||
<li class="product-flag {$flag.type}">{$flag.label}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/block}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
<div class="quickview{if !$product.main_variants} no-variants{/if} hidden-sm-down">
|
||||
<a
|
||||
href="#"
|
||||
class="quick-view"
|
||||
data-link-action="quickview" title="{l s='Quick view' d='Shop.Theme.Global'}"
|
||||
>
|
||||
<span class="leo-quickview-bt-loading cssload-speeding-wheel"></span>
|
||||
<span class="leo-quickview-bt-content">
|
||||
<i class="material-icons search"></i>
|
||||
<span>{l s='Quick view' d='Shop.Theme.Global'}</span>
|
||||
</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="product-meta"><div class="pro-info">
|
||||
<div class="highlighted-informations{if !$product.main_variants} no-variants{/if} hidden-sm-down">
|
||||
{block name='product_variants'}
|
||||
{if $product.main_variants}
|
||||
{include file='catalog/_partials/variant-links.tpl' variants=$product.main_variants}
|
||||
{/if}
|
||||
{/block}
|
||||
</div></div>
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_name'}
|
||||
<h3 class="h3 product-title" itemprop="name"><a href="{$product.url}">{$product.name|truncate:30:'...'}</a></h3>
|
||||
{/block}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_price_and_shipping'}
|
||||
{if $product.show_price}
|
||||
<div class="product-price-and-shipping {if $product.has_discount}has_discount{/if}">
|
||||
{if $product.has_discount}
|
||||
{hook h='displayProductPriceBlock' product=$product type="old_price"}
|
||||
<span class="sr-only">{l s='Regular price' d='Shop.Theme.Catalog'}</span>
|
||||
<span class="regular-price">{$product.regular_price}</span>
|
||||
{if $product.discount_type === 'percentage'}
|
||||
<span class="discount-percentage">{$product.discount_percentage}</span>
|
||||
{elseif $product.discount_type === 'amount'}
|
||||
<span class="discount-amount discount-product">{$product.discount_amount_to_display}</span>
|
||||
{/if}
|
||||
{/if}
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type="before_price"}
|
||||
|
||||
<span class="sr-only">{l s='Price' d='Shop.Theme.Catalog'}</span>
|
||||
<span class="price" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
|
||||
<span itemprop="priceCurrency" content="{$currency.iso_code}"></span><span itemprop="price" content="{$product.price_amount}">{$product.price}</span>
|
||||
</span>
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type='unit_price'}
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type='weight'}
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
{block name='product_description_short'}
|
||||
<div class="product-description-short" itemprop="description">{$product.description_short|strip_tags|truncate:150:'...' nofilter}</div>
|
||||
{/block}<div class="pro-btn">
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoCartButton' product=$product}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoWishlistButton' product=$product}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoCompareButton' product=$product}
|
||||
</div></div>
|
||||
</div>
|
||||
</article>
|
||||
@@ -0,0 +1,179 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<article class="product-miniature js-product-miniature" data-id-product="{$product.id_product}" data-id-product-attribute="{$product.id_product_attribute}" itemscope itemtype="http://schema.org/Product">
|
||||
<div class="thumbnail-container">
|
||||
<div class="product-image">
|
||||
{block name='product_thumbnail'}
|
||||
{if isset($cfg_product_list_image) && $cfg_product_list_image}
|
||||
<div class="leo-more-info" data-idproduct="{$product.id_product}"></div>
|
||||
{/if}
|
||||
|
||||
{if $product.cover}
|
||||
{if isset($formAtts) && isset($formAtts.lazyload) && $formAtts.lazyload}
|
||||
|
||||
|
||||
{if $lmobile_swipe && $isMobile}
|
||||
<div class="product-list-images-mobile">
|
||||
<div>
|
||||
{/if}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid lazyOwl"
|
||||
src = ""
|
||||
data-src = "{$product.cover.bySize.home_default.url}"
|
||||
alt = "{$product.cover.legend}"
|
||||
data-full-size-image-url = "{$product.cover.large.url}"
|
||||
>
|
||||
{if isset($cfg_product_one_img) && $cfg_product_one_img}
|
||||
<span class="product-additional" data-idproduct="{if $lmobile_swipe && $isMobile}0{else}{$product.id_product}{/if}"></span>
|
||||
{/if}
|
||||
</a>
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
</div>
|
||||
{foreach from=$product.images item=image}
|
||||
{if $product.cover.bySize.home_default.url != $image.bySize.home_default.url}
|
||||
<div>
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}{if $aplazyload} lazy{/if}"
|
||||
data-src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
<div>
|
||||
{/if}
|
||||
{else}
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
<div class="product-list-images-mobile">
|
||||
<div>
|
||||
{/if}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid"
|
||||
src = "{$product.cover.bySize.home_default.url}"
|
||||
alt = "{$product.cover.legend}"
|
||||
data-full-size-image-url = "{$product.cover.large.url}"
|
||||
>
|
||||
{if isset($cfg_product_one_img) && $cfg_product_one_img}
|
||||
<span class="product-additional" data-idproduct="{if $lmobile_swipe && $isMobile}0{else}{$product.id_product}{/if}"></span>
|
||||
{/if}
|
||||
</a>
|
||||
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
</div>
|
||||
{foreach from=$product.images item=image}
|
||||
{if $product.cover.bySize.home_default.url != $image.bySize.home_default.url}
|
||||
<div>
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="thumb js-thumb img-fluid {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</div>
|
||||
{/if}
|
||||
{/if}
|
||||
{else}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail leo-noimage">
|
||||
<img
|
||||
{if $aplazyload}class="lazy" data-src{else}src{/if} = "{$urls.no_picture_image.bySize.home_default.url}"
|
||||
>
|
||||
</a>
|
||||
{/if}
|
||||
|
||||
{/block}
|
||||
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_flags'}
|
||||
<ul class="product-flags">
|
||||
{foreach from=$product.flags item=flag}
|
||||
<li class="product-flag {$flag.type}">{$flag.label}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/block}
|
||||
<div class="pro3-btn">
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
<div class="quickview{if !$product.main_variants} no-variants{/if} hidden-sm-down">
|
||||
<a
|
||||
href="#"
|
||||
class="quick-view"
|
||||
data-link-action="quickview" title="{l s='Quick view' d='Shop.Theme.Global'}"
|
||||
>
|
||||
<span class="leo-quickview-bt-loading cssload-speeding-wheel"></span>
|
||||
<span class="leo-quickview-bt-content">
|
||||
<i class="material-icons search"></i>
|
||||
<span>{l s='Quick view' d='Shop.Theme.Global'}</span>
|
||||
</span>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoCartButton' product=$product}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoWishlistButton' product=$product}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoCompareButton' product=$product}
|
||||
</div></div>
|
||||
<div class="product-meta">
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_name'}
|
||||
{* <h3 class="h3 product-title" itemprop="name"><a href="{$product.url}">{$product.name|truncate:30:'...'}</a></h3> *}
|
||||
<h3 class="h3 product-title" itemprop="name"><a href="{$product.url}">{$product.name}</a></h3>
|
||||
{/block}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_price_and_shipping'}
|
||||
{if $product.show_price}
|
||||
<div class="product-price-and-shipping {if $product.has_discount}has_discount{/if}">
|
||||
{if $product.has_discount}
|
||||
{hook h='displayProductPriceBlock' product=$product type="old_price"}
|
||||
<span class="sr-only">{l s='Regular price' d='Shop.Theme.Catalog'}</span>
|
||||
<span class="regular-price">{$product.regular_price}</span>
|
||||
{if $product.discount_type === 'percentage'}
|
||||
<span class="discount-percentage">{$product.discount_percentage}</span>
|
||||
{elseif $product.discount_type === 'amount'}
|
||||
<span class="discount-amount discount-product">{$product.discount_amount_to_display}</span>
|
||||
{/if}
|
||||
{/if}
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type="before_price"}
|
||||
|
||||
<span class="sr-only">{l s='Price' d='Shop.Theme.Catalog'}</span>
|
||||
<span class="price" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
|
||||
<span itemprop="priceCurrency" content="{$currency.iso_code}"></span><span itemprop="price" content="{$product.price_amount}">{$product.price}</span>
|
||||
</span>
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type='unit_price'}
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type='weight'}
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoCartAttribute' product=$product}
|
||||
|
||||
{block name='product_description_short'}
|
||||
<div class="product-description-short" itemprop="description">{$product.description_short|strip_tags|truncate:150:'...' nofilter}</div>
|
||||
{/block}</div>
|
||||
</div>
|
||||
</article>
|
||||
@@ -0,0 +1,172 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<article class="product-miniature js-product-miniature" data-id-product="{$product.id_product}" data-id-product-attribute="{$product.id_product_attribute}" itemscope itemtype="http://schema.org/Product">
|
||||
<div class="thumbnail-container">
|
||||
<div class="product-image">
|
||||
{block name='product_thumbnail'}
|
||||
{if isset($cfg_product_list_image) && $cfg_product_list_image}
|
||||
<div class="leo-more-info" data-idproduct="{$product.id_product}"></div>
|
||||
{/if}
|
||||
|
||||
{if $product.cover}
|
||||
{if isset($formAtts) && isset($formAtts.lazyload) && $formAtts.lazyload}
|
||||
|
||||
|
||||
{if $lmobile_swipe && $isMobile}
|
||||
<div class="product-list-images-mobile">
|
||||
<div>
|
||||
{/if}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid lazyOwl"
|
||||
src = ""
|
||||
data-src = "{$product.cover.bySize.home_default.url}"
|
||||
alt = "{$product.cover.legend}"
|
||||
data-full-size-image-url = "{$product.cover.large.url}"
|
||||
>
|
||||
{if isset($cfg_product_one_img) && $cfg_product_one_img}
|
||||
<span class="product-additional" data-idproduct="{if $lmobile_swipe && $isMobile}0{else}{$product.id_product}{/if}"></span>
|
||||
{/if}
|
||||
</a>
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
</div>
|
||||
{foreach from=$product.images item=image}
|
||||
{if $product.cover.bySize.home_default.url != $image.bySize.home_default.url}
|
||||
<div>
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}{if $aplazyload} lazy{/if}"
|
||||
data-src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
<div>
|
||||
{/if}
|
||||
{else}
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
<div class="product-list-images-mobile">
|
||||
<div>
|
||||
{/if}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid"
|
||||
src = "{$product.cover.bySize.home_default.url}"
|
||||
alt = "{$product.cover.legend}"
|
||||
data-full-size-image-url = "{$product.cover.large.url}"
|
||||
>
|
||||
{if isset($cfg_product_one_img) && $cfg_product_one_img}
|
||||
<span class="product-additional" data-idproduct="{if $lmobile_swipe && $isMobile}0{else}{$product.id_product}{/if}"></span>
|
||||
{/if}
|
||||
</a>
|
||||
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
</div>
|
||||
{foreach from=$product.images item=image}
|
||||
{if $product.cover.bySize.home_default.url != $image.bySize.home_default.url}
|
||||
<div>
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="thumb js-thumb img-fluid {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</div>
|
||||
{/if}
|
||||
{/if}
|
||||
{else}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail leo-noimage">
|
||||
<img
|
||||
{if $aplazyload}class="lazy" data-src{else}src{/if} = "{$urls.no_picture_image.bySize.home_default.url}"
|
||||
>
|
||||
</a>
|
||||
{/if}
|
||||
|
||||
{/block}
|
||||
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_flags'}
|
||||
<ul class="product-flags">
|
||||
{foreach from=$product.flags item=flag}
|
||||
<li class="product-flag {$flag.type}">{$flag.label}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/block}
|
||||
<div class="functional-buttons clearfix">
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
<div class="quickview{if !$product.main_variants} no-variants{/if} hidden-sm-down">
|
||||
<a
|
||||
href="#"
|
||||
class="quick-view"
|
||||
data-link-action="quickview" title="{l s='Quick view' d='Shop.Theme.Global'}"
|
||||
>
|
||||
<span class="leo-quickview-bt-loading cssload-speeding-wheel"></span>
|
||||
<span class="leo-quickview-bt-content">
|
||||
<i class="material-icons search"></i>
|
||||
<span>{l s='Quick view' d='Shop.Theme.Global'}</span>
|
||||
</span>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoWishlistButton' product=$product}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoCompareButton' product=$product}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoCartButton' product=$product}
|
||||
</div></div>
|
||||
<div class="product-meta">
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_name'}
|
||||
<h3 class="h3 product-title" itemprop="name"><a href="{$product.url}">{$product.name|truncate:30:'...'}</a></h3>
|
||||
{/block}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_price_and_shipping'}
|
||||
{if $product.show_price}
|
||||
<div class="product-price-and-shipping {if $product.has_discount}has_discount{/if}">
|
||||
{if $product.has_discount}
|
||||
{hook h='displayProductPriceBlock' product=$product type="old_price"}
|
||||
<span class="sr-only">{l s='Regular price' d='Shop.Theme.Catalog'}</span>
|
||||
<span class="regular-price">{$product.regular_price}</span>
|
||||
{if $product.discount_type === 'percentage'}
|
||||
<span class="discount-percentage">{$product.discount_percentage}</span>
|
||||
{elseif $product.discount_type === 'amount'}
|
||||
<span class="discount-amount discount-product">{$product.discount_amount_to_display}</span>
|
||||
{/if}
|
||||
{/if}
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type="before_price"}
|
||||
|
||||
<span class="sr-only">{l s='Price' d='Shop.Theme.Catalog'}</span>
|
||||
<span class="price" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
|
||||
<span itemprop="priceCurrency" content="{$currency.iso_code}"></span><span itemprop="price" content="{$product.price_amount}">{$product.price}</span>
|
||||
</span>
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type='unit_price'}
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type='weight'}
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
</div>
|
||||
</div>
|
||||
</article>
|
||||
@@ -0,0 +1,178 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<article class="product-miniature js-product-miniature" data-id-product="{$product.id_product}" data-id-product-attribute="{$product.id_product_attribute}" itemscope itemtype="http://schema.org/Product">
|
||||
<div class="thumbnail-container">
|
||||
<div class="product-image">
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_flags'}
|
||||
<ul class="product-flags">
|
||||
{foreach from=$product.flags item=flag}
|
||||
<li class="product-flag {$flag.type}">{$flag.label}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/block}
|
||||
|
||||
{block name='product_thumbnail'}
|
||||
{if isset($cfg_product_list_image) && $cfg_product_list_image}
|
||||
<div class="leo-more-info" data-idproduct="{$product.id_product}"></div>
|
||||
{/if}
|
||||
|
||||
{if $product.cover}
|
||||
{if isset($formAtts) && isset($formAtts.lazyload) && $formAtts.lazyload}
|
||||
|
||||
|
||||
{if $lmobile_swipe && $isMobile}
|
||||
<div class="product-list-images-mobile">
|
||||
<div>
|
||||
{/if}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid lazyOwl"
|
||||
src = ""
|
||||
data-src = "{$product.cover.bySize.home_default.url}"
|
||||
alt = "{$product.cover.legend}"
|
||||
data-full-size-image-url = "{$product.cover.large.url}"
|
||||
>
|
||||
{if isset($cfg_product_one_img) && $cfg_product_one_img}
|
||||
<span class="product-additional" data-idproduct="{if $lmobile_swipe && $isMobile}0{else}{$product.id_product}{/if}"></span>
|
||||
{/if}
|
||||
</a>
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
</div>
|
||||
{foreach from=$product.images item=image}
|
||||
{if $product.cover.bySize.home_default.url != $image.bySize.home_default.url}
|
||||
<div>
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}{if $aplazyload} lazy{/if}"
|
||||
data-src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
<div>
|
||||
{/if}
|
||||
{else}
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
<div class="product-list-images-mobile">
|
||||
<div>
|
||||
{/if}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid"
|
||||
src = "{$product.cover.bySize.home_default.url}"
|
||||
alt = "{$product.cover.legend}"
|
||||
data-full-size-image-url = "{$product.cover.large.url}"
|
||||
>
|
||||
{if isset($cfg_product_one_img) && $cfg_product_one_img}
|
||||
<span class="product-additional" data-idproduct="{if $lmobile_swipe && $isMobile}0{else}{$product.id_product}{/if}"></span>
|
||||
{/if}
|
||||
</a>
|
||||
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
</div>
|
||||
{foreach from=$product.images item=image}
|
||||
{if $product.cover.bySize.home_default.url != $image.bySize.home_default.url}
|
||||
<div>
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="thumb js-thumb img-fluid {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</div>
|
||||
{/if}
|
||||
{/if}
|
||||
{else}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail leo-noimage">
|
||||
<img
|
||||
{if $aplazyload}class="lazy" data-src{else}src{/if} = "{$urls.no_picture_image.bySize.home_default.url}"
|
||||
>
|
||||
</a>
|
||||
{/if}
|
||||
|
||||
{/block}
|
||||
|
||||
<div class="functional-buttons clearfix">
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoWishlistButton' product=$product}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoCompareButton' product=$product}
|
||||
</div></div>
|
||||
<div class="product-meta">
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_name'}
|
||||
<h3 class="h3 product-title" itemprop="name"><a href="{$product.url}">{$product.name|truncate:30:'...'}</a></h3>
|
||||
{/block}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_price_and_shipping'}
|
||||
{if $product.show_price}
|
||||
<div class="product-price-and-shipping {if $product.has_discount}has_discount{/if}">
|
||||
{if $product.has_discount}
|
||||
{hook h='displayProductPriceBlock' product=$product type="old_price"}
|
||||
<span class="sr-only">{l s='Regular price' d='Shop.Theme.Catalog'}</span>
|
||||
<span class="regular-price">{$product.regular_price}</span>
|
||||
{if $product.discount_type === 'percentage'}
|
||||
<span class="discount-percentage">{$product.discount_percentage}</span>
|
||||
{elseif $product.discount_type === 'amount'}
|
||||
<span class="discount-amount discount-product">{$product.discount_amount_to_display}</span>
|
||||
{/if}
|
||||
{/if}
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type="before_price"}
|
||||
|
||||
<span class="sr-only">{l s='Price' d='Shop.Theme.Catalog'}</span>
|
||||
<span class="price" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
|
||||
<span itemprop="priceCurrency" content="{$currency.iso_code}"></span><span itemprop="price" content="{$product.price_amount}">{$product.price}</span>
|
||||
</span>
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type='unit_price'}
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type='weight'}
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
<div class="pro-info">
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoProductListReview' product=$product}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoCartButton' product=$product}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
<div class="quickview{if !$product.main_variants} no-variants{/if} hidden-sm-down">
|
||||
<a
|
||||
href="#"
|
||||
class="quick-view"
|
||||
data-link-action="quickview" title="{l s='Quick view' d='Shop.Theme.Global'}"
|
||||
>
|
||||
<span class="leo-quickview-bt-loading cssload-speeding-wheel"></span>
|
||||
<span class="leo-quickview-bt-content">
|
||||
<i class="material-icons search"></i>
|
||||
<span>{l s='Quick view' d='Shop.Theme.Global'}</span>
|
||||
</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
{block name='product_description_short'}
|
||||
<div class="product-description-short" itemprop="description">{$product.description_short|strip_tags|truncate:150:'...' nofilter}</div>
|
||||
{/block}</div>
|
||||
</div>
|
||||
</article>
|
||||
@@ -0,0 +1,139 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<article class="product-miniature js-product-miniature" data-id-product="{$product.id_product}" data-id-product-attribute="{$product.id_product_attribute}" itemscope itemtype="http://schema.org/Product">
|
||||
<div class="thumbnail-container">
|
||||
<div class="product-image">
|
||||
{block name='product_thumbnail'}
|
||||
{if isset($cfg_product_list_image) && $cfg_product_list_image}
|
||||
<div class="leo-more-info" data-idproduct="{$product.id_product}"></div>
|
||||
{/if}
|
||||
|
||||
{if $product.cover}
|
||||
{if isset($formAtts) && isset($formAtts.lazyload) && $formAtts.lazyload}
|
||||
|
||||
|
||||
{if $lmobile_swipe && $isMobile}
|
||||
<div class="product-list-images-mobile">
|
||||
<div>
|
||||
{/if}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid lazyOwl"
|
||||
src = ""
|
||||
data-src = "{$product.cover.bySize.home_default.url}"
|
||||
alt = "{$product.cover.legend}"
|
||||
data-full-size-image-url = "{$product.cover.large.url}"
|
||||
>
|
||||
{if isset($cfg_product_one_img) && $cfg_product_one_img}
|
||||
<span class="product-additional" data-idproduct="{if $lmobile_swipe && $isMobile}0{else}{$product.id_product}{/if}"></span>
|
||||
{/if}
|
||||
</a>
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
</div>
|
||||
{foreach from=$product.images item=image}
|
||||
{if $product.cover.bySize.home_default.url != $image.bySize.home_default.url}
|
||||
<div>
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}{if $aplazyload} lazy{/if}"
|
||||
data-src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
<div>
|
||||
{/if}
|
||||
{else}
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
<div class="product-list-images-mobile">
|
||||
<div>
|
||||
{/if}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid"
|
||||
src = "{$product.cover.bySize.home_default.url}"
|
||||
alt = "{$product.cover.legend}"
|
||||
data-full-size-image-url = "{$product.cover.large.url}"
|
||||
>
|
||||
{if isset($cfg_product_one_img) && $cfg_product_one_img}
|
||||
<span class="product-additional" data-idproduct="{if $lmobile_swipe && $isMobile}0{else}{$product.id_product}{/if}"></span>
|
||||
{/if}
|
||||
</a>
|
||||
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
</div>
|
||||
{foreach from=$product.images item=image}
|
||||
{if $product.cover.bySize.home_default.url != $image.bySize.home_default.url}
|
||||
<div>
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="thumb js-thumb img-fluid {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</div>
|
||||
{/if}
|
||||
{/if}
|
||||
{else}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail leo-noimage">
|
||||
<img
|
||||
{if $aplazyload}class="lazy" data-src{else}src{/if} = "{$urls.no_picture_image.bySize.home_default.url}"
|
||||
>
|
||||
</a>
|
||||
{/if}
|
||||
|
||||
{/block}
|
||||
|
||||
</div>
|
||||
<div class="product-meta">
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_name'}
|
||||
<h3 class="h3 product-title" itemprop="name"><a href="{$product.url}">{$product.name|truncate:30:'...'}</a></h3>
|
||||
{/block}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_price_and_shipping'}
|
||||
{if $product.show_price}
|
||||
<div class="product-price-and-shipping {if $product.has_discount}has_discount{/if}">
|
||||
{if $product.has_discount}
|
||||
{hook h='displayProductPriceBlock' product=$product type="old_price"}
|
||||
<span class="sr-only">{l s='Regular price' d='Shop.Theme.Catalog'}</span>
|
||||
<span class="regular-price">{$product.regular_price}</span>
|
||||
{if $product.discount_type === 'percentage'}
|
||||
<span class="discount-percentage">{$product.discount_percentage}</span>
|
||||
{elseif $product.discount_type === 'amount'}
|
||||
<span class="discount-amount discount-product">{$product.discount_amount_to_display}</span>
|
||||
{/if}
|
||||
{/if}
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type="before_price"}
|
||||
|
||||
<span class="sr-only">{l s='Price' d='Shop.Theme.Catalog'}</span>
|
||||
<span class="price" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
|
||||
<span itemprop="priceCurrency" content="{$currency.iso_code}"></span><span itemprop="price" content="{$product.price_amount}">{$product.price}</span>
|
||||
</span>
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type='unit_price'}
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type='weight'}
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
</div>
|
||||
</div>
|
||||
</article>
|
||||
@@ -0,0 +1,166 @@
|
||||
{*
|
||||
* @Module Name: AP Page Builder
|
||||
* @Website: apollotheme.com - prestashop template provider
|
||||
* @author Apollotheme <apollotheme@gmail.com>
|
||||
* @copyright Apollotheme
|
||||
* @description: ApPageBuilder is module help you can build content for your shop
|
||||
*}
|
||||
<article class="product-miniature js-product-miniature" data-id-product="{$product.id_product}" data-id-product-attribute="{$product.id_product_attribute}" itemscope itemtype="http://schema.org/Product">
|
||||
<div class="thumbnail-container">
|
||||
<div class="product-image">
|
||||
{block name='product_thumbnail'}
|
||||
{if isset($cfg_product_list_image) && $cfg_product_list_image}
|
||||
<div class="leo-more-info" data-idproduct="{$product.id_product}"></div>
|
||||
{/if}
|
||||
|
||||
{if $product.cover}
|
||||
{if isset($formAtts) && isset($formAtts.lazyload) && $formAtts.lazyload}
|
||||
|
||||
|
||||
{if $lmobile_swipe && $isMobile}
|
||||
<div class="product-list-images-mobile">
|
||||
<div>
|
||||
{/if}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid lazyOwl"
|
||||
src = ""
|
||||
data-src = "{$product.cover.bySize.home_default.url}"
|
||||
alt = "{$product.cover.legend}"
|
||||
data-full-size-image-url = "{$product.cover.large.url}"
|
||||
>
|
||||
{if isset($cfg_product_one_img) && $cfg_product_one_img}
|
||||
<span class="product-additional" data-idproduct="{if $lmobile_swipe && $isMobile}0{else}{$product.id_product}{/if}"></span>
|
||||
{/if}
|
||||
</a>
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
</div>
|
||||
{foreach from=$product.images item=image}
|
||||
{if $product.cover.bySize.home_default.url != $image.bySize.home_default.url}
|
||||
<div>
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid thumb js-thumb {if $image.id_image == $product.cover.id_image} selected {/if}{if $aplazyload} lazy{/if}"
|
||||
data-src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
<div>
|
||||
{/if}
|
||||
{else}
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
<div class="product-list-images-mobile">
|
||||
<div>
|
||||
{/if}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="img-fluid"
|
||||
src = "{$product.cover.bySize.home_default.url}"
|
||||
alt = "{$product.cover.legend}"
|
||||
data-full-size-image-url = "{$product.cover.large.url}"
|
||||
>
|
||||
{if isset($cfg_product_one_img) && $cfg_product_one_img}
|
||||
<span class="product-additional" data-idproduct="{if $lmobile_swipe && $isMobile}0{else}{$product.id_product}{/if}"></span>
|
||||
{/if}
|
||||
</a>
|
||||
|
||||
{if $lmobile_swipe == 1 && $isMobile}
|
||||
</div>
|
||||
{foreach from=$product.images item=image}
|
||||
{if $product.cover.bySize.home_default.url != $image.bySize.home_default.url}
|
||||
<div>
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail">
|
||||
<img
|
||||
class="thumb js-thumb img-fluid {if $image.id_image == $product.cover.id_image} selected {/if}"
|
||||
src="{$image.bySize.home_default.url}"
|
||||
alt="{$image.legend}"
|
||||
title="{$image.legend}"
|
||||
itemprop="image"
|
||||
>
|
||||
</a>
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</div>
|
||||
{/if}
|
||||
{/if}
|
||||
{else}
|
||||
<a href="{$product.url}" class="thumbnail product-thumbnail leo-noimage">
|
||||
<img
|
||||
{if $aplazyload}class="lazy" data-src{else}src{/if} = "{$urls.no_picture_image.bySize.home_default.url}"
|
||||
>
|
||||
</a>
|
||||
{/if}
|
||||
|
||||
{/block}
|
||||
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoWishlistButton' product=$product}
|
||||
<div class="functional-buttons clearfix">
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
<div class="quickview{if !$product.main_variants} no-variants{/if} hidden-sm-down">
|
||||
<a
|
||||
href="#"
|
||||
class="quick-view"
|
||||
data-link-action="quickview" title="{l s='Quick view' d='Shop.Theme.Global'}"
|
||||
>
|
||||
<span class="leo-quickview-bt-loading cssload-speeding-wheel"></span>
|
||||
<span class="leo-quickview-bt-content">
|
||||
<i class="material-icons search"></i>
|
||||
<span>{l s='Quick view' d='Shop.Theme.Global'}</span>
|
||||
</span>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoCartButton' product=$product}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{hook h='displayLeoCompareButton' product=$product}
|
||||
</div></div>
|
||||
<div class="product-meta">
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_name'}
|
||||
<h3 class="h3 product-title" itemprop="name">
|
||||
{* <a href="{$product.url}">{$product.name|truncate:30:'...'}</a> *}
|
||||
<a href="{$product.url}">{$product.name}</a>
|
||||
</h3>
|
||||
{/block}
|
||||
|
||||
<!-- @file modules\appagebuilder\views\templates\front\products\file_tpl -->
|
||||
{block name='product_price_and_shipping'}
|
||||
{if $product.show_price}
|
||||
<div class="product-price-and-shipping {if $product.has_discount}has_discount{/if}">
|
||||
{if $product.has_discount}
|
||||
{hook h='displayProductPriceBlock' product=$product type="old_price"}
|
||||
<span class="sr-only">{l s='Regular price' d='Shop.Theme.Catalog'}</span>
|
||||
<span class="regular-price">{$product.regular_price}</span>
|
||||
{if $product.discount_type === 'percentage'}
|
||||
<span class="discount-percentage">{$product.discount_percentage}</span>
|
||||
{elseif $product.discount_type === 'amount'}
|
||||
<span class="discount-amount discount-product">{$product.discount_amount_to_display}</span>
|
||||
{/if}
|
||||
{/if}
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type="before_price"}
|
||||
|
||||
<span class="sr-only">{l s='Price' d='Shop.Theme.Catalog'}</span>
|
||||
<span class="price" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
|
||||
<span itemprop="priceCurrency" content="{$currency.iso_code}"></span><span itemprop="price" content="{$product.price_amount}">{$product.price}</span>
|
||||
</span>
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type='unit_price'}
|
||||
|
||||
{hook h='displayProductPriceBlock' product=$product type='weight'}
|
||||
</div>
|
||||
{/if}
|
||||
{/block}
|
||||
</div>
|
||||
</div>
|
||||
</article>
|
||||
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/*
|
||||
* PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
|
||||
header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
|
||||
|
||||
header("Cache-Control: no-store, no-cache, must-revalidate");
|
||||
header("Cache-Control: post-check=0, pre-check=0", false);
|
||||
header("Pragma: no-cache");
|
||||
|
||||
header("Location: ../");
|
||||
exit;
|
||||
@@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2017 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License 3.0 (AFL-3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* https://opensource.org/licenses/AFL-3.0
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright PrestaShop SA
|
||||
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License 3.0 (AFL-3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
|
||||
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
|
||||
header('Location: ../');
|
||||
exit;
|
||||
Reference in New Issue
Block a user