diff --git a/starterOnly/DM_Sans/DMSans-Bold.ttf b/starterOnly/DM_Sans/DMSans-Bold.ttf deleted file mode 100644 index 7fd94a28bd..0000000000 Binary files a/starterOnly/DM_Sans/DMSans-Bold.ttf and /dev/null differ diff --git a/starterOnly/DM_Sans/DMSans-BoldItalic.ttf b/starterOnly/DM_Sans/DMSans-BoldItalic.ttf deleted file mode 100644 index 6e1f86145e..0000000000 Binary files a/starterOnly/DM_Sans/DMSans-BoldItalic.ttf and /dev/null differ diff --git a/starterOnly/DM_Sans/DMSans-Italic.ttf b/starterOnly/DM_Sans/DMSans-Italic.ttf deleted file mode 100644 index bdda5a7a9d..0000000000 Binary files a/starterOnly/DM_Sans/DMSans-Italic.ttf and /dev/null differ diff --git a/starterOnly/DM_Sans/DMSans-Medium.ttf b/starterOnly/DM_Sans/DMSans-Medium.ttf deleted file mode 100644 index ded3caf9a9..0000000000 Binary files a/starterOnly/DM_Sans/DMSans-Medium.ttf and /dev/null differ diff --git a/starterOnly/DM_Sans/DMSans-MediumItalic.ttf b/starterOnly/DM_Sans/DMSans-MediumItalic.ttf deleted file mode 100644 index 8a2b876d5e..0000000000 Binary files a/starterOnly/DM_Sans/DMSans-MediumItalic.ttf and /dev/null differ diff --git a/starterOnly/DM_Sans/DMSans-Regular.ttf b/starterOnly/DM_Sans/DMSans-Regular.ttf deleted file mode 100644 index b3c3eda643..0000000000 Binary files a/starterOnly/DM_Sans/DMSans-Regular.ttf and /dev/null differ diff --git a/starterOnly/DM_Sans/OFL.txt b/starterOnly/DM_Sans/OFL.txt deleted file mode 100644 index 6bde33e330..0000000000 --- a/starterOnly/DM_Sans/OFL.txt +++ /dev/null @@ -1,93 +0,0 @@ -Copyright 2014-2017 Indian Type Foundry (info@indiantypefoundry.com). Copyright 2019 Google LLC. - -This Font Software is licensed under the SIL Open Font License, Version 1.1. -This license is copied below, and is also available with a FAQ at: -http://scripts.sil.org/OFL - - ------------------------------------------------------------ -SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 ------------------------------------------------------------ - -PREAMBLE -The goals of the Open Font License (OFL) are to stimulate worldwide -development of collaborative font projects, to support the font creation -efforts of academic and linguistic communities, and to provide a free and -open framework in which fonts may be shared and improved in partnership -with others. - -The OFL allows the licensed fonts to be used, studied, modified and -redistributed freely as long as they are not sold by themselves. The -fonts, including any derivative works, can be bundled, embedded, -redistributed and/or sold with any software provided that any reserved -names are not used by derivative works. The fonts and derivatives, -however, cannot be released under any other type of license. The -requirement for fonts to remain under this license does not apply -to any document created using the fonts or their derivatives. - -DEFINITIONS -"Font Software" refers to the set of files released by the Copyright -Holder(s) under this license and clearly marked as such. This may -include source files, build scripts and documentation. - -"Reserved Font Name" refers to any names specified as such after the -copyright statement(s). - -"Original Version" refers to the collection of Font Software components as -distributed by the Copyright Holder(s). - -"Modified Version" refers to any derivative made by adding to, deleting, -or substituting -- in part or in whole -- any of the components of the -Original Version, by changing formats or by porting the Font Software to a -new environment. - -"Author" refers to any designer, engineer, programmer, technical -writer or other person who contributed to the Font Software. - -PERMISSION & CONDITIONS -Permission is hereby granted, free of charge, to any person obtaining -a copy of the Font Software, to use, study, copy, merge, embed, modify, -redistribute, and sell modified and unmodified copies of the Font -Software, subject to the following conditions: - -1) Neither the Font Software nor any of its individual components, -in Original or Modified Versions, may be sold by itself. - -2) Original or Modified Versions of the Font Software may be bundled, -redistributed and/or sold with any software, provided that each copy -contains the above copyright notice and this license. These can be -included either as stand-alone text files, human-readable headers or -in the appropriate machine-readable metadata fields within text or -binary files as long as those fields can be easily viewed by the user. - -3) No Modified Version of the Font Software may use the Reserved Font -Name(s) unless explicit written permission is granted by the corresponding -Copyright Holder. This restriction only applies to the primary font name as -presented to the users. - -4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font -Software shall not be used to promote, endorse or advertise any -Modified Version, except to acknowledge the contribution(s) of the -Copyright Holder(s) and the Author(s) or with their explicit written -permission. - -5) The Font Software, modified or unmodified, in part or in whole, -must be distributed entirely under this license, and must not be -distributed under any other license. The requirement for fonts to -remain under this license does not apply to any document created -using the Font Software. - -TERMINATION -This license becomes null and void if any of the above conditions are -not met. - -DISCLAIMER -THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT -OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE -COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL -DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM -OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/starterOnly/assets/css/form.css b/starterOnly/assets/css/form.css new file mode 100644 index 0000000000..e69de29bb2 diff --git a/starterOnly/modal.css b/starterOnly/assets/css/modal.css similarity index 99% rename from starterOnly/modal.css rename to starterOnly/assets/css/modal.css index 38cdea6251..7867578626 100644 --- a/starterOnly/modal.css +++ b/starterOnly/assets/css/modal.css @@ -14,7 +14,7 @@ body { margin: 0; display: flex; flex-direction: column; - background-image: url("background.png"); + /* background-image: url("background.png"); MISSING IMG */ font-family: var(--font-default); font-size: 18px; max-width: 1300px; diff --git a/starterOnly/Logo.png b/starterOnly/assets/img/Logo.png similarity index 100% rename from starterOnly/Logo.png rename to starterOnly/assets/img/Logo.png diff --git a/starterOnly/bg_img.jpg b/starterOnly/assets/img/bg_img.jpg similarity index 100% rename from starterOnly/bg_img.jpg rename to starterOnly/assets/img/bg_img.jpg diff --git a/starterOnly/modal.js b/starterOnly/assets/js/modal.js similarity index 100% rename from starterOnly/modal.js rename to starterOnly/assets/js/modal.js diff --git a/starterOnly/assets/js/validateForm.js b/starterOnly/assets/js/validateForm.js new file mode 100644 index 0000000000..fe6185cfed --- /dev/null +++ b/starterOnly/assets/js/validateForm.js @@ -0,0 +1,86 @@ + +/*** Validate form ***/ + +// recupere le submit +/*document.querySelector('.modal-body input=["submit"]').addEventListener("click", function(){ + //setCustomValidity("message erreur"); + let valid = true; + for( let input of document.querySelectorAll(".modal-body input")){ + valid &= input.reportValidity(); + if(!valid){ + break; + } + } + if(valid){ + alert("champs validés"); + } +});*/ + +/** Explanation of regex : email **/ +/** + ^: Start of the string. + [a-zA-Z0-9._%+-]+: One or more letters, digits, dots, underscores, percentage signs, plus or hyphens. This is the local part of the email (before the @). + @: The required symbol separating the local part from the domain. + [a-zA-Z0-9.-]+: One or more letters, digits, dots or hyphens. This matches the domain name. + \.: A required dot separating the domain from the top-level domain (e.g., .com). + [a-zA-Z]{2,}: Two or more letters for the top-level domain. + $: End of the string. +**/ + + +function validateForm() { + const firstName = document.getElementById('first').value.trim(); + const lastName = document.getElementById('last').value.trim(); + const email = document.getElementById('email').value.trim(); + const dob = document.getElementById('birthdate').value + const participations = document.getElementById('quantity').value; + const tournament = document.querySelector('input[name="location"]:checked'); + const cgu = document.getElementById('checkbox1').checked; + const errorMessages = document.getElementById('errorMessages'); + + let errors = []; + + // Validation du prénom (min. 2 lettres) + if (firstName.length < 2) { + errors.push("Le prénom doit contenir au moins 2 lettres."); + } + + // Validation du nom (min. 2 lettres) + if (lastName.length < 2) { + errors.push("Le nom doit contenir au moins 2 lettres."); + } + + // Validation de l'email avec regex + const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/; + if (!emailRegex.test(email)) { + errors.push("L'adresse e-mail n'est pas valide."); + } + + // Validation de la date de naissance (champ type "date" au format YYYY-MM-DD) + if (dob === "") { + errors.push("La date de naissance est requise."); + } + + // Validation du nombre de participations (entre 0 et 99) + if (participations === "" || isNaN(participations) || participations < 0 || participations > 99) { + errors.push("Le nombre de participations doit être entre 0 et 99."); + } + + // Validation du choix du tournoi (radio sélectionné) + if (!tournament) { + errors.push("Vous devez choisir un tournoi."); + } + + // Validation de l'acceptation des CGU (checkbox cochée) + if (!cgu) { + errors.push("Vous devez accepter les CGU."); + } + + // Affichage des erreurs ou soumission du formulaire + if (errors.length > 0) { + errorMessages.innerHTML = errors.join('
'); + return false; // Empêche l'envoi du formulaire + } + + return true; // Le formulaire est valide +} diff --git a/starterOnly/index.html b/starterOnly/index.html index 25fef80699..b78bb64ad0 100644 --- a/starterOnly/index.html +++ b/starterOnly/index.html @@ -4,7 +4,7 @@ Reservation - +
- img + img
@@ -206,6 +211,7 @@

value="C'est parti" /> +

@@ -215,6 +221,7 @@

Copyright 2014 - 2022, GameOn Inc.

- + +