source: spip-zone/_core_/plugins/grenier/inc/selectionner_auteur.php @ 89285

Last change on this file since 89285 was 89285, checked in by erational@…, 6 years ago

remplacement des http://doc.spip.org par http://code.spip.net (Francky)
passage du copyright en 2015

File size: 2.7 KB
Line 
1<?php
2
3/***************************************************************************\
4 *  SPIP, Systeme de publication pour l'internet                           *
5 *                                                                         *
6 *  Copyright (c) 2001-2015                                                *
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
13if (!defined('_ECRIRE_INC_VERSION')) return;
14
15include_spip('inc/editer_auteurs');
16include_spip('inc/selectionner');
17
18//
19// Affiche un mini-navigateur ajax sur les auteurs
20//
21
22// http://code.spip.net/@inc_selectionner_auteur_dist
23function inc_selectionner_auteur_dist($id_article, $type='article')
24{
25        $idom = "auteur_$type" . "_$id_article";
26        $new = $idom . '_new';
27        if (!$determiner_non_auteurs = charger_fonction('determiner_non_auteurs_'.$type,'inc',true))
28                $determiner_non_auteurs = 'determiner_non_auteurs';
29
30        $futurs = selectionner_auteur_boucle($determiner_non_auteurs($type, $id_article), $idom);
31
32        // url completee par la fonction JS onkeypress_rechercher
33        $url = generer_url_ecrire('rechercher_auteur', "idom=$idom&nom=");
34
35        return construire_selectionner_hierarchie($idom, $futurs, '', $url, $new);
36}
37
38// http://code.spip.net/@selectionner_auteur_boucle
39function selectionner_auteur_boucle($where, $idom)
40{
41        $info = generer_url_ecrire('informer_auteur', "id=");
42        $idom3 = $idom . '_selection';
43        $idom2 = $idom . '_new';
44        $idom1 = $idom . '_div';
45        $args = "'$idom3', '$info', event";
46        $res = '';
47        $all = sql_allfetsel("nom, id_auteur", "spip_auteurs", $where, '', "nom, statut");
48        foreach ($all as $row) {
49
50                $id = $row["id_auteur"];
51                $nom = typo($row["nom"]);
52
53                // attention, les <a></a> doivent etre au premier niveau
54                // et se suivrent pour que changerhighligth fonctionne
55                // De plus, leur zone doit avoir une balise et une seule
56                // autour de la valeur pertinente pour que aff_selection
57                // fonctionne (faudrait concentrer tout ca).
58
59                $res .= "<a class='highlight off'"
60                . "\nonclick=\"changerhighlight(this);"
61                . "findObj_forcer('$idom2').value="
62                . $id
63                . "; aff_selection($id,$args); return false;"
64                . "\"\nondblclick=\""
65                  // incomplet: le selecteur devient indisponible. A ameliorer
66                . "findObj_forcer('$idom').parentNode.innerHTML='"
67                . attribut_html($nom)
68                . "'; findObj_forcer('$idom2').value="
69                . $id
70                . "; return false"
71                . "\"><b>"
72                . $nom
73                . "</b></a>";
74        }
75
76        return $res;
77}
78?>
Note: See TracBrowser for help on using the repository browser.