fix: improve deleteUser error logging and handling to prevent silent DB failures
All checks were successful
Staging Build / build (push) Successful in 2m35s

This commit is contained in:
DanielS
2026-06-25 01:30:10 +02:00
parent 744302e8ab
commit 86d71b2441

View File

@@ -90,13 +90,25 @@ export async function createUser(data: { email: string; role?: 'admin' | 'partne
}
export async function deleteUser(id: string) {
const admin = createAdminClient();
// Delete from public.users first to satisfy foreign key constraints
await admin.from('users').delete().eq('id', id);
const { error } = await admin.auth.admin.deleteUser(id);
if (error) throw error;
revalidatePath('/admin/users');
try {
const admin = createAdminClient();
// Delete from public.users first to satisfy foreign key constraints
const { error: dbError } = await admin.from('users').delete().eq('id', id);
if (dbError) {
console.error('Database delete user error:', dbError);
throw new Error(`Datenbank-Fehler beim Löschen des Benutzers: ${dbError.message}`);
}
const { error } = await admin.auth.admin.deleteUser(id);
if (error) {
console.error('Auth delete user error:', error);
throw new Error(`Auth-Fehler beim Löschen des Benutzers: ${error.message}`);
}
revalidatePath('/admin/users');
} catch (err: any) {
console.error('deleteUser Server Action failed:', err);
throw new Error(err.message || 'Benutzer konnte nicht gelöscht werden.');
}
}
export async function updateUserRole(id: string, role: 'admin' | 'partner' | 'gesperrt') {