Commit 53d9e980 authored by Nathan Peraldi's avatar Nathan Peraldi

almost finished data treatment

parent f4c95faa
......@@ -50,9 +50,12 @@ function firstAction() {
//fonction effectuée lorsque le premier select est validé
//on recup ce qui a été cliqué
var e = document.getElementById("firstSelect");
var strUser = e.options[e.selectedIndex].value;
//on reagit en fonction
//si il a cliqué sur individu, redirigé vers helloasso
......@@ -111,11 +114,57 @@ function linkRedirection(link, title) {
}
function prepareDocument() {
//prépare la page html en ajoutant les event listener
displayMask([""]);
document.getElementById("firstSelect").setAttribute("onchange", "firstAction()");
document.getElementById("boutonValiderNombresEPCI").setAttribute("onclick", "traitementEPCIMutualisant()");
document.getElementById("secondSelection").setAttribute("onchange", "secondAction()");
document.getElementById("firstSelect").addEventListener("change", firstAction, false);
document.getElementById("boutonValiderNombresEPCI").addEventListener("click", traitementEPCIMutualisant, false);
document.getElementById("secondSelection").addEventListener("change", secondAction, false);
setCotisation("");
//si le formulaire a échoué, il y a probablement des zones à afficher en fonction de ce qui a été rempli
var choiceType = document.getElementById("ancienSelectType").getAttribute("value");
if(choiceType.length > 0){
var listOfFirstOptions = document.getElementsByClassName("optionFirstSelect");
for (var a = 0; a<listOfFirstOptions.length; a++){
if (listOfFirstOptions[a].getAttribute("value")===choiceType){
listOfFirstOptions[a].selected = true;
break;
}
}
firstAction();
if(choiceType==="EPCIMutualisant"){
traitementEPCIMutualisant();
}
else{
var choiceSize = document.getElementById("ancienSelectSize").getAttribute("value");
if (choiceSize.length>0 && choiceSize!=="none"){
var listOfSizeOptions = document.getElementsByClassName(choiceType);
for (var b = 0; b<listOfSizeOptions.length; b++){
if (listOfSizeOptions[b].getAttribute("value")===choiceSize){
listOfSizeOptions[b].selected = true;
break;
}
}
secondAction();
}
}
}
}
function secondAction() {
......@@ -135,6 +184,7 @@ function secondAction() {
}
function setCotisation(id, x = 0) {
//définit la cotisation à afficher, l'option x sert uniquement pour le tarif EPCI mutualisant qui varie.
......
......@@ -5,6 +5,8 @@ $errors = array(
"first selection" => "",
"second Selection" => "",
"EPCI com" => "",
"EPCI hab" => "",
"nom" => "",
"adresse" => "",
"CP" => "",
......@@ -17,31 +19,56 @@ $errors = array(
"code" => ""
);
$debug_mode = true;
function tryToEcho($var){
if (isset($_POST[$var])){
echo $_POST[$var];
}
}
function tryToShowError($var){
global $errors;
if (strlen($errors[$var])>0){
echo "<p class='error'> " . $errors[$var] . "</p>";
}
}
$numberOfErrors = 0;
if (isset($_POST)){
if (isset($_POST["firstSelection"])){
include "traitementAdhesion.php";
echo "<br> début du traitement <br>";
if($debug_mode){
echo "<br> début du traitement <br>";
}
$errors = traitement($_POST,$errors);
echo "<br> fin du traitement <br>";
if($debug_mode){
echo "<br> fin du traitement <br>";
}
foreach ($errors as $key => $value){
echo $key . " : " . $value . "<br>";
if($debug_mode){
echo $key . " : " . $value . "<br>";
}
if (strlen($value)>0){
$numberOfErrors+=1;
}
}
echo "<br> nombre d'erreurs : " . $numberOfErrors . " <br>";
//var_dump($errors);
if($debug_mode){
echo "<br> nombre d'erreurs : " . $numberOfErrors . " <br>";
var_dump($errors);
}
}
}
......@@ -231,7 +258,17 @@ sort($classSelectMenuExtended);
<h1>Formulaire de renouvellement d'adhésion</h1>
<p>
<b>Votre catégorie :</b>
<?php
if ($numberOfErrors==1){
echo "Une erreur est survenue lors de l'envoi du formulaire. Veuillez vérifier vos informations";
}
elseif ($numberOfErrors>1){
echo "Plusieurs erreurs sont survenues lors de l'envoi du formulaire. Veuillez vérifier vos informations";
}
?>
</p>
<form action="" method="post">
......@@ -262,10 +299,12 @@ sort($classSelectMenuExtended);
<div id="formulaireEPCIMutualisant">
<label for="nombreHabitantsEPCI">Nombre d'habitants de l'EPCI :</label>
<input type="number" name="nombreHabitantsEPCI" id="nombreHabitantsEPCI"><br>
<input type="number" name="nombreHabitantsEPCI" id="nombreHabitantsEPCI" value="<?php tryToEcho("nombreHabitantsEPCI");?>"><br>
<?php tryToShowError("EPCI com");?>
<label for="nombreCommunesMembresEPCI">Nombre de communes membres :</label>
<input type="number" name="nombreCommunesMembresEPCI" id="nombreCommunesMembresEPCI"><br>
<input type="number" name="nombreCommunesMembresEPCI" id="nombreCommunesMembresEPCI" value="<?php tryToEcho("nombreCommunesMembresEPCI");?>"><br>
<?php tryToShowError("EPCI hab");?>
<input type="button" value="Valider" id="boutonValiderNombresEPCI">
......@@ -363,26 +402,33 @@ sort($classSelectMenuExtended);
<h3>Informations obligatoires :</h3>
<label for="nomCollectivite">Nom de la collectivité :</label>
<input type="text" name="nomCollectivite" id="nomCollectivite" required=""><br>
<input type="text" name="nomCollectivite" id="nomCollectivite" required="" value="<?php tryToEcho("nomCollectivite");?>"><br>
<?php tryToShowError("nom");?>
<label for="adresseCollectivite">Adresse :</label>
<input type="text" name="adresseCollectivite" id="adresseCollectivite" required=""><br>
<input type="text" name="adresseCollectivite" id="adresseCollectivite" required="" value="<?php tryToEcho("adresseCollectivite");?>"><br>
<?php tryToShowError("adresse");?>
<label for="codePostalCollectivite">Code postal :</label>
<input type="text" name="codePostalCollectivite" id="codePostalCollectivite" required=""><br>
<input type="text" name="codePostalCollectivite" id="codePostalCollectivite" required="" value="<?php tryToEcho("codePostalCollectivite");?>"><br>
<?php tryToShowError("CP");?>
<label for="villeCollectivite">Ville :</label>
<input type="text" name="villeCollectivite" id="villeCollectivite" required=""><br>
<input type="text" name="villeCollectivite" id="villeCollectivite" required="" value="<?php tryToEcho("villeCollectivite");?>"><br>
<?php tryToShowError("ville");?>
<label for="telCollectivite">Téléphone :</label>
<input type="tel" name="telCollectivite" id="telCollectivite" required=""><br>
<input type="tel" name="telCollectivite" id="telCollectivite" required="" value="<?php tryToEcho("telCollectivite");?>"><br>
<?php tryToShowError("tel");?>
<label for="siteCollectivite">Site internet :</label>
<input type="url" name="siteCollectivite" id="siteCollectivite" required=""><br>
<input type="url" name="siteCollectivite" id="siteCollectivite" required="" value="<?php tryToEcho("siteCollectivite");?>"><br>
<?php tryToShowError("site");?>
<label for="periodeAdhesionCollectivite">Période d'adhésion :</label>
<select name="periodeAdhesionCollectivite" id="periodeAdhesionCollectivite" required>
<option value="none" selected>---</option>
<select name="periodeAdhesionCollectivite" id="periodeAdhesionCollectivite" required="">
<option selected>---</option>
<?php generateDates(); ?>
</select>
......@@ -390,13 +436,17 @@ sort($classSelectMenuExtended);
<h3>Informations relatives à Chorus Pro</h3>
<label for="siretCollectivite">SIRET :</label>
<input type="text" name="siretCollectivite" id="siretCollectivite" required=""><br>
<input type="number" name="siretCollectivite" id="siretCollectivite" required="" value="<?php tryToEcho("siretCollectivite");?>"><br>
<?php tryToShowError("siret");?>
<label for="numeroEngagementCollectivite">N° d'engagement :</label>
<input type="text" name="numeroEngagementCollectivite" id="numeroEngagementCollectivite" required=""><br>
<input type="text" name="numeroEngagementCollectivite" id="numeroEngagementCollectivite" required="" value="<?php tryToEcho("numeroEngagementCollectivite");?>"><br>
<?php tryToShowError("numeroEngagement");?>
<label for="codeCollectivite">Code :</label>
<input type="text" name="codeCollectivite" id="codeCollectivite" required=""><br>
<input type="text" name="codeCollectivite" id="codeCollectivite" required="" value="<?php tryToEcho("codeCollectivite");?>"><br>
<?php tryToShowError("code");?>
</div>
......
......@@ -9,6 +9,7 @@
*
*/
$debug_mode_traitement = false;
function verifEPCI($tab, $errors)
......@@ -24,29 +25,31 @@ function verifEPCI($tab, $errors)
if ($nombreHab > 0) {
if ($nombreCom > 0) {
}
else{
} else {
$errors["EPCI com"] = "Vous devez entrer un nombre positif.";
}
}
else{
} else {
$errors["EPCI hab"] = "Vous devez entrer un nombre positif.";
}
}
else{
$errors["EPCI com"] = "Vous devez entrer un nombre.";
} else {
$errors["EPCI com"] = "Vous devez entrer un nombre.";
}
} else {
$errors["EPCI hab"] = "Vous devez entrer un nombre.";
}
else {
$errors["EPCI hab"] = "Vous devez entrer un nombre.";
}
}
$errors["EPCI hab"] = "Vous devez entrer un nombre.";
else{
$errors["EPCI hab"] = "Vous devez entrer un nombre.";
}
}
else{
$errors["EPCI hab"] = "Vous devez entrer un nombre.";
}
$errors["EPCI hab"] = "Vous devez entrer un nombre.";
return $errors;
}
......@@ -100,11 +103,16 @@ function verifAdresse($tab)
function verifCodePostal($tab)
{
global $debug_mode_traitement;
//vérifie si le code postal a été correctement entré
if (isset($tab["codePostalCollectivite"])) {
$CP = $tab["codePostalCollectivite"];
if ($debug_mode_traitement) {
echo "<br> code postal entré : " . $tab["codePostalCollectivite"] . " <br>";
}
if (strlen($CP) > 0) {
if (strlen($CP) == 5 && is_numeric($CP)) {
......@@ -185,7 +193,7 @@ function verifUrl($tab)
if (strlen($url) > 0) {
if (filter_var($url, FILTER_VALIDATE_URL) === true) {
if (filter_var($url, FILTER_VALIDATE_URL) == true) {
return "";
} else {
......@@ -217,7 +225,12 @@ function verifPeriodeAdhesion($tab)
function verifSiret($tab)
{
echo "<br> on vérifie le siret <br> ";
global $debug_mode_traitement;
if($debug_mode_traitement){
echo "<br> on vérifie le siret <br> ";
}
//vérifie si le code postal a été correctement entré
......@@ -243,19 +256,14 @@ function verifSiret($tab)
function verifNumeroEngagement($tab)
{
//vérifie si le code postal a été correctement entré
//vérifie si le code engagement a été correctement entré
if (isset($tab["numeroEngagementCollectivite"])) {
$numero = $tab["numeroEngagementCollectivite"];
if (strlen($numero) > 0) {
return "";
if (is_numeric($numero)) {
return "";
} else {
return "Un numéro d'engagement est composé uniquement de chiffres.";
}
} else {
return "vide";
}
......@@ -272,13 +280,8 @@ function verifCode($tab)
$code = $tab["codeCollectivite"];
if (strlen($code) > 0) {
return "";
if (is_numeric($code)) {
return "";
} else {
return "Un code est composé uniquement de chiffres.";
}
} else {
return "vide";
}
......@@ -318,20 +321,18 @@ function traitementInformations($tab, $errors)
}
function verifSecondSelection($tab, $errors)
{
if (isset($tab["secondSelection"])) {
if($tab["secondSelection"] != "" || $tab["secondSelection"] != "none"){
if ($tab["secondSelection"] != "" || $tab["secondSelection"] != "none") {
$errors = traitementInformations($tab, $errors);
}
else{
} else {
$errors["second Selection"] = "Vous devez sélectionner la taille de votre collectivité.";
}
}
else{
} else {
$errors["second Selection"] = "Vous devez sélectionner la taille de votre collectivité.";
}
return $errors;
......@@ -362,24 +363,30 @@ function verifFirstSelection($tab)
}
function traitement($tab,$errors)
function traitement($tab, $errors)
{
global $debug_mode_traitement;
if($debug_mode_traitement){
echo "début du traitement ";
}
//le résultat du premier select
if (verifFirstSelection($tab)) {
if($debug_mode_traitement){
echo "<br> le first select est OK <br>";
}
if ($tab["firstSelection"] == "Association") {
//il n'y a besoin que de traiter les dernières infos
$errors = traitementInformations($tab, $errors);
}
elseif ($tab["firstSelection"] == "EPCIMutualisant"){
} elseif ($tab["firstSelection"] == "EPCIMutualisant") {
$errors = verifEPCI($tab, $errors);
$errors = traitementInformations($tab, $errors);
}
else{
$errors = verifSecondSelection($tab,$errors);
} else {
$errors = verifSecondSelection($tab, $errors);
}
......@@ -388,6 +395,12 @@ function traitement($tab,$errors)
}
if($debug_mode_traitement){
echo "errors : <br>";
var_dump($errors);
}
return $errors;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment