mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
update series timer editor
This commit is contained in:
parent
67a90b61b9
commit
99f7d3e9f8
14 changed files with 241 additions and 157 deletions
|
@ -8,6 +8,101 @@
|
|||
return enableScrollX() ? 'overflowBackdrop' : 'backdrop';
|
||||
}
|
||||
|
||||
function getProgramScheduleHtml(items, options) {
|
||||
|
||||
options = options || {};
|
||||
|
||||
var groups = [];
|
||||
|
||||
var currentGroupName = '';
|
||||
var currentGroup = [];
|
||||
|
||||
var i, length;
|
||||
|
||||
for (i = 0, length = items.length; i < length; i++) {
|
||||
|
||||
var item = items[i];
|
||||
|
||||
var dateText = '';
|
||||
|
||||
if (options.indexByDate !== false && item.StartDate) {
|
||||
try {
|
||||
|
||||
var premiereDate = datetime.parseISO8601Date(item.StartDate, true);
|
||||
|
||||
dateText = LibraryBrowser.getFutureDateText(premiereDate, true);
|
||||
|
||||
} catch (err) {
|
||||
}
|
||||
}
|
||||
|
||||
if (dateText != currentGroupName) {
|
||||
|
||||
if (currentGroup.length) {
|
||||
groups.push({
|
||||
name: currentGroupName,
|
||||
items: currentGroup
|
||||
});
|
||||
}
|
||||
|
||||
currentGroupName = dateText;
|
||||
currentGroup = [item];
|
||||
} else {
|
||||
currentGroup.push(item);
|
||||
}
|
||||
}
|
||||
|
||||
if (currentGroup.length) {
|
||||
groups.push({
|
||||
name: currentGroupName,
|
||||
items: currentGroup
|
||||
});
|
||||
}
|
||||
|
||||
var html = '';
|
||||
|
||||
for (i = 0, length = groups.length; i < length; i++) {
|
||||
|
||||
var group = groups[i];
|
||||
|
||||
if (group.name) {
|
||||
html += '<div class="homePageSection">';
|
||||
|
||||
html += '<h1 class="listHeader">' + group.name + '</h1>';
|
||||
}
|
||||
|
||||
if (enableScrollX()) {
|
||||
html += '<div is="emby-itemscontainer" class="itemsContainer hiddenScrollX">';
|
||||
} else {
|
||||
html += '<div is="emby-itemscontainer" class="itemsContainer vertical-wrap">';
|
||||
}
|
||||
|
||||
html += cardBuilder.getCardsHtml({
|
||||
items: group.items,
|
||||
shape: getBackdropShape(),
|
||||
preferThumb: true,
|
||||
showTitle: true,
|
||||
showAirTime: true,
|
||||
showAirEndTime: true,
|
||||
showChannelName: true,
|
||||
cardLayout: true,
|
||||
action: 'programdialog',
|
||||
cardFooterAside: 'none',
|
||||
preferThumb: true,
|
||||
coverImage: true,
|
||||
overlayText: false
|
||||
|
||||
});
|
||||
html += '</div>';
|
||||
|
||||
if (group.name) {
|
||||
html += '</div>';
|
||||
}
|
||||
}
|
||||
|
||||
return Promise.resolve(html);
|
||||
}
|
||||
|
||||
function getTimersHtml(timers, options) {
|
||||
|
||||
options = options || {};
|
||||
|
@ -109,29 +204,8 @@
|
|||
|
||||
window.LiveTvHelpers = {
|
||||
|
||||
getDaysOfWeek: function () {
|
||||
|
||||
var days = [
|
||||
'Sunday',
|
||||
'Monday',
|
||||
'Tuesday',
|
||||
'Wednesday',
|
||||
'Thursday',
|
||||
'Friday',
|
||||
'Saturday'
|
||||
];
|
||||
|
||||
return days.map(function (d) {
|
||||
|
||||
return {
|
||||
name: d,
|
||||
value: d
|
||||
};
|
||||
|
||||
});
|
||||
},
|
||||
|
||||
getTimersHtml: getTimersHtml
|
||||
getTimersHtml: getTimersHtml,
|
||||
getProgramScheduleHtml: getProgramScheduleHtml
|
||||
|
||||
};
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue