Fix ban duration change updating ban expiration when ban checkbox is unchecked

This commit is contained in:
plebeius
2026-01-09 17:22:05 +01:00
parent 5f4856ad3c
commit f6348f0e66
+7 -3
View File
@@ -176,13 +176,17 @@ const EditMenu = ({ post }: { post: Comment }) => {
const onBanDurationChange = (e: React.ChangeEvent<HTMLInputElement>) => { const onBanDurationChange = (e: React.ChangeEvent<HTMLInputElement>) => {
const days = parseInt(e.target.value, 10) || 1; const days = parseInt(e.target.value, 10) || 1;
setBanDuration(days); setBanDuration(days);
setPublishCommentEditOptions((state) => ({ setPublishCommentEditOptions((state) => {
// Only update ban expiration if ban is currently enabled (checkbox is checked)
const isBanEnabled = state.commentModeration?.author?.banExpiresAt !== undefined;
return {
...state, ...state,
commentModeration: { commentModeration: {
...state.commentModeration, ...state.commentModeration,
author: { banExpiresAt: daysToTimestampInSeconds(days) }, author: isBanEnabled ? { banExpiresAt: daysToTimestampInSeconds(days) } : state.commentModeration?.author,
}, },
})); };
});
}; };
const onPurgeCheckbox = (e: React.ChangeEvent<HTMLInputElement>) => { const onPurgeCheckbox = (e: React.ChangeEvent<HTMLInputElement>) => {