Commit Graph
10 Commits
Author SHA1 Message Date
MichaelandClaude Opus 4.8 eb6536ce8a Accueil: les bons plans menent a la fiche adherent
- Carte promo cliquable -> /adherents/[memberId] (getLivePromotions
  renvoie desormais memberId)
- Retire le bouton "Voir l'offre"
- Retire le cadre "Vous etes adherent ? Publier une promo"

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 10:27:10 +02:00
MichaelandClaude Opus 4.8 b5a606e945 Backend: commune en menu deroulant (communes du Bassin de Pompey)
- Constante BASSIN_POMPEY_COMMUNES (13 communes) dans src/lib/communes.ts
- Champ commune devenu un select dans : ajout adherent, edition fiche,
  espace adherent. communeOptions() conserve une valeur existante hors liste.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 10:21:10 +02:00
MichaelandClaude Opus 4.8 7bdb234475 Fiche adherent: entete repli sur le logo si pas de photo de couverture
L'entete de la fiche utilise coverUrl, sinon logoUrl, sinon placeholder
(meme logique que les cartes de l'annuaire).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 10:16:40 +02:00
MichaelandClaude Opus 4.8 e31c71caa9 Approuver une demande cree directement l'adherent + compte
- approveMembershipRequest : cree la fiche adherent (statut actif) et son
  compte de connexion (mot de passe temporaire), marque la demande approuvee
- Bouton "Approuver & creer" redirige vers la fiche (login + mdp visibles)
- Demande sans e-mail : erreur explicite (creation manuelle requise)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 10:12:23 +02:00
MichaelandClaude Opus 4.8 e2dc695d3e Backend: rediriger vers la fiche apres creation d'un adherent
Le login et le mot de passe temporaire s'affichent sur la fiche de
l'adherent. Apres creation, AddMemberPanel redirige desormais vers
/backend/adherents/[id] pour les rendre visibles immediatement.
addMember retourne l'id du nouvel adherent.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 10:03:48 +02:00
MichaelandClaude Opus 4.8 4193d8e914 Annuaire: afficher la photo de vitrine (fallback logo)
- getActiveMembersWithCategory renvoie coverUrl + logoUrl
- Carte annuaire affiche l'image de vitrine (coverUrl) ; si absente,
  bascule sur le logo (logoUrl) ; sinon placeholder raye

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 10:01:54 +02:00
MichaelandClaude Opus 4.8 839aa5d045 Backfill: creer les comptes des adherents existants
- Action createMissingMemberAccounts : cree un compte de connexion
  (mdp temporaire a changer) pour chaque adherent ayant un e-mail mais
  pas encore de compte. Ignore ceux sans e-mail ou e-mail deja pris.
- Banniere sur /backend/adherents : compte des fiches sans compte +
  bouton "Creer les comptes manquants" (pas besoin de CLI serveur)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 09:47:05 +02:00
MichaelandClaude Opus 4.8 119ad4665a Comptes adherents, boite de reception admin, edition profil
Comptes de connexion adherent
- addMember cree desormais un compte users (role member, lie a la fiche)
  avec un mot de passe temporaire genere
- Le mdp temporaire s'affiche sur la fiche admin (/backend/adherents/[id])
  jusqu'a la 1ere connexion ; bouton "Reinitialiser le mot de passe"
- 1ere connexion : changement de mot de passe force (must_change_password)
  via /backend/changer-mot-de-passe, redirection geree dans authorized()
- users += must_change_password, temp_password (migration 0003)

Boite de reception admin (consultation)
- Page /backend/demandes : demandes d'adhesion + messages de contact
  avec statuts (approuvee/rejetee, lu/archive)
- Lien sidebar + badge (nouveaux), carte tableau de bord cliquable

Espace adherent
- L'adherent peut editer sa propre fiche (updateOwnProfile) : infos,
  description, horaires, tags, image d'entete + logo
- Statut/categorie/mise a l'honneur restent reserves au staff

Promotions : moderation deja en place, inchangee.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 09:47:05 +02:00
MichaelandClaude Opus 4.8 b4d94f2115 Backend: edition image d'entete + logo des adherents
- Champs upload image d'entete (coverUrl) et logo (logoUrl) dans le
  formulaire d'edition d'un adherent (composant ImageField, fichier ->
  data-URL via hidden input)
- updateMember persiste desormais coverUrl + logoUrl, et revalide la
  fiche publique /adherents/[id]
- serverActions.bodySizeLimit a 4mb (les data-URL depassent la limite
  par defaut de 1mb)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 09:47:04 +02:00
MichaelandClaude Opus 4.8 141acffc1c Logo annuaire + modals devenir membre & contact
- Logo en haut a gauche de la page Annuaire (prop logo sur SiteHeader)
- Modal "Devenir adherent" sur les CTA accueil + annuaire : cree une
  demande d'adhesion (membership_requests) et alerte les admins via le
  journal d'activite (compteur tableau de bord deja cable)
- Formulaire de contact (modal depuis le pied de page) : nouvelle table
  contact_messages + alerte admin
- Composant Modal partage, server actions publiques (sans auth)
- Migration drizzle 0002

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 09:16:59 +02:00