Commit 62a6f331 authored by N. Peraldi's avatar N. Peraldi

add first version of child theme with adhesion form

parent 3403f184
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title>Test JS</title>
<script>
var secondSelectList = [
"ville",
"departement",
"region",
"EPCIFiscalitePropre",
"etablissementPublic"
];
var listeCotisations = {
ville:{
T1:100,
T2:250,
T3:500,
T4:900,
T5:1500,
T6:2500,
T7:3000,
T8:3500,
T9:4000,
T10:4500,
T11:6000
},
departement:{
T1:4000,
T2:4500,
T3:6000
},
region:{
T1:4500,
T2:6000
},
EPCIFiscalitePropre:{
T1:1750,
T2:2500,
T3:3000,
T4:3500,
T5:4000,
T6:4500,
T7:6000
},
etablissementPublic:{
T1:250,
T2:500,
T3:1250,
T4:1750,
T5:2500
}
};
//liste des blocs qui peuvent être affichés / cachés
var blocks = ["link","paraSecondSelection","cotisation","informationsCollectivite","formulaireEPCIMutualisant","boutonEnvoyer"];
function displayMask(display){
//fonction qui affiche / cache les formulaires / informations en fonction des données entrées dans les formulaires
for(var h = 0; h< blocks.length; h++){
if (isWordIn(blocks[h],display)){
document.getElementById(blocks[h]).style.display = "block";
}
else{
document.getElementById(blocks[h]).style.display = "none";
}
}
}
function displayMaskOptions(display){
//sert à afficher / cacher les options du 2e select menu
var tousLesElements = undefined;
for (var j = 0; j<secondSelectList.length ; j++){
//boucle for qui va parcourir la liste des classes des options disponibles
if (display === secondSelectList[j]){
//si l'element en cours est celui de la classe recherchée
tousLesElements = document.getElementsByClassName(display);
for (var g = 0; g<tousLesElements.length; g++){
if(g === 0){
tousLesElements[g].selected=true;
}
tousLesElements[g].hidden = false;
}
}
else{
tousLesElements = document.getElementsByClassName(secondSelectList[j]);
for (var h = 0; h<tousLesElements.length; h++){
tousLesElements[h].hidden = true;
}
}
}
}
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é vers individu, redirigé vers helloasso
if (strUser==="individu"){
linkRedirection("https://helloasso.com","Redirection vers HelloAsso");
displayMask(["link"]);
}
//si il a cliqué sur association
else if (strUser==="association"){
setCotisation(15);
displayMask(["cotisation","informationsCollectivite","boutonEnvoyer"]);
document.getElementById("secondSelection").required = false;
setEPCIRequired(false);
}
else if(strUser==="EPCIMutualisant"){
//formulaire contenant la formule spécifique à EPCI mutualisant
displayMask(["formulaireEPCIMutualisant"]);
setEPCIRequired(true);
}
else if (strUser==="none"){
//premier choix avec des tirets
displayMask([""]);
}
//si il a cliqué sur autre chose : on cherche à connaitre la taille de la collectivité, on affiche le 2e select
else{
displayMaskOptions(strUser);
document.getElementById("secondSelection").required = true;
displayMask(["paraSecondSelection"]);
setEPCIRequired(false);
}
/*for (var element in allForms){
if (element===strUser){
document.getElementById(element).style.display = "block";
for (var j = 0; j < allForms[element].length; j++){
document.getElementById(allForms[element][j]).required = true;
}
}
else{
document.getElementById(element).style.display = "none";
for (var i = 0; i < allForms[element].length; i++){
document.getElementById(allForms[element][i]).required = false;
}
}
}
*/
}
function isWordIn(word,list){
for (a = 0; a<list.length; a++){
if (word===list[a]){
return true
}
}
return false
}
function linkRedirection(link,title){
document.getElementById("linkRedirection").setAttribute("href",link);
document.getElementById("linkRedirection").setAttribute("title",title);
}
function secondAction(){
var e = document.getElementById("secondSelection");
var selectedTranch = e.options[e.selectedIndex].getAttribute("id");
var tranch = selectedTranch.split("-");
setCotisation(listeCotisations[tranch[0]][tranch[1]]);
displayMask(["paraSecondSelection","cotisation","informationsCollectivite","boutonEnvoyer"]);
}
function setCotisation(x){
//définit le montant de la cotisation
document.getElementById("montantCotisation").innerHTML = x;
}
function setEPCIRequired(boolean){
//le formulaire EPCI est il requis ? cela varie selon les choix faits par l'utilisateur
document.getElementById("nombreHabitantsEPCI").required = boolean;
document.getElementById("nombreCommunesMembresEPCI").required = boolean;
}
function traitementEPCIMutualisant(){
//lorsque l'utilisateur valide les 2 nombres entrés pour l'EPCI, les traitements nécessaires sont ici
var nombreHabitants = document.getElementById("nombreHabitantsEPCI").value;
var nombreCommunesMembres = document.getElementById("nombreCommunesMembresEPCI").value;
if (nombreHabitants !== ""){
if (nombreCommunesMembres !== ""){
var resultat = (0.035 * nombreHabitants) + (15 * nombreCommunesMembres) + 1200;
resultat = Math.round(resultat);
//cette fonction arrondit le nombre en fonction du nombre après la virgule.
//exemple :
// Math.round(20,4999) donnera 20
// Math.round(20,5) donnera 21
if (resultat>15000){
//le plafond est fixé à 15000
resultat = 15000;
}
setCotisation(resultat);
displayMask(["cotisation","informationsCollectivite","formulaireEPCIMutualisant","boutonEnvoyer"]);
}
}
}
</script>
</head>
<body>
<h1>Formulaire de renouvellement d'adhésion</h1>
<p>
<b>Votre catégorie :</b>
</p>
<form action="contact.html" method="post">
<p>
<label for="firstSelect">Veuillez sélectionner le type de collectivité :</label>
<select id="firstSelect" required="" name="firstSelection">
<option value="none">---</option>
<option class="optionFirstSelect" value="association">Association</option> <!-- valeur fixe : 15€ -->
<option class="optionFirstSelect" value="departement">Département</option>
<option class="optionFirstSelect" value="EPCIFiscalitePropre">EPCI à fiscalité propre</option>
<option class="optionFirstSelect" value="EPCIMutualisant">EPCI mutualisant</option>
<option class="optionFirstSelect" value="etablissementPublic">Etablissement public</option>
<option class="optionFirstSelect" value="individu">Individu </option> <!-- redirigé vers helloasso -->
<option class="optionFirstSelect" value="region">Région</option>
<option class="optionFirstSelect" value="ville">Ville</option>
</select>
</p>
<div id="link">
<a href="contact.html" id="linkRedirection" title="Page par défaut">Valider</a>
</div>
<div id="formulaireEPCIMutualisant">
<label for="nombreHabitantsEPCI">Nombre d'habitants de l'EPCI :</label>
<input type="number" name="nombreHabitantsEPCI" id="nombreHabitantsEPCI"><br>
<label for="nombreCommunesMembresEPCI">Nombre de communes membres :</label>
<input type="number" name="nombreCommunesMembresEPCI" id="nombreCommunesMembresEPCI"><br>
<input type="button" value="Valider" id="boutonValiderNombresEPCI">
</div>
<p id="paraSecondSelection">
<label for="secondSelection">Veuillez sélectionner la taille :</label>
<select id="secondSelection" name="secondSelection" onchange="secondAction()">
<option class="ville" id="ville-T1" value="-1000">- de 1000</option>
<option class="ville" id="ville-T2" value="1001-2500">de 1 001 à 2 500</option>
<option class="ville" id="ville-T3" value="2501-5000">de 2 501 à 5 000</option>
<option class="ville" id="ville-T4" value="5001-10000">de 5 001 à 10 000</option>
<option class="ville" id="ville-T5" value="10001-20000">de 10 001 à 20 000</option>
<option class="ville" id="ville-T6" value="20001-30000">de 20 001 à 30 000</option>
<option class="ville" id="ville-T7" value="30001-50000">de 30 001 à 50 000</option>
<option class="ville" id="ville-T8" value="50001-80000">de 50 001 à 80 000</option>
<option class="ville" id="ville-T9" value="80001-100000">de 80 001 à 100 000</option>
<option class="ville" id="ville-T10" value="+100000">+ de 100 000</option>
<option class="ville" id="ville-T11" value="arrondissement">à arrondissement</option>
<option class="departement" id="departement-T1" value="-1000000">- de 1 000 000</option>
<option class="departement" id="departement-T2" value="1000001-2000000">de 1 000 001 à 2 000 000</option>
<option class="departement" id="departement-T3" value="+2000000">+ de 2 000 000</option>
<option class="region" id="region-T1" value="-2500000">- de 2 500 000</option>
<option class="region" id="region-T2" value="+2500000">+ de 2 500 000</option>
<option class="EPCIFiscalitePropre" id="EPCIFiscalitePropre-T1" value="-10000">- de 10 000</option>
<option class="EPCIFiscalitePropre" id="EPCIFiscalitePropre-T2" value="10001-50000">de 10 001 à 50 000</option>
<option class="EPCIFiscalitePropre" id="EPCIFiscalitePropre-T3" value="50001-100000">de 50 001 à 100 000</option>
<option class="EPCIFiscalitePropre" id="EPCIFiscalitePropre-T4" value="100001-250000">de 100 001 à 250 000</option>
<option class="EPCIFiscalitePropre" id="EPCIFiscalitePropre-T5" value="250001-500000">de 250 001 à 500 000</option>
<option class="EPCIFiscalitePropre" id="EPCIFiscalitePropre-T6" value="500001-1000000">de 500 001 à 1 000 000</option>
<option class="EPCIFiscalitePropre" id="EPCIFiscalitePropre-T7" value="+1000000">+ de 1 000 000</option>
<option class="etablissementPublic" id="etablissementPublic-T1" value="-25">- de 25</option>
<option class="etablissementPublic" id="etablissementPublic-T2" value="25-50">de 25 à 50</option>
<option class="etablissementPublic" id="etablissementPublic-T3" value="51-100">de 51 à 100</option>
<option class="etablissementPublic" id="etablissementPublic-T4" value="101-500">de 101 à 500</option>
<option class="etablissementPublic" id="etablissementPublic-T5" value="+500">+ de 500</option>
</select>
</p>
<div id="cotisation">
<p>Montant de la cotisation : <span id="montantCotisation"></span></p>
</div>
<div id="informationsCollectivite">
<h3>Informations obligatoires :</h3>
<label for="nomCollectivite">Nom de la collectivité :</label>
<input type="text" name="nomCollectivite" id="nomCollectivite" required=""><br>
<label for="adresseCollectivite">Adresse :</label>
<input type="text" name="adresseCollectivite" id="adresseCollectivite" required=""><br>
<label for="codePostalCollectivite">Code postal :</label>
<input type="text" name="codePostalCollectivite" id="codePostalCollectivite" required=""><br>
<label for="villeCollectivite">Ville :</label>
<input type="text" name="villeCollectivite" id="villeCollectivite" required=""><br>
<label for="telCollectivite">Téléphone :</label>
<input type="tel" name="telCollectivite" id="telCollectivite" required=""><br>
<label for="siteCollectivite">Site internet :</label>
<input type="url" name="siteCollectivite" id="siteCollectivite" required=""><br>
<h3>Informations relatives à Chorus Pro</h3>
<label for="siretCollectivite">SIRET :</label>
<input type="text" name="siretCollectivite" id="siretCollectivite" required=""><br>
<label for="numeroEngagementCollectivite">N° d'engagement :</label>
<input type="text" name="numeroEngagementCollectivite" id="numeroEngagementCollectivite" required=""><br>
<label for="codeCollectivite">Code :</label>
<input type="text" name="codeCollectivite" id="codeCollectivite" required=""><br>
</div>
<input type="submit" id="boutonEnvoyer">
</form>
<script>
displayMask([""]);
document.getElementById("firstSelect").setAttribute("onchange","firstAction()");
document.getElementById("boutonValiderNombresEPCI").setAttribute("onclick","traitementEPCIMutualisant()");
</script>
</body>
</html>
\ No newline at end of file
<?php
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
function my_theme_enqueue_styles() {
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
}
?>
/*
Theme Name: TwentyNineteen-Child
Theme URI: wp1.adullact.lan
Description: Thème TwentyNineteen enfant
Author: Root
Author URI: wp1.adullact.lan
Template: twentyseventeen
Version: 1.4
*/
@import url("../twentynineteen/style.css");
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