source: spip-zone/_core_/plugins/mots/formulaires/editer_groupe_mot.php @ 93617

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

Indentation et regles de codage selon http://www.spip.net/fr_article3497.html#regles_codage

File size: 5.3 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
13/**
14 * Gestion du formulaire de d'édition d'un groupe de mots
15 *
16 * @package SPIP\Mots\Formulaires
17 **/
18if (!defined("_ECRIRE_INC_VERSION")) {
19        return;
20}
21
22include_spip('inc/actions');
23include_spip('inc/editer');
24
25/**
26 * Chargement du formulaire d'édition d'un groupe de mots
27 *
28 * @param int|string $id_groupe
29 *     Identifiant du groupe de mots. 'new' pour un nouveau groupe.
30 * @param string $retour
31 *     URL de redirection après le traitement
32 * @param string $config_fonc
33 *     Nom de la fonction ajoutant des configurations particulières au formulaire
34 * @param array $row
35 *     Valeurs de la ligne SQL du groupe de mot, si connu
36 * @param string $hidden
37 *     Contenu HTML ajouté en même temps que les champs cachés du formulaire.
38 * @return array
39 *     Environnement du formulaire
40 **/
41function formulaires_editer_groupe_mot_charger_dist(
42        $id_groupe = 'new',
43        $retour = '',
44        $config_fonc = 'groupes_mots_edit_config',
45        $row = array(),
46        $hidden = ''
47) {
48        $valeurs = formulaires_editer_objet_charger('groupe_mots', $id_groupe, 0, '', $retour, $config_fonc, $row, $hidden);
49
50        $valeurs['tables_liees'] = explode(',', $valeurs['tables_liees']);
51
52        // par defaut a la creation de groupe
53        if (!intval($id_groupe)) {
54                $valeurs['tables_liees'] = array('articles');
55                $valeurs['minirezo'] = 'oui';
56                $valeurs['comite'] = 'oui';
57        }
58
59        return $valeurs;
60}
61
62/**
63 * Identifier le formulaire en faisant abstraction des paramètres qui
64 * ne representent pas l'objet édité
65 *
66 * @param int|string $id_groupe
67 *     Identifiant du groupe de mots. 'new' pour un nouveau groupe.
68 * @param string $retour
69 *     URL de redirection après le traitement
70 * @param string $config_fonc
71 *     Nom de la fonction ajoutant des configurations particulières au formulaire
72 * @param array $row
73 *     Valeurs de la ligne SQL du groupe de mot, si connu
74 * @param string $hidden
75 *     Contenu HTML ajouté en même temps que les champs cachés du formulaire.
76 * @return string
77 *     Hash du formulaire
78 */
79function formulaires_editer_groupe_mot_identifier_dist(
80        $id_groupe = 'new',
81        $retour = '',
82        $config_fonc = 'groupes_mots_edit_config',
83        $row = array(),
84        $hidden = ''
85) {
86        return serialize(array(intval($id_groupe)));
87}
88
89/**
90 * Choix par défaut des options de présentation
91 *
92 * @param array $row
93 *     Valeurs de la ligne SQL du groupe de mot, si connu
94 * return array
95 *     Configuration pour le formulaire
96 */
97function groupes_mots_edit_config($row) {
98        global $spip_ecran, $spip_lang;
99
100        $config = $GLOBALS['meta'];
101        $config['lignes'] = ($spip_ecran == "large") ? 8 : 5;
102        $config['langue'] = $spip_lang;
103
104        return $config;
105}
106
107/**
108 * Vérification du formulaire d'édition d'un groupe de mots
109 *
110 * @param int|string $id_groupe
111 *     Identifiant du groupe de mots. 'new' pour un nouveau groupe.
112 * @param string $retour
113 *     URL de redirection après le traitement
114 * @param string $config_fonc
115 *     Nom de la fonction ajoutant des configurations particulières au formulaire
116 * @param array $row
117 *     Valeurs de la ligne SQL du groupe de mot, si connu
118 * @param string $hidden
119 *     Contenu HTML ajouté en même temps que les champs cachés du formulaire.
120 * @return array
121 *     Tableau des erreurs
122 **/
123function formulaires_editer_groupe_mot_verifier_dist(
124        $id_groupe = 'new',
125        $retour = '',
126        $config_fonc = 'groupes_mots_edit_config',
127        $row = array(),
128        $hidden = ''
129) {
130
131        $erreurs = formulaires_editer_objet_verifier('groupe_mots', 0, array('titre'));
132
133        return $erreurs;
134}
135
136/**
137 * Traitement du formulaire d'édition d'un groupe de mots
138 *
139 * @param int|string $id_groupe
140 *     Identifiant du groupe de mots. 'new' pour un nouveau groupe.
141 * @param string $retour
142 *     URL de redirection après le traitement
143 * @param string $config_fonc
144 *     Nom de la fonction ajoutant des configurations particulières au formulaire
145 * @param array $row
146 *     Valeurs de la ligne SQL du groupe de mot, si connu
147 * @param string $hidden
148 *     Contenu HTML ajouté en même temps que les champs cachés du formulaire.
149 * @return array
150 *     Retour des traitements
151 **/
152function formulaires_editer_groupe_mot_traiter_dist(
153        $id_groupe = 'new',
154        $retour = '',
155        $config_fonc = 'groupes_mots_edit_config',
156        $row = array(),
157        $hidden = ''
158) {
159        set_request('redirect', '');
160        // cas des checkbox : injecter la valeur non si rien de coche
161        foreach (array(
162                         'obligatoire',
163                         'unseul',
164                         'comite',
165                         'forum',
166                         'minirezo'
167                 ) as $champ) {
168                if (!_request($champ)) {
169                        set_request($champ, 'non');
170                }
171        }
172
173        $res = formulaires_editer_objet_traiter('groupe_mots', $id_groupe, 0, 0, $retour, $config_fonc, $row, $hidden);
174
175        return $res;
176}
177
178
179?>
Note: See TracBrowser for help on using the repository browser.