Utilisation de la balise #AVANCEMENT_CAMPAGNE dans les squelettes.
[spip_souscriptions.git] / formulaires / editer_souscription_campagne.php
index fb8d1e1..d1b5695 100644 (file)
@@ -80,8 +80,12 @@ function formulaires_editer_souscription_campagne_charger_dist($id_souscription_
                                                  'options' => array('nom' => 'objectif_initial',
                                                                     'label' => _T('souscription:label_objectif_initial'),
                                                                     'explication' => _T('souscription:explication_campagne_objectif_initial'))
-                                                 )
-                                           )
+                                           ),
+                                           array('saisie' => 'oui_non',
+                                                 'options' => array('nom' => 'objectif_limiter',
+                                                                    'explication' => _T('souscription:explication_campagne_objectif_limite'),
+                                                                    'label' => _T('souscription:label_objectif_limite')))
+                                           ),
                         ),
                   array('saisie' => 'textarea',
                         'options' => array('nom' => 'texte',
@@ -116,13 +120,26 @@ function formulaires_editer_souscription_campagne_verifier_dist($id_souscription
   /* Si un objectif est demandé, alors on vérifie que les champs sont
    * bien des entiers. */
   if(_request('objectif_oui_non') == 'on') {
-    $objectif_initial = _request('objectif_initial');
-    if(!ctype_digit($objectif_initial) || intval($objectif_initial) < 0)
-      $ret['objectif_initial'] = _T("souscription:message_nok_objectif_initial_invalide");
-
     $objectif = _request('objectif');
     if(!ctype_digit($objectif) || intval($objectif) < 0)
-      $ret['objectif'] = _T("souscription:message_nok_objectif_initial_valeur");
+      $ret['objectif'] = _T("souscription:message_nok_objectif_invalide");
+
+    $objectif_initial = _request('objectif_initial');
+    if($objectif_initial != '') {
+      if(!ctype_digit($objectif_initial) || intval($objectif_initial < 0))
+       $ret['objectif_initial'] = _T("souscription:message_nok_objectif_initial_valeur");
+      elseif(intval($objectif_initial) > $objectif)
+       $ret['objectif_initial'] = _T("souscription:message_nok_objectif_initial_supperieur_objectif");
+    }
+  }
+
+  /* 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");
   }
 
   return $ret;
@@ -135,12 +152,12 @@ function formulaires_editer_souscription_campagne_traiter_dist($id_souscription_
                                                                $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', '');
   }
 
   $res = formulaires_editer_objet_traiter('souscription_campagne',