[SPIP] ~v3.0.20-->v3.0.25
[lhc/web/clavette_www.git] / www / plugins-dist / forum / prive / modeles / forum_fonctions.php
1 <?php
2
3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
5 * *
6 * Copyright (c) 2001-2016 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
8 * *
9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
11 \***************************************************************************/
12
13 if (!defined("_ECRIRE_INC_VERSION")) return;
14
15 function forum_compte_messages_from($email,$id_forum){
16 static $mem = array();
17
18 if (isset($mem[$email]))
19 return $mem[$email];
20
21 // sinon on fait une requete groupee pour essayer de ne le faire qu'une fois pour toute la liste
22 $emails = sql_allfetsel("DISTINCT email_auteur","spip_forum","id_forum>".intval($id_forum-50)." AND id_forum<".intval($id_forum+50));
23 $emails = array_map('reset',$emails);
24 $emails = array_filter($emails);
25 // et compter
26 $counts = sql_allfetsel("email_auteur,count(id_forum) AS N","spip_forum",sql_in("email_auteur",$emails),"email_auteur");
27
28 foreach($counts as $c){
29 $mem[$c['email_auteur']] = $c['N'];
30 }
31
32 return $mem[$email];
33 }