mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
Beautified all js in web dashboard
This commit is contained in:
parent
5895f209e7
commit
6bfd795635
346 changed files with 72978 additions and 375 deletions
|
@ -1 +1,126 @@
|
|||
define(["loading","listView","cardBuilder","libraryMenu","libraryBrowser","apphost","imageLoader","emby-itemscontainer"],function(loading,listView,cardBuilder,libraryMenu,libraryBrowser,appHost,imageLoader){"use strict";return function(view,params){function getPageData(context){var key=getSavedQueryKey(context),pageData=data[key];return pageData||(pageData=data[key]={query:{SortBy:"SortName",SortOrder:"Ascending",IncludeItemTypes:"Playlist",Recursive:!0,Fields:"PrimaryImageAspectRatio,SortName,CumulativeRunTimeTicks,CanDelete",StartIndex:0,Limit:100},view:libraryBrowser.getSavedView(key)||"Poster"},pageData.query.ParentId=libraryMenu.getTopParentId(),libraryBrowser.loadSavedQueryValues(key,pageData.query)),pageData}function getQuery(context){return getPageData(context).query}function getSavedQueryKey(context){return context.savedQueryKey||(context.savedQueryKey=libraryBrowser.getSavedQueryKey()),context.savedQueryKey}function showLoadingMessage(){loading.show()}function hideLoadingMessage(){loading.hide()}function onViewStyleChange(){var viewStyle=getPageData(view).view,itemsContainer=view.querySelector(".itemsContainer");"List"==viewStyle?(itemsContainer.classList.add("vertical-list"),itemsContainer.classList.remove("vertical-wrap")):(itemsContainer.classList.remove("vertical-list"),itemsContainer.classList.add("vertical-wrap")),itemsContainer.innerHTML=""}function reloadItems(){showLoadingMessage();var query=getQuery(view),promise1=ApiClient.getItems(Dashboard.getCurrentUserId(),query),promise2=Dashboard.getCurrentUser();Promise.all([promise1,promise2]).then(function(responses){var result=responses[0];responses[1];window.scrollTo(0,0);var html="",viewStyle=getPageData(view).view;view.querySelector(".listTopPaging").innerHTML=libraryBrowser.getQueryPagingHtml({startIndex:query.StartIndex,limit:query.Limit,totalRecordCount:result.TotalRecordCount,viewButton:!1,showLimit:!1,updatePageSizeSetting:!1,addLayoutButton:!0,layouts:"List,Poster,PosterCard,Thumb,ThumbCard",currentLayout:viewStyle}),result.TotalRecordCount?(html="List"==viewStyle?listView.getListViewHtml({items:result.Items,sortBy:query.SortBy}):"PosterCard"==viewStyle?cardBuilder.getCardsHtml({items:result.Items,shape:"square",coverImage:!0,showTitle:!0,cardLayout:!0,vibrant:!0}):"Thumb"==viewStyle?cardBuilder.getCardsHtml({items:result.Items,shape:"backdrop",showTitle:!0,centerText:!0,preferThumb:!0,overlayPlayButton:!0}):"ThumbCard"==viewStyle?cardBuilder.getCardsHtml({items:result.Items,shape:"backdrop",showTitle:!0,preferThumb:!0,cardLayout:!0,vibrant:!0}):cardBuilder.getCardsHtml({items:result.Items,shape:"square",showTitle:!0,coverImage:!0,centerText:!0,overlayPlayButton:!0}),view.querySelector(".noItemsMessage").classList.add("hide")):view.querySelector(".noItemsMessage").classList.remove("hide");var elem=view.querySelector(".itemsContainer");elem.innerHTML=html,imageLoader.lazyChildren(elem);var btnNextPage=view.querySelector(".btnNextPage");btnNextPage&&btnNextPage.addEventListener("click",function(){query.StartIndex+=query.Limit,reloadItems()});var btnPreviousPage=view.querySelector(".btnPreviousPage");btnPreviousPage&&btnPreviousPage.addEventListener("click",function(){query.StartIndex-=query.Limit,reloadItems()});var btnChangeLayout=view.querySelector(".btnChangeLayout");btnChangeLayout&&btnChangeLayout.addEventListener("layoutchange",function(e){var layout=e.detail.viewStyle;getPageData(view).view=layout,libraryBrowser.saveViewSetting(getSavedQueryKey(view),layout),onViewStyleChange(),reloadItems()}),libraryBrowser.saveQueryValues(getSavedQueryKey(view),query),hideLoadingMessage()})}var data={};view.addEventListener("viewbeforeshow",function(){reloadItems()}),view.querySelector(".btnNewPlaylist").addEventListener("click",function(){require(["playlistEditor"],function(playlistEditor){var serverId=ApiClient.serverInfo().Id;(new playlistEditor).show({items:[],serverId:serverId})})}),onViewStyleChange()}});
|
||||
define(["loading", "listView", "cardBuilder", "libraryMenu", "libraryBrowser", "apphost", "imageLoader", "emby-itemscontainer"], function(loading, listView, cardBuilder, libraryMenu, libraryBrowser, appHost, imageLoader) {
|
||||
"use strict";
|
||||
return function(view, params) {
|
||||
function getPageData(context) {
|
||||
var key = getSavedQueryKey(context),
|
||||
pageData = data[key];
|
||||
return pageData || (pageData = data[key] = {
|
||||
query: {
|
||||
SortBy: "SortName",
|
||||
SortOrder: "Ascending",
|
||||
IncludeItemTypes: "Playlist",
|
||||
Recursive: !0,
|
||||
Fields: "PrimaryImageAspectRatio,SortName,CumulativeRunTimeTicks,CanDelete",
|
||||
StartIndex: 0,
|
||||
Limit: 100
|
||||
},
|
||||
view: libraryBrowser.getSavedView(key) || "Poster"
|
||||
}, pageData.query.ParentId = libraryMenu.getTopParentId(), libraryBrowser.loadSavedQueryValues(key, pageData.query)), pageData
|
||||
}
|
||||
|
||||
function getQuery(context) {
|
||||
return getPageData(context).query
|
||||
}
|
||||
|
||||
function getSavedQueryKey(context) {
|
||||
return context.savedQueryKey || (context.savedQueryKey = libraryBrowser.getSavedQueryKey()), context.savedQueryKey
|
||||
}
|
||||
|
||||
function showLoadingMessage() {
|
||||
loading.show()
|
||||
}
|
||||
|
||||
function hideLoadingMessage() {
|
||||
loading.hide()
|
||||
}
|
||||
|
||||
function onViewStyleChange() {
|
||||
var viewStyle = getPageData(view).view,
|
||||
itemsContainer = view.querySelector(".itemsContainer");
|
||||
"List" == viewStyle ? (itemsContainer.classList.add("vertical-list"), itemsContainer.classList.remove("vertical-wrap")) : (itemsContainer.classList.remove("vertical-list"), itemsContainer.classList.add("vertical-wrap")), itemsContainer.innerHTML = ""
|
||||
}
|
||||
|
||||
function reloadItems() {
|
||||
showLoadingMessage();
|
||||
var query = getQuery(view),
|
||||
promise1 = ApiClient.getItems(Dashboard.getCurrentUserId(), query),
|
||||
promise2 = Dashboard.getCurrentUser();
|
||||
Promise.all([promise1, promise2]).then(function(responses) {
|
||||
var result = responses[0];
|
||||
responses[1];
|
||||
window.scrollTo(0, 0);
|
||||
var html = "",
|
||||
viewStyle = getPageData(view).view;
|
||||
view.querySelector(".listTopPaging").innerHTML = libraryBrowser.getQueryPagingHtml({
|
||||
startIndex: query.StartIndex,
|
||||
limit: query.Limit,
|
||||
totalRecordCount: result.TotalRecordCount,
|
||||
viewButton: !1,
|
||||
showLimit: !1,
|
||||
updatePageSizeSetting: !1,
|
||||
addLayoutButton: !0,
|
||||
layouts: "List,Poster,PosterCard,Thumb,ThumbCard",
|
||||
currentLayout: viewStyle
|
||||
}), result.TotalRecordCount ? (html = "List" == viewStyle ? listView.getListViewHtml({
|
||||
items: result.Items,
|
||||
sortBy: query.SortBy
|
||||
}) : "PosterCard" == viewStyle ? cardBuilder.getCardsHtml({
|
||||
items: result.Items,
|
||||
shape: "square",
|
||||
coverImage: !0,
|
||||
showTitle: !0,
|
||||
cardLayout: !0,
|
||||
vibrant: !0
|
||||
}) : "Thumb" == viewStyle ? cardBuilder.getCardsHtml({
|
||||
items: result.Items,
|
||||
shape: "backdrop",
|
||||
showTitle: !0,
|
||||
centerText: !0,
|
||||
preferThumb: !0,
|
||||
overlayPlayButton: !0
|
||||
}) : "ThumbCard" == viewStyle ? cardBuilder.getCardsHtml({
|
||||
items: result.Items,
|
||||
shape: "backdrop",
|
||||
showTitle: !0,
|
||||
preferThumb: !0,
|
||||
cardLayout: !0,
|
||||
vibrant: !0
|
||||
}) : cardBuilder.getCardsHtml({
|
||||
items: result.Items,
|
||||
shape: "square",
|
||||
showTitle: !0,
|
||||
coverImage: !0,
|
||||
centerText: !0,
|
||||
overlayPlayButton: !0
|
||||
}), view.querySelector(".noItemsMessage").classList.add("hide")) : view.querySelector(".noItemsMessage").classList.remove("hide");
|
||||
var elem = view.querySelector(".itemsContainer");
|
||||
elem.innerHTML = html, imageLoader.lazyChildren(elem);
|
||||
var btnNextPage = view.querySelector(".btnNextPage");
|
||||
btnNextPage && btnNextPage.addEventListener("click", function() {
|
||||
query.StartIndex += query.Limit, reloadItems()
|
||||
});
|
||||
var btnPreviousPage = view.querySelector(".btnPreviousPage");
|
||||
btnPreviousPage && btnPreviousPage.addEventListener("click", function() {
|
||||
query.StartIndex -= query.Limit, reloadItems()
|
||||
});
|
||||
var btnChangeLayout = view.querySelector(".btnChangeLayout");
|
||||
btnChangeLayout && btnChangeLayout.addEventListener("layoutchange", function(e) {
|
||||
var layout = e.detail.viewStyle;
|
||||
getPageData(view).view = layout, libraryBrowser.saveViewSetting(getSavedQueryKey(view), layout), onViewStyleChange(), reloadItems()
|
||||
}), libraryBrowser.saveQueryValues(getSavedQueryKey(view), query), hideLoadingMessage()
|
||||
})
|
||||
}
|
||||
var data = {};
|
||||
view.addEventListener("viewbeforeshow", function() {
|
||||
reloadItems()
|
||||
}), view.querySelector(".btnNewPlaylist").addEventListener("click", function() {
|
||||
require(["playlistEditor"], function(playlistEditor) {
|
||||
var serverId = ApiClient.serverInfo().Id;
|
||||
(new playlistEditor).show({
|
||||
items: [],
|
||||
serverId: serverId
|
||||
})
|
||||
})
|
||||
}), onViewStyleChange()
|
||||
}
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue