Polskie wsparcie PrestaShop
PrestaShop => Błędy => Wątek zaczęty przez: regnarok w Listopad 12, 2012, 10:50:19 pm
-
Właśnie testuję swój sklep prze wprowadzeniem towaru. Mam zainstalowany i skonfigurowany moduł dotpay. Podczas zakupu testowego wszystko przebiega pozytywnie tylko na końcu w 5 kroku zakupowym "Potwierdzenie zamówienia" wyskakuje mi komunikat:
Warning: Missing argument 1 for Dotpay::hookPaymentReturn(), called in /modules/dotpay/confirmation.php on line 9 and defined in /modules/dotpay/dotpay.php on line 95
W BO wszystko jest ok, w zakładce zamówienia wyświetla status "oczekuje potwierdzenia płatności". Mail dociera z potwierdzeniem zamówienia. Jedyny błąd jaki wychwyciłem to nieprawidłowy tytuł potwierdzenia zamówienia: "Order confirmation" mimo, że w tłumaczeniu maili zmenił na polskie potwierdzenie zamówienia.
Chciałem zmienić temat "Order confirmation" na polski w pliku PaymentModule.php (folder classes w katalog głównym sklepu) ale po zrobieniu tego kroku wcale nie przychodziły mi maile z potwierdzeniem zamówienia po wybraniu płatności dotpay.
Czy ktoś z was miał podobny problem ? Jak go rozwiązać?
-
Ktoś ma pomysł dlaczego to wyskakuje we Front Office jeśli transakcja przebiegła pomyślnie po powrocie ze strony dotpay do sklepu?
-
Sprawdź czy w tym module nie ma mailów i czy są one tam potłumaczone.
-
Nie nie ma tam żadnych maili:) Dochodzę do wniosku że Warning i angielski temat potwierdzenia to dwie osobne kwestie.
Fragment warning odnoszący się do "called in /modules/dotpay/confirmation.php on line 9" jest zdefiniowany w pliku:
<?php
include('../../config/config.inc.php');
include(_PS_ROOT_DIR_.'/header.php');
include('./dotpay.php');
$dp = new Dotpay();
$smarty->assign(array( 'HOOK_PAYMENT_RETURN' => $dp->hookPaymentReturn()));
$smarty->display(_PS_THEME_DIR_.'order-confirmation.tpl');
include(_PS_ROOT_DIR_.'/footer.php');
?>
-
znajdz w module hookPaymentReturn() i sprawdz co w niej jest, bo wyraznie masz napisane, ze to wlasnie (i tylko) o ta funkcje chodzi.
-
W pliku dotpay.php ta funkcja jest zdefiniowana następująco:
public function hookPaymentReturn($params)
{
global $smarty;
return $this->display(__FILE__, 'confirmation.tpl');
}
Na pierwszy rzut oka wydaje mi się wszystko ok, a wam? Bo nawet po powrocie do sklepu z seriwsu dotpay po dokonaniu płatności wszystko jest w porządku tylko ten głupi "warning" może można go jakoś wyłączyć z widoku dla klienta? Bo na ich miejscu po dokonaniu płatności ni8e chciałbym mieć żadnych "warningów" ;)
-
Mam ten sam problem. Udało się komuś go rozwiązać?
Wydaje mi się że przez ten błąd moduł nie zmienia statusu zamówienia.
-
a nie lepiej paypal zintegrować ?
-
Jeśli nic się ostatnio nie zmieniło, to paypal wymaga od klienta posiadania konta. Wszystkie generatory szybkich płatności mają tą przewagę, że klient nie musi się rejestrować. System umożliwia mu szybką zapłatę za produkt chyba najbardziej popularnym obecnie sposobem jakim jest przelew (internetowy - przynajmniej ja tak uważam).
-
No tak tylko zauważ że jak chcesz mieć dostęp do konta przez internet również musisz iść do banku i się płaczczyć żeby przydzielili Ci login i hasło poza tym dotpay pobiera chyba jakąś prowizję za sprzedaż a paypal niekoniecznie.
-
No tak tylko zauważ że jak chcesz mieć dostęp do konta przez internet również musisz iść do banku i się płaczczyć żeby przydzielili Ci login i hasło poza tym dotpay pobiera chyba jakąś prowizję za sprzedaż a paypal niekoniecznie.
Paypal nie pobiera? Uuuuuu :) Chyba pomyłka. Woła "płacić" jak każdy inny operator.
Poza tym PayPal ma ograniczenia co do wielkości kwot zapłaty i limit roczny operacji - co już jest totalną głupotą.
Tak czy inaczej dobrze mieć go w ramach wyboru dla klienta.
-
Moim skromnym zdaniem obecnie bardziej popularniejsze jest konto bankowe z dostępem przez internet niż konto na paypalu, ale to moje zdanie. Oczywiście zgadzam się z przedmówcą że zawsze warto mieć tą opcję uruchomioną i najlepiej dać klientowi wybór :) A wtedy ze statystyk samo by wyszło jaka metoda płatności jest popularniejsza ;)
-
Jeśli chodzi o warningi to dział techniczny dotpay odpisał:
Dzień Dobry,
kontaktowałem się w poniższej sprawie z działem programistycznym i proszę o podmianę fragmentu
kodu w pliku dotpay.php
zamiast:
public function hookPayment($params)
{
global $smarty;
return $this->display(__FILE__, 'dotpay.tpl');
}
public function hookPaymentReturn($params)
{
global $smarty;
return $this->display(__FILE__, 'confirmation.tpl');
}
wprowadzić:
public function hookPayment($params = array())
{
global $smarty;
return $this->display(__FILE__, 'dotpay.tpl');
}
public function hookPaymentReturn($params = array())
{
global $smarty;
return $this->display(__FILE__, 'confirmation.tpl');
}
powinno pomóc.