mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
First separation commit.
Added LICENSE, README.md, CONTRIBUTORS.md
This commit is contained in:
parent
09513af31b
commit
4678528d00
657 changed files with 422 additions and 0 deletions
|
@ -1,84 +0,0 @@
|
|||
define(["cardBuilder", "imageLoader", "libraryBrowser", "loading", "events", "emby-itemscontainer"], function(cardBuilder, imageLoader, libraryBrowser, loading, events) {
|
||||
"use strict";
|
||||
return function(view, params, tabContent) {
|
||||
function getPageData() {
|
||||
return pageData || (pageData = {
|
||||
query: {
|
||||
StartIndex: 0,
|
||||
Limit: 100,
|
||||
Fields: "PrimaryImageAspectRatio"
|
||||
}
|
||||
}), pageData
|
||||
}
|
||||
|
||||
function getQuery() {
|
||||
return getPageData().query
|
||||
}
|
||||
|
||||
function getChannelsHtml(channels) {
|
||||
return cardBuilder.getCardsHtml({
|
||||
items: channels,
|
||||
shape: "square",
|
||||
showTitle: !0,
|
||||
lazy: !0,
|
||||
cardLayout: !0,
|
||||
showDetailsMenu: !0,
|
||||
showCurrentProgram: !0,
|
||||
showCurrentProgramTime: !0
|
||||
})
|
||||
}
|
||||
|
||||
function renderChannels(context, result) {
|
||||
function onNextPageClick() {
|
||||
query.StartIndex += query.Limit, reloadItems(context)
|
||||
}
|
||||
|
||||
function onPreviousPageClick() {
|
||||
query.StartIndex -= query.Limit, reloadItems(context)
|
||||
}
|
||||
var query = getQuery();
|
||||
context.querySelector(".paging").innerHTML = libraryBrowser.getQueryPagingHtml({
|
||||
startIndex: query.StartIndex,
|
||||
limit: query.Limit,
|
||||
totalRecordCount: result.TotalRecordCount,
|
||||
showLimit: !1,
|
||||
updatePageSizeSetting: !1,
|
||||
filterButton: !1
|
||||
});
|
||||
var html = getChannelsHtml(result.Items),
|
||||
elem = context.querySelector("#items");
|
||||
elem.innerHTML = html, imageLoader.lazyChildren(elem);
|
||||
var i, length, elems;
|
||||
for (elems = context.querySelectorAll(".btnNextPage"), i = 0, length = elems.length; i < length; i++) elems[i].addEventListener("click", onNextPageClick);
|
||||
for (elems = context.querySelectorAll(".btnPreviousPage"), i = 0, length = elems.length; i < length; i++) elems[i].addEventListener("click", onPreviousPageClick)
|
||||
}
|
||||
|
||||
function showFilterMenu(context) {
|
||||
require(["components/filterdialog/filterdialog"], function(filterDialogFactory) {
|
||||
var filterDialog = new filterDialogFactory({
|
||||
query: getQuery(),
|
||||
mode: "livetvchannels",
|
||||
serverId: ApiClient.serverId()
|
||||
});
|
||||
events.on(filterDialog, "filterchange", function() {
|
||||
reloadItems(context)
|
||||
}), filterDialog.show()
|
||||
})
|
||||
}
|
||||
|
||||
function reloadItems(context, save) {
|
||||
loading.show();
|
||||
var query = getQuery(),
|
||||
apiClient = ApiClient;
|
||||
query.UserId = apiClient.getCurrentUserId(), apiClient.getLiveTvChannels(query).then(function(result) {
|
||||
renderChannels(context, result), loading.hide()
|
||||
})
|
||||
}
|
||||
var pageData, self = this;
|
||||
tabContent.querySelector(".btnFilter").addEventListener("click", function() {
|
||||
showFilterMenu(tabContent)
|
||||
}), self.renderTab = function() {
|
||||
reloadItems(tabContent)
|
||||
}
|
||||
}
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue