From: Olivier Tétard Date: Sun, 6 Oct 2013 17:25:39 +0000 (+0200) Subject: Déplacement et amélioration des fonctions montants_str2array(). X-Git-Url: http://olivier.miskin.fr/git/?a=commitdiff_plain;h=7e99638358e14c6989fca5448861fecff724a523;p=spip_souscriptions.git Déplacement et amélioration des fonctions montants_str2array(). La fonction saisie_chaine2tableau proposée par le plugin saisie est désormais utilisée. --- diff --git a/formulaires/configurer_souscription.php b/formulaires/configurer_souscription.php index 774214b..882fdaa 100644 --- a/formulaires/configurer_souscription.php +++ b/formulaires/configurer_souscription.php @@ -74,24 +74,3 @@ function formulaires_configurer_souscription_traiter_dist() { return $res; } - - -function montants_array2str($array) { - $montants = ""; - foreach($array as $prix => $description) { - $montants .= $prix . "|" . $description . "\n"; - } - - return $montants; -} - -function montants_str2array($str) { - $montants = array(); - - foreach(explode("\n", trim($str)) as $montant) { - list($prix, $description) = explode("|", $montant, 2); - $montants[trim($prix)] = trim($description); - } - - return $montants; -} diff --git a/souscription_fonctions.php b/souscription_fonctions.php index eccddeb..3d1c4aa 100644 --- a/souscription_fonctions.php +++ b/souscription_fonctions.php @@ -42,3 +42,28 @@ function balise_AVANCEMENT_CAMPAGNE_dist($p) { return $p; } + +function montants_array2str($array) { + include_spip('inc/saisies'); + + $montants = ""; + foreach($array as $prix => $description) { + $montants .= $prix . "|" . $description . "\n"; + } + + return $montants; +} + +function montants_str2array($str) { + include_spip('inc/saisies'); + + /* Vérification du format de la chaine. Elle doit être sous la forme + * « [montant] | [label] », par exemple « 10 | 10 € ». */ + foreach(explode("\n", $str) as $l) { + if(!preg_match('/^[0-9]+\|.*/', $l)) { + return false; + } + } + + return saisies_chaine2tableau(saisies_aplatir_chaine($str)); +}