12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- //------------------ Variables ------------------//
- let p_counter = 0;
- let texts = document.getElementsByClassName("textWillAppear");
- let questions = document.getElementsByClassName('questionWillAppear');
- let button = document.getElementById("button1");
- let friendInput = document.getElementById("friendInput");
- let friendPseudo = '';
- let inputBox = document.getElementById("inputBox");
- let errorMsg = inputBox.childNodes[1];
- let buttonBox = document.getElementById("buttons");
- let arrow = document.getElementById("arrow");
- let space = document.getElementById("space");
-
- let NB_TEXTS = texts.length;
- let NB_QUESTIONS = questions.length;
- let NB_BUTTONS = 1;
- let NB_ELEMENTS_TO_APPEAR = NB_TEXTS + NB_QUESTIONS + NB_BUTTONS;
-
- //------------------ Fonctions ------------------//
-
- //gère les apparitions et disparitions des textes
- function makeNextTextAppear(event) {
- if (p_counter < NB_ELEMENTS_TO_APPEAR) {
- if (event.keyCode == 13 || event.keyCode == 32) {
- if(p_counter < 1) {
- texts[p_counter].style.cssText = "animation: fade 2s forwards;";
- }
- if (p_counter >= 1 && p_counter < 5) {
- questions[p_counter-1].style.cssText = "animation: fade 2s forwards;";
- }
- if(p_counter >= 5 && p_counter < 7) {
- texts[p_counter-NB_QUESTIONS].style.cssText = "animation: fade 2s forwards;";
- }
- if(p_counter == 7) {
- button.style.cssText = "animation: fade 2s forwards;";
- arrow.style.cssText = "animation: fade-reverse 2s forwards;"
- space.style.cssText = "animation: fade-reverse 2s forwards;"
- }
- p_counter += 1;
- }
- }
- }
-
- function handleInputChange (event) {
- friendPseudo = event.target.value;
- console.log(friendPseudo);
- }
-
- //fonction pour gérer le bouton (qui est en fait un lien customisé)
- function handleButtonClicked(event) {
- if (friendPseudo) {
- errorMsg.innerHTML = '';
- localStorage.setItem("friendPseudo", friendPseudo);
- button.setAttribute('href', './couloir_ami.html');
- button.click();
- } else {
- //desactive le lien
- button.removeAttribute('href');
- //on enleve l'event listener pour pas pouvoir spam le bouton
- button.removeEventListener("click", handleButtonClicked);
- //faire clignoter le message d'erreur
- let repeater = setInterval(() => {
- friendInput.setAttribute("placeholder", "");
- setTimeout(() => {
- friendInput.setAttribute("placeholder", "Et votre ami ?");
- }, 100);
- }, 200);
- setTimeout(() => {
- clearInterval(repeater);
- button.addEventListener("click", handleButtonClicked);
- }, 1000);
-
- }
- }
-
- //------------------ Gestion events ------------------//
- //Pour pas faire apparaitre le texte avant que la premiere phrase soit apparue
- setTimeout(() => {
- document.addEventListener("keypress", makeNextTextAppear);
- }, 2000);
- friendInput.addEventListener("input", handleInputChange);
- button.addEventListener("click", handleButtonClicked);
|