diff --git a/main.js b/main.js index d6cdc9b..8fe4737 100644 --- a/main.js +++ b/main.js @@ -8,6 +8,8 @@ if (!USER_TOKEN) { process.exit(1); } +const PERIOD = process.env.PERIOD; // Time in days: int + const INSTANCE_URL = process.env.INSTANCE_URL; const API_BASE = `${INSTANCE_URL}/api`; @@ -49,14 +51,16 @@ async function main() { const users = response.data; const now = new Date(); - const fiveDaysAgo = new Date(now - 5 * 24 * 60 * 60 * 1000); + const timeAgo = new Date(now - PERIOD * 24 * 60 * 60 * 1000); const usersToDelete = users.filter(user => { const createdAt = new Date(user.createdAt); const updatedAt = new Date(user.updatedAt); - return user.notesCount === 0 && - createdAt < fiveDaysAgo && - updatedAt < fiveDaysAgo; + const excludedUsers = ['instance.actor', 'relay.actor']; + return user.notesCount === 0 && + createdAt < timeAgo && + updatedAt < timeAgo && + !excludedUsers.includes(user.username) }); console.log(`Found ${usersToDelete.length} users matching criteria (no posts, not updated, and older than 5 days)`); @@ -71,7 +75,7 @@ async function main() { console.log(); const confirmed = await askForConfirmation(`Are you sure you want to delete ${usersToDelete.length} users?`); - + if (!confirmed) { console.log('Operation cancelled by user'); rl.close();