if(!verifier_campagne($id_souscription_campagne))
return false;
+ /* Récupération des information à propos de la campagne */
+ $type = sql_getfetsel("type_objectif",
+ "spip_souscription_campagnes",
+ "id_souscription_campagne=$id_souscription_campagne");
+
+ $recu_fiscal = "";
+ if($type == "adhesion")
+ $recu_fiscal = "on";
+
return array('montant' => '',
'courriel' => '',
- 'recu_fiscal' => '',
+ 'recu_fiscal' => $recu_fiscal,
'envoyer_info' => 'on',
+ 'informer_comite_local' => 'on',
'prenom' => '',
'nom' => '',
'adresse' => '',
'code_postal' => '',
'ville' => '',
'id_souscription_campagne' => $id_souscription_campagne,
- 'type_souscription' => "don",
+ 'type_souscription' => $type,
);
}
'id_souscription_campagne'));
if(!verifier_campagne($id_souscription_campagne)) {
- $erreurs['message_erreur'] = "La campagne à laquelle est associée ce don est invalide";
- }
-
- if(_request('recu_fiscal')) {
- foreach(array('prenom', 'nom', 'adresse', 'code_postal', 'ville') as $obligatoire) {
- if(!_request($obligatoire)) {
- $erreurs[$obligatoire] = 'Ce champ est obligatoire (reçu fiscal demandé)';
- }
- }
+ $erreurs['message_erreur'] = "La campagne à laquelle est associée cette souscription est invalide";
}
if(!$id_souscription_campagne || intval($id_souscription_campagne) != intval($campagne)) {
"spip_souscription_campagnes",
"id_souscription_campagne=$id_souscription_campagne");
- if(!$type || $type != "don")
+ if(!$type || !in_array($type, array("don", "adhesion")))
$erreurs['message_erreur'] = "Type de souscription invalide";
- /* Le champ 'type' (hidden) doit être « don » */
- if(_request('type_souscription') != "don")
+ /* Le champ 'type' (hidden) doit être le même que celui défini dans
+ * la campagne. */
+ if(_request('type_souscription') != $type)
$erreurs['message_erreur'] = "Type de souscription invalide: " . _request('type_souscription');
+
+ if(_request('recu_fiscal') || $type == "adhesion") {
+ foreach(array('prenom', 'nom', 'adresse', 'code_postal', 'ville') as $obligatoire) {
+ if(!_request($obligatoire)) {
+ if($type == "adhesion") {
+ $erreurs[$obligatoire] = "Ce champ est obligatoire pour les adhésions";
+ }
+ else {
+ $erreurs[$obligatoire] = 'Ce champ est obligatoire (reçu fiscal demandé)';
+ }
+ }
+ }
+ }
+
if ($e = _request('courriel') AND !email_valide($e))
$erreurs['courriel'] = _T('form_prop_indiquer_email');
/* Vérification de l'existance de la *campagne*, de son *statut* et de la *concordance du type* */
if(intval($id_souscription_campagne)
- AND $t = sql_getfetsel('type_objectif', 'spip_souscription_campagnes', 'id_souscription_campagne='.intval($id_souscription_campagne))
- AND $t == 'don')
+ AND $t = sql_getfetsel('type_objectif', 'spip_souscription_campagnes', 'id_souscription_campagne='.intval($id_souscription_campagne)))
{
return true;
}