rub a écrit:
Ca fonctionne nickel, j'ai remonté ta modif!
MR!
Ca fonctionne nickel, j'ai remonté ta modif!
[Bugtracker] ticket 1778
[Subversion] r6705
Je pense voir le soucis: il y a un nombre de caractères limités par ligne pour l'envoi de mails. Il faudrait donc éviter de couper au mauvais endroit!
Pour ca, autant rajouter d'office un saut de ligne après chaque règle css...
Je n'ai pas fait l'essai, mais dans le fichier include/functions_mail.inc.php, ligne 763, en remplaçant:
foreach ($selectors as $selector => $style)
{
if (!preg_match('/^(#|\.|)([A-Za-z0-9_-]*)$/', $selector, $matches))
{
$unknow_selectors .= $selector.' {'.implode('; ', $style).";}\n";
}
else switch ($matches[1])
{
case '#':
$content = preg_replace('|id="'.$matches[2].'"|', 'id="'.$matches[2].'" style="'.implode('; ', $style).';"', $content);
break;
case '.':
$content = preg_replace('|class="'.$matches[2].'"|', 'class="'.$matches[2].'" style="'.implode('; ', $style).';"', $content);
break;
default:
$content = preg_replace('#<'.$matches[2].'( |>)#', '<'.$matches[2].' style="'.implode('; ', $style).';"$1', $content);
break;
}
}
Par
foreach ($selectors as $selector => $style)
{
if (!preg_match('/^(#|\.|)([A-Za-z0-9_-]*)$/', $selector, $matches))
{
$unknow_selectors .= $selector.' {'.implode(";\n", $style).";}\n";
}
else switch ($matches[1])
{
case '#':
$content = preg_replace('|id="'.$matches[2].'"|', 'id="'.$matches[2].'" style="'.implode(";\n", $style).";\"\n", $content);
break;
case '.':
$content = preg_replace('|class="'.$matches[2].'"|', 'class="'.$matches[2].'" style="'.implode(";\n", $style).";\"\n", $content);
break;
default:
$content = preg_replace('#<'.$matches[2].'( |>)#', '<'.$matches[2].' style="'.implode(";\n", $style).";\"\n$1", $content);
break;
}
}
Ca devrait le faire... cali, rub,vous pouvez me confirmer ça?
cali a écrit:
dis moi, une dernière question, je devrais ré appliquer cette modif à chaque maj de la galerie ?
Oui, mais j'espère que d'ici la, on aura fourni un correctif à la fonction move_ccs_rules_to_body.
Sinon, pour que ca soit définitif, tu peux ajouter cette ligne à ton plugin personnel:
remove_event_handler('send_mail_content', 'move_ccs_rules_to_body');
Merci pour la solution, je l'ai appliquée, et ça fonctionne nickel, super !
dis moi, une dernière question, je devrais ré appliquer cette modif à chaque maj de la galerie ?
merci encore
J'ai réussi à reproduire le problème en local.
Après analyse, le problème vient de la fonction move_ccs_rules_to_body qui permet d'inclure le code css dans le body pour que quele design fonctionne au niveau des mails lors de la lecture avec gmail et autres.
Une solution de contournement consiste à mettre en commentaire la ligne suivante dans le fichier include/functions_mail.inc.php:
//~ add_event_handler('send_mail_content', 'move_ccs_rules_to_body');
Je notifies P@t pour qu'il voit comment corriger ce problème.
voila, c'est fait !
la version utilisée est Piwigo 2.1.2
les plugins utilisés :
* AStat.2
* BBCode Bar
* Grum Plugin Classes
* LocalFiles Editor
* Piwigo AutoUpgrade
* PWG Stuffs
* PY GVideo
* Smilies Support
* Statistics
Environnement
* Système d'exploitation: Linux
* PHP: 5.1.3RC4-dev (Montrer les informations) [2010-07-19 10:22:59]
* mysql: 5.0.83 [2010-07-19 10:22:59]
merci
Quelle est la version utilisée?
Je me suis inscrit sur le site, si tu pouvais m'envoyer une notification pour je puisses voir ce qui ce passe. Merci!
Bonjour,
je tiens d'abord à préciser que j'ai cherché dans le forum, mais je n'ai pas trouvé de topic concernant mon soucis ...
Je vous explique, ma galerie est à jour, elle est hébergée chez Free, la notification fonctionne bien, mais il y a un petit problème, dans le mail j'ai bien 3 vignettes par catégorie mise à jour, mais systématiquement, la vignette du milieu ne s'affiche pas, et lorsque je regarde la source du mail, il y a un espace dans l'URL de la vignette, mais juste pour celle du milieu à chaque fois, pas pour les autres ...
Je vous mets une partie du code :
<ul><li>40 nouvelles images (<a style="color: #f70; background-color: transparent; border:0; text-decoration: none;" href="http://delbarrelaurent.free.fr/index.php?/recent_pics">Images récentes</a>)</li><br><a style="color: #f70; background-color: transparent; border:0; text-decoration: none;" href="http://delbarrelaurent.free.fr/picture.php?/3512"><img style="margin:16px; border:16px solid #aaa; -moz-border-radius: 4px; border-radius: 4px 4px; margin: 16px; border: 16px solid #444; -moz-border-radius: 4px; border-radius: 4px 4px;" src="http://delbarrelaurent.free.fr/galleries/soirees/32-ans-romu/thumbnail/TN-32-ans-romu-20.jpg"></a><a style="color: #f70; background-color: transparent; border:0; text-decoration: none;" href="http://delbarrelaurent.free.fr/picture.php?/3507"><img style="margin:16px; border:16px solid #aaa; -moz-border-radius: 4px; border-radius: 4px 4px; margin: 16px; border: 16px solid #444; -moz-border-radius: 4px; border-radius: 4px 4px;" src="http://del barrelaurent.free.fr/galleries/soirees/32-ans-romu/thumbnail/TN-32-ans-romu-15.jpg"></a><a style="color: #f70; background-color: transparent; border:0; text-decoration: none;" href="http://delbarrelaurent.free.fr/picture.php?/3516"><img style="margin:16px; border:16px solid #aaa; -moz-border-radius: 4px; border-radius: 4px 4px; margin: 16px; border: 16px solid #444; -moz-border-radius: 4px; border-radius: 4px 4px;" src="http://delbarrelaurent.free.fr/galleries/soirees/32-ans-romu/thumbnail/TN-32-ans-romu-24.jpg"></a>...<br><li>1 catégorie mise à jour</li><ul><li>
Comme vous pouvez le voir, la coupure a lieu à la fin de la première ligne
src="http://del
merci pour votre aide.