only show music tags

This commit is contained in:
sakrecoer 2026-08-03 12:34:18 +02:00
parent 03ba865015
commit 29f6ca9691

View file

@ -188,22 +188,21 @@ function renderMusicTracks(tracks, containerId, randomize = false) {
selected.forEach(track => { selected.forEach(track => {
let title = '', url = '', image = '', artist = '', album = '', let title = '', url = '', image = '', artist = '', album = '',
trackNumber = '', duration = '', released = '', language = '', genreTags = [], alt = '', content = '';
tags = [], alt = '', content = '';
if (track.tags) { if (track.tags) {
track.tags.forEach(tag => { track.tags.forEach(tag => {
if (tag[0] === 'title') title = tag[1]; const key = tag[0];
else if (tag[0] === 'url') url = tag[1]; const value = tag[1];
else if (tag[0] === 'image') image = tag[1];
else if (tag[0] === 'artist') artist = tag[1]; if (key === 'title') title = value;
else if (tag[0] === 'album') album = tag[1]; else if (key === 'url') url = value;
else if (tag[0] === 'track_number') trackNumber = tag[1]; else if (key === 'image') image = value;
else if (tag[0] === 'duration') duration = tag[1]; else if (key === 'artist') artist = value;
else if (tag[0] === 'released') released = tag[1]; else if (key === 'album') album = value;
else if (tag[0] === 'language') language = tag[1]; // ONLY collect tags with key 't' (genre tags)
else if (tag[0] === 't') tags.push(tag[1]); else if (key === 't') genreTags.push(value);
else if (tag[0] === 'alt') alt = tag[1]; else if (key === 'alt') alt = value;
}); });
} }
content = track.content || ''; content = track.content || '';
@ -219,15 +218,12 @@ function renderMusicTracks(tracks, containerId, randomize = false) {
${album ? `<p class="music-album">${album}</p>` : ''} ${album ? `<p class="music-album">${album}</p>` : ''}
</div> </div>
${url ? `<audio controls preload="none"><source src="${url}" type="audio/mpeg">Your browser does not support the audio element.</audio>` : ''} ${url ? `<audio controls preload="none"><source src="${url}" type="audio/mpeg">Your browser does not support the audio element.</audio>` : ''}
<div class="music-details">
${trackNumber ? `<span class="track-number">Track ${trackNumber}</span>` : ''} ${genreTags.length > 0 ? `
${duration ? `<span class="duration">${duration}s</span>` : ''}
${released ? `<span class="released">${released}</span>` : ''}
${language ? `<span class="language">${language}</span>` : ''}
</div>
<div class="music-tags"> <div class="music-tags">
${tags.map(t => `<span class="tag"><span>${t}</span></span>`).join('')} ${genreTags.map(t => `<span class="tag"><span>${t}</span></span>`).join('')}
</div> </div>
` : ''}
${content ? ` ${content ? `
<button class="lyrics-toggle"><span>Show Info</span></button> <button class="lyrics-toggle"><span>Show Info</span></button>
<div class="lyrics" style="display: none;">${content.replace(/\n/g, '<br>')}</div> <div class="lyrics" style="display: none;">${content.replace(/\n/g, '<br>')}</div>