added next up page

This commit is contained in:
Luke Pulverenti 2013-04-30 23:28:26 -04:00
parent 2d457fa05a
commit 73f76874bd
12 changed files with 80 additions and 64 deletions

View File

@ -43,7 +43,7 @@
} }
.detailTable tr:hover { .detailTable tr:hover {
background: #444; background: #555;
} }
.detailTable .imgUserItemRating { .detailTable .imgUserItemRating {

View File

@ -49,6 +49,7 @@
<div id="tvGenreTabs" class="itemTabs" style="display: none;"> <div id="tvGenreTabs" class="itemTabs" style="display: none;">
<div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true"> <div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true">
<a href="tvrecommended.html" data-role="button">Suggested</a> <a href="tvrecommended.html" data-role="button">Suggested</a>
<a href="tvnextup.html" data-role="button">Next Up</a>
<a href="tvshows.html" data-role="button">Shows</a> <a href="tvshows.html" data-role="button">Shows</a>
<a href="tvgenres.html" data-role="button" class="ui-btn-active">Genres</a> <a href="tvgenres.html" data-role="button" class="ui-btn-active">Genres</a>
<a href="tvpeople.html" data-role="button">Actors</a> <a href="tvpeople.html" data-role="button">Actors</a>
@ -58,6 +59,7 @@
<div id="tvPeopleTabs" class="itemTabs" style="display: none;"> <div id="tvPeopleTabs" class="itemTabs" style="display: none;">
<div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true"> <div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true">
<a href="tvrecommended.html" data-role="button">Suggested</a> <a href="tvrecommended.html" data-role="button">Suggested</a>
<a href="tvnextup.html" data-role="button">Next Up</a>
<a href="tvshows.html" data-role="button">Shows</a> <a href="tvshows.html" data-role="button">Shows</a>
<a href="tvgenres.html" data-role="button">Genres</a> <a href="tvgenres.html" data-role="button">Genres</a>
<a href="tvpeople.html" data-role="button" class="ui-btn-active">Actors</a> <a href="tvpeople.html" data-role="button" class="ui-btn-active">Actors</a>
@ -67,6 +69,7 @@
<div id="tvStudioTabs" class="itemTabs" style="display: none;"> <div id="tvStudioTabs" class="itemTabs" style="display: none;">
<div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true"> <div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true">
<a href="tvrecommended.html" data-role="button">Suggested</a> <a href="tvrecommended.html" data-role="button">Suggested</a>
<a href="tvnextup.html" data-role="button">Next Up</a>
<a href="tvshows.html" data-role="button">Shows</a> <a href="tvshows.html" data-role="button">Shows</a>
<a href="tvgenres.html" data-role="button">Genres</a> <a href="tvgenres.html" data-role="button">Genres</a>
<a href="tvpeople.html" data-role="button">Actors</a> <a href="tvpeople.html" data-role="button">Actors</a>

View File

@ -48,6 +48,7 @@
<div id="tvShowsTabs" class="itemTabs" style="display: none;"> <div id="tvShowsTabs" class="itemTabs" style="display: none;">
<div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true"> <div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true">
<a href="tvrecommended.html" data-role="button">Suggested</a> <a href="tvrecommended.html" data-role="button">Suggested</a>
<a href="tvnextup.html" data-role="button">Next Up</a>
<a href="tvshows.html" data-role="button" class="ui-btn-active">Shows</a> <a href="tvshows.html" data-role="button" class="ui-btn-active">Shows</a>
<a href="tvgenres.html" data-role="button">Genres</a> <a href="tvgenres.html" data-role="button">Genres</a>
<a href="tvpeople.html" data-role="button">Actors</a> <a href="tvpeople.html" data-role="button">Actors</a>
@ -108,8 +109,8 @@
<div class="itemDetailBlock"> <div class="itemDetailBlock">
<h1 id="albumArtist" class="detailPageName hide"></h1> <h1 id="grandParentName" class="detailPageName hide"></h1>
<h1 id="seriesName" class="detailPageName hide"></h1> <h1 id="parentName" class="detailPageName hide"></h1>
<h1 id="itemName" class="detailPageName"></h1> <h1 id="itemName" class="detailPageName"></h1>
<p id="itemMiscInfo" class="itemMiscInfo"></p> <p id="itemMiscInfo" class="itemMiscInfo"></p>

View File

@ -19,7 +19,7 @@
if (item.IndexNumber != null) { if (item.IndexNumber != null) {
name = item.IndexNumber + " - " + name; name = item.IndexNumber + " - " + name;
} }
if (item.ParentIndexNumber != null) { if (item.ParentIndexNumber != null && item.Type != "Episode") {
name = item.ParentIndexNumber + "." + name; name = item.ParentIndexNumber + "." + name;
} }
@ -30,30 +30,41 @@
$('#itemName', page).html(name); $('#itemName', page).html(name);
if (item.AlbumArtist && item.Type == "Audio") { if (item.AlbumArtist && item.Type == "Audio") {
$('#albumArtist', page).html('<a class="detailPageParentLink" href="itembynamedetails.html?context=music&artist=' + ApiClient.encodeName(item.AlbumArtist) + '">' + item.AlbumArtist + '</a>').show().trigger('create'); $('#grandParentName', page).html('<a class="detailPageParentLink" href="itembynamedetails.html?context=music&artist=' + ApiClient.encodeName(item.AlbumArtist) + '">' + item.AlbumArtist + '</a>').show().trigger('create');
}
else if (item.AlbumArtist && item.Type == "MusicAlbum") {
$('#grandParentName', page).html('<a class="detailPageParentLink" href="itembynamedetails.html?context=music&artist=' + ApiClient.encodeName(item.AlbumArtist) + '">' + item.AlbumArtist + '</a>').show().trigger('create');
}
else if (item.SeriesName && item.Type == "Episode") {
$('#grandParentName', page).html('<a class="detailPageParentLink" href="itemdetails.html?id=' + item.SeriesId + '">' + item.SeriesName + '</a>').show().trigger('create');
} }
else { else {
$('#albumArtist', page).hide(); $('#grandParentName', page).hide();
} }
if (item.SeriesName) { if (item.SeriesName && item.Type == "Season") {
$('#seriesName', page).html('<a class="detailPageParentLink" href="itemdetails.html?id=' + item.SeriesId + '">' + item.SeriesName + '</a>').show().trigger('create'); $('#parentName', page).html('<a class="detailPageParentLink" href="itemdetails.html?id=' + item.SeriesId + '">' + item.SeriesName + '</a>').show().trigger('create');
}
else if (item.ParentIndexNumber && item.Type == "Episode") {
$('#parentName', page).html('<a class="detailPageParentLink" href="itemdetails.html?id=' + item.ParentId + '">Season ' + item.ParentIndexNumber + '</a>').show().trigger('create');
} }
else if (item.Album && item.Type == "Audio" && item.ParentId) { else if (item.Album && item.Type == "Audio" && item.ParentId) {
$('#seriesName', page).html('<a class="detailPageParentLink" href="itemdetails.html?id=' + item.ParentId + '">' + item.Album + '</a>').show().trigger('create'); $('#parentName', page).html('<a class="detailPageParentLink" href="itemdetails.html?id=' + item.ParentId + '">' + item.Album + '</a>').show().trigger('create');
} }
else if (item.AlbumArtist && item.Type == "MusicAlbum") { else if (item.AlbumArtist && item.Type == "MusicAlbum") {
$('#albumArtist', page).html('<a class="detailPageParentLink" href="itembynamedetails.html?context=music&artist=' + ApiClient.encodeName(item.AlbumArtist) + '">' + item.AlbumArtist + '</a>').show().trigger('create'); $('#grandParentName', page).html('<a class="detailPageParentLink" href="itembynamedetails.html?context=music&artist=' + ApiClient.encodeName(item.AlbumArtist) + '">' + item.AlbumArtist + '</a>').show().trigger('create');
} }
else if (item.Album) { else if (item.Album) {
$('#seriesName', page).html(item.Album).show(); $('#parentName', page).html(item.Album).show();
} }
else { else {
$('#seriesName', page).hide(); $('#parentName', page).hide();
} }
var context = getContext(item); var context = getContext(item);
@ -68,7 +79,7 @@
$('#playButtonShadow', page).hide(); $('#playButtonShadow', page).hide();
} }
$(".autoNumeric").autoNumeric('init'); $(".autoNumeric").autoNumeric('init');
Dashboard.hideLoadingMsg(); Dashboard.hideLoadingMsg();
}); });

View File

@ -3,7 +3,7 @@
// The base query options // The base query options
var query = { var query = {
SortBy: "Artist,Album,SortName", SortBy: "Album,SortName",
SortOrder: "Ascending", SortOrder: "Ascending",
IncludeItemTypes: "Audio", IncludeItemTypes: "Audio",
Recursive: true, Recursive: true,

View File

@ -1,64 +1,63 @@
(function ($, document) { (function ($, document) {
$(document).on('pagebeforeshow', "#tvRecommendedPage", function () { $(document).on('pagebeforeshow', "#tvRecommendedPage", function () {
var page = this; var page = this;
var options = { var options = {
SortBy: "DateCreated", SortBy: "DateCreated",
SortOrder: "Descending", SortOrder: "Descending",
IncludeItemTypes: "Episode", IncludeItemTypes: "Episode",
Limit: 6, Limit: 6,
Recursive: true, Recursive: true,
Fields: "PrimaryImageAspectRatio,SeriesInfo", Fields: "PrimaryImageAspectRatio,SeriesInfo",
Filters: "IsUnplayed" Filters: "IsUnplayed"
}; };
ApiClient.getItems(Dashboard.getCurrentUserId(), options).done(function (result) { ApiClient.getItems(Dashboard.getCurrentUserId(), options).done(function (result) {
$('#recentlyAddedItems', page).html(LibraryBrowser.getPosterViewHtml({ $('#recentlyAddedItems', page).html(LibraryBrowser.getPosterViewHtml({
items: result.Items, items: result.Items,
useAverageAspectRatio: true, useAverageAspectRatio: true,
showNewIndicator: false, showNewIndicator: false,
shape: "backdrop", shape: "backdrop",
showTitle: true, showTitle: true,
showParentTitle: true showParentTitle: true
})); }));
}); });
options = {
options = { SortBy: "DatePlayed",
SortOrder: "Descending",
IncludeItemTypes: "Episode",
Filters: "IsResumable",
Limit: 6,
Recursive: true,
Fields: "PrimaryImageAspectRatio,SeriesInfo,DateCreated"
};
SortBy: "DatePlayed", ApiClient.getItems(Dashboard.getCurrentUserId(), options).done(function (result) {
SortOrder: "Descending",
IncludeItemTypes: "Episode",
Filters: "IsResumable",
Limit: 6,
Recursive: true,
Fields: "PrimaryImageAspectRatio,SeriesInfo,DateCreated"
};
ApiClient.getItems(Dashboard.getCurrentUserId(), options).done(function (result) { if (result.Items.length) {
$('#resumableSection', page).show();
} else {
$('#resumableSection', page).hide();
}
if (result.Items.length) { $('#resumableItems', page).html(LibraryBrowser.getPosterViewHtml({
$('#resumableSection', page).show(); items: result.Items,
} else { useAverageAspectRatio: true,
$('#resumableSection', page).hide(); shape: "backdrop",
} showTitle: true,
showParentTitle: true
}));
$('#resumableItems', page).html(LibraryBrowser.getPosterViewHtml({ });
items: result.Items,
useAverageAspectRatio: true,
shape: "backdrop",
showTitle: true,
showParentTitle: true
}));
}); });
});
})(jQuery, document); })(jQuery, document);

View File

@ -33,10 +33,7 @@
<strong>Sort By:</strong> <strong>Sort By:</strong>
</legend> </legend>
<input class="radioSortBy" data-theme="c" type="radio" name="radioSortBy" id="radioArtistAlbumSortName" value="on" checked="checked" data-sortby="Artist,Album,SortName" data-mini="true"> <input class="radioSortBy" data-theme="c" type="radio" name="radioSortBy" id="radioAlbum" value="on" checked="checked" data-sortby="Album,SortName" data-mini="true">
<label for="radioArtistAlbumSortName">Artist, Album, Track</label>
<input class="radioSortBy" data-theme="c" type="radio" name="radioSortBy" id="radioAlbum" value="on" checked="checked" data-sortby="Album" data-mini="true">
<label for="radioAlbum">Album</label> <label for="radioAlbum">Album</label>
<input class="radioSortBy" data-theme="c" type="radio" name="radioSortBy" id="radioArtist" value="on" checked="checked" data-sortby="Artist" data-mini="true"> <input class="radioSortBy" data-theme="c" type="radio" name="radioSortBy" id="radioArtist" value="on" checked="checked" data-sortby="Artist" data-mini="true">

View File

@ -10,6 +10,7 @@
<div data-role="content"> <div data-role="content">
<div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true"> <div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true">
<a href="tvrecommended.html" data-role="button">Suggested</a> <a href="tvrecommended.html" data-role="button">Suggested</a>
<a href="tvnextup.html" data-role="button">Next Up</a>
<a href="tvshows.html" data-role="button">Shows</a> <a href="tvshows.html" data-role="button">Shows</a>
<a href="tvgenres.html" data-role="button" class="ui-btn-active">Genres</a> <a href="tvgenres.html" data-role="button" class="ui-btn-active">Genres</a>
<a href="tvpeople.html" data-role="button">Actors</a> <a href="tvpeople.html" data-role="button">Actors</a>

View File

@ -10,6 +10,7 @@
<div data-role="content"> <div data-role="content">
<div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true"> <div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true">
<a href="tvrecommended.html" data-role="button">Suggested</a> <a href="tvrecommended.html" data-role="button">Suggested</a>
<a href="tvnextup.html" data-role="button">Next Up</a>
<a href="tvshows.html" data-role="button">Shows</a> <a href="tvshows.html" data-role="button">Shows</a>
<a href="tvgenres.html" data-role="button">Genres</a> <a href="tvgenres.html" data-role="button">Genres</a>
<a href="tvpeople.html" data-role="button" class="ui-btn-active">Actors</a> <a href="tvpeople.html" data-role="button" class="ui-btn-active">Actors</a>

View File

@ -10,6 +10,7 @@
<div data-role="content"> <div data-role="content">
<div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true"> <div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true">
<a href="tvrecommended.html" data-role="button" class="ui-btn-active">Suggested</a> <a href="tvrecommended.html" data-role="button" class="ui-btn-active">Suggested</a>
<a href="tvnextup.html" data-role="button">Next Up</a>
<a href="tvshows.html" data-role="button">Shows</a> <a href="tvshows.html" data-role="button">Shows</a>
<a href="tvgenres.html" data-role="button">Genres</a> <a href="tvgenres.html" data-role="button">Genres</a>
<a href="tvpeople.html" data-role="button">Actors</a> <a href="tvpeople.html" data-role="button">Actors</a>

View File

@ -10,6 +10,7 @@
<div data-role="content"> <div data-role="content">
<div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true"> <div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true">
<a href="tvrecommended.html" data-role="button">Suggested</a> <a href="tvrecommended.html" data-role="button">Suggested</a>
<a href="tvnextup.html" data-role="button">Next Up</a>
<a href="tvshows.html" data-role="button" class="ui-btn-active">Shows</a> <a href="tvshows.html" data-role="button" class="ui-btn-active">Shows</a>
<a href="tvgenres.html" data-role="button">Genres</a> <a href="tvgenres.html" data-role="button">Genres</a>
<a href="tvpeople.html" data-role="button">Actors</a> <a href="tvpeople.html" data-role="button">Actors</a>

View File

@ -10,6 +10,7 @@
<div data-role="content"> <div data-role="content">
<div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true"> <div data-role="controlgroup" data-type="horizontal" class="libraryViewNav" data-mini="true">
<a href="tvrecommended.html" data-role="button">Suggested</a> <a href="tvrecommended.html" data-role="button">Suggested</a>
<a href="tvnextup.html" data-role="button">Next Up</a>
<a href="tvshows.html" data-role="button">Shows</a> <a href="tvshows.html" data-role="button">Shows</a>
<a href="tvgenres.html" data-role="button">Genres</a> <a href="tvgenres.html" data-role="button">Genres</a>
<a href="tvpeople.html" data-role="button">Actors</a> <a href="tvpeople.html" data-role="button">Actors</a>