source: spip-zone/_plugins_/rss_commits/trunk/rss_commits_fonctions.php @ 84743

Last change on this file since 84743 was 84743, checked in by teddy.spip@…, 5 years ago
  • On rend l'importation automatique des commis issus du flux rss optionnelle ;
  • On passe par le flux RSS grâce à la boucle DATA. Ses subtilités me sont encore inconnues... Critère de filtrage à passer à un inlucre, etc.
  • Up de y : 0.6.0
File size: 1.9 KB
Line 
1<?php
2/**
3 * Fonctions utiles au plugin Commits de projet
4 *
5 * @plugin     Commits de projet
6 * @copyright  2014
7 * @author     Teddy Payet
8 * @licence    GNU/GPL
9 * @package    SPIP\RSSCommits\Fonctions
10 */
11
12if (!defined('_ECRIRE_INC_VERSION')) {
13    return;
14}
15
16include_spip('base/abstract_sql');
17include_spip('inc/filtres');
18
19function lister_rss_commits ($id_projet = null)
20{
21    $rss_items = array();
22    $items = array();
23    $where = "versioning_rss !=''";
24    if (!is_null($id_projet) and $id_projet = intval($id_projet)) {
25        $where = "versioning_rss !='' AND id_projet=$id_projet";
26    }
27
28    $projet_rss = sql_allfetsel('versioning_rss,id_projet', 'spip_projets', $where);
29
30    $analyser_rss_commits = charger_fonction('analyser_rss_commits', 'inc');
31    if (count($projet_rss) >0) {
32        foreach ($projet_rss as $key_rss => $value_rss) {
33            $contenu_rss = $analyser_rss_commits($value_rss["versioning_rss"]);
34            if (count($contenu_rss) > 0) {
35                foreach ($contenu_rss['channel']['item'] as $key => $value) {
36                        $items[$key]['titre']         = echapper_tags($value['title']);
37                        $items[$key]['descriptif']    = $value['description'];
38                        $items[$key]['texte']         = trim($value['texte']);
39                        $items[$key]['auteur']        = echapper_tags($value['author']);
40                        $items[$key]['url_revision']  = $value['link'];
41                        $items[$key]['guid']          = $value['guid'];
42                        $items[$key]['id_projet']     = $value_rss['id_projet'];
43                        $items[$key]['date_creation'] = strftime(
44                            "%Y-%m-%d %H:%M:%S",
45                            strtotime($value['pubDate'])
46                        );
47                }
48                $rss_items = array_merge($rss_items, $items);
49            }
50        } // end foreach $projet_rss
51    }
52
53    return $rss_items;
54}
55
56?>
Note: See TracBrowser for help on using the repository browser.