Skocz do zawartości
petercarter

Moduł płatność przelewem (bankwire)

Rekomendowane odpowiedzi

Witam 

 

Chciałbym wyświetlić kwotę bez końcówki zł aby były same liczby. W module znalazłem odpowiedni fragment kodu ale nie mogę tego odpowiednio sformatować. Może ktoś już edytował w taki sposób moduł i może pomóc ? 

 

Kod który trzeba sformatować : 

 

'total_to_pay' => Tools::displayPrice($params['total_to_pay'], $params['currencyObj'], false),

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Jest to rozwiązanie ale gdy zapiszę w ten sposób dostaję wynik np. 100.000 a potrzebuje najlepiej bez przecinka jeśli nie ma takiej potrzebny. 

 

Natomiast gdy zapiszę tak : 

{convertPrice price=$total_to_pay/4.3}

To automatycznie znacznik waluty wraca :/ kwota się przelicza ale wraca końcówka zł. 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Funkcja round zaokrągli mi wartość a ja bym chciał żeby w tpl pojawiła się kwota bez końcówki "zł"

 

W bankwire.php zapisałem 

 

'total_to_pay' => $params['total_to_pay'],  = dzięki temu otrzymałem wynik : np 120,000 

 

następnie w tpl wpisałem : 

 

{convertPrice price=$total_to_pay/4} i teraz otrzymuje 30 zł a chciałbym otrzymać czystą sumę bez waluty. 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Funkcja round zaokrągli mi wartość a ja bym chciał żeby w tpl pojawiła się kwota bez końcówki "zł"

 

W bankwire.php zapisałem 

 

'total_to_pay' => $params['total_to_pay'],  = dzięki temu otrzymałem wynik : np 120,000 

 

następnie w tpl wpisałem : 

 

{convertPrice price=$total_to_pay/4} i teraz otrzymuje 30 zł a chciałbym otrzymać czystą sumę bez waluty. 

 

no ale

'total_to_pay' => $params['total_to_pay'],  = dzięki temu otrzymałem wynik : np 120,000

 

wyświetlone w tpl-u

 

wyświetla ci 120

 

czy 120,000

 

w sumie to w pliki php modułu możesz sobie zastosować w generowaniu danych do tpl czyli w

'total_to_pay'  czy to round, czy exclude jak tam ci będzie prościej  dodając do tego ten dzielnik 4

czyli proste równanie matematyczne. którego wynik wyślesz do tpl-a

 

jednak zastanawiam się co chcesz osiągnąć przez

 

{convertPrice price=$total_to_pay/4}

 

to 4 to jakiś przelicznik? np z pln na euro?

 

bo jeżeli tak to chyba nie tedy droga ;)

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Dokładnie dostaje taki wynik : 

 

bankwire.php

'total_to_pay' => $params['total_to_pay'],  

 

tpl : 

 

{total_to_pay} = dzięki temu otrzymałem wynik : np 120,000000 

 

 

{convertPrice price=$total_to_pay/4} = daje mi wynik 30 zł (Tak chciałem to zrobić jako sumę euro 


Próbuję różnych zapisów w bankwire.php ale nic nie działa :/ 

 

'total_to_pay' => $params['total_to_pay'],

'total_to_pay_eur' => explode(' ',$total_to_pay),
print_r($total_to_pay_eur),
 
coś źle robię ale jeszcze sobie po próbuje :) 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

to z innej beczki

w jakim celu chcesz taki przelicznik zrobić?

 

tak swoją drogą to w module bankwire masz coś takieg

 

'total_to_pay' => Tools::displayPrice($params['total_to_pay'], $params['currencyObj'], false),

 

dla ciebie ważne jest to Tools::displayPrice

 

czyli funkcja displayPrice z klasy Tools

 

gdzie w/w klasie masz

 

public static function displayPrice($price, $currency = null, $no_utf8 = false, Context $context = null)

 

zwróć uwagę na parametr $currency

 

opis w/w funkcji

 

/**
    * Return price with currency sign for a given product
    *
    * @param float $price Product price
    * @param object|array $currency Current currency (object, id_currency, NULL => context currency)
    * @return string Price correctly formated (sign, decimal separator...)
    */

 

 

może pokombinuj z id dla parametru $currency / $params['currencyObj']

 

taka mała podpowiedź ;)

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Panowie zrobiłem coś takiego : 

'total_to_pay' => $params['total_to_pay'],
'total_to_pay_zl' => Tools::displayPrice(($params['total_to_pay'] * 1), $currency = 1, false),
'total_to_pay_eur' => Tools::displayPrice(($params['total_to_pay'] / 4.5), $currency = 2, false),
'total_to_pay_dol' => Tools::displayPrice(($params['total_to_pay'] / 4.2), $currency = 3, false),

 

Teraz zastanawiam się jak przeliczyć automatycznie sumę według kursu wprowadzonego do systemu Presty. 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

ale przecież ja już w poprzednim poście napisałem co trzeba zrobić

 wszystko masz w funkcji

 

public static function displayPrice($price, $currency = null, $no_utf8 = false, Context $context = null)

 

i

'total_to_pay' => Tools::displayPrice($params['total_to_pay'], $params['currencyObj'], false),

 

 

$params['currencyObj'] = $currency

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Kurde jeszcze tego tak nie kumam :( próbuje cały czas zobaczymy co z tego wyjdzie. 

 

Dodatkowo jak zmieniam walutę w sklepie na dolary to zamówienie nie idzie dalej, pojawia się komunikat że brak metod płatności. 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Znalazłem opcję wyboru waluty w module bankwire teraz pytanie jak napisać kod aby wyświetlić tekst dla każdej z walut oddzielnie 

 

Jaki piszę w tpl np :  

 

{if  $currency = 2}
Waluta 1 
{else}
Brak waluty 1
{/if}
 
mam cał czas taki sam wynik :/ proszę o jakąś podpowiedź bo zacząłem ze złej strony :/ 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się

Komentowanie zawartości tej strony możliwe jest po zalogowaniu



Zaloguj się



  • Przeglądający

    Brak zarejestrowanych użytkowników, przeglądających tę stronę.

  • Aktywni użytkownicy

    Nikt jeszcze nie otrzymał reputacji w tym tygodniu.

  • Statystyki forum

    • Tematów
      7 785
    • Postów
      37 079
×