source: spip-zone/_plugins_/_dev_/liens_contenus/lienscontenus_pipelines.php @ 9717

Last change on this file since 9717 was 9717, checked in by nicolas@…, 13 years ago

-* Adoption du modele standard de gestion des upgrades de la base
-* Traitement des forums
-* Remplacement de site par syndic (trop galere, les noms pas uniformes)

File size: 2.2 KB
Line 
1<?php
2/*
3 * liens_contenus
4 * Gestion des liens inter-contenus
5 *
6 * Auteur :
7 * Nicolas Hoizey
8 * © 2007 - Distribue sous licence GNU/GPL
9 *
10 */
11
12include_spip('inc/lienscontenus');
13
14function lienscontenus_post_edition($flux)
15{
16        if (!isset($flux['args']['id_objet']) || !isset($flux['args']['table'])) {
17                return $flux;
18        }
19
20        $id_objet = $flux['args']['id_objet'];
21        $type_objet = ereg_replace("^spip_(.*[^s])s?$", "\\1", $flux['args']['table']);
22
23    // On recupere les donnees en base
24    include_spip('base/abstract_sql');
25    $query = 'SELECT * FROM '.$flux['args']['table'].' WHERE id_'.$type_objet.'='._q($id_objet);
26    if ($res = spip_query($query)) {
27        $row = spip_fetch_array($res);
28       
29        // Traitement des redirections
30        if ($type_objet == 'article' && substr($row['chapo'], 0, 1) == '=') {
31            $row['chapo'] = '[->'.substr($row['chapo'], 1).']';
32        }
33        $contenu = implode(' ',$row);
34        lienscontenus_referencer_liens($type_objet, $id_objet, $contenu);
35    }
36
37        return $flux;
38}
39
40function lienscontenus_affiche_droite($flux)
41{
42        if (!isset($flux['args']['exec'])) {
43                return $flux;
44        }
45
46    $exec = $flux['args']['exec'];
47    $liste_pages_unitaires = array(
48        'naviguer' => array('rubrique', 'id_rubrique'),
49        'articles' => array('article', 'id_article'),
50        'breves_voir' => array('breve', 'id_breve'),
51        'breves_edit' => array('breve', 'id_breve'),
52        'sites' => array('syndic', 'id_syndic'),
53        'mots_edit' => array('mot', 'id_mot'),
54        'auteur_infos' => array('auteur', 'id_auteur'),
55        'forms_edit' => array('form', 'id_form')
56        // TODO : Ajouter les autres
57        );
58    if (isset($liste_pages_unitaires[$exec])) {
59        $type = $liste_pages_unitaires[$exec];
60        $flux['data'] .= lienscontenus_boite_liste($type[0], $flux['args'][$type[1]]);
61    }
62    $fonction = 'lienscontenus_verification_'.$exec;
63    if (function_exists($fonction)) {
64        $flux['data'] .= $fonction();
65    }
66    return $flux;
67}
68
69function lienscontenus_header_prive($flux)
70{
71        // On ajoute une CSS pour le back-office
72        $flux .= '<link rel="stylesheet" type="text/css" href="'._DIR_PLUGIN_LIENS_CONTENUS.'/css/styles.css" />';
73        return $flux;
74}
75?>
Note: See TracBrowser for help on using the repository browser.