634a2175d37094c721dd05e13e90379040e0bfe6
3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
6 * Copyright (c) 2001-2016 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
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 \***************************************************************************/
14 * Gestion du formulaire de d'édition d'un groupe de mots
16 * @package SPIP\Mots\Formulaires
18 if (!defined('_ECRIRE_INC_VERSION')) {
22 include_spip('inc/actions');
23 include_spip('inc/editer');
26 * Chargement du formulaire d'édition d'un groupe de mots
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
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.
39 * Environnement du formulaire
41 function formulaires_editer_groupe_mot_charger_dist(
44 $config_fonc = 'groupes_mots_edit_config',
48 $valeurs = formulaires_editer_objet_charger('groupe_mots', $id_groupe, 0, '', $retour, $config_fonc, $row, $hidden);
50 $valeurs['tables_liees'] = explode(',', $valeurs['tables_liees']);
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';
63 * Identifier le formulaire en faisant abstraction des paramètres qui
64 * ne representent pas l'objet édité
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
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.
79 function formulaires_editer_groupe_mot_identifier_dist(
82 $config_fonc = 'groupes_mots_edit_config',
86 return serialize(array(intval($id_groupe)));
90 * Choix par défaut des options de présentation
93 * Valeurs de la ligne SQL du groupe de mot, si connu
95 * Configuration pour le formulaire
97 function groupes_mots_edit_config($row) {
98 global $spip_ecran, $spip_lang;
100 $config = $GLOBALS['meta'];
101 $config['lignes'] = ($spip_ecran == 'large') ?
8 : 5;
102 $config['langue'] = $spip_lang;
108 * Vérification du formulaire d'édition d'un groupe de mots
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
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.
121 * Tableau des erreurs
123 function formulaires_editer_groupe_mot_verifier_dist(
126 $config_fonc = 'groupes_mots_edit_config',
131 $erreurs = formulaires_editer_objet_verifier('groupe_mots', 0, array('titre'));
137 * Traitement du formulaire d'édition d'un groupe de mots
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
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.
150 * Retour des traitements
152 function formulaires_editer_groupe_mot_traiter_dist(
155 $config_fonc = 'groupes_mots_edit_config',
159 set_request('redirect', '');
160 // cas des checkbox : injecter la valeur non si rien de coche
168 if (!_request($champ)) {
169 set_request($champ, 'non');
173 $res = formulaires_editer_objet_traiter('groupe_mots', $id_groupe, 0, 0, $retour, $config_fonc, $row, $hidden);