Admin: fix silent error swallowing - show alerts on action failures

This commit is contained in:
Patrick Britton 2026-02-06 12:23:52 -06:00
parent 7e721aea21
commit 6edaf9206f
3 changed files with 21 additions and 7 deletions

View file

@ -47,7 +47,9 @@ export default function ModerationPage() {
setReviewingId(null); setReviewingId(null);
setReason(''); setReason('');
fetchQueue(); fetchQueue();
} catch {} } catch (e: any) {
alert(`Action failed: ${e.message}`);
}
}; };
const toggleSelect = (id: string) => { const toggleSelect = (id: string) => {
@ -60,7 +62,9 @@ export default function ModerationPage() {
await api.bulkReviewModeration(Array.from(selected), action, 'Bulk admin review'); await api.bulkReviewModeration(Array.from(selected), action, 'Bulk admin review');
setSelected(new Set()); setSelected(new Set());
fetchQueue(); fetchQueue();
} catch {} } catch (e: any) {
alert(`Bulk action failed: ${e.message}`);
}
setBulkLoading(false); setBulkLoading(false);
}; };

View file

@ -35,7 +35,9 @@ export default function UserDetailPage() {
setShowModal(null); setShowModal(null);
setReason(''); setReason('');
fetchUser(); fetchUser();
} catch {} } catch (e: any) {
alert(`Status change failed: ${e.message}`);
}
setActionLoading(false); setActionLoading(false);
}; };
@ -44,7 +46,9 @@ export default function UserDetailPage() {
try { try {
await api.updateUserRole(params.id as string, role); await api.updateUserRole(params.id as string, role);
fetchUser(); fetchUser();
} catch {} } catch (e: any) {
alert(`Role change failed: ${e.message}`);
}
setActionLoading(false); setActionLoading(false);
}; };
@ -53,7 +57,9 @@ export default function UserDetailPage() {
try { try {
await api.updateUserVerification(params.id as string, isOfficial, isVerified); await api.updateUserVerification(params.id as string, isOfficial, isVerified);
fetchUser(); fetchUser();
} catch {} } catch (e: any) {
alert(`Verification update failed: ${e.message}`);
}
setActionLoading(false); setActionLoading(false);
}; };
@ -62,7 +68,9 @@ export default function UserDetailPage() {
try { try {
await api.resetUserStrikes(params.id as string); await api.resetUserStrikes(params.id as string);
fetchUser(); fetchUser();
} catch {} } catch (e: any) {
alert(`Reset strikes failed: ${e.message}`);
}
setActionLoading(false); setActionLoading(false);
}; };

View file

@ -49,7 +49,9 @@ export default function UsersPage() {
await api.bulkUpdateUsers(Array.from(selected), action, 'Bulk admin action'); await api.bulkUpdateUsers(Array.from(selected), action, 'Bulk admin action');
setSelected(new Set()); setSelected(new Set());
fetchUsers(); fetchUsers();
} catch {} } catch (e: any) {
alert(`Bulk action failed: ${e.message}`);
}
setBulkLoading(false); setBulkLoading(false);
}; };