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

fix recording button

This commit is contained in:
Luke Pulverenti 2015-06-23 18:13:06 -04:00
parent 02b433a97f
commit c73ed976d9
30 changed files with 165 additions and 129 deletions

View file

@ -99,13 +99,7 @@
function setDefault(page) {
var backdropContainer = $('.backdropContainer');
if (backdropContainer.length) {
backdropContainer.css('backgroundImage', 'url(css/images/splash.jpg)');
} else {
$(document.body).prepend('<div class="backdropContainer" style="background-image:url(css/images/splash.jpg);top:0;"></div>');
}
getElement().css('backgroundImage', 'url(css/images/splash.jpg)');
$(page).addClass('backdropPage staticBackdropPage');
}

View file

@ -420,10 +420,10 @@
Dashboard.navigate('itemdetails.html?id=' + albumid);
break;
case 'artist':
Dashboard.navigate('tembynamedetails.html?context=music&id=' + artistid);
Dashboard.navigate('itembynamedetails.html?context=music&id=' + artistid);
break;
case 'play':
MediaController.MediaController(itemId);
MediaController.play(itemId);
break;
case 'playallfromhere':
$(card).parents('.itemsContainer').trigger('playallfromhere', [index]);
@ -1075,6 +1075,11 @@
return false;
}
function resetImages(page) {
$('.cardImage', page).remove();
}
$(document).on('pageinitdepends', ".libraryPage", function () {
var page = this;
@ -1127,6 +1132,11 @@
hideSelections(page);
$('.viewTabButton:first', page).trigger('click');
}).on('pagebeforehide', ".libraryPage", function () {
var page = this;
resetImages(page);
});
function renderUserDataChanges(card, userData) {

View file

@ -40,7 +40,7 @@
}
if (!$.browser.mobile && !AppInfo.isNativeApp) {
html += '<a href="dashboard.html" class="headerButton headerButtonRight dashboardEntryHeaderButton hide" onclick="LibraryMenu.onLinkClicked(this);return false;"><i class="material-icons">settings</i></a>';
html += '<a href="dashboard.html" class="headerButton headerButtonRight dashboardEntryHeaderButton hide" onclick="return LibraryMenu.onLinkClicked(this);"><i class="material-icons">settings</i></a>';
//html += '<a href="dashboard.html" class="headerButton headerButtonRight dashboardEntryHeaderButton clearLink" style="display:none;"><paper-icon-button icon="settings"></paper-icon-button></a>';
}
@ -168,11 +168,13 @@
var requiresDrawerRefresh = true;
var requiresDashboardDrawerRefresh = true;
var lastOpenTime = new Date().getTime();
function openMainDrawer() {
var drawerPanel = $('.mainDrawerPanel')[0];
drawerPanel.openDrawer();
lastOpenTime = new Date().getTime();
}
function onMainDrawerOpened() {
@ -202,7 +204,6 @@
requiresDrawerRefresh = false;
updateSidebarOnClicks();
updateLibraryNavLinks($.mobile.activePage);
});
}
@ -215,9 +216,6 @@
var drawerPanel = $('.mainDrawerPanel')[0];
drawerPanel.closeDrawer();
}
function updateSidebarOnClicks() {
$('.mainDrawerContent a').off('click.closeMainDrawer').on('click.closeMainDrawer', closeMainDrawer);
}
function ensureDrawerStructure(drawer) {
@ -277,18 +275,18 @@
html += '</div>';
html += '</div>';
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="remote" href="index.html" onclick="LibraryMenu.onLinkClicked(this);return false;"><iron-icon icon="home" class="sidebarLinkIcon" style="color:#2196F3;"></iron-icon><span class="sidebarLinkText">' + Globalize.translate('ButtonHome') + '</span></a>';
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="remote" href="index.html" onclick="return LibraryMenu.onLinkClicked(this);"><iron-icon icon="home" class="sidebarLinkIcon" style="color:#2196F3;"></iron-icon><span class="sidebarLinkText">' + Globalize.translate('ButtonHome') + '</span></a>';
} else {
html += '<div style="margin-top:5px;"></div>';
html += '<a class="lnkMediaFolder sidebarLink" href="' + homeHref + '" onclick="LibraryMenu.onLinkClicked(this);return false;">';
html += '<a class="lnkMediaFolder sidebarLink" href="' + homeHref + '" onclick="return LibraryMenu.onLinkClicked(this);">';
html += '<div class="lazy" data-src="css/images/mblogoicon.png" style="width:' + 28 + 'px;height:' + 28 + 'px;background-size:contain;background-repeat:no-repeat;background-position:center center;border-radius:1000px;vertical-align:middle;margin:0 1.6em 0 1.5em;display:inline-block;"></div>';
html += Globalize.translate('ButtonHome');
html += '</a>';
}
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="remote" href="nowplaying.html" onclick="LibraryMenu.onLinkClicked(this);return false;"><iron-icon icon="tablet-android" class="sidebarLinkIcon" style="color:#673AB7;"></iron-icon><span class="sidebarLinkText">' + Globalize.translate('ButtonRemote') + '</span></a>';
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="remote" href="nowplaying.html" onclick="return LibraryMenu.onLinkClicked(this);"><iron-icon icon="tablet-android" class="sidebarLinkIcon" style="color:#673AB7;"></iron-icon><span class="sidebarLinkText">' + Globalize.translate('ButtonRemote') + '</span></a>';
$('.userheader', drawer).html(html).lazyChildren();
}
@ -328,33 +326,33 @@
html += '</div>';
html += '<a class="sidebarLink lnkMediaFolder lnkManageServer" data-itemid="dashboard" href="#"><iron-icon icon="dashboard" class="sidebarLinkIcon"></iron-icon><span class="sidebarLinkText">' + Globalize.translate('ButtonManageServer') + '</span></a>';
html += '<a class="sidebarLink lnkMediaFolder editorViewMenu" data-itemid="editor" onclick="LibraryMenu.onLinkClicked(this);return false;" href="edititemmetadata.html"><iron-icon icon="mode-edit" class="sidebarLinkIcon"></iron-icon><span class="sidebarLinkText">' + Globalize.translate('ButtonMetadataManager') + '</span></a>';
html += '<a class="sidebarLink lnkMediaFolder editorViewMenu" data-itemid="editor" onclick="return LibraryMenu.onLinkClicked(this);" href="edititemmetadata.html"><iron-icon icon="mode-edit" class="sidebarLinkIcon"></iron-icon><span class="sidebarLinkText">' + Globalize.translate('ButtonMetadataManager') + '</span></a>';
if (!$.browser.mobile && !AppInfo.isTouchPreferred) {
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="reports" onclick="LibraryMenu.onLinkClicked(this);return false;" href="reports.html"><iron-icon icon="insert-chart" class="sidebarLinkIcon"></iron-icon><span class="sidebarLinkText">' + Globalize.translate('ButtonReports') + '</span></a>';
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="reports" onclick="return LibraryMenu.onLinkClicked(this);" href="reports.html"><iron-icon icon="insert-chart" class="sidebarLinkIcon"></iron-icon><span class="sidebarLinkText">' + Globalize.translate('ButtonReports') + '</span></a>';
}
html += '</div>';
html += '<div class="userMenuOptions">';
html += '<div class="sidebarDivider"></div>';
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="inbox" onclick="LibraryMenu.onLinkClicked(this);return false;" href="notificationlist.html"><iron-icon icon="inbox" class="sidebarLinkIcon"></iron-icon>';
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="inbox" onclick="return LibraryMenu.onLinkClicked(this);" href="notificationlist.html"><iron-icon icon="inbox" class="sidebarLinkIcon"></iron-icon>';
html += Globalize.translate('ButtonInbox');
html += '<div class="btnNotifications"><div class="btnNotificationsInner">0</div></div>';
html += '</a>';
if (user.localUser) {
html += '<a class="sidebarLink lnkMediaFolder lnkMySettings" onclick="LibraryMenu.onLinkClicked(this);return false;" data-itemid="mysync" href="mypreferencesdisplay.html?userId=' + user.localUser.Id + '"><iron-icon icon="settings" class="sidebarLinkIcon"></iron-icon><span class="sidebarLinkText">' + Globalize.translate('ButtonSettings') + '</span></a>';
if (user.localUser && showUserAtTop()) {
html += '<a class="sidebarLink lnkMediaFolder lnkMySettings" onclick="return LibraryMenu.onLinkClicked(this);" data-itemid="mysync" href="mypreferencesdisplay.html?userId=' + user.localUser.Id + '"><iron-icon icon="settings" class="sidebarLinkIcon"></iron-icon><span class="sidebarLinkText">' + Globalize.translate('ButtonSettings') + '</span></a>';
}
html += '<a class="sidebarLink lnkMediaFolder lnkMySync" data-itemid="mysync" onclick="LibraryMenu.onLinkClicked(this);return false;" href="mysync.html"><iron-icon icon="refresh" class="sidebarLinkIcon"></iron-icon><span class="sidebarLinkText">' + Globalize.translate('ButtonSync') + '</span></a>';
html += '<a class="sidebarLink lnkMediaFolder lnkMySync" data-itemid="mysync" onclick="return LibraryMenu.onLinkClicked(this);" href="mysync.html"><iron-icon icon="refresh" class="sidebarLinkIcon"></iron-icon><span class="sidebarLinkText">' + Globalize.translate('ButtonSync') + '</span></a>';
if (Dashboard.isConnectMode()) {
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="selectserver" onclick="LibraryMenu.onLinkClicked(this);return false;" href="selectserver.html"><span class="fa fa-globe sidebarLinkIcon"></span><span class="sidebarLinkText">' + Globalize.translate('ButtonSelectServer') + '</span></a>';
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="selectserver" onclick="return LibraryMenu.onLinkClicked(this);" href="selectserver.html"><span class="fa fa-globe sidebarLinkIcon"></span><span class="sidebarLinkText">' + Globalize.translate('ButtonSelectServer') + '</span></a>';
}
if (showUserAtTop()) {
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="logout" onclick="LibraryMenu.onLinkClicked(this);return false;" href="#" onclick="Dashboard.logout();"><iron-icon icon="lock" class="sidebarLinkIcon"></iron-icon><span class="sidebarLinkText">' + Globalize.translate('ButtonSignOut') + '</span></a>';
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="logout" onclick="return LibraryMenu.onLinkClicked(this);" href="#" onclick="Dashboard.logout();"><iron-icon icon="lock" class="sidebarLinkIcon"></iron-icon><span class="sidebarLinkText">' + Globalize.translate('ButtonSignOut') + '</span></a>';
}
html += '</div>';
@ -440,7 +438,7 @@
color = "#293AAE";
}
return '<a data-itemid="' + itemId + '" class="lnkMediaFolder sidebarLink" onclick="LibraryMenu.onLinkClicked(this);return false;" href="' + getItemHref(i, i.CollectionType) + '"><iron-icon icon="' + icon + '" class="sidebarLinkIcon" style="color:' + color + '"></iron-icon><span class="sectionName">' + i.Name + '</span></a>';
return '<a data-itemid="' + itemId + '" class="lnkMediaFolder sidebarLink" onclick="return LibraryMenu.onLinkClicked(this);" href="' + getItemHref(i, i.CollectionType) + '"><iron-icon icon="' + icon + '" class="sidebarLinkIcon" style="color:' + color + '"></iron-icon><span class="sectionName">' + i.Name + '</span></a>';
}).join('');
@ -454,7 +452,6 @@
$('.libraryMenuButtonText').html(text);
});
updateSidebarOnClicks();
});
if (user.Policy.IsAdministrator) {
@ -508,11 +505,17 @@
onLinkClicked: function (link) {
closeMainDrawer();
// There doesn't seem to be a way to detect if the drawer is in the process of opening, so try to handle that here
if ((new Date().getTime() - lastOpenTime) > 200) {
setTimeout(function () {
Dashboard.navigate(link.href);
}, 1000);
closeMainDrawer();
setTimeout(function () {
Dashboard.navigate(link.href);
}, 300);
}
return false;
}
};

View file

@ -19,15 +19,6 @@
var channelsPromise;
function showLoadingMessage(page) {
Dashboard.showModalLoadingMsg();
}
function hideLoadingMessage(page) {
Dashboard.hideModalLoadingMsg();
}
function normalizeDateToTimeslot(date) {
var minutesOffset = date.getMinutes() - cellCurationMinutes;
@ -51,7 +42,7 @@
function reloadGuide(page) {
showLoadingMessage(page);
Dashboard.showModalLoadingMsg();
channelQuery.userId = Dashboard.getCurrentUserId();
@ -77,7 +68,7 @@
renderGuide(page, date, channelsResult.Items, programsResult.Items);
hideLoadingMessage(page);
Dashboard.hideModalLoadingMsg();
});
@ -407,14 +398,16 @@
function reloadPage(page) {
showLoadingMessage(page);
$('.guideRequiresUnlock', page).hide();
RegistrationServices.validateFeature('livetv').done(function () {
Dashboard.showModalLoadingMsg();
reloadPageAfterValidation(page, 1000);
}).fail(function () {
Dashboard.showModalLoadingMsg();
var limit = 5;
$('.guideRequiresUnlock', page).show();
$('.unlockText', page).html(Globalize.translate('MessageLiveTvGuideRequiresUnlock', limit));

View file

@ -746,7 +746,7 @@
html += '<div class="players"></div>';
html += '<br/>';
html += '<p><a href="nowplaying.html" data-transition="slideup" class="clearLink"><paper-button raised class="block"><iron-icon icon="tablet-android"></iron-icon><span>' + Globalize.translate('ButtonRemoteControl') + '</span></paper-button></a></p>';
html += '<p><a href="nowplaying.html" class="clearLink"><paper-button raised class="block"><iron-icon icon="tablet-android"></iron-icon><span>' + Globalize.translate('ButtonRemoteControl') + '</span></paper-button></a></p>';
html += '</div>';

View file

@ -572,14 +572,14 @@
ApiClient.stopActiveEncodings(playSessionId).done(function () {
self.startTimeTicksOffset = newPositionTicks;
mediaRenderer.setCurrentSrc(url);
mediaRenderer.setCurrentSrc(url, self.currentItem, self.currentMediaSource);
});
self.updateTextStreamUrls(newPositionTicks || 0);
} else {
self.startTimeTicksOffset = newPositionTicks;
mediaRenderer.setCurrentSrc(url);
mediaRenderer.setCurrentSrc(url, self.currentItem, self.currentMediaSource);
}
}
@ -1669,7 +1669,7 @@
// Set volume first to avoid an audible change
mediaRenderer.volume(initialVolume);
mediaRenderer.setPoster(self.getPosterUrl(item));
mediaRenderer.setCurrentSrc(audioUrl);
mediaRenderer.setCurrentSrc(audioUrl, item, mediaSource);
$(mediaRenderer).on("volumechange.mediaplayerevent", function () {

View file

@ -29,8 +29,8 @@
html += '<div class="nowPlayingText"></div>';
// The onclicks are needed due to the return false above
html += '<a class="mediaButton remoteControlButton imageButton" href="nowplaying.html" onclick="Dashboard.navigate(this.href, false, \'slideup\');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, false, \'slideup\');return false;" data-transition="slideup" title="' + Globalize.translate('ButtonPlaylist') + '"><i class="fa fa-list"></i></a>';
html += '<a class="mediaButton remoteControlButton imageButton" href="nowplaying.html" onclick="Dashboard.navigate(this.href, false, this.getAttribute(\'data-transition\'));return false;" 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, false, this.getAttribute(\'data-transition\'));return false;" 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>';

View file

@ -71,7 +71,7 @@
html += "</ul>";
$('#divScheduledTasks', page).html(html).trigger('create');
$('.divScheduledTasks', page).html(html).trigger('create');
}
function getTaskProgressHtml(task) {
@ -157,7 +157,7 @@
elem = btnTask.addClass('btnStartTask').removeClass('btnStopTask').hide().data("icon", "action").attr("title", Globalize.translate('ButtonStart'));
elem.removeClass('ui-icon-stdeleteop').addClass('ui-icon-action');
elem.removeClass('ui-icon-delete').addClass('ui-icon-action');
}
}
@ -183,7 +183,7 @@
var page = this;
$('#divScheduledTasks', page).on('click', '.btnStartTask', function () {
$('.divScheduledTasks', page).on('click', '.btnStartTask', function () {
var button = this;
var id = button.getAttribute('data-taskid');
@ -221,8 +221,6 @@
$(ApiClient).off("websocketmessage", onWebSocketMessage).off("websocketopen", onWebSocketConnectionOpen);
stopInterval();
$('#divScheduledTasks', page).off('click', '.btnStartTask').off('click', '.btnStopTask');
});
})(jQuery, document, window);

View file

@ -69,7 +69,7 @@
html += '<div class="cardImage" style="text-align:center;">';
var icon = server.Id == 'new' ? 'plus-circle' : 'server';
html += '<i class="fa fa-' + icon + '" style="color:#fff;vertical-align:middle;font-size:100px;"></i>';
html += '<i class="fa fa-' + icon + '" style="color:#fff;vertical-align:middle;font-size:100px;margin-top:40px;"></i>';
}
html += "</div>";
@ -306,7 +306,7 @@
html += '<a class="cardContent" href="' + href + '">';
html += '<div class="cardImage" style="text-align:center;">';
html += '<i class="fa fa-globe" style="color:#fff;vertical-align:middle;font-size:100px;"></i>';
html += '<i class="fa fa-globe" style="color:#fff;vertical-align:middle;font-size:100px;margin-top:40px;"></i>';
html += "</div>";
// cardContent
@ -385,15 +385,6 @@
servers = servers.slice(0);
if (AppInfo.isNativeApp) {
servers.push({
Name: Globalize.translate('ButtonNewServer'),
Id: 'new',
showOptions: false,
href: 'connectlogin.html?mode=manualserver'
});
}
renderServers(page, servers);
Dashboard.hideLoadingMsg();
@ -415,6 +406,12 @@
} else {
$(page).removeClass('libraryPage').removeClass('noSecondaryNavPage').addClass('standalonePage');
}
if (AppInfo.isNativeApp) {
$('.addServer', page).show();
} else {
$('.addServer', page).hide();
}
}
$(document).on('pageinitdepends pagebeforeshowready', "#selectServerPage", function () {

View file

@ -495,7 +495,7 @@ var Dashboard = {
if (!elem.length) {
elem = $('<div class="modalLoading"></div>').appendTo(document.body);
elem = $('<div class="modalLoading" style="display:none;"></div>').appendTo(document.body);
}
@ -929,7 +929,7 @@ var Dashboard = {
name: Globalize.translate('TabMetadata'),
href: "metadata.html",
selected: page.hasClass('metadataConfigurationPage'),
icon: 'details'
icon: 'insert-drive-file'
}, {
name: Globalize.translate('TabPlayback'),
href: "playbackconfiguration.html",
@ -1944,10 +1944,12 @@ var AppInfo = {};
require(['filesystem']);
if (Dashboard.isRunningInCordova()) {
require(['cordova/connectsdk', 'scripts/registrationservices', 'cordova/volume', 'cordova/back']);
require(['cordova/connectsdk', 'scripts/registrationservices', 'cordova/back']);
if ($.browser.android) {
require(['cordova/android/androidcredentials', 'cordova/android/immersive', 'cordova/android/mediasession']);
} else {
require(['cordova/volume']);
}
if ($.browser.safari) {
@ -2038,6 +2040,10 @@ var AppInfo = {};
Dashboard.importCss('css/livetv.css');
return {};
});
define("detailtablecss", [], function () {
Dashboard.importCss('css/detailtable.css');
return {};
});
if (Dashboard.isRunningInCordova() && $.browser.safari) {
define("actionsheet", ["cordova/ios/actionsheet"]);