diff --git a/dashboard-ui/addplugin.html b/dashboard-ui/addplugin.html index a348b58a1..ed18d304f 100644 --- a/dashboard-ui/addplugin.html +++ b/dashboard-ui/addplugin.html @@ -27,7 +27,7 @@

@@ -65,7 +65,6 @@ diff --git a/dashboard-ui/autoorganizetv.html b/dashboard-ui/autoorganizetv.html index 2dad99fab..b2059c7bf 100644 --- a/dashboard-ui/autoorganizetv.html +++ b/dashboard-ui/autoorganizetv.html @@ -154,7 +154,7 @@
${LabelDeleteEmptyFoldersHelp}
- +
diff --git a/dashboard-ui/bower_components/emby-webcomponents/.bower.json b/dashboard-ui/bower_components/emby-webcomponents/.bower.json index e9c678e67..f88a264c0 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.253", - "_release": "1.4.253", + "version": "1.4.254", + "_release": "1.4.254", "_resolution": { "type": "version", - "tag": "1.4.253", - "commit": "858cc490a36d41641aed43e556944f803d5f083a" + "tag": "1.4.254", + "commit": "261edde431045d80a709a5ac89a8307e7e012f31" }, "_source": "https://github.com/MediaBrowser/emby-webcomponents.git", "_target": "^1.2.1", diff --git a/dashboard-ui/bower_components/emby-webcomponents/actionsheet/actionsheet.css b/dashboard-ui/bower_components/emby-webcomponents/actionsheet/actionsheet.css index c2c6763a1..27e6a3e42 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/actionsheet/actionsheet.css +++ b/dashboard-ui/bower_components/emby-webcomponents/actionsheet/actionsheet.css @@ -4,10 +4,12 @@ padding: 0; border: none; max-height: 84%; + border-radius: 1px !important; } .actionsheet-fullscreen { max-height: none; + border-radius: 0 !important; } .actionSheetContent-centered { diff --git a/dashboard-ui/bower_components/emby-webcomponents/confirm/confirm.js b/dashboard-ui/bower_components/emby-webcomponents/confirm/confirm.js index f7c80885c..0891ada46 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/confirm/confirm.js +++ b/dashboard-ui/bower_components/emby-webcomponents/confirm/confirm.js @@ -15,15 +15,15 @@ define(['dialog', 'globalize'], function (dialog, globalize) { var items = []; items.push({ - name: globalize.translate('sharedcomponents#ButtonOk'), - id: 'ok', - type: 'submit' + name: options.cancelText || globalize.translate('sharedcomponents#ButtonCancel'), + id: 'cancel', + type: options.primary == 'cancel' ? 'submit' : 'cancel' }); items.push({ - name: globalize.translate('sharedcomponents#ButtonCancel'), - id: 'cancel', - type: 'cancel' + name: options.confirmText || globalize.translate('sharedcomponents#ButtonOk'), + id: 'ok', + type: options.primary == 'cancel' ? 'cancel' : 'submit' }); options.buttons = items; diff --git a/dashboard-ui/bower_components/emby-webcomponents/dialog/dialog.js b/dashboard-ui/bower_components/emby-webcomponents/dialog/dialog.js index ef728db82..5b212ad9b 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/dialog/dialog.js +++ b/dashboard-ui/bower_components/emby-webcomponents/dialog/dialog.js @@ -1,21 +1,5 @@ define(['dialogHelper', 'dom', 'layoutManager', 'scrollHelper', 'globalize', 'require', 'material-icons', 'emby-button', 'paper-icon-button-light', 'emby-input', 'formDialogStyle'], function (dialogHelper, dom, layoutManager, scrollHelper, globalize, require) { - function showTvDialog(options) { - return new Promise(function (resolve, reject) { - - require(['actionsheet'], function (actionSheet) { - - actionSheet.show({ - - title: options.text, - items: options.buttons, - timeout: options.timeout - - }).then(resolve, reject); - }); - }); - } - function showDialog(options, template) { var dialogOptions = { @@ -23,7 +7,9 @@ define(['dialogHelper', 'dom', 'layoutManager', 'scrollHelper', 'globalize', 're scrollY: false }; - if (layoutManager.tv) { + var enableTvLayout = layoutManager.tv; + + if (enableTvLayout) { dialogOptions.size = 'fullscreen'; } else { //dialogOptions.size = 'mini'; @@ -35,10 +21,17 @@ define(['dialogHelper', 'dom', 'layoutManager', 'scrollHelper', 'globalize', 're dlg.innerHTML = globalize.translateHtml(template, 'sharedcomponents'); - if (layoutManager.tv) { - scrollHelper.centerFocus.on(dlg.querySelector('.formDialogContent'), false); + if (enableTvLayout) { + dlg.style['align-items'] = 'center'; + dlg.style['justify-content'] = 'center'; + var formDialogContent = dlg.querySelector('.formDialogContent'); + formDialogContent.style['flex-grow'] = 'initial'; + formDialogContent.style['max-width'] = '50%'; + formDialogContent.style['max-height'] = '60%'; + scrollHelper.centerFocus.on(formDialogContent, false); } else { - dlg.querySelector('.dialogContentInner').classList.add('dialogContentInner-mini'); + var minWidth = (Math.min(options.buttons.length * 150, dom.getWindowSize().innerWidth - 50)); + dlg.style.maxWidth = (minWidth + 200) + 'px'; } //dlg.querySelector('.btnCancel').addEventListener('click', function (e) { @@ -56,7 +49,7 @@ define(['dialogHelper', 'dom', 'layoutManager', 'scrollHelper', 'globalize', 're var item = options.buttons[i]; var autoFocus = i == 0 ? ' autofocus' : ''; - var buttonClass = 'btnOption raised block formDialogFooterItem'; + var buttonClass = 'btnOption raised formDialogFooterItem formDialogFooterItem-autosize'; if (item.type) { buttonClass += ' button-' + item.type; @@ -65,8 +58,6 @@ define(['dialogHelper', 'dom', 'layoutManager', 'scrollHelper', 'globalize', 're html += ''; } - dlg.style.minWidth = (Math.min(options.buttons.length * 150, dom.getWindowSize().innerWidth - 50)) + 'px'; - dlg.querySelector('.formDialogFooter').innerHTML = html; var dialogResult; @@ -82,7 +73,7 @@ define(['dialogHelper', 'dom', 'layoutManager', 'scrollHelper', 'globalize', 're return dialogHelper.open(dlg).then(function () { - if (layoutManager.tv) { + if (enableTvLayout) { scrollHelper.centerFocus.off(dlg.querySelector('.formDialogContent'), false); } @@ -106,10 +97,6 @@ define(['dialogHelper', 'dom', 'layoutManager', 'scrollHelper', 'globalize', 're options = text; } - if (layoutManager.tv) { - return showTvDialog(options); - } - return new Promise(function (resolve, reject) { require(['text!./dialog.template.html'], function (template) { showDialog(options, template).then(resolve, reject); diff --git a/dashboard-ui/bower_components/emby-webcomponents/dialog/dialog.template.html b/dashboard-ui/bower_components/emby-webcomponents/dialog/dialog.template.html index 61d81d900..96fc5ae5e 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/dialog/dialog.template.html +++ b/dashboard-ui/bower_components/emby-webcomponents/dialog/dialog.template.html @@ -1,16 +1,15 @@ -
-

- +
+

-
+
- -
-
+
+ +
\ No newline at end of file diff --git a/dashboard-ui/bower_components/emby-webcomponents/dialoghelper/dialoghelper.css b/dashboard-ui/bower_components/emby-webcomponents/dialoghelper/dialoghelper.css index e8119c067..fb3a8dd7e 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/dialoghelper/dialoghelper.css +++ b/dashboard-ui/bower_components/emby-webcomponents/dialoghelper/dialoghelper.css @@ -13,7 +13,7 @@ .dialog { margin: 0; - border-radius: 1px; + border-radius: 4px; -webkit-font-smoothing: antialiased; box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.4); border: 0; diff --git a/dashboard-ui/bower_components/emby-webcomponents/emby-button/emby-button.css b/dashboard-ui/bower_components/emby-webcomponents/emby-button/emby-button.css index ac394bd7d..565d9cfc6 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/emby-button/emby-button.css +++ b/dashboard-ui/bower_components/emby-webcomponents/emby-button/emby-button.css @@ -26,7 +26,6 @@ position: relative; overflow: hidden; font-weight: 500; - text-transform: uppercase; /* Disable webkit tap highlighting */ -webkit-tap-highlight-color: rgba(0,0,0,0); box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2); diff --git a/dashboard-ui/bower_components/emby-webcomponents/formdialog.css b/dashboard-ui/bower_components/emby-webcomponents/formdialog.css index cae3b8505..28cceac86 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/formdialog.css +++ b/dashboard-ui/bower_components/emby-webcomponents/formdialog.css @@ -15,6 +15,10 @@ background-color: #222326; } +.formDialogHeader-clear, .formDialogFooter-clear { + background-color: transparent; +} + .formDialogHeaderTitle { margin-left: .25em; /* In case of h1, h2, h3 */ @@ -57,6 +61,10 @@ flex-wrap: wrap; } +.formDialogFooter-flex { + position: static; +} + .formDialogFooterItem { margin-left: .5em !important; margin-right: .5em !important; @@ -65,6 +73,13 @@ flex-basis: 0; } +.formDialogFooterItem-autosize { + flex-basis: initial; + flex-grow: initial; + padding-left: 2em; + padding-right: 2em; +} + @media all and (min-width: 800px) { .formDialogFooterItem { diff --git a/dashboard-ui/bower_components/emby-webcomponents/imageeditor/imageeditor.js b/dashboard-ui/bower_components/emby-webcomponents/imageeditor/imageeditor.js index f82200c10..e3525f807 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/imageeditor/imageeditor.js +++ b/dashboard-ui/bower_components/emby-webcomponents/imageeditor/imageeditor.js @@ -192,7 +192,13 @@ require(['confirm'], function (confirm) { - confirm(globalize.translate('sharedcomponents#ConfirmDeleteImage')).then(afterConfirm); + confirm({ + + text: globalize.translate('sharedcomponents#ConfirmDeleteImage'), + confirmText: globalize.translate('sharedcomponents#Delete'), + primary: 'cancel' + + }).then(afterConfirm); }); } diff --git a/dashboard-ui/bower_components/emby-webcomponents/itemcontextmenu.js b/dashboard-ui/bower_components/emby-webcomponents/itemcontextmenu.js index 9b9aee75c..64252f3b1 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/itemcontextmenu.js +++ b/dashboard-ui/bower_components/emby-webcomponents/itemcontextmenu.js @@ -37,10 +37,18 @@ define(['apphost', 'globalize', 'connectionManager', 'itemHelper', 'embyRouter', } if (item.CanDelete) { - commands.push({ - name: globalize.translate('sharedcomponents#Delete'), - id: 'delete' - }); + + if (item.Type == 'Playlist' || item.Type == 'BoxSet') { + commands.push({ + name: globalize.translate('sharedcomponents#Delete'), + id: 'delete' + }); + } else { + commands.push({ + name: globalize.translate('sharedcomponents#DeleteMedia'), + id: 'delete' + }); + } } if (itemHelper.canEdit(user, item.Type)) { @@ -383,7 +391,7 @@ define(['apphost', 'globalize', 'connectionManager', 'itemHelper', 'embyRouter', } case 'delete': { - deleteItem(apiClient, itemId).then(getResolveFunction(resolve, id, true, true), getResolveFunction(resolve, id)); + deleteItem(apiClient, item).then(getResolveFunction(resolve, id, true, true), getResolveFunction(resolve, id)); break; } case 'share': @@ -550,16 +558,25 @@ define(['apphost', 'globalize', 'connectionManager', 'itemHelper', 'embyRouter', }); } - function deleteItem(apiClient, itemId) { + function deleteItem(apiClient, item) { return new Promise(function (resolve, reject) { + var itemId = item.Id; + var msg = globalize.translate('sharedcomponents#ConfirmDeleteItem'); var title = globalize.translate('sharedcomponents#HeaderDeleteItem'); require(['confirm'], function (confirm) { - confirm(msg, title).then(function () { + confirm({ + + title: title, + text: msg, + confirmText: globalize.translate('sharedcomponents#Delete'), + primary: 'cancel' + + }).then(function () { apiClient.deleteItem(itemId).then(function () { resolve(true); diff --git a/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.js b/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.js index b5c9951d6..f22f9418c 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.js +++ b/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.js @@ -409,26 +409,18 @@ return; } - var msg = globalize.translate('sharedcomponents#TheSelectedItemsWillBeGrouped'); + loading.show(); - require(['confirm'], function (confirm) { + apiClient.ajax({ - confirm(msg, globalize.translate('sharedcomponents#GroupVersions')).then(function () { + type: "POST", + url: apiClient.getUrl("Videos/MergeVersions", { Ids: selection.join(',') }) - loading.show(); + }).then(function () { - apiClient.ajax({ - - type: "POST", - url: apiClient.getUrl("Videos/MergeVersions", { Ids: selection.join(',') }) - - }).then(function () { - - loading.hide(); - hideSelections(); - dispatchNeedsRefresh(); - }); - }); + loading.hide(); + hideSelections(); + dispatchNeedsRefresh(); }); } diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.js b/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.js index 260c7885e..10f7c394d 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.js +++ b/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.js @@ -12,7 +12,15 @@ require(['confirm'], function (confirm) { - confirm(globalize.translate('sharedcomponents#MessageConfirmRecordingCancellation'), globalize.translate('sharedcomponents#HeaderConfirmRecordingCancellation')).then(function () { + confirm({ + + title: globalize.translate('sharedcomponents#HeaderConfirmRecordingCancellation'), + text: globalize.translate('sharedcomponents#MessageConfirmRecordingCancellation'), + confirmText: globalize.translate('sharedcomponents#HeaderCancelRecording'), + cancelText: globalize.translate('sharedcomponents#HeaderKeepRecording'), + primary: 'cancel' + + }).then(function () { loading.show(); diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/ar.json b/dashboard-ui/bower_components/emby-webcomponents/strings/ar.json index 95bb376db..731019da7 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/ar.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/ar.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Add", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/bg-BG.json b/dashboard-ui/bower_components/emby-webcomponents/strings/bg-BG.json index 967c8bce3..5dcd45628 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/bg-BG.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/bg-BG.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "\u0414\u043e\u0431\u0430\u0432\u0438", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/ca.json b/dashboard-ui/bower_components/emby-webcomponents/strings/ca.json index 150c9c289..911f4362f 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/ca.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/ca.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Afegeix", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/cs.json b/dashboard-ui/bower_components/emby-webcomponents/strings/cs.json index 80dc92437..fb1b86a03 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/cs.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/cs.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "P\u0159idat", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/da.json b/dashboard-ui/bower_components/emby-webcomponents/strings/da.json index a8842197d..c99f1c78d 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/da.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/da.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Del", "Add": "Tilf\u00f8j", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/de.json b/dashboard-ui/bower_components/emby-webcomponents/strings/de.json index f31d9b757..3153c2d91 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/de.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/de.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Konvertiere Aufnahmen automatisch in ein Streaming-freundliches Format mit Emby Premiere. Aufnahmen werden, basierend auf den Emby Server-Einstellungen, dynamisch zu MP4 oder MKV konvertiert.", + "HeaderConvertYourRecordings": "Konvertiere deine Aufnahmen", + "HeaderLearnMore": "Erfahre mehr", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Teilen", "Add": "Hinzuf\u00fcgen", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/el.json b/dashboard-ui/bower_components/emby-webcomponents/strings/el.json index 78434802f..ee70fc61a 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/el.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/el.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "\u03a0\u03c1\u03cc\u03c3\u03b8\u03b5\u03c3\u03b5", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/en-GB.json b/dashboard-ui/bower_components/emby-webcomponents/strings/en-GB.json index 1c9208d78..62b5b1168 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/en-GB.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/en-GB.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Add", @@ -64,7 +69,7 @@ "NewCollection": "New Collection", "LabelCollection": "Collection:", "Help": "Help", - "NewCollectionHelp": "Collections allow you to create personalized groupings of movies and other library content.", + "NewCollectionHelp": "Collections allow you to create personalised groupings of movies and other library content.", "SearchForCollectionInternetMetadata": "Search the internet for artwork and metadata", "LabelName": "Name:", "NewCollectionNameExample": "Example: Star Wars Collection", @@ -94,7 +99,7 @@ "HeaderSaySomethingLike": "Say Something Like...", "ButtonTryAgain": "Try Again", "HeaderYouSaid": "You Said...", - "MessageWeDidntRecognizeCommand": "We're sorry, we didn't recognize that command.", + "MessageWeDidntRecognizeCommand": "We're sorry, we didn't recognise that command.", "MessageIfYouBlockedVoice": "If you denied voice access to the app you'll need to reconfigure before trying again.", "ValueDiscNumber": "Disc {0}", "Unrated": "Unrated", @@ -205,7 +210,7 @@ "Continuing": "Continuing", "Ended": "Ended", "HeaderEnabledFields": "Enabled Fields", - "HeaderEnabledFieldsHelp": "Uncheck a field to lock it and prevent it's data from being changed.", + "HeaderEnabledFieldsHelp": "Uncheck a field to lock it and prevent its data from being changed.", "Backdrops": "Backdrops", "Images": "Images", "Keywords": "Keywords", @@ -245,7 +250,7 @@ "ValueMusicVideoCount": "{0} music videos", "ValueMinutes": "{0} min", "HeaderIdentifyItemHelp": "Enter one or more search criteria. Remove criteria to increase search results.", - "PleaseEnterNameOrId": "Please enter a name or an external Id.", + "PleaseEnterNameOrId": "Please enter a name or an external ID.", "MessageItemSaved": "Item saved.", "SearchResults": "Search Results", "SyncToOtherDevice": "Sync to other device", @@ -279,7 +284,7 @@ "Settings": "Settings", "ShowIndicatorsFor": "Show indicators for:", "NewEpisodes": "New episodes", - "HDPrograms": "HD programs", + "HDPrograms": "HD programmes", "LiveBroadcasts": "Live broadcasts", "Premieres": "Premieres", "RepeatEpisodes": "Repeat episodes", 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 4f05a0d23..9a53ea76d 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/en-US.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/en-US.json @@ -48,7 +48,7 @@ "MessageActiveSubscriptionRequiredSeriesRecordings": "An active Emby Premiere subscription is required in order to create automated series recordings.", "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", "FeatureRequiresEmbyPremiere": "This feature requires an active Emby Premiere subscription.", - "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderConvertYourRecordings": "Convert Your Recordings", "Record": "Record", "Save": "Save", "Edit": "Edit", @@ -124,7 +124,6 @@ "MarkUnplayed": "Mark unplayed", "GroupVersions": "Group versions", "PleaseSelectTwoItems": "Please select at least two items.", - "TheSelectedItemsWillBeGrouped": "The selected videos will be grouped into one virtual item. Emby apps will automatically choose which version to play based on device and network performance. Are you sure you wish to continue?", "TryMultiSelect": "Try Multi-Select", "TryMultiSelectMessage": "To edit multiple media items, just click and hold any poster and select the items you want to manage. Try it!", "HeaderConfirmRecordingCancellation": "Confirm Recording Cancellation", @@ -285,5 +284,7 @@ "RepeatEpisodes": "Repeat episodes", "DvrSubscriptionRequired": "Emby DVR requires an active Emby Premiere subscription.", "HeaderCancelRecording": "Cancel Recording", - "HeaderLearnMore": "Learn More" + "HeaderKeepRecording": "Keep Recording", + "HeaderLearnMore": "Learn More", + "DeleteMedia": "Delete media" } \ No newline at end of file diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/es-AR.json b/dashboard-ui/bower_components/emby-webcomponents/strings/es-AR.json index b6bcc380b..8dc6440b0 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/es-AR.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/es-AR.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Add", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/es-MX.json b/dashboard-ui/bower_components/emby-webcomponents/strings/es-MX.json index af4283d24..f75795001 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/es-MX.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/es-MX.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Especial - {0}", "Share": "Compartir", "Add": "Agregar", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/es.json b/dashboard-ui/bower_components/emby-webcomponents/strings/es.json index 91e059c7e..e34768564 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/es.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/es.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Compartir", "Add": "A\u00f1adir", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/fi.json b/dashboard-ui/bower_components/emby-webcomponents/strings/fi.json index dbcac7d30..d1c488533 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/fi.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/fi.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Add", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/fr-CA.json b/dashboard-ui/bower_components/emby-webcomponents/strings/fr-CA.json index 3f0cf62b5..299d43f37 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/fr-CA.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/fr-CA.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Add", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/fr.json b/dashboard-ui/bower_components/emby-webcomponents/strings/fr.json index d63be557b..9f4b6e606 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/fr.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/fr.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Sp\u00e9cial - {0}", "Share": "Partager", "Add": "Ajouter", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/gsw.json b/dashboard-ui/bower_components/emby-webcomponents/strings/gsw.json index 5cec14c08..74efde7be 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/gsw.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/gsw.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Add", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/he.json b/dashboard-ui/bower_components/emby-webcomponents/strings/he.json index 7f36ed469..0a7cdcbe5 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/he.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/he.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "\u05d4\u05d5\u05e1\u05e3", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/hr.json b/dashboard-ui/bower_components/emby-webcomponents/strings/hr.json index 8d56d6efa..fc1f04cd6 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/hr.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/hr.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Dodaj", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/hu.json b/dashboard-ui/bower_components/emby-webcomponents/strings/hu.json index f04b49a8d..99c1a852c 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/hu.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/hu.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Megoszt\u00e1s", "Add": "Hozz\u00e1ad", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/id.json b/dashboard-ui/bower_components/emby-webcomponents/strings/id.json index f1713c74a..c28bede7b 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/id.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/id.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Add", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/it.json b/dashboard-ui/bower_components/emby-webcomponents/strings/it.json index eaeaa0e4c..2b07119ac 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/it.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/it.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Aggiungi", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/kk.json b/dashboard-ui/bower_components/emby-webcomponents/strings/kk.json index 3818f693e..8d2ee88b6 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/kk.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/kk.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Emby Premiere \u0430\u0440\u049b\u044b\u043b\u044b \u0442\u0430\u0441\u044b\u043c\u0430\u043b\u0434\u0430\u0443\u0493\u0430 \u043e\u04a3\u0430\u0439 \u043f\u0456\u0448\u0456\u043d\u0434\u0435 \u0436\u0430\u0437\u0431\u0430\u043b\u0430\u0440\u0434\u044b \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0442\u044b \u0442\u04af\u0440\u0434\u0435 \u0442\u04af\u0440\u043b\u0435\u043d\u0434\u0456\u0440\u0443. \u0416\u0430\u0437\u0431\u0430\u043b\u0430\u0440 Emby Server \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043b\u0435\u0440\u0456 \u043d\u0435\u0433\u0456\u0437\u0456\u043d\u0434\u0435, \u043d\u0430\u049b\u0442\u044b \u0443\u0430\u049b\u044b\u0442\u0442\u0430 MP4 \u043d\u0435\u043c\u0435\u0441\u0435 MKV \u043f\u0456\u0448\u0456\u043c\u0456\u043d\u0435 \u0442\u04af\u0440\u043b\u0435\u043d\u0434\u0456\u0440\u0456\u043b\u0435\u0434\u0456.", + "HeaderConvertYourRecordings": "\u0416\u0430\u0437\u0431\u0430\u043b\u0430\u0440\u044b\u04a3\u044b\u0437\u0434\u044b \u0442\u04af\u0440\u043b\u0435\u043d\u0434\u0456\u0440\u0443", + "HeaderLearnMore": "\u041a\u04e9\u0431\u0456\u0440\u0435\u043a \u0431\u0456\u043b\u0443", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "\u0410\u0440\u043d\u0430\u0439\u044b - {0}", "Share": "\u041e\u0440\u0442\u0430\u049b\u0442\u0430\u0441\u0443", "Add": "\u04ae\u0441\u0442\u0435\u0443", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/ko.json b/dashboard-ui/bower_components/emby-webcomponents/strings/ko.json index 533ba842d..603a5d161 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/ko.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/ko.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "\ucd94\uac00", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/ms.json b/dashboard-ui/bower_components/emby-webcomponents/strings/ms.json index 3f0cf62b5..299d43f37 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/ms.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/ms.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Add", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/nb.json b/dashboard-ui/bower_components/emby-webcomponents/strings/nb.json index d647b6bf6..71ae82096 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/nb.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/nb.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Spesial - {0}", "Share": "Del", "Add": "Legg til", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/nl.json b/dashboard-ui/bower_components/emby-webcomponents/strings/nl.json index fb23b66c1..a3c2ef036 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/nl.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/nl.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Speciaal - {0}", "Share": "Delen", "Add": "Toevoegen", @@ -13,7 +18,7 @@ "ValueSeriesYearToPresent": "{0}-Heden", "ReleaseYearValue": "Jaar van uitgifte: {0}", "OriginalAirDateValue": "Originele uitzenddatum: {0}", - "EndsAtValue": "Eindigt om: {0}", + "EndsAtValue": "Eindigt om {0}", "OptionSundayShort": "Zo", "OptionMondayShort": "Ma", "OptionTuesdayShort": "Di", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/pl.json b/dashboard-ui/bower_components/emby-webcomponents/strings/pl.json index a04568e4c..22d7ed63c 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/pl.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/pl.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Dodaj", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/pt-BR.json b/dashboard-ui/bower_components/emby-webcomponents/strings/pt-BR.json index 453c3c712..333f188a3 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/pt-BR.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/pt-BR.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Converter automaticamente grava\u00e7\u00f5es para um formato amig\u00e1vel para streaming com Emby Premiere. Grava\u00e7\u00f5es ser\u00e3o convertidas em tempo real para MP4 ou MKV, baseado nas configura\u00e7\u00f5es do Servidor Emby.", + "HeaderConvertYourRecordings": "Converter suas Grava\u00e7\u00f5es", + "HeaderLearnMore": "Saiba Mais", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Especial - {0}", "Share": "Compartilhar", "Add": "Adicionar", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/pt-PT.json b/dashboard-ui/bower_components/emby-webcomponents/strings/pt-PT.json index cd3c19116..27a357a69 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/pt-PT.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/pt-PT.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Especial - {0}", "Share": "Partilhar", "Add": "Adicionar", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/ro.json b/dashboard-ui/bower_components/emby-webcomponents/strings/ro.json index 2447a63a6..1ebf457e7 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/ro.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/ro.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Add", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/ru.json b/dashboard-ui/bower_components/emby-webcomponents/strings/ru.json index 6437af2f6..78faf153c 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/ru.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/ru.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0432 \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u0434\u043b\u044f \u0442\u0440\u0430\u043d\u0441\u043b\u044f\u0446\u0438\u0438 \u0444\u043e\u0440\u043c\u0430\u0442 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Emby Premiere. \u0417\u0430\u043f\u0438\u0441\u0438 \u0431\u0443\u0434\u0443\u0442 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u0432 MP4 \u0438\u043b\u0438 MKV, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 Emby Server.", + "HeaderConvertYourRecordings": "\u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u0430\u0448\u0438\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439", + "HeaderLearnMore": "\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435...", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "\u0421\u043f\u0435\u0446\u044d\u043f\u0438\u0437\u043e\u0434 - {0}", "Share": "\u041f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f", "Add": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/sk.json b/dashboard-ui/bower_components/emby-webcomponents/strings/sk.json index 3f0cf62b5..299d43f37 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/sk.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/sk.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Add", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/sl-SI.json b/dashboard-ui/bower_components/emby-webcomponents/strings/sl-SI.json index 6572117d9..c456b1ccf 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/sl-SI.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/sl-SI.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Add", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/sv.json b/dashboard-ui/bower_components/emby-webcomponents/strings/sv.json index 9534774a3..436460235 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/sv.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/sv.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Specialavsnitt - {0}", "Share": "Dela", "Add": "L\u00e4gg till", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/tr.json b/dashboard-ui/bower_components/emby-webcomponents/strings/tr.json index b61f3f27f..625aea8a2 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/tr.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/tr.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Ekle", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/uk.json b/dashboard-ui/bower_components/emby-webcomponents/strings/uk.json index 3ec735fec..7b2ca7985 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/uk.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/uk.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Add", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/vi.json b/dashboard-ui/bower_components/emby-webcomponents/strings/vi.json index fbd301dd7..b3c3f8037 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/vi.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/vi.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "Th\u00eam", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/zh-CN.json b/dashboard-ui/bower_components/emby-webcomponents/strings/zh-CN.json index 49d3d73c4..c791beedc 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/zh-CN.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/zh-CN.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "\u6dfb\u52a0", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/zh-HK.json b/dashboard-ui/bower_components/emby-webcomponents/strings/zh-HK.json index 31c9ea79f..9511d0686 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/zh-HK.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/zh-HK.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "Share", "Add": "\u65b0\u589e", diff --git a/dashboard-ui/bower_components/emby-webcomponents/strings/zh-TW.json b/dashboard-ui/bower_components/emby-webcomponents/strings/zh-TW.json index 3869dd159..f0e4485ce 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/strings/zh-TW.json +++ b/dashboard-ui/bower_components/emby-webcomponents/strings/zh-TW.json @@ -1,4 +1,9 @@ { + "PromoConvertRecordingsToStreamingFormat": "Automatically convert recordings to a streaming friendly format with Emby Premiere. Recordings will be converted on the fly to MP4 or MKV, based on Emby server settings.", + "HeaderConvertYourRecordings": "Convert Your Recordings", + "HeaderLearnMore": "Learn More", + "HeaderKeepRecording": "Keep Recording", + "DeleteMedia": "Delete media", "ValueSpecialEpisodeName": "Special - {0}", "Share": "\u5206\u4eab", "Add": "\u6dfb\u52a0", diff --git a/dashboard-ui/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.js b/dashboard-ui/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.js index b6aedc45b..5aa547d90 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.js +++ b/dashboard-ui/bower_components/emby-webcomponents/subtitleeditor/subtitleeditor.js @@ -68,7 +68,14 @@ require(['confirm'], function (confirm) { - confirm(msg, globalize.translate('sharedcomponents#ConfirmDeletion')).then(function () { + confirm({ + + title: globalize.translate('sharedcomponents#ConfirmDeletion'), + text: msg, + confirmText: globalize.translate('sharedcomponents#Delete'), + primary: 'cancel' + + }).then(function () { loading.show(); diff --git a/dashboard-ui/bower_components/requirejs/.bower.json b/dashboard-ui/bower_components/requirejs/.bower.json index 241a962b9..73ea60e69 100644 --- a/dashboard-ui/bower_components/requirejs/.bower.json +++ b/dashboard-ui/bower_components/requirejs/.bower.json @@ -1,6 +1,6 @@ { "name": "requirejs", - "version": "2.3.1", + "version": "2.3.2", "ignore": [], "homepage": "http://requirejs.org", "authors": [ @@ -14,11 +14,11 @@ "license": [ "MIT" ], - "_release": "2.3.1", + "_release": "2.3.2", "_resolution": { "type": "version", - "tag": "2.3.1", - "commit": "94785e8633448b668f292009fd2c31e3338a0074" + "tag": "2.3.2", + "commit": "5b5d3ea2c754898b645cfeaa8871bb92ba4f2790" }, "_source": "https://github.com/jrburke/requirejs-bower.git", "_target": "^2.1.22", diff --git a/dashboard-ui/bower_components/requirejs/bower.json b/dashboard-ui/bower_components/requirejs/bower.json index 61d2be43e..2caafc469 100644 --- a/dashboard-ui/bower_components/requirejs/bower.json +++ b/dashboard-ui/bower_components/requirejs/bower.json @@ -1,6 +1,6 @@ { "name": "requirejs", - "version": "2.3.1", + "version": "2.3.2", "ignore": [], "homepage": "http://requirejs.org", "authors": [ diff --git a/dashboard-ui/bower_components/requirejs/require.js b/dashboard-ui/bower_components/requirejs/require.js index 929c0a869..4db14246c 100644 --- a/dashboard-ui/bower_components/requirejs/require.js +++ b/dashboard-ui/bower_components/requirejs/require.js @@ -1,5 +1,5 @@ /** vim: et:ts=4:sw=4:sts=4 - * @license RequireJS 2.3.1 Copyright jQuery Foundation and other contributors. + * @license RequireJS 2.3.2 Copyright jQuery Foundation and other contributors. * Released under MIT license, https://github.com/requirejs/requirejs/blob/master/LICENSE */ //Not using strict: uneven strict support in browsers, #392, and causes @@ -11,7 +11,7 @@ var requirejs, require, define; (function (global, setTimeout) { var req, s, head, baseElement, dataMain, src, interactiveScript, currentlyAddingScript, mainScript, subPath, - version = '2.3.1', + version = '2.3.2', commentRegExp = /\/\*[\s\S]*?\*\/|([^:"'=]|^)\/\/.*$/mg, cjsRequireRegExp = /[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g, jsSuffixRegExp = /\.js$/, @@ -2139,4 +2139,4 @@ var requirejs, require, define; //Set up with config info. req(cfg); -}(this, setTimeout)); +}(this, (typeof setTimeout === 'undefined' ? undefined : setTimeout))); diff --git a/dashboard-ui/components/appfooter/appfooter.css b/dashboard-ui/components/appfooter/appfooter.css index aade7cd87..86a542f5f 100644 --- a/dashboard-ui/components/appfooter/appfooter.css +++ b/dashboard-ui/components/appfooter/appfooter.css @@ -6,10 +6,15 @@ z-index: 1; bottom: 0; transition: transform 180ms linear; - contain: layout style; } - .appfooter.headroom--unpinned { - transform: translateY(100%); - } +.appfooter-blurred { + background: rgba(28,28,28,.92); + -webkit-backdrop-filter: blur(5px); + backdrop-filter: blur(5px); +} + +.appfooter.headroom--unpinned { + transform: translateY(100%); +} diff --git a/dashboard-ui/components/appfooter/appfooter.js b/dashboard-ui/components/appfooter/appfooter.js index a3be8707f..fd3fa49e8 100644 --- a/dashboard-ui/components/appfooter/appfooter.js +++ b/dashboard-ui/components/appfooter/appfooter.js @@ -1,4 +1,4 @@ -define(['css!./appfooter'], function () { +define(['browser', 'css!./appfooter'], function (browser) { function render(options) { @@ -6,6 +6,10 @@ elem.classList.add('appfooter'); + if (browser.safari) { + elem.classList.add('appfooter-blurred'); + } + document.body.appendChild(elem); return elem; diff --git a/dashboard-ui/components/dockedtabs/dockedtabs.js b/dashboard-ui/components/dockedtabs/dockedtabs.js index 1d36803f9..424cacdc5 100644 --- a/dashboard-ui/components/dockedtabs/dockedtabs.js +++ b/dashboard-ui/components/dockedtabs/dockedtabs.js @@ -39,6 +39,9 @@ case 'manageserver': Dashboard.navigate('dashboard.html'); break; + case 'remotecontrol': + Dashboard.navigate('nowplaying.html'); + break; case 'sync': Dashboard.navigate('mysync.html'); break; @@ -115,6 +118,11 @@ }); } + commands.push({ + name: globalize.translate('ButtonRemoteControl'), + id: 'remotecontrol' + }); + if (Dashboard.isConnectMode()) { commands.push({ name: globalize.translate('HeaderSelectServer'), diff --git a/dashboard-ui/components/fileorganizer/fileorganizer.template.html b/dashboard-ui/components/fileorganizer/fileorganizer.template.html index bed0b2b63..29c2d72d4 100644 --- a/dashboard-ui/components/fileorganizer/fileorganizer.template.html +++ b/dashboard-ui/components/fileorganizer/fileorganizer.template.html @@ -42,7 +42,6 @@
diff --git a/dashboard-ui/components/imageuploader/imageuploader.template.html b/dashboard-ui/components/imageuploader/imageuploader.template.html index b23da78e0..06793f969 100644 --- a/dashboard-ui/components/imageuploader/imageuploader.template.html +++ b/dashboard-ui/components/imageuploader/imageuploader.template.html @@ -28,7 +28,6 @@
diff --git a/dashboard-ui/components/medialibraryeditor/medialibraryeditor.js b/dashboard-ui/components/medialibraryeditor/medialibraryeditor.js index f17f4f531..7c1d9e501 100644 --- a/dashboard-ui/components/medialibraryeditor/medialibraryeditor.js +++ b/dashboard-ui/components/medialibraryeditor/medialibraryeditor.js @@ -34,7 +34,14 @@ require(['confirm'], function (confirm) { - confirm(Globalize.translate('MessageConfirmRemoveMediaLocation'), Globalize.translate('HeaderRemoveMediaLocation')).then(function () { + confirm({ + + title: Globalize.translate('HeaderRemoveMediaLocation'), + text: Globalize.translate('MessageConfirmRemoveMediaLocation'), + confirmText: Globalize.translate('sharedcomponents#ButtonDelete'), + primary: 'cancel' + + }).then(function () { var refreshAfterChange = currentOptions.refresh; diff --git a/dashboard-ui/components/tvproviders/schedulesdirect.template.html b/dashboard-ui/components/tvproviders/schedulesdirect.template.html index 3daded0da..4546845ee 100644 --- a/dashboard-ui/components/tvproviders/schedulesdirect.template.html +++ b/dashboard-ui/components/tvproviders/schedulesdirect.template.html @@ -21,7 +21,7 @@
- +
@@ -62,8 +62,8 @@
- - + +
diff --git a/dashboard-ui/components/tvproviders/xmltv.template.html b/dashboard-ui/components/tvproviders/xmltv.template.html index 5e5adeeba..f18aa65b9 100644 --- a/dashboard-ui/components/tvproviders/xmltv.template.html +++ b/dashboard-ui/components/tvproviders/xmltv.template.html @@ -45,7 +45,7 @@ ${ButtonLearnMore}
- - + +
\ No newline at end of file diff --git a/dashboard-ui/connectlogin.html b/dashboard-ui/connectlogin.html index f8aee7f4a..53af8f5ca 100644 --- a/dashboard-ui/connectlogin.html +++ b/dashboard-ui/connectlogin.html @@ -62,11 +62,9 @@
diff --git a/dashboard-ui/device.html b/dashboard-ui/device.html index db56eadac..9b3acd848 100644 --- a/dashboard-ui/device.html +++ b/dashboard-ui/device.html @@ -23,7 +23,7 @@
${LabelCameraUploadPathHelp}
- +
diff --git a/dashboard-ui/dlnaprofile.html b/dashboard-ui/dlnaprofile.html index f25a247bb..46e2511cf 100644 --- a/dashboard-ui/dlnaprofile.html +++ b/dashboard-ui/dlnaprofile.html @@ -329,10 +329,10 @@
diff --git a/dashboard-ui/forgotpassword.html b/dashboard-ui/forgotpassword.html index 4412dc7de..a93e9702b 100644 --- a/dashboard-ui/forgotpassword.html +++ b/dashboard-ui/forgotpassword.html @@ -14,12 +14,10 @@
diff --git a/dashboard-ui/forgotpasswordpin.html b/dashboard-ui/forgotpasswordpin.html index abd217a5d..d8456dc95 100644 --- a/dashboard-ui/forgotpasswordpin.html +++ b/dashboard-ui/forgotpasswordpin.html @@ -13,12 +13,10 @@
diff --git a/dashboard-ui/itemdetails.html b/dashboard-ui/itemdetails.html index 776623f0a..1aae70219 100644 --- a/dashboard-ui/itemdetails.html +++ b/dashboard-ui/itemdetails.html @@ -36,8 +36,8 @@
-
diff --git a/dashboard-ui/livetvseriestimer.html b/dashboard-ui/livetvseriestimer.html index d9e013c2b..eff000058 100644 --- a/dashboard-ui/livetvseriestimer.html +++ b/dashboard-ui/livetvseriestimer.html @@ -68,9 +68,9 @@
- + - +
diff --git a/dashboard-ui/livetvsettings.html b/dashboard-ui/livetvsettings.html index 72c50d903..47b2e62a0 100644 --- a/dashboard-ui/livetvsettings.html +++ b/dashboard-ui/livetvsettings.html @@ -95,7 +95,7 @@
- +
diff --git a/dashboard-ui/livetvtunerprovider-m3u.html b/dashboard-ui/livetvtunerprovider-m3u.html index daa21f2f6..58da9701d 100644 --- a/dashboard-ui/livetvtunerprovider-m3u.html +++ b/dashboard-ui/livetvtunerprovider-m3u.html @@ -15,8 +15,8 @@
- - + +
diff --git a/dashboard-ui/livetvtunerprovider-satip.html b/dashboard-ui/livetvtunerprovider-satip.html index 79b885b83..bf1b9d402 100644 --- a/dashboard-ui/livetvtunerprovider-satip.html +++ b/dashboard-ui/livetvtunerprovider-satip.html @@ -63,8 +63,8 @@
- - + +
diff --git a/dashboard-ui/metadata.html b/dashboard-ui/metadata.html index 516055a64..dbae991e9 100644 --- a/dashboard-ui/metadata.html +++ b/dashboard-ui/metadata.html @@ -28,7 +28,7 @@
- +
diff --git a/dashboard-ui/metadataimages.html b/dashboard-ui/metadataimages.html index 3ffd7e773..4c65083b4 100644 --- a/dashboard-ui/metadataimages.html +++ b/dashboard-ui/metadataimages.html @@ -87,7 +87,7 @@

-
+
diff --git a/dashboard-ui/metadatanfo.html b/dashboard-ui/metadatanfo.html index be0dc5a5a..f2c991aa1 100644 --- a/dashboard-ui/metadatanfo.html +++ b/dashboard-ui/metadatanfo.html @@ -42,7 +42,7 @@
${LabelKodiMetadataEnableExtraThumbsHelp}
-
+
diff --git a/dashboard-ui/mypreferencesdisplay.html b/dashboard-ui/mypreferencesdisplay.html index ab56056e3..5e147319d 100644 --- a/dashboard-ui/mypreferencesdisplay.html +++ b/dashboard-ui/mypreferencesdisplay.html @@ -88,7 +88,6 @@ diff --git a/dashboard-ui/mypreferenceshome.html b/dashboard-ui/mypreferenceshome.html index 257f8561c..b869701a2 100644 --- a/dashboard-ui/mypreferenceshome.html +++ b/dashboard-ui/mypreferenceshome.html @@ -112,7 +112,6 @@ diff --git a/dashboard-ui/mypreferenceslanguages.html b/dashboard-ui/mypreferenceslanguages.html index bebe73600..92cdacbce 100644 --- a/dashboard-ui/mypreferenceslanguages.html +++ b/dashboard-ui/mypreferenceslanguages.html @@ -95,7 +95,6 @@ diff --git a/dashboard-ui/myprofile.html b/dashboard-ui/myprofile.html index f230ade6a..239badb2b 100644 --- a/dashboard-ui/myprofile.html +++ b/dashboard-ui/myprofile.html @@ -61,7 +61,7 @@
- + @@ -33,7 +32,6 @@