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

Last change on this file since 93641 was 93641, checked in by marcimat@…, 5 years ago

Meilleure compatibilité avec PSR-2 et nos règles d'écriture, en appliquant
différents fix avec php-cs-fixers. Fixers appliqués ici :

'encoding', utf8
'eof_ending',
un saut de ligne en fin de fichier
'elseif', elseif plutôt que else if
'function_call_space',
espaces sur fonctions
'function_declaration', espaces sur fonctions
'function_typehint_space',
espaces sur fonctions
'linefeed', sauts de ligne \n uniquement
'lowercase_constants',
true, false, null en munuscule
'lowercase_keywords', mots clés PHP en lowercase
'method_argument_space',
espaces sur appels de fonctions
'multiple_use', use unique sur fonctions anonymes
'newline_after_open_tag',
ouverture de php… et c'est tout sur cette ligne
'operators_spaces', espaces de part et d'autres des opérateurs binaires
'parenthesis',
pas d'espace juste après parenthèse ouvrante, ou avant parenthèse fermante
'php_closing_tag', pas de fermeture de php
'short_tag',
tag PHP corrects
'trailing_spaces', pas d'espace qui traîne en fin de ligne
'visibility',
déclarer 'public / private / protected' sur les méthodes

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}
Note: See TracBrowser for help on using the repository browser.