Jump to content
  • 0

Tryb debugowania : błędy wysyłania maili, statusy zamówień


() Maciej ()

Question

Witam,

Od wczoraj męczę się z kilkoma błędami na jednej ze stron.

Odpaliłem tryb debugowania i oto jakie komunikaty otrzymuję.

 

Po stronie klienta - podczas składania zamówienia występuje błąd :

Warning: Missing argument 2 for ToolsCore::displayDate(), called in /sklep/modules/mailalerts/mailalerts.php on line 261
and defined in /sklep/classes/Tools.php on line 613
Fatal error:
Call to undefined method ShopUrl::cacheMainDomainForShop() in /sklep/override/classes/Mail.php on line 227

W panelu administracyjnym :
zmiana statusu zamówienia, próba wysłania wygenerowanego hasła itp zwraca :

Fatal error: Call to undefined method ShopUrl::cacheMainDomainForShop() in /sklep/override/classes/Mail.php on line 227

Do tego dochodzą błędy w zamówieniach objawiające się następującymi usterkami :

- brak statusu zamówienia zarówno w podglądzie, jak i w bazie

- w bazie brak daty złożenia zamówienia

- na niektórych produktach następuje znikanie z podglądu zamówienia w panelu (co najlepsze cena się wyświetla prawidłowo, ale bez pozycji jakie są w zamówieniu), ale jak się wejdzie w Koszyk danego klienta i sprawdzi zamówienie to wszystko jest ok i tam widać wszystkie ilości i produkty

 

Próbuję dojść do tego co może być nie tak, ale kończą mi się pomysły.

Jak do tej pory sprawdziłem wersję PHP (swoją drogą przedwczoraj wszystko było ok mimo tej samej wersji), sprawdziłem bazę, ale nie widzę w niej błędów nie licząc brakujących dat i  ID statusu

Czy ktoś jest w stanie mi pomóc ?
 

Link to comment
Share on other sites

8 answers to this question

Recommended Posts

  • 0

To override klasy Mail równie dobrze mogło zostać dodane ręcznie.

Nie pamiętam jak tam jest w 1.5, ale w 1.6 jeśli nadpisanie dodaje jakiś moduł, to nad każdą funkcją jest komentarz jaki moduł dorzucił daną funkcję.

Lub dla testu wywal to nadpisanie (skasuj /cache/class_index.php) i zobaczysz co się wywala.

Link to comment
Share on other sites

  • 0

Jakiś moduł nadpisuje klasę Mail i w niej są błędy.

Często robią to moduły od płatności lub wysyłek.

Trzeba namierzyć, który moduł dodaje do override Mail.php i poszukać nowszej wersji modułu, albo poprawić błędy w tej klasie.

Link to comment
Share on other sites

  • 0

Problem w tym, że żaden z modułów nie ma adnotacji "Aktualizacja", a więc nowszej wersji raczej nie ma do 1.5.4.1

A używam standardowych modułów do wysyłek i płatności (płatności za pobraniem i przelew - wysyłki określone w panelu bez dodatkowego modułu).

 

Tak się zastanawiam, czy da się jakoś wyłączyć nadpisywanie ?

Link to comment
Share on other sites

  • 0

Wywaliłem plik Mail.php z override/class i wszystkie zamówienia mają normalnie powiadomienia mailowe :)

Plik musiał być dodany ręcznie, bo standardowo mają na początku komentarze. Ten nie miał ani 1 komentarza, co byłoby dość dziwnym posunięciem ze strony twórców presty.

 

 

Pozostaje kwestia poprawienia widoczności już złożonych zamówień, w których dalej nie widać produktów mimo, że w podglądzie koszyka jest ok.

Link to comment
Share on other sites

  • 0

 

Plik musiał być dodany ręcznie, bo standardowo mają na początku komentarze. Ten nie miał ani 1 komentarza, co byłoby dość dziwnym posunięciem ze strony twórców presty.

Twórcy presty to się nie bawią w nadpisywanie swoich własnych klas lub kontrolerów, zmiany robią w core :)

 

A z tym wyświetlaniem zamówień, to przejrzyj pozostałe overridy. Może jakiś wynalazek nadpisuje kontroler zamówień.

Link to comment
Share on other sites

  • 0

Haczyk w tym, że dotyczy to tylko kilku zamówień, które zostały złożone od chwili wystąpienia błędów z zapisem (czyli z przeciągu ostatnich 2 dni). Wszystkie pozostałe zamówienia są ok.  Nowe zamówienia jakie spływają też są już ok.

 

A ponieważ lubię mieć porządek w sklepie chciałbym mieć wgląd do pełnej historii klienta, a nie dodawać sobie dodatkowo robotę i spamiętywać klientów na których są babole :)

 

 

Taki offtop mały dotyczący moich problemów z niedziałającymi miniaturkami produktów w wyszukiwarce (temat https://www.prestashop.com/forums/topic/540550-cache-konkretnego-modu%C5%82u/ ). Po usunięciu pliku mail.php jakoś dziwnym trafem się naprawiła wyszukiwarka :) Nie wiem jaki magik pisał nadpisania, ale w życiu bym się nie spodziewał czegoś takiego.

Link to comment
Share on other sites

  • 0

Hmm... właśnie tego się obawiałem :/ No ale co poradzić. Jak się chce mieć porządek to trzeba czasem się poświęcić, a przy okazji się czegoś nauczyć dodatkowo.

 

Dziękuję bardzo za pomoc i nakierowanie mnie na odpowiednie miejsce poszukiwań.

 

 

--------------------------

EDIT:

 

W bazie brakujące produkty na liście produktów w zamówieniu były w tabeli order_detail. Po prostu nie został utworzony w tej tablicy wpis odnośnie konkretnej pozycji na liście produktów zamówionych. Ręczne dodanie wpisu rozwiązuje problem.

Edited by () Maciej () (see edit history)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...