refactor: change logic to seed new downloads

This commit is contained in:
Hachi-R 2024-11-09 01:16:03 -03:00
parent 7c039ead10
commit 5078946191
2 changed files with 17 additions and 32 deletions

View file

@ -5,7 +5,6 @@ import { WindowManager } from "../window-manager";
import {
downloadQueueRepository,
gameRepository,
userPreferencesRepository,
} from "@main/repository";
import { publishDownloadCompleteNotification } from "../notifications";
import { RealDebridDownloader } from "./real-debrid-downloader";
@ -104,36 +103,6 @@ export class DownloadManager {
{ status: "seeding" }
);
}
const userPreferences = await userPreferencesRepository.findOneBy({
id: 1,
});
const shouldSeedOrNot = await gameRepository.find({
where: {
id: In(gameIds),
shouldSeed: false,
isDeleted: false,
status: Not(In(["complete", "seeding"])),
},
});
if (shouldSeedOrNot.length === 0) return;
if (userPreferences?.seedAfterDownloadComplete) {
await gameRepository.update(
{ id: In(shouldSeedOrNot.map((game) => game.id)) },
{ shouldSeed: true, status: "seeding" }
);
} else {
await gameRepository.update(
{ id: In(shouldSeedOrNot.map((game) => game.id)) },
{ shouldSeed: false, status: "complete" }
);
for (const game of shouldSeedOrNot) {
await this.pauseSeeding(game.id);
}
}
}
static async pauseSeeding(gameId: number) {