$row,
$hidden);
- $valeurs['objectif_oui_non'] = _request('objectif_oui_non');
-
/* Si la valeur du champ 'objectif' est 0, alors, c'est que
* l'objectif n'est pas activé. */
- $defaut_objectif = "";
- if($valeurs['objectif'] && $valeurs['objectif'] > 0)
- $defaut_objectif = "on";
-
- $saisies = array(array('saisie' => 'input',
- 'options' => array('nom' => 'titre',
- 'label' => _T('souscription:label_titre'),
- 'obligatoire' => 'oui')
- ),
- array('saisie' => 'selection',
- 'options' => array('nom' => 'type_objectif',
- 'obligatoire' => 'oui',
- 'label' => _T('souscription:label_type_objectif'),
- 'explication' => _T('souscription:explication_type_objectif'),
- 'datas' => array('don' => 'Dons',
- 'adhesion' => 'Adhésions'))
- ),
- array('saisie' => 'oui_non',
- 'options' => array('nom' => 'objectif_oui_non',
- 'label' => _T('souscription:label_objectif_oui_non'),
- 'defaut' => $defaut_objectif)
- ),
- array('saisie' => 'fieldset',
- 'options' => array('nom' => 'groupe_limite',
- 'label' => _T('souscription:label_objectif_groupe'),
- 'afficher_si' => '@objectif_oui_non@ == "on"'),
- 'saisies' => array(array('saisie' => 'input',
- 'options' => array('nom' => 'objectif',
- 'obligatoire' => 'oui',
- 'label' => _T('souscription:label_objectif'),
- 'explication' => _T('souscription:explication_campagne_objectif')),
- ),
- array('saisie' => 'input',
- 'options' => array('nom' => 'objectif_initial',
- 'label' => _T('souscription:label_objectif_initial'),
- 'explication' => _T('souscription:explication_campagne_objectif_initial'))
- )
- )
- ),
- array('saisie' => 'textarea',
- 'options' => array('nom' => 'texte',
- 'label' => _T('souscription:label_description'),
- 'inserer_barre' => 'edition',
- 'rows' => '10'))
- );
-
- $valeurs['_saisies'] = $saisies;
+ $valeurs['_defaut_objectif'] = "";
+ if($valeurs['objectif'] AND $valeurs['objectif'] > 0)
+ $valeurs['_defaut_objectif'] = "on";
+
+ // pour la saisie uniquement, pas en base
+ $valeurs['objectif_oui_non'] = "";
return $valeurs;
}
}
}
+ /* Si une limite est demandée, alors, on vérifie que le champs est
+ * bien un entier. */
+ $limite_oui_non = _request('limite_oui_non');
+ if($limite_oui_non == "on") {
+ $limite = _request('limite');
+ if(!ctype_digit($objectif))
+ $ret['limite'] = _T("souscription:message_nok_limite_valeur");
+ }
+
+ /* Si une guration spécifique est demandée, alors on vérifie les
+ * valeurs 'type_saisie' et 'montants' (si on a demandé un bouton
+ * radio ou une selection). Autrement, les données sont supprimées
+ * dans la fonction traiter. */
+ if(_request('configuration_specifique')) {
+ $type_saisie = _request('type_saisie');
+ if(!$type_saisie || !in_array($type_saisie, array('radio', 'selection', 'input')))
+ $ret['type_saisie'] = _T('souscription:message_nok_type_saisie');
+
+ $montants = _request('montants');
+ if($type_saisie && in_array($type_saisie, array('radio', 'selection'))) {
+ if(!$montants || !is_string($montants))
+ $ret['montants'] = _T('souscription:message_nok_montants');
+
+ elseif(!montants_str2array($montants))
+ $ret['montants'] = _T('souscription:message_nok_montants');
+ }
+ }
+
return $ret;
}
$row=array(),
$hidden='')
{
-
/* Si un objectif n'est pas demandée, alors, on remplace la valeur
* fournie (quelqu'elle soit, par 0) */
if(_request('objectif_oui_non') != "on") {
set_request('objectif', 0);
set_request('objectif_initial', 0);
+ set_request('objectif_limiter', '');
+ }
+
+ if(_request('configuration_specifique' != "on")) {
+ set_request('type_saisie', '');
+ set_request('montants', '');
}
$res = formulaires_editer_objet_traiter('souscription_campagne',