Commit Graph

315 Commits

Author SHA1 Message Date
Colin Maudry 8faeaa5804 Bandeau TOUS_ABONNES et boutons S'abonner désactivés
Affiche un bandeau d'info sur /compte/abonnement et grise les boutons
S'abonner quand l'accès gratuit pour tous est activé.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-26 18:12:58 +02:00
Colin Maudry 2bdcfdeb1a Ajoute le drapeau TOUS_ABONNES pour l'accès gratuit
Ouvre les fonctionnalités d'abonné à tout utilisateur connecté tant que
Frisbii n'a pas validé la réception de paiements.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-26 18:06:27 +02:00
Colin Maudry e229caf320 Fix affichage jours d'essai 2026-06-25 22:41:48 +02:00
Colin Maudry e932c66af0 Corrections des bugs de la connexion à Frisbii #90 2026-06-25 21:14:35 +02:00
Colin Maudry d3025e323b feat(abonnement): page /compte/abonnement + accès premium réel (#90)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DRGb8NAMwaTZxUszSbaj4N
2026-06-25 19:08:22 +02:00
Colin Maudry 2701eb0422 Layout fluide (pleine largeur) pour /compte et /a-propos 2026-06-25 09:37:06 +02:00
Colin Maudry b93aca9005 feat(ux): refonte barre latérale /compte et fix CLI tokens
- Déconnexion déplacée dans la sidebar (lien discret) et retirée du dropdown navbar
- Email utilisateur connecté = lien simple vers /compte/admin (sans dropdown)
- Hover orange pâle sur les nav-links des sidebars
- fix(cli): load_dotenv() dans tokens_cli pour charger .env hors contexte app

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DRGb8NAMwaTZxUszSbaj4N
2026-06-25 02:11:28 +02:00
Colin Maudry 82999ef056 Redesign de a-propos 2026-06-25 01:19:36 +02:00
Colin Maudry 590b927e31 fix(auth): corrections runtime LinkedIn OAuth (#88)
- Workaround nonce OIDC LinkedIn (non-conformité) : capture MissingClaimError après échange de code réussi et fetch userinfo séparément
- Ajout token_endpoint_auth_method: client_secret_post (requis par LinkedIn)
- suppress_callback_exceptions=True pour corriger les erreurs Dash multi-pages
- Suppression bouton déconnexion redondant sur /compte/admin et style hover incorrect sur la navbar

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-25 00:38:01 +02:00
Colin Maudry 5a702ac77e fix(auth): null password_hash pour utilisateurs OAuth (#88)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-24 23:27:15 +02:00
Colin Maudry aac3753226 feat(auth): bouton Connexion avec LinkedIn sur connexion/inscription (#88)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 23:18:41 +02:00
Colin Maudry ccdf476c4f fix(compte): styles nav sidebar, zone danger et bouton déconnexion (#73)
- Nav sidebar : indicateur bordure gauche rouge au lieu du pill rouge plein
- Zone danger : couleur rouge directe (#d9230f) au lieu de Bootstrap danger (violet en Simplex)
- Bouton Déconnexion : outline pour le rendre clairement stylisé

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-24 22:38:28 +02:00
Colin Maudry e2124024e1 fix: move _toggle_offcanvas callback to _compte_shell.py
The callback was defined in compte_admin.py but controlled components
(compte-offcanvas and compte-offcanvas-open) rendered by account_shell()
in _compte_shell.py. Moving the callback to where the components live
improves code organization and reduces coupling.

Closes #73

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-24 22:10:01 +02:00
Colin Maudry 95f7d80b45 feat(compte): page /compte/admin (email, mot de passe, suppression) (#73) 2026-06-24 22:07:05 +02:00
Colin Maudry cce4d9873a feat(compte): coquille de la section Abonnement (#73) 2026-06-24 22:06:42 +02:00
Colin Maudry 4602b45f30 feat(compte): coquille account_shell (sidebar + offcanvas + garde d'accès) (#73)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-24 18:43:53 +02:00
Colin Maudry c99f4d970e fix(csrf): centraliser l'injection des tokens CSRF via un dcc.Store et un callback pattern-matching
Remplace les 7 callbacks CSRF individuels (un par formulaire, avec IDs string
page-spécifiques) par un seul dcc.Store(id="csrf-token") dans le layout principal
et un callback pattern-matching Output({"type": "csrf-input", "index": ALL}).
Évite les erreurs Dash "id non trouvé dans le layout" sans recourir à
suppress_callback_exceptions=True.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-24 05:26:07 +02:00
Colin Maudry cbce646fd8 Merge branch 'dev' into feature/73_compte_utilisateur 2026-06-24 03:01:43 +02:00
Colin Maudry f9aefb55d8 feat(titulaire): afficher le libellé d'activité NAF en sous-titre gris
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-23 22:32:12 +02:00
Colin Maudry a5e802d20a refactor: use write_styled_excel in all download callbacks #83 2026-06-23 17:14:16 +02:00
Colin Maudry 83d38f8489 Correction du mode d'emploi sur l'accentuation 2026-06-23 15:48:37 +02:00
Colin Maudry 5586db23aa feat(observatoire): afficher la tuile considérations après Type d'achat
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-22 18:17:27 +02:00
Colin Maudry b8d73c7f7b fix: omettre temporalCoverage si date inconnue + TimeoutException explicite (#78)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-12 17:58:23 +02:00
Colin Maudry cb93dbe05a feat: chargements de pages best-effort au boot (tableau, sources) (#78)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-12 13:58:50 +02:00
Colin Maudry 1aea71be7f Merge branch 'main' into feature/78_api 2026-06-12 09:33:59 +02:00
Colin Maudry ed32b0f66b Réduction des petites erreurs qui polluent les logs 2026-06-07 18:56:16 +02:00
Colin Maudry 4d3e8ac344 feat(etapes): fiches cliquables sur les barres et vue mobile 2026-06-04 22:15:10 +02:00
Colin Maudry ab74717679 feat(etapes): suppression légende, JAL à la place de Journaux d'annonces légales 2026-06-04 22:04:31 +02:00
Colin Maudry 4c60fed0c2 feat(etapes): vue mobile liste par étape
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-04 21:45:25 +02:00
Colin Maudry 070a91fed1 feat(etapes): graphique données par étape et par seuil 2026-06-04 21:42:33 +02:00
Colin Maudry e638ce45be feat(etapes): squelette de la page /etapes 2026-06-04 21:38:50 +02:00
Colin Maudry e55f3447db Possibilité de charger les données depuis une URL, memoisation de last_modified 2026-06-04 21:34:36 +02:00
Colin Maudry 63f51d7b98 API: mention sur la page À propos (#78)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 14:47:03 +02:00
Colin Maudry 8a2f7f620c Suppression des mentions sur les profils d'acheteurs qui ne publient pas de données
Omnikles publie via l'API DUME de l'AIFE, ne reste que Klekoon. Mais bon, ça fait des mauvaises vibes sur la page de le préciser :)
2026-05-11 10:26:16 +02:00
Colin Maudry 0322c20513 Suppression des espaces pour l'affichage du nom de l'org #75 2026-04-29 18:41:45 +02:00
Colin Maudry bd6a4ff266 Tentative de rétablissement de la carte sur acheteur/titulaire 2026-04-28 10:40:50 +02:00
Colin Maudry 1839928e69 Réduction des petites erreurs 2026-04-24 13:36:15 +02:00
Colin Maudry d8ee6e5b37 Màj du mode d'emploi de Tableau #42 2026-04-24 12:31:46 +02:00
Colin Maudry fc4d965b20 Spinner de chargemetn sur la préviusalisation des données 2026-04-23 12:33:30 +02:00
Colin Maudry c45d4e0ea1 refactor(observatoire): appelants utilisent la nouvelle signature (#72)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-22 23:57:10 +02:00
Colin Maudry af0efbe928 src/pages : pages mot de passe oublié et réinitialisation (#73)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-20 22:53:24 +02:00
Colin Maudry 038858985c src/pages/verification_email.py : page statut vérification email (#73) 2026-04-20 22:53:10 +02:00
Colin Maudry 7b27c15515 src/pages/compte.py : page mon compte (protégée) (#73) 2026-04-20 22:52:51 +02:00
Colin Maudry 88863415d7 src/pages/connexion.py : page de connexion (#73) 2026-04-20 22:52:46 +02:00
Colin Maudry 5149582958 src/pages/inscription.py : page d'inscription (#73) 2026-04-20 22:52:29 +02:00
Colin Maudry 285ed37d79 Correction de l'import d'utils.cache 2026-04-20 00:06:44 +02:00
Colin Maudry e44fe452b2 Corrections de typage et d'appels à filter_table_data 2026-04-19 23:55:20 +02:00
Colin Maudry 7aef7acd34 Petits ajustements (cache => utils, noms de variables) 2026-04-19 23:49:02 +02:00
Colin Maudry 0c7ca04f8e refactor: move track_search out of filter_table_data into callers (#72)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-19 22:32:28 +02:00
Colin Maudry 1eb579da57 Logging des cache miss si DEVELOPMENT 2026-04-19 15:23:02 +02:00