Erreur lors du changement de statut d'une commande depuis le listing

  • Posts: 473
  • Thank you received: 30
  • Hikashop Business
2 years 5 months ago #342700

-- HikaShop version -- : 4.6.0
-- Joomla version -- : 3.10.10
-- PHP version -- : 8.0.13
-- Browser(s) name and version -- : Chrome 103.0.5060.53
-- Error-message(debug-mod must be tuned on) -- : Une erreur est survenue
0 3 arguments are required, 2 given
/libraries/src/Language/Text.php:321

Bonjour,

Je vérifie un site après une mise à jour Hikashop 4.6.0, avant de le mettre en ligne. J'ai réinstallé aujourd'hui le dernier package disponible (com_hikashop_business_v4.6.0_2022-06-24_17-59-35).

Sur le listing des commandes, lorsque je change le statut d'une commande, j'ai une erreur "0 3 arguments are required, 2 given
/libraries/src/Language/Text.php:321" qui bloque la modification du statut.

En revanche, je peux modifier normalement le statut après avoir édité la commande.

Last edit: 2 years 4 months ago by lesyeux. Reason: Probème résolu

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
2 years 4 months ago #342702

Bonjour,

L'erreur "0 3 arguments are required, 2 given /libraries/src/Language/Text.php:321" indique qu'il y a un souci avec une traduction, quelque part sur le site.
Mais difficile d'en dire plus. Surtout que c'est surement plutôt lié au passage en PHP8 qu'à la mise à jour d'HikaShop.
Voici par exemple quelqu'un d'autre avec une erreur similaire:
www.hikashop.com/forum/content-creation/...th-php-8.html#342143
Et le souci était une traduction de codemirror, dans Joomla.
Pour savoir d'où vient le problème, il faut refaire la même opération après avoir activé l'option "debug system" de la configuration Joomla.
Cela affichera plus d'information lorsque l'erreur se produira et cela permettra de dire d'où vient le problème exactement et ce qu'il faut faire.

Please Log in or Create an account to join the conversation.

  • Posts: 473
  • Thank you received: 30
  • Hikashop Business
2 years 4 months ago #342729

Bonjour,

Effectivement, en revenant en PHP 7.4.26 l'erreur ne se produit plus.

EN PHP 8, j'obtiens ce Call stack :
# Function Location
1 () JROOT/libraries/src/Language/Text.php:321
2 sprintf()
3 call_user_func_array() JROOT/libraries/src/Language/Text.php:321
4 Joomla\CMS\Language\Text::sprintf() JROOT/media/com_hikashop/mail/order_status_notification.preload.php:107
5 include() JROOT/administrator/components/com_hikashop/classes/mail.php:362
6 hikashopMailClass->loadEmail() JROOT/administrator/components/com_hikashop/classes/mail.php:31
7 hikashopMailClass->get() JROOT/administrator/components/com_hikashop/classes/order.php:1997
8 hikashopOrderClass->loadOrderNotification() JROOT/administrator/components/com_hikashop/views/order/view.html.php:427
9 OrderViewOrder->changestatus() JROOT/administrator/components/com_hikashop/views/order/view.html.php:28
10 OrderViewOrder->display() JROOT/libraries/src/MVC/Controller/BaseController.php:664
11 Joomla\CMS\MVC\Controller\BaseController->display() JROOT/administrator/components/com_hikashop/helpers/helper.php:2400
12 hikashopController->display() JROOT/administrator/components/com_hikashop/controllers/order.php:170
13 OrderController->changestatus() JROOT/libraries/src/MVC/Controller/BaseController.php:702
14 Joomla\CMS\MVC\Controller\BaseController->execute() JROOT/administrator/components/com_hikashop/helpers/helper.php:2378
15 hikashopController->execute() JROOT/administrator/components/com_hikashop/hikashop.php:73
16 require_once() JROOT/libraries/src/Component/ComponentHelper.php:402
17 Joomla\CMS\Component\ComponentHelper::executeComponent() JROOT/libraries/src/Component/ComponentHelper.php:377
18 Joomla\CMS\Component\ComponentHelper::renderComponent() JROOT/libraries/src/Application/AdministratorApplication.php:101
19 Joomla\CMS\Application\AdministratorApplication->dispatch() JROOT/libraries/src/Application/AdministratorApplication.php:159
20 Joomla\CMS\Application\AdministratorApplication->doExecute() JROOT/libraries/src/Application/CMSApplication.php:225
21 Joomla\CMS\Application\CMSApplication->execute() JROOT/administrator/index.php:51

Please Log in or Create an account to join the conversation.

  • Posts: 473
  • Thank you received: 30
  • Hikashop Business
2 years 4 months ago #342730

La ligne 4 du call stack m'a conduit à la ligne 107 du fichier order_status_notification.preload.php, grâce à quoi j'ai pu identifier une chaîne de traduction contenant un "%s" doublonné dans mon fichier fr-FR.override.ini. Il s'agissait de THANK_YOU_FOR_YOUR_ORDER. Après correction, plus de souci en PHP 8. Merci pour la méthode permettant d'identifier le problème.

The following user(s) said Thank You: nicolas

Please Log in or Create an account to join the conversation.

Time to create page: 0.063 seconds
Powered by Kunena Forum