Project

General

Profile

Actions

Anomalie #1601

closed

Problemé envoi de mail

Added by Fab Agom almost 3 years ago. Updated almost 3 years ago.

Status:
Fermé
Priority:
Normal
Category:
Emails
Target version:
Start date:
12/01/2021
Due date:
% Done:

100%

Estimated time:
Version utilisée:

Description

Bonjour,

Je viens de mettre à jour en version 9.6 car je ne pouvez plus afficher l'historique de l'envoi des mail.
La MAJ n'a pas corrigé le problème mais la suppression des historiques les plus anciens ayant la colonne "mailing_sender_name" a null a permi de ré-afficher la fenêtre.

Cependant mon problème se trouve sur l'envoi de mail.

Si la case à cocher "Interpréter les balises HTML" est activé, j'ai un message d'erreur lors de l'envoi du mail.

Je vous met le détail de l'erreur en bas de ce mail.

Merci d'avance pour votre aide

Détails

Type : ErrorException

Code : 0

Message : Required parameter $options follows optional parameter $prevName

Fichier : /home/agomleha/www/.gestion/vendor/soundasleep/html2text/src/Html2Text.php

Ligne : 231
Trace

#0 /home/agomleha/www/.gestion/vendor/composer/ClassLoader.php(571): {closure}(8192, 'Required parame...', '/home/agomleha/...', 231)
#1 /home/agomleha/www/.gestion/vendor/composer/ClassLoader.php(571): include()
#2 /home/agomleha/www/.gestion/vendor/composer/ClassLoader.php(428): Composer\Autoload\includeFile('/home/agomleha/...')
#3 /home/agomleha/www/.gestion/lib/Galette/Core/GaletteMail.php(403): Composer\Autoload\ClassLoader->loadClass('Soundasleep\\Htm...')
#4 /home/agomleha/www/.gestion/lib/Galette/Core/GaletteMail.php(265): Galette\Core\GaletteMail->cleanedHtml()
#5 /home/agomleha/www/.gestion/lib/Galette/Core/Mailing.php(278): Galette\Core\GaletteMail->send()
#6 /home/agomleha/www/.gestion/lib/Galette/Controllers/Crud/MailingsController.php(382): Galette\Core\Mailing->send()
#7 [internal function]: Galette\Controllers\Crud\MailingsController->doAdd(Object(Slim\Http\Request), Object(Slim\Http\Response))
#8 /home/agomleha/www/.gestion/vendor/php-di/invoker/src/Invoker.php(74): call_user_func_array(Array, Array)
#9 /home/agomleha/www/.gestion/vendor/php-di/slim-bridge/src/ControllerInvoker.php(50): Invoker\Invoker->call(Array, Array)
#10 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/Route.php(281): DI\Bridge\Slim\ControllerInvoker->_invoke(Array, Object(Slim\Http\Request), Object(Slim\Http\Response), Array)
#11 /home/agomleha/www/.gestion/lib/Galette/Middleware/Authenticate.php(173): Slim\Route->
_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response))
#12 [internal function]: Galette\Middleware\Authenticate->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\Route))
#13 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(Galette\Middleware\Authenticate), Array)
#14 [internal function]: Slim\DeferredCallable->
_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\Route))
#15 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\Route))
#16 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\Route->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#17 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/Route.php(268): Slim\Route->callMiddlewareStack(Object(Slim\Http\Request), Object(Slim\Http\Response))
#18 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/App.php(503): Slim\Route->run(Object(Slim\Http\Request), Object(Slim\Http\Response))
#19 /home/agomleha/www/.gestion/vendor/akrabat/rka-slim-session-middleware/RKA/SessionMiddleware.php(47): Slim\App->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response))
#20 [internal function]: RKA\SessionMiddleware->
_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Galette\Core\SlimApp))
#21 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(RKA\SessionMiddleware), Array)
#22 [internal function]: Slim\DeferredCallable->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Galette\Core\SlimApp))
#23 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Galette\Core\SlimApp))
#24 /home/agomleha/www/.gestion/lib/Galette/Middleware/SmartyCsrf.php(94): Slim\App->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#25 [internal function]: Galette\Middleware\SmartyCsrf->
_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#26 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(Galette\Middleware\SmartyCsrf), Array)
#27 [internal function]: Slim\DeferredCallable->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#28 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#29 /home/agomleha/www/.gestion/vendor/slim/csrf/src/Guard.php(171): Slim\App->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#30 [internal function]: Slim\Csrf\Guard->
_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#31 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(Slim\Csrf\Guard), Array)
#32 [internal function]: Slim\DeferredCallable->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#33 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#34 /home/agomleha/www/.gestion/lib/Galette/Middleware/TrailingSlash.php(81): Slim\App->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#35 [internal function]: Galette\Middleware\TrailingSlash->
_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#36 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(Galette\Middleware\TrailingSlash), Array)
#37 [internal function]: Slim\DeferredCallable->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#38 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#39 /home/agomleha/www/.gestion/lib/Galette/Middleware/Language.php(104): Slim\App->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#40 [internal function]: Galette\Middleware\Language->
_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#41 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(Galette\Middleware\Language), Array)
#42 [internal function]: Slim\DeferredCallable->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#43 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#44 /home/agomleha/www/.gestion/lib/Galette/Middleware/Telemetry.php(146): Slim\App->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#45 [internal function]: Galette\Middleware\Telemetry->
_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#46 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(Galette\Middleware\Telemetry), Array)
#47 [internal function]: Slim\DeferredCallable->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#48 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#49 /home/agomleha/www/.gestion/lib/Galette/Middleware/CheckAcls.php(144): Slim\App->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#50 [internal function]: Galette\Middleware\CheckAcls->
_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#51 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(Galette\Middleware\CheckAcls), Array)
#52 [internal function]: Slim\DeferredCallable->__invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#53 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#54 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\App->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#55 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/App.php(392): Slim\App->callMiddlewareStack(Object(Slim\Http\Request), Object(Slim\Http\Response))
#56 /home/agomleha/www/.gestion/vendor/slim/slim/Slim/App.php(297): Slim\App->process(Object(Slim\Http\Request), Object(Slim\Http\Response))
#57 /home/agomleha/www/.gestion/includes/main.inc.php(159): Slim\App->run()
#58 /home/agomleha/www/.gestion/webroot/index.php(57): require_once('/home/agomleha/...')
#59 {main}


Related issues 1 (0 open1 closed)

Precedes Galette - Evolution #1605: Replace dead html2text libRejeté12/02/202112/02/2021

Actions
Actions #1

Updated by Fab Agom almost 3 years ago

Mon problème a l'air d'être résolu en modifiant la propriété du serveur d'OVH de PHP 8.0 en mettant Php au lieu de PhpCGI.

Actions #2

Updated by Johan Cwiklinski almost 3 years ago

  • Assignee set to Johan Cwiklinski
  • Target version set to 0.9.6.1

Fab Agom a écrit (#note-1):

Mon problème a l'air d'être résolu en modifiant la propriété du serveur d'OVH de PHP 8.0 en mettant Php au lieu de PhpCGI.

Et du coup, tu n'es plus en PHP 8 je présume.

Le problème vient de la bibliothèque tierce utilisée pour convertir les contenus HTML en texte :
https://github.com/soundasleep/html2text/issues/88

Cette bibliothèque n'est plus maintenue ; le correctif est très simple à appliquer et je peux fournir un patch dans Galette) ; mais à l'avenir, il faut en changer (je présume que ce n'est pas compatible PHP 8.1...).

Actions #3

Updated by Johan Cwiklinski almost 3 years ago

Le correctif :

diff -up vendor/soundasleep/html2text/src/Html2Text.php.patch vendor/soundasleep/html2text/src/Html2Text.php
--- vendor/soundasleep/html2text/src/Html2Text.php.patch    2021-12-07 08:29:17.500834976 +0100
+++ vendor/soundasleep/html2text/src/Html2Text.php    2021-12-07 08:29:29.577097261 +0100
@@ -228,7 +228,7 @@ class Html2Text {
         return $nextName;
     }

-    static function iterateOverNode($node, $prevName = null, $in_pre = false, $is_office_document = false, $options) {
+    static function iterateOverNode($node, $prevName = null, $in_pre = false, $is_office_document = false, $options = []) {
         if ($node instanceof \DOMText) {
           // Replace whitespace characters with a space (equivilant to \s)
             if ($in_pre) {

Actions #4

Updated by Johan Cwiklinski almost 3 years ago

Actions #5

Updated by Johan Cwiklinski almost 3 years ago

  • Status changed from Nouveau to In Progress
Actions #6

Updated by Johan Cwiklinski almost 3 years ago

  • Status changed from In Progress to Résolu
  • % Done changed from 0 to 100
Actions #7

Updated by Johan Cwiklinski almost 3 years ago

  • Status changed from Résolu to Fermé
Actions

Also available in: Atom PDF