3 * Gestion du formulaire de d'édition de souscription_campagne
7 * @author Olivier Tétard
9 * @package SPIP\Souscription\Formulaires
12 if (!defined('_ECRIRE_INC_VERSION')) return;
14 include_spip('inc/actions');
15 include_spip('inc/editer');
17 function formulaires_editer_souscription_campagne_identifier_dist($id_souscription_campagne='new',
24 return serialize(array(intval($id_souscription_campagne)));
27 function formulaires_editer_souscription_campagne_charger_dist($id_souscription_campagne='new',
34 $valeurs = formulaires_editer_objet_charger('souscription_campagne',
35 $id_souscription_campagne,
43 $valeurs['objectif_oui_non'] = _request('objectif_oui_non');
45 /* Si la valeur du champ 'objectif' est 0, alors, c'est que
46 * l'objectif n'est pas activé. */
47 $defaut_objectif = "";
48 if($valeurs['objectif'] && $valeurs['objectif'] > 0)
49 $defaut_objectif = "on";
51 $saisies = array(array('saisie' => 'input',
52 'options' => array('nom' => 'titre',
53 'label' => _T('souscription:label_titre'),
54 'obligatoire' => 'oui')
56 array('saisie' => 'selection',
57 'options' => array('nom' => 'type_objectif',
58 'obligatoire' => 'oui',
59 'label' => _T('souscription:label_type_objectif'),
60 'explication' => _T('souscription:explication_type_objectif'),
61 'datas' => array('don' => 'Dons',
62 'adhesion' => 'Adhésions'))
64 array('saisie' => 'oui_non',
65 'options' => array('nom' => 'objectif_oui_non',
66 'label' => _T('souscription:label_objectif_oui_non'),
67 'defaut' => $defaut_objectif)
69 array('saisie' => 'fieldset',
70 'options' => array('nom' => 'groupe_limite',
71 'label' => _T('souscription:label_objectif_groupe'),
72 'afficher_si' => '@objectif_oui_non@ == "on"'),
73 'saisies' => array(array('saisie' => 'input',
74 'options' => array('nom' => 'objectif',
75 'obligatoire' => 'oui',
76 'label' => _T('souscription:label_objectif'),
77 'explication' => _T('souscription:explication_campagne_objectif')),
79 array('saisie' => 'input',
80 'options' => array('nom' => 'objectif_initial',
81 'label' => _T('souscription:label_objectif_initial'),
82 'explication' => _T('souscription:explication_campagne_objectif_initial'))
86 array('saisie' => 'textarea',
87 'options' => array('nom' => 'texte',
88 'label' => _T('souscription:label_description'),
89 'inserer_barre' => 'edition',
93 $valeurs['_saisies'] = $saisies;
98 function formulaires_editer_souscription_campagne_verifier_dist($id_souscription_campagne='new',
106 $ret = formulaires_editer_objet_verifier('souscription_campagne',
107 $id_souscription_campagne,
112 $type = _request("type_objectif");
113 if(!in_array($type, array('don', 'adhesion')))
114 $ret['type_objectif'] = _T("souscription:message_nok_objectif_invalide");
116 /* Si un objectif est demandé, alors on vérifie que les champs sont
117 * bien des entiers. */
118 if(_request('objectif_oui_non') == 'on') {
119 $objectif_initial = _request('objectif_initial');
120 if(!ctype_digit($objectif_initial) || intval($objectif_initial) < 0)
121 $ret['objectif_initial'] = _T("souscription:message_nok_objectif_initial_invalide");
123 $objectif = _request('objectif');
124 if(!ctype_digit($objectif) || intval($objectif) < 0)
125 $ret['objectif'] = _T("souscription:message_nok_objectif_initial_valeur");
131 function formulaires_editer_souscription_campagne_traiter_dist($id_souscription_campagne='new',
139 /* Si un objectif n'est pas demandée, alors, on remplace la valeur
140 * fournie (quelqu'elle soit, par 0) */
141 if(_request('objectif_oui_non') != "on") {
142 set_request('objectif', 0);
143 set_request('objectif_initial', 0);
146 $res = formulaires_editer_objet_traiter('souscription_campagne',
147 $id_souscription_campagne,