Line | |
---|
1 | <?php |
---|
2 | |
---|
3 | /***************************************************************************\ |
---|
4 | * SPIP, Systeme de publication pour l'internet * |
---|
5 | * * |
---|
6 | * Copyright (c) 2001-2014 * |
---|
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")) { |
---|
14 | return; |
---|
15 | } |
---|
16 | |
---|
17 | function forum_compte_messages_from($email, $id_forum) { |
---|
18 | static $mem = array(); |
---|
19 | |
---|
20 | if (isset($mem[$email])) { |
---|
21 | return $mem[$email]; |
---|
22 | } |
---|
23 | |
---|
24 | // sinon on fait une requete groupee pour essayer de ne le faire qu'une fois pour toute la liste |
---|
25 | $emails = sql_allfetsel("DISTINCT email_auteur", "spip_forum", |
---|
26 | "id_forum>" . intval($id_forum-50) . " AND id_forum<" . intval($id_forum+50)); |
---|
27 | $emails = array_map('reset', $emails); |
---|
28 | $emails = array_filter($emails); |
---|
29 | // et compter |
---|
30 | $counts = sql_allfetsel("email_auteur,count(id_forum) AS N", "spip_forum", sql_in("email_auteur", $emails), |
---|
31 | "email_auteur"); |
---|
32 | |
---|
33 | foreach ($counts as $c) { |
---|
34 | $mem[$c['email_auteur']] = $c['N']; |
---|
35 | } |
---|
36 | |
---|
37 | return $mem[$email]; |
---|
38 | } |
---|
Note: See
TracBrowser
for help on using the repository browser.