[SPIP Zone] r3886 - in /_plugins_/_email_/spip_listes: exec/gerer_courrier.php lang/spiplistes_fr.php3

Author: booz@rezo.net
Date: Mon Jul 10 19:38:57 2006
New Revision: 3886

Log:
dire sur quelle liste le message est envoye + menage dans le code

Modified:
    _plugins_/_email_/spip_listes/exec/gerer_courrier.php
    _plugins_/_email_/spip_listes/lang/spiplistes_fr.php3

Modified: _plugins_/_email_/spip_listes/exec/gerer_courrier.php

--- _plugins_/_email_/spip_listes/exec/gerer_courrier.php (original)
+++ _plugins_/_email_/spip_listes/exec/gerer_courrier.php Mon Jul 10 19:38:57 2006
@@ -44,6 +44,7 @@
$urlsite=lire_meta("adresse_site");

+
// Admin SPIP-Listes
debut_page("Spip listes", "redacteurs", "spiplistes");

@@ -79,19 +79,30 @@
// MODE COURRIER: Affichage d'un courrier---------------------------------------

+// Ajouter si on le connait le destinataire
+// on fait ca comme un sale directos dans le texte du message :))
+$query = "SELECT texte FROM spip_messages WHERE id_message=$id_message";
+$result = spip_query($query);

-$query_message = "SELECT * FROM spip_messages WHERE id_message=$id_message";
-$result_message = spip_query($query_message);
- while($row = spip_fetch_array($result_message)) {
- $type = $row['type'];
- }
- if (!$connect_statut == "0minirezo"){
- echo "<b>"._T('avis_non_acces_message')._T('info_acces_refuse')."</b><p>";
- fin_page();
- exit;
+while($row = spip_fetch_array($result)) {
+ if(($choisir_dest OR $envoi_test)){
+ if($envoi_test){
+ $destinataire = $adresse_test ;
+ global $table_prefix;
+ $query__ = "SELECT id_auteur FROM ".$table_prefix."_auteurs WHERE email = '$destinataire' ORDER BY id_auteur ASC ";
+ if(spip_num_rows(spip_query($query__))==0){
+ $erreur_mail_pas_bon = "<h3>"._T('spiplistes:sans_envoi')."</h3>\n";
   }

+ }
+ $texte_mod = "__bLg__".$destinataire."__bLg__".$row['texte'] ;
+ $texte_mod = addslashes($texte_mod);
+ if(!$erreur_mail_pas_bon)
+ spip_query("UPDATE spip_messages SET texte='$texte_mod' WHERE id_message='$id_message'");
+ }
+}

+if(intval($id_message)){

if ($modifier_message == "oui") {
     $titre = addslashes($titre);
@@ -114,19 +123,20 @@
  spip_query("UPDATE spip_messages SET statut='encour' WHERE id_message='$id_message'");
}

-//
-//
+}
+
+//le message

$query_m = "SELECT * FROM spip_messages WHERE id_message=$id_message";
$result_m = spip_query($query_m);

while($row = spip_fetch_array($result_m)) {
   $id_message = $row['id_message'];
+
   $date_heure = $row["date_heure"];
   $date_fin = $row["date_fin"];
   $titre = typo($row["titre"]);
   $texte = $row["texte"];
- //$texte = propre($row["texte"]);
   $type = $row["type"];
   $statut = $row["statut"];
   $page = $row["page"];
@@ -137,71 +147,72 @@
   $lemois = mois($row['date_heure']);
   $lannee = annee($row['date_heure']);

-
     $le_type = _T('spiplistes:message_type');
     $la_couleur = "red";
   
- debut_cadre_relief('../'._DIR_PLUGIN_SPIPLISTES.'/img_pack/stock_mail_send.gif');
+ //trouver un dest dans le texte
+
+ $destinataire = ''; //secu
+ eregi("^__bLg__[0-9@\.A-Z_-]+__bLg__", $texte, $res );
+ $destinataire = str_replace("__bLg__","",$res[0]);
+
+ if($destinataire != ''){
+ //est-ce une liste ?
+ if(intval($destinataire)){
+ $query_ = spip_query ("SELECT * FROM spip_articles WHERE id_article = '$destinataire' ");
+ $row = spip_fetch_array($query_);
+ $destinataire = 'la liste : "'.$row['titre'].'"';
+ //echo $liste_destinataire ;
+ }elseif($destinataire == 'tous'){
+ //est-ce l'ensemble des abonnés
+ $destinataire = _T('spiplistes:abonees');
+ }elseif(email_valide_bloog($destinataire)){
+ $destinataire = "l'email de test : ".$destinataire ;
+ }else{$erreur_mail == 'oui';}
+ }
+

+ debut_cadre_relief('../'._DIR_PLUGIN_SPIPLISTES.'/img_pack/stock_mail_send.gif');

-if ($statut == 'redac') {
- if (!$envoi && $destinataire)
+ if ($statut == 'redac' && !$erreur_mail_pas_bon) {
+ if ($destinataire!='') {
     echo "<font face='Verdana,Arial,Sans,sans-serif' size=2 color='red'>
- <b>"._T('spiplistes:message_presque_envoye')."<br />"._T('spiplistes:confirme_envoi')."</b></font>";
- elseif (!$envoi)
- echo "<br /><font face='Verdana,Arial,Sans,sans-serif' size=2 color='red'>
- <b>"._T('spiplistes:message_en_cours')." <br />"._T('spiplistes:modif_envoi')."</b></font>";
+ <b>"._T('spiplistes:message_presque_envoye')."</b></font> <br /> &agrave; destination de $destinataire<br />"._T('spiplistes:confirme_envoi');
+ }else {
+ echo "<br /><font face='Verdana,Arial,Sans,sans-serif' size=2 color='red'><b>"._T('spiplistes:message_en_cours')." <br />"._T('spiplistes:modif_envoi')."</b></font>";
+ }
+ }elseif($erreur_mail_pas_bon){
+ echo $erreur_mail_pas_bon ;
+ echo "<br /><font face='Verdana,Arial,Sans,sans-serif' size=2 color='red'><b>"._T('spiplistes:message_en_cours')." <br />"._T('spiplistes:modif_envoi')."</b></font>";
     }

     if ($statut == 'encour'){
- echo "<p><font face='Verdana,Arial,Sans,sans-serif' size=2 color='red'>
- <b>"._T('spiplistes:envoi_program')."</b><br />
- <a href='?exec=spip_listes'>["._T('spiplistes:voir_historique')."]</a></font></p>";
       if ($expediteur == $connect_id_auteur OR ($type == 'nl' AND $connect_statut == '0minirezo') OR ($type == 'auto' AND $connect_statut == '0minirezo')) {
- icone (_T('icone_supprimer_message'), '?exec=spip_listes&detruire_message=$id_message', 'messagerie-24.gif', 'supprimer.gif');
- echo "<br />";
+ echo "<div style='float:right'>";
+ icone (_T('icone_supprimer_message'), '?exec=spip_listes&detruire_message='.$id_message, 'messagerie-24.gif', 'supprimer.gif');
+ echo "</div>";
       }
+ echo "<p><font face='Verdana,Arial,Sans,sans-serif' size=2 color='red'>
+ <b>"._T('spiplistes:envoi_program')."</b></font><br /> &agrave; destination de $destinataire<br /><br />
+ <a href='?exec=spip_listes'>["._T('spiplistes:voir_historique')."]</a></p>";
   }

- if ($statut == 'publie')
+ if ($statut == 'publie') {
   echo "<font face='Verdana,Arial,Sans,sans-serif' size=2 color='red'>
   <b>"._T('spiplistes:message_arch')."</b></font>";
-
-
-
-
- fin_cadre_relief();
-
- echo "<div style='margin-top:20px;border: 1px solid $la_couleur; background-color: $couleur_fond; padding: 5px;'>"; // debut cadre de couleur
- //debut_cadre_relief("messagerie-24.gif");
- echo "<table width=100% cellpadding=0 cellspacing=0 border=0>";
- echo "<tr><td width=100%>";
-
- echo "<font face='Verdana,Arial,Sans,sans-serif' size=2 color='$la_couleur'><b>$le_type</b></font><br />";
- echo "<font face='Verdana,Arial,Sans,sans-serif' size=5><b>$titre</b></font>";
-
-
- if ($statut == 'redac') {
- if ($expediteur == $connect_id_auteur OR ($type == 'nl' AND $connect_statut == '0minirezo')) {
- echo "\n</td> <td align='right'>";
- if (!$envoi)
- icone (_T('icone_modifier_message'),'?exec=courrier_edit&id_message='.$id_message, 'messagerie-24.gif');
- echo "</td><tr></table>";
- }
+ echo "<br />envoy&eacute; &agrave $destinataire le $lejour/$lemois/$lannee";
   }
   
+ fin_cadre_relief();
   
-
- echo "<p>";
-
- //////////////////////////////////////////////////////
- // Le message lui-meme
- //
+ //ne pas afficher le destinataire
   $texte = eregi_replace("__bLg__[0-9@\.A-Z_-]+__bLg__","",$texte);
   $texte = stripslashes($texte);
   $texte_original = $texte;
   
+
+ // ne pas faire ca si y'a du htlm (lent, erreur spip class truc), à revoir
   $temp_style = ereg("<style[^>]*>[^<]*</style>", $texte, $style_reg);
   if (isset($style_reg[0])) $style_str = $style_reg[0];
                          else $style_str = "";
@@ -206,74 +217,45 @@
   if (isset($style_reg[0])) $style_str = $style_reg[0];
                          else $style_str = "";
   $texte = ereg_replace("<style[^>]*>[^<]*</style>", "__STYLE__", $texte);
-
$texte = propre($texte); // pb: enleve aussi <style>...
$texte = propre_bloog($texte);
-
   $texte = ereg_replace("__STYLE__", $style_str, $texte);

- echo "<div align='left'>";
+
+ echo "<div style='margin-top:20px;border: 1px solid $la_couleur; background-color: $couleur_fond; padding: 5px;'>"; // debut cadre de couleur
+ //debut_cadre_relief("messagerie-24.gif");
   echo "<table width=100% cellpadding=0 cellspacing=0 border=0>";
- echo "<tr><td>";
+ echo "<tr><td width=100%>";
+if ($statut=="redac") {
+ echo "<div style='float:right'>";
+ icone (_T('icone_modifier_message'),'?exec=courrier_edit&id_message='.$id_message, 'messagerie-24.gif');
+ echo "</div>";
+ }
+
+ echo "<font face='Verdana,Arial,Sans,sans-serif' size=2 color='$la_couleur'><b>$le_type</b></font><br />";
+ echo "<font face='Verdana,Arial,Sans,sans-serif'><h1>$titre</h1></font>";

   echo "<br /><font face='Georgia,Garamond,Times,serif' size=3>";
   debut_boite_info();
- echo "<h2> "._T('spiplistes:version')." HTML </h2>";
+ echo "<h3>"._T('spiplistes:version')." HTML</h3><a href=\"".generer_url_ecrire('courrier_preview','id_message='.$id_message)."\">(Plein &eacute;cran)</a><br />\n";
   echo "<iframe src=\"?exec=courrier_preview&id_message=$id_message\" width=\"100%\" height=\"500\"></iframe>\n";
   fin_boite_info();
   echo "<p>";
   debut_boite_info();
- echo "<h2> "._T('spiplistes:version')." "._T('spiplistes:val_texte')." </h2>";
+ echo "<h3> "._T('spiplistes:version')." "._T('spiplistes:val_texte')." </h3>";
     echo "<textarea name='texte' rows='20' class='formo' cols='40' wrap=soft>";
   echo version_texte($texte);
   echo "</textarea><p>\n";

   fin_boite_info();
- echo "</font>";
-
- echo "</td></tr></table><p>";
-
-//////////////////////////////////////////////////////
- // Newsletter?
- //
+ echo "</font><br />";

-// Ajouter si on le connait le destinataire
-// on fait ca comme un sale directos dans le texte du message :))
-
-if ($statut == 'redac' AND $type =='nl' ){
-
- if(!$envoi && ($destinataire && $choisir_dest)){
- $texte_original = "__bLg__".$destinataire."__bLg__".$texte_original ;

[... 200 lines stripped ...]