From df02acb97f0a042bd9e63528e280af228d8044c9 Mon Sep 17 00:00:00 2001 From: MasterAcnolo <68693319+MasterAcnolo@users.noreply.github.com> Date: Thu, 3 Jul 2025 18:28:56 +0200 Subject: [PATCH] Notification + Open On CLICK --- .gitignore | 1 + build/confirm-icon.png | Bin 0 -> 8965 bytes package.json | 6 ++++++ server/routes/download.js | 21 ++++++++++++++++++++- 4 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 build/confirm-icon.png diff --git a/.gitignore b/.gitignore index d602921..47a88c4 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,5 @@ /downloads /dist logs/*.json +logs/*.log /out \ No newline at end of file diff --git a/build/confirm-icon.png b/build/confirm-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..f01fac29db26d4eba210f94c1c399db5e26473c9 GIT binary patch literal 8965 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 { child.on("close", (code) => { logger.info(`yt-dlp terminé avec code de sortie : ${code}`); if (code === 0) { + + const iconPath = path.join(process.resourcesPath, "confirm-icon.png"); // la sécurité pour toutes les machines + + console.log("Icon path pour la notif :", iconPath); + + const notif = new Notification({ + title: "Freedom Loader", + body: "Ton téléchargement est terminé, clique ici pour l'ouvrir.", + icon: iconPath, + }); + + notif.on("click", () => { + console.log("Notification cliquée !"); + //Pour pouvoir ouvrir le dossier de la vidéo + const { shell } = require("electron"); + shell.openPath(requestedOutputFolder); + }); + + notif.show(); res.send("✅ Téléchargement terminé !"); } else { res.status(500).send(`❌ yt-dlp a échoué avec le code : ${code}`);