Added series removal utils.
This commit is contained in:
@@ -325,6 +325,24 @@ async function deleteMovies(movieIds) {
|
||||
return deleteCount;
|
||||
}
|
||||
|
||||
async function deleteSeries(serieIds) {
|
||||
if (serieIds.length === 0) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
await knex('series_scenes')
|
||||
.whereIn('serie_id', serieIds)
|
||||
.delete();
|
||||
|
||||
const deleteCount = await knex('series')
|
||||
.whereIn('id', serieIds)
|
||||
.delete();
|
||||
|
||||
logger.info(`Removed ${deleteCount}/${serieIds.length} series`);
|
||||
|
||||
return deleteCount;
|
||||
}
|
||||
|
||||
async function flushScenes() {
|
||||
const sceneIds = await knex('releases').select('id').pluck('id');
|
||||
|
||||
@@ -367,6 +385,27 @@ async function flushMovies() {
|
||||
logger.info(`Removed ${deleteCount}/${movieIds.length} movies`);
|
||||
}
|
||||
|
||||
async function flushSeries() {
|
||||
const serieIds = await knex('series').select('id').pluck('id');
|
||||
|
||||
const confirmed = await inquirer.prompt([{
|
||||
type: 'confirm',
|
||||
name: 'flushSeries',
|
||||
message: `You are about to remove ${serieIds.length} series. Are you sure?`,
|
||||
default: false,
|
||||
}]);
|
||||
|
||||
if (!confirmed.flushSeries) {
|
||||
logger.warn('Confirmation rejected, not flushing series');
|
||||
return;
|
||||
}
|
||||
const deleteCount = await deleteSeries(serieIds);
|
||||
|
||||
await flushOrphanedMedia();
|
||||
|
||||
logger.info(`Removed ${deleteCount}/${serieIds.length} series`);
|
||||
}
|
||||
|
||||
async function flushBatches(batchIds) {
|
||||
const [sceneIds, movieIds] = await Promise.all([
|
||||
knex('releases')
|
||||
@@ -407,8 +446,10 @@ module.exports = {
|
||||
fetchScenes,
|
||||
flushBatches,
|
||||
flushMovies,
|
||||
flushSeries,
|
||||
flushScenes,
|
||||
searchScenes,
|
||||
deleteScenes,
|
||||
deleteMovies,
|
||||
deleteSeries,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user