Merge pull request #1928 from MediaBrowser/dev

Dev
This commit is contained in:
Luke 2016-07-07 23:43:10 -04:00 committed by GitHub
commit 6a52446948
93 changed files with 387 additions and 163 deletions

View File

@ -15,12 +15,12 @@
},
"devDependencies": {},
"ignore": [],
"version": "1.4.71",
"_release": "1.4.71",
"version": "1.4.74",
"_release": "1.4.74",
"_resolution": {
"type": "version",
"tag": "1.4.71",
"commit": "0613abc5976a0da9db22854809449e09517ae2b6"
"tag": "1.4.74",
"commit": "8612284330cb4e7fa444de71a5f1d21f2b9490b4"
},
"_source": "https://github.com/MediaBrowser/emby-webcomponents.git",
"_target": "^1.2.0",

View File

@ -85,6 +85,11 @@ h2.actionSheetTitle {
flex-grow: 0;
}
.actionSheetText {
padding: 0 1em;
flex-grow: 0;
}
.actionSheet.extraSpacing {
font-size: 108%;
}
}

View File

@ -140,6 +140,11 @@
html += '</h2>';
}
}
if (options.text) {
html += '<p class="actionSheetText">';
html += options.text;
html += '</p>';
}
var scrollType = layoutManager.desktop ? 'smoothScrollY' : 'hiddenScrollY';
var style = (browser.noFlex || browser.firefox) ? 'max-height:400px;' : '';

View File

@ -44,7 +44,7 @@ define(['dialogHelper', 'layoutManager', 'globalize', 'material-icons', 'css!./.
html += '<div class="promptDialogContent">';
if (backButton) {
html += getIcon('arrow_back', 'btnPromptExit', false);
html += getIcon('&#xE5C4;', 'btnPromptExit', false);
}
if (options.title) {

View File

@ -77,7 +77,6 @@
function cancelAnimation() {
var animation = currentAnimation;
if (animation) {
console.log('Cancelling backdrop animation');
animation.cancel();
currentAnimation = null;
}

View File

@ -243,7 +243,7 @@
var title = items.length ? globalize.translate('sharedcomponents#AddToCollection') : globalize.translate('sharedcomponents#NewCollection');
html += '<div class="dialogHeader" style="margin:0 0 2em;">';
html += '<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">arrow_back</i></button>';
html += '<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">&#xE5C4;</i></button>';
html += '<div class="dialogHeaderTitle">';
html += title;
html += '</div>';

View File

@ -22,7 +22,7 @@ define(['connectionManager', 'playbackManager', 'events', 'inputManager', 'focus
// Full list
// https://github.com/MediaBrowser/MediaBrowser/blob/master/MediaBrowser.Model/Session/GeneralCommand.cs#L23
console.log('Received command: ' + cmd.Name);
//console.log('Received command: ' + cmd.Name);
switch (cmd.Name) {

View File

@ -42,12 +42,12 @@ define(['datetime', 'globalize', 'embyRouter', 'material-icons', 'css!./mediainf
if (item.SeriesTimerId) {
miscInfo.push({
html: '<i class="md-icon mediaInfoItem timerIcon">fiber-smart-record</i>'
html: '<i class="md-icon mediaInfoItem timerIcon">&#xE062;</i>'
});
}
else if (item.TimerId) {
miscInfo.push({
html: '<i class="md-icon mediaInfoItem timerIcon">fiber-manual-record</i>'
html: '<i class="md-icon mediaInfoItem timerIcon">&#xE061;</i>'
});
}
@ -244,7 +244,7 @@ define(['datetime', 'globalize', 'embyRouter', 'material-icons', 'css!./mediainf
html += getStarIconsHtml(item);
if (item.HasSubtitles && options.subtitles !== false) {
html += '<i class="md-icon mediaInfoItem closedCaptionIcon">closed_caption</i>';
html += '<i class="md-icon mediaInfoItem closedCaptionIcon">&#xE01C;</i>';
}
if (item.CriticRating && options.criticRating !== false) {
@ -321,7 +321,7 @@ define(['datetime', 'globalize', 'embyRouter', 'material-icons', 'css!./mediainf
if (rating) {
html += '<div class="starRatingContainer mediaInfoItem">';
html += '<i class="md-icon">star</i>';
html += '<i class="md-icon">&#xE838;</i>';
html += rating;
html += '</div>';
}

View File

@ -224,7 +224,7 @@
var title = globalize.translate('sharedcomponents#AddToPlaylist');
html += '<div class="dialogHeader" style="margin:0 0 2em;">';
html += '<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">arrow_back</i></button>';
html += '<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">&#xE5C4;</i></button>';
html += '<div class="dialogHeaderTitle">';
html += title;
html += '</div>';

View File

@ -43,7 +43,7 @@ define(['dialogHelper', 'layoutManager', 'globalize', 'material-icons', 'css!./s
html += '<div class="promptDialogContent">';
if (backButton) {
html += getIcon('arrow_back', 'btnPromptExit', false);
html += getIcon('&#xE5C4;', 'btnPromptExit', false);
}
if (options.title) {

View File

@ -1,5 +1,5 @@
<div class="dialogHeader">
<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">arrow_back</i></button>
<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">&#xE5C4;</i></button>
<div class="dialogHeaderTitle">
${HeaderNewRecording}
</div>

View File

@ -1,5 +1,5 @@
<div class="dialogHeader">
<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">arrow_back</i></button>
<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">&#xE5C4;</i></button>
<div class="dialogHeaderTitle">
${Edit}
</div>

View File

@ -115,7 +115,7 @@
var title = globalize.translate('sharedcomponents#RefreshMetadata');
html += '<div class="dialogHeader" style="margin:0 0 2em;">';
html += '<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">arrow_back</i></button>';
html += '<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">&#xE5C4;</i></button>';
html += '<div class="dialogHeaderTitle">';
html += title;
html += '</div>';

View File

@ -21,8 +21,10 @@ define(function () {
var link = document.createElement('link');
link.rel = 'import';
if (url.toLowerCase().indexOf('bower_') == -1) {
url = url + "?" + config.urlArgs;
if (config.urlArgs) {
if (url.toLowerCase().indexOf('bower_') == -1 || url.toLowerCase().indexOf('emby-webcomponents') != -1) {
url = url + config.urlArgs(cssId, url);
}
}
link.onload = load;

View File

@ -473,21 +473,19 @@ define(['loading', 'viewManager', 'skinManager', 'pluginManager', 'backdrop', 'b
}
function show(path, options) {
return new Promise(function (resolve, reject) {
var baseRoute = baseUrl();
path = path.replace(baseRoute, '');
var baseRoute = baseUrl();
path = path.replace(baseRoute, '');
if (currentRouteInfo && currentRouteInfo.path == path) {
if (currentRouteInfo && currentRouteInfo.path == path) {
// can't use this with home right now due to the back menu
if (currentRouteInfo.route.type != 'home') {
resolve();
return;
}
// can't use this with home right now due to the back menu
if (currentRouteInfo.route.type != 'home') {
return Promise.resolve();
}
}
page.show(path, options);
page.show(path, options);
return new Promise(function (resolve, reject) {
setTimeout(resolve, 500);
});
}

View File

@ -1,4 +1,10 @@
{
"NoItemsFound": "No items found.",
"HeaderSaySomethingLike": "Say Something Like...",
"HeaderYouSaid": "You Said...",
"MessageIfYouBlockedVoice": "If you denied voice access to the app you'll need to reconfigure before trying again.",
"ButtonTryAgain": "Try Again",
"MessageWeDidntRecognizeCommand": "We're sorry, we didn't recognize that command.",
"ValueSpecialEpisodeName": "Special - {0}",
"Share": "Del",
"ServerUpdateNeeded": "Denne Emby server b\u00f8r opdateres. For at downloade den nyeste version bes\u00f8g venligst {0}",

View File

@ -1,4 +1,10 @@
{
"NoItemsFound": "No items found.",
"HeaderSaySomethingLike": "Say Something Like...",
"HeaderYouSaid": "You Said...",
"MessageIfYouBlockedVoice": "If you denied voice access to the app you'll need to reconfigure before trying again.",
"ButtonTryAgain": "Try Again",
"MessageWeDidntRecognizeCommand": "We're sorry, we didn't recognize that command.",
"ValueSpecialEpisodeName": "Special - {0}",
"Share": "Teilen",
"ServerUpdateNeeded": "Dieser Emby Server sollte aktualisiert werden. Um die neueste Version zu laden, besuche bitte {0}",

View File

@ -1,4 +1,10 @@
{
"NoItemsFound": "No items found.",
"HeaderSaySomethingLike": "Say Something Like...",
"HeaderYouSaid": "You Said...",
"MessageIfYouBlockedVoice": "If you denied voice access to the app you'll need to reconfigure before trying again.",
"ButtonTryAgain": "Try Again",
"MessageWeDidntRecognizeCommand": "We're sorry, we didn't recognize that command.",
"ValueSpecialEpisodeName": "Especial - {0}",
"Share": "Compartir",
"ServerUpdateNeeded": "Este Servidor Emby necesita ser actualizado. Para descargar la ultima versi\u00f3n, por favor visite {0}",
@ -23,9 +29,9 @@
"ButtonOk": "Ok",
"ButtonCancel": "Cancelar",
"ButtonGotIt": "Hecho",
"RecordingCancelled": "Recording cancelled.",
"RecordingCancelled": "Grabaci\u00f3n cancelada.",
"RecordingScheduled": "Grabaci\u00f3n programada.",
"SeriesRecordingScheduled": "Series recording scheduled.",
"SeriesRecordingScheduled": "Grabaci\u00f3n de series programadas.",
"HeaderNewRecording": "Nueva Grabaci\u00f3n",
"Sunday": "Domingo",
"Monday": "Lunes",
@ -69,22 +75,22 @@
"OptionNew": "Nuevo...",
"LabelPlaylist": "Lista de Reproducci\u00f3n:",
"AddToPlaylist": "Agregar a lista de reproducci\u00f3n",
"Subtitles": "Subtitles",
"SearchForSubtitles": "Search for Subtitles",
"LabelLanguage": "Language:",
"Search": "Search",
"NoSubtitleSearchResultsFound": "No results found.",
"File": "File",
"MessageAreYouSureDeleteSubtitles": "Are you sure you wish to delete this subtitle file?",
"ConfirmDeletion": "Confirm Deletion",
"MySubtitles": "My Subtitles",
"MessageDownloadQueued": "Download queued.",
"EditSubtitles": "Edit Subtitles",
"UnlockGuide": "Unlock Guide",
"RefreshMetadata": "Refresh Metadata",
"ReplaceExistingImages": "Replace existing images",
"ReplaceAllMetadata": "Replace all metadata",
"SearchForMissingMetadata": "Search for missing metadata",
"LabelRefreshMode": "Refresh mode:",
"RefreshDialogHelp": "Metadata is refreshed based on settings and internet services that are enabled in the Emby Server dashboard."
"Subtitles": "Subt\u00edtulos",
"SearchForSubtitles": "Buscar Subtitulos",
"LabelLanguage": "Idioma:",
"Search": "B\u00fasqueda",
"NoSubtitleSearchResultsFound": "No se encontraron resultados.",
"File": "Archivo",
"MessageAreYouSureDeleteSubtitles": "\u00bfEsta seguro de que desea eliminar este archivo de subtitulo?",
"ConfirmDeletion": "Confirmar Eliminaci\u00f3n",
"MySubtitles": "Mis Subtitulos",
"MessageDownloadQueued": "Descargar cola.",
"EditSubtitles": "Editar Subtitulos",
"UnlockGuide": "Desbloquear Gu\u00eda",
"RefreshMetadata": "Actualizar Metadatos",
"ReplaceExistingImages": "Reemplazar im\u00e1genes existentes",
"ReplaceAllMetadata": "Remplazar todos los metadatos",
"SearchForMissingMetadata": "Buscar metadatos faltantes",
"LabelRefreshMode": "Modo de actualizaci\u00f3n:",
"RefreshDialogHelp": "Los metadatos son actualizados bas\u00e1ndose en las configuraciones y servicios de internet que que est\u00e9n activados en el panel de control de su Servidor de Emby."
}

View File

@ -1,4 +1,10 @@
{
"NoItemsFound": "\u0415\u0448\u049b\u0430\u043d\u0434\u0430\u0439 \u0442\u0430\u0440\u043c\u0430\u049b\u0442\u0430\u0440 \u0442\u0430\u0431\u044b\u043b\u043c\u0430\u0434\u044b.",
"HeaderSaySomethingLike": "\u041e\u0441\u044b\u043d\u0434\u0430\u0439 \u0441\u0438\u044f\u049b\u0442\u044b\u043d\u044b \u0430\u0439\u0442\u044b\u04a3\u044b\u0437...",
"HeaderYouSaid": "\u0421\u0456\u0437 \u0430\u0439\u0442\u049b\u0430\u043d\u044b\u04a3\u044b\u0437...",
"MessageIfYouBlockedVoice": "\u0415\u0433\u0435\u0440 \u049b\u043e\u043b\u0434\u0430\u043d\u0431\u0430\u0493\u0430 \u0434\u0430\u0443\u044b\u0441\u0442\u044b\u049b \u049b\u0430\u0442\u044b\u043d\u0430\u0443\u044b\u04a3\u044b\u0437 \u0431\u0430\u0441 \u0442\u0430\u0440\u0442\u044b\u043b\u0441\u0430, \u049b\u0430\u0439\u0442\u0430 \u04d9\u0440\u0435\u043a\u0435\u0442\u0442\u0435\u043d\u0443\u0456\u04a3\u0456\u0437\u0434\u0435\u043d \u0430\u043b\u0434\u044b\u043d\u0430\u043d \u049b\u0430\u0439\u0442\u0430 \u0442\u0435\u04a3\u0448\u0435\u0443\u0456\u04a3\u0456\u0437 \u049b\u0430\u0436\u0435\u0442 \u0431\u043e\u043b\u0430\u0434\u044b.",
"ButtonTryAgain": "\u04d8\u0440\u0435\u043a\u0435\u0442\u0442\u0456 \u049b\u0430\u0439\u0442\u0430\u043b\u0430\u0443",
"MessageWeDidntRecognizeCommand": "\u041e\u0441\u044b\u043d\u0434\u0430\u0439 \u043f\u04d9\u0440\u043c\u0435\u043d\u0434\u0456 \u0442\u0430\u043d\u044b\u043f \u0430\u0439\u044b\u0440\u043c\u0430\u0434\u044b\u049b.",
"ValueSpecialEpisodeName": "\u0410\u0440\u043d\u0430\u0439\u044b - {0}",
"Share": "\u041e\u0440\u0442\u0430\u049b\u0442\u0430\u0441\u0443",
"ServerUpdateNeeded": "\u041e\u0441\u044b Emby Server \u0436\u0430\u04a3\u0430\u0440\u0442\u044b\u043b\u0443\u044b \u049b\u0430\u0436\u0435\u0442. \u0421\u043e\u04a3\u0493\u044b \u043d\u04b1\u0441\u049b\u0430\u0441\u044b\u043d \u0436\u04af\u043a\u0442\u0435\u043f \u0430\u043b\u0443 \u04af\u0448\u0456\u043d, {0} \u043a\u0456\u0440\u0456\u04a3\u0456\u0437",

View File

@ -1,4 +1,10 @@
{
"NoItemsFound": "No items found.",
"HeaderSaySomethingLike": "Say Something Like...",
"HeaderYouSaid": "You Said...",
"MessageIfYouBlockedVoice": "If you denied voice access to the app you'll need to reconfigure before trying again.",
"ButtonTryAgain": "Try Again",
"MessageWeDidntRecognizeCommand": "We're sorry, we didn't recognize that command.",
"ValueSpecialEpisodeName": "Spesial - {0}",
"Share": "Del",
"ServerUpdateNeeded": "Denne Emby serveren trenger en oppdatering. For \u00e5 laste ned nyeste versjon, vennligst bes\u00f8k: {0}",

View File

@ -1,4 +1,10 @@
{
"NoItemsFound": "No items found.",
"HeaderSaySomethingLike": "Say Something Like...",
"HeaderYouSaid": "You Said...",
"MessageIfYouBlockedVoice": "If you denied voice access to the app you'll need to reconfigure before trying again.",
"ButtonTryAgain": "Try Again",
"MessageWeDidntRecognizeCommand": "We're sorry, we didn't recognize that command.",
"ValueSpecialEpisodeName": "Speciaal - {0}",
"Share": "Delen",
"ServerUpdateNeeded": "Deze Emby Server moet worden bijgewerkt. Om de laatste versie te downloaden, gaat u naar {0}",
@ -23,9 +29,9 @@
"ButtonOk": "Ok",
"ButtonCancel": "Annuleren",
"ButtonGotIt": "Begrepen",
"RecordingCancelled": "Recording cancelled.",
"RecordingCancelled": "Opname geannuleerd.",
"RecordingScheduled": "Opname schema",
"SeriesRecordingScheduled": "Series recording scheduled.",
"SeriesRecordingScheduled": "Serieopname gepland.",
"HeaderNewRecording": "Nieuwe opname",
"Sunday": "Zondag",
"Monday": "Maandag",
@ -57,34 +63,34 @@
"ConfirmDeleteItem": "Verwijderen van dit item zal het verwijderen uit zowel het bestandssysteem als de Media Bibliotheek. Weet u zeker dat u wilt doorgaan?",
"Refresh": "Vernieuwen",
"RefreshQueued": "Vernieuwen wachtrij",
"AddToCollection": "Add to Collection",
"NewCollection": "New Collection",
"LabelCollection": "Collection:",
"Help": "Help",
"NewCollectionHelp": "Collections allow you to create personalized groupings of movies and other library content.",
"SearchForCollectionInternetMetadata": "Search the internet for artwork and metadata",
"LabelName": "Name:",
"NewCollectionNameExample": "Example: Star Wars Collection",
"MessageItemsAdded": "Items added.",
"OptionNew": "New...",
"LabelPlaylist": "Playlist:",
"AddToPlaylist": "Add to Playlist",
"Subtitles": "Subtitles",
"SearchForSubtitles": "Search for Subtitles",
"LabelLanguage": "Language:",
"Search": "Search",
"NoSubtitleSearchResultsFound": "No results found.",
"File": "File",
"MessageAreYouSureDeleteSubtitles": "Are you sure you wish to delete this subtitle file?",
"ConfirmDeletion": "Confirm Deletion",
"MySubtitles": "My Subtitles",
"MessageDownloadQueued": "Download queued.",
"EditSubtitles": "Edit Subtitles",
"UnlockGuide": "Unlock Guide",
"RefreshMetadata": "Refresh Metadata",
"ReplaceExistingImages": "Replace existing images",
"ReplaceAllMetadata": "Replace all metadata",
"SearchForMissingMetadata": "Search for missing metadata",
"LabelRefreshMode": "Refresh mode:",
"RefreshDialogHelp": "Metadata is refreshed based on settings and internet services that are enabled in the Emby Server dashboard."
"AddToCollection": "Toevoegen aan Collectie",
"NewCollection": "Nieuwe Collectie",
"LabelCollection": "Collectie",
"Help": "Hulp",
"NewCollectionHelp": "Collecties maken het u mogelijk om gepersonaliseerde groeperingen van films en andere bibliotheek inhoud te maken.",
"SearchForCollectionInternetMetadata": "Zoeken op het internet voor afbeeldingen en metadata",
"LabelName": "Naam:",
"NewCollectionNameExample": "Bijvoorbeeld: Star Wars Collectie",
"MessageItemsAdded": "Items toegevoegd",
"OptionNew": "Nieuw ...",
"LabelPlaylist": "Afspeellijst:",
"AddToPlaylist": "Toevoegen aan afspeellijst",
"Subtitles": "Ondertiteling",
"SearchForSubtitles": "Zoeken naar ondertitels",
"LabelLanguage": "Taal:",
"Search": "Zoeken",
"NoSubtitleSearchResultsFound": "Geen resultaten gevonden.",
"File": "Bestand",
"MessageAreYouSureDeleteSubtitles": "Weet u zeker dat u dit ondertitelbestand wilt verwijderen?",
"ConfirmDeletion": "Bevestig Verwijdering",
"MySubtitles": "Mijn Ondertitels",
"MessageDownloadQueued": "Download in de wachtrij geplaatst.",
"EditSubtitles": "Bewerk ondertitels",
"UnlockGuide": "Gids vrijgeven",
"RefreshMetadata": "Metadata Vernieuwen",
"ReplaceExistingImages": "Bestaande afbeeldingen vervangen",
"ReplaceAllMetadata": "Alle metadata vervangen",
"SearchForMissingMetadata": "Zoeken naar missende metadata",
"LabelRefreshMode": "Vernieuw-modus",
"RefreshDialogHelp": "Metadata wordt vernieuwd op basis van de instellingen en internet diensten die zijn ingeschakeld in het dashboard van de Emby Server."
}

View File

@ -1,4 +1,10 @@
{
"NoItemsFound": "No items found.",
"HeaderSaySomethingLike": "Say Something Like...",
"HeaderYouSaid": "You Said...",
"MessageIfYouBlockedVoice": "If you denied voice access to the app you'll need to reconfigure before trying again.",
"ButtonTryAgain": "Try Again",
"MessageWeDidntRecognizeCommand": "We're sorry, we didn't recognize that command.",
"ValueSpecialEpisodeName": "Especial - {0}",
"Share": "Compartilhar",
"ServerUpdateNeeded": "Este servidor Emby precisa ser atualizado. Para baixar a \u00faltima vers\u00e3o, por favor visite {0}",

View File

@ -1,4 +1,10 @@
{
"NoItemsFound": "No items found.",
"HeaderSaySomethingLike": "Say Something Like...",
"HeaderYouSaid": "You Said...",
"MessageIfYouBlockedVoice": "If you denied voice access to the app you'll need to reconfigure before trying again.",
"ButtonTryAgain": "Try Again",
"MessageWeDidntRecognizeCommand": "We're sorry, we didn't recognize that command.",
"ValueSpecialEpisodeName": "Especial - {0}",
"Share": "Partilhar",
"ServerUpdateNeeded": "Este Servidor Emby precisa ser atualizado. Para fazer download da vers\u00e3o mais recente, por favor visite {0}",

View File

@ -1,4 +1,10 @@
{
"NoItemsFound": "\u041d\u0438\u043a\u0430\u043a\u0438\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u043e.",
"HeaderSaySomethingLike": "\u0421\u043a\u0430\u0436\u0438\u0442\u0435 \u0447\u0442\u043e-\u0442\u043e \u0432\u0440\u043e\u0434\u0435...",
"HeaderYouSaid": "\u0412\u044b \u0441\u043a\u0430\u0437\u0430\u043b\u0438...",
"MessageIfYouBlockedVoice": "\u0415\u0441\u043b\u0438 \u043e\u0442\u043a\u0430\u0437\u0430\u043d\u043e \u0432 \u0433\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u0435 \u043a \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044e, \u043f\u0435\u0440\u0435\u0434 \u043d\u043e\u0432\u043e\u0439 \u043f\u043e\u043f\u044b\u0442\u043a\u043e\u0439 \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0430 \u043f\u0435\u0440\u0435\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430.",
"ButtonTryAgain": "\u041f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u043f\u043e\u043f\u044b\u0442\u043a\u0443",
"MessageWeDidntRecognizeCommand": "\u0414\u0430\u043d\u043d\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043d\u0435 \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u043d\u0430.",
"ValueSpecialEpisodeName": "\u0421\u043f\u0435\u0446\u044d\u043f\u0438\u0437\u043e\u0434 - {0}",
"Share": "\u041f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f",
"ServerUpdateNeeded": "\u0414\u0430\u043d\u043d\u044b\u0439 Emby Server \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c. \u0427\u0442\u043e\u0431\u044b \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0432\u0435\u0440\u0441\u0438\u044e, \u043f\u043e\u0441\u0435\u0442\u0438\u0442\u0435 {0}",

View File

@ -0,0 +1,96 @@
{
"NoItemsFound": "Inga objekt hittades.",
"HeaderSaySomethingLike": "S\u00e4g n\u00e5got som...",
"HeaderYouSaid": "Du sa...",
"MessageIfYouBlockedVoice": "Om du nekade tillg\u00e5ng f\u00f6r r\u00f6st\u00e5tkomst till appen s\u00e5 beh\u00f6ver du konfigurera om innan du f\u00f6rs\u00f6ker igen.",
"ButtonTryAgain": "F\u00f6rs\u00f6k igen",
"MessageWeDidntRecognizeCommand": "Ledsen, men vi k\u00e4nner inte igen det kommandot.",
"ValueSpecialEpisodeName": "Specialavsnitt - {0}",
"Share": "Dela",
"ServerUpdateNeeded": "Den h\u00e4r Emby servern beh\u00f6ver uppdateras. F\u00f6r att ladda ner senaste versionen, g\u00e5 till {0}",
"LiveTvGuideRequiresUnlock": "LiveTV guiden \u00e4r f\u00f6r n\u00e4rvarande begr\u00e4nsad till {0} kanaler. Klicka p\u00e5 l\u00e5sa upp knappen f\u00f6r att veta hur du kan ut\u00f6ka upplevelsen.",
"AttributeNew": "Nytillkommet",
"AttributePremiere": "Premi\u00e4r",
"AttributeLive": "Live",
"TrackCount": "{0} sp\u00e5r",
"ItemCount": "{0} objekt",
"ValueSeriesYearToPresent": "{0}-nu",
"ReleaseYearValue": "Utgivnings\u00e5r: {0}",
"OriginalAirDateValue": "Ursprungligt s\u00e4ndningsdatum: {0}",
"EndsAtValue": "Slutar vid: {0}",
"OptionSundayShort": "S\u00f6n",
"OptionMondayShort": "M\u00e5n",
"OptionTuesdayShort": "Tis",
"OptionWednesdayShort": "Ons",
"OptionThursdayShort": "Tor",
"OptionFridayShort": "Fre",
"OptionSaturdayShort": "L\u00f6r",
"HeaderSelectDate": "V\u00e4lj datum",
"ButtonOk": "Ok",
"ButtonCancel": "Avbryt",
"ButtonGotIt": "Uppfattat",
"RecordingCancelled": "Inspelning avbruten.",
"RecordingScheduled": "Inspelning schemalagd",
"SeriesRecordingScheduled": "Serieinspelning schemalagd.",
"HeaderNewRecording": "Ny inspelning",
"Sunday": "S\u00f6ndag",
"Monday": "M\u00e5ndag",
"Tuesday": "Tisdag",
"Wednesday": "Onsdag",
"Thursday": "Torsdag",
"Friday": "Fredag",
"Saturday": "L\u00f6rdag",
"Days": "Dagar",
"RecordSeries": "Spela in serie",
"LabelPrePaddingMinutes": "Marginal i minuter f\u00f6re programstart:",
"LabelPostPaddingMinutes": "Marginal i minuter efter programslut:",
"RecordOnAllChannels": "Spela in p\u00e5 alla kanaler",
"RecordAnytime": "Spela in n\u00e4r som helst",
"RecordOnlyNewEpisodes": "Spela bara in nya avsnitt",
"HeaderBecomeProjectSupporter": "Skaffa Emby Premium",
"HeaderEnjoyDayTrial": "Upplev en 14-dagars pr\u00f6voperiod",
"MessageActiveSubscriptionRequiredSeriesRecordings": "En aktiv Emby Premium prenumeration kr\u00e4vs f\u00f6r att skapa automatiska serieinspelningar.",
"OptionConvertRecordingsToStreamingFormat": "Konvertera inspelningar automatiskt till ett str\u00f6mningsv\u00e4nligt format",
"OptionConvertRecordingsToStreamingFormatHelp": "Inspelningar omkodas till MP4 f\u00f6r problemfri str\u00f6mning till dina enheter.",
"FeatureRequiresEmbyPremiere": "Den h\u00e4r funktionen kr\u00e4ver en aktiv Emby Premium prenumeration.",
"Record": "Spela in",
"Save": "Spara",
"Edit": "Redigera",
"Download": "Ladda ned",
"Advanced": "Avancerat",
"Delete": "Ta bort",
"HeaderDeleteItem": "Ta bort objekt",
"ConfirmDeleteItem": "Genom att ta bort det h\u00e4r objektet s\u00e5 tas det bort b\u00e5de fr\u00e5n disk och ifr\u00e5n ditt mediabibliotek. \u00c4r du s\u00e4ker p\u00e5 att du vill forts\u00e4tta?",
"Refresh": "Uppdatera",
"RefreshQueued": "Uppdatering k\u00f6ad.",
"AddToCollection": "L\u00e4gg till samling",
"NewCollection": "Ny samling",
"LabelCollection": "Samling:",
"Help": "Hj\u00e4lp",
"NewCollectionHelp": "Samlingar g\u00f6r det m\u00f6jligt att skapa personanpassade grupperingar av filmer eller annat inneh\u00e5ll.",
"SearchForCollectionInternetMetadata": "S\u00f6k p\u00e5 internet efter grafik och metadata",
"LabelName": "Namn:",
"NewCollectionNameExample": "Exemple: Star Wars-samling",
"MessageItemsAdded": "Objekt tillagda.",
"OptionNew": "Ny...",
"LabelPlaylist": "Spellista:",
"AddToPlaylist": "L\u00e4gg till i spellista",
"Subtitles": "Undertexter",
"SearchForSubtitles": "S\u00f6k efter undertexter",
"LabelLanguage": "Spr\u00e5k:",
"Search": "S\u00f6k",
"NoSubtitleSearchResultsFound": "Inga resultat hittades.",
"File": "Fil",
"MessageAreYouSureDeleteSubtitles": "\u00c4r du s\u00e4ker p\u00e5 att du vill ta bort den h\u00e4r undertextfilen?",
"ConfirmDeletion": "Bekr\u00e4fta radering",
"MySubtitles": "Mina undertexter",
"MessageDownloadQueued": "Nedladdning k\u00f6ad.",
"EditSubtitles": "\u00c4ndra undertexter",
"UnlockGuide": "L\u00e5s upp guide",
"RefreshMetadata": "Uppdatera metadata",
"ReplaceExistingImages": "Ers\u00e4tt befintliga bilder",
"ReplaceAllMetadata": "Ers\u00e4tt all metadata",
"SearchForMissingMetadata": "S\u00f6k efter saknad metadata",
"LabelRefreshMode": "Uppdateringsl\u00e4ge:",
"RefreshDialogHelp": "Metadata uppdateras baserat p\u00e5 inst\u00e4llningar och internettj\u00e4nster som har aktiverats under Emby servers kontrollpanel."
}

View File

@ -1,5 +1,5 @@
<div class="dialogHeader">
<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">arrow_back</i></button>
<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">&#xE5C4;</i></button>
<div class="dialogHeaderTitle">${Subtitles}</div>
</div>
<div class="dialogContent smoothScrollY">

View File

@ -113,7 +113,7 @@ define(['dialogHelper', './voicereceiver', './voiceprocessor', 'globalize', 'emb
var html = '';
html += '<div class="dialogHeader" style="margin:0 0 1em;">';
html += '<button is="paper-icon-button-light" class="btnCancel autoSize btnCancelVoiceInput" tabindex="-1"><i class="md-icon">arrow_back</i></button>';
html += '<button is="paper-icon-button-light" class="btnCancel autoSize btnCancelVoiceInput" tabindex="-1"><i class="md-icon">&#xE5C4;</i></button>';
html += '<div class="dialogHeaderTitle" id="voiceDialogGroupName">';
html += '</div>';
html += '</div>';

View File

@ -1,6 +1,6 @@
{
"name": "iron-menu-behavior",
"version": "1.1.7",
"version": "1.1.8",
"description": "Provides accessible menu behavior",
"authors": "The Polymer Authors",
"keywords": [
@ -34,11 +34,11 @@
"web-component-tester": "^4.0.0",
"webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0"
},
"_release": "1.1.7",
"_release": "1.1.8",
"_resolution": {
"type": "version",
"tag": "v1.1.7",
"commit": "ea59e6ce5644d8f7a20c22f13f614ea60604a812"
"tag": "v1.1.8",
"commit": "3f6676b93a4592975efa235590b9d8236af6ea1d"
},
"_source": "git://github.com/polymerelements/iron-menu-behavior.git",
"_target": "^1.0.0",

View File

@ -1,23 +1,23 @@
language: node_js
sudo: required
before_script:
- npm install -g bower polylint web-component-tester
- bower install
- polylint
- npm install -g bower polylint web-component-tester
- bower install
- polylint
env:
global:
- secure: QxZD8yzz7s3F6b7h87ztWYiEbD2TrQp1Z1mib5u1wL7EAwsrQVkFhIEo4cJPAsTGS98qgeZAITg0ifwp/jOKVC2QKoPnC1qjm4L0AjlhXBTRbqyS5G8jvfJ8M4DgkQXADh4e+lw9ba3h2AxceJELKTYaQVq/cpTrpPg0/RH7H4o=
- secure: i76J23Bpwj6qJ4ybCCsQpGCTT+5s1PA+x0Avjbl1JTS4OsJLDFfvVl0YIWZ5xMIKJtdPC/mGDoZ2LNrh9hz82DBqDnzBlSnNjFbjnU1Aqy5CUmRWzyAF5NOjJGotISZcDYDGZd6gjsOfN0r+rICyRUiOadeyPf0Nm+6HSVQMjfM=
- secure: CbYi/0VAtpLB+NDHdD/I9q2ldILrmyc3wxKdO5vEtMvRKYgsddQ/hXGovV3c6Hy9sAXD5sKtNi60BBG5E2XuydshjYAZiytfeNjFIvDu5627Xljjt90e/r1hg3tNHRRQihH73nPECfp/X+g+yBNCX3f0+2ExAh0DMs1DXt7Dl7Q=
- secure: kLFlOTh9IjctY7DIJ3KEw5OPrqHNTzoArdabfAtisBMWahuJptKFmYCp/t+zPSL27IVqJakaqPrwGrBUi+4h3wVWredNhfl2lCpMfQfBMcHC5kBVkf2xjJyDa5Y3bP7jPq6YnWYAqEl6pBWYiHU6yWBc6BEdJ6FsTWFbLFTnY7w=
node_js: stable
addons:
firefox: latest
firefox: '46.0'
apt:
sources:
- google-chrome
- google-chrome
packages:
- google-chrome-stable
- google-chrome-stable
sauce_connect: true
script:
- xvfb-run wct
- "if [ \"${TRAVIS_PULL_REQUEST}\" = \"false\" ]; then wct -s 'default'; fi"
- xvfb-run wct
- if [ "${TRAVIS_PULL_REQUEST}" = "false" ]; then wct -s 'default'; fi
dist: trusty

View File

@ -1,4 +1,3 @@
<!--
This file is autogenerated based on
https://github.com/PolymerElements/ContributionGuide/blob/master/CONTRIBUTING.md
@ -11,6 +10,7 @@ specific element:
jsbin=https://jsbin.com/cagaye/edit?html,output
-->
# Polymer Elements
## Guide for Contributors

View File

@ -1,6 +1,6 @@
{
"name": "iron-menu-behavior",
"version": "1.1.7",
"version": "1.1.8",
"description": "Provides accessible menu behavior",
"authors": "The Polymer Authors",
"keywords": [

View File

@ -139,11 +139,12 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
/**
* Focuses the previous item (relative to the currently focused item) in the
* menu, disabled items will be skipped.
* Loop until length + 1 to handle case of single item in menu.
*/
_focusPrevious: function() {
var length = this.items.length;
var curFocusIndex = Number(this.indexOf(this.focusedItem));
for (var i = 1; i < length; i++) {
for (var i = 1; i < length + 1; i++) {
var item = this.items[(curFocusIndex - i + length) % length];
if (!item.hasAttribute('disabled')) {
this._setFocusedItem(item);
@ -155,11 +156,12 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
/**
* Focuses the next item (relative to the currently focused item) in the
* menu, disabled items will be skipped.
* Loop until length + 1 to handle case of single item in menu.
*/
_focusNext: function() {
var length = this.items.length;
var curFocusIndex = Number(this.indexOf(this.focusedItem));
for (var i = 1; i < length; i++) {
for (var i = 1; i < length + 1; i++) {
var item = this.items[(curFocusIndex + i) % length];
if (!item.hasAttribute('disabled')) {
this._setFocusedItem(item);

View File

@ -36,6 +36,14 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
</template>
</test-fixture>
<test-fixture id="single-item">
<template>
<test-menu>
<div>item 1</div>
</test-menu>
</template>
</test-fixture>
<test-fixture id="disabled">
<template>
<test-menu>
@ -101,6 +109,17 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
});
});
test('first item gets focus when menu is focused in a single item menu', function(done) {
var menu = fixture('single-item');
MockInteractions.focus(menu);
Polymer.Base.async(function() {
var ownerRoot = Polymer.dom(menu.firstElementChild).getOwnerRoot() || document;
var activeElement = Polymer.dom(ownerRoot).activeElement;
assert.equal(activeElement, menu.firstElementChild, 'menu.firstElementChild is focused');
done();
});
});
test('selected item gets focus when menu is focused', function(done) {
var menu = fixture('basic');
menu.selected = 1;

View File

@ -36,7 +36,7 @@
"tag": "v1.5.2",
"commit": "18e8e12dcd9a4560de480562f65935feed334b86"
},
"_source": "git://github.com/polymerelements/iron-selector.git",
"_source": "git://github.com/PolymerElements/iron-selector.git",
"_target": "^1.0.0",
"_originalSource": "polymerelements/iron-selector"
"_originalSource": "PolymerElements/iron-selector"
}

View File

@ -31,14 +31,14 @@
"web-component-tester": "*"
},
"private": true,
"homepage": "https://github.com/Polymer/polymer",
"homepage": "https://github.com/polymer/polymer",
"_release": "1.6.0",
"_resolution": {
"type": "version",
"tag": "v1.6.0",
"commit": "8715c83bf04a228de00ec662ed43eb6141e61b91"
},
"_source": "git://github.com/Polymer/polymer.git",
"_target": "^1.2.0",
"_originalSource": "Polymer/polymer"
"_source": "git://github.com/polymer/polymer.git",
"_target": "^1.0.0",
"_originalSource": "polymer/polymer"
}

View File

@ -171,7 +171,7 @@ function (dialogHelper, loading, connectionManager, globalize, actionsheet) {
var title = globalize.translate('MapChannels');
html += '<div class="dialogHeader" style="margin:0 0 2em;">';
html += '<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">arrow_back</i></button>';
html += '<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">&#xE5C4;</i></button>';
html += '<div class="dialogHeaderTitle">';
html += title;
html += '</div>';

View File

@ -220,7 +220,7 @@
var html = '';
html += '<h2 class="dialogHeader">';
html += '<button type="button" is="emby-button" icon="arrow-back" class="fab mini btnCloseDialog autoSize" tabindex="-1"><i class="md-icon">arrow_back</i></button>';
html += '<button type="button" is="emby-button" icon="arrow-back" class="fab mini btnCloseDialog autoSize" tabindex="-1"><i class="md-icon">&#xE5C4;</i></button>';
html += '<div style="display:inline-block;margin-left:.6em;vertical-align:middle;">' + (options.header || Globalize.translate('HeaderSelectPath')) + '</div>';
html += '</h2>';

View File

@ -1,6 +1,6 @@
<div class="dialogHeader" style="margin:0 0 2em;">
<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1">
<i class="md-icon">arrow_back</i>
<i class="md-icon">&#xE5C4;</i>
</button>
<div class="dialogHeaderTitle">
</div>

View File

@ -1,6 +1,6 @@
<div class="dialogHeader" style="margin:0 0 2em;">
<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1">
<i class="md-icon">arrow_back</i>
<i class="md-icon">&#xE5C4;</i>
</button>
<div class="dialogHeaderTitle">
${HeaderInviteUser}

View File

@ -113,7 +113,7 @@
if (showControls) {
html += '<div data-role="controlgroup" data-type="horizontal" style="display:inline-block;">';
html += '<button is="paper-icon-button-light" title="' + Globalize.translate('ButtonPreviousPage') + '" class="btnPreviousPage autoSize" ' + (startIndex ? '' : 'disabled') + '><i class="md-icon">arrow_back</i></button>';
html += '<button is="paper-icon-button-light" title="' + Globalize.translate('ButtonPreviousPage') + '" class="btnPreviousPage autoSize" ' + (startIndex ? '' : 'disabled') + '><i class="md-icon">&#xE5C4;</i></button>';
html += '<button is="paper-icon-button-light" title="' + Globalize.translate('ButtonNextPage') + '" class="btnNextPage autoSize" ' + (startIndex + limit >= totalRecordCount ? 'disabled' : '') + '><i class="md-icon">arrow_forward</i></button>';
html += '</div>';
}
@ -312,7 +312,7 @@
var html = '';
html += '<h2 class="dialogHeader">';
html += '<button type="button" is="emby-button" icon="arrow-back" class="fab mini btnCloseDialog autoSize" tabindex="-1"><i class="md-icon">arrow_back</i></button>';
html += '<button type="button" is="emby-button" icon="arrow-back" class="fab mini btnCloseDialog autoSize" tabindex="-1"><i class="md-icon">&#xE5C4;</i></button>';
html += '<div style="display:inline-block;margin-left:.6em;vertical-align:middle;">' + Globalize.translate('HeaderSearch') + '</div>';
html += '</h2>';

View File

@ -266,7 +266,7 @@
var html = '';
html += '<h2 class="dialogHeader">';
html += '<button type="button" is="emby-button" icon="arrow-back" class="fab mini btnCloseDialog autoSize" tabindex="-1"><i class="md-icon">arrow_back</i></button>';
html += '<button type="button" is="emby-button" icon="arrow-back" class="fab mini btnCloseDialog autoSize" tabindex="-1"><i class="md-icon">&#xE5C4;</i></button>';
html += '<div style="display:inline-block;margin-left:.6em;vertical-align:middle;">' + item.Name + '</div>';
html += '</h2>';

View File

@ -149,7 +149,7 @@
var html = '';
html += '<h2 class="dialogHeader">';
html += '<button type="button" is="emby-button" icon="arrow-back" class="fab mini btnCloseDialog autoSize" tabindex="-1"><i class="md-icon">arrow_back</i></button>';
html += '<button type="button" is="emby-button" icon="arrow-back" class="fab mini btnCloseDialog autoSize" tabindex="-1"><i class="md-icon">&#xE5C4;</i></button>';
html += '<div style="display:inline-block;margin-left:.6em;vertical-align:middle;">' + Globalize.translate('HeaderUploadImage') + '</div>';
html += '</h2>';

View File

@ -1,6 +1,6 @@
<div class="dialogHeader" style="margin:0 0 2em;">
<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1">
<i class="md-icon">arrow_back</i>
<i class="md-icon">&#xE5C4;</i>
</button>
<div class="dialogHeaderTitle">
</div>

View File

@ -1,6 +1,6 @@
<div class="dialogHeader" style="margin:0 0 2em;">
<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1">
<i class="md-icon">arrow_back</i>
<i class="md-icon">&#xE5C4;</i>
</button>
<div class="dialogHeaderTitle">
${ButtonEdit}

View File

@ -1,6 +1,6 @@
<div class="dialogHeader" style="margin:0 0 2em;">
<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1">
<i class="md-icon">arrow_back</i>
<i class="md-icon">&#xE5C4;</i>
</button>
<div class="dialogHeaderTitle">
${ButtonEdit}

View File

@ -3,7 +3,7 @@
<div id="itemBackdrop" class="itemBackdrop noBackdrop">
<div class="itemBackdropContent">
</div>
<a href="#" id="lnkPreviousItem" class="lnkPreviousItem lnkSibling hide clearLink"><button is="emby-button" type="button" class="raised subdued notext"><i class="md-icon">arrow_back</i></button></a>
<a href="#" id="lnkPreviousItem" class="lnkPreviousItem lnkSibling hide clearLink"><button is="emby-button" type="button" class="raised subdued notext"><i class="md-icon">&#xE5C4;</i></button></a>
<a href="#" id="lnkNextItem" class="lnkNextItem lnkSibling hide clearLink"><button is="emby-button" type="button" class="raised subdued notext"><i class="md-icon">arrow_forward</i></button></a>
</div>

View File

@ -4,7 +4,7 @@
<div style="background: #080808;">
<button is="paper-icon-button-light" style="position: absolute; top: .5em; left: .5em; z-index: 1;" tabindex="-1" class="btnExitRemoteControl autoSize">
<i class="md-icon">arrow_back</i>
<i class="md-icon">&#xE5C4;</i>
</button>
<div style="float: right; position: absolute; top: .5em; right: .5em; text-align: right;" class="topRightContainer">
<span class="nowPlayingSelectedPlayer"></span>
@ -125,7 +125,7 @@
</div>
<div>
<button is="paper-icon-button-light" class="btnBack btnCommand autoSize" title="${ButtonBack}" data-command="Back">
<i class="md-icon">arrow_back</i>
<i class="md-icon">&#xE5C4;</i>
</button>
<button is="paper-icon-button-light" class="btnInfo btnCommand autoSize" title="${ButtonInfo}" data-command="ToggleContextMenu">

View File

@ -1742,6 +1742,11 @@
var screenWidth = window.innerWidth;
if (!browserInfo.mobile) {
var roundScreenTo = 100;
screenWidth = Math.ceil(screenWidth / roundScreenTo) * roundScreenTo;
}
var cachedResults = LibraryBrowser.posterSizes;
for (var i = 0, length = cachedResults.length; i < length; i++) {
@ -2899,7 +2904,7 @@
if (showControls) {
html += '<button is="paper-icon-button-light" class="btnPreviousPage autoSize" ' + (startIndex ? '' : 'disabled') + '><i class="md-icon">arrow_back</i></button>';
html += '<button is="paper-icon-button-light" class="btnPreviousPage autoSize" ' + (startIndex ? '' : 'disabled') + '><i class="md-icon">&#xE5C4;</i></button>';
html += '<button is="paper-icon-button-light" class="btnNextPage autoSize" ' + (startIndex + limit >= totalRecordCount ? 'disabled' : '') + '><i class="md-icon">arrow_forward</i></button>';
}

View File

@ -9,7 +9,7 @@
var html = '';
html += '<div class="primaryIcons">';
var backIcon = browserInfo.safari ? 'chevron_left' : 'arrow_back';
var backIcon = browserInfo.safari ? 'chevron_left' : '&#xE5C4;';
html += '<button type="button" is="paper-icon-button-light" class="headerButton headerButtonLeft headerBackButton hide autoSize"><i class="md-icon">' + backIcon + '</i></button>';

View File

@ -1180,7 +1180,7 @@ var Dashboard = {
}
if (browserInfo.mobile) {
quality -= 10;
quality -= 15;
}
if (AppInfo.hasLowImageBandwidth) {
@ -1191,12 +1191,12 @@ var Dashboard = {
if (isBackdrop) {
quality -= 5;
} else {
quality -= 10;
quality -= 5;
}
} else {
quality -= 40;
quality -= 25;
}
}
@ -2269,7 +2269,7 @@ var AppInfo = {};
var baseUrl = 'bower_components/emby-webcomponents/strings/';
var languages = ['da', 'de', 'en-US', 'es-MX', 'kk', 'nb', 'nl', 'pt-BR', 'pt-PT', 'ru'];
var languages = ['da', 'de', 'en-US', 'es-MX', 'kk', 'nb', 'nl', 'pt-BR', 'pt-PT', 'ru', 'sv'];
var translations = languages.map(function (i) {
return {

View File

@ -258,7 +258,7 @@
var html = '';
html += '<div class="dialogHeader" style="margin:0 0 2em;">';
html += '<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">arrow_back</i></button>';
html += '<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon">&#xE5C4;</i></button>';
html += '<div class="dialogHeaderTitle">';
html += Globalize.translate('SyncMedia');
html += '</div>';

View File

@ -25,7 +25,7 @@
</style>
<button is="paper-icon-button-light" style="position: absolute; top: .6em; left: 0; z-index: 1;" tabindex="-1" class="btnBack autoSize">
<i class="md-icon">arrow_back</i>
<i class="md-icon">&#xE5C4;</i>
</button>
<div data-role="content" style="padding-top:0!important;padding-left:0!important;padding-right:0!important;">

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "\u062e\u0631\u0648\u062c",
"LabelVisitCommunity": "\u0632\u064a\u0627\u0631\u0629 \u0627\u0644\u0645\u062c\u062a\u0645\u0639",
"LabelGithub": "\u062c\u064a\u062a \u0647\u0628",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "\u0418\u0437\u0445\u043e\u0434",
"LabelVisitCommunity": "\u041f\u043e\u0441\u0435\u0442\u0438 \u043e\u0431\u0449\u0435\u0441\u0442\u0432\u043e\u0442\u043e",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Sortir",
"LabelVisitCommunity": "Visita la Comunitat",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Zav\u0159\u00edt",
"LabelVisitCommunity": "Nav\u0161t\u00edvit komunitu",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Afslut",
"LabelVisitCommunity": "Bes\u00f8g F\u00e6lleskab",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Beenden",
"LabelVisitCommunity": "Besuche die Community",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "\u0388\u03be\u03bf\u03b4\u03bf\u03c2",
"LabelVisitCommunity": "\u039a\u03bf\u03b9\u03bd\u03cc\u03c4\u03b7\u03c4\u03b1",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Exit",
"LabelVisitCommunity": "Visit Community",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Salir",
"LabelVisitCommunity": "Visit Community",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "Por defecto, Emby importara {0} horas de datos de la gu\u00eda. Para importar datos ilimitados necesita una subscripcion activa de Emby Premiere",
"LabelExit": "Salir",
"LabelVisitCommunity": "Visitar la Comunidad",
"LabelGithub": "Github",
@ -316,7 +317,7 @@
"OptionAllowRemoteSharedDevices": "Permitir control remoto de dispositivos compartidos",
"OptionAllowRemoteSharedDevicesHelp": "Los dispositivos dnla son considerados como compartidos hasta que alg\u00fan usuario comienza a controlarlo.",
"OptionAllowLinkSharing": "Permitir compartir medios en redes sociales.",
"OptionAllowLinkSharingHelp": "Solo son compartidas paginas web que contengan informaci\u00f3n sobre los medios. Los archivos de medios nunca son compartidos p\u00fablicamente. Son compartidos por un tiempo limitado y expiraran basados en las configuraciones para compartir de su servidor.",
"OptionAllowLinkSharingHelp": "Solo son compartidas paginas web que contengan informaci\u00f3n sobre los medios. Los archivos de medios nunca son compartidos p\u00fablicamente. Son compartidos por un tiempo limitado y expiraran despu\u00e9s de {0} d\u00edas.",
"HeaderSharing": "Compartido",
"HeaderRemoteControl": "Control Remoto",
"OptionMissingTmdbId": "Falta Id de Tmdb",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Salir",
"LabelVisitCommunity": "Visitar la comunidad",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Poistu",
"LabelVisitCommunity": "K\u00e4y Yhteis\u00f6ss\u00e4",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Quitter",
"LabelVisitCommunity": "Visiter la Communaut\u00e9",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Quitter",
"LabelVisitCommunity": "Visiter la Communaut\u00e9",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Quitter",
"LabelVisitCommunity": "Visiter la Communaut\u00e9",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Verlasse",
"LabelVisitCommunity": "Bsuech d'Community",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "\u05d9\u05e6\u05d9\u05d0\u05d4",
"LabelVisitCommunity": "\u05d1\u05e7\u05e8 \u05d1\u05e7\u05d4\u05d9\u05dc\u05d4",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Izlaz",
"LabelVisitCommunity": "Posjeti zajednicu",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Kil\u00e9p\u00e9s",
"LabelVisitCommunity": "K\u00f6z\u00f6ss\u00e9g",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Keluar",
"LabelVisitCommunity": "Kunjungi Komunitas",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Esci",
"LabelVisitCommunity": "Visita la Community",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "\u04d8\u0434\u0435\u043f\u043a\u0456\u0434\u0435, Emby \u0430\u0440\u049b\u044b\u043b\u044b {0} \u0441\u0430\u0493\u0430\u0442 \u049b\u0430\u043c\u0442\u0438\u0442\u044b\u043d \u0442\u0435\u043b\u0435\u0433\u0438\u0434 \u0434\u0435\u0440\u0435\u043a\u0442\u0435\u0440\u0456 \u0448\u0435\u0442\u0442\u0435\u043d \u04d9\u043a\u0435\u043b\u0456\u043d\u0435\u0434\u0456. \u0414\u0435\u0440\u0435\u043a\u0442\u0435\u0440\u0434\u0456 \u0448\u0435\u043a\u0441\u0456\u0437 \u0448\u0435\u0442\u0442\u0435\u043d \u04d9\u043a\u0435\u043b\u0443\u0456 \u0431\u0435\u043b\u0441\u0435\u043d\u0434\u0456 Emby Premiere \u0436\u0430\u0437\u044b\u043b\u044b\u043c\u044b\u043d \u049b\u0430\u0436\u0435\u0442 \u0435\u0442\u0435\u0434\u0456.",
"LabelExit": "\u0428\u044b\u0493\u0443",
"LabelVisitCommunity": "\u049a\u0430\u0443\u044b\u043c\u0434\u0430\u0441\u0442\u044b\u049b\u049b\u0430 \u0431\u0430\u0440\u0443",
"LabelGithub": "GitHub",
@ -316,7 +317,7 @@
"OptionAllowRemoteSharedDevices": "\u041e\u0440\u0442\u0430\u049b \u049b\u04b1\u0440\u044b\u043b\u0493\u044b\u043b\u0430\u0440\u0434\u044b \u049b\u0430\u0448\u044b\u049b\u0442\u0430\u043d \u0431\u0430\u0441\u049b\u0430\u0440\u0443 \u04af\u0448\u0456\u043d \u0440\u04b1\u049b\u0441\u0430\u0442 \u0435\u0442\u0443",
"OptionAllowRemoteSharedDevicesHelp": "DLNA-\u049b\u04b1\u0440\u044b\u043b\u0493\u044b\u043b\u0430\u0440\u044b \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443\u0448\u044b \u0431\u0430\u0441\u049b\u0430\u0440\u0493\u0430\u043d\u0448\u0430 \u0434\u0435\u0439\u0456\u043d \u043e\u0440\u0442\u0430\u049b \u0440\u0435\u0442\u0456\u043d\u0434\u0435 \u0435\u0441\u0435\u043f\u0442\u0435\u043b\u0456\u043d\u0435\u0434\u0456.",
"OptionAllowLinkSharing": "\u04d8\u043b\u0435\u0443\u043c\u0435\u0442\u0442\u0456\u043a \u0436\u0435\u043b\u0456\u043b\u0435\u0440\u0456\u043c\u0435\u043d \u043e\u0440\u0442\u0430\u049b \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443\u0493\u0430 \u0440\u04b1\u049b\u0441\u0430\u0442 \u0435\u0442\u0443",
"OptionAllowLinkSharingHelp": "\u0422\u0435\u043a \u049b\u0430\u043d\u0430 \u0442\u0430\u0441\u044b\u0493\u044b\u0448 \u0442\u0443\u0440\u0430\u043b\u044b \u0430\u049b\u043f\u0430\u0440\u0430\u0442\u0442\u044b \u049b\u0430\u043c\u0442\u0438\u0442\u044b\u043d \u0432\u0435\u0431-\u0431\u0435\u0442\u0442\u0435\u0440\u0456 \u043e\u0440\u0442\u0430\u049b \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u044b\u043b\u0430\u0434\u044b. \u0422\u0430\u0441\u044b\u0493\u044b\u0448 \u0444\u0430\u0439\u043b\u0434\u0430\u0440\u044b \u0435\u0448\u049b\u0430\u0448\u0430\u043d \u043e\u0440\u0442\u0430\u049b \u0436\u0430\u0440\u0438\u044f\u043b\u0430\u043d\u0431\u0430\u0439\u0434\u044b. \u041e\u0440\u0442\u0430\u049b\u0442\u0430\u0441\u0443 \u0443\u0430\u049b\u044b\u0442\u043f\u0435\u043d \u0448\u0435\u043a\u0442\u0435\u043b\u0435\u0434\u0456 \u0436\u04d9\u043d\u0435 \u043c\u0435\u0440\u0437\u0456\u043c\u0456 \u0441\u0435\u0440\u0432\u0435\u0440\u0456\u04a3\u0456\u0437\u0434\u0456\u04a3 \u043e\u0440\u0442\u0430\u049b\u0442\u0430\u0441\u0443 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043b\u0435\u0440\u0456\u043d\u0456\u04a3 \u043d\u0435\u0433\u0456\u0437\u0456\u043d\u0434\u0435 \u0430\u044f\u049b\u0442\u0430\u043b\u0430\u0434\u044b.",
"OptionAllowLinkSharingHelp": "\u0422\u0435\u043a \u049b\u0430\u043d\u0430 \u0442\u0430\u0441\u044b\u0493\u044b\u0448 \u0442\u0443\u0440\u0430\u043b\u044b \u0430\u049b\u043f\u0430\u0440\u0430\u0442\u0442\u044b \u049b\u0430\u043c\u0442\u0438\u0442\u044b\u043d \u0432\u0435\u0431-\u0431\u0435\u0442\u0442\u0435\u0440 \u043e\u0440\u0442\u0430\u049b\u0442\u0430\u043d\u0430\u0434\u044b. \u0422\u0430\u0441\u044b\u0493\u044b\u0448 \u0444\u0430\u0439\u043b\u0434\u0430\u0440\u044b \u0435\u0448\u049b\u0430\u0448\u0430\u043d \u043e\u0440\u0442\u0430\u049b \u0436\u0430\u0440\u0438\u044f\u043b\u0430\u043d\u0431\u0430\u0439\u0434\u044b. \u041e\u0440\u0442\u0430\u049b\u0442\u0430\u0441\u0443 \u0443\u0430\u049b\u044b\u0442\u043f\u0435\u043d \u0448\u0435\u043a\u0442\u0435\u043b\u0435\u0434\u0456 \u0436\u04d9\u043d\u0435 \u043c\u0435\u0440\u0437\u0456\u043c\u0456 {0} \u043a\u04af\u043d\u0434\u0435 \u0430\u044f\u049b\u0442\u0430\u043b\u0430\u0434\u044b.",
"HeaderSharing": "\u041e\u0440\u0442\u0430\u049b \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443",
"HeaderRemoteControl": "\u049a\u0430\u0448\u044b\u049b\u0442\u0430\u043d \u0431\u0430\u0441\u049b\u0430\u0440\u0443",
"OptionMissingTmdbId": "TMDb Id \u0436\u043e\u049b",
@ -2374,7 +2375,7 @@
"SettingsWarning": "\u0411\u04b1\u043b \u043c\u04d9\u043d\u0434\u0435\u0440\u0434\u0456 \u04e9\u0437\u0433\u0435\u0440\u0442\u043a\u0435\u043d\u0434\u0435 \u0442\u04b1\u0440\u0430\u049b\u0441\u044b\u0437\u0434\u044b\u049b \u043d\u0435\u043c\u0435\u0441\u0435 \u049b\u043e\u0441\u044b\u043b\u044b\u043c \u043c\u04af\u043c\u043a\u0456\u043d\u0434\u0456\u0433\u0456\u043d\u0434\u0435 \u0441\u04d9\u0442\u0441\u0456\u0437\u0434\u0456\u043a \u0442\u0443\u0434\u044b\u0440\u044b\u043b\u0443\u044b \u043c\u04af\u043c\u043a\u0456\u043d. \u0415\u0433\u0435\u0440 \u0441\u0456\u0437\u0434\u0435 \u049b\u0430\u043d\u0434\u0430\u0439 \u0434\u0430 \u0431\u0456\u0440 \u0430\u049b\u0430\u0443\u043b\u044b\u049b\u0442\u0430\u0440 \u0431\u043e\u043b\u0441\u0430, \u043e\u043b\u0430\u0440\u0434\u044b \u049b\u0430\u0439\u0442\u0430\u0434\u0430\u043d \u04d9\u0434\u0435\u043f\u043a\u0456\u0441\u0456\u043d\u0435 \u04e9\u0437\u0433\u0435\u0440\u0442\u0443\u0434\u0456 \u04b1\u0441\u044b\u043d\u0430\u043c\u044b\u0437.",
"MapChannels": "\u0410\u0440\u043d\u0430\u043b\u0430\u0440 \u043a\u0430\u0440\u0442\u0430\u0441\u044b\u043d \u049b\u04b1\u0440\u0443",
"LabelffmpegPath": "FFmpeg \u0436\u043e\u043b\u044b:",
"LabelffmpegVersion": "FFmpeg version:",
"LabelffmpegVersion": "FFmpeg \u043d\u04b1\u0441\u049b\u0430\u0441\u044b:",
"LabelffmpegPathHelp": "\u0416\u04af\u043a\u0442\u0435\u043f \u0430\u043b\u044b\u043d\u0493\u0430\u043d FFmpeg \u049b\u043e\u043b\u0434\u0430\u0431\u0430\u04a3\u044b\u0437\u0434\u044b\u04a3, \u043d\u0435\u043c\u0435\u0441\u0435 FFmpeg \u0431\u0430\u0440 \u049b\u0430\u043b\u0442\u0430 \u0436\u043e\u043b\u044b.",
"SetupFFmpeg": "FFmpeg \u043e\u0440\u043d\u0430\u0442\u0443 \u0436\u04d9\u043d\u0435 \u0442\u0435\u04a3\u0448\u0435\u0443",
"SetupFFmpegHelp": "FFmpeg \u043c\u0456\u043d\u0434\u0435\u0442\u0442\u0456 \u049b\u04b1\u0440\u0430\u043c\u0434\u0430\u0441 \u0431\u043e\u043b\u044b\u043f \u0442\u0430\u0431\u044b\u043b\u0430\u0434\u044b \u0436\u04d9\u043d\u0435 \u0442\u0435\u04a3\u0448\u0435\u043b\u0443\u0456 \u049b\u0430\u0436\u0435\u0442.",
@ -2382,7 +2383,7 @@
"DownloadFFmpeg": "FFmpeg \u0436\u04af\u043a\u0442\u0435\u043f \u0430\u043b\u0443",
"FFmpegSuggestedDownload": "\u04b0\u0441\u044b\u043d\u044b\u043b\u0493\u0430\u043d \u0436\u04af\u043a\u0442\u0435\u0443: {0}",
"UnzipFFmpegFile": "\u0416\u04af\u043a\u0442\u0435\u043f \u0430\u043b\u044b\u043d\u0493\u0430\u043d \u0444\u0430\u0439\u043b\u0434\u044b \u049b\u0430\u043b\u0430\u0493\u0430\u043d \u049b\u0430\u043b\u0442\u0430\u0493\u0430 \u043c\u04b1\u0440\u0430\u0493\u0430\u0442\u0442\u0430\u043d \u0448\u044b\u0493\u0430\u0440\u044b\u04a3\u044b\u0437.",
"OptionUseSystemInstalledVersion": "Use system installed version",
"OptionUseMyCustomVersion": "Use a custom version",
"OptionUseSystemInstalledVersion": "\u0416\u04af\u0439\u0435\u0434\u0435 \u043e\u0440\u043d\u0430\u0442\u044b\u043b\u0493\u0430\u043d \u043d\u04b1\u0441\u049b\u0430\u043d\u044b \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443",
"OptionUseMyCustomVersion": "\u0420\u0435\u0442\u0442\u0435\u043b\u0435\u0442\u0456\u043d \u043d\u04b1\u0441\u049b\u0430\u043d\u044b \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443",
"FFmpegSavePathNotFound": "\u0411\u0456\u0437\u0433\u0435 \u0441\u0456\u0437 \u0435\u043d\u0433\u0456\u0437\u0433\u0435\u043d FFmpeg \u0436\u043e\u043b\u044b\u043d \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u044b\u043f \u0442\u0430\u0431\u0443 \u043c\u04af\u043c\u043a\u0456\u043d \u0431\u043e\u043b\u043c\u0430\u0434\u044b. \u0421\u043e\u043d\u0434\u0430\u0439-\u0430\u049b FFprobe \u0442\u0430\u043b\u0430\u043f \u0435\u0442\u0456\u043b\u0435\u0434\u0456 \u0436\u04d9\u043d\u0435 \u0441\u043e\u043b \u049b\u0430\u043b\u0442\u0430\u0434\u0430 \u0431\u043e\u043b\u0443\u044b \u0436\u04e9\u043d. \u0411\u04b1\u043b \u049b\u04b1\u0440\u0430\u043c\u0434\u0430\u0441\u0442\u0430\u0440 \u04d9\u0434\u0435\u0442\u0442\u0435 \u0441\u043e\u043b \u0436\u04af\u043a\u0442\u0435\u0443\u043c\u0435\u043d \u0431\u0456\u0440\u0433\u0435 \u0436\u0435\u0442\u043a\u0456\u0437\u0456\u043b\u0435\u0434\u0456. \u0416\u043e\u043b\u0434\u044b \u0442\u0435\u043a\u0441\u0435\u0440\u0456\u043f, \u049b\u0430\u0439\u0442\u0430\u043b\u0430\u043f \u043a\u04e9\u0440\u0456\u04a3\u0456\u0437."
}

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "\uc885\ub8cc",
"LabelVisitCommunity": "\ucee4\ubba4\ub2c8\ud2f0 \ubc29\ubb38",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Tutup",
"LabelVisitCommunity": "Melawat Masyarakat",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Avslutt",
"LabelVisitCommunity": "Bes\u00f8k samfunn",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Afsluiten",
"LabelVisitCommunity": "Bezoek Gemeenschap",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Wyj\u015bcie",
"LabelVisitCommunity": "Odwied\u017a spo\u0142eczno\u015b\u0107",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "Por padr\u00e3o, o Emby importar\u00e1 {0} horas de dados do guia. A importa\u00e7\u00e3o de dados ilimitados exige uma subscri\u00e7\u00e3o ativa do Emby Premiere.",
"LabelExit": "Sair",
"LabelVisitCommunity": "Visitar a Comunidade",
"LabelGithub": "Github",
@ -316,7 +317,7 @@
"OptionAllowRemoteSharedDevices": "Permitir controle remoto de dispositivos compartilhados",
"OptionAllowRemoteSharedDevicesHelp": "Dispositivos dlna s\u00e3o considerados compartilhados at\u00e9 que um usu\u00e1rio comece a control\u00e1-lo.",
"OptionAllowLinkSharing": "Permitir compartilhamento com m\u00eddia social",
"OptionAllowLinkSharingHelp": "Apenas p\u00e1ginas web que contenham informa\u00e7\u00f5es de m\u00eddia ser\u00e3o compartilhadas. Arquivos de m\u00eddia nunca ser\u00e3o compartilhados publicamente. Os compartilhamentos ter\u00e3o um limite de tempo e expirar\u00e3o com base nas defini\u00e7\u00f5es de compartilhamento do seu servidor.",
"OptionAllowLinkSharingHelp": "Apenas p\u00e1ginas web que contenham informa\u00e7\u00f5es de m\u00eddia s\u00e3o compartilhadas. Arquivos de m\u00eddia nunca s\u00e3o compartilhados publicamente. Os compartilhamentos t\u00eam um limite de tempo e expiram depois de {0} dias.",
"HeaderSharing": "Compartilhar",
"HeaderRemoteControl": "Controle Remoto",
"OptionMissingTmdbId": "Faltando Id Tmdb",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Sair",
"LabelVisitCommunity": "Visitar a Comunidade",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Iesire",
"LabelVisitCommunity": "Viziteaza comunitatea",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "\u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0432 Emby \u0438\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u0443\u044e\u0442\u0441\u044f {0} \u0447\u0430\u0441(\u0430\/\u043e\u0432) \u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0435\u043b\u0435\u0433\u0438\u0434\u0430. \u0414\u043b\u044f \u043d\u0435\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0438\u043c\u043f\u043e\u0440\u0442\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0430 Emby Premiere.",
"LabelExit": "\u0412\u044b\u0445\u043e\u0434",
"LabelVisitCommunity": "\u041f\u043e\u0441\u0435\u0449\u0435\u043d\u0438\u0435 \u0421\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0430",
"LabelGithub": "GitHub",
@ -316,7 +317,7 @@
"OptionAllowRemoteSharedDevices": "\u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u043e\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438 \u0432 \u043e\u0431\u0449\u0435\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u0435",
"OptionAllowRemoteSharedDevicesHelp": "DLNA-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0441\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f \u043d\u0430\u0445\u043e\u0434\u044f\u0449\u0438\u043c\u0438\u0441\u044f \u0432 \u043e\u0431\u0449\u0435\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u0435, \u043f\u043e\u043a\u0430 \u043a\u0430\u043a\u043e\u0439-\u043b\u0438\u0431\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0435 \u043d\u0430\u0447\u043d\u0451\u0442 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0438\u043c\u0438.",
"OptionAllowLinkSharing": "\u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f \u0434\u043b\u044f \u0441\u043e\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439",
"OptionAllowLinkSharingHelp": "\u0422\u043e\u043b\u044c\u043a\u043e \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0435 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043e \u043c\u0435\u0434\u0438\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u0435. \u041c\u0435\u0434\u0438\u0430\u0444\u0430\u0439\u043b\u044b \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0432 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f. \u041e\u0431\u0449\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u044b\u043c\u0438 \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0430 \u0441\u0440\u043e\u043a \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0430.",
"OptionAllowLinkSharingHelp": "\u0412 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u0435 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u0441\u043e \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f\u043c\u0438 \u043e \u043c\u0435\u0434\u0438\u0430\u0434\u0430\u043d\u043d\u044b\u0445. \u041c\u0435\u0434\u0438\u0430\u0444\u0430\u0439\u043b\u044b \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0432 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f. \u041e\u0431\u0449\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0430 \u0441\u0440\u043e\u043a \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0438\u0441\u0442\u0435\u0447\u0451\u0442 \u0447\u0435\u0440\u0435\u0437 {0} \u0434\u043d(\u044f\/\u0435\u0439).",
"HeaderSharing": "\u0421\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f",
"HeaderRemoteControl": "\u0423\u0434\u0430\u043b\u0451\u043d\u043d\u043e\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435",
"OptionMissingTmdbId": "\u041d\u0435\u0442 TMDb Id",
@ -2374,7 +2375,7 @@
"SettingsWarning": "\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u043d\u0435\u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0438\u043b\u0438 \u0441\u0431\u043e\u044f\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f. \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0432\u043e\u0437\u043d\u0438\u043a\u043b\u0438 \u043a\u0430\u043a\u0438\u0435-\u043b\u0438\u0431\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u043c\u044b \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u043c \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0438\u0445 \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u043a \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u043c.",
"MapChannels": "\u0421\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u0430\u043d\u0430\u043b\u043e\u0432",
"LabelffmpegPath": "\u041f\u0443\u0442\u044c \u043a FFmpeg:",
"LabelffmpegVersion": "FFmpeg version:",
"LabelffmpegVersion": "\u0412\u0435\u0440\u0441\u0438\u044f FFmpeg:",
"LabelffmpegPathHelp": "\u041f\u0443\u0442\u044c \u043a \u0432\u0430\u0448\u0435\u043c\u0443 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u043e\u043c\u0443 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044e FFmpeg \u0438\u043b\u0438 \u043a \u043f\u0430\u043f\u043a\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0435\u0439 FFmpeg.",
"SetupFFmpeg": "\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 FFmpeg:",
"SetupFFmpegHelp": "FFmpeg \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u043c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u043c \u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0435\u0433\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430.",
@ -2382,7 +2383,7 @@
"DownloadFFmpeg": "\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c FFmpeg",
"FFmpegSuggestedDownload": "\u041f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u043c\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430: {0}",
"UnzipFFmpegFile": "\u0420\u0430\u0441\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0432 \u043f\u0430\u043f\u043a\u0443 \u043f\u043e \u0432\u0430\u0448\u0435\u043c\u0443 \u0432\u044b\u0431\u043e\u0440\u0443.",
"OptionUseSystemInstalledVersion": "Use system installed version",
"OptionUseMyCustomVersion": "Use a custom version",
"OptionUseSystemInstalledVersion": "\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e",
"OptionUseMyCustomVersion": "\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e",
"FFmpegSavePathNotFound": "\u041c\u044b \u043d\u0435 \u0441\u043c\u043e\u0433\u043b\u0438 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u0442\u044c FFmpeg, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u0443\u0442\u044c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u0432\u0432\u0435\u043b\u0438. \u0422\u0430\u043a\u0436\u0435 FFprobe \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u043c \u0438 \u0434\u043e\u043b\u0436\u0435\u043d \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0432 \u0442\u043e\u0439 \u0436\u0435 \u043f\u0430\u043f\u043a\u0435. \u042d\u0442\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u043e\u0431\u044b\u0447\u043d\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0432 \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0442\u0435 \u0432\u043c\u0435\u0441\u0442\u0435 \u0432 \u0442\u043e\u0439 \u0436\u0435 \u0441\u0430\u043c\u043e\u0439 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435. \u041f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u043f\u0443\u0442\u044c \u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u0435 \u043f\u043e\u043f\u044b\u0442\u043a\u0443."
}

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Exit",
"LabelVisitCommunity": "Visit Community",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Izhod",
"LabelVisitCommunity": "Obiscite Skupnost",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Avsluta",
"LabelVisitCommunity": "Bes\u00f6k v\u00e5rt diskussionsforum",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Cikis",
"LabelVisitCommunity": "Bizi Ziyaret Edin",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "\u0412\u0438\u0439\u0442\u0438",
"LabelVisitCommunity": "Visit Community",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "Tho\u00e1t",
"LabelVisitCommunity": "Gh\u00e9 th\u0103m trang C\u1ed9ng \u0111\u1ed3ng",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "\u9000\u51fa",
"LabelVisitCommunity": "\u8bbf\u95ee\u793e\u533a",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "\u96e2\u958b",
"LabelVisitCommunity": "\u8a2a\u554f\u8a0e\u8ad6\u5340",
"LabelGithub": "Github",

View File

@ -1,4 +1,5 @@
{
"XmlTvPremiere": "By default, Emby will import {0} hours of guide data. Importing unlimited data requires an active Emby Premiere subscription.",
"LabelExit": "\u96e2\u958b",
"LabelVisitCommunity": "\u8a2a\u554f\u793e\u7fa4",
"LabelGithub": "GitHub",

View File

@ -1,4 +1,4 @@
<div id="editUserPage" data-role="page" class="page type-interior userProfilesPage" data-helpurl="https://github.com/MediaBrowser/Wiki/wiki/Users" data-require="jqmlistview,scripts/useredit,emby-input,paper-checkbox,emby-button">
<div id="editUserPage" data-role="page" class="page type-interior userProfilesPage" data-helpurl="https://github.com/MediaBrowser/Wiki/wiki/Users" data-require="scripts/useredit,emby-input,paper-checkbox,emby-button">
<div data-role="content">
<div class="content-primary">
@ -28,24 +28,25 @@
<div id="fldUserName" class="inputContainer">
<input is="emby-input" id="txtUserName" required type="text" label="${LabelName}" />
</div>
<ul data-role="listview" class="ulForm">
<li id="fldConnectInfo" style="display: none;">
<div class="paperList" style="padding: 1em; border-radius: 5px;">
<div class="inputContainer">
<input is="emby-input" id="txtConnectUserName" type="text" label="${LabelConnectUserName}" />
<div class="fieldDescription">
<div>${LabelConnectUserNameHelp}</div>
<div style="margin-top: .75em;">
<a href="http://emby.media/connect" target="_blank">${ButtonLearnMoreAboutEmbyConnect}</a>
</div>
<div id="fldConnectInfo" style="display: none;">
<div class="paperList" style="padding: 1em; border-radius: 5px;">
<div class="inputContainer">
<input is="emby-input" id="txtConnectUserName" type="text" label="${LabelConnectUserName}" />
<div class="fieldDescription">
<div>${LabelConnectUserNameHelp}</div>
<div style="margin-top: .75em;">
<a href="http://emby.media/connect" target="_blank">${ButtonLearnMoreAboutEmbyConnect}</a>
</div>
</div>
</div>
</li>
<li>
<paper-checkbox id="chkIsAdmin">${OptionAllowUserToManageServer}</paper-checkbox>
</li>
</ul>
</div>
</div>
<br />
<div>
<paper-checkbox id="chkIsAdmin">${OptionAllowUserToManageServer}</paper-checkbox>
</div>
<br />
<br />
<div id="featureAccessFields">
<div class="paperListLabel">${HeaderFeatureAccess}</div>
<div class="paperCheckboxList paperList" style="padding:.5em 1em;">
@ -104,13 +105,11 @@
<div class="fieldDescription paperCheckboxFieldDescription">${OptionHideUserFromLoginHelp}</div>
</div>
<br />
<ul data-role="listview" class="ulForm">
<li>
<button is="emby-button" type="submit" class="raised submit block"><iron-icon icon="check"></iron-icon><span>${ButtonSave}</span></button>
<div>
<button is="emby-button" type="submit" class="raised submit block"><iron-icon icon="check"></iron-icon><span>${ButtonSave}</span></button>
<button is="emby-button" type="button" class="raised cancel block btnCancel" onclick="history.back();"><iron-icon icon="close"></iron-icon><span>${ButtonCancel}</span></button>
</li>
</ul>
<button is="emby-button" type="button" class="raised cancel block btnCancel" onclick="history.back();"><iron-icon icon="close"></iron-icon><span>${ButtonCancel}</span></button>
</div>
</form>
</div>
</div>