mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
fixes #520 - Support multiple artists per audio track
This commit is contained in:
parent
ee25e54186
commit
e6bb8d236f
3 changed files with 51 additions and 9 deletions
|
@ -238,8 +238,8 @@
|
||||||
$('#players', page).hide();
|
$('#players', page).hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((item.Type == "Audio" || item.Type == "MusicVideo") && item.Artists && item.Artists.length) {
|
if (item.Artists && item.Artists.length) {
|
||||||
$('#artist', page).show().html('Artist: <a class="textlink" href="itembynamedetails.html?context=music&artist=' + ApiClient.encodeName(item.Artists[0]) + '">' + item.Artists[0] + '</a>').trigger('create');
|
$('#artist', page).show().html(getArtistLinksHtml(item.Artists)).trigger('create');
|
||||||
} else {
|
} else {
|
||||||
$('#artist', page).hide();
|
$('#artist', page).hide();
|
||||||
}
|
}
|
||||||
|
@ -261,6 +261,30 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getArtistLinksHtml(artists) {
|
||||||
|
|
||||||
|
var html = [];
|
||||||
|
|
||||||
|
for (var i = 0, length = artists.length; i < length; i++) {
|
||||||
|
|
||||||
|
var artist = artists[i];
|
||||||
|
|
||||||
|
html.push('<a class="textlink" href="itembynamedetails.html?context=music&artist=' + ApiClient.encodeName(artist) + '">' + artist + '</a>');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
html = html.join(' / ');
|
||||||
|
|
||||||
|
if (artists.length == 1) {
|
||||||
|
return 'Artist: ' + html;
|
||||||
|
}
|
||||||
|
if (artists.length > 1) {
|
||||||
|
return 'Artists: ' + html;
|
||||||
|
}
|
||||||
|
|
||||||
|
return html;
|
||||||
|
}
|
||||||
|
|
||||||
function renderSoundtracks(page, item) {
|
function renderSoundtracks(page, item) {
|
||||||
|
|
||||||
if (item.Type == "MusicAlbum") {
|
if (item.Type == "MusicAlbum") {
|
||||||
|
|
|
@ -598,7 +598,7 @@
|
||||||
$('#txtAlbumArtist', page).val(item.AlbumArtist || "");
|
$('#txtAlbumArtist', page).val(item.AlbumArtist || "");
|
||||||
|
|
||||||
var artists = item.Artists || [];
|
var artists = item.Artists || [];
|
||||||
$('#txtArtist', page).val(artists.join(','));
|
$('#txtArtist', page).val(artists.join(';'));
|
||||||
|
|
||||||
var date;
|
var date;
|
||||||
|
|
||||||
|
@ -824,7 +824,7 @@
|
||||||
Players: $('#txtPlayers', form).val(),
|
Players: $('#txtPlayers', form).val(),
|
||||||
Album: $('#txtAlbum', form).val(),
|
Album: $('#txtAlbum', form).val(),
|
||||||
AlbumArtist: $('#txtAlbumArtist', form).val(),
|
AlbumArtist: $('#txtAlbumArtist', form).val(),
|
||||||
Artists: [$('#txtArtist', form).val()],
|
Artists: $('#txtArtist', form).val().split(';'),
|
||||||
Overview: $('#txtOverview', form).val(),
|
Overview: $('#txtOverview', form).val(),
|
||||||
Status: $('#selectStatus', form).val(),
|
Status: $('#selectStatus', form).val(),
|
||||||
AirDays: editableListViewValues($("#listAirDays", form)),
|
AirDays: editableListViewValues($("#listAirDays", form)),
|
||||||
|
|
|
@ -293,13 +293,14 @@
|
||||||
|
|
||||||
if (options.showArtist) {
|
if (options.showArtist) {
|
||||||
|
|
||||||
if (item.Artists && item.Artists.length && item.Artists[0]) {
|
if (item.Artists && item.Artists.length) {
|
||||||
|
|
||||||
var artist = item.Artists[0];
|
var artistLinksHtml = LibraryBrowser.getArtistLinksHtml(item.Artists);
|
||||||
|
|
||||||
html += '<td><a href="itembynamedetails.html?context=music&artist=' + ApiClient.encodeName(artist) + '">' + artist + '</a></td>';
|
html += '<td>' + artistLinksHtml + '</td>';
|
||||||
} else {
|
}
|
||||||
html += '<td>' + (artist || '') + '</td>';
|
else {
|
||||||
|
html += '<td></td>';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -319,6 +320,23 @@
|
||||||
return html;
|
return html;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
getArtistLinksHtml: function (artists) {
|
||||||
|
|
||||||
|
var html = [];
|
||||||
|
|
||||||
|
for (var i = 0, length = artists.length; i < length; i++) {
|
||||||
|
|
||||||
|
var artist = artists[i];
|
||||||
|
|
||||||
|
html.push('<a href="itembynamedetails.html?context=music&artist=' + ApiClient.encodeName(artist) + '">' + artist + '</a>');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
html = html.join(' / ');
|
||||||
|
|
||||||
|
return html;
|
||||||
|
},
|
||||||
|
|
||||||
showPlayMenu: function (positionTo, itemId, itemType, mediaType, resumePositionTicks) {
|
showPlayMenu: function (positionTo, itemId, itemType, mediaType, resumePositionTicks) {
|
||||||
|
|
||||||
var isPlaying = MediaPlayer.isPlaying();
|
var isPlaying = MediaPlayer.isPlaying();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue