Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1c43385484 | ||
|
|
d2d21258d4 | ||
|
|
3847ba1c58 | ||
|
|
3a65a4bb39 | ||
|
|
6ab9b4ad1f |
No files matched your search
@@ -1,5 +1,12 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## [3.9.2](https://github.com/Masutayunikon/FanKarr/compare/v3.9.1...v3.9.2) (2026-04-16)
|
||||||
|
|
||||||
|
|
||||||
|
### Bug Fixes
|
||||||
|
|
||||||
|
* le bouton "tous télécharger" ne s'affiche plus si la series de contient que des integrales comme torrent ([d21270a](https://github.com/Masutayunikon/FanKarr/commit/d21270ae802ee43242365331922393b5cbf689fa))
|
||||||
|
|
||||||
## [3.9.1](https://github.com/Masutayunikon/FanKarr/compare/v3.9.0...v3.9.1) (2026-04-16)
|
## [3.9.1](https://github.com/Masutayunikon/FanKarr/compare/v3.9.0...v3.9.1) (2026-04-16)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+19
-1
@@ -19,7 +19,7 @@
|
|||||||
:serie="data.serie"
|
:serie="data.serie"
|
||||||
:torrents-integrale="data.torrents_integrale"
|
:torrents-integrale="data.torrents_integrale"
|
||||||
:organized-by-episode="organizedByEpisode"
|
:organized-by-episode="organizedByEpisode"
|
||||||
:has-downloadable-torrents="hasDownloadableTorrents"
|
:has-downloadable-torrents="hasNonIntegraleDownloadables"
|
||||||
:downloading-all="downloadingAll"
|
:downloading-all="downloadingAll"
|
||||||
:active-torrents="activeTorrents"
|
:active-torrents="activeTorrents"
|
||||||
:downloading="downloading"
|
:downloading="downloading"
|
||||||
@@ -181,6 +181,24 @@ function collectDownloadables() {
|
|||||||
|
|
||||||
const hasDownloadableTorrents = computed(() => collectDownloadables().length > 0)
|
const hasDownloadableTorrents = computed(() => collectDownloadables().length > 0)
|
||||||
|
|
||||||
|
// "Tout télécharger" ne s'affiche que s'il y a des torrents saison/épisode à lancer
|
||||||
|
// (les intégrales ont déjà leurs propres boutons dédiés dans le hero)
|
||||||
|
const hasNonIntegraleDownloadables = computed(() => {
|
||||||
|
if (!data.value) return false
|
||||||
|
const covered = new Set<number>()
|
||||||
|
data.value.torrents_integrale.forEach((t: any, i: number) => {
|
||||||
|
if (!isAlreadyQueued(t) && !isDownloaded(`integrale-${i}`))
|
||||||
|
for (const season of data.value!.seasons) for (const ep of season.episodes) covered.add(ep.id)
|
||||||
|
})
|
||||||
|
for (const season of data.value.seasons) {
|
||||||
|
if (season.torrent && !isAlreadyQueued(season.torrent) && !isDownloaded(`season-${season.id}`) && season.organized_state !== 'complete') return true
|
||||||
|
for (const ep of season.episodes) {
|
||||||
|
if (ep.torrent && ep.available && !ep.organized && !isAlreadyQueued(ep.torrent) && !isDownloaded(`ep-${ep.id}`) && !covered.has(ep.id)) return true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
})
|
||||||
|
|
||||||
async function downloadAll() {
|
async function downloadAll() {
|
||||||
downloadingAll.value = true
|
downloadingAll.value = true
|
||||||
const torrents = collectDownloadables()
|
const torrents = collectDownloadables()
|
||||||
|
|||||||
+1
-1
@@ -1 +1 @@
|
|||||||
3.9.1
|
3.9.2
|
||||||
Reference in new issue
Block a user