[spip-dev] Mail nouveautes

J'ai des soucis avec le mail de nouveautés qui ne part pas. En fait, dans le log, je lis toujours "Pas de nouveautés", même si ce n'est pas le cas.

Les paramètres semblent bon.

J'ai fouillé un peu et j'ai trouvé ce bout de code dans ecrire/inc.cron.php3, où il y a un truc que je comprends pas, à la ligne que j'ai marquée d'un ->???

  //
  // Envoi du mail quoi de neuf
  //
  if (!$flag_ecrire AND (lire_meta('quoi_de_neuf') == 'oui') AND ($jours_neuf = lire_meta('jours_neuf'))
  AND ($adresse_neuf = lire_meta('adresse_neuf')) AND (time() - ($majnouv = lire_meta('majnouv'))) > 3600 * 24 * $jours_neuf) {

    if (timeout('quoide_neuf')) {
      ecrire_meta('majnouv', time());
      ecrire_metas();

      // preparation mail
      unset ($mail_nouveautes); -> ???
      unset ($sujet_nouveautes);
      $fond = 'nouveautes';
      $delais = 0;
      $contexte_inclus = array('date' => date('Y-m-d H:i:s', $majnouv));
      include(inclure_fichier($fond, $delais, $contexte_inclus));

      // envoi
      if ($mail_nouveautes) {
        spip_log("envoi mail nouveautes");
        include_ecrire('inc_mail.php3');
        envoyer_mail($adresse_neuf, $sujet_nouveautes, $mail_nouveautes);
      } else
        spip_log("envoi mail nouveautes : pas de nouveautes");
    }
  }

Si je lis bien, vous annulez un variable et juste après vous vérifiez qu'elle existe, et à aucun moment je ne vois de réaffectation entre ces deux lignes.

En tout cas, chez moi, ça ne fonctionne JAMAIS, et quand je lis le code, ça me parait logique. Par contre, je vois bien que dans le squelette nouveautes-dist.html, vous affectez un contenu à $mail_nouveautes.

Je suppose que l'astuce se trouve dans la ligne:
include(inclure_fichier($fond, $delais, $contexte_inclus));
mais impossible de retrouver la fonction inclure_fichier(), donc je ne sais pas ce qu'elle fait.

Pour ma culture personnelle, comment est-ce que ça fonctionne?

De toute façon, ça fonctionne chez les autres, donc que faut-il que je vérifie?
- l'adresse d'envoi est bonne et fonctionne
- le serveur SMTP fonctionne
- il y a bien des nouveautés dans le délai fixé par le meta jours_neuf
- la base de donnée change bien la date du meta majnouv

et pourtant j'ai, à chaque fois, "Pas de nouveautés" dans le log. C'est à devenir fou... surtout que ça fait vraiment un moment que ça dure et que j'ai tout essayé pour me dépatouiller avant de vous embêter.

Merci de votre aide et bravo pour Spip

Pour ceux que ça intéresse, le site en question: http://www.sahariens.info

De quelle version parles-tu ?
En 1.7.2, la fonction inclure_fichier est définie dans inc-public-global.
Dans la CVS, cette fonction a disparu car on n'écrit plus sur disque les
pages à délai nul.
J'ai l'impression que tu as mélangé deux versions; recharge l'une ou l'autre.

      Emmanuel