[ Index ] |
|
Code source de SPIP 1.8.3 |
1 <?php 2 3 /***************************************************************************\ 4 * SPIP, Systeme de publication pour l'internet * 5 * * 6 * Copyright (c) 2001-2005 * 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 14 // SPIP RSS 15 // 16 // On recoit un op (operation) + args (arguments) 17 // + id (id_auteur) + cle (low_sec(id_auteur, "op args")) 18 // On verifie que la cle correspond 19 // On cree ensuite le RSS correspondant a l'operation 20 21 include ("ecrire/inc_version.php3"); 22 include_ecrire ("inc_texte.php3"); 23 include_ecrire ('inc_rss.php3'); 24 include_ecrire ("inc_acces.php3"); 25 // Gestionnaire d'URLs 26 if (@file_exists("inc-urls.php3")) 27 include_local("inc-urls.php3"); 28 else 29 include_local("inc-urls-".$GLOBALS['type_urls'].".php3"); 30 31 32 // 33 // Verifier la securite du lien et decoder les arguments 34 // 35 spip_timer('rss'); 36 if (!verifier_low_sec ($id, $cle, 37 "rss $op $args" 38 )) { 39 $op = 'erreur securite'; 40 unset($a); 41 } else { 42 $a = array(); 43 foreach (split(':', $args) as $bout) { 44 list($var, $val) = split('-', $bout, 2); 45 $a[$var] = $val; 46 } 47 include_ecrire ('inc_lang.php3'); 48 lang_select($lang); 49 } 50 51 // 52 // Choisir la fonction de calcul du RSS 53 // 54 switch($op) { 55 # forum public 56 case 'forum': 57 if ($id = intval($a['id_article'])) { 58 $critere = "statut='publie' AND id_article=$id"; 59 $url = generer_url_article($id); 60 } 61 else if ($id = intval($a['id_syndic'])) { 62 $critere = "statut='publie' AND id_syndic=$id"; 63 $url = generer_url_site($id); 64 } 65 else if ($id = intval($a['id_breve'])) { 66 $critere = "statut='publie' AND id_breve=$id"; 67 $url = generer_url_breve($id); 68 } 69 else if ($id = intval($a['id_rubrique'])) { 70 $critere = "statut='publie' AND id_rubrique=$id"; 71 $url = generer_url_rubrique($id); 72 } 73 else if ($id = intval($a['id_thread'])) { 74 $critere = "statut='publie' AND id_thread=$id"; 75 $url = generer_url_forum($id); 76 } 77 if ($id) $rss = rss_suivi_forums($a, $critere, false); 78 $title = _T("ecrire:titre_page_forum_suivi"); 79 break; 80 # suivi prive des forums 81 case 'forums': 82 include_ecrire ("inc_forum.php3"); 83 $critere = critere_statut_controle_forum($a['page']); 84 $rss = rss_suivi_forums($a, $critere, true); 85 $title = _T("ecrire:titre_page_forum_suivi")." (".$a['page'].")"; 86 $url = _DIR_RESTREINT_ABS .'controle_forum.php3?page='.$a['page']; 87 break; 88 # revisions des articles 89 case 'revisions': 90 $rss = rss_suivi_versions($a); 91 $title = _T("icone_suivi_revisions"); 92 $url = _DIR_RESTREINT_ABS .'suivi_revisions.php3?'; 93 foreach (array('id_secteur', 'id_auteur', 'lang_choisie') as $var) 94 if ($a[$var]) $url.= '&'.$var.'='.$a[$var]; 95 break; 96 # messagerie privee 97 case 'messagerie': 98 $rss = rss_suivi_messagerie($a); 99 $title = _T("icone_messagerie_personnelle"); 100 $url = _DIR_RESTREINT_ABS .'messagerie.php3'; 101 break; 102 # a suivre 103 case 'a-suivre': 104 $rss = rss_a_suivre($a); 105 $title = _T("icone_a_suivre"); 106 $url = _DIR_RESTREINT_ABS .''; 107 break; 108 case 'erreur securite': 109 $rss = array(array('title' => _L('Erreur de sécurité'))); 110 $title = _L('Erreur de sécurité'); 111 $url = ''; 112 break; 113 default: 114 $rss = array(array('title' => _L('Erreur'))); 115 $title = _L('Erreur'); 116 $url = ''; 117 break; 118 } 119 120 // 121 // Envoyer le RSS 122 // 123 $intro = array( 124 'title' => "[".lire_meta('nom_site')."] RSS ".$title, 125 'url' => $url 126 ); 127 128 list($content,$header) = affiche_rss($rss, $intro, $fmt); 129 if ($header) @header($header); 130 echo $content; 131 132 spip_log("spip_rss: ".spip_timer('rss')); 133 exit; 134 135 136 ?>
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Thu Feb 22 22:27:47 2007 | par Balluche grâce à PHPXref 0.7 |