Dzisiejszym artykułem rozpoczynamy cykl instrukcji dostosowania sklepu do ustawy konsumenckiej z dnia 25 XII 2014.
Będą one dostępne pod osobną kategorią: https://pskrk.com/category/ustawa-konsumencka
Tym razem na tapetę bierzemy moduł płatności „Płatność Przelewem” albo „Przelew Bankowy” – nazwa systemowa bankwire.
Modyfikacja jest dedykowana pod wersję 1.4 ale przy odrobinie kombinacji powinna także działać w nowszych wersjach.
Zgodnie z wytycznymi Ustawodawcy na ostatnim kroku zamówienia musi być zestawienie cenowe jaka jest suma kupionych produktów i suma opłat za transport. Dodatkowo jeżeli do złożenia zamówienia używa się przycisku lub podobnej funkcji, muszą być one oznaczone w łatwo czytelny sposób słowami
„zamówienie z obowiązkiem zapłaty” lub innego równoważnego jednoznacznego sformułowania.
Zawartość artykułu
Edycja controllera
W tym celu edytujemy plik:
modules/bankwire/bankwire.php
Znajdujemy funkcję PHP (metodę): execPayment() następnie w funkcji wysyłającej zmienne przez Smarty dodajemy następujące elementy w tablicy.
Fragment kodu:
'total' => $cart->getOrderTotal(true, Cart::BOTH),
zamieniamy na:
'shippingCosts' => $cart->getOrderShippingCost($cart->id_carrier), 'carrierid' => new Carrier($cart->id_carrier), 'products' => $cart->getProducts(), 'total' => $cart->getOrderTotal(true, Cart::BOTH),
Edycja szablonu (kodu HTML)
Edytujemy plik:
modules/bankwire/payment_execution.tpl
pod kodem (u Ciebie może on wyglądać nieco inaczej – chodzi bardziej o miejsce wstawienia niż dokładne odwzorowanie):
<p> <img src="{$this_path}bankwire.jpg" alt="{l s='bank wire' mod='bankwire'}" width="86" height="49" style="float:left; margin: 0px 10px 5px 0px;" /> {l s='You have chosen to pay by bank wire.' mod='bankwire'} <br/><br /> {l s='Here is a short summary of your order:' mod='bankwire'} </p>
wklejamy:
<p style="font-weight: bold;">W koszyku znajduje się:</p> <p> {foreach from=$products item=product name=products} <span>{$product.cart_quantity} x {$product.name} - cena (z VAT): {convertPrice price=$product.total_wt}</span><br/> ({if isset($product.attributes) && $product.attributes}<a href="{$link->getProductLink($product.id_product, $product.link_rewrite, $product.category)|escape:'htmlall':'UTF-8'}">{$product.attributes|escape:'htmlall':'UTF-8'}</a>{/if}) <br/><br/> {/foreach} <p> <p style="font-weight: bold;">Wybrany sposób wysyłki:</p> <p>{$carrierid->name}</p> <p style="font-weight: bold;">Koszty wysyłki (z VAT):</p> <p>{convertPrice price=$shippingCosts}</p>
Kod:
<p style="margin-top:20px;"> - {l s='The total amount of your order is' mod='bankwire'} <span id="amount" class="price">{displayPrice price=$total}</span> {if $use_taxes == 1} {l s='(tax incl.)' mod='bankwire'} {/if} </p>
Zamieniamy na:
<p> <span style="font-weight: bold;">{l s='The total amount of your order is' mod='bankwire'} (z VAT)</span>: <span id="amount" class="price">{displayPrice price=($total+$shippingCosts)}</span> {if $use_taxes == 1} {l s='(tax incl.)' mod='bankwire'} {/if} </p>
Na wszelki wypadek dodajemy kod:
<p> {l s='Zgodnie z art. 7 Ustawy z dnia 2 marca 2000 r. o ochronie niektórych praw konsumentów oraz o odpowiedzialności za szkodę wyrządzoną przez produkt niebezpieczny, każdemu klientowi będącemu konsumentem w rozumieniu art. 221 Kodeksu Cywilnego i korzystającemu ze sklepu internetowego www.LINK-DO-SKLEPU.pl przysługuje prawo do odstąpienia od zawartej umowy zakupu towaru, bez podania przyczyny.' mod='bankwire'} <a href="{$link->getCMSLink(ID-STRONY-CMS-Z-INFORMACJĄ-O-ZWROTACH)}">{l s='Więcej informacji' mod='bankwire'}</a> </p>
W powyższym kodzie fragment: ID-STRONY-CMS-Z-INFORMACJĄ-O-ZWROTACH należy zmienić na ID (cyfrę) strony CMS z opisem strony ze zwrotami. Jak nie ma takiej strony w CMS – należy ją utworzyć. Jak odczytać takie ID opisaliśmy np. tutaj dodanie tekstu z CMS w dziale kontakt.
Zamieniamy wygląd przycisku potwierdzenia (u Ciebie może on wyglądać nieco inaczej – chodzi bardziej o miejsce wstawienia niż dokładne odwzorowanie). Zamieniamy:
<p class="cart_navigation"> <a href="{$link->getPageLink('order.php', true)}?step=3" class="button_large hideOnSubmit">{l s='Other payment methods' mod='bankwire'}</a> <input type="submit" name="submit" value="{l s='I confirm my order' mod='bankwire'}" class="exclusive_large hideOnSubmit" /> </p>
na:
<p class="cart_navigation"> <a href="{$link->getPageLink('order.php', true)}?step=3" class="button_large hideOnSubmit">{l s='Other payment methods' mod='bankwire'}</a> <input type="submit" name="submit" value="{l s='I confirm my order' mod='bankwire'}" class="exclusive_large hideOnSubmit" /> <div style="clear:both"></div> <span style="float:right">{l s='Zamówienie z obowiązkiem zapłaty' mod='bankwire'}</span> </p>
Oczywiście to tylko cząstka niezbędnych i obowiązkowych zmian w sklepie internetowym aby był on poprawny z obowiązującą ustawą. Niebawem nakreślimy inne konieczne zmiany tego typu w szablonach.
Zachęcamy do skorzystania z naszych usług co do dostosowania całego sklepu, aby był on poprawny i nie narażał właściciela na karę np. grzywny. Jako wykonawca (www.smartprojects.pl – projektowanie sklepów internetowych) na naszym koncie mamy kilka realizacji tego typu w każdej wersji PrestaShop stosowanej na rynku. W tym celu możemy wykonać (darmową) wycenę takich prac wraz z podaniem terminu realizacji. Zapraszamy do kontaktu – kliknij tutaj.