From d082110a20738c99d5020c503b7ba373a93a7906 Mon Sep 17 00:00:00 2001 From: aandrew-me Date: Fri, 25 Nov 2022 16:54:51 +0600 Subject: [PATCH] Support for playlist range --- assets/css/index.css | 7 ++++++- html/playlist.html | 12 ++++++++++++ src/playlist.js | 30 ++++++++++++++++++++++++++++++ translations/en.json | 3 ++- 4 files changed, 50 insertions(+), 2 deletions(-) diff --git a/assets/css/index.css b/assets/css/index.css index 9db9c16..ade72e1 100644 --- a/assets/css/index.css +++ b/assets/css/index.css @@ -259,6 +259,11 @@ input[type="checkbox"]{ top:4px; } +input[type=number]::-webkit-inner-spin-button, +input[type=number]::-webkit-outer-spin-button { + appearance: none; +} + .submitBtn { padding: 15px; border-radius: 10px; @@ -295,7 +300,7 @@ input[type="checkbox"]{ width: 100px; } -.time { +.time, .input { padding: 8px; border: none; outline: none; diff --git a/html/playlist.html b/html/playlist.html index 1225d6b..9c9030b 100644 --- a/html/playlist.html +++ b/html/playlist.html @@ -29,6 +29,9 @@ #audioBox{ display:none; } + #advancedMenu{ + display:none; + } @@ -93,6 +96,15 @@ + + + +
+ Playlist range + : + +
+

diff --git a/src/playlist.js b/src/playlist.js index 2fda10c..22f15cb 100644 --- a/src/playlist.js +++ b/src/playlist.js @@ -58,6 +58,18 @@ function download(type) { filenameFormat = localStorage.getItem("filenameFormat"); } + // Playlist download range + let playlistIndex = 1; + let playlistEnd = ""; + + if (getId("playlistIndex").value) { + playlistIndex = Number(getId("playlistIndex").value); + } + if (getId("playlistEnd").value) { + playlistEnd = Number(getId("playlistEnd").value); + } + console.log(`Range: ${playlistIndex}:${playlistEnd}`); + getId("list").innerHTML = ""; getId("playlistName").textContent = ""; @@ -100,6 +112,8 @@ function download(type) { "--yes-playlist", "-o", `"${path.join(downloadDir, foldernameFormat, filenameFormat)}"`, + "-I", + `"${playlistIndex}:${playlistEnd}"`, "--ffmpeg-location", ffmpeg, cookieArg, @@ -119,6 +133,8 @@ function download(type) { format, "-o", `"${path.join(downloadDir, foldernameFormat, filenameFormat)}"`, + "-I", + `"${playlistIndex}:${playlistEnd}"`, "--ffmpeg-location", ffmpeg, cookieArg, @@ -262,6 +278,20 @@ audioToggle.addEventListener("click", (event) => { getId("audioBox").style.display = "block"; }); +// More options + +let moreOptions = true; +getId("advancedToggle").addEventListener("click", () => { + if (moreOptions) { + getId("advancedMenu").style.display = "block"; + moreOptions = false; + } else { + getId("advancedMenu").style.display = "none"; + moreOptions = true; + } +}); + +// Menu getId("openDownloads").addEventListener("click", () => { openFolder(downloadDir); }); diff --git a/translations/en.json b/translations/en.json index 7403731..5ab4434 100644 --- a/translations/en.json +++ b/translations/en.json @@ -77,5 +77,6 @@ "Use configuration file":"Use configuration file", "Filename format for playlists":"Filename format for playlists", "Folder name format for playlists":"Folder name format for playlists", - "Reset to default":"Reset to default" + "Reset to default":"Reset to default", + "Playlist range":"Playlist range" }