'adresse',
'code_postal',
'ville',
- 'id_souscription_campagne'),
+ 'id_souscription_campagne',
+ 'type_souscription'),
// black list
array('statut', 'date'),
// donnees eventuellement fournies
"adresse" => "text NOT NULL DEFAULT ''",
"ville" => "text NOT NULL DEFAULT ''",
"recu_fiscal" => "varchar(3) NOT NULL DEFAULT ''",
+ "type_souscription" => "varchar(255) NOT NULL DEFAULT ''",
"envoyer_info" => "varchar(3) NOT NULL DEFAULT ''",
"date_souscription " => "datetime NOT NULL DEFAULT '0000-00-00 00:00:00'",
"maj" => "TIMESTAMP"
[(#SAISIE{selection, type_objectif, obligatoire=oui,
label=<:souscription_campagne:label_type_objectif:>,
explication=<:souscription_campagne:explication_type_objectif:>,
- datas=#ARRAY{souscriptiondon, Dons, souscriptionadhesion, Adhésions, souscriptionabonnement, Abonnements}})]
+ datas=#ARRAY{don, Dons, adhesion, Adhésions, abonnement, Abonnements}})]
[(#SAISIE{input, objectif, obligatoire=oui, label=<:souscription_campagne:label_objectif:>, explication=<:souscription_campagne:explication_objectif:>})]
[(#SAISIE{input, objectif_initial, obligatoire=oui, label=<:souscription_campagne:label_objectif_initial:>, explication=<:souscription_campagne:explication_objectif_initial:>})]
[(#SAISIE{textarea, texte, label=<:souscription_campagne:label_description:>, inserer_barre=edition, rows=10})]
$row=array(),
$hidden='')
{
- return formulaires_editer_objet_verifier('souscription_campagne',
+
+ $ret = formulaires_editer_objet_verifier('souscription_campagne',
$id_souscription_campagne,
array('titre',
'objectif',
'type_objectif',
));
+ $type = _request("type_objectif");
+ if(!in_array($type, array('don', 'abonnement', 'adhesion')))
+ $ret['type_objectif'] = "Type d'objectif invalide";
+
+ return $ret;
}
function formulaires_editer_souscription_campagne_traiter_dist($id_souscription_campagne='new',
[(#SAISIE{oui_non, recu_fiscal, label=<:souscription_don:label_recu_fiscal:>})]
[(#SAISIE{oui_non, envoyer_info, label=<:souscription_don:label_envoyer_info:> })]
[(#SAISIE{hidden, id_souscription_campagne})]
+ [(#SAISIE{hidden, type_souscription})]
</ul>
<fieldset id="don_bloc_fiscal">
'code_postal' => '',
'ville' => '',
'id_souscription_campagne' => $id_souscription_campagne,
+ 'type_souscription' => "don",
);
}
*/
function formulaires_souscription_don_verifier_dist($id_souscription_campagne)
{
+ $campagne = _request('id_souscription_campagne');
+
$erreurs = formulaires_editer_objet_verifier('souscription_don', 'new',
array('courriel',
'montant',
if(intval($id_souscription_campagne) != intval(_request('id_souscription_campagne')))
$erreurs['message_erreur'] = "Campagne invalide";
+
+ /* La campagne doit être valide (définie dans la base) et doit
+ * accepter les dons. */
+ $type = sql_getfetsel("type_objectif",
+ "spip_souscription_campagnes",
+ "id_souscription_campagne=$id_souscription_campagne");
+
+ if(!$type || $type != "don")
+ $erreurs['message_erreur'] = "Type de souscription invalide";
+
+ /* Le champ 'type' (hidden) doit être « don » */
+ if(_request('type_souscription') != "don")
+ $erreurs['message_erreur'] = "Type de souscription invalide: " . _request('type_souscription');
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 == 'souscriptiondon')
+ AND $t == 'don')
{
return true;
}