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

update series recording editor

This commit is contained in:
Luke Pulverenti 2016-09-30 14:43:59 -04:00
parent faeb1c6d22
commit 711b0541fa
50 changed files with 285 additions and 213 deletions

View file

@ -1,45 +1,4 @@
define(['datetime', 'dom', 'emby-itemscontainer'], function (datetime, dom) {
function getDaysOfWeek() {
// Do not localize. These are used as values, not text.
return LiveTvHelpers.getDaysOfWeek().map(function (d) {
return d.value;
});
}
function selectDays(page, days) {
var daysOfWeek = getDaysOfWeek();
for (var i = 0, length = daysOfWeek.length; i < length; i++) {
var day = daysOfWeek[i];
page.querySelector('#chk' + day).checked = days.indexOf(day) != -1;
}
}
function getDays(page) {
var daysOfWeek = getDaysOfWeek();
var days = [];
for (var i = 0, length = daysOfWeek.length; i < length; i++) {
var day = daysOfWeek[i];
if (page.querySelector('#chk' + day).checked) {
days.push(day);
}
}
return days;
}
define(['datetime', 'dom', 'seriesRecordingEditor', 'emby-itemscontainer'], function (datetime, dom, seriesRecordingEditor) {
return function (view, params) {
@ -47,43 +6,9 @@
page.querySelector('.itemName').innerHTML = item.Name;
page.querySelector('#txtPrePaddingMinutes').value = item.PrePaddingSeconds / 60;
page.querySelector('#txtPostPaddingMinutes').value = item.PostPaddingSeconds / 60;
page.querySelector('#chkNewOnly').checked = item.RecordNewOnly;
page.querySelector('#chkAllChannels').checked = item.RecordAnyChannel;
page.querySelector('#chkAnyTime').checked = item.RecordAnyTime;
selectDays(page, item.Days);
Dashboard.hideLoadingMsg();
}
function onSubmit(e) {
var form = this;
var id = params.id;
ApiClient.getLiveTvSeriesTimer(id).then(function (item) {
item.PrePaddingSeconds = form.querySelector('#txtPrePaddingMinutes').value * 60;
item.PostPaddingSeconds = form.querySelector('#txtPostPaddingMinutes').value * 60;
item.RecordNewOnly = form.querySelector('#chkNewOnly').checked;
item.RecordAnyChannel = form.querySelector('#chkAllChannels').checked;
item.RecordAnyTime = form.querySelector('#chkAnyTime').checked;
item.Days = getDays(form);
ApiClient.updateLiveTvSeriesTimer(item);
});
e.preventDefault();
// Disable default form submission
return false;
}
function renderSchedule(page, result) {
var timers = result.Items;
@ -119,11 +44,10 @@
});
}
view.querySelector('form').addEventListener('change', function () {
view.querySelector('.btnSubmit').click();
seriesRecordingEditor.embed(params.id, ApiClient.serverId(), {
context: view.querySelector('.recordingEditor')
});
view.querySelector('.liveTvSeriesTimerForm').addEventListener('submit', onSubmit);
view.querySelector('.scheduleTab').addEventListener('timercancelled', reload);
view.addEventListener('viewbeforeshow', reload);
};