Fix missing progress bar for SABnzbd downloads
- Calculate progress from slot.mb and slot.mbleft instead of slot.percentage - Apply fix to both series and movie downloads in matchSabSlots - Add progress: 100 for history items in matchSabHistory (series and movie) - SABnzbd slot data doesn't have percentage field, so progress was undefined
This commit is contained in:
@@ -157,12 +157,17 @@ function matchSabSlots(slots, context) {
|
|||||||
const allTags = TagMatcher.extractAllTags(series.tags, sonarrTagMap);
|
const allTags = TagMatcher.extractAllTags(series.tags, sonarrTagMap);
|
||||||
const matchedUserTag = TagMatcher.extractUserTag(series.tags, sonarrTagMap, username);
|
const matchedUserTag = TagMatcher.extractUserTag(series.tags, sonarrTagMap, username);
|
||||||
if (showAll ? allTags.length > 0 : !!matchedUserTag) {
|
if (showAll ? allTags.length > 0 : !!matchedUserTag) {
|
||||||
|
// Calculate progress from SABnzbd slot data
|
||||||
|
const mbValue = slot.mb !== undefined && slot.mb !== null ? parseFloat(slot.mb) : 0;
|
||||||
|
const mbLeftValue = slot.mbleft !== undefined && slot.mbleft !== null ? parseFloat(slot.mbleft) : 0;
|
||||||
|
const progress = mbValue > 0 ? ((mbValue - mbLeftValue) / mbValue) * 100 : 0;
|
||||||
|
|
||||||
const dlObj = {
|
const dlObj = {
|
||||||
type: 'series',
|
type: 'series',
|
||||||
title: nzbName,
|
title: nzbName,
|
||||||
coverArt: DownloadAssembler.getCoverArt(series),
|
coverArt: DownloadAssembler.getCoverArt(series),
|
||||||
status: slotState.status,
|
status: slotState.status,
|
||||||
progress: slot.percentage,
|
progress: Math.round(progress),
|
||||||
mb: slot.mb,
|
mb: slot.mb,
|
||||||
mbmissing: slot.mbleft,
|
mbmissing: slot.mbleft,
|
||||||
size: Math.round(slot.mb * 1024 * 1024),
|
size: Math.round(slot.mb * 1024 * 1024),
|
||||||
@@ -202,12 +207,17 @@ function matchSabSlots(slots, context) {
|
|||||||
const allTags = TagMatcher.extractAllTags(movie.tags, radarrTagMap);
|
const allTags = TagMatcher.extractAllTags(movie.tags, radarrTagMap);
|
||||||
const matchedUserTag = TagMatcher.extractUserTag(movie.tags, radarrTagMap, username);
|
const matchedUserTag = TagMatcher.extractUserTag(movie.tags, radarrTagMap, username);
|
||||||
if (showAll ? allTags.length > 0 : !!matchedUserTag) {
|
if (showAll ? allTags.length > 0 : !!matchedUserTag) {
|
||||||
|
// Calculate progress from SABnzbd slot data
|
||||||
|
const mbValue = slot.mb !== undefined && slot.mb !== null ? parseFloat(slot.mb) : 0;
|
||||||
|
const mbLeftValue = slot.mbleft !== undefined && slot.mbleft !== null ? parseFloat(slot.mbleft) : 0;
|
||||||
|
const progress = mbValue > 0 ? ((mbValue - mbLeftValue) / mbValue) * 100 : 0;
|
||||||
|
|
||||||
const dlObj = {
|
const dlObj = {
|
||||||
type: 'movie',
|
type: 'movie',
|
||||||
title: nzbName,
|
title: nzbName,
|
||||||
coverArt: DownloadAssembler.getCoverArt(movie),
|
coverArt: DownloadAssembler.getCoverArt(movie),
|
||||||
status: slotState.status,
|
status: slotState.status,
|
||||||
progress: slot.percentage,
|
progress: Math.round(progress),
|
||||||
mb: slot.mb,
|
mb: slot.mb,
|
||||||
mbmissing: slot.mbleft,
|
mbmissing: slot.mbleft,
|
||||||
size: Math.round(slot.mb * 1024 * 1024),
|
size: Math.round(slot.mb * 1024 * 1024),
|
||||||
@@ -285,6 +295,7 @@ function matchSabHistory(slots, context) {
|
|||||||
title: nzbName,
|
title: nzbName,
|
||||||
coverArt: DownloadAssembler.getCoverArt(series),
|
coverArt: DownloadAssembler.getCoverArt(series),
|
||||||
status: slot.status,
|
status: slot.status,
|
||||||
|
progress: 100, // History items are completed
|
||||||
mb: slot.mb,
|
mb: slot.mb,
|
||||||
size: Math.round((slot.mb || 0) * 1024 * 1024),
|
size: Math.round((slot.mb || 0) * 1024 * 1024),
|
||||||
completedAt: slot.completed_time,
|
completedAt: slot.completed_time,
|
||||||
@@ -322,6 +333,7 @@ function matchSabHistory(slots, context) {
|
|||||||
title: nzbName,
|
title: nzbName,
|
||||||
coverArt: DownloadAssembler.getCoverArt(movie),
|
coverArt: DownloadAssembler.getCoverArt(movie),
|
||||||
status: slot.status,
|
status: slot.status,
|
||||||
|
progress: 100, // History items are completed
|
||||||
mb: slot.mb,
|
mb: slot.mb,
|
||||||
size: Math.round((slot.mb || 0) * 1024 * 1024),
|
size: Math.round((slot.mb || 0) * 1024 * 1024),
|
||||||
completedAt: slot.completed_time,
|
completedAt: slot.completed_time,
|
||||||
|
|||||||
Reference in New Issue
Block a user