Initial commit: SejeteralO water tarification platform
Full-stack app for participatory water pricing using Bezier curves. - Backend: FastAPI + SQLAlchemy + SQLite with JWT auth - Frontend: Nuxt 4 + TypeScript with interactive SVG editor - Math engine: cubic Bezier tarification with Cardano solver - Admin: commune management, household import, vote monitoring, CMS - Citizen: interactive curve editor, vote submission - Docker-compose deployment ready Includes fixes for: - Impact table snake_case/camelCase property mismatch - CMS content backend API + frontend editor (was stub) - Admin route protection middleware - Public content display on commune page - Vote confirmation page link fix Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
46
frontend/app/pages/login.vue
Normal file
46
frontend/app/pages/login.vue
Normal file
@@ -0,0 +1,46 @@
|
||||
<template>
|
||||
<div style="max-width: 500px; margin: 2rem auto;">
|
||||
<div class="page-header" style="text-align: center;">
|
||||
<h1>Connexion</h1>
|
||||
<p style="color: var(--color-text-muted);">Choisissez votre espace.</p>
|
||||
</div>
|
||||
|
||||
<div class="grid grid-2">
|
||||
<NuxtLink to="/login/commune" class="card login-choice">
|
||||
<h3>Commune</h3>
|
||||
<p>Gérer les données et la tarification de votre commune.</p>
|
||||
</NuxtLink>
|
||||
<NuxtLink to="/login/admin" class="card login-choice">
|
||||
<h3>Super Admin</h3>
|
||||
<p>Gestion globale des communes et administrateurs.</p>
|
||||
</NuxtLink>
|
||||
</div>
|
||||
|
||||
<p style="text-align: center; margin-top: 1.5rem;">
|
||||
<NuxtLink to="/">← Retour à l'accueil</NuxtLink>
|
||||
</p>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
.login-choice {
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
transition: box-shadow 0.15s;
|
||||
}
|
||||
|
||||
.login-choice:hover {
|
||||
box-shadow: var(--shadow-md);
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.login-choice h3 {
|
||||
color: var(--color-primary);
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
.login-choice p {
|
||||
font-size: 0.8rem;
|
||||
color: var(--color-text-muted);
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user