mirror of
https://github.com/jellyfin/jellyfin-web.git
synced 2024-11-17 19:08:18 -07:00
update bravia profiles
This commit is contained in:
parent
973b43989d
commit
13e18ba442
@ -7,8 +7,8 @@
|
||||
<div id="channelItemsPage" data-role="page" class="page libraryPage channelsPage" data-contextname="${HeaderChannels}" data-require="scripts/channelitems">
|
||||
|
||||
<div class="libraryViewNav scopedLibraryViewNav">
|
||||
<a href="channelslatest.html" class="latestChannelItemsTab">${TabLatest}</a>
|
||||
<a href="channels.html" class="ui-btn-active">${TabChannels}</a>
|
||||
<a href="channelslatest.html" class="latestChannelItemsTab"><i class="material-icons">new_releases</i>${TabLatest}</a>
|
||||
<a href="channels.html" class="ui-btn-active"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
</div>
|
||||
|
||||
<div class="channelHeader"></div>
|
||||
|
@ -7,8 +7,8 @@
|
||||
<div id="channelsPage" data-role="page" class="page libraryPage channelsPage" data-contextname="${HeaderChannels}" data-require="scripts/channels">
|
||||
|
||||
<div class="libraryViewNav scopedLibraryViewNav">
|
||||
<a href="channelslatest.html" class="latestChannelItemsTab">${TabLatest}</a>
|
||||
<a href="#" class="ui-btn-active">${TabChannels}</a>
|
||||
<a href="channelslatest.html" class="latestChannelItemsTab"><i class="material-icons">new_releases</i>${TabLatest}</a>
|
||||
<a href="#" class="ui-btn-active"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
</div>
|
||||
|
||||
<div data-role="content">
|
||||
|
@ -9,8 +9,8 @@
|
||||
<link rel="import" href="thirdparty/paper-button/paper-button.html">
|
||||
|
||||
<div class="libraryViewNav scopedLibraryViewNav">
|
||||
<a href="#" class="ui-btn-active latestChannelItemsTab">${TabLatest}</a>
|
||||
<a href="channels.html">${TabChannels}</a>
|
||||
<a href="#" class="ui-btn-active latestChannelItemsTab"><i class="material-icons">new_releases</i>${TabLatest}</a>
|
||||
<a href="channels.html"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
</div>
|
||||
|
||||
<div data-role="content">
|
||||
|
@ -1150,6 +1150,10 @@ span.itemCommunityRating:not(:empty) + .userDataIcons {
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.bottomSecondaryNav .alphabetPicker{
|
||||
bottom: 55px;
|
||||
}
|
||||
|
||||
.alphabetPicker a {
|
||||
display: block;
|
||||
text-decoration: none;
|
||||
@ -1199,7 +1203,7 @@ span.itemCommunityRating:not(:empty) + .userDataIcons {
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
@media all and (min-height: 500px) {
|
||||
@media all and (min-height: 520px) {
|
||||
|
||||
.alphabetPicker {
|
||||
display: block;
|
||||
@ -1217,7 +1221,35 @@ span.itemCommunityRating:not(:empty) + .userDataIcons {
|
||||
}
|
||||
}
|
||||
|
||||
@media all and (min-height: 800px) {
|
||||
@media all and (min-height: 600px) {
|
||||
|
||||
.alphabetPicker a {
|
||||
padding: 2px 0;
|
||||
}
|
||||
}
|
||||
|
||||
@media all and (min-height: 650px) {
|
||||
|
||||
.alphabetPicker a {
|
||||
padding: 3px 0;
|
||||
}
|
||||
}
|
||||
|
||||
@media all and (min-height: 700px) {
|
||||
|
||||
.alphabetPicker a {
|
||||
padding: 4px 0;
|
||||
}
|
||||
}
|
||||
|
||||
@media all and (min-height: 750px) {
|
||||
|
||||
.alphabetPicker a {
|
||||
padding: 5px 0;
|
||||
}
|
||||
}
|
||||
|
||||
@media all and (min-height: 750px) {
|
||||
|
||||
.alphabetPicker a {
|
||||
padding: 5px 0;
|
||||
@ -1546,10 +1578,6 @@ span.itemCommunityRating:not(:empty) + .userDataIcons {
|
||||
}
|
||||
}
|
||||
|
||||
.latestChannelItemsDisabled .latestChannelItemsTab {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.studioTabDisabled .tvStudiosTab, .studioTabDisabled .movieStudiosTab {
|
||||
display: none !important;
|
||||
}
|
||||
@ -1562,14 +1590,6 @@ span.itemCommunityRating:not(:empty) + .userDataIcons {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.musicSongsTabDisabled .musicSongsTab {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.musicArtistsTabDisabled .musicArtistsTab {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.movieTrailersTabDisabled .movieTrailersTab {
|
||||
display: none !important;
|
||||
}
|
||||
|
@ -142,6 +142,10 @@
|
||||
-webkit-overflow-scrolling: touch;
|
||||
}
|
||||
|
||||
.libraryViewNav .material-icons {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.bottomSecondaryNav .libraryViewNav {
|
||||
top: initial;
|
||||
bottom: 0;
|
||||
@ -231,7 +235,7 @@
|
||||
|
||||
.libraryViewNav a {
|
||||
display: inline-block;
|
||||
padding: 12px 0 9px;
|
||||
padding: 14px 13px 11px;
|
||||
color: rgba(255,255,255,.8) !important;
|
||||
text-decoration: none;
|
||||
margin: 0 0;
|
||||
@ -240,19 +244,10 @@
|
||||
border-bottom: 5px solid transparent;
|
||||
}
|
||||
|
||||
.bottomSecondaryNav .libraryViewNav a {
|
||||
padding: 12px 0 12px;
|
||||
}
|
||||
|
||||
.libraryViewNav a:not(.ui-btn-active):hover {
|
||||
color: #2ad !important;
|
||||
}
|
||||
|
||||
.libraryViewNavLinkContent {
|
||||
display: inline-block;
|
||||
padding: 2px 13px 2px 13px;
|
||||
}
|
||||
|
||||
@media all and (max-width: 500px) {
|
||||
|
||||
.libraryMenuButtonText {
|
||||
|
@ -47,7 +47,7 @@
|
||||
}
|
||||
|
||||
.videoTopControls {
|
||||
padding: 1em;
|
||||
padding: 0 1em;
|
||||
background-color: rgba(0, 0, 0, .5);
|
||||
position: absolute;
|
||||
left: 0;
|
||||
@ -157,6 +157,8 @@
|
||||
|
||||
.videoTopControlsLogo {
|
||||
float: left;
|
||||
/* Matches .mediaButton */
|
||||
padding-top: 16px;
|
||||
}
|
||||
|
||||
.videoTopControlsLogo img {
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Now playing bar */
|
||||
.nowPlayingBar {
|
||||
padding: 16px 0 16px 0;
|
||||
padding: 0;
|
||||
border-top: 1px solid #444;
|
||||
text-align: center;
|
||||
}
|
||||
@ -13,7 +13,8 @@
|
||||
vertical-align: middle;
|
||||
font-size: 30px;
|
||||
color: #e8e8e8;
|
||||
margin: 0 10px;
|
||||
margin: 0;
|
||||
padding: 16px 12px;
|
||||
min-width: 30px;
|
||||
text-align: center;
|
||||
}
|
||||
@ -22,6 +23,10 @@
|
||||
font-size: 26px;
|
||||
}
|
||||
|
||||
.videoControls .mediaButton {
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
||||
#mediaElement {
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
|
@ -467,7 +467,7 @@ h1 a:hover {
|
||||
transform: translateY(-100%);
|
||||
}
|
||||
|
||||
.libraryViewNav.headroom--unpinned {
|
||||
.libraryViewNav.headroom--unpinned:not(.headroomDisabled) {
|
||||
-webkit-transform: translateY(-200%);
|
||||
transform: translateY(-200%);
|
||||
}
|
||||
@ -501,6 +501,9 @@ h1 a:hover {
|
||||
}
|
||||
}
|
||||
|
||||
textarea {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
pre, textarea.pre {
|
||||
display: block;
|
||||
@ -534,6 +537,10 @@ pre, textarea.pre {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.forceHide {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
/*
|
||||
Header
|
||||
*/
|
||||
|
@ -4,14 +4,15 @@
|
||||
<title>Emby</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="favoritesPage" data-role="page" class="page type-home libraryPage allLibraryPage backdropPage" data-backdroptype="movie,series,game,book" data-require="scripts/favorites">
|
||||
<div id="favoritesPage" data-role="page" class="page type-home libraryPage allLibraryPage backdropPage" data-backdroptype="movie,series,game,book" data-require="scripts/favorites,paperbuttonstyle">
|
||||
|
||||
<link rel="import" href="thirdparty/paper-button/paper-button.html">
|
||||
<div class="libraryViewNav scopedLibraryViewNav">
|
||||
<a href="index.html">${TabHome}</a>
|
||||
<a href="homelatest.html">${TabLatest}</a>
|
||||
<a href="tvrecommended.html">${TabNextUp}</a>
|
||||
<a href="favorites.html" class="ui-btn-active">${TabFavorites}</a>
|
||||
<a href="tvupcoming.html">${TabUpcoming}</a>
|
||||
<a href="index.html"><i class="material-icons">home</i>${TabHome}</a>
|
||||
<a href="homelatest.html"><i class="material-icons">new_releases</i>${TabLatest}</a>
|
||||
<a href="tvrecommended.html"><i class="material-icons">navigate_next</i>${TabNextUp}</a>
|
||||
<a href="favorites.html" class="ui-btn-active"><i class="material-icons">favorite</i>${TabFavorites}</a>
|
||||
<a href="tvupcoming.html"><i class="material-icons">schedule</i>${TabUpcoming}</a>
|
||||
</div>
|
||||
|
||||
<div data-role="content">
|
||||
|
@ -9,11 +9,11 @@
|
||||
<link rel="import" href="thirdparty/paper-button/paper-button.html">
|
||||
|
||||
<div class="libraryViewNav scopedLibraryViewNav">
|
||||
<a href="index.html">${TabHome}</a>
|
||||
<a href="#" class="ui-btn-active">${TabLatest}</a>
|
||||
<a href="tvrecommended.html">${TabNextUp}</a>
|
||||
<a href="favorites.html">${TabFavorites}</a>
|
||||
<a href="tvupcoming.html">${TabUpcoming}</a>
|
||||
<a href="index.html"><i class="material-icons">home</i>${TabHome}</a>
|
||||
<a href="#" class="ui-btn-active"><i class="material-icons">new_releases</i>${TabLatest}</a>
|
||||
<a href="tvrecommended.html"><i class="material-icons">navigate_next</i>${TabNextUp}</a>
|
||||
<a href="favorites.html"><i class="material-icons">favorite</i>${TabFavorites}</a>
|
||||
<a href="tvupcoming.html"><i class="material-icons">schedule</i>${TabUpcoming}</a>
|
||||
</div>
|
||||
|
||||
<div data-role="content">
|
||||
|
@ -9,11 +9,11 @@
|
||||
<link rel="import" href="thirdparty/paper-button/paper-button.html">
|
||||
|
||||
<div class="libraryViewNav scopedLibraryViewNav">
|
||||
<a href="#" class="ui-btn-active">${TabHome}</a>
|
||||
<a href="homelatest.html">${TabLatest}</a>
|
||||
<a href="tvrecommended.html">${TabNextUp}</a>
|
||||
<a href="favorites.html">${TabFavorites}</a>
|
||||
<a href="tvupcoming.html">${TabUpcoming}</a>
|
||||
<a href="#" class="ui-btn-active"><i class="material-icons">home</i>${TabHome}</a>
|
||||
<a href="homelatest.html"><i class="material-icons">new_releases</i>${TabLatest}</a>
|
||||
<a href="tvrecommended.html"><i class="material-icons">navigate_next</i>${TabNextUp}</a>
|
||||
<a href="favorites.html"><i class="material-icons">favorite</i>${TabFavorites}</a>
|
||||
<a href="tvupcoming.html"><i class="material-icons">schedule</i>${TabUpcoming}</a>
|
||||
</div>
|
||||
|
||||
<div data-role="content">
|
||||
|
@ -10,11 +10,11 @@
|
||||
|
||||
<div class="itemTabs homeTabs" style="display: none;">
|
||||
<div class="libraryViewNav scopedLibraryViewNav">
|
||||
<a href="index.html" class="lnkHomeHome">${TabHome}</a>
|
||||
<a href="homelatest.html" class="lnkHomeLatest">${TabLatest}</a>
|
||||
<a href="tvrecommended.html" class="lnkHomeNextUp">${TabNextUp}</a>
|
||||
<a href="favorites.html" class="lnkHomeFavorites">${TabFavorites}</a>
|
||||
<a href="tvupcoming.html" class="lnkHomeUpcoming">${TabUpcoming}</a>
|
||||
<a href="index.html" class="lnkHomeHome"><i class="material-icons">home</i>${TabHome}</a>
|
||||
<a href="homelatest.html" class="lnkHomeLatest"><i class="material-icons">new_releases</i>${TabLatest}</a>
|
||||
<a href="tvrecommended.html" class="lnkHomeNextUp"><i class="material-icons">navigate_next</i>${TabNextUp}</a>
|
||||
<a href="favorites.html" class="lnkHomeFavorites"><i class="material-icons">favorite</i>${TabFavorites}</a>
|
||||
<a href="tvupcoming.html" class="lnkHomeUpcoming"><i class="material-icons">schedule</i>${TabUpcoming}</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -44,9 +44,9 @@
|
||||
</div>
|
||||
<div class="itemTabs photoTabs" style="display: none;">
|
||||
<div class="libraryViewNav scopedLibraryViewNav">
|
||||
<a href="photos.html" class="ui-btn-active lnkPhotoAlbums">${TabAlbums}</a>
|
||||
<a href="photos.html?context=photos-photos" class="lnkPhotos">${TabPhotos}</a>
|
||||
<a href="photos.html?context=photos-videos" class="lnkVideos">${TabVideos}</a>
|
||||
<a href="photos.html" class="ui-btn-active lnkPhotoAlbums"><i class="material-icons">photo_album</i>${TabAlbums}</a>
|
||||
<a href="photos.html?context=photos-photos" class="lnkPhotos"><i class="material-icons">photo</i>${TabPhotos}</a>
|
||||
<a href="photos.html?context=photos-videos" class="lnkVideos"><i class="material-icons">videocam</i>${TabVideos}</a>
|
||||
</div>
|
||||
</div>
|
||||
<div id="tvShowsTabs" class="itemTabs" style="display: none;">
|
||||
@ -114,8 +114,8 @@
|
||||
</div>
|
||||
<div class="itemTabs channelTabs" style="display: none;">
|
||||
<div class="libraryViewNav scopedLibraryViewNav">
|
||||
<a href="channelslatest.html" class="latestChannelItemsTab">${TabLatest}</a>
|
||||
<a href="channels.html" class="ui-btn-active">${TabChannels}</a>
|
||||
<a href="channelslatest.html" class="latestChannelItemsTab"><i class="material-icons">new_releases</i>${TabLatest}</a>
|
||||
<a href="channels.html" class="ui-btn-active"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -6,12 +6,12 @@
|
||||
<body>
|
||||
<div id="liveTvChannelPage" data-role="page" class="page libraryPage liveTvPage" data-contextname="${HeaderLiveTv}" data-require="scripts/livetvcomponents,scripts/livetvchannel">
|
||||
<div class="libraryViewNav">
|
||||
<a href="livetvsuggested.html">${TabSuggestions}</a>
|
||||
<a href="livetvguide.html">${TabGuide}</a>
|
||||
<a href="livetvchannels.html" class="ui-btn-active">${TabChannels}</a>
|
||||
<a href="livetvrecordings.html">${TabRecordings}</a>
|
||||
<a href="livetvtimers.html">${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html">${TabSeries}</a>
|
||||
<a href="livetvsuggested.html"><i class="material-icons">info</i>${TabSuggestions}</a>
|
||||
<a href="livetvguide.html"><i class="material-icons">grid_on</i>${TabGuide}</a>
|
||||
<a href="livetvchannels.html" class="ui-btn-active"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
<a href="livetvrecordings.html"><i class="material-icons">slideshow</i>${TabRecordings}</a>
|
||||
<a href="livetvtimers.html"><i class="material-icons">schedule</i>${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html"><i class="material-icons">refresh</i>${TabSeries}</a>
|
||||
</div>
|
||||
<table class="detailPageContent primaryDetailPageContent">
|
||||
<tr>
|
||||
|
@ -6,12 +6,12 @@
|
||||
<body>
|
||||
<div id="liveTvChannelsPage" data-role="page" class="page libraryPage liveTvPage" data-contextname="${HeaderLiveTv}" data-require="scripts/livetvchannels">
|
||||
<div class="libraryViewNav">
|
||||
<a href="livetvsuggested.html">${TabSuggestions}</a>
|
||||
<a href="livetvguide.html">${TabGuide}</a>
|
||||
<a href="livetvchannels.html" class="ui-btn-active">${TabChannels}</a>
|
||||
<a href="livetvrecordings.html">${TabRecordings}</a>
|
||||
<a href="livetvtimers.html">${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html">${TabSeries}</a>
|
||||
<a href="livetvsuggested.html"><i class="material-icons">info</i>${TabSuggestions}</a>
|
||||
<a href="livetvguide.html"><i class="material-icons">grid_on</i>${TabGuide}</a>
|
||||
<a href="livetvchannels.html" class="ui-btn-active"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
<a href="livetvrecordings.html"><i class="material-icons">slideshow</i>${TabRecordings}</a>
|
||||
<a href="livetvtimers.html"><i class="material-icons">schedule</i>${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html"><i class="material-icons">refresh</i>${TabSeries}</a>
|
||||
</div>
|
||||
<div data-role="content">
|
||||
<div class="viewSettings">
|
||||
|
@ -6,12 +6,12 @@
|
||||
<body>
|
||||
<div id="liveTvGuidePage" data-role="page" class="page libraryPage liveTvPage" data-contextname="${HeaderLiveTv}" data-require="scripts/registrationservices,scripts/livetvcomponents,scripts/livetvguide">
|
||||
<div class="libraryViewNav">
|
||||
<a href="livetvsuggested.html">${TabSuggestions}</a>
|
||||
<a href="livetvguide.html" class="ui-btn-active">${TabGuide}</a>
|
||||
<a href="livetvchannels.html">${TabChannels}</a>
|
||||
<a href="livetvrecordings.html">${TabRecordings}</a>
|
||||
<a href="livetvtimers.html">${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html">${TabSeries}</a>
|
||||
<a href="livetvsuggested.html"><i class="material-icons">info</i>${TabSuggestions}</a>
|
||||
<a href="livetvguide.html" class="ui-btn-active"><i class="material-icons">grid_on</i>${TabGuide}</a>
|
||||
<a href="livetvchannels.html"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
<a href="livetvrecordings.html"><i class="material-icons">slideshow</i>${TabRecordings}</a>
|
||||
<a href="livetvtimers.html"><i class="material-icons">schedule</i>${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html"><i class="material-icons">refresh</i>${TabSeries}</a>
|
||||
</div>
|
||||
<div data-role="content" style="padding-top: 5px;padding-left:0!important;padding-right:0!important;">
|
||||
|
||||
|
@ -6,12 +6,12 @@
|
||||
<body>
|
||||
<div id="liveTvItemsPage" data-role="page" class="page libraryPage liveTvPage" data-contextname="${HeaderLiveTv}" data-require="scripts/livetvitems,scripts/queryfilters">
|
||||
<div class="libraryViewNav">
|
||||
<a href="livetvsuggested.html" class="ui-btn-active">${TabSuggestions}</a>
|
||||
<a href="livetvguide.html">${TabGuide}</a>
|
||||
<a href="livetvchannels.html">${TabChannels}</a>
|
||||
<a href="livetvrecordings.html">${TabRecordings}</a>
|
||||
<a href="livetvtimers.html">${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html">${TabSeries}</a>
|
||||
<a href="livetvsuggested.html" class="ui-btn-active"><i class="material-icons">info</i>${TabSuggestions}</a>
|
||||
<a href="livetvguide.html"><i class="material-icons">grid_on</i>${TabGuide}</a>
|
||||
<a href="livetvchannels.html"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
<a href="livetvrecordings.html"><i class="material-icons">slideshow</i>${TabRecordings}</a>
|
||||
<a href="livetvtimers.html"><i class="material-icons">schedule</i>${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html"><i class="material-icons">refresh</i>${TabSeries}</a>
|
||||
</div>
|
||||
<div data-role="content">
|
||||
<div class="viewSettings">
|
||||
|
@ -6,12 +6,12 @@
|
||||
<body>
|
||||
<div id="liveTvNewRecordingPage" data-role="page" class="page libraryPage liveTvPage" data-contextname="${HeaderLiveTv}" data-require="scripts/livetvcomponents,scripts/livetvnewrecording">
|
||||
<div class="libraryViewNav">
|
||||
<a href="livetvsuggested.html">${TabSuggestions}</a>
|
||||
<a href="livetvguide.html">${TabGuide}</a>
|
||||
<a href="livetvchannels.html">${TabChannels}</a>
|
||||
<a href="livetvrecordings.html" class="ui-btn-active">${TabRecordings}</a>
|
||||
<a href="livetvtimers.html">${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html">${TabSeries}</a>
|
||||
<a href="livetvsuggested.html"><i class="material-icons">info</i>${TabSuggestions}</a>
|
||||
<a href="livetvguide.html"><i class="material-icons">grid_on</i>${TabGuide}</a>
|
||||
<a href="livetvchannels.html"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
<a href="livetvrecordings.html" class="ui-btn-active"><i class="material-icons">slideshow</i>${TabRecordings}</a>
|
||||
<a href="livetvtimers.html"><i class="material-icons">schedule</i>${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html"><i class="material-icons">refresh</i>${TabSeries}</a>
|
||||
</div>
|
||||
<div data-role="content">
|
||||
<form class="liveTvNewRecordingForm" style="margin: 0 auto;">
|
||||
|
@ -6,12 +6,12 @@
|
||||
<body>
|
||||
<div id="liveTvProgramPage" data-role="page" class="page libraryPage liveTvPage" data-contextname="${HeaderLiveTv}" data-require="scripts/livetvcomponents,scripts/livetvprogram">
|
||||
<div class="libraryViewNav">
|
||||
<a href="livetvsuggested.html">${TabSuggestions}</a>
|
||||
<a href="livetvguide.html">${TabGuide}</a>
|
||||
<a href="livetvchannels.html" class="ui-btn-active">${TabChannels}</a>
|
||||
<a href="livetvrecordings.html">${TabRecordings}</a>
|
||||
<a href="livetvtimers.html">${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html">${TabSeries}</a>
|
||||
<a href="livetvsuggested.html"><i class="material-icons">info</i>${TabSuggestions}</a>
|
||||
<a href="livetvguide.html"><i class="material-icons">grid_on</i>${TabGuide}</a>
|
||||
<a href="livetvchannels.html" class="ui-btn-active"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
<a href="livetvrecordings.html"><i class="material-icons">slideshow</i>${TabRecordings}</a>
|
||||
<a href="livetvtimers.html"><i class="material-icons">schedule</i>${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html"><i class="material-icons">refresh</i>${TabSeries}</a>
|
||||
</div>
|
||||
<div style="padding: 1em 0;">
|
||||
<div>
|
||||
|
@ -6,12 +6,12 @@
|
||||
<body>
|
||||
<div id="liveTvRecordingPage" data-role="page" class="page libraryPage liveTvPage" data-contextname="${HeaderLiveTv}" data-require="scripts/livetvcomponents,scripts/livetvrecording">
|
||||
<div class="libraryViewNav">
|
||||
<a href="livetvsuggested.html">${TabSuggestions}</a>
|
||||
<a href="livetvguide.html">${TabGuide}</a>
|
||||
<a href="livetvchannels.html">${TabChannels}</a>
|
||||
<a href="livetvrecordings.html" class="ui-btn-active">${TabRecordings}</a>
|
||||
<a href="livetvtimers.html">${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html">${TabSeries}</a>
|
||||
<a href="livetvsuggested.html"><i class="material-icons">info</i>${TabSuggestions}</a>
|
||||
<a href="livetvguide.html"><i class="material-icons">grid_on</i>${TabGuide}</a>
|
||||
<a href="livetvchannels.html"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
<a href="livetvrecordings.html" class="ui-btn-active"><i class="material-icons">slideshow</i>${TabRecordings}</a>
|
||||
<a href="livetvtimers.html"><i class="material-icons">schedule</i>${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html"><i class="material-icons">refresh</i>${TabSeries}</a>
|
||||
</div>
|
||||
<div style="padding: 1em 0;">
|
||||
<div>
|
||||
|
@ -6,12 +6,12 @@
|
||||
<body>
|
||||
<div id="liveTvRecordingListPage" data-role="page" class="page libraryPage liveTvPage" data-contextname="${HeaderLiveTv}" data-require="scripts/livetvrecordinglist">
|
||||
<div class="libraryViewNav">
|
||||
<a href="livetvsuggested.html">${TabSuggestions}</a>
|
||||
<a href="livetvguide.html">${TabGuide}</a>
|
||||
<a href="livetvchannels.html">${TabChannels}</a>
|
||||
<a href="livetvrecordings.html" class="ui-btn-active">${TabRecordings}</a>
|
||||
<a href="livetvtimers.html">${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html">${TabSeries}</a>
|
||||
<a href="livetvsuggested.html"><i class="material-icons">info</i>${TabSuggestions}</a>
|
||||
<a href="livetvguide.html"><i class="material-icons">grid_on</i>${TabGuide}</a>
|
||||
<a href="livetvchannels.html"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
<a href="livetvrecordings.html" class="ui-btn-active"><i class="material-icons">slideshow</i>${TabRecordings}</a>
|
||||
<a href="livetvtimers.html"><i class="material-icons">schedule</i>${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html"><i class="material-icons">refresh</i>${TabSeries}</a>
|
||||
</div>
|
||||
<div data-role="content">
|
||||
<div class="viewSettings" style="margin:.5em 0;">
|
||||
|
@ -8,12 +8,12 @@
|
||||
<link rel="import" href="thirdparty/paper-button/paper-button.html">
|
||||
|
||||
<div class="libraryViewNav">
|
||||
<a href="livetvsuggested.html">${TabSuggestions}</a>
|
||||
<a href="livetvguide.html">${TabGuide}</a>
|
||||
<a href="livetvchannels.html">${TabChannels}</a>
|
||||
<a href="livetvrecordings.html" class="ui-btn-active">${TabRecordings}</a>
|
||||
<a href="livetvtimers.html">${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html">${TabSeries}</a>
|
||||
<a href="livetvsuggested.html"><i class="material-icons">info</i>${TabSuggestions}</a>
|
||||
<a href="livetvguide.html"><i class="material-icons">grid_on</i>${TabGuide}</a>
|
||||
<a href="livetvchannels.html"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
<a href="livetvrecordings.html" class="ui-btn-active"><i class="material-icons">slideshow</i>${TabRecordings}</a>
|
||||
<a href="livetvtimers.html"><i class="material-icons">schedule</i>${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html"><i class="material-icons">refresh</i>${TabSeries}</a>
|
||||
</div>
|
||||
<div data-role="content">
|
||||
<div class="ehsContent">
|
||||
|
@ -6,12 +6,12 @@
|
||||
<body>
|
||||
<div id="liveTvSeriesTimerPage" data-role="page" class="page libraryPage liveTvPage" data-contextname="${HeaderLiveTv}" data-require="scripts/livetvcomponents,scripts/livetvseriestimer">
|
||||
<div class="libraryViewNav">
|
||||
<a href="livetvsuggested.html">${TabSuggestions}</a>
|
||||
<a href="livetvguide.html">${TabGuide}</a>
|
||||
<a href="livetvchannels.html">${TabChannels}</a>
|
||||
<a href="livetvrecordings.html">${TabRecordings}</a>
|
||||
<a href="livetvtimers.html">${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html" class="ui-btn-active">${TabSeries}</a>
|
||||
<a href="livetvsuggested.html"><i class="material-icons">info</i>${TabSuggestions}</a>
|
||||
<a href="livetvguide.html"><i class="material-icons">grid_on</i>${TabGuide}</a>
|
||||
<a href="livetvchannels.html"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
<a href="livetvrecordings.html"><i class="material-icons">slideshow</i>${TabRecordings}</a>
|
||||
<a href="livetvtimers.html"><i class="material-icons">schedule</i>${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html" class="ui-btn-active"><i class="material-icons">refresh</i>${TabSeries}</a>
|
||||
</div>
|
||||
<div data-role="content">
|
||||
<form class="liveTvSeriesTimerForm" style="margin: 0 auto; max-width: 720px;">
|
||||
|
@ -6,12 +6,12 @@
|
||||
<body>
|
||||
<div id="liveTvSeriesTimersPage" data-role="page" class="page libraryPage liveTvPage" data-contextname="${HeaderLiveTv}" data-require="scripts/livetvseriestimers">
|
||||
<div class="libraryViewNav">
|
||||
<a href="livetvsuggested.html">${TabSuggestions}</a>
|
||||
<a href="livetvguide.html">${TabGuide}</a>
|
||||
<a href="livetvchannels.html">${TabChannels}</a>
|
||||
<a href="livetvrecordings.html">${TabRecordings}</a>
|
||||
<a href="livetvtimers.html">${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html" class="ui-btn-active">${TabSeries}</a>
|
||||
<a href="livetvsuggested.html"><i class="material-icons">info</i>${TabSuggestions}</a>
|
||||
<a href="livetvguide.html"><i class="material-icons">grid_on</i>${TabGuide}</a>
|
||||
<a href="livetvchannels.html"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
<a href="livetvrecordings.html"><i class="material-icons">slideshow</i>${TabRecordings}</a>
|
||||
<a href="livetvtimers.html"><i class="material-icons">schedule</i>${TabScheduled}</a>
|
||||
<a href="#" class="ui-btn-active"><i class="material-icons">refresh</i>${TabSeries}</a>
|
||||
</div>
|
||||
<div data-role="content">
|
||||
<div style="max-width: 600px; margin: 0 auto;">
|
||||
|
@ -8,12 +8,12 @@
|
||||
<link rel="import" href="thirdparty/paper-button/paper-button.html">
|
||||
|
||||
<div class="libraryViewNav">
|
||||
<a href="#" class="ui-btn-active">${TabSuggestions}</a>
|
||||
<a href="livetvguide.html">${TabGuide}</a>
|
||||
<a href="livetvchannels.html">${TabChannels}</a>
|
||||
<a href="livetvrecordings.html">${TabRecordings}</a>
|
||||
<a href="livetvtimers.html">${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html">${TabSeries}</a>
|
||||
<a href="#" class="ui-btn-active"><i class="material-icons">info</i>${TabSuggestions}</a>
|
||||
<a href="livetvguide.html"><i class="material-icons">grid_on</i>${TabGuide}</a>
|
||||
<a href="livetvchannels.html"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
<a href="livetvrecordings.html"><i class="material-icons">slideshow</i>${TabRecordings}</a>
|
||||
<a href="livetvtimers.html"><i class="material-icons">schedule</i>${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html"><i class="material-icons">refresh</i>${TabSeries}</a>
|
||||
</div>
|
||||
<div data-role="content">
|
||||
<div class="ehsContent">
|
||||
|
@ -6,12 +6,12 @@
|
||||
<body>
|
||||
<div id="liveTvTimerPage" data-role="page" class="page libraryPage liveTvPage" data-contextname="${HeaderLiveTv}" data-require="scripts/livetvcomponents,scripts/livetvtimer">
|
||||
<div class="libraryViewNav">
|
||||
<a href="livetvsuggested.html">${TabSuggestions}</a>
|
||||
<a href="livetvguide.html">${TabGuide}</a>
|
||||
<a href="livetvchannels.html">${TabChannels}</a>
|
||||
<a href="livetvrecordings.html">${TabRecordings}</a>
|
||||
<a href="livetvtimers.html" class="ui-btn-active">${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html">${TabSeries}</a>
|
||||
<a href="livetvsuggested.html"><i class="material-icons">info</i>${TabSuggestions}</a>
|
||||
<a href="livetvguide.html"><i class="material-icons">grid_on</i>${TabGuide}</a>
|
||||
<a href="livetvchannels.html"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
<a href="livetvrecordings.html"><i class="material-icons">slideshow</i>${TabRecordings}</a>
|
||||
<a href="livetvtimers.html" class="ui-btn-active"><i class="material-icons">schedule</i>${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html"><i class="material-icons">refresh</i>${TabSeries}</a>
|
||||
</div>
|
||||
<div data-role="content">
|
||||
|
||||
|
@ -6,12 +6,12 @@
|
||||
<body>
|
||||
<div id="liveTvTimersPage" data-role="page" class="page libraryPage liveTvPage" data-contextname="${HeaderLiveTv}" data-require="scripts/livetvtimers">
|
||||
<div class="libraryViewNav">
|
||||
<a href="livetvsuggested.html">${TabSuggestions}</a>
|
||||
<a href="livetvguide.html">${TabGuide}</a>
|
||||
<a href="livetvchannels.html">${TabChannels}</a>
|
||||
<a href="livetvrecordings.html">${TabRecordings}</a>
|
||||
<a href="livetvtimers.html" class="ui-btn-active">${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html">${TabSeries}</a>
|
||||
<a href="livetvsuggested.html"><i class="material-icons">info</i>${TabSuggestions}</a>
|
||||
<a href="livetvguide.html"><i class="material-icons">grid_on</i>${TabGuide}</a>
|
||||
<a href="livetvchannels.html"><i class="material-icons">live_tv</i>${TabChannels}</a>
|
||||
<a href="livetvrecordings.html"><i class="material-icons">slideshow</i>${TabRecordings}</a>
|
||||
<a href="livetvtimers.html" class="ui-btn-active"><i class="material-icons">schedule</i>${TabScheduled}</a>
|
||||
<a href="livetvseriestimers.html"><i class="material-icons">refresh</i>${TabSeries}</a>
|
||||
</div>
|
||||
<div data-role="content">
|
||||
<div style="max-width: 600px; margin: 0 auto;">
|
||||
|
@ -7,7 +7,7 @@
|
||||
<div id="mySyncActivityPage" data-role="page" class="page libraryPage syncActivityPage mySyncPage" data-contextname="${TitleSync}" data-require="scripts/syncactivity,scripts/taskbutton">
|
||||
|
||||
<div class="libraryViewNav">
|
||||
<a href="#" class="ui-btn-active">${TabSyncJobs}</a>
|
||||
<a href="#" class="ui-btn-active"><i class="material-icons">refresh</i>${TabSyncJobs}</a>
|
||||
</div>
|
||||
|
||||
<div data-role="content">
|
||||
|
@ -7,7 +7,7 @@
|
||||
<div id="mySyncJobPage" data-role="page" class="page libraryPage syncJobPage mySyncPage" data-contextname="${TitleSync}" data-require="scripts/syncjob">
|
||||
|
||||
<div class="libraryViewNav">
|
||||
<a href="mysync.html" class="ui-btn-active">${TabSyncJobs}</a>
|
||||
<a href="mysync.html" class="ui-btn-active"><i class="material-icons">refresh</i>${TabSyncJobs}</a>
|
||||
</div>
|
||||
|
||||
<div data-role="content">
|
||||
|
@ -7,9 +7,9 @@
|
||||
<div id="photosPage" data-role="page" class="page libraryPage" data-require="scripts/photos,scripts/queryfilters">
|
||||
|
||||
<div class="libraryViewNav scopedLibraryViewNav">
|
||||
<a href="photos.html" class="ui-btn-active lnkPhotoAlbums">${TabAlbums}</a>
|
||||
<a href="photos.html?context=photos-photos" class="lnkPhotos">${TabPhotos}</a>
|
||||
<a href="photos.html?context=photos-videos" class="lnkVideos">${TabVideos}</a>
|
||||
<a href="photos.html" class="ui-btn-active lnkPhotoAlbums"><i class="material-icons">photo_album</i>${TabAlbums}</a>
|
||||
<a href="photos.html?context=photos-photos" class="lnkPhotos"><i class="material-icons">photo</i>${TabPhotos}</a>
|
||||
<a href="photos.html?context=photos-videos" class="lnkVideos"><i class="material-icons">videocam</i>${TabVideos}</a>
|
||||
</div>
|
||||
|
||||
<div data-role="content">
|
||||
|
@ -7,7 +7,7 @@
|
||||
<div id="playlistEditorPage" data-role="page" class="page libraryPage" data-require="scripts/playlistedit">
|
||||
|
||||
<div class="libraryViewNav scopedLibraryViewNav">
|
||||
<a href="playlists.html" class="ui-btn-active">${TabPlaylists}</a>
|
||||
<a href="playlists.html" class="ui-btn-active"><i class="material-icons">menu</i>${TabPlaylists}</a>
|
||||
</div>
|
||||
|
||||
<div data-role="content">
|
||||
|
@ -7,7 +7,7 @@
|
||||
<div id="playlistsPage" data-role="page" class="page libraryPage" data-require="scripts/playlists">
|
||||
|
||||
<div class="libraryViewNav scopedLibraryViewNav">
|
||||
<a href="#" class="ui-btn-active">${TabPlaylists}</a>
|
||||
<a href="#" class="ui-btn-active"><i class="material-icons">menu</i>${TabPlaylists}</a>
|
||||
</div>
|
||||
|
||||
<div data-role="content">
|
||||
|
@ -596,7 +596,7 @@ function ticks_to_human(str) {
|
||||
$.fn.visible = function(visible) {
|
||||
|
||||
if (visible) {
|
||||
return this.removeClass('hide');
|
||||
return this.removeClass('forceHide');
|
||||
}
|
||||
return this.addClass('hide');
|
||||
return this.addClass('forceHide');
|
||||
};
|
@ -9,7 +9,6 @@
|
||||
{ name: Globalize.translate('HeaderFavoriteGames'), types: "Game", id: "favoriteGames", shape: 'autohome', preferThumb: false, showTitle: true },
|
||||
{ name: Globalize.translate('HeaderFavoriteAlbums'), types: "MusicAlbum", id: "favoriteAlbums", shape: 'square', preferThumb: false, showTitle: true, overlayText: false, showParentTitle: true }
|
||||
];
|
||||
|
||||
}
|
||||
|
||||
function loadSection(elem, userId, section, isSingleSection) {
|
||||
@ -33,7 +32,7 @@
|
||||
options.Limit = null;
|
||||
}
|
||||
|
||||
ApiClient.getItems(userId, options).done(function (result) {
|
||||
return ApiClient.getItems(userId, options).done(function (result) {
|
||||
|
||||
var html = '';
|
||||
|
||||
@ -53,23 +52,22 @@
|
||||
});
|
||||
|
||||
if (result.TotalRecordCount > result.Items.length) {
|
||||
html += '<div class="itemsContainer">';
|
||||
|
||||
var href = "favorites.html?sectionid=" + section.id;
|
||||
|
||||
html += '<a data-role="button" href="' + href + '" data-mini="true" data-inline="true">' + Globalize.translate('ButtonMoreItems') + '</a>';
|
||||
html += '</div>';
|
||||
html += '<a class="clearLink" href="' + href + '"><paper-button raised class="more">' + Globalize.translate('ButtonMoreItems') + '</paper-button></a>';
|
||||
}
|
||||
html += '</div>';
|
||||
}
|
||||
|
||||
elem = $(elem).html(html).trigger('create').lazyChildren();
|
||||
elem = $(elem).html(html).lazyChildren();
|
||||
elem.createCardMenus();
|
||||
});
|
||||
}
|
||||
|
||||
function loadSections(page, userId) {
|
||||
|
||||
Dashboard.showLoadingMsg();
|
||||
|
||||
var sections = getSections();
|
||||
|
||||
var sectionid = getParameterByName('sectionid');
|
||||
@ -95,14 +93,20 @@
|
||||
elem.html(html);
|
||||
}
|
||||
|
||||
var promises = [];
|
||||
|
||||
for (i = 0, length = sections.length; i < length; i++) {
|
||||
|
||||
var section = sections[i];
|
||||
|
||||
elem = $('.section' + section.id, page);
|
||||
|
||||
loadSection(elem, userId, section, sections.length == 1);
|
||||
promises.push(loadSection(elem, userId, section, sections.length == 1));
|
||||
}
|
||||
|
||||
$.when(promises).done(function () {
|
||||
Dashboard.hideLoadingMsg();
|
||||
});
|
||||
}
|
||||
|
||||
$(document).on('pageshowready', "#favoritesPage", function () {
|
||||
|
@ -1494,7 +1494,8 @@
|
||||
anchorCssClass += ' itemWithAction';
|
||||
}
|
||||
|
||||
html += '<a class="' + anchorCssClass + '" href="' + href + '"' + defaultActionAttribute + '>';
|
||||
var transition = options.transition === false || !AppInfo.enableSectionTransitions ? '' : ' data-transition="slide"';
|
||||
html += '<a' + transition + ' class="' + anchorCssClass + '" href="' + href + '"' + defaultActionAttribute + '>';
|
||||
html += '<div class="' + imageCssClass + '" style="' + style + '"' + dataSrc + '>';
|
||||
if (icon) {
|
||||
html += '<i class="fa ' + icon + '"></i>';
|
||||
|
@ -1,11 +1,14 @@
|
||||
(function (window, document, $, devicePixelRatio) {
|
||||
|
||||
var backStack = [];
|
||||
var addNextToBackStack = true;
|
||||
|
||||
function renderHeader() {
|
||||
|
||||
var html = '<div class="viewMenuBar ui-bar-b">';
|
||||
|
||||
if (AppInfo.enableBackButton) {
|
||||
html += '<button type="button" data-role="none" class="headerButton headerButtonLeft headerBackButton"><div class="fa fa-arrow-left"></div></button>';
|
||||
html += '<button type="button" data-role="none" class="headerButton headerButtonLeft headerBackButton"><div class="fa fa-chevron-left"></div></button>';
|
||||
}
|
||||
|
||||
html += '<button type="button" data-role="none" title="Menu" class="headerButton dashboardMenuButton barsMenuButton headerButtonLeft">';
|
||||
@ -58,10 +61,14 @@
|
||||
}
|
||||
|
||||
function onBackClick() {
|
||||
|
||||
if (Dashboard.exitOnBack()) {
|
||||
Dashboard.exit();
|
||||
}
|
||||
else {
|
||||
addNextToBackStack = false;
|
||||
|
||||
backStack.length = Math.max(0, backStack.length - 1);
|
||||
history.back();
|
||||
}
|
||||
}
|
||||
@ -163,12 +170,17 @@
|
||||
function updateViewMenuBarHeadroom(page, viewMenuBar) {
|
||||
|
||||
if ($(page).hasClass('libraryPage')) {
|
||||
viewMenuBar.removeClass('headroomDisabled');
|
||||
// Don't like this timeout at all but if headroom is activated during the page events it will jump and flicker on us
|
||||
setTimeout(reEnableHeadroom, 700);
|
||||
} else {
|
||||
viewMenuBar.addClass('headroomDisabled');
|
||||
}
|
||||
}
|
||||
|
||||
function reEnableHeadroom() {
|
||||
$('.headroomDisabled').removeClass('headroomDisabled');
|
||||
}
|
||||
|
||||
function getItemHref(item, context) {
|
||||
|
||||
return LibraryBrowser.getHref(item, context);
|
||||
@ -640,15 +652,7 @@
|
||||
// Otherwise we run into the jQM redirect back and forth problem
|
||||
var updateViewMenuBarBeforePageShow = false;
|
||||
|
||||
$(document).on('pageinit', ".page", function () {
|
||||
|
||||
var page = this;
|
||||
|
||||
$(function () {
|
||||
onPageInitDocumentReady(page);
|
||||
});
|
||||
|
||||
}).on('pagebeforeshowready', ".page", function () {
|
||||
$(document).on('pagebeforeshowready', ".page", function () {
|
||||
|
||||
var page = this;
|
||||
|
||||
@ -670,17 +674,22 @@
|
||||
var page = this;
|
||||
|
||||
onPageShowDocumentReady(page);
|
||||
});
|
||||
|
||||
function onPageInitDocumentReady(page) {
|
||||
$('.libraryViewNav', page).wrapInner('<div class="libraryViewNavInner"></div>');
|
||||
}).on('pagehide', ".page", function () {
|
||||
|
||||
$('.libraryViewNav a', page).each(function () {
|
||||
if (addNextToBackStack) {
|
||||
var text = $('.libraryMenuButtonText').text() || document.title;
|
||||
|
||||
this.innerHTML = '<span class="libraryViewNavLinkContent">' + this.innerHTML + '</span>';
|
||||
});
|
||||
backStack.push(text);
|
||||
}
|
||||
|
||||
addNextToBackStack = true;
|
||||
|
||||
}).on('pagebeforehide', ".page", function () {
|
||||
|
||||
$('.headroomEnabled').addClass('headroomDisabled');
|
||||
});
|
||||
|
||||
function onPageBeforeShowDocumentReady(page) {
|
||||
|
||||
buildViewMenuBar(page);
|
||||
@ -713,10 +722,39 @@
|
||||
} else {
|
||||
$(document.body).removeClass('dashboardDocument').removeClass('libraryDocument');
|
||||
}
|
||||
|
||||
if (AppInfo.enableBackButton)
|
||||
{
|
||||
updateBackButton(page);
|
||||
}
|
||||
}
|
||||
|
||||
function updateBackButton(page) {
|
||||
|
||||
var jPage = $(page);
|
||||
|
||||
var canGoBack = backStack.length > 0 && jPage.is('.itemDetailPage');
|
||||
|
||||
$('.headerBackButton').visible(canGoBack);
|
||||
|
||||
jPage.off('swipeleft', onPageSwipeLeft);
|
||||
|
||||
if (canGoBack) {
|
||||
jPage.on('swipeleft', onPageSwipeLeft);
|
||||
}
|
||||
}
|
||||
|
||||
function onPageSwipeLeft(e) {
|
||||
|
||||
var target = $(e.target);
|
||||
|
||||
if (!target.is('.hiddenScrollX') && !target.parents('.hiddenScrollX').length) {
|
||||
history.back();
|
||||
}
|
||||
}
|
||||
|
||||
function onPageShowDocumentReady(page) {
|
||||
var elem = $('.libraryViewNavInner .ui-btn-active:visible', page);
|
||||
var elem = $('.libraryViewNav .ui-btn-active:visible', page);
|
||||
|
||||
if (elem.length) {
|
||||
elem[0].scrollIntoView();
|
||||
@ -738,6 +776,7 @@
|
||||
var headroom = new Headroom(elem);
|
||||
// initialise
|
||||
headroom.init();
|
||||
$(elem).addClass('headroomEnabled');
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -1222,7 +1222,7 @@
|
||||
|
||||
bindEventsForPlayback();
|
||||
|
||||
mediaPlayerContainer.trigger("create");
|
||||
mediaPlayerContainer.trigger('create');
|
||||
|
||||
self.currentSubtitleStreamIndex = mediaSource.DefaultSubtitleStreamIndex;
|
||||
|
||||
|
@ -32,7 +32,7 @@
|
||||
|
||||
html += '</div>';
|
||||
|
||||
$('.downloadLanguages', page).html(html).trigger("create");
|
||||
$('.downloadLanguages', page).html(html).trigger('create');
|
||||
|
||||
var langs = config.DownloadLanguages || [];
|
||||
|
||||
|
@ -22,13 +22,15 @@
|
||||
|
||||
var html = '';
|
||||
|
||||
html += '<div class="nowPlayingBar" style="display:none;">';
|
||||
// add return false because on iOS clicking the bar often ends up clicking the content underneath.
|
||||
html += '<div class="nowPlayingBar" style="display:none;" onclick="return false;">';
|
||||
|
||||
html += '<div class="nowPlayingImage"></div>';
|
||||
html += '<div class="nowPlayingText"></div>';
|
||||
|
||||
html += '<a class="mediaButton remoteControlButton imageButton" href="nowplaying.html" data-transition="slideup" title="' + Globalize.translate('ButtonRemoteControl') + '"><i class="fa fa-tablet"></i></a>';
|
||||
html += '<a class="mediaButton playlistButton imageButton" href="nowplaying.html?tab=Playlist" data-transition="slideup" title="' + Globalize.translate('ButtonPlaylist') + '"><i class="fa fa-list"></i></a>';
|
||||
// The onclicks are needed due to the return false above
|
||||
html += '<a class="mediaButton remoteControlButton imageButton" href="nowplaying.html" onclick="Dashboard.navigate(this.href);return false;" data-transition="slideup" title="' + Globalize.translate('ButtonRemoteControl') + '"><i class="fa fa-tablet"></i></a>';
|
||||
html += '<a class="mediaButton playlistButton imageButton" href="nowplaying.html?tab=Playlist" onclick="Dashboard.navigate(this.href);return false;" data-transition="slideup" title="' + Globalize.translate('ButtonPlaylist') + '"><i class="fa fa-list"></i></a>';
|
||||
|
||||
html += '<button class="mediaButton previousTrackButton imageButton" title="' + Globalize.translate('ButtonPreviousTrack') + '" type="button" data-role="none"><i class="fa fa-step-backward"></i></button>';
|
||||
|
||||
|
@ -97,14 +97,17 @@
|
||||
function requestSearchHintsForOverlay(elem, searchTerm) {
|
||||
|
||||
var currentTimeout = searchHintTimeout;
|
||||
Dashboard.showLoadingMsg();
|
||||
|
||||
ApiClient.getSearchHints({ userId: Dashboard.getCurrentUserId(), searchTerm: searchTerm, limit: 30 }).done(function (result) {
|
||||
|
||||
if (currentTimeout != searchHintTimeout) {
|
||||
return;
|
||||
if (currentTimeout == searchHintTimeout) {
|
||||
renderSearchResultsInOverlay(elem, result.SearchHints);
|
||||
}
|
||||
|
||||
renderSearchResultsInOverlay(elem, result.SearchHints);
|
||||
Dashboard.hideLoadingMsg();
|
||||
}).fail(function () {
|
||||
Dashboard.hideLoadingMsg();
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -248,7 +248,8 @@
|
||||
showTitle: showTitles,
|
||||
centerText: true,
|
||||
lazy: true,
|
||||
autoThumb: true
|
||||
autoThumb: true,
|
||||
transition: false
|
||||
});
|
||||
html += '</div>';
|
||||
}
|
||||
|
@ -35,7 +35,7 @@ var Dashboard = {
|
||||
//$.mobile.popup.prototype.options.theme = "c";
|
||||
$.mobile.popup.prototype.options.transition = "pop";
|
||||
|
||||
//$.mobile.keepNative = "input[type='text'],input[type='password'],input[type='number']";
|
||||
//$.mobile.keepNative = "textarea";
|
||||
|
||||
if ($.browser.mobile) {
|
||||
$.mobile.defaultPageTransition = "none";
|
||||
@ -400,7 +400,7 @@ var Dashboard = {
|
||||
elem.slideDown(400);
|
||||
}
|
||||
|
||||
elem.html(options.html).trigger("create");
|
||||
elem.html(options.html).trigger('create');
|
||||
|
||||
if (options.timeout) {
|
||||
|
||||
@ -1658,6 +1658,7 @@ var AppInfo = {};
|
||||
if (isCordova) {
|
||||
AppInfo.enableBottomTabs = true;
|
||||
AppInfo.cardMargin = 'mediumCardMargin';
|
||||
AppInfo.enableSectionTransitions = true;
|
||||
|
||||
} else {
|
||||
if (isMobile) {
|
||||
@ -1678,14 +1679,10 @@ var AppInfo = {};
|
||||
}
|
||||
}
|
||||
|
||||
AppInfo.enableMusicSongsTab = true;
|
||||
|
||||
if (!AppInfo.hasLowImageBandwidth) {
|
||||
AppInfo.enableLatestChannelItems = true;
|
||||
AppInfo.enableStudioTabs = true;
|
||||
AppInfo.enablePeopleTabs = true;
|
||||
AppInfo.enableTvEpisodesTab = true;
|
||||
AppInfo.enableMusicArtistsTab = true;
|
||||
AppInfo.enableMovieTrailersTab = true;
|
||||
}
|
||||
|
||||
@ -1706,7 +1703,8 @@ var AppInfo = {};
|
||||
AppInfo.enableUserImage = true;
|
||||
AppInfo.hasPhysicalVolumeButtons = isCordova || isMobile;
|
||||
|
||||
AppInfo.enableBackButton = isIOS && window.navigator.standalone && !AppInfo.isNativeApp;
|
||||
AppInfo.enableBackButton = isIOS && (window.navigator.standalone || AppInfo.isNativeApp);
|
||||
|
||||
AppInfo.supportsFullScreen = isCordova && isAndroid;
|
||||
AppInfo.supportsSyncPathSetting = isCordova && isAndroid;
|
||||
|
||||
@ -1802,10 +1800,6 @@ var AppInfo = {};
|
||||
elem.addClass(AppInfo.cardMargin);
|
||||
}
|
||||
|
||||
if (!AppInfo.enableLatestChannelItems) {
|
||||
elem.addClass('latestChannelItemsDisabled');
|
||||
}
|
||||
|
||||
if (!AppInfo.enableStudioTabs) {
|
||||
elem.addClass('studioTabDisabled');
|
||||
}
|
||||
@ -1818,14 +1812,6 @@ var AppInfo = {};
|
||||
elem.addClass('tvEpisodesTabDisabled');
|
||||
}
|
||||
|
||||
if (!AppInfo.enableMusicSongsTab) {
|
||||
elem.addClass('musicSongsTabDisabled');
|
||||
}
|
||||
|
||||
if (!AppInfo.enableMusicArtistsTab) {
|
||||
elem.addClass('musicArtistsTabDisabled');
|
||||
}
|
||||
|
||||
if (!AppInfo.enableMovieTrailersTab) {
|
||||
elem.addClass('movieTrailersTabDisabled');
|
||||
}
|
||||
|
@ -230,9 +230,8 @@
|
||||
|
||||
html += '<div class="formFields"></div>';
|
||||
|
||||
html += '<br/>';
|
||||
html += '<p>';
|
||||
html += '<button type="submit" data-icon="refresh" data-theme="b">' + Globalize.translate('ButtonSync') + '</button>';
|
||||
html += '<button type="submit" data-role="none" class="clearButton"><paper-button raised class="submit block"><iron-icon icon="refresh"></iron-icon><span>' + Globalize.translate('ButtonSync') + '</span></paper-button></button>';
|
||||
html += '</p>';
|
||||
|
||||
html += '</form>';
|
||||
|
@ -14,6 +14,7 @@
|
||||
font-weight: 400;
|
||||
text-transform: none;
|
||||
color: #ccc !important;
|
||||
padding-top: 16px;
|
||||
}
|
||||
|
||||
.libraryViewNav .ui-btn-active {
|
||||
@ -97,13 +98,41 @@ h1, h1 a {
|
||||
background: #1c1c1c;
|
||||
}
|
||||
|
||||
.libraryViewNavLinkContent {
|
||||
padding-top: 4px;
|
||||
}
|
||||
|
||||
.libraryMenuButtonText {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
right: 0;
|
||||
left: 100px;
|
||||
right: 100px;
|
||||
text-align: center;
|
||||
font-size: 16px;
|
||||
margin: 0 auto !important;
|
||||
}
|
||||
|
||||
.libraryViewNav .material-icons {
|
||||
display: block;
|
||||
margin-top: -5px;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
paper-button[raised].submit {
|
||||
background: none !important;
|
||||
color: #2ad !important;
|
||||
border: 1px solid #2ad !important;
|
||||
}
|
||||
|
||||
paper-button[raised].more {
|
||||
background: none !important;
|
||||
color: orange !important;
|
||||
border: 1px solid orange !important;
|
||||
}
|
||||
|
||||
paper-button[raised].secondary {
|
||||
background: none !important;
|
||||
color: green !important;
|
||||
border: 1px solid green !important;
|
||||
}
|
||||
|
||||
paper-button[raised].cancel {
|
||||
background: none !important;
|
||||
color: #666 !important;
|
||||
border: 1px solid #666 !important;
|
||||
}
|
@ -489,7 +489,7 @@
|
||||
currentSession.on('message', handleMessage);
|
||||
currentSession.on('disconnect', handleSessionDisconnect);
|
||||
|
||||
if (connectToSession || $.browser.safari) {
|
||||
if (connectToSession /*|| $.browser.safari*/) {
|
||||
currentSession.connect().success(function () {
|
||||
|
||||
onWebAppSessionConnect(currentSession, device);
|
||||
|
116
dashboard-ui/thirdparty/cordova/generaldevice.js
vendored
116
dashboard-ui/thirdparty/cordova/generaldevice.js
vendored
@ -7,6 +7,7 @@
|
||||
var PlayerName = "ConnectSDK";
|
||||
var currentDevice;
|
||||
var currentDeviceId;
|
||||
var currentMediaControl;
|
||||
|
||||
// MediaController needs this
|
||||
self.name = PlayerName;
|
||||
@ -91,7 +92,41 @@
|
||||
playItemInternal(items[0], null, serverAddress);
|
||||
};
|
||||
|
||||
function playItemInternal(items, startPosition) {
|
||||
function validatePlaybackInfoResult(result) {
|
||||
|
||||
if (result.ErrorCode) {
|
||||
|
||||
MediaController.showPlaybackInfoErrorMessage(result.ErrorCode);
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function getOptimalMediaSource(mediaType, versions) {
|
||||
|
||||
var optimalVersion = versions.filter(function (v) {
|
||||
|
||||
v.enableDirectPlay = MediaController.supportsDirectPlay(v);
|
||||
|
||||
return v.enableDirectPlay;
|
||||
|
||||
})[0];
|
||||
|
||||
if (!optimalVersion) {
|
||||
optimalVersion = versions.filter(function (v) {
|
||||
|
||||
return v.SupportsDirectStream;
|
||||
|
||||
})[0];
|
||||
}
|
||||
|
||||
return optimalVersion || versions.filter(function (s) {
|
||||
return s.SupportsTranscoding;
|
||||
})[0];
|
||||
}
|
||||
|
||||
function playItemInternal(item, startPosition) {
|
||||
|
||||
if (item == null) {
|
||||
throw new Error("item cannot be null");
|
||||
@ -113,43 +148,71 @@
|
||||
Dashboard.showModalLoadingMsg();
|
||||
}
|
||||
|
||||
//getPlaybackInfo(item.Id, deviceProfile, startPosition).done(function (playbackInfoResult) {
|
||||
MediaController.getPlaybackInfo(item.Id, deviceProfile, startPosition).done(function (playbackInfoResult) {
|
||||
|
||||
// if (validatePlaybackInfoResult(playbackInfoResult)) {
|
||||
if (validatePlaybackInfoResult(playbackInfoResult)) {
|
||||
|
||||
// var mediaSource = getOptimalMediaSource(item.MediaType, playbackInfoResult.MediaSources);
|
||||
var mediaSource = getOptimalMediaSource(item.MediaType, playbackInfoResult.MediaSources);
|
||||
|
||||
// if (mediaSource) {
|
||||
if (mediaSource) {
|
||||
|
||||
// if (mediaSource.RequiresOpening) {
|
||||
if (mediaSource.RequiresOpening) {
|
||||
|
||||
// getLiveStream(item.Id, playbackInfoResult.PlaySessionId, deviceProfile, startPosition, mediaSource, null, null).done(function (openLiveStreamResult) {
|
||||
getLiveStream(item.Id, playbackInfoResult.PlaySessionId, deviceProfile, startPosition, mediaSource, null, null).done(function (openLiveStreamResult) {
|
||||
|
||||
// openLiveStreamResult.MediaSource.enableDirectPlay = supportsDirectPlay(openLiveStreamResult.MediaSource);
|
||||
openLiveStreamResult.MediaSource.enableDirectPlay = supportsDirectPlay(openLiveStreamResult.MediaSource);
|
||||
|
||||
// playInternalPostMediaSourceSelection(item, openLiveStreamResult.MediaSource, startPosition, callback);
|
||||
// });
|
||||
playInternalPostMediaSourceSelection(item, openLiveStreamResult.MediaSource, startPosition, callback);
|
||||
});
|
||||
|
||||
// } else {
|
||||
// playInternalPostMediaSourceSelection(item, mediaSource, startPosition, callback);
|
||||
// }
|
||||
// } else {
|
||||
// Dashboard.hideModalLoadingMsg();
|
||||
// MediaController.showPlaybackInfoErrorMessage('NoCompatibleStream');
|
||||
// }
|
||||
// }
|
||||
|
||||
//});
|
||||
} else {
|
||||
playInternalPostMediaSourceSelection(item, mediaSource, startPosition, callback);
|
||||
}
|
||||
} else {
|
||||
Dashboard.hideModalLoadingMsg();
|
||||
MediaController.showPlaybackInfoErrorMessage('NoCompatibleStream');
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
function playInternalPostMediaSourceSelection(item, mediaSource, startPosition, deferred) {
|
||||
|
||||
Dashboard.hideModalLoadingMsg();
|
||||
|
||||
var streamInfo = MediaPlayer.createStreamInfo('Video', item, mediaSource, startPosition);
|
||||
|
||||
currentDevice.getMediaPlayer().playMedia(
|
||||
streamInfo.url,
|
||||
streamInfo.MimeType,
|
||||
{
|
||||
title: item.Name,
|
||||
description: item.Overview || '',
|
||||
shouldLoop: false
|
||||
}
|
||||
).success(function (launchSession, mediaControl) {
|
||||
|
||||
console.log("Video launch successful");
|
||||
currentMediaControl = mediaControl && mediaControl.acquire();
|
||||
|
||||
}).error(function (err) {
|
||||
|
||||
console.log("error: " + err.message);
|
||||
});
|
||||
|
||||
deferred.resolveWith(null, [streamInfo]);
|
||||
}
|
||||
|
||||
self.unpause = function () {
|
||||
if (currentDevice) {
|
||||
currentDevice.getMediaControl().pause();
|
||||
if (currentMediaControl) {
|
||||
currentMediaControl.pause();
|
||||
}
|
||||
};
|
||||
|
||||
self.pause = function () {
|
||||
if (currentDevice) {
|
||||
currentDevice.getMediaControl().pause();
|
||||
if (currentMediaControl) {
|
||||
currentMediaControl.pause();
|
||||
}
|
||||
};
|
||||
|
||||
@ -198,8 +261,8 @@
|
||||
};
|
||||
|
||||
self.stop = function () {
|
||||
if (currentDevice) {
|
||||
currentDevice.getMediaControl().stop();
|
||||
if (currentMediaControl) {
|
||||
currentMediaControl.stop();
|
||||
}
|
||||
};
|
||||
|
||||
@ -586,6 +649,7 @@
|
||||
//currentDevice.disconnect();
|
||||
currentDevice = null;
|
||||
currentDeviceId = null;
|
||||
currentMediaControl = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -18,11 +18,11 @@
|
||||
}
|
||||
|
||||
paper-button.more {
|
||||
color: #388E3C;
|
||||
color: #EC407A;
|
||||
}
|
||||
|
||||
paper-button[raised].more {
|
||||
background: #388E3C;
|
||||
background: #EC407A;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
@ -92,7 +92,7 @@ paper-button.mini {
|
||||
}
|
||||
|
||||
paper-button.mini .content {
|
||||
padding: 0.35em 0.7em;
|
||||
padding: 0.4em 0.7em;
|
||||
}
|
||||
|
||||
|
||||
|
@ -9,11 +9,11 @@
|
||||
<link rel="import" href="thirdparty/paper-button/paper-button.html">
|
||||
|
||||
<div class="libraryViewNav globalNav" style="display: none;">
|
||||
<a href="index.html">${TabHome}</a>
|
||||
<a href="homelatest.html">${TabLatest}</a>
|
||||
<a href="#" class="ui-btn-active">${TabNextUp}</a>
|
||||
<a href="favorites.html">${TabFavorites}</a>
|
||||
<a href="tvupcoming.html">${TabUpcoming}</a>
|
||||
<a href="index.html"><i class="material-icons">home</i>${TabHome}</a>
|
||||
<a href="homelatest.html"><i class="material-icons">new_releases</i>${TabLatest}</a>
|
||||
<a href="#" class="ui-btn-active"><i class="material-icons">navigate_next</i>${TabNextUp}</a>
|
||||
<a href="favorites.html"><i class="material-icons">favorite</i>${TabFavorites}</a>
|
||||
<a href="tvupcoming.html"><i class="material-icons">schedule</i>${TabUpcoming}</a>
|
||||
</div>
|
||||
<div class="libraryViewNav scopedLibraryViewNav" style="display: none;">
|
||||
<a href="tvrecommended.html" class="ui-btn-active">${TabSuggestions}</a>
|
||||
|
@ -6,11 +6,11 @@
|
||||
<body>
|
||||
<div id="tvUpcomingPage" data-role="page" class="page libraryPage backdropPage" data-backdroptype="series" data-require="scripts/tvupcoming">
|
||||
<div class="libraryViewNav globalNav" style="display: none;">
|
||||
<a href="index.html">${TabHome}</a>
|
||||
<a href="homelatest.html">${TabLatest}</a>
|
||||
<a href="tvrecommended.html">${TabNextUp}</a>
|
||||
<a href="favorites.html">${TabFavorites}</a>
|
||||
<a href="#" class="ui-btn-active">${TabUpcoming}</a>
|
||||
<a href="index.html"><i class="material-icons">home</i>${TabHome}</a>
|
||||
<a href="homelatest.html"><i class="material-icons">new_releases</i>${TabLatest}</a>
|
||||
<a href="tvrecommended.html"><i class="material-icons">navigate_next</i>${TabNextUp}</a>
|
||||
<a href="favorites.html"><i class="material-icons">favorite</i>${TabFavorites}</a>
|
||||
<a href="#" class="ui-btn-active"><i class="material-icons">schedule</i>${TabUpcoming}</a>
|
||||
</div>
|
||||
<div class="libraryViewNav scopedLibraryViewNav" style="display: none;">
|
||||
<a href="tvrecommended.html">${TabSuggestions}</a>
|
||||
|
Loading…
Reference in New Issue
Block a user