Dobrý den,
jelikož by se řešení mohlo hodit i ostatním zákazníkům, uvedu zde postup. Jinak jsou takové úpravy na míru nad rámec podpory a s případnou realizací se obracejte na
naše partnery. Skrytí a zobrazení košíku lze dosáhnout zásahem do šablony modulu
Blok s informacemi o uživateli a javascriptu v modulu
Blok košíku. Úprava bude vypadat např. takto:
- V soubor modules/blockuserinfo/blockuserinfo.tpl upravte tuto část kódu:
Kód:
{if !$PS_CATALOG_MODE}
<li id="shopping_cart">
<a href="{$link->getPageLink($order_process, true)|escape:'html'}" title="{l s='View my shopping cart' mod='blockuserinfo'}" rel="nofollow">{l s='Cart' mod='blockuserinfo'}
<span class="ajax_cart_quantity{if $cart_qties == 0} hidden{/if}">{$cart_qties}</span>
<span class="ajax_cart_product_txt{if $cart_qties != 1} hidden{/if}">{l s='Product' mod='blockuserinfo'}</span>
<span class="ajax_cart_product_txt_s{if $cart_qties < 2} hidden{/if}">{l s='Products' mod='blockuserinfo'}</span>
<span class="ajax_cart_total{if $cart_qties == 0} hidden{/if}">
{if $cart_qties > 0}
{if $priceDisplay == 1}
{assign var='blockuser_cart_flag' value='Cart::BOTH_WITHOUT_SHIPPING'|constant}
{convertPrice price=$cart->getOrderTotal(false, $blockuser_cart_flag)}
{else}
{assign var='blockuser_cart_flag' value='Cart::BOTH_WITHOUT_SHIPPING'|constant}
{convertPrice price=$cart->getOrderTotal(true, $blockuser_cart_flag)}
{/if}
{/if}
</span>
<span class="ajax_cart_no_product{if $cart_qties > 0} hidden{/if}">{l s='(empty)' mod='blockuserinfo'}</span>
</a>
</li>
{/if}
na následující tvar:
Kód:
{if !$PS_CATALOG_MODE}
<li id="shopping_cart" style="height:40px;">
<div class="skrytykosik {if $cart_qties == 0} hidden{/if}">
<a href="{$link->getPageLink($order_process, true)|escape:'html'}" title="{l s='View my shopping cart' mod='blockuserinfo'}" rel="nofollow">{l s='Cart' mod='blockuserinfo'}
<span class="ajax_cart_quantity{if $cart_qties == 0} hidden{/if}">{$cart_qties}</span>
<span class="ajax_cart_product_txt{if $cart_qties != 1} hidden{/if}">{l s='Product' mod='blockuserinfo'}</span>
<span class="ajax_cart_product_txt_s{if $cart_qties < 2} hidden{/if}">{l s='Products' mod='blockuserinfo'}</span>
<span class="ajax_cart_total{if $cart_qties == 0} hidden{/if}">
{if $cart_qties > 0}
{if $priceDisplay == 1}
{assign var='blockuser_cart_flag' value='Cart::BOTH_WITHOUT_SHIPPING'|constant}
{convertPrice price=$cart->getOrderTotal(false, $blockuser_cart_flag)}
{else}
{assign var='blockuser_cart_flag' value='Cart::BOTH_WITHOUT_SHIPPING'|constant}
{convertPrice price=$cart->getOrderTotal(true, $blockuser_cart_flag)}
{/if}
{/if}
</span>
<span class="ajax_cart_no_product{if $cart_qties > 0} hidden{/if}">{l s='(empty)' mod='blockuserinfo'}</span>
</a>
</div>
</li>
{/if}
Takže kód košíku se obalil vrstvou div s třídou skrytykosik, která je při nulovém počtu zboží v košíku skrytá. A výška košíku je nastavena na 40px pomocí <li id="shopping_cart" style="height:40px;"> (příp. si upravte na vlastní výšku).
- A ještě je potřeba přidat javascriptové skrývání a zobrazení do souboru modules/blockcart/ajax-cart.js, ve kterém najděte tento řádek:
Kód:
$('.ajax_cart_total').fadeIn('slow');
a za něj přidejte na nový řádek:
Kód:
$('.skrytykosik').fadeIn('slow');
A pak najděte řádek:
Kód:
$('.ajax_cart_no_product').show('slow');
a za něj přidejte na nový řádek:
Kód:
$('.skrytykosik').fadeOut('slow');
Aby se změna v šabloně projevila, tak nezapomeňte v administraci aplikace v sekci
Nástroje > Výkon přepnout volbu
Cache pro šablonu na
Překompilovat šablony, pokud byly soubory zaktualizovány (příp.
Vynucená kompilace).