mirror of
https://github.com/fluxerapp/fluxer
synced 2026-10-18 13:35:42 +09:00
feat(ban): accept delete_message_seconds and app options (#2086)
This commit is contained in:
1 parent
9f099a9127
commit
805acf4e5e
48 files changed
+1358
-121
No files matched your search
@@ -9,28 +9,28 @@ import {getWorkerDependencies} from '../WorkerContext';
|
||||
const PayloadSchema = z.object({
|
||||
guildId: z.string(),
|
||||
userId: z.string(),
|
||||
days: z.number().min(0).max(7),
|
||||
seconds: z.number().min(0).max(604800),
|
||||
});
|
||||
const deleteUserMessagesInGuildByTime: WorkerTaskHandler = async (payload, helpers) => {
|
||||
const validated = PayloadSchema.parse(payload);
|
||||
helpers.logger.debug({payload: validated}, 'Processing deleteUserMessagesInGuildByTime task');
|
||||
const guildId = createGuildID(BigInt(validated.guildId));
|
||||
const userId = createUserID(BigInt(validated.userId));
|
||||
const {days} = validated;
|
||||
const {seconds} = validated;
|
||||
Logger.debug(
|
||||
{guildId: guildId.toString(), userId: userId.toString(), days},
|
||||
{guildId: guildId.toString(), userId: userId.toString(), seconds},
|
||||
'Starting time-based message deletion for guild ban',
|
||||
);
|
||||
try {
|
||||
const {channelService} = getWorkerDependencies();
|
||||
await channelService.messages.deletion.deleteUserMessagesInGuild({guildId, userId, days});
|
||||
await channelService.messages.deletion.deleteUserMessagesInGuild({guildId, userId, seconds});
|
||||
Logger.debug(
|
||||
{guildId: guildId.toString(), userId: userId.toString(), days},
|
||||
{guildId: guildId.toString(), userId: userId.toString(), seconds},
|
||||
'Time-based message deletion completed successfully',
|
||||
);
|
||||
} catch (error) {
|
||||
Logger.error(
|
||||
{guildId: guildId.toString(), userId: userId.toString(), days, error},
|
||||
{guildId: guildId.toString(), userId: userId.toString(), seconds, error},
|
||||
'Failed to delete user messages in guild',
|
||||
);
|
||||
throw error;
|
||||
|
||||
Reference in new issue
Block a user