1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

make live tv channels playable

This commit is contained in:
Luke Pulverenti 2013-12-29 13:53:56 -05:00
parent 18abc62bc9
commit 2137a2436f
5 changed files with 76 additions and 23 deletions

View file

@ -832,6 +832,10 @@ a.itemTag:hover {
background: rgba(82, 181, 75, .8);
}
.unplayedIndicator div:after {
background-color: transparent !important;
}
.itemProgress {
vertical-align: top;
font-size: 19px;

View file

@ -458,7 +458,10 @@
var html = LibraryBrowser.getPosterViewHtml({
items: result.Items,
useAverageAspectRatio: item.MediaType != "Game",
shape: item.Type == "MusicAlbum" ? "square" : "portrait"
shape: item.Type == "MusicAlbum" ? "square" : "portrait",
showParentTitle: item.Type == "MusicAlbum",
showTitle: item.Type == "MusicAlbum" || item.Type == "Game",
borderless: item.Type == "Game"
});
$('#similarContent', page).html(html);
@ -521,10 +524,12 @@
var sortBy = item.Type == "BoxSet" ? "ProductionYear,SortName" : "SortName";
var fields = "ItemCounts,DateCreated,AudioInfo,PrimaryImageAspectRatio";
var query = {
ParentId: item.Id,
SortBy: sortBy,
Fields: "ItemCounts,DateCreated,AudioInfo"
Fields: fields
};
var promise;
@ -533,7 +538,8 @@
promise = ApiClient.getSeasons(item.Id, {
userId: user.Id
userId: user.Id,
Fields: fields
});
}
else if (item.Type == "Season") {
@ -542,7 +548,8 @@
promise = ApiClient.getEpisodes(item.SeriesId, {
seasonId: item.Id,
userId: user.Id
userId: user.Id,
Fields: fields
});
}
@ -562,13 +569,34 @@
shape = "smallBackdrop";
}
var html = LibraryBrowser.getPosterDetailViewHtml({
items: result.Items,
useAverageAspectRatio: true,
shape: shape,
showParentName: false,
displayAsSpecial: item.Type == "Season" && item.IndexNumber
});
var html;
if (item.Type == "Series" || item.Type == "BoxSet") {
html = LibraryBrowser.getPosterViewHtml({
items: result.Items,
shape: "portrait",
useAverageAspectRatio: true,
showTitle: true
});
}
else if (item.Type == "Season") {
html = LibraryBrowser.getPosterViewHtml({
items: result.Items,
shape: "smallBackdrop",
useAverageAspectRatio: true,
showTitle: true,
displayAsSpecial: item.Type == "Season" && item.IndexNumber
});
}
else {
html = LibraryBrowser.getPosterDetailViewHtml({
items: result.Items,
useAverageAspectRatio: true,
shape: shape,
showParentName: false,
displayAsSpecial: item.Type == "Season" && item.IndexNumber
});
}
$('#childrenContent', page).html(html);

View file

@ -662,12 +662,12 @@
var html = "";
var primaryImageAspectRatio = options.useAverageAspectRatio ? LibraryBrowser.getAveragePrimaryImageAspectRatio(items) : null;
for (var i = 0, length = items.length; i < length; i++) {
var item = items[i];
var primaryImageAspectRatio = options.useAverageAspectRatio ? LibraryBrowser.getAveragePrimaryImageAspectRatio([item]) : null;
var futureDateText;
if (item.PremiereDate) {
@ -883,7 +883,7 @@
}
html += '</div>';
var name = LibraryBrowser.getPosterViewDisplayName(item);
var name = LibraryBrowser.getPosterViewDisplayName(item, options.displayAsSpecial);
if (!imgUrl && !options.showTitle) {
html += "<div class='posterItemDefaultText'>";
@ -1089,8 +1089,23 @@
getPlayedIndicatorHtml: function (item) {
if (item.RecursiveUnplayedItemCount) {
return '<div class="unplayedIndicator">' + item.RecursiveUnplayedItemCount + '</div>';
if (item.Type == "Series" || item.Type == "Season" || item.Type == "BoxSet") {
if (item.RecursiveUnplayedItemCount) {
return '<div class="unplayedIndicator">' + item.RecursiveUnplayedItemCount + '</div>';
}
}
if (item.PlayedPercentage == 100) {
return '<div class="unplayedIndicator"><div class="ui-icon-check ui-btn-icon-notext"></div></div>';
}
if (item.MediaType == "Video") {
var userData = item.UserData || {};
if (userData.Played) {
return '<div class="unplayedIndicator"><div class="ui-icon-check ui-btn-icon-notext"></div></div>';
}
}
return '';

View file

@ -271,7 +271,7 @@
$('#btnPlay', page).on('click', function () {
var userdata = currentItem.UserData || {};
LibraryBrowser.showPlayMenu(this, currentItem.Name, currentItem.Type, currentItem.MediaType, userdata.PlaybackPositionTicks);
LibraryBrowser.showPlayMenu(this, currentItem.Id, currentItem.Type, currentItem.MediaType, userdata.PlaybackPositionTicks);
});
$('#btnRemote', page).on('click', function () {

View file

@ -29,13 +29,19 @@
var checkSortOption = $('.radioSortBy:checked', page);
$('.viewSummary', page).html(LibraryBrowser.getViewSummaryHtml(query, checkSortOption)).trigger('create');
html += LibraryBrowser.getPosterViewHtml({
//html += LibraryBrowser.getPosterViewHtml({
// items: result.Items,
// useAverageAspectRatio: true,
// shape: "backdrop",
// showTitle: false,
// overlayText: false,
// context: 'tv'
//});
html += LibraryBrowser.getPosterDetailViewHtml({
items: result.Items,
useAverageAspectRatio: true,
shape: "backdrop",
showTitle: false,
overlayText: false,
context: 'tv'
context: "tv",
shape: "backdrop"
});
html += LibraryBrowser.getPagingHtml(query, result.TotalRecordCount);