Removed Channel Toggle Command (#115)
* Remove: channel-toggle as command and server config * Remove: Thread interface * Fix: Users Thread files will now delete * Fix: Any user can chat in threads now * Fix: Thread history files are now deleted with multiple users * Update: version increment
This commit is contained in:
@@ -5,16 +5,36 @@ import fs from 'fs'
|
||||
/**
|
||||
* Event to remove the associated .json file for a thread once deleted
|
||||
*/
|
||||
export default event(Events.ThreadDelete, ({ log }, thread: ThreadChannel) => {
|
||||
const filePath = `data/${thread.id}.json`
|
||||
if (fs.existsSync(filePath)) {
|
||||
fs.unlink(filePath, (error) => {
|
||||
if (error)
|
||||
log(`Error deleting file ${filePath}`, error)
|
||||
else
|
||||
log(`Successfully deleted ${filePath} thread info`)
|
||||
export default event(Events.ThreadDelete, async ({ log }, thread: ThreadChannel) => {
|
||||
// iterate through every guild member in the thread and delete their history, except the bot
|
||||
try {
|
||||
log(`Number of User Guild Members in Thread being deleted: ${thread.memberCount!! - 1}`)
|
||||
const dirPath = 'data/'
|
||||
|
||||
// read all files in data/
|
||||
fs.readdir(dirPath, (error, files) => {
|
||||
if (error) {
|
||||
log(`Error reading directory ${dirPath}`, error)
|
||||
return
|
||||
}
|
||||
|
||||
// filter files by thread id being deleted
|
||||
const filesToDiscard = files.filter(
|
||||
file => file.startsWith(`${thread.id}-`) &&
|
||||
file.endsWith('.json'))
|
||||
|
||||
// remove files by unlinking
|
||||
filesToDiscard.forEach(file => {
|
||||
const filePath = dirPath + file
|
||||
fs.unlink(filePath, error => {
|
||||
if (error)
|
||||
log(`Error deleting file ${filePath}`, error)
|
||||
else
|
||||
log(`Successfully deleted ${filePath} thread information`)
|
||||
})
|
||||
})
|
||||
})
|
||||
} else {
|
||||
log(`File ${filePath} does not exist.`)
|
||||
}
|
||||
} catch (error) {
|
||||
log(`Issue deleting user history files from ${thread.id}`)
|
||||
}
|
||||
})
|
||||
Reference in New Issue
Block a user