This commit is contained in:
MasterAcnolo
2025-11-20 08:32:38 +01:00
parent 4e0fe29c20
commit 87545d77b4
6 changed files with 21 additions and 22 deletions

View File

@@ -6,7 +6,6 @@
},
"editor.suggestOnTriggerCharacters": false,
"editor.parameterHints.enabled": false,
"editor.hover.enabled": false,
"editor.codeLens": false,
"editor.lightbulb.enabled": "off",
"editor.inlineSuggest.enabled": false,

View File

@@ -40,21 +40,21 @@
Audio seulement (MP3)
</label>
<select name="quality">
<option value="best">Meilleure qualité</option>
<option value="medium">Qualité moyenne</option>
<option value="worst">Qualité minimale</option>
<option value="best">Best Quality</option>
<option value="medium">Medium Quality</option>
<option value="worst">Lowest Quality</option>
<option value="1080">1080p</option>
<option value="720">720p</option>
<option value="480">480p</option>
</select>
<button type="submit" onclick="startProgress()">Télécharger</button>
<button type="submit" onclick="startProgress()">Download</button>
</form>
</div>
<div class="download-path">
Sera enregistré dans <span id="savePath"></span>
<button id="changePath">Modifier</button>
Will be save on <span id="savePath"></span>
<button id="changePath">Edit</button>
</div>
<div id="downloadProgressWrapper">

View File

@@ -4,7 +4,7 @@ const themes = {
light: { label: "Clair", subtitle: "Qui aime ce thème ?" },
neon: { label: "Néon", subtitle: "How was your day ?"},
nf: { label: "NF", subtitle: "You call it music, i call it my Therapist" },
songbird: { label: "Songbird", subtitle: "From Her to Eternity" },
songbird: { label: "Songbird", subtitle: "From Her to Eternity" },
drift: { label: "Drift", subtitle: "Si la route t'appelle, contre appel" },
fanatic: { label: "Fanatic", subtitle: "Always Fnatic !" },
chirac: { label: "Chirac", subtitle: "J'aime les pommes" },

View File

@@ -18,11 +18,11 @@ async function fetchVideoInfo(url) {
if (!res.ok) return { error: `An Error occured when fetching info` };
const data = await res.json();
if (!data) return { error: "Données manquantes" };
if (!data) return { error: "Data is Missing" };
return data;
} catch (e) {
return { error: "Erreur réseau ou JSON" };
return { error: "Network or JSON Issue" };
}
}
@@ -71,8 +71,8 @@ document.addEventListener("DOMContentLoaded", () => {
if (data.type === "playlist") {
infoDiv.classList.add("playlist-mode");
infoDiv.innerHTML = `
<h3 style="color:var(--video-info-heading-color);"><strong>Playlist tectée: ${data.title}</strong></h3>
<h3 style="color:var(--video-info-heading-color);"><strong>Nombre de vidéos: ${data.count}</strong></h3>
<h3 style="color:var(--video-info-heading-color);"><strong>Playlist Detected: ${data.title}</strong></h3>
<h3 style="color:var(--video-info-heading-color);"><strong>Video Count: ${data.count}</strong></h3>
<p><strong>Channel :</strong> ${data.channel || "Unknown"}</p>
<div id="playlistVideos"></div>
`;
@@ -89,7 +89,7 @@ document.addEventListener("DOMContentLoaded", () => {
<div style="margin-bottom:12px;">
<img src="${v.thumbnail}" width="160" alt="Thumbnail">
<p><strong>${v.title}</strong></p>
<p>Durée : ${durationStr}</p>
<p>Duration : ${durationStr}</p>
<p><a href="${videoUrl}" target="_blank">URL</a>
<button class="copy-btn" data-url="${videoUrl}">📋</button>
</p>
@@ -152,7 +152,7 @@ document.addEventListener("DOMContentLoaded", () => {
// ---------- VIDEO NORMALE ----------
const durationStr = data.duration
? `${Math.floor(data.duration/60)}m ${(data.duration%60).toString().padStart(2,"0")}s`
: "Inconnue";
: "Unknown";
const sizeStr = formatSize(data.filesize_approx);
const readableDate = formatDate(data.upload_date);
@@ -162,15 +162,15 @@ document.addEventListener("DOMContentLoaded", () => {
<h3>${data.title}</h3>
<img src="${data.thumbnail}" width="320" alt="Thumbnail">
<ul>
<li><strong>Durée :</strong> ${durationStr}</li>
<li><strong>Duration :</strong> ${durationStr}</li>
<li><strong>Uploader :</strong> ${data.uploader || "Inconnu"}</li>
<li><strong>Date dupload :</strong> ${readableDate}</li>
<li><strong>Vues :</strong> ${data.view_count?.toLocaleString() || "?"}</li>
<li><strong>Upload Date :</strong> ${readableDate}</li>
<li><strong>Views :</strong> ${data.view_count?.toLocaleString() || "?"}</li>
<li><strong>Likes :</strong> ${data.like_count?.toLocaleString() || "?"}</li>
<li><strong>URL :</strong> <a href="${data.webpage_url}" target="_blank">${data.webpage_url}</a></li>
<li><strong>Channel :</strong> <a href="${data.channel_url}" target="_blank">${data.channel_url}</a></li>
<li><strong>Taille estimée :</strong> ${sizeStr}</li>
<li><strong>Catégories :</strong> ${categories}</li>
<li><strong>Estimed Size :</strong> ${sizeStr}</li>
<li><strong>Category :</strong> ${categories}</li>
</ul>
`;

View File

@@ -17,10 +17,10 @@ async function infoController(req, res){
logger.info(`/Info Request receive by the Info Controller. URL: ${url}`);
if (url.includes("?list")) {
logger.info("Type de contenu: Playlist")
logger.info("Estimated Data Type: Playlist")
} else{
logger.info("Type de contenu: Vidéo")
logger.info("Estimated Data Type: Video")
}
try {

View File

@@ -6,7 +6,7 @@ const notify = require("./notify")
function getUserBrowser() {
const userProfile = os.homedir();
// Liste des navigateurs supportés par yt-dlp
// Liste des navigateurs supportés par yt-dlp (Actuellement je peux que garantir Firefox, Désolé)
const browsers = [
{ name: "firefox", path: path.join(userProfile, "AppData", "Roaming", "Mozilla", "Firefox", "Profiles") },
// { name: "chrome", path: path.join(userProfile, "AppData", "Local", "Google", "Chrome", "User Data", "Default") },