Amélioration de la splash_page et du login

This commit is contained in:
d6soft
2025-06-04 16:51:40 +02:00
parent 8c9e9a21c4
commit bcfdbb2c8b
168 changed files with 153842 additions and 6183 deletions

View File

@@ -10,7 +10,7 @@
function getEnvironmentUrls() {
const hostname = window.location.hostname;
let appPrefix = '';
if (hostname === 'dev.geosector.fr' || hostname.includes('localhost')) {
appPrefix = 'dapp';
} else if (hostname === 'rec.geosector.fr') {
@@ -19,7 +19,7 @@
// Production ou autres environnements
appPrefix = 'app';
}
// Construire l'URL de base de l'application
const domainParts = hostname.split('.');
if (domainParts.length >= 2) {
@@ -27,7 +27,7 @@
const domain = domainParts.slice(Math.max(domainParts.length - 2, 0)).join('.');
return `https://${appPrefix}.${domain}`;
}
// Fallback pour localhost ou cas non prévus
return `https://${appPrefix}.geosector.fr`;
}
@@ -59,14 +59,12 @@
onMount(() => {
// Déterminer l'URL de base de l'application
baseAppUrl = getEnvironmentUrls();
const handleClickOutside = (event) => {
const mobileMenu = document.getElementById('mobile-menu');
const burgerButton = document.getElementById('burger-button');
if (mobileMenuOpen && mobileMenu && burgerButton &&
!mobileMenu.contains(event.target) &&
!burgerButton.contains(event.target)) {
if (mobileMenuOpen && mobileMenu && burgerButton && !mobileMenu.contains(event.target) && !burgerButton.contains(event.target)) {
closeMobileMenu();
}
};
@@ -116,10 +114,26 @@
</li>
</ul>
</nav>
<div class="flex gap-3 items-center">
<a href="{baseAppUrl}/login/user" class="border-2 border-[#4CAF50] text-[#4CAF50] hover:bg-[#4CAF50] hover:text-white font-medium py-1.5 px-3 rounded-full transition-colors" on:click={() => { sessionStorage.setItem('loginType', 'user'); }}> Connexion Utilisateur </a>
<a href="{baseAppUrl}/login" class="border-2 border-red-600 text-red-600 hover:bg-red-600 hover:text-white font-medium py-1.5 px-3 rounded-full transition-colors" on:click={() => { sessionStorage.setItem('loginType', 'admin'); }}> Connexion Administrateur </a>
<a
href="{baseAppUrl}/login/user"
class="border-2 border-[#4CAF50] text-[#4CAF50] hover:bg-[#4CAF50] hover:text-white font-medium py-1.5 px-3 rounded-full transition-colors"
on:click={() => {
sessionStorage.setItem('loginType', 'user');
}}
>
Connexion Utilisateur
</a>
<a
href="{baseAppUrl}/login/admin"
class="border-2 border-red-600 text-red-600 hover:bg-red-600 hover:text-white font-medium py-1.5 px-3 rounded-full transition-colors"
on:click={() => {
sessionStorage.setItem('loginType', 'admin');
}}
>
Connexion Administrateur
</a>
<a href="{baseAppUrl}/register" class="bg-[#E3170A] hover:bg-red-700 text-white font-medium py-2 px-4 rounded-full transition-colors"> S'inscrire </a>
</div>
</div>
@@ -136,7 +150,7 @@
</svg>
</button>
</div>
<nav class="mb-8">
<ul class="space-y-4">
<li>
@@ -150,24 +164,33 @@
</li>
</ul>
</nav>
<div class="space-y-4">
<a href="{baseAppUrl}/login/user" class="block w-full border-2 border-[#4CAF50] text-[#4CAF50] hover:bg-[#4CAF50] hover:text-white font-medium py-2 px-4 rounded-full transition-colors text-center mb-3" on:click={() => { sessionStorage.setItem('loginType', 'user'); }}> Connexion Utilisateur </a>
<a href="{baseAppUrl}/login" class="block w-full border-2 border-red-600 text-red-600 hover:bg-red-600 hover:text-white font-medium py-2 px-4 rounded-full transition-colors text-center mb-3" on:click={() => { sessionStorage.setItem('loginType', 'admin'); }}> Connexion Administrateur </a>
<a
href="{baseAppUrl}/login/user"
class="block w-full border-2 border-[#4CAF50] text-[#4CAF50] hover:bg-[#4CAF50] hover:text-white font-medium py-2 px-4 rounded-full transition-colors text-center mb-3"
on:click={() => {
sessionStorage.setItem('loginType', 'user');
}}
>
Connexion Utilisateur
</a>
<a
href="{baseAppUrl}/login/admin"
class="block w-full border-2 border-red-600 text-red-600 hover:bg-red-600 hover:text-white font-medium py-2 px-4 rounded-full transition-colors text-center mb-3"
on:click={() => {
sessionStorage.setItem('loginType', 'admin');
}}
>
Connexion Administrateur
</a>
<a href="{baseAppUrl}/register" class="block w-full bg-[#E3170A] hover:bg-red-700 text-white font-medium py-2 px-4 rounded-full transition-colors text-center"> S'inscrire </a>
</div>
</div>
</div>
<!-- Overlay pour le fond lorsque le menu mobile est ouvert -->
{#if mobileMenuOpen}
<div
class="fixed inset-0 bg-black bg-opacity-50 z-30"
on:click={closeMobileMenu}
on:keydown={(e) => e.key === 'Escape' && closeMobileMenu()}
role="button"
tabindex="0"
aria-label="Fermer le menu"
></div>
<div class="fixed inset-0 bg-black bg-opacity-50 z-30" on:click={closeMobileMenu} on:keydown={(e) => e.key === 'Escape' && closeMobileMenu()} role="button" tabindex="0" aria-label="Fermer le menu"></div>
{/if}
</header>