source: spip-zone/_plugins_/_test_/microblog/inc/micro_notifications.php @ 28867

Last change on this file since 28867 was 28867, checked in by cy_altern@…, 11 years ago

oups! avec le die() de debogage ça risque *vraiment pas* de notifier!

File size: 2.1 KB
Line 
1<?php
2
3/*****************************************************************\
4 * spip|microblog
5 *                      (c) Fil 2009
6 *
7 * envoyer des micromessages depuis SPIP vers twitter ou laconica
8 * distribue sous licence GNU/LGPL
9 *
10\*****************************************************************/
11
12if (!defined("_ECRIRE_INC_VERSION")) return;
13
14
15
16/*
17 * Buzzer les notifications
18 */
19
20function Microblog_notifications($x) {
21  include_spip('inc/filtres_mini');
22  include_spip('inc/texte');
23
24        $status = null;
25        $cfg = @unserialize($GLOBALS['meta']['microblog']);
26        switch($x['args']['quoi']) {
27                case 'forumposte':      // post forums
28                        if ($cfg['evt_forumposte']
29                        AND $id = intval($x['args']['id'])) {
30                                $url = url_absolue(generer_url_entite($id, 'forum'));
31                                $t = sql_fetsel('titre,texte', 'spip_forum', 'id_forum='.$id);
32                                $titre = couper(typo($t['titre'].' | '.$t['texte']),
33                                        120 - strlen('#forum  ') - strlen($url));
34                                $status = "$titre #forum $url";
35                        }
36                        break;
37               
38                case 'instituerarticle':    // publier | proposer articles
39                if ($id = intval($x['args']['id'])
40                        AND ( ($cfg['evt_publierarticles'] 
41                                AND $x['args']['options']['statut'] == 'publie') // publier
42                        OR ($cfg['evt_proposerarticles'] 
43                                AND $x['args']['options']['statut'] == 'prop' 
44                                AND $x['args']['options']['statut_ancien'] != 'publie') )  // proposer
45                ) {
46                        $espace_lien = ($x['args']['options']['statut'] == 'publie' ? true : false);  // lien notifié vers public | privé
47        $url = str_replace('amp;','',url_absolue(generer_url_entite($id, 'article', '', '', $espace_lien)));
48                        $t = sql_fetsel('titre,descriptif,texte', 'spip_articles', 'id_article='.$id);
49                        $etat = str_replace(array('prop','publie'),
50                                array(_T('microblog:propose'),_T('microblog:publie')),
51                                $x['args']['options']['statut']
52                        );
53                        $titre = couper(typo($t['titre']
54                                .' | '.$etat
55                                .' | '.($t['descriptif'] != '' ? $t['descriptif'].' | ' : '')
56                                .$t['texte']),
57                                120 - strlen($url));
58                        $status = "$titre $url";
59                }
60                break;
61        }
62
63        if (!is_null($status)) {
64                include_spip('inc/microblog');
65                microblog($status);
66        }
67
68        return $x;
69}
70
Note: See TracBrowser for help on using the repository browser.