2020-03-21 11:07:14 -04:00
|
|
|
#!/usr/bin/env node
|
|
|
|
|
|
|
|
const logger = require("../lib/logger");
|
|
|
|
const models = require('../lib/models')
|
|
|
|
|
|
|
|
logger.info("Cleaning up notes that should already have been removed. Sorry.")
|
|
|
|
|
|
|
|
async function cleanup() {
|
|
|
|
await models.Note.findAll({
|
|
|
|
include: [{
|
|
|
|
model: models.User,
|
|
|
|
as: 'owner'
|
|
|
|
}]
|
|
|
|
}).then(async function(notes) {
|
|
|
|
for(let i =0, noteCount = notes.length; i< noteCount; i++) {
|
|
|
|
const item = notes[i]
|
|
|
|
if(item.ownerId != null && !item.owner) {
|
|
|
|
await models.Note.destroy({
|
|
|
|
where: {
|
|
|
|
id: item.id
|
|
|
|
}})
|
|
|
|
await models.Revision.destroy({
|
|
|
|
where: {
|
|
|
|
noteId: item.id
|
|
|
|
}
|
|
|
|
})
|
|
|
|
await models.Author.destroy({
|
|
|
|
where: {
|
|
|
|
noteId: item.id
|
|
|
|
}
|
|
|
|
})
|
|
|
|
logger.info(`Deleted note ${item.id} from user ${item.ownerId}`)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
})
|
|
|
|
await models.Author.findAll({
|
|
|
|
include: [{
|
|
|
|
model: models.User,
|
|
|
|
as: 'user'
|
|
|
|
}]
|
|
|
|
}).then(async function(authors) {
|
|
|
|
for(let i =0, authorCount = authors.length; i< authorCount; i++) {
|
|
|
|
const item = authors[i]
|
|
|
|
if(item.userId != null && !item.user) {
|
|
|
|
await models.Author.destroy({
|
|
|
|
where: {
|
|
|
|
id: item.id
|
|
|
|
}})
|
|
|
|
logger.info(`Deleted authorship ${item.id} from user ${item.userId}`)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
})
|
2020-03-21 13:13:20 -04:00
|
|
|
await models.Revision.findAll({
|
|
|
|
include: [{
|
|
|
|
model: models.Note,
|
|
|
|
as: 'note'
|
|
|
|
}]
|
|
|
|
}).then(async function(revisions) {
|
|
|
|
for(let i =0, revisionCount = revisions.length; i< revisionCount; i++) {
|
|
|
|
const item = revisions[i]
|
|
|
|
if(item.noteId != null && !item.note) {
|
|
|
|
await models.Revision.destroy({
|
|
|
|
where: {
|
|
|
|
id: item.id
|
|
|
|
}})
|
|
|
|
logger.info(`Deleted revision ${item.id} from note ${item.userId}`)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
})
|
2020-03-21 11:07:14 -04:00
|
|
|
process.exit(0)
|
|
|
|
}
|
|
|
|
|
|
|
|
cleanup()
|