diff --git a/dashboard-ui/bower_components/emby-webcomponents/.bower.json b/dashboard-ui/bower_components/emby-webcomponents/.bower.json index 7cc679328..7ac9348cd 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/.bower.json +++ b/dashboard-ui/bower_components/emby-webcomponents/.bower.json @@ -14,12 +14,12 @@ }, "devDependencies": {}, "ignore": [], - "version": "1.4.256", - "_release": "1.4.256", + "version": "1.4.258", + "_release": "1.4.258", "_resolution": { "type": "version", - "tag": "1.4.256", - "commit": "dbe988350fad1cbe359594a57be846a89ae764d4" + "tag": "1.4.258", + "commit": "52cd113c96592ab8036ea4878fdff7681459b16d" }, "_source": "https://github.com/MediaBrowser/emby-webcomponents.git", "_target": "^1.2.1", diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.js b/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.js index eec179f69..3603600ff 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.js +++ b/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.js @@ -53,11 +53,7 @@ recordingUpdated = true; recordingDeleted = isDeleted; - if (isDeleted) { - dialogHelper.close(currentDialog); - } else { - currentDialog.querySelector('.btnSubmit').click(); - } + dialogHelper.close(currentDialog); } function onSubmit(e) { @@ -70,9 +66,7 @@ item.PrePaddingSeconds = form.querySelector('#txtPrePaddingMinutes').value * 60; item.PostPaddingSeconds = form.querySelector('#txtPostPaddingMinutes').value * 60; - apiClient.updateLiveTvTimer(item).then(function () { - dialogHelper.close(currentDialog); - }); + apiClient.updateLiveTvTimer(item); }); e.preventDefault(); @@ -156,6 +150,13 @@ currentDialog = dlg; + dlg.addEventListener('close', function () { + + if (!recordingDeleted) { + this.querySelector('.btnSubmit').click(); + } + }); + dlg.addEventListener('close', function () { if (recordingUpdated) { diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingfields.js b/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingfields.js index ceb376cd0..9f2116ef0 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingfields.js +++ b/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingfields.js @@ -1,4 +1,4 @@ -define(['globalize', 'connectionManager', 'require', 'loading', 'apphost', 'recordingHelper', 'emby-toggle', 'paper-icon-button-light', 'emby-button'], function (globalize, connectionManager, require, loading, appHost, recordingHelper) { +define(['globalize', 'connectionManager', 'require', 'loading', 'apphost', 'recordingHelper', 'paper-icon-button-light', 'emby-button'], function (globalize, connectionManager, require, loading, appHost, recordingHelper) { function getRegistration(apiClient, programId, feature) { @@ -91,14 +91,11 @@ function loadData(parent, program, apiClient) { if (program.IsSeries) { - parent.querySelector('.chkRecordSeriesContainer').classList.remove('hide'); + parent.querySelector('.recordSeriesContainer').classList.remove('hide'); } else { - parent.querySelector('.chkRecordSeriesContainer').classList.add('hide'); + parent.querySelector('.recordSeriesContainer').classList.add('hide'); } - parent.querySelector('.chkRecord').checked = program.TimerId != null; - parent.querySelector('.chkRecordSeries').checked = program.SeriesTimerId != null; - if (program.SeriesTimerId != null) { showSeriesRecordingFields(parent, program.Id, apiClient); } else { @@ -107,23 +104,23 @@ if (program.SeriesTimerId) { parent.querySelector('.btnManageSeriesRecording').classList.remove('visibilityHide'); + parent.querySelector('.seriesRecordingButton .recordingIcon').classList.add('recordingIcon-active'); + parent.querySelector('.seriesRecordingButton .buttonText').innerHTML = globalize.translate('sharedcomponents#CancelSeries'); } else { parent.querySelector('.btnManageSeriesRecording').classList.add('visibilityHide'); + parent.querySelector('.seriesRecordingButton .recordingIcon').classList.remove('recordingIcon-active'); + parent.querySelector('.seriesRecordingButton .buttonText').innerHTML = globalize.translate('sharedcomponents#RecordSeries'); } if (program.TimerId) { parent.querySelector('.btnManageRecording').classList.remove('visibilityHide'); + parent.querySelector('.singleRecordingButton .recordingIcon').classList.add('recordingIcon-active'); + parent.querySelector('.singleRecordingButton .buttonText').innerHTML = globalize.translate('sharedcomponents#DoNotRecord'); } else { parent.querySelector('.btnManageRecording').classList.add('visibilityHide'); + parent.querySelector('.singleRecordingButton .recordingIcon').classList.remove('recordingIcon-active'); + parent.querySelector('.singleRecordingButton .buttonText').innerHTML = globalize.translate('sharedcomponents#Record'); } - - //var seriesTimerPromise = program.SeriesTimerId ? - // apiClient.getLiveTvSeriesTimer(program.SeriesTimerId) : - // apiClient.getLiveTvProgram(program.Id, apiClient.getCurrentUserId()); - - //seriesTimerPromise.then(function (seriesTimer) { - - //}); } function fetchData(instance) { @@ -156,7 +153,7 @@ } function onManageRecordingClick(e) { - + var options = this.options; if (!this.TimerId) { @@ -168,7 +165,29 @@ require(['recordingEditor'], function (recordingEditor) { recordingEditor.show(self.TimerId, options.serverId, { - + + enableCancel: false + + }).then(function () { + self.changed = true; + }); + }); + } + + function onManageSeriesRecordingClick(e) { + + var options = this.options; + + if (!this.SeriesTimerId) { + return; + } + + var self = this; + + require(['seriesRecordingEditor'], function (seriesRecordingEditor) { + + seriesRecordingEditor.show(self.SeriesTimerId, options.serverId, { + enableCancel: false }).then(function () { @@ -185,9 +204,9 @@ var options = this.options; var apiClient = connectionManager.getApiClient(options.serverId); - var isChecked = e.target.checked; + var isChecked = !e.target.querySelector('i').classList.contains('recordingIcon-active'); - if (e.target.checked) { + if (isChecked) { if (!this.TimerId && !this.SeriesTimerId) { recordingHelper.createRecording(apiClient, options.programId, false).then(function () { fetchData(self); @@ -210,9 +229,9 @@ var options = this.options; var apiClient = connectionManager.getApiClient(options.serverId); - var isChecked = e.target.checked; + var isChecked = !e.target.querySelector('i').classList.contains('recordingIcon-active'); - if (e.target.checked) { + if (isChecked) { showSeriesRecordingFields(options.parent, options.programId, apiClient); if (!this.SeriesTimerId) { @@ -259,9 +278,10 @@ supporterButtons[i].addEventListener('click', onSupporterButtonClick); } - context.querySelector('.chkRecord').addEventListener('change', onRecordChange.bind(self)); - context.querySelector('.chkRecordSeries').addEventListener('change', onRecordSeriesChange.bind(self)); + context.querySelector('.singleRecordingButton').addEventListener('click', onRecordChange.bind(self)); + context.querySelector('.seriesRecordingButton').addEventListener('click', onRecordSeriesChange.bind(self)); context.querySelector('.btnManageRecording').addEventListener('click', onManageRecordingClick.bind(self)); + context.querySelector('.btnManageSeriesRecording').addEventListener('click', onManageSeriesRecordingClick.bind(self)); fetchData(self).then(resolve); }); diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingfields.template.html b/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingfields.template.html index af677ed00..ce08dff98 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingfields.template.html +++ b/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingfields.template.html @@ -1,18 +1,24 @@