diff --git a/dashboard-ui/bower_components/emby-webcomponents/.bower.json b/dashboard-ui/bower_components/emby-webcomponents/.bower.json
index 717bb73caa..e4499ae77b 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.222",
- "_release": "1.4.222",
+ "version": "1.4.223",
+ "_release": "1.4.223",
"_resolution": {
"type": "version",
- "tag": "1.4.222",
- "commit": "29a8d9be1a6c3bb59bddb54c721c64a8664f9724"
+ "tag": "1.4.223",
+ "commit": "e3fce0848cb9f7839d98090ea55c80f0a5ff672d"
},
"_source": "https://github.com/MediaBrowser/emby-webcomponents.git",
"_target": "^1.2.1",
diff --git a/dashboard-ui/bower_components/emby-webcomponents/collectioneditor/collectioneditor.js b/dashboard-ui/bower_components/emby-webcomponents/collectioneditor/collectioneditor.js
index dc8f4033a4..840bcf6a5b 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/collectioneditor/collectioneditor.js
+++ b/dashboard-ui/bower_components/emby-webcomponents/collectioneditor/collectioneditor.js
@@ -166,8 +166,8 @@
// newCollectionInfo
html += '';
- html += '
';
- html += '
' + globalize.translate('sharedcomponents#ButtonOk') + ' ';
+ html += '';
html += '
';
diff --git a/dashboard-ui/bower_components/emby-webcomponents/dialoghelper/dialoghelper.css b/dashboard-ui/bower_components/emby-webcomponents/dialoghelper/dialoghelper.css
index 44f386fb0b..fb34bbc28a 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/dialoghelper/dialoghelper.css
+++ b/dashboard-ui/bower_components/emby-webcomponents/dialoghelper/dialoghelper.css
@@ -41,6 +41,13 @@
right: 10% !important;
}
+ .dialog-medium-tall {
+ top: 5% !important;
+ bottom: 5% !important;
+ left: 10% !important;
+ right: 10% !important;
+ }
+
.dialog-small {
top: 10% !important;
bottom: 10% !important;
diff --git a/dashboard-ui/bower_components/emby-webcomponents/formdialog.css b/dashboard-ui/bower_components/emby-webcomponents/formdialog.css
index 019762a94d..b2eea9539a 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/formdialog.css
+++ b/dashboard-ui/bower_components/emby-webcomponents/formdialog.css
@@ -7,10 +7,13 @@
padding: .8em .5em;
display: flex;
align-items: center;
- background-color: #222326;
flex-shrink: 0;
}
+.formDialogHeader, .formDialogFooter {
+ background-color: #222326;
+}
+
.formDialogHeaderTitle {
margin-left: .5em;
}
@@ -32,8 +35,39 @@
margin-top: 1em;
}
+.formDialogFooter {
+ position: absolute;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ display: flex;
+ padding: 1.5em;
+ /* Without this emby-checkbox is able to appear on top */
+ z-index: 1;
+ align-items: center;
+ justify-content: center;
+}
+
+.formDialogFooterItem {
+ margin-left: .5em !important;
+ margin-right: .5em !important;
+ flex-grow: 1;
+ text-align: center;
+}
+
+@media all and (min-width: 800px) {
+
+ .formDialogFooterItem {
+ max-width: 80%;
+ }
+}
+
@media all and (min-width: 1280px) {
+ .formDialogFooterItem {
+ max-width: 70%;
+ }
+
.dialogContentInner {
padding-left: 2em;
padding-right: 2em;
diff --git a/dashboard-ui/bower_components/emby-webcomponents/itemidentifier/itemidentifier.template.html b/dashboard-ui/bower_components/emby-webcomponents/itemidentifier/itemidentifier.template.html
index a021c47260..f58218bb56 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/itemidentifier/itemidentifier.template.html
+++ b/dashboard-ui/bower_components/emby-webcomponents/itemidentifier/itemidentifier.template.html
@@ -20,12 +20,12 @@
-
-
+
@@ -42,10 +42,13 @@
${ReplaceExistingImages}
-
- check
- ${ButtonOk}
-
+
+
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/metadataeditor.js b/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/metadataeditor.js
index 58fdec8113..b94c561ebf 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/metadataeditor.js
+++ b/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/metadataeditor.js
@@ -357,11 +357,6 @@
});
- context.querySelector('.btnHeaderSave').addEventListener('click', function (e) {
-
- context.querySelector('.btnSave').click();
- });
-
context.querySelector('#chkLockData').addEventListener('click', function (e) {
if (!e.target.checked) {
@@ -1161,7 +1156,7 @@
if (layoutManager.tv) {
dialogOptions.size = 'fullscreen';
} else {
- dialogOptions.size = 'medium';
+ dialogOptions.size = 'medium-tall';
}
var dlg = dialogHelper.createDialog(dialogOptions);
diff --git a/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/metadataeditor.template.html b/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/metadataeditor.template.html
index 9bef3ca376..7f340d29fc 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/metadataeditor.template.html
+++ b/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/metadataeditor.template.html
@@ -4,10 +4,6 @@
${Edit}
-
more_vert
@@ -308,9 +304,12 @@
-
- ${Save}
-
+
+
diff --git a/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/personeditor.template.html b/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/personeditor.template.html
index 1737f6bac8..1945767755 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/personeditor.template.html
+++ b/dashboard-ui/bower_components/emby-webcomponents/metadataeditor/personeditor.template.html
@@ -27,9 +27,13 @@
${LabelPersonRoleHelp}
-
- check
- ${Save}
-
+
+
+
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/emby-webcomponents/playlisteditor/playlisteditor.js b/dashboard-ui/bower_components/emby-webcomponents/playlisteditor/playlisteditor.js
index 6f7ba2e9ba..d0a4aef4d5 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/playlisteditor/playlisteditor.js
+++ b/dashboard-ui/bower_components/emby-webcomponents/playlisteditor/playlisteditor.js
@@ -154,8 +154,8 @@
// newPlaylistInfo
html += '';
- html += '';
- html += '' + globalize.translate('sharedcomponents#ButtonOk') + ' ';
+ html += '';
html += ' ';
diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingcreator.js b/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingcreator.js
index cc188f6afc..d6ffcc71ca 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingcreator.js
+++ b/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingcreator.js
@@ -141,25 +141,13 @@
getRegistration(apiClient).then(function (regInfo) {
- if (regInfo.IsValid) {
- context.querySelector('.btnSubmit').classList.remove('hide');
- } else {
- context.querySelector('.btnSubmit').classList.add('hide');
- }
-
if (regInfo.IsRegistered) {
-
+ context.querySelector('.btnSubmit').classList.remove('hide');
context.querySelector('.supporterContainer').classList.add('hide');
} else {
-
context.querySelector('.supporterContainer').classList.remove('hide');
-
- if (regInfo.TrialVersion) {
- context.querySelector('.supporterTrial').classList.remove('hide');
- } else {
- context.querySelector('.supporterTrial').classList.add('hide');
- }
+ context.querySelector('.btnSubmit').classList.add('hide');
}
});
}
diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingcreator.template.html b/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingcreator.template.html
index f8594130be..91350ffc98 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingcreator.template.html
+++ b/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingcreator.template.html
@@ -97,16 +97,15 @@
-
-
+
-
- fiber_manual_record
- ${Save}
-
+
+
+
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/emby-webcomponents/refreshdialog/refreshdialog.js b/dashboard-ui/bower_components/emby-webcomponents/refreshdialog/refreshdialog.js
index 526940d7eb..e3152d3b0a 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/refreshdialog/refreshdialog.js
+++ b/dashboard-ui/bower_components/emby-webcomponents/refreshdialog/refreshdialog.js
@@ -37,13 +37,13 @@
html += globalize.translate('sharedcomponents#RefreshDialogHelp');
html += '';
- html += ' ';
- html += '';
- html += '' + globalize.translate('sharedcomponents#ButtonOk') + ' ';
- html += '
';
-
html += ' ';
+ html += ' ';
+ html += '';
+
html += '';
html += '';
html += '';
diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/en-US.json b/dashboard-ui/bower_components/emby-webcomponents/strings/en-US.json
index ed2ab419a2..79833b10e4 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/strings/en-US.json
+++ b/dashboard-ui/bower_components/emby-webcomponents/strings/en-US.json
@@ -45,7 +45,6 @@
"RecordAnytime": "Record at any time",
"RecordOnlyNewEpisodes": "Record only new episodes",
"HeaderBecomeProjectSupporter": "Get Emby Premiere",
- "HeaderEnjoyDayTrial": "Enjoy a 14 Day Free Trial",
"MessageActiveSubscriptionRequiredSeriesRecordings": "An active Emby Premiere subscription is required in order to create automated series recordings.",
"OptionConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format",
"OptionConvertRecordingsToStreamingFormatHelp": "Recordings will be converted on the fly to MP4 for easy playback on your devices.",
diff --git a/dashboard-ui/bower_components/emby-webcomponents/sync/sync.js b/dashboard-ui/bower_components/emby-webcomponents/sync/sync.js
index cbcbc2ab35..4fab2cb76c 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/sync/sync.js
+++ b/dashboard-ui/bower_components/emby-webcomponents/sync/sync.js
@@ -408,9 +408,9 @@
html += '
';
- html += '';
- html += 'sync ' + globalize.translate('sharedcomponents#Sync') + ' ';
- html += '
';
+ html += '';
html += '';
diff --git a/dashboard-ui/bower_components/polymer/.bower.json b/dashboard-ui/bower_components/polymer/.bower.json
index a96f0f050e..25eb84c037 100644
--- a/dashboard-ui/bower_components/polymer/.bower.json
+++ b/dashboard-ui/bower_components/polymer/.bower.json
@@ -32,14 +32,14 @@
"iron-component-page": "polymerElements/iron-component-page#^1.1.6"
},
"private": true,
- "homepage": "https://github.com/Polymer/polymer",
+ "homepage": "https://github.com/polymer/polymer",
"_release": "1.6.1",
"_resolution": {
"type": "version",
"tag": "v1.6.1",
"commit": "1f197d9d7874b1e5808b2a5c26f34446a7d912fc"
},
- "_source": "git://github.com/Polymer/polymer.git",
+ "_source": "git://github.com/polymer/polymer.git",
"_target": "^1.1.0",
- "_originalSource": "Polymer/polymer"
+ "_originalSource": "polymer/polymer"
}
\ No newline at end of file
diff --git a/dashboard-ui/scripts/itemdetailpage.js b/dashboard-ui/scripts/itemdetailpage.js
index b6fcd07de4..682e85119f 100644
--- a/dashboard-ui/scripts/itemdetailpage.js
+++ b/dashboard-ui/scripts/itemdetailpage.js
@@ -246,7 +246,7 @@
itemBirthday.classList.add('hide');
}
- var itemDeathDate = page.querySelector('#itemBirthday');
+ var itemDeathDate = page.querySelector('#itemDeathDate');
if (item.Type == "Person" && item.EndDate) {
try {
diff --git a/dashboard-ui/scripts/livetvitems.js b/dashboard-ui/scripts/livetvitems.js
index f0f54accbc..9f6368b6c2 100644
--- a/dashboard-ui/scripts/livetvitems.js
+++ b/dashboard-ui/scripts/livetvitems.js
@@ -27,6 +27,8 @@
var promise = params.type == 'Recordings' ?
ApiClient.getLiveTvRecordings(query) :
+ params.type == 'RecordingSeries' ?
+ ApiClient.getLiveTvRecordingSeries(query) :
ApiClient.getLiveTvPrograms(query);
promise.then(function (result) {
@@ -46,15 +48,15 @@
html = cardBuilder.getCardsHtml({
items: result.Items,
- shape: query.IsMovie ? 'portrait' : "backdrop",
- preferThumb: !query.IsMovie,
+ shape: query.IsMovie || params.type == 'RecordingSeries' ? 'portrait' : "backdrop",
+ preferThumb: !query.IsMovie && params.type != 'RecordingSeries',
context: 'livetv',
centerText: true,
lazy: true,
overlayText: false,
showTitle: true,
//showParentTitle: query.IsSeries !== false && !query.IsMovie,
- showProgramAirInfo: params.type != 'Recordings',
+ showProgramAirInfo: params.type != 'Recordings' && params.type != 'RecordingSeries',
overlayMoreButton: true,
showYear: query.IsMovie && params.type == 'Recordings'
});
diff --git a/dashboard-ui/scripts/livetvrecordings.js b/dashboard-ui/scripts/livetvrecordings.js
index 595d5de4d9..e230aa202c 100644
--- a/dashboard-ui/scripts/livetvrecordings.js
+++ b/dashboard-ui/scripts/livetvrecordings.js
@@ -195,7 +195,7 @@
Dashboard.navigate('livetvitems.html?type=Recordings&IsMovie=true');
break;
case 'episodes':
- Dashboard.navigate('livetvitems.html?type=Recordings&IsSeries=true');
+ Dashboard.navigate('livetvitems.html?type=RecordingSeries');
break;
case 'programs':
Dashboard.navigate('livetvitems.html?type=Recordings&IsSeries=false&IsMovie=false');
diff --git a/dashboard-ui/thirdparty/paper-button-style.css b/dashboard-ui/thirdparty/paper-button-style.css
index 11f843e641..c9cfe77e17 100644
--- a/dashboard-ui/thirdparty/paper-button-style.css
+++ b/dashboard-ui/thirdparty/paper-button-style.css
@@ -20,11 +20,25 @@ button.emby-button.submit {
color: #52B54B;
}
-button.emby-button.raised.submit, button.emby-button.raised:not(.subdued):not(.cancel):not(.more) {
+.ui-body-a .emby-button.raised {
background: #52B54B;
color: #fff;
}
+.ui-body-b .emby-button.raised {
+ background: #404040;
+ color: #fff;
+}
+
+.ui-body-a .emby-button.raised.subdued {
+ background: #fff;
+ color: inherit;
+}
+
+.ui-body-b .emby-button.raised.subdued {
+ background: #262626;
+}
+
button.emby-button.more {
color: #3388cc;
}
@@ -140,13 +154,4 @@ div.dialogHeader {
.ui-body-a .formDialogHeader a {
color: #fff !important;
text-transform: uppercase;
-}
-
-.ui-body-b div.formDialogHeader {
- background-color: #222326;
-}
-
-.formDialogHeader button {
- margin-top: 0;
- margin-bottom: 0;
}
\ No newline at end of file