diff --git a/server/db.ts b/server/db.ts index f6de05a..de22243 100644 --- a/server/db.ts +++ b/server/db.ts @@ -485,10 +485,15 @@ export async function getAllImportLogs(): Promise { return db.select().from(importLogs).orderBy(desc(importLogs.importedAt)); } -export async function deleteAllImportLogs(userId: number): Promise { +export async function deleteAllImportLogs(userId: number | null): Promise { const db = await getDb(); if (!db) throw new Error("Database not available"); - await db.delete(importLogs).where(eq(importLogs.userId, userId)); + if (userId === null) { + // Admin : supprime tous les logs + await db.delete(importLogs); + } else { + await db.delete(importLogs).where(eq(importLogs.userId, userId)); + } } // ============= LLM LOG OPERATIONS ============= diff --git a/server/routers.ts b/server/routers.ts index 992bbea..3c1d00b 100644 --- a/server/routers.ts +++ b/server/routers.ts @@ -1609,7 +1609,12 @@ export const appRouter = router({ }), deleteAll: protectedProcedure.mutation(async ({ ctx }) => { - await deleteAllImportLogs(ctx.user.id); + // Les admins suppriment tous les logs, les utilisateurs standard suppriment les leurs + if (ctx.user.role === 'admin') { + await deleteAllImportLogs(null); + } else { + await deleteAllImportLogs(ctx.user.id); + } return { success: true }; }), }),