Skip to content
This repository has been archived by the owner on Nov 3, 2021. It is now read-only.

Commit

Permalink
Bug 841977 - Show track number instead of index. Also disc number if …
Browse files Browse the repository at this point in the history
…relevant.
  • Loading branch information
hfiguiere committed Sep 11, 2014
1 parent 8a991d3 commit b96da07
Showing 1 changed file with 15 additions and 11 deletions.
26 changes: 15 additions & 11 deletions apps/music/js/music.js
Expand Up @@ -1180,7 +1180,11 @@ function createListElement(option, data, index, highlight) {

var indexSpan = document.createElement('span');
indexSpan.className = 'list-song-index';
indexSpan.textContent = index + 1;
var trackNum = data.metadata.tracknum;
if (data.metadata.discnum) {
trackNum = data.metadata.discnum + '.' + trackNum;
}
indexSpan.textContent = trackNum;

var titleSpan = document.createElement('span');
titleSpan.className = 'list-song-title';
Expand Down Expand Up @@ -1746,19 +1750,16 @@ var SubListView = {
function lv_enumerateAll(dataArray) {
var albumName;
var albumNameL10nId;
var maxDiscNum = 1;

if (option === 'album') {
dataArray.sort(function(e1, e2) {
if (e1.metadata.album == e2.metadata.album) {
if (e1.metadata.discnum == e2.metadata.discnum) {
if (e1.metadata.tracknum == e2.metadata.tracknum) {
return 0;
}
return e1.metadata.tracknum < e2.metadata.tracknum ? -1 : 1;
}
return e1.metadata.discnum < e2.metadata.discnum ? -1 : 1;
}
return e1.metadata.album < e2.metadata.album ? -1 : 1;
maxDiscNum = e1.metadata.discnum > maxDiscNum ?
e1.metadata.discnum : maxDiscNum;
maxDiscNum = e2.metadata.discnum > maxDiscNum ?
e2.metadata.discnum : maxDiscNum;
return (e1.metadata.discnum - e2.metadata.discnum) ||
(e1.metadata.tracknum - e2.metadata.tracknum);
});
}

Expand All @@ -1782,6 +1783,9 @@ var SubListView = {
SubListView.setAlbumSrc(data);

dataArray.forEach(function(songData) {
if (maxDiscNum == 1) {
delete songData.metadata.discnum;
}
SubListView.update(songData);
});

Expand Down

0 comments on commit b96da07

Please sign in to comment.