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

update dialogs

This commit is contained in:
Luke Pulverenti 2016-05-18 17:46:56 -04:00
parent c00d7cba09
commit 92b687f9a5
16 changed files with 242 additions and 71 deletions

View file

@ -16,12 +16,12 @@
}, },
"devDependencies": {}, "devDependencies": {},
"ignore": [], "ignore": [],
"version": "1.3.44", "version": "1.3.45",
"_release": "1.3.44", "_release": "1.3.45",
"_resolution": { "_resolution": {
"type": "version", "type": "version",
"tag": "1.3.44", "tag": "1.3.45",
"commit": "7634be33759be48574ff2531df4d111fa1177e54" "commit": "dbaa46e3aa38a939b82f305c61e875e1a30da2fe"
}, },
"_source": "https://github.com/MediaBrowser/emby-webcomponents.git", "_source": "https://github.com/MediaBrowser/emby-webcomponents.git",
"_target": "^1.2.0", "_target": "^1.2.0",

View file

@ -217,7 +217,16 @@
var keyframes = [ var keyframes = [
{ transform: 'scale(0)', offset: 0 }, { transform: 'scale(0)', offset: 0 },
{ transform: 'scale(1,1)', offset: 1 }]; { transform: 'none', offset: 1 }];
var timing = elem.animationConfig.entry.timing;
return elem.animate(keyframes, timing).onfinish = onFinish;
}
function slideUp(elem, onFinish) {
var keyframes = [
{ transform: 'translate3d(0,30%,0)', opacity: 0, offset: 0 },
{ transform: 'none', opacity: 1, offset: 1 }];
var timing = elem.animationConfig.entry.timing; var timing = elem.animationConfig.entry.timing;
return elem.animate(keyframes, timing).onfinish = onFinish; return elem.animate(keyframes, timing).onfinish = onFinish;
} }
@ -240,6 +249,15 @@
return elem.animate(keyframes, timing); return elem.animate(keyframes, timing);
} }
function slideDown(elem, onFinish) {
var keyframes = [
{ transform: 'none', opacity: 1, offset: 0 },
{ transform: 'translate3d(0,30%,0)', opacity: 0, offset: 1 }];
var timing = elem.animationConfig.entry.timing;
return elem.animate(keyframes, timing);
}
function closeDialog(dlg) { function closeDialog(dlg) {
if (!dlg.classList.contains('hide')) { if (!dlg.classList.contains('hide')) {
@ -260,7 +278,18 @@
return; return;
} }
fadeOut(dlg).onfinish = onAnimationFinish; var animation;
if (dlg.animationConfig.exit.name == 'fadeout') {
animation = fadeOut(dlg);
} else if (dlg.animationConfig.exit.name == 'slidedown') {
animation = slideDown(dlg);
} else {
onAnimationFinish();
return;
}
animation.onfinish = onAnimationFinish;
} }
} }
@ -276,10 +305,12 @@
onAnimationFinish(); onAnimationFinish();
return; return;
} }
if (dlg.animationConfig.entry.name == 'fade-in-animation') { if (dlg.animationConfig.entry.name == 'fadein') {
fadeIn(dlg, onAnimationFinish); fadeIn(dlg, onAnimationFinish);
} else if (dlg.animationConfig.entry.name == 'scale-up-animation') { } else if (dlg.animationConfig.entry.name == 'scaleup') {
scaleUp(dlg, onAnimationFinish); scaleUp(dlg, onAnimationFinish);
} else if (dlg.animationConfig.entry.name == 'slideup') {
slideUp(dlg, onAnimationFinish);
} }
} }
@ -355,9 +386,9 @@
dlg.setAttribute('data-autofocus', 'true'); dlg.setAttribute('data-autofocus', 'true');
} }
var defaultEntryAnimation = browser.animate ? 'scale-up-animation' : 'fade-in-animation'; var defaultEntryAnimation = browser.animate ? 'scaleup' : 'fadein';
dlg.entryAnimation = options.entryAnimation || defaultEntryAnimation; dlg.entryAnimation = options.entryAnimation || defaultEntryAnimation;
dlg.exitAnimation = 'fade-out-animation'; dlg.exitAnimation = 'fadeout';
// If it's not fullscreen then lower the default animation speed to make it open really fast // If it's not fullscreen then lower the default animation speed to make it open really fast
var entryAnimationDuration = options.entryAnimationDuration || (options.size ? 200 : 300); var entryAnimationDuration = options.entryAnimationDuration || (options.size ? 200 : 300);

View file

@ -0,0 +1,55 @@
{
"ValueSpecialEpisodeName": "Especial - {0}",
"Share": "Compartir",
"ServerUpdateNeeded": "Este Servidor Emby necesita ser actualizado. Para descargar la ultima versi\u00f3n, por favor visite {0}",
"LiveTvGuideRequiresUnlock": "La Guia de TV en Vivo actualmente esta limitada a {0} canales. De clic en el bot\u00f3n Desbloquear para saber como desbloquear la experiencia completa.",
"AttributeNew": "Nuevo",
"AttributePremiere": "Fecha de Estreno",
"AttributeLive": "En Vivo",
"TrackCount": "{0} Pistas",
"ItemCount": "{0} \u00edtems",
"ValueSeriesYearToPresent": "{0}-Presente",
"ReleaseYearValue": "A\u00f1o de estreno: {0}",
"OriginalAirDateValue": "Fecha de transmisi\u00f3n original: {0}",
"EndsAtValue": "Termina a las {0}",
"OptionSundayShort": "Dom",
"OptionMondayShort": "Lun",
"OptionTuesdayShort": "Mar",
"OptionWednesdayShort": "Mie",
"OptionThursdayShort": "Jue",
"OptionFridayShort": "Vie",
"OptionSaturdayShort": "Sab",
"HeaderSelectDate": "Seleccionar fecha",
"ButtonOk": "Ok",
"ButtonCancel": "Cancelar",
"ButtonGotIt": "Hecho",
"RecordingScheduled": "Grabaci\u00f3n programada.",
"HeaderNewRecording": "Nueva Grabaci\u00f3n",
"Sunday": "Domingo",
"Monday": "Lunes",
"Tuesday": "Martes",
"Wednesday": "Mi\u00e9rcoles",
"Thursday": "Jueves",
"Friday": "Viernes",
"Saturday": "S\u00e1bado",
"Days": "D\u00edas",
"RecordSeries": "Grabar Series",
"LabelPrePaddingMinutes": "Minutos de protecci\u00f3n previos:",
"LabelPostPaddingMinutes": "Minutos de protecci\u00f3n posterior:",
"RecordOnAllChannels": "Grabar en todos los canales",
"RecordAnytime": "Grabar en cualquier momento",
"RecordOnlyNewEpisodes": "Grabar s\u00f3lo nuevos episodios",
"HeaderBecomeProjectSupporter": "Obtener Emby Premiere",
"HeaderEnjoyDayTrial": "Disfrute de una Prueba Gratuita por 14 D\u00edas",
"MessageActiveSubscriptionRequiredSeriesRecordings": "Se requiere de una suscripci\u00f3n de Emby Premiere para crear grabaciones automatizadas de series.",
"OptionConvertRecordingsToStreamingFormat": "Convertir autom\u00e1ticamente las grabaciones a un formato amigable para transmisi\u00f3n",
"OptionConvertRecordingsToStreamingFormatHelp": "Las grabaciones ser\u00e1n convertidas en tiempo real a MP4 para una f\u00e1cil reproducci\u00f3n en sus dispositivos.",
"FeatureRequiresEmbyPremiere": "Esta caracter\u00edstica requiere de una suscripci\u00f3n activa de Emby Premiere.",
"Record": "Grabar",
"Save": "Guardar",
"Edit": "Editar",
"Download": "Descargar",
"Advanced": "Avanzado",
"Refresh": "Actualizar",
"RefreshQueued": "Actualizaci\u00f3n programada"
}

View file

@ -0,0 +1,55 @@
{
"ValueSpecialEpisodeName": "Spesial - {0}",
"Share": "Del",
"ServerUpdateNeeded": "Denne Emby serveren trenger en oppdatering. For \u00e5 laste ned nyeste versjon, vennligst bes\u00f8k: {0}",
"LiveTvGuideRequiresUnlock": "Live TV Guide er p\u00e5 n\u00e5v\u00e6rende tidspunkter begrenset til {0} Kanaler. Trykk p\u00e5 l\u00e5s opp knappen for \u00e5 l\u00e6re hvordan f\u00e5 full opplevelse.",
"AttributeNew": "Ny",
"AttributePremiere": "Premiere",
"AttributeLive": "Direkte",
"TrackCount": "{0} spor",
"ItemCount": "{0} elementer",
"ValueSeriesYearToPresent": "{0}-N\u00e5v\u00e6rende",
"ReleaseYearValue": "Utgivelse \u00e5r: {0}",
"OriginalAirDateValue": "Original slippdato: {0}",
"EndsAtValue": "Ender p\u00e5 {0}",
"OptionSundayShort": "S\u00f8n",
"OptionMondayShort": "Man",
"OptionTuesdayShort": "Tir",
"OptionWednesdayShort": "Ons",
"OptionThursdayShort": "Tor",
"OptionFridayShort": "Fre",
"OptionSaturdayShort": "L\u00f8r",
"HeaderSelectDate": "Velg dato",
"ButtonOk": "Ok",
"ButtonCancel": "Avbryt",
"ButtonGotIt": "Skj\u00f8nner",
"RecordingScheduled": "Planlagte opptak.",
"HeaderNewRecording": "Tar opp n\u00e5",
"Sunday": "S\u00f8ndag",
"Monday": "Mandag",
"Tuesday": "Tirsdag",
"Wednesday": "Onsdag",
"Thursday": "Torsdag",
"Friday": "Fredag",
"Saturday": "L\u00f8rdag",
"Days": "Dager",
"RecordSeries": "Ta opp serien",
"LabelPrePaddingMinutes": "Pre-padding minutter:",
"LabelPostPaddingMinutes": "Post-padding minutter:",
"RecordOnAllChannels": "Ta opp fra alle kanaler",
"RecordAnytime": "Ta opp n\u00e5r som helst",
"RecordOnlyNewEpisodes": "Ta opp kun nye episoder",
"HeaderBecomeProjectSupporter": "Skaff Emby Premiere",
"HeaderEnjoyDayTrial": "Nyt en 14 dagers gratis pr\u00f8ve versjon",
"MessageActiveSubscriptionRequiredSeriesRecordings": "En aktiv Emby Premiere abonnement er n\u00f8dvendig for \u00e5 skape automatiserte serie innspillinger.",
"OptionConvertRecordingsToStreamingFormat": "Automatisk konvertere opptak til en str\u00f8mnings vennlig format",
"OptionConvertRecordingsToStreamingFormatHelp": "Innspillinger vil automatisk bli konvertert til MP4 for enkel avspilling p\u00e5 dine enheter.",
"FeatureRequiresEmbyPremiere": "Denne funksjonen krever et aktivt Emby Premiere abonnement.",
"Record": "Ta opp",
"Save": "Lagre",
"Edit": "Endre",
"Download": "Last ned",
"Advanced": "Avansert",
"Refresh": "Oppdater",
"RefreshQueued": "Oppdatering k\u00f8"
}

View file

@ -34,6 +34,6 @@
"commit": "11c987b2eb3c73b388a79fc8aaea8ca01624f514" "commit": "11c987b2eb3c73b388a79fc8aaea8ca01624f514"
}, },
"_source": "git://github.com/Polymer/polymer.git", "_source": "git://github.com/Polymer/polymer.git",
"_target": "^1.0.0", "_target": "^1.1.0",
"_originalSource": "Polymer/polymer" "_originalSource": "Polymer/polymer"
} }

View file

@ -123,7 +123,13 @@
html += '<form class="newCollectionForm" style="margin:auto;">'; html += '<form class="newCollectionForm" style="margin:auto;">';
html += '<div>';
html += Globalize.translate('CreateCollectionHelp');
html += '</div>';
html += '<div class="fldSelectCollection">'; html += '<div class="fldSelectCollection">';
html += '<br/>';
html += '<br/>';
html += '<label for="selectCollectionToAddTo" class="selectLabel">' + Globalize.translate('LabelSelectCollection') + '</label>'; html += '<label for="selectCollectionToAddTo" class="selectLabel">' + Globalize.translate('LabelSelectCollection') + '</label>';
html += '<select id="selectCollectionToAddTo" data-mini="true"></select>'; html += '<select id="selectCollectionToAddTo" data-mini="true"></select>';
html += '</div>'; html += '</div>';
@ -206,6 +212,9 @@
html += '<div class="dialogHeaderTitle">'; html += '<div class="dialogHeaderTitle">';
html += title; html += title;
html += '</div>'; html += '</div>';
html += '<a href="https://github.com/MediaBrowser/Wiki/wiki/Collections" target="_blank" tabindex="-1" class="clearLink" style="margin-left:auto;margin-right:.5em;display:inline-block;" title="' + Globalize.translate('ButtonHelp') + '"><paper-button class="accent" style="margin:0;font-weight:normal;font-size:13px;padding:.25em;display:flex;align-items:center;"><iron-icon icon="info"></iron-icon><span>' + Globalize.translate('ButtonHelp') + '</span></paper-button></a>';
html += '</div>'; html += '</div>';
html += getEditorHtml(); html += getEditorHtml();

View file

@ -1,4 +1,4 @@
<div id="dashboardHostingPage" data-role="page" class="page type-interior advancedConfigurationPage withTabs" data-helpurl="https://github.com/MediaBrowser/Wiki/wiki/Hosting%20Settings" data-require="scripts/dashboardhosting,paper-checkbox,paper-input,paper-button"> <div id="dashboardHostingPage" data-role="page" class="page type-interior advancedConfigurationPage withTabs" data-helpurl="https://github.com/MediaBrowser/Wiki/wiki/Hosting%20Settings">
<div data-role="content"> <div data-role="content">
<div class="content-primary"> <div class="content-primary">
@ -14,10 +14,6 @@
<paper-input type="number" label="${LabelPublicHttpPort}" id="txtPublicPort" pattern="[0-9]*" required="required" min="1"></paper-input> <paper-input type="number" label="${LabelPublicHttpPort}" id="txtPublicPort" pattern="[0-9]*" required="required" min="1"></paper-input>
<div class="fieldDescription">${LabelPublicHttpPortHelp}</div> <div class="fieldDescription">${LabelPublicHttpPortHelp}</div>
</li> </li>
<li>
<paper-input id="txtDdns" type="text" label="${LabelExternalDDNS}"></paper-input>
<div class="fieldDescription">${LabelExternalDDNSHelp}</div>
</li>
<li> <li>
<paper-input type="number" id="txtHttpsPort" pattern="[0-9]*" required="required" min="1" label="${LabelHttpsPort}"></paper-input> <paper-input type="number" id="txtHttpsPort" pattern="[0-9]*" required="required" min="1" label="${LabelHttpsPort}"></paper-input>
<div class="fieldDescription">${LabelHttpsPortHelp}</div> <div class="fieldDescription">${LabelHttpsPortHelp}</div>
@ -31,6 +27,10 @@
<button type="button" is="paper-icon-button-light" id="btnSelectCertPath" title="${ButtonSelectDirectory}"><iron-icon icon="search"></iron-icon></button> <button type="button" is="paper-icon-button-light" id="btnSelectCertPath" title="${ButtonSelectDirectory}"><iron-icon icon="search"></iron-icon></button>
<div class="fieldDescription">${LabelCustomCertificatePathHelp}</div> <div class="fieldDescription">${LabelCustomCertificatePathHelp}</div>
</li> </li>
<li>
<paper-input id="txtDdns" type="text" label="${LabelExternalDDNS}"></paper-input>
<div class="fieldDescription">${LabelExternalDDNSHelp}</div>
</li>
<li> <li>
<paper-checkbox id="chkEnableHttps">${LabelEnableHttps}</paper-checkbox> <paper-checkbox id="chkEnableHttps">${LabelEnableHttps}</paper-checkbox>
<div class="fieldDescription paperCheckboxFieldDescription">${LabelEnableHttpsHelp}</div> <div class="fieldDescription paperCheckboxFieldDescription">${LabelEnableHttpsHelp}</div>

View file

@ -61,13 +61,13 @@
<div class="listTopPaging"> <div class="listTopPaging">
&nbsp; &nbsp;
</div> </div>
<button type="button" is="paper-icon-button-light" class="btnNewCollection"><iron-icon icon="add"></iron-icon></button>
</div> </div>
<div class="itemsContainer" style="text-align:center;"></div> <div class="itemsContainer" style="text-align:center;"></div>
<div class="noItemsMessage" style="display: none; text-align: center;"> <div class="noItemsMessage" style="display: none; text-align: center;">
<p>${MessageNoCollectionsAvailable}</p> <p>${MessageNoCollectionsAvailable}</p>
</div> </div>
<paper-fab class="btnNewCollection bottomFab" icon="add" style="position:fixed;right:20px;background-color:#db4437;"></paper-fab>
</div> </div>
<div class="pageTabContent ehsContent" id="genresTab" data-index="4"> <div class="pageTabContent ehsContent" id="genresTab" data-index="4">
<div class="viewSettings"> <div class="viewSettings">

View file

@ -1,22 +1,5 @@
define(['jQuery'], function ($) { define(['jQuery'], function ($) {
function loadPage(page, config) {
$('#txtPortNumber', page).val(config.HttpServerPortNumber);
$('#txtPublicPort', page).val(config.PublicPort);
$('#txtPublicHttpsPort', page).val(config.PublicHttpsPort);
$('#chkEnableHttps', page).checked(config.EnableHttps);
$('#txtHttpsPort', page).val(config.HttpsPortNumber);
$('#txtDdns', page).val(config.WanDdns || '');
$('#txtCertificatePath', page).val(config.CertificatePath || '');
$('#chkEnableUpnp', page).checked(config.EnableUPnP);
Dashboard.hideLoadingMsg();
}
function onSubmit() { function onSubmit() {
Dashboard.showLoadingMsg(); Dashboard.showLoadingMsg();
@ -52,24 +35,43 @@
}]; }];
} }
$(document).on('pageshow', "#dashboardHostingPage", function () { return function (view, params) {
LibraryMenu.setTabs('adminadvanced', 0, getTabs); var self = this;
Dashboard.showLoadingMsg();
var page = this; function loadPage(page, config) {
ApiClient.getServerConfiguration().then(function (config) { $('#txtPortNumber', page).val(config.HttpServerPortNumber);
$('#txtPublicPort', page).val(config.PublicPort);
$('#txtPublicHttpsPort', page).val(config.PublicHttpsPort);
loadPage(page, config); var chkEnableHttps = page.querySelector('#chkEnableHttps');
chkEnableHttps.checked = config.EnableHttps;
}); $('#txtHttpsPort', page).val(config.HttpsPortNumber);
}).on('pageinit', "#dashboardHostingPage", function () { $('#txtDdns', page).val(config.WanDdns || '');
var page = this; var txtCertificatePath = page.querySelector('#txtCertificatePath');
txtCertificatePath.value = config.CertificatePath || '';
$('#btnSelectCertPath', page).on("click.selectDirectory", function () { $('#chkEnableUpnp', page).checked(config.EnableUPnP);
onCertPathChange.call(txtCertificatePath);
Dashboard.hideLoadingMsg();
}
function onCertPathChange() {
if (this.value) {
view.querySelector('#txtDdns').setAttribute('required', 'required');
} else {
view.querySelector('#txtDdns').removeAttribute('required');
}
}
$('#btnSelectCertPath', view).on("click.selectDirectory", function () {
require(['directorybrowser'], function (directoryBrowser) { require(['directorybrowser'], function (directoryBrowser) {
@ -83,7 +85,7 @@
callback: function (path) { callback: function (path) {
if (path) { if (path) {
$('#txtCertificatePath', page).val(path); $('#txtCertificatePath', view).val(path);
} }
picker.close(); picker.close();
}, },
@ -94,6 +96,18 @@
}); });
$('.dashboardHostingForm').off('submit', onSubmit).on('submit', onSubmit); $('.dashboardHostingForm').off('submit', onSubmit).on('submit', onSubmit);
});
view.querySelector('#txtCertificatePath').addEventListener('change', onCertPathChange);
view.addEventListener('viewshow', function (e) {
LibraryMenu.setTabs('adminadvanced', 0, getTabs);
Dashboard.showLoadingMsg();
ApiClient.getServerConfiguration().then(function (config) {
loadPage(view, config);
});
});
};
}); });

View file

@ -1,4 +1,4 @@
define(['layoutManager', 'datetime', 'jQuery', 'mediaInfo', 'scrollStyles'], function (layoutManager, datetime, $, mediaInfo) { define(['layoutManager', 'datetime', 'jQuery', 'mediaInfo', 'backdrop', 'scrollStyles'], function (layoutManager, datetime, $, mediaInfo, backdrop) {
var currentItem; var currentItem;
@ -75,14 +75,13 @@
// For these types, make the backdrop a little smaller so that the items are more quickly accessible // For these types, make the backdrop a little smaller so that the items are more quickly accessible
if (item.Type == 'MusicArtist' || item.Type == "MusicAlbum" || item.Type == "Playlist" || item.Type == "BoxSet" || item.MediaType == "Audio" || !layoutManager.mobile) { if (item.Type == 'MusicArtist' || item.Type == "MusicAlbum" || item.Type == "Playlist" || item.Type == "BoxSet" || item.MediaType == "Audio" || !layoutManager.mobile) {
$('#itemBackdrop', page).addClass('noBackdrop').css('background-image', 'none'); $('#itemBackdrop', page).addClass('noBackdrop').css('background-image', 'none');
require(['backdrop'], function (backdrop) { backdrop.setBackdrops([item]);
backdrop.setBackdrops([item]);
});
} }
else { else {
//$('#itemBackdrop', page).addClass('noBackdrop').css('background-image', 'none'); //$('#itemBackdrop', page).addClass('noBackdrop').css('background-image', 'none');
//Backdrops.setBackdrops(page, [item]); //Backdrops.setBackdrops(page, [item]);
hasBackdrop = LibraryBrowser.renderDetailPageBackdrop(page, item); hasBackdrop = LibraryBrowser.renderDetailPageBackdrop(page, item);
backdrop.clear();
} }
var transparentHeader = hasBackdrop && page.classList.contains('noSecondaryNavPage'); var transparentHeader = hasBackdrop && page.classList.contains('noSecondaryNavPage');
@ -475,7 +474,7 @@
}); });
}); });
$('.itemGenres', page).each(function() { $('.itemGenres', page).each(function () {
LibraryBrowser.renderGenres(this, item, null, isStatic); LibraryBrowser.renderGenres(this, item, null, isStatic);
}); });
LibraryBrowser.renderStudios($('.itemStudios', page), item, isStatic); LibraryBrowser.renderStudios($('.itemStudios', page), item, isStatic);
@ -1098,10 +1097,13 @@
html += '<div class="detailSection">'; html += '<div class="detailSection">';
html += '<div style="display:flex;align-items:center;">';
html += '<h1>'; html += '<h1>';
html += '<span>' + type.name + '</span>'; html += '<span>' + type.name + '</span>';
html += '</h1>'; html += '</h1>';
html += '<button class="btnAddToCollection" type="button" is="paper-icon-button-light" style="margin-left:1em;"><iron-icon icon="add"></iron-icon></button>';
html += '</div>';
html += '<div class="detailSectionContent itemsContainer">'; html += '<div class="detailSectionContent itemsContainer">';
@ -1131,6 +1133,15 @@
removeFromCollection(page, parentItem, [itemId], user, context); removeFromCollection(page, parentItem, [itemId], user, context);
}); });
collectionItems.querySelector('.btnAddToCollection').addEventListener('click', function () {
require(['alert'], function (alert) {
alert({
text: Globalize.translate('AddItemToCollectionHelp'),
html: Globalize.translate('AddItemToCollectionHelp') + '<br/><br/><a target="_blank" href="https://github.com/MediaBrowser/Wiki/wiki/Collections">' + Globalize.translate('ButtonLearnMore') + '</a>'
});
});
});
} }
function removeFromCollection(page, parentItem, itemIds, user, context) { function removeFromCollection(page, parentItem, itemIds, user, context) {

View file

@ -1066,7 +1066,8 @@
} }
if (item.CollectionType == 'games') { if (item.CollectionType == 'games') {
return 'gamesrecommended.html?topParentId=' + item.Id; return id ? "itemlist.html?parentId=" + id : "#";
//return 'gamesrecommended.html?topParentId=' + item.Id;
} }
if (item.CollectionType == 'playlists') { if (item.CollectionType == 'playlists') {
return 'playlists.html?topParentId=' + item.Id; return 'playlists.html?topParentId=' + item.Id;

View file

@ -743,7 +743,7 @@
var helpUrl = page.getAttribute('data-helpurl'); var helpUrl = page.getAttribute('data-helpurl');
if (helpUrl) { if (helpUrl) {
html += '<a href="' + helpUrl + '" target="_blank" class="clearLink" style="margin-left:2em;" title="' + Globalize.translate('ButtonHelp') + '"><paper-button class="accent" style="margin:0;font-weight:normal;font-size:13px;padding:.25em;display:flex;align-items:center;"><iron-icon icon="info"></iron-icon><span>Help</span></paper-button></a>'; html += '<a href="' + helpUrl + '" target="_blank" class="clearLink" style="margin-left:2em;" title="' + Globalize.translate('ButtonHelp') + '"><paper-button class="accent" style="margin:0;font-weight:normal;font-size:13px;padding:.25em;display:flex;align-items:center;"><iron-icon icon="info"></iron-icon><span>' + Globalize.translate('ButtonHelp') + '</span></paper-button></a>';
} }
} }
} }

View file

@ -8,14 +8,6 @@
return enableScrollX() ? 'overflowPortrait' : 'portrait'; return enableScrollX() ? 'overflowPortrait' : 'portrait';
} }
function getThumbShape() {
return enableScrollX() ? 'overflowBackdrop' : 'backdrop';
}
function getSquareShape() {
return enableScrollX() ? 'overflowSquare' : 'square';
}
function getLimit() { function getLimit() {
return enableScrollX() ? 12 : 8; return enableScrollX() ? 12 : 8;
@ -109,7 +101,7 @@
var html = libraryBrowser.getPosterViewHtml({ var html = libraryBrowser.getPosterViewHtml({
items: items, items: items,
shape: shape || (enableScrollX() ? getSquareShape() : 'auto'), shape: shape || (enableScrollX() ? 'autooverflow' : 'auto'),
showTitle: true, showTitle: true,
centerText: true, centerText: true,
coverImage: true, coverImage: true,

View file

@ -301,7 +301,7 @@
baseUrl += '?topParentId=' + topParentId; baseUrl += '?topParentId=' + topParentId;
} }
libraryBrowser.configurePaperLibraryTabs(view, mdlTabs, view.querySelectorAll('.pageTabContent'), [0, 4, 5]); libraryBrowser.configurePaperLibraryTabs(view, mdlTabs, view.querySelectorAll('.pageTabContent'), [0, 3, 4, 5]);
var tabControllers = []; var tabControllers = [];
var renderedTabs = []; var renderedTabs = [];

View file

@ -2243,7 +2243,7 @@ var AppInfo = {};
var baseUrl = 'bower_components/emby-webcomponents/strings/'; var baseUrl = 'bower_components/emby-webcomponents/strings/';
var languages = ['da', 'en-US', 'kk', 'nl', 'ru']; var languages = ['da', 'en-US', 'es-MX', 'kk', 'nb', 'nl', 'ru'];
var translations = languages.map(function (i) { var translations = languages.map(function (i) {
return { return {
@ -2404,9 +2404,10 @@ var AppInfo = {};
defineRoute({ defineRoute({
path: '/dashboardhosting.html', path: '/dashboardhosting.html',
dependencies: [], dependencies: ['paper-checkbox', 'paper-input', 'paper-button'],
autoFocus: false, autoFocus: false,
roles: 'admin' roles: 'admin',
controller: 'scripts/dashboardhosting'
}); });
defineRoute({ defineRoute({
@ -2698,7 +2699,7 @@ var AppInfo = {};
defineRoute({ defineRoute({
path: '/movies.html', path: '/movies.html',
dependencies: ['paper-checkbox', 'paper-fab', 'scripts/alphapicker', 'paper-button'], dependencies: ['paper-checkbox', 'scripts/alphapicker', 'paper-button'],
autoFocus: false, autoFocus: false,
controller: 'scripts/moviesrecommended', controller: 'scripts/moviesrecommended',
transition: 'fade' transition: 'fade'

View file

@ -561,8 +561,8 @@
"LabelWebSocketPortNumber": "Web socket port number:", "LabelWebSocketPortNumber": "Web socket port number:",
"LabelEnableAutomaticPortMap": "Enable automatic port mapping", "LabelEnableAutomaticPortMap": "Enable automatic port mapping",
"LabelEnableAutomaticPortMapHelp": "Attempt to automatically map the public port to the local port via UPnP. This may not work with some router models.", "LabelEnableAutomaticPortMapHelp": "Attempt to automatically map the public port to the local port via UPnP. This may not work with some router models.",
"LabelExternalDDNS": "External WAN Address:", "LabelExternalDDNS": "External domain:",
"LabelExternalDDNSHelp": "If you have a dynamic DNS enter it here. Emby apps will use it when connecting remotely. Leave empty for automatic detection.", "LabelExternalDDNSHelp": "If you have a dynamic DNS enter it here. Emby apps will use it when connecting remotely. This field is required when used with a custom https certificate.",
"TabResume": "Resume", "TabResume": "Resume",
"TabWeather": "Weather", "TabWeather": "Weather",
"TitleAppSettings": "App Settings", "TitleAppSettings": "App Settings",
@ -2351,5 +2351,7 @@
"LabelOriginalTitle": "Original title:", "LabelOriginalTitle": "Original title:",
"LabelSortTitle": "Sort title:", "LabelSortTitle": "Sort title:",
"OptionConvertRecordingPreserveAudio": "Preserve original audio when converting recordings", "OptionConvertRecordingPreserveAudio": "Preserve original audio when converting recordings",
"OptionConvertRecordingPreserveAudioHelp": "This will provide better audio but may require transcoding during playback on some devices." "OptionConvertRecordingPreserveAudioHelp": "This will provide better audio but may require transcoding during playback on some devices.",
"CreateCollectionHelp": "Collections allow you to create personalized groupings of movies and other library content.",
"AddItemToCollectionHelp": "Add items to collections by searching for them and using their right-click or tap menus to add them to a collection."
} }