Changeset 31703 in spip-zone
- Timestamp:
- Sep 21, 2009, 4:04:46 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
_plugins_/notifications/notifications.php
r27085 r31703 50 50 51 51 function notifier_publication_auteurs_article($id_article) { 52 53 $envoyer_mail = charger_fonction('envoyer_mail','inc'); 52 include_spip('base/abstract_sql'); 54 53 $nom_site_spip = nettoyer_titre_email($GLOBALS['meta']["nom_site"]); 55 54 $suivi_edito = $GLOBALS['meta']["suivi_edito"]; … … 90 89 } 91 90 92 // Nettoyer le tableau 93 // Ne pas ecrire au posteur du message ! 94 $destinataires = array(); 95 foreach ($tous as $m) { 96 if ($m = email_valide($m)) 97 $destinataires[$m]++; 98 } 99 100 // 101 // Envoyer les emails 102 // 103 foreach (array_keys($destinataires) as $email) { 104 105 $envoyer_mail($email, $sujet, $courr); 106 } 91 // Nettoyer le tableau 92 // Ne pas ecrire au posteur du message ! 93 $destinataires = array(); 94 foreach ($tous as $m) { 95 if ($m = email_valide($m)) 96 $destinataires[$m]++; 97 } 98 99 // 100 // Envoyer les emails 101 // 102 $envoyer_mail = charger_fonction('envoyer_mail','inc'); 103 foreach (array_keys($destinataires) as $email) { 104 if (!function_exists('job_queue_add')) 105 $envoyer_mail($email, $sujet, $courr); 106 else 107 job_queue_add('envoyer_mail',">$email : $sujet",array($email,$sujet,$courr),'inc/',true); 108 } 107 109 108 110 if ($l) lang_select(); … … 166 168 // Envoi des notifications 167 169 function Notifications_envoi($emails, $subject, $body) { 168 include_spip('inc/mail'); # un peu obsolete, cf. envoyer_mail170 $envoyer_mail = charger_fonction('envoyer_mail','inc'); 169 171 include_spip('inc/filtres'); # pour email_valide() 170 172 … … 181 183 $bodyc .= "\n\n$url\n"; 182 184 } 183 envoyer_mail($email, $subject, $bodyc); 185 foreach (array_keys($destinataires) as $email) { 186 if (!function_exists('job_queue_add')) 187 $envoyer_mail($email, $subject, $bodyc); 188 else 189 job_queue_add('envoyer_mail',"->$email : $subject",array($email, $subject, $bodyc),'inc/',true); 190 } 184 191 } 185 192 } … … 188 195 // definis par la constante _SPIP_MODERATEURS_PETITION 189 196 function Notifications_spip_signatures($x) { 197 include_spip('base/abstract_sql'); 190 198 if (!$GLOBALS['notifications']['moderateurs_signatures']) 191 199 return $x; … … 193 201 $id_signature = $x['args']['id_objet']; 194 202 195 $s = s pip_query($q = "SELECT * FROM spip_signatures WHERE id_signature="._q($id_signature));196 197 if ($t = s pip_fetch_array($s)) {198 199 $a = s pip_fetch_array(spip_query("SELECT titre,lang FROM spip_articles WHERE id_article="._q($t['id_article'])));203 $s = sql_select("*","spip_signatures","id_signature=".intval($id_signature)); 204 205 if ($t = sql_fetch($s)) { 206 207 $a = sql_fetsel("titre,lang","spip_articles","id_article=".intval($t['id_article'])); 200 208 lang_select($a['lang']); 201 209 … … 249 257 250 258 function notifications_forumprive($quoi, $id_forum) { 251 $s = spip_query("SELECT * FROM spip_forum WHERE id_forum="._q($id_forum)); 252 if (!$t = spip_fetch_array($s)) 259 include_spip('base/abstract_sql'); 260 $s = sql_select("*","spip_forum","id_forum=".intval($id_forum)); 261 if (!$t = sql_fetch($s)) 253 262 return; 254 263 … … 266 275 // 1.1. Les auteurs du message (si c'est un message) 267 276 if ($t['id_message']) { 268 $result = s pip_query("SELECT auteurs.email FROM spip_auteurs AS auteurs, spip_auteurs_messages AS lien WHERE lien.id_message="._q($t['id_message'])." AND auteurs.id_auteur=lien.id_auteur");277 $result = sql_select("auteurs.email","spip_auteurs AS auteurs, spip_auteurs_messages AS lien","lien.id_message=".intval($t['id_message'])." AND auteurs.id_auteur=lien.id_auteur"); 269 278 270 while ($qui = s pip_fetch_array($result))279 while ($qui = sql_fetch($result)) 271 280 $tous[] = $qui['email']; 272 281 … … 282 291 // 1.2. Les auteurs de l'article (si c'est un article) 283 292 elseif ($t['id_article']) { 284 $result = s pip_query("SELECT auteurs.email FROM spip_auteurs AS auteurs, spip_auteurs_articles AS lien WHERE lien.id_article="._q($t['id_article'])." AND auteurs.id_auteur=lien.id_auteur");293 $result = sql_select("auteurs.email","spip_auteurs AS auteurs, spip_auteurs_articles AS lien","lien.id_article=".intval($t['id_article'])." AND auteurs.id_auteur=lien.id_auteur"); 285 294 286 while ($qui = s pip_fetch_array($result))295 while ($qui = sql_fetch($result)) 287 296 $tous[] = $qui['email']; 288 297 } … … 299 308 // pour se retirer d'un troll (hack: replacer @ par % dans l'email) 300 309 if ($GLOBALS['notifications']['thread_forum_prive']) { 301 $s = s pip_query("SELECT DISTINCT(email_auteur) FROM spip_forum WHERE id_thread=".$t['id_thread']." AND email_auteur != ''");302 while ($r = s pip_fetch_array($s))310 $s = sql_select("DISTINCT(email_auteur)","spip_forum","id_thread=".intval($t['id_thread'])." AND email_auteur != ''"); 311 while ($r = sql_fetch($s)) 303 312 $tous[] = $r['email_auteur']; 304 313 } … … 343 352 // suivre si le forum est valide directement ('pos' ou 'abo') 344 353 function notifications_forumvalide($quoi, $id_forum) { 345 $s = spip_query("SELECT * FROM spip_forum WHERE id_forum="._q($id_forum)); 346 if (!$t = spip_fetch_array($s)) 354 include_spip('base/abstract_sql'); 355 $s = sql_select("*","spip_forum","id_forum=".intval($id_forum)); 356 if (!$t = sql_fetch($s)) 347 357 return; 348 358 … … 364 374 if ($t['id_article'] 365 375 AND $GLOBALS['notifications']['prevenir_auteurs']) { 366 $result = s pip_query("SELECT auteurs.* FROM spip_auteurs AS auteurs, spip_auteurs_articles AS lien WHERE lien.id_article="._q($t['id_article'])." AND auteurs.id_auteur=lien.id_auteur");367 368 while ($qui = s pip_fetch_array($result)) {376 $result = sql_select("auteurs.*","spip_auteurs AS auteurs, spip_auteurs_articles AS lien","lien.id_article=".intval($t['id_article'])." AND auteurs.id_auteur=lien.id_auteur"); 377 378 while ($qui = sql_fetch($result)) { 369 379 if (!autoriser('modererforum', 'article', $t['id_article'], $qui['id_auteur'])) 370 380 $tous[] = $qui['email']; … … 379 389 // pour se retirer d'un troll (hack: replacer @ par % dans l'email) 380 390 if ($GLOBALS['notifications']['thread_forum']) { 381 $s = s pip_query("SELECT DISTINCT(email_auteur) FROM spip_forum WHERE id_thread=".$t['id_thread']." AND email_auteur != ''");382 while ($r = s pip_fetch_array($s))391 $s = sql_select("DISTINCT(email_auteur)","spip_forum","id_thread=".intval($t['id_thread'])." AND email_auteur != ''"); 392 while ($r = sql_fetch($s)) 383 393 $tous[] = $r['email_auteur']; 384 394 } … … 423 433 424 434 function notifications_forumposte($quoi, $id_forum) { 425 $s = spip_query("SELECT * FROM spip_forum WHERE id_forum="._q($id_forum)); 426 if (!$t = spip_fetch_array($s)) 435 include_spip('base/abstract_sql'); 436 $s = sql_select("*","spip_forum","id_forum=".intval($id_forum)); 437 if (!$t = sql_fetch($s)) 427 438 return; 428 439 … … 440 451 if ($t['id_article'] 441 452 AND $GLOBALS['notifications']['prevenir_auteurs']) { 442 $result = s pip_query("SELECT auteurs.* FROM spip_auteurs AS auteurs, spip_auteurs_articles AS lien WHERE lien.id_article="._q($t['id_article'])." AND auteurs.id_auteur=lien.id_auteur");443 444 while ($qui = s pip_fetch_array($result)) {453 $result = sql_select("auteurs.*","spip_auteurs AS auteurs, spip_auteurs_articles AS lien","lien.id_article=".intval($t['id_article'])." AND auteurs.id_auteur=lien.id_auteur"); 454 455 while ($qui = sql_fetch($result)) { 445 456 if (autoriser('modererforum', 'article', $t['id_article'], $qui['id_auteur'])) 446 457 $tous[] = $qui['email'];
Note: See TracChangeset
for help on using the changeset viewer.