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

reduce uses of mobile.activepage

This commit is contained in:
Luke Pulverenti 2016-06-11 13:10:06 -04:00
parent efecb676cb
commit 45063b063e
6 changed files with 97 additions and 113 deletions

View file

@ -1,4 +1,4 @@
<div id="mySyncJobPage" data-role="page" class="page libraryPage syncJobPage mySyncPage noSecondaryNavPage" data-contextname="${TitleSync}" data-require="scripts/syncjob,paper-fab,paper-item-body,paper-icon-item" data-backbutton="true" data-menubutton="false">
<div id="mySyncJobPage" data-role="page" class="page libraryPage syncJobPage mySyncPage noSecondaryNavPage" data-contextname="${TitleSync}" data-backbutton="true" data-menubutton="false">
<div data-role="content">

View file

@ -1,4 +1,4 @@
define(['scrollHelper', 'appSettings', 'appStorage', 'apphost', 'datetime', 'itemHelper', 'mediaInfo', 'scrollStyles'], function (scrollHelper, appSettings, appStorage, appHost, datetime, itemHelper, mediaInfo) {
define(['scrollHelper', 'viewManager', 'appSettings', 'appStorage', 'apphost', 'datetime', 'itemHelper', 'mediaInfo', 'scrollStyles'], function (scrollHelper, viewManager, appSettings, appStorage, appHost, datetime, itemHelper, mediaInfo) {
function parentWithClass(elem, className) {
@ -381,9 +381,7 @@
if (window.location.href.toLowerCase().indexOf(url.toLowerCase()) != -1) {
if (window.$) {
afterNavigate.call($.mobile.activePage);
}
afterNavigate.call(viewManager.currentView());
} else {
pageClassOn('pagebeforeshow', 'page', afterNavigate);

View file

@ -65,15 +65,6 @@
}
function processImageChangeResult() {
Dashboard.hideLoadingMsg();
var page = $($.mobile.activePage)[0];
reloadUser(page);
}
function onFileReaderError(evt) {
Dashboard.hideLoadingMsg();
@ -101,11 +92,6 @@
};
}
function onFileReaderOnloadStart(evt) {
$('#fldUpload', $.mobile.activePage).hide();
}
function onFileReaderAbort(evt) {
Dashboard.hideLoadingMsg();
@ -130,7 +116,9 @@
var reader = new FileReader();
reader.onerror = onFileReaderError;
reader.onloadstart = onFileReaderOnloadStart;
reader.onloadstart = function() {
$('#fldUpload', page).hide();
};
reader.onabort = onFileReaderAbort;
// Closure to capture the file information.
@ -147,15 +135,6 @@
reader.readAsDataURL(file);
}
function onImageDrop(e) {
e.preventDefault();
setFiles($.mobile.activePage, e.originalEvent.dataTransfer.files);
return false;
}
function onImageDragOver(e) {
e.preventDefault();
@ -165,7 +144,42 @@
return false;
}
function myProfilePage() {
$(document).on('pageinit', "#userImagePage", function () {
var page = this;
reloadUser(page);
$("#userImageDropZone", page).on('dragover', onImageDragOver).on('drop', function(e) {
e.preventDefault();
setFiles(page, e.originalEvent.dataTransfer.files);
return false;
});
$('#btnDeleteImage', page).on('click', function () {
require(['confirm'], function (confirm) {
confirm(Globalize.translate('DeleteImageConfirmation'), Globalize.translate('DeleteImage')).then(function () {
Dashboard.showLoadingMsg();
var userId = getParameterByName("userId");
ApiClient.deleteUserImage(userId, "primary").then(function () {
Dashboard.hideLoadingMsg();
reloadUser(page);
});
});
});
});
$('.newImageForm').on('submit', function () {
var self = this;
@ -185,38 +199,16 @@
var userId = getParameterByName("userId");
ApiClient.uploadUserImage(userId, 'Primary', file).then(processImageChangeResult);
ApiClient.uploadUserImage(userId, 'Primary', file).then(function () {
Dashboard.hideLoadingMsg();
reloadUser(page);
});
return false;
};
}
window.MyProfilePage = new myProfilePage();
$(document).on('pageinit', "#userImagePage", function () {
var page = this;
reloadUser(page);
$("#userImageDropZone", page).on('dragover', onImageDragOver).on('drop', onImageDrop);
$('#btnDeleteImage', page).on('click', function () {
require(['confirm'], function (confirm) {
confirm(Globalize.translate('DeleteImageConfirmation'), Globalize.translate('DeleteImage')).then(function () {
Dashboard.showLoadingMsg();
var userId = getParameterByName("userId");
ApiClient.deleteUserImage(userId, "primary").then(processImageChangeResult);
});
});
});
$('.newImageForm').off('submit', MyProfilePage.onImageSubmit).on('submit', MyProfilePage.onImageSubmit);
page.querySelector('#uploadUserImage').addEventListener('change', function (e) {
setFiles(page, e.target.files);

View file

@ -52,7 +52,7 @@ var Dashboard = {
// Bounce to the login screen, but not if a password entry fails, obviously
if (url.indexOf('/password') == -1 &&
url.indexOf('/authenticate') == -1 &&
!$($.mobile.activePage).is('.standalonePage')) {
!ViewManager.currentView().classList.contains('.standalonePage')) {
if (data.errorCode == "ParentalControl") {
@ -1221,7 +1221,9 @@ var Dashboard = {
},
exitOnBack: function () {
return $($.mobile.activePage).is('#indexPage');
var currentView = ViewManager.currentView();
return !currentView || currentView.id == 'indexPage';
},
exit: function () {
@ -1811,6 +1813,7 @@ var AppInfo = {};
define("tvguide", [embyWebComponentsBowerPath + "/guide/guide", 'embyRouter'], returnFirstDependency);
define("viewManager", [embyWebComponentsBowerPath + "/viewmanager/viewmanager"], function (viewManager) {
window.ViewManager = viewManager;
viewManager.dispatchPageEvents(true);
return viewManager;
});
@ -2813,9 +2816,10 @@ var AppInfo = {};
defineRoute({
path: '/mysyncjob.html',
dependencies: [],
dependencies: ['paper-fab', 'paper-item-body', 'paper-icon-item'],
autoFocus: false,
transition: 'fade'
transition: 'fade',
controller: 'scripts/syncjob'
});
defineRoute({
@ -2972,8 +2976,10 @@ var AppInfo = {};
defineRoute({
path: '/syncjob.html',
dependencies: [],
autoFocus: false
dependencies: ['paper-fab', 'paper-item-body', 'paper-icon-item'],
autoFocus: false,
transition: 'fade',
controller: 'scripts/syncjob'
});
defineRoute({

View file

@ -33,10 +33,7 @@
return function (targetId) {
var deferred = $.Deferred();
deferred.resolveWith(null, [dialogOptions]);
return deferred.promise();
return Promise.resolve(dialogOptions);
};
}
@ -367,12 +364,19 @@
}
return function (view, params) {
view.querySelector('.syncJobForm').addEventListener('submit', function (e) {
saveJob(view);
e.preventDefault();
return false;
});
function onWebSocketMessage(e, msg) {
var page = $.mobile.activePage;
if (msg.MessageType == "SyncJob") {
loadJobInfo(page, msg.Data.Job, msg.Data.JobItems);
loadJobInfo(view, msg.Data.Job, msg.Data.JobItems);
}
}
@ -385,7 +389,6 @@
if (ApiClient.isWebSocketOpen()) {
ApiClient.sendWebSocketMessage("SyncJobStart", startParams);
}
}
function stopListening() {
@ -396,34 +399,19 @@
}
function onSubmit() {
var form = this;
var page = $(form).parents('.page');
saveJob(page);
return false;
}
$(document).on('pageinit', ".syncJobPage", function () {
$('.syncJobForm').off('submit', onSubmit).on('submit', onSubmit);
}).on('pageshow', ".syncJobPage", function () {
view.addEventListener('viewshow', function () {
var page = this;
loadJob(page);
startListening(page);
Events.on(ApiClient, "websocketmessage", onWebSocketMessage);
});
}).on('pagebeforehide', ".syncJobPage", function () {
var page = this;
view.addEventListener('viewbeforehide', function () {
stopListening();
Events.off(ApiClient, "websocketmessage", onWebSocketMessage);
});
};
});

View file

@ -1,4 +1,4 @@
<div id="syncJobPage" data-role="page" class="page type-interior syncConfigurationPage syncJobPage withTabs" data-helpurl="https://github.com/MediaBrowser/Wiki/wiki/Sync" data-require="scripts/syncjob,paper-fab,paper-item-body,paper-icon-item">
<div id="syncJobPage" data-role="page" class="page type-interior syncConfigurationPage syncJobPage withTabs" data-helpurl="https://github.com/MediaBrowser/Wiki/wiki/Sync">
<div data-role="content">
<div class="content-primary">