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

enable unified routing

This commit is contained in:
Luke Pulverenti 2016-03-16 01:33:31 -04:00
parent 2360213901
commit 154f6b5fd8
133 changed files with 6988 additions and 7112 deletions

View file

@ -1,12 +1,13 @@
(function ($, document) {
define([], function () {
$(document).on('pageshow', "#aboutPage", function () {
return function (view, params) {
var page = this;
var elem = $('#appVersionNumber', page);
var self = this;
elem.html(elem.html().replace('{0}', ConnectionManager.appVersion()));
});
view.addEventListener('viewbeforeshow', function (e) {
var elem = view.querySelector('#appVersionNumber');
})(jQuery, document);
elem.innerHTML = elem.innerHTML.replace('{0}', ConnectionManager.appVersion());
});
}
});

View file

@ -35,7 +35,7 @@
var apiClient = result.ApiClient;
Dashboard.onServerChanged(apiClient.getCurrentUserId(), apiClient.accessToken(), apiClient);
Dashboard.navigate('index.html');
Dashboard.navigate('home.html');
}
break;
case MediaBrowser.ConnectionState.ServerSignIn:

View file

@ -1,4 +1,4 @@
(function ($, document, window) {
define(['historyManager'], function (historyManager) {
var currentItemId;
@ -26,12 +26,13 @@
var page = this;
MetadataEditor.setCurrentItemId(null);
$('.libraryTree', page).on('itemclicked', function (event, data) {
if (data.id != currentItemId) {
//$.mobile.urlHistory.ignoreNextHashChange = true;
window.location.hash = 'editItemMetadataPage?id=' + data.id;
MetadataEditor.setCurrentItemId(data.id);
reload(page);
}
});
@ -47,5 +48,4 @@
var page = this;
});
})(jQuery, document, window);
});

View file

@ -433,8 +433,17 @@
});
var itemId;
function setCurrentItemId(id) {
itemId = id;
}
function getCurrentItemId() {
if (itemId) {
return itemId;
}
var url = window.location.hash || window.location.href;
return getParameterByName('id', url);
@ -450,7 +459,8 @@
return ApiClient.getRootFolder(Dashboard.getCurrentUserId());
},
getCurrentItemId: getCurrentItemId
getCurrentItemId: getCurrentItemId,
setCurrentItemId: setCurrentItemId
};
})(jQuery, document, window);

View file

@ -1,4 +1,4 @@
(function ($, document) {
define(['libraryBrowser'], function (LibraryBrowser) {
var defaultFirstSection = 'smalllibrarytiles';
@ -264,13 +264,12 @@
method = 'renderUpcoming';
break;
default:
return;
break;
}
require(depends, function () {
window[scope][method](page, tabContent);
});
}
@ -281,7 +280,7 @@
var tabs = page.querySelector('paper-tabs');
var pages = page.querySelector('neon-animated-pages');
LibraryBrowser.configurePaperLibraryTabs(page, tabs, pages, 'index.html');
LibraryBrowser.configurePaperLibraryTabs(page, tabs, pages, 'home.html');
pages.addEventListener('tabchange', function (e) {
loadTab(page, parseInt(e.target.selected));
@ -301,7 +300,6 @@
});
pageIdOn('pageshow', "indexPage", function () {
var page = this;
Events.on(MediaController, 'playbackstop', onPlaybackStop);
});
@ -331,4 +329,4 @@
renderHomeTab: loadHomeTab
};
})(jQuery, document);
});

View file

@ -1391,7 +1391,7 @@
var onclick = item.PlayAccess == 'Full' && !isStatic ? ' onclick="ItemDetailPage.play(' + chapter.StartPositionTicks + ');"' : '';
html += '<a class="card ' + getThumbShape() + 'Card" href="#play-Chapter-' + i + '"' + onclick + '>';
html += '<a class="card ' + getThumbShape() + 'Card" href="#"' + onclick + '>';
html += '<div class="cardBox">';
html += '<div class="cardScalable">';
@ -1972,7 +1972,7 @@
if (currentItem.Type == 'Recording') {
LibraryBrowser.showTab('livetv.html', 3);
} else {
Dashboard.navigate('index.html');
Dashboard.navigate('home.html');
}
}
}

View file

@ -141,10 +141,10 @@
return true;
}
if (NavHelper.isBack()) {
console.log('Not refreshing data because IsBack=true');
return false;
}
//if (NavHelper.isBack()) {
// console.log('Not refreshing data because IsBack=true');
// return false;
//}
var now = new Date().getTime();
var cacheDuration;
@ -337,7 +337,7 @@
$('.libraryViewNav', ownerpage).removeClass('libraryViewNavWithMinHeight');
}
$(ownerpage).on('pagebeforeshow', LibraryBrowser.onTabbedpagebeforeshow);
ownerpage.addEventListener('viewbeforeshow', LibraryBrowser.onTabbedpagebeforeshow);
pages.addEventListener('iron-select', function () {
// When transition animations are used, add a content loading delay to allow the animations to finish
@ -378,9 +378,9 @@
}
},
onTabbedpagebeforeshow: function () {
onTabbedpagebeforeshow: function (e) {
var page = this;
var page = e.target;
var delay = 0;
var isFirstLoad = false;
@ -393,14 +393,14 @@
if (delay) {
setTimeout(function () {
LibraryBrowser.onTabbedpagebeforeshowInternal(page, isFirstLoad);
LibraryBrowser.onTabbedpagebeforeshowInternal(page, e, isFirstLoad);
}, delay);
} else {
LibraryBrowser.onTabbedpagebeforeshowInternal(page, isFirstLoad);
LibraryBrowser.onTabbedpagebeforeshowInternal(page, e, isFirstLoad);
}
},
onTabbedpagebeforeshowInternal: function (page, isFirstLoad) {
onTabbedpagebeforeshowInternal: function (page, e, isFirstLoad) {
if (isFirstLoad) {
@ -428,7 +428,7 @@
var pages = page.querySelector('neon-animated-pages');
// Go back to the first tab
if (LibraryBrowser.enableFullPaperTabs() && !NavHelper.isBack()) {
if (LibraryBrowser.enableFullPaperTabs() && !e.detail.isRestored) {
if (pages.selected) {
var entryAnimation = pages.entryAnimation;

View file

@ -1,4 +1,4 @@
define(['appSettings', 'appStorage'], function (appSettings, appStorage) {
define(['appSettings', 'appStorage', 'libraryBrowser'], function (appSettings, appStorage, LibraryBrowser) {
var showOverlayTimeout;
@ -715,7 +715,7 @@
return elem;
}
$.fn.createCardMenus = function (options) {
LibraryBrowser.createCardMenus = function (curr, options) {
var preventHover = false;
@ -802,32 +802,37 @@
preventHover = true;
}
curr.removeEventListener('click', onCardClick);
curr.addEventListener('click', onCardClick);
if (AppInfo.isTouchPreferred) {
curr.removeEventListener('contextmenu', disableEvent);
curr.addEventListener('contextmenu', disableEvent);
}
else {
curr.removeEventListener('contextmenu', onContextMenu);
curr.addEventListener('contextmenu', onContextMenu);
curr.removeEventListener('mouseenter', onHoverIn);
curr.addEventListener('mouseenter', onHoverIn, true);
curr.removeEventListener('mouseleave', onHoverOut);
curr.addEventListener('mouseleave', onHoverOut, true);
curr.removeEventListener("touchstart", preventTouchHover);
curr.addEventListener("touchstart", preventTouchHover);
}
initTapHoldMenus(curr);
};
$.fn.createCardMenus = function (options) {
for (var i = 0, length = this.length; i < length; i++) {
var curr = this[i];
curr.removeEventListener('click', onCardClick);
curr.addEventListener('click', onCardClick);
if (AppInfo.isTouchPreferred) {
curr.removeEventListener('contextmenu', disableEvent);
curr.addEventListener('contextmenu', disableEvent);
}
else {
curr.removeEventListener('contextmenu', onContextMenu);
curr.addEventListener('contextmenu', onContextMenu);
curr.removeEventListener('mouseenter', onHoverIn);
curr.addEventListener('mouseenter', onHoverIn, true);
curr.removeEventListener('mouseleave', onHoverOut);
curr.addEventListener('mouseleave', onHoverOut, true);
curr.removeEventListener("touchstart", preventTouchHover);
curr.addEventListener("touchstart", preventTouchHover);
}
initTapHoldMenus(curr);
LibraryBrowser.createCardMenus(curr, options);
}
return this;
@ -1177,7 +1182,7 @@
break;
case 'delete':
LibraryBrowser.deleteItems(items).then(function () {
Dashboard.navigate('index.html');
Dashboard.navigate('home.html');
});
hideSelections();
break;

View file

@ -116,7 +116,7 @@
headerUserButton.src = src;
} else if (icon) {
headerUserButton.classList.remove('headerUserButtonRound');
header.icon = icon;
headerUserButton.icon = icon;
} else {
headerUserButton.classList.remove('headerUserButtonRound');
}
@ -319,7 +319,7 @@
var html = '';
var homeHref = window.ApiClient ? 'index.html' : 'selectserver.html?showuser=1';
var homeHref = window.ApiClient ? 'home.html' : 'selectserver.html?showuser=1';
html += '<div style="margin-top:5px;"></div>';
@ -829,11 +829,11 @@
updateTabLinks(page);
});
pageClassOn('pageshow', 'page', function () {
pageClassOn('pageshow', 'page', function (e) {
var page = this;
if (!NavHelper.isBack()) {
if (!e.detail.isRestored) {
// Scroll back up so in case vertical scroll was messed with
window.scrollTo(0, 0);
}
@ -976,27 +976,4 @@
setDrawerClass();
});
(function () {
var isCurrentNavBack = false;
window.addEventListener("navigate", function (e) {
var data = e.detail.state || {};
var direction = data.direction;
isCurrentNavBack = direction == 'back';
});
function isBack() {
return isCurrentNavBack;
}
window.NavHelper = {
isBack: isBack
};
})();
});

View file

@ -104,7 +104,7 @@
if (user.Policy.IsAdministrator && !serverId) {
newUrl = "dashboard.html";
} else {
newUrl = "index.html";
newUrl = "home.html";
}
Dashboard.hideLoadingMsg();

View file

@ -1,4 +1,4 @@
(function (window, document, $) {
(function (window, document) {
function sendPlayCommand(options, playType) {
@ -396,4 +396,4 @@
initializeApiClient(apiClient);
});
})(window, document, jQuery);
})(window, document);

View file

@ -1,4 +1,4 @@
(function ($, document, window, clearTimeout, setTimeout) {
define(['jQuery', 'searchmenu'], function ($) {
var searchHintTimeout;
@ -128,7 +128,10 @@
if (!searchTerm) {
$('.itemsContainer', elem).empty();
var itemsContainer = elem.querySelector('.itemsContainer');
if (itemsContainer) {
itemsContainer.innerHTML = '';
}
clearSearchHintTimeout();
return;
}
@ -214,9 +217,9 @@
function bindSearchEvents() {
require(['searchmenu'], function () {
Events.on(SearchMenu, 'closed', closeSearchResults);
Events.on(SearchMenu, 'change', function (e, value) {
require(['searchmenu'], function (searchmenu) {
Events.on(window.SearchMenu, 'closed', closeSearchResults);
Events.on(window.SearchMenu, 'change', function (e, value) {
onHeaderSearchChange(value);
});
@ -230,14 +233,14 @@
}
function showSearchMenu() {
require(['searchmenu'], function () {
SearchMenu.show();
require(['searchmenu'], function (searchmenu) {
window.SearchMenu.show();
});
}
function hideSearchMenu() {
require(['searchmenu'], function () {
SearchMenu.hide();
require(['searchmenu'], function (searchmenu) {
window.SearchMenu.hide();
});
}
@ -248,4 +251,4 @@
bindSearchEvents();
});
})(jQuery, document, window, clearTimeout, setTimeout);
});

View file

@ -1,4 +1,13 @@
(function () {
define(['jQuery'], function ($) {
function fadeIn(elem, iterations) {
var keyframes = [
{ opacity: '0', offset: 0 },
{ opacity: '1', offset: 1 }];
var timing = { duration: 200, iterations: iterations };
return elem.animate(keyframes, timing);
}
function searchMenu() {
@ -6,7 +15,7 @@
self.show = function () {
require(['css!css/search.css'], function() {
require(['css!css/search.css'], function () {
$('.headerSearchInput').val('');
$('.btnCloseSearch').hide();
@ -19,15 +28,6 @@
});
};
function fadeIn(elem, iterations) {
var keyframes = [
{ opacity: '0', offset: 0 },
{ opacity: '1', offset: 1 }];
var timing = { duration: 200, iterations: iterations };
return elem.animate(keyframes, timing);
}
self.hide = function () {
var viewMenuSearch = document.querySelector('.viewMenuSearch');
@ -82,5 +82,5 @@
}
window.SearchMenu = new searchMenu();
})();
return Window.SearchMenu;
});

View file

@ -1,4 +1,4 @@
(function ($, document) {
define(['libraryBrowser'], function (LibraryBrowser) {
function getUserViews(userId) {
@ -220,7 +220,7 @@
elem.innerHTML = html;
ImageLoader.lazyChildren(elem);
$(elem).createCardMenus();
LibraryBrowser.createCardMenus(elem);
});
}
@ -264,7 +264,7 @@
elem.innerHTML = html;
ImageLoader.lazyChildren(elem);
$(elem).createCardMenus();
LibraryBrowser.createCardMenus(elem);
});
}
@ -309,7 +309,7 @@
elem.innerHTML = html;
ImageLoader.lazyChildren(elem);
$(elem).createCardMenus();
LibraryBrowser.createCardMenus(elem);
});
}
@ -347,7 +347,7 @@
elem.innerHTML = html;
ImageLoader.lazyChildren(elem);
$(elem).createCardMenus();
LibraryBrowser.createCardMenus(elem);
});
}
@ -402,7 +402,7 @@
elem.innerHTML = html;
ImageLoader.lazyChildren(elem);
$(elem).createCardMenus({ showDetailsMenu: false });
LibraryBrowser.createCardMenus(elem, { showDetailsMenu: false });
handleLibraryLinkNavigations(elem);
});
@ -457,7 +457,7 @@
elem.innerHTML = html;
ImageLoader.lazyChildren(elem);
$(elem).createCardMenus();
LibraryBrowser.createCardMenus(elem);
});
}
@ -501,7 +501,7 @@
elem.innerHTML = html;
ImageLoader.lazyChildren(elem);
$(elem).createCardMenus();
LibraryBrowser.createCardMenus(elem);
});
}
@ -598,7 +598,7 @@
elem.innerHTML = html;
ImageLoader.lazyChildren(elem);
$(elem).createCardMenus();
LibraryBrowser.createCardMenus(elem);
});
}
@ -644,7 +644,7 @@
elem.innerHTML = html;
ImageLoader.lazyChildren(elem);
$(elem).createCardMenus();
LibraryBrowser.createCardMenus(elem);
});
}
@ -661,4 +661,5 @@
loadLatestEpisodes: loadLatestEpisodes
};
})(jQuery, document);
return window.Sections;
});

View file

@ -15,7 +15,7 @@
case MediaBrowser.ConnectionState.SignedIn:
{
Dashboard.onServerChanged(apiClient.getCurrentUserId(), apiClient.accessToken(), apiClient);
Dashboard.navigate('index.html');
Dashboard.navigate('home.html');
}
break;
case MediaBrowser.ConnectionState.ServerSignIn:

File diff suppressed because it is too large Load diff