diff --git a/public/assets/logo.png b/public/assets/logo.png new file mode 100644 index 0000000..5a8c161 Binary files /dev/null and b/public/assets/logo.png differ diff --git a/public/assets/logo.svg b/public/assets/logo.svg deleted file mode 100644 index ff8cf78..0000000 --- a/public/assets/logo.svg +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - RÉSEAU · RENCONTRE · RÉUSSITE - - - Plein R - diff --git a/src/app/backend/BackendShell.tsx b/src/app/backend/BackendShell.tsx index 32f5b88..4362dfc 100644 --- a/src/app/backend/BackendShell.tsx +++ b/src/app/backend/BackendShell.tsx @@ -76,7 +76,7 @@ export function BackendShell({
{/* eslint-disable-next-line @next/next/no-img-element */} - Plein R + Plein R
diff --git a/src/app/backend/actions.ts b/src/app/backend/actions.ts index ad7425e..9bc87e0 100644 --- a/src/app/backend/actions.ts +++ b/src/app/backend/actions.ts @@ -129,7 +129,13 @@ export async function deleteMember(formData: FormData) { if (!can(role, "manageMembers")) throw new Error("Accès refusé"); const id = Number(formData.get("id")); if (!id) return; - await db.delete(members).where(eq(members.id, id)); + // Remove dependent rows first to satisfy foreign-key constraints: + // delete the member's promotions and detach any linked user account. + await db.transaction(async (tx) => { + await tx.delete(promotions).where(eq(promotions.memberId, id)); + await tx.update(users).set({ memberId: null }).where(eq(users.memberId, id)); + await tx.delete(members).where(eq(members.id, id)); + }); revalidatePath("/backend/adherents"); revalidatePath("/"); } diff --git a/src/app/layout.tsx b/src/app/layout.tsx index a8dfc89..bfdca94 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -25,7 +25,7 @@ export default function RootLayout({ href="https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,400;12..96,600;12..96,700;12..96,800&family=Public+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap" rel="stylesheet" /> - + {children} diff --git a/src/app/login/page.tsx b/src/app/login/page.tsx index 6976969..d8b05e5 100644 --- a/src/app/login/page.tsx +++ b/src/app/login/page.tsx @@ -25,7 +25,7 @@ export default function LoginPage() {
{/* eslint-disable-next-line @next/next/no-img-element */} - Plein R + Plein R
{/* eslint-disable-next-line @next/next/no-img-element */} - Plein R + Plein R Plein R @@ -96,7 +96,7 @@ export default async function AccueilPage() {
{/* eslint-disable-next-line @next/next/no-img-element */} Plein R — Association des commerçants et entreprises du Bassin de Pompey
{/* eslint-disable-next-line @next/next/no-img-element */} - Plein R + Plein R Plein R