Hallo,
vielleicht hat hier jemand eine Lösung für folgendes Problem.
modified eCommerce Shopsoftware v2.0.7.2 rev 14622 dated: 2022-07-04
Datenbank Version: "MOD_2.0.7.2"
Installierte und aktive Zhlungsmodule:- EU-Standard Bank Transfer
Installierte und aktive Versandmodule:In Zusammenhang mit versandkostenfreier Lieferung habe ich bemerkt, dass bei der Zehlungsweise "Kreditkarte" es zu einem API-CALL-Failure kommt (geht aus einer automatisch von Zahlungsdienstleister versendeten Mail hervor). Die Zahlung selbst erfolgt korrekt, nur die Bestätigungsmail an den Kunden, die der Shop versendet wird nicht ausgelöst. Das passiert aber nur, wenn die Lieferung Versandkostenfrei ist.
Hier Auszüge aus den Logfiles des Shops:ERROR found for URL: /shop/callback/micropayment/notification.php?....&function=billing {} {}
[2023-12-09 22:43:45] [error] [modified] [pid:24935] Undefined constant "MODULE_SHIPPING_FREE_TEXT_TITLE" in File: /.../shop/includes/external/micropayment/send_order.php on Line: 80 {} {}
[2023-12-09 22:43:45] [warning] [modified] [pid:24935] WARNING found for URL: /shop/callback/micropayment/notification.php?&function=billing {} {}
[2023-12-09 22:43:45] [warning] [modified] [pid:24935] include(/.../shop/lang/german/modules/shipping/free.php): Failed to open stream: No such file or directory in File: /.../shop/includes/external/micropayment/send_order.php on Line: 79 {} {}
[2023-12-09 22:43:45] [warning] [modified] [pid:24935] WARNING found for URL: /shop/callback/micropayment/notification.php?&function=billing {} {}
[2023-12-09 22:43:45] [warning] [modified] [pid:24935] include(): Failed opening '/.../shop/lang/german/modules/shipping/free.php' for inclusion (include_path='.:/usr/local/php81/share/php81') in File: /.../shop/includes/external/micropayment/send_order.php on Line: 79 {} {}
Im Verzeichnis "/.../shop/lang/german/modules/shipping/" gibt es keine 'free.php'-Datei, sondern eine 'freeamount.php'. Diese scheint zwar wohl die benötigten Texte zu liefern, wird jedoch nicht benutzt.
Das Problem habe ich an den Zahlungsdienstleister gemeldet. Die Aussage, die ich als Antwort erhielt: "....hier würde ich Sie vertrauensvoll an den Shophersteller verweisen. Die Versandmethode benötigt laut laut Fehlermeldung die free.php, das ist jedoch keine Datei aus unserem Modul, sondern eine Datei aus dem Shop. "
Es gab dazu noch einen Verweis auf ein ähnliches Topic hier im Forum:
https://www.modified-shop.org/forum/index.php?topic=24476.0Dieses habe ich mir durchgelesen. Es gibt aber dort, für mich, zu viele und mich verwirrende Vorschläge oder Lösungen, für Shopversion 1.06 (?), wo das Problem schon mal auftrat.
Was mir noch auffällt ist, dass es zwei 'send_order.php'-Dateien gibt, mit unterschiedlichem code den Abschnitt "shipping method" betreffend. Eine liegt im Modulverzeichnis des Zahlungsdienstleisters im Shop, die andere in der Shoproot.
Hier die Auszüge daraus:send_order.php des Zahlungsdienstleisters: //shipping method if ($order->info['shipping_class'] != '') { $shipping_class = explode('_', $order->info['shipping_class']); include (DIR_FS_CATALOG
. 'lang/'.$order->info['language'].'/modules/shipping/'.$shipping_class[0].'.php'); $shipping_method = constant(strtoupper('MODULE_SHIPPING_'.$shipping_class[0].'_TEXT_TITLE')); } $smarty->assign('SHIPPING_METHOD', $shipping_method); send_order.php des Shops://shipping method $shipping_class = explode('_', $order->info['shipping_class']); if ($order->info['shipping_class'] != '' && $shipping_class[0] != 'free') { include_once (DIR_FS_CATALOG
. 'lang/'.$order->info['language'].'/modules/shipping/'.$shipping_class[0].'.php'); $shipping_method = constant(strtoupper('MODULE_SHIPPING_'.$shipping_class[0].'_TEXT_TITLE')); } else { include_once (DIR_FS_CATALOG
. 'lang/'.$order->info['language'].'/modules/order_total/ot_shipping.php'); $shipping_method = FREE_SHIPPING_TITLE
; } $smarty->assign('SHIPPING_METHOD', $shipping_method); $smarty->assign('SHIPPING_CLASS', $shipping_class[0]); Der Code in der Datei des Shops ähnelt am ehesten einer der vorgschlagenen Lösungen aus dem oben erwähnten anderen ähnlichen Topic.
Ich hoffe, es gibt irgendeine Möglichkeit das Problem zu lösen, wobei ich mich auch frage, wie es dazu kommen kann, dass noch immer "free.php" auftaucht, obwohl es diese Datei gar nicht gibt ?
Gruß
E.
Linkback: https://www.modified-shop.org/forum/index.php?topic=43192.0