diff --git a/server/controllers/LibraryController.js b/server/controllers/LibraryController.js index 99e0d563..1650d566 100644 --- a/server/controllers/LibraryController.js +++ b/server/controllers/LibraryController.js @@ -135,12 +135,18 @@ class LibraryController { if (payload.sortBy) { var orderByNumber = payload.sortBy === 'book.volumeNumber' var direction = payload.sortDesc ? 'desc' : 'asc' + // if (req.query.sort === 'size') { + // console.warn('1SORTING BY SIZE', audiobooks[0]) + // } audiobooks = sort(audiobooks)[direction]((ab) => { // Supports dot notation strings i.e. "book.title" var value = payload.sortBy.split('.').reduce((a, b) => a[b], ab) if (orderByNumber && !isNaN(value)) return Number(value) return value }) + // if (req.query.sort === 'size') { + // console.warn('2SORTING BY SIZE', audiobooks[0]) + // } } if (payload.limit) { diff --git a/server/objects/Audiobook.js b/server/objects/Audiobook.js index f3b4a6f5..5fbfa8ab 100644 --- a/server/objects/Audiobook.js +++ b/server/objects/Audiobook.js @@ -100,24 +100,24 @@ class Audiobook { return this.book ? this.book.genres || [] : [] } - get totalDuration() { + get duration() { var total = 0 this.tracks.forEach((track) => total += track.duration) return total } - get totalSize() { + get size() { var total = 0 this.tracks.forEach((track) => total += track.size) return total } get sizePretty() { - return bytesPretty(this.totalSize) + return bytesPretty(this.size) } get durationPretty() { - return elapsedPretty(this.totalDuration) + return elapsedPretty(this.duration) } get invalidParts() { @@ -206,8 +206,8 @@ class Audiobook { fullPath: this.fullPath, addedAt: this.addedAt, lastUpdate: this.lastUpdate, - duration: this.totalDuration, - size: this.totalSize, + duration: this.duration, + size: this.size, ebooks: this.ebooks.map(ebook => ebook.toJSON()), numEbooks: this.ebooks.length, numTracks: this.tracks.length, @@ -229,9 +229,9 @@ class Audiobook { fullPath: this.fullPath, addedAt: this.addedAt, lastUpdate: this.lastUpdate, - duration: this.totalDuration, + duration: this.duration, durationPretty: this.durationPretty, - size: this.totalSize, + size: this.size, sizePretty: this.sizePretty, missingParts: this.missingParts, invalidParts: this.invalidParts, diff --git a/server/objects/Stream.js b/server/objects/Stream.js index 9be1ff0e..b05cd18e 100644 --- a/server/objects/Stream.js +++ b/server/objects/Stream.js @@ -55,7 +55,7 @@ class Stream extends EventEmitter { } get totalDuration() { - return this.audiobook.totalDuration + return this.audiobook.duration } get tracksAudioFileType() { diff --git a/server/utils/libraryHelpers.js b/server/utils/libraryHelpers.js index 4ea7252b..32cb724f 100644 --- a/server/utils/libraryHelpers.js +++ b/server/utils/libraryHelpers.js @@ -166,7 +166,7 @@ module.exports = { getAudiobooksTotalDuration(audiobooks) { var totalDuration = 0 audiobooks.forEach((ab) => { - totalDuration += ab.totalDuration + totalDuration += ab.duration }) return totalDuration }, @@ -174,7 +174,7 @@ module.exports = { getAudiobooksTotalSize(audiobooks) { var totalSize = 0 audiobooks.forEach((ab) => { - totalSize += ab.totalSize + totalSize += ab.size }) return totalSize },