Traduction de l'interface (travail en cours)
[spip_souscriptions.git] / formulaires / configurer_souscription.php
1 <?php
2 if (!defined('_ECRIRE_INC_VERSION')) return;
3
4 include_spip('inc/config');
5
6 function formulaires_configurer_souscription_charger_dist() {
7
8
9   $valeurs = array('adhesion_montants' => montants_array2str(lire_config("souscription/adhesion_montants")),
10                    'adhesion_type_saisie' => lire_config("souscription/adhesion_type_saisie"),
11                    "adhesion_activer" => lire_config("souscription/adhesion_activer"),
12                    "adhesion_montants_description" => lire_config("souscription/adhesion_montants_description"),
13                    "adhesion_montants_label" => lire_config("souscription/adhesion_montants_label"),
14
15                    'don_montants' => montants_array2str(lire_config("souscription/don_montants")),
16                    'don_type_saisie' => lire_config("souscription/don_type_saisie"),
17                    "don_activer" => lire_config("souscription/don_activer"),
18                    "don_montants_description" => lire_config("souscription/don_montants_description"),
19                    "don_montants_label" => lire_config("souscription/don_montants_label"),
20
21                    "dispositions_fiscales_explications" => lire_config("souscription/dispositions_fiscales_explications"),
22                    );
23
24   return $valeurs;
25 }
26
27 function formulaires_configurer_souscription_verifier_dist() {
28   /* FIXME: vĂ©rifier le format de 'adhesion_montants' et 'don_montants' */
29
30   $erreurs = array();
31   $type_saisies = array("input", "radio", "selection");
32
33   if(_request("adhesion_activer")) {
34     if(!_request("adhesion_type_saisie")) {
35       $erreurs["adhesion_type_saisie"] = _T("souscription:message_nok_champ_obligatoire");
36     }
37
38     if(!in_array(_request("adhesion_type_saisie"), $type_saisies)) {
39       $erreurs["adhesion_type_saisie"] = _T("souscription:message_nok_champ_invalide");
40     }
41   }
42
43   if(_request("don_activer")) {
44
45     if(!_request("don_type_saisie")) {
46       $erreurs["don_type_saisie"] = _T("souscription:message_nok_champ_obligatoire");
47     }
48
49     if(!in_array(_request("don_type_saisie"), $type_saisies)) {
50       $erreurs["don_type_saisie"] = _T("souscription:message_nok_champ_invalide");
51     }
52   }
53
54   return $erreurs;
55 }
56
57 function formulaires_configurer_souscription_traiter_dist() {
58
59   ecrire_config("souscription/adhesion_montants", montants_str2array(_request("adhesion_montants")));
60   ecrire_config("souscription/adhesion_type_saisie", _request("adhesion_type_saisie"));
61   ecrire_config("souscription/adhesion_activer", _request("adhesion_activer"));
62   ecrire_config("souscription/adhesion_montants_description", _request("adhesion_montants_description"));
63   ecrire_config("souscription/adhesion_montants_label", _request("adhesion_montants_label"));
64
65   ecrire_config("souscription/don_montants", montants_str2array(_request("don_montants")));
66   ecrire_config("souscription/don_type_saisie", _request("don_type_saisie"));
67   ecrire_config("souscription/don_activer", _request("don_activer"));
68   ecrire_config("souscription/don_montants_description", _request("don_montants_description"));
69   ecrire_config("souscription/don_montants_label", _request("don_montants_label"));
70
71   ecrire_config("souscription/dispositions_fiscales_explications", _request("dispositions_fiscales_explications"));
72
73   $res = array('message_ok'=>_T('souscription:config_info_enregistree'));
74
75   return $res;
76 }
77
78
79 function montants_array2str($array) {
80   $montants = "";
81   foreach($array as $prix => $description) {
82     $montants .= $prix . "|" . $description . "\n";
83   }
84
85   return $montants;
86 }
87
88 function montants_str2array($str) {
89   $montants = array();
90
91   foreach(explode("\n", trim($str)) as $montant) {
92     list($prix, $description) = explode("|", $montant, 2);
93     $montants[trim($prix)] = trim($description);
94   }
95
96   return $montants;
97 }