mirror of
https://github.com/jellyfin/jellyfin-web.git
synced 2024-11-17 19:08:18 -07:00
begin rework of image editor
This commit is contained in:
parent
7ea4d0b4c9
commit
5bccc1840e
@ -1,7 +1,6 @@
|
||||
(function ($, document, window, FileReader, escape) {
|
||||
|
||||
var currentItem;
|
||||
var currentFile;
|
||||
|
||||
var browsableImagePageSize = 10;
|
||||
var browsableImageStartIndex = 0;
|
||||
@ -221,7 +220,7 @@
|
||||
return html;
|
||||
}
|
||||
|
||||
function reload(page) {
|
||||
function reload(page, item) {
|
||||
|
||||
Dashboard.showLoadingMsg();
|
||||
|
||||
@ -229,27 +228,34 @@
|
||||
browsableImageType = 'Primary';
|
||||
selectedProvider = null;
|
||||
|
||||
MetadataEditor.getItemPromise().done(function (item) {
|
||||
if (item) {
|
||||
reloadItem(page, item);
|
||||
}
|
||||
else {
|
||||
ApiClient.getItem(Dashboard.getCurrentUserId(), currentItem.Id).done(function (item) {
|
||||
reloadItem(page, item);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
currentItem = item;
|
||||
function reloadItem(page, item) {
|
||||
|
||||
LibraryBrowser.renderName(item, $('.itemName', page), true);
|
||||
currentItem = item;
|
||||
|
||||
ApiClient.getRemoteImageProviders(getBaseRemoteOptions()).done(function (providers) {
|
||||
ApiClient.getRemoteImageProviders(getBaseRemoteOptions()).done(function (providers) {
|
||||
|
||||
if (providers.length) {
|
||||
$('.lnkBrowseAllImages', page).removeClass('hide');
|
||||
} else {
|
||||
$('.lnkBrowseAllImages', page).addClass('hide');
|
||||
}
|
||||
if (providers.length) {
|
||||
$('.lnkBrowseAllImages', page).removeClass('hide');
|
||||
} else {
|
||||
$('.lnkBrowseAllImages', page).addClass('hide');
|
||||
}
|
||||
|
||||
ApiClient.getItemImageInfos(currentItem.Id).done(function (imageInfos) {
|
||||
ApiClient.getItemImageInfos(currentItem.Id).done(function (imageInfos) {
|
||||
|
||||
renderStandardImages(page, item, imageInfos, providers);
|
||||
renderBackdrops(page, item, imageInfos, providers);
|
||||
renderScreenshots(page, item, imageInfos, providers);
|
||||
Dashboard.hideLoadingMsg();
|
||||
});
|
||||
renderStandardImages(page, item, imageInfos, providers);
|
||||
renderBackdrops(page, item, imageInfos, providers);
|
||||
renderScreenshots(page, item, imageInfos, providers);
|
||||
Dashboard.hideLoadingMsg();
|
||||
});
|
||||
});
|
||||
}
|
||||
@ -280,7 +286,7 @@
|
||||
html += '<p> </p>';
|
||||
}
|
||||
|
||||
html += '<p>';
|
||||
html += '<div>';
|
||||
|
||||
if (image.ImageType == "Backdrop" || image.ImageType == "Screenshot") {
|
||||
|
||||
@ -303,7 +309,7 @@
|
||||
|
||||
html += '<paper-icon-button icon="delete" onclick="EditItemImagesPage.deleteImage(\'' + image.ImageType + '\', ' + (image.ImageIndex != null ? image.ImageIndex : "null") + ');" title="' + Globalize.translate('Delete') + '"></paper-icon-button>';
|
||||
|
||||
html += '</p>';
|
||||
html += '</div>';
|
||||
|
||||
html += '</div>';
|
||||
|
||||
@ -319,12 +325,7 @@
|
||||
return i.ImageType != "Screenshot" && i.ImageType != "Backdrop" && i.ImageType != "Chapter";
|
||||
});
|
||||
|
||||
if (images.length) {
|
||||
$('#imagesContainer', page).show();
|
||||
renderImages(page, item, images, imageProviders, $('#images', page));
|
||||
} else {
|
||||
$('#imagesContainer', page).hide();
|
||||
}
|
||||
renderImages(page, item, images, imageProviders, $('#images', page));
|
||||
}
|
||||
|
||||
function renderBackdrops(page, item, imageInfos, imageProviders) {
|
||||
@ -361,95 +362,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
function onFileReaderError(evt) {
|
||||
|
||||
Dashboard.hideLoadingMsg();
|
||||
|
||||
switch (evt.target.error.code) {
|
||||
case evt.target.error.NOT_FOUND_ERR:
|
||||
Dashboard.showError(Globalize.translate('MessageFileNotFound'));
|
||||
break;
|
||||
case evt.target.error.ABORT_ERR:
|
||||
break; // noop
|
||||
default:
|
||||
Dashboard.showError(Globalize.translate('MessageFileReadError'));
|
||||
break;
|
||||
};
|
||||
}
|
||||
|
||||
function setFiles(page, files) {
|
||||
|
||||
var file = files[0];
|
||||
|
||||
if (!file || !file.type.match('image.*')) {
|
||||
$('#imageOutput', page).html('');
|
||||
$('#fldUpload', page).hide();
|
||||
currentFile = null;
|
||||
return;
|
||||
}
|
||||
|
||||
currentFile = file;
|
||||
|
||||
var reader = new FileReader();
|
||||
|
||||
reader.onerror = onFileReaderError;
|
||||
reader.onloadstart = function () {
|
||||
$('#fldUpload', page).hide();
|
||||
};
|
||||
reader.onabort = function () {
|
||||
Dashboard.hideLoadingMsg();
|
||||
Logger.log('File read cancelled');
|
||||
};
|
||||
|
||||
// Closure to capture the file information.
|
||||
reader.onload = (function (theFile) {
|
||||
return function (e) {
|
||||
|
||||
// Render thumbnail.
|
||||
var html = ['<img style="max-width:300px;max-height:100px;" src="', e.target.result, '" title="', escape(theFile.name), '"/>'].join('');
|
||||
|
||||
$('#imageOutput', page).html(html);
|
||||
$('#fldUpload', page).show();
|
||||
};
|
||||
})(file);
|
||||
|
||||
// Read in the image file as a data URL.
|
||||
reader.readAsDataURL(file);
|
||||
}
|
||||
|
||||
function processImageChangeResult(page) {
|
||||
|
||||
reload(page);
|
||||
}
|
||||
|
||||
function onSubmit() {
|
||||
var file = currentFile;
|
||||
|
||||
if (!file) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (file.type != "image/png" && file.type != "image/jpeg" && file.type != "image/jpeg") {
|
||||
return false;
|
||||
}
|
||||
|
||||
Dashboard.showLoadingMsg();
|
||||
|
||||
var page = $.mobile.activePage;
|
||||
|
||||
var imageType = $('#selectImageType', page).val();
|
||||
|
||||
ApiClient.uploadItemImage(currentItem.Id, imageType, file).done(function () {
|
||||
|
||||
$('#uploadImage', page).val('').trigger('change');
|
||||
$('#popupUpload', page).popup("close");
|
||||
processImageChangeResult(page);
|
||||
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
function editItemImages() {
|
||||
|
||||
var self = this;
|
||||
@ -463,14 +375,12 @@
|
||||
if (result) {
|
||||
ApiClient.deleteItemImage(currentItem.Id, type, index).done(function () {
|
||||
|
||||
processImageChangeResult(page);
|
||||
reload(page);
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
|
||||
};
|
||||
|
||||
self.moveImage = function (type, index, newIndex) {
|
||||
@ -479,7 +389,7 @@
|
||||
|
||||
ApiClient.updateItemImageIndex(currentItem.Id, type, index, newIndex).done(function () {
|
||||
|
||||
processImageChangeResult(page);
|
||||
reload(page);
|
||||
|
||||
});
|
||||
|
||||
@ -500,9 +410,7 @@
|
||||
|
||||
window.EditItemImagesPage = new editItemImages();
|
||||
|
||||
$(document).on('pageinit', "#editItemMetadataPage", function () {
|
||||
|
||||
var page = this;
|
||||
function initEditor(page) {
|
||||
|
||||
$('#selectBrowsableImageType', page).on('change', function () {
|
||||
|
||||
@ -528,11 +436,17 @@
|
||||
reloadBrowsableImages(page);
|
||||
});
|
||||
|
||||
$('.uploadItemImageForm').off('submit', onSubmit).on('submit', onSubmit);
|
||||
|
||||
$('.btnOpenUploadMenu', page).on('click', function () {
|
||||
|
||||
$('#popupUpload', page).popup('open');
|
||||
require(['components/imageuploader/imageuploader'], function () {
|
||||
|
||||
ImageUploader.show(currentItem.Id).done(function (hasChanges) {
|
||||
|
||||
if (hasChanges) {
|
||||
reload(page);
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
$('.btnBrowseAllImages', page).on('click', function () {
|
||||
@ -542,36 +456,80 @@
|
||||
$('.popupDownload', page).popup('open');
|
||||
reloadBrowsableImages(page);
|
||||
});
|
||||
}
|
||||
|
||||
$('#uploadImage', page).on("change", function () {
|
||||
setFiles(page, this.files);
|
||||
function showEditor(itemId) {
|
||||
|
||||
Dashboard.showLoadingMsg();
|
||||
|
||||
ApiClient.ajax({
|
||||
|
||||
type: 'GET',
|
||||
url: 'components/imageeditor/imageeditor.template.html'
|
||||
|
||||
}).done(function (template) {
|
||||
|
||||
ApiClient.getItem(Dashboard.getCurrentUserId(), itemId).done(function (item) {
|
||||
|
||||
var dlg = document.createElement('paper-dialog');
|
||||
|
||||
dlg.setAttribute('with-backdrop', 'with-backdrop');
|
||||
dlg.setAttribute('role', 'alertdialog');
|
||||
dlg.entryAnimation = 'scale-up-animation';
|
||||
dlg.exitAnimation = 'fade-out-animation';
|
||||
dlg.classList.add('fullscreen-editor-paper-dialog');
|
||||
dlg.classList.add('ui-body-b');
|
||||
|
||||
var html = '';
|
||||
html += '<h2 class="dialogHeader">';
|
||||
html += '<paper-fab icon="arrow-back" class="mini btnCloseDialog"></paper-fab>';
|
||||
html += '<div style="display:inline-block;margin-left:.6em;vertical-align:middle;">' + item.Name + '</div>';
|
||||
html += '</h2>';
|
||||
|
||||
html += '<div class="editorContent">';
|
||||
html += Globalize.translateDocument(template);
|
||||
html += '</div>';
|
||||
|
||||
dlg.innerHTML = html;
|
||||
document.body.appendChild(dlg);
|
||||
|
||||
initEditor(dlg);
|
||||
|
||||
// Has to be assigned a z-index after the call to .open()
|
||||
$(dlg).on('iron-overlay-closed', onDialogClosed);
|
||||
|
||||
document.body.classList.add('bodyWithPopupOpen');
|
||||
PaperDialogHelper.openWithHash(dlg, 'imageeditor');
|
||||
|
||||
var editorContent = dlg.querySelector('.editorContent');
|
||||
reload(editorContent, item);
|
||||
|
||||
$('.btnCloseDialog', dlg).on('click', closeDialog);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
$("#imageDropZone", page).on('dragover', function (e) {
|
||||
function closeDialog() {
|
||||
|
||||
e.preventDefault();
|
||||
history.back();
|
||||
}
|
||||
|
||||
e.originalEvent.dataTransfer.dropEffect = 'Copy';
|
||||
function onDialogClosed() {
|
||||
|
||||
return false;
|
||||
document.body.classList.remove('bodyWithPopupOpen');
|
||||
$(this).remove();
|
||||
Dashboard.hideLoadingMsg();
|
||||
}
|
||||
|
||||
}).on('drop', function (e) {
|
||||
window.ImageEditor = {
|
||||
show: function (itemId) {
|
||||
|
||||
e.preventDefault();
|
||||
require(['components/paperdialoghelper', 'jqmpopup'], function () {
|
||||
|
||||
setFiles(page, e.originalEvent.dataTransfer.files);
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
$(page.querySelector('paper-tabs')).on('tabchange', function () {
|
||||
|
||||
if (parseInt(this.selected) == 1) {
|
||||
var tabContent = page.querySelector('.imageEditorTab');
|
||||
|
||||
reload(tabContent);
|
||||
}
|
||||
});
|
||||
});
|
||||
Dashboard.importCss('css/metadataeditor.css');
|
||||
showEditor(itemId);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
})(jQuery, document, window, window.FileReader, escape);
|
@ -0,0 +1,74 @@
|
||||
<div id="imagesContainer">
|
||||
<div>
|
||||
<h1 style="display:inline-block;vertical-align:middle;">${HeaderImages}</h1>
|
||||
<paper-fab icon="search" class="btnBrowseAllImages mini subdued" style="vertical-align:middle;margin-left:1em;"></paper-fab>
|
||||
<paper-fab icon="add" class="btnOpenUploadMenu mini subdued" style="vertical-align:middle;margin-left:.25em;"></paper-fab>
|
||||
</div>
|
||||
<div id="images">
|
||||
</div>
|
||||
<br />
|
||||
</div>
|
||||
|
||||
<div id="backdropsContainer" style="display: none;">
|
||||
<div>
|
||||
<h1 style="display:inline-block;vertical-align:middle;">${HeaderBackdrops}</h1>
|
||||
<paper-fab icon="search" class="btnBrowseAllImages mini subdued" style="vertical-align:middle;margin-left:1em;"></paper-fab>
|
||||
<paper-fab icon="add" class="btnOpenUploadMenu mini subdued" style="vertical-align:middle;margin-left:.25em;"></paper-fab>
|
||||
</div>
|
||||
<div id="backdrops">
|
||||
</div>
|
||||
<br />
|
||||
</div>
|
||||
|
||||
<div id="screenshotsContainer" style="display: none;">
|
||||
<h1>${Screenshots}</h1>
|
||||
<div id="screenshots">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div data-role="popup" class="popup popupDownload" data-theme="a">
|
||||
|
||||
<div class="ui-bar-a" style="text-align: center; padding: 0 20px;">
|
||||
<h3>${HeaderBrowseOnlineImages}</h3>
|
||||
</div>
|
||||
|
||||
<div data-role="content">
|
||||
|
||||
<div style="text-align: center;">
|
||||
<div style="margin: 0; display: inline-block;">
|
||||
<label for="selectImageProvider">${LabelSource}</label>
|
||||
</div>
|
||||
<div style="margin: 0; display: inline-block;">
|
||||
<select id="selectImageProvider" name="selectImageProvider" data-mini="true" data-inline="true">
|
||||
<option value="">${OptionAll}</option>
|
||||
</select>
|
||||
</div>
|
||||
<div style="margin: 0; display: inline-block;">
|
||||
<label for="selectBrowsableImageType">${LabelImage}</label>
|
||||
</div>
|
||||
<div style="margin: 0; display: inline-block;">
|
||||
<select id="selectBrowsableImageType" name="selectBrowsableImageType" data-mini="true" data-inline="true">
|
||||
<option value="Primary">${OptionPrimary}</option>
|
||||
<option value="Art">${OptionArt}</option>
|
||||
<option value="Backdrop">${OptionBackdrop}</option>
|
||||
<option value="Banner">${OptionBanner}</option>
|
||||
<option value="Box">${OptionBox}</option>
|
||||
<option value="BoxRear">${OptionBoxRear}</option>
|
||||
<option value="Disc">${OptionDisc}</option>
|
||||
<option value="Icon">${OptionIcon}</option>
|
||||
<option value="Logo">${OptionLogo}</option>
|
||||
<option value="Menu">${OptionMenu}</option>
|
||||
<option value="Screenshot">${OptionScreenshot}</option>
|
||||
<option value="Thumb">${OptionThumb}</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="availableImagesPaging" style="margin: 0; display: inline-block;"></div>
|
||||
<div style="margin: 0; display: inline-block; vertical-align: middle; margin-left: 10px;">
|
||||
<label for="chkAllLanguages">${LabelAllLanguages}</label>
|
||||
<input type="checkbox" id="chkAllLanguages" data-mini="true" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="availableImagesList"></div>
|
||||
</div>
|
||||
</div>
|
200
dashboard-ui/components/imageuploader/imageuploader.js
Normal file
200
dashboard-ui/components/imageuploader/imageuploader.js
Normal file
@ -0,0 +1,200 @@
|
||||
(function ($, window, document) {
|
||||
|
||||
var currentItemId;
|
||||
var currentFile;
|
||||
var currentDeferred;
|
||||
var hasChanges = false;
|
||||
|
||||
function onFileReaderError(evt) {
|
||||
|
||||
Dashboard.hideLoadingMsg();
|
||||
|
||||
switch (evt.target.error.code) {
|
||||
case evt.target.error.NOT_FOUND_ERR:
|
||||
Dashboard.showError(Globalize.translate('MessageFileNotFound'));
|
||||
break;
|
||||
case evt.target.error.ABORT_ERR:
|
||||
break; // noop
|
||||
default:
|
||||
Dashboard.showError(Globalize.translate('MessageFileReadError'));
|
||||
break;
|
||||
};
|
||||
}
|
||||
|
||||
function setFiles(page, files) {
|
||||
|
||||
var file = files[0];
|
||||
|
||||
if (!file || !file.type.match('image.*')) {
|
||||
$('#imageOutput', page).html('');
|
||||
$('#fldUpload', page).hide();
|
||||
currentFile = null;
|
||||
return;
|
||||
}
|
||||
|
||||
currentFile = file;
|
||||
|
||||
var reader = new FileReader();
|
||||
|
||||
reader.onerror = onFileReaderError;
|
||||
reader.onloadstart = function () {
|
||||
$('#fldUpload', page).hide();
|
||||
};
|
||||
reader.onabort = function () {
|
||||
Dashboard.hideLoadingMsg();
|
||||
Logger.log('File read cancelled');
|
||||
};
|
||||
|
||||
// Closure to capture the file information.
|
||||
reader.onload = (function (theFile) {
|
||||
return function (e) {
|
||||
|
||||
// Render thumbnail.
|
||||
var html = ['<img style="max-width:300px;max-height:100px;" src="', e.target.result, '" title="', escape(theFile.name), '"/>'].join('');
|
||||
|
||||
$('#imageOutput', page).html(html);
|
||||
$('#fldUpload', page).show();
|
||||
};
|
||||
})(file);
|
||||
|
||||
// Read in the image file as a data URL.
|
||||
reader.readAsDataURL(file);
|
||||
}
|
||||
|
||||
function processImageChangeResult(page) {
|
||||
|
||||
hasChanges = true;
|
||||
history.back();
|
||||
}
|
||||
|
||||
function onSubmit() {
|
||||
|
||||
var file = currentFile;
|
||||
|
||||
if (!file) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (file.type != "image/png" && file.type != "image/jpeg" && file.type != "image/jpeg") {
|
||||
return false;
|
||||
}
|
||||
|
||||
Dashboard.showLoadingMsg();
|
||||
|
||||
var page = $(this).parents('paper-dialog');
|
||||
|
||||
var imageType = $('#selectImageType', page).val();
|
||||
|
||||
ApiClient.uploadItemImage(currentItemId, imageType, file).done(function () {
|
||||
|
||||
$('#uploadImage', page).val('').trigger('change');
|
||||
$('#popupUpload', page).popup("close");
|
||||
Dashboard.hideLoadingMsg();
|
||||
processImageChangeResult(page);
|
||||
});
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
function initEditor(page) {
|
||||
|
||||
$('form', page).off('submit', onSubmit).on('submit', onSubmit);
|
||||
|
||||
$('#uploadImage', page).on("change", function () {
|
||||
setFiles(page, this.files);
|
||||
});
|
||||
|
||||
$("#imageDropZone", page).on('dragover', function (e) {
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
e.originalEvent.dataTransfer.dropEffect = 'Copy';
|
||||
|
||||
return false;
|
||||
|
||||
}).on('drop', function (e) {
|
||||
|
||||
e.preventDefault();
|
||||
|
||||
setFiles(page, e.originalEvent.dataTransfer.files);
|
||||
|
||||
return false;
|
||||
});
|
||||
}
|
||||
|
||||
function showEditor(itemId) {
|
||||
|
||||
ApiClient.ajax({
|
||||
|
||||
type: 'GET',
|
||||
url: 'components/imageuploader/imageuploader.template.html'
|
||||
|
||||
}).done(function (template) {
|
||||
|
||||
currentItemId = itemId;
|
||||
|
||||
var dlg = document.createElement('paper-dialog');
|
||||
|
||||
dlg.setAttribute('with-backdrop', 'with-backdrop');
|
||||
dlg.setAttribute('role', 'alertdialog');
|
||||
dlg.entryAnimation = 'scale-up-animation';
|
||||
dlg.exitAnimation = 'fade-out-animation';
|
||||
dlg.classList.add('fullscreen-editor-paper-dialog');
|
||||
dlg.classList.add('ui-body-b');
|
||||
|
||||
var html = '';
|
||||
html += '<h2 class="dialogHeader">';
|
||||
html += '<paper-fab icon="arrow-back" class="mini btnCloseDialog"></paper-fab>';
|
||||
html += '<div style="display:inline-block;margin-left:.6em;vertical-align:middle;">' + Globalize.translate('HeaderUploadImage') + '</div>';
|
||||
html += '</h2>';
|
||||
|
||||
html += '<div class="editorContent">';
|
||||
html += Globalize.translateDocument(template);
|
||||
html += '</div>';
|
||||
|
||||
dlg.innerHTML = html;
|
||||
document.body.appendChild(dlg);
|
||||
|
||||
// Has to be assigned a z-index after the call to .open()
|
||||
$(dlg).on('iron-overlay-closed', onDialogClosed);
|
||||
|
||||
document.body.classList.add('bodyWithPopupOpen');
|
||||
PaperDialogHelper.openWithHash(dlg, 'imageuploader');
|
||||
|
||||
var editorContent = dlg.querySelector('.editorContent');
|
||||
initEditor(editorContent);
|
||||
|
||||
$('.btnCloseDialog', dlg).on('click', closeDialog);
|
||||
});
|
||||
}
|
||||
|
||||
function closeDialog() {
|
||||
|
||||
history.back();
|
||||
}
|
||||
|
||||
function onDialogClosed() {
|
||||
|
||||
document.body.classList.remove('bodyWithPopupOpen');
|
||||
$(this).remove();
|
||||
Dashboard.hideLoadingMsg();
|
||||
currentDeferred.resolveWith(null, [hasChanges]);
|
||||
}
|
||||
|
||||
window.ImageUploader = {
|
||||
show: function (itemId) {
|
||||
|
||||
var deferred = DeferredBuilder.Deferred();
|
||||
|
||||
currentDeferred = deferred;
|
||||
hasChanges = false;
|
||||
|
||||
require(['components/paperdialoghelper'], function () {
|
||||
|
||||
showEditor(itemId);
|
||||
});
|
||||
return deferred.promise();
|
||||
}
|
||||
};
|
||||
|
||||
})(jQuery, window, document);
|
@ -0,0 +1,35 @@
|
||||
<form class="uploadItemImageForm" style="max-width: 100%;">
|
||||
<h2>${HeaderAddUpdateImage}</h2>
|
||||
<div>
|
||||
<p>${LabelJpgPngOnly}</p>
|
||||
<input type="file" accept="image/*" id="uploadImage" name="uploadImage" />
|
||||
|
||||
<div id="imageDropZone" class="imageDropZone">
|
||||
<h3>${LabelDropImageHere}</h3>
|
||||
<output id="imageOutput"></output>
|
||||
</div>
|
||||
<div id="fldUpload" style="display: none;">
|
||||
<br />
|
||||
<div>
|
||||
<label for="selectImageType">${LabelImageType}</label>
|
||||
<select id="selectImageType" name="selectImageType">
|
||||
<option value="Primary">${OptionPrimary}</option>
|
||||
<option value="Art">${OptionArt}</option>
|
||||
<option value="Backdrop">${OptionBackdrop}</option>
|
||||
<option value="Banner">${OptionBanner}</option>
|
||||
<option value="Box">${OptionBox}</option>
|
||||
<option value="BoxRear">${OptionBoxRear}</option>
|
||||
<option value="Disc">${OptionDisc}</option>
|
||||
<option value="Icon">${OptionIcon}</option>
|
||||
<option value="Logo">${OptionLogo}</option>
|
||||
<option value="Menu">${OptionMenu}</option>
|
||||
<option value="Screenshot">${OptionScreenshot}</option>
|
||||
<option value="Thumb">${OptionThumb}</option>
|
||||
</select>
|
||||
</div>
|
||||
<button type="submit" data-role="none" class="clearButton">
|
||||
<paper-button raised class="submit block"><iron-icon icon="check"></iron-icon><span>${ButtonUpload}</span></paper-button>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
48
dashboard-ui/components/paperdialoghelper.js
Normal file
48
dashboard-ui/components/paperdialoghelper.js
Normal file
@ -0,0 +1,48 @@
|
||||
(function (globalScope) {
|
||||
|
||||
function paperDialogHashHandler(dlg, hash) {
|
||||
|
||||
function onHashChange(e, data) {
|
||||
|
||||
data = data.state;
|
||||
|
||||
if (data.direction == 'back') {
|
||||
if (dlg) {
|
||||
if (data.hash != '#' + hash) {
|
||||
dlg.close();
|
||||
dlg = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function onDialogClosed() {
|
||||
|
||||
dlg = null;
|
||||
$(window).off('navigate', onHashChange);
|
||||
|
||||
if (window.location.hash == '#' + hash) {
|
||||
history.back();
|
||||
}
|
||||
}
|
||||
|
||||
var self = this;
|
||||
|
||||
$(dlg).on('iron-overlay-closed', onDialogClosed);
|
||||
dlg.open();
|
||||
|
||||
window.location.hash = hash;
|
||||
|
||||
$(window).on('navigate', onHashChange);
|
||||
}
|
||||
|
||||
function openWithHash(dlg, hash) {
|
||||
|
||||
new paperDialogHashHandler(dlg, hash);
|
||||
}
|
||||
|
||||
globalScope.PaperDialogHelper = {
|
||||
openWithHash: openWithHash
|
||||
};
|
||||
|
||||
})(this);
|
@ -1,7 +1,6 @@
|
||||
(function ($, window, document) {
|
||||
|
||||
var currentItem;
|
||||
var currentDialog;
|
||||
|
||||
function showLocalSubtitles(page, index) {
|
||||
|
||||
@ -151,9 +150,6 @@
|
||||
|
||||
html += '</div>';
|
||||
}
|
||||
else {
|
||||
html += '<br/>';
|
||||
}
|
||||
|
||||
var elem = $('.subtitleList', page).html(html).trigger('create');
|
||||
|
||||
@ -182,14 +178,21 @@
|
||||
|
||||
}));
|
||||
|
||||
Dashboard.getCurrentUser().done(function (user) {
|
||||
var lastLanguage = appStorage.getItem('subtitleeditor-language');
|
||||
if (lastLanguage) {
|
||||
$('#selectLanguage', page).val(lastLanguage);
|
||||
}
|
||||
else {
|
||||
|
||||
var lang = user.Configuration.SubtitleLanguagePreference;
|
||||
Dashboard.getCurrentUser().done(function (user) {
|
||||
|
||||
if (lang) {
|
||||
$('#selectLanguage', page).val(lang);
|
||||
}
|
||||
});
|
||||
var lang = user.Configuration.SubtitleLanguagePreference;
|
||||
|
||||
if (lang) {
|
||||
$('#selectLanguage', page).val(lang);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function renderSearchResults(page, results) {
|
||||
@ -277,6 +280,8 @@
|
||||
|
||||
function searchForSubtitles(page, language) {
|
||||
|
||||
appStorage.setItem('subtitleeditor-language', language);
|
||||
|
||||
Dashboard.showLoadingMsg();
|
||||
|
||||
var url = ApiClient.getUrl('Items/' + currentItem.Id + '/RemoteSearch/Subtitles/' + language);
|
||||
@ -324,7 +329,7 @@
|
||||
ApiClient.ajax({
|
||||
|
||||
type: 'GET',
|
||||
url: 'subtitleeditor/subtitleeditor.template.html'
|
||||
url: 'components/subtitleeditor/subtitleeditor.template.html'
|
||||
|
||||
}).done(function (template) {
|
||||
|
||||
@ -358,13 +363,7 @@
|
||||
$(dlg).on('iron-overlay-closed', onDialogClosed);
|
||||
|
||||
document.body.classList.add('bodyWithPopupOpen');
|
||||
dlg.open();
|
||||
|
||||
window.location.hash = getHash(itemId);
|
||||
|
||||
window.addEventListener('hashchange', onHashChange);
|
||||
|
||||
currentDialog = dlg;
|
||||
PaperDialogHelper.openWithHash(dlg, 'subtitleeditor');
|
||||
|
||||
var editorContent = dlg.querySelector('.editorContent');
|
||||
reload(editorContent, item);
|
||||
@ -379,45 +378,26 @@
|
||||
});
|
||||
}
|
||||
|
||||
function getHash(itemId) {
|
||||
return 'subtitleeditor?id=' + itemId;
|
||||
}
|
||||
|
||||
function onHashChange() {
|
||||
|
||||
// In some browsers this will fire immediately after opening the dialog, despite the fact that we bound the event after setting the hash
|
||||
if (currentItem && window.location.hash == '#' + getHash(currentItem.Id)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (currentDialog) {
|
||||
closeDialog();
|
||||
}
|
||||
}
|
||||
|
||||
function closeDialog() {
|
||||
|
||||
window.removeEventListener('hashchange', onHashChange);
|
||||
|
||||
if (currentDialog) {
|
||||
currentDialog.close();
|
||||
}
|
||||
history.back();
|
||||
}
|
||||
|
||||
function onDialogClosed() {
|
||||
currentDialog = null;
|
||||
|
||||
window.removeEventListener('hashchange', onHashChange);
|
||||
document.body.classList.remove('bodyWithPopupOpen');
|
||||
$(this).remove();
|
||||
Dashboard.hideLoadingMsg();
|
||||
if ((window.location.hash || '').length > 1) {
|
||||
history.back();
|
||||
}
|
||||
}
|
||||
|
||||
window.SubtitleEditor = {
|
||||
show: showEditor
|
||||
show: function (itemId) {
|
||||
|
||||
require(['components/paperdialoghelper'], function () {
|
||||
|
||||
showEditor(itemId);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
})(jQuery, window, document);
|
@ -1,11 +1,11 @@
|
||||
<div class="readOnlyContent" style="max-width: 700px;margin:auto;">
|
||||
<div class="readOnlyContent" style="max-width: 800px;margin:auto;">
|
||||
<div>
|
||||
<div class="subtitleList"></div>
|
||||
</div>
|
||||
<br />
|
||||
<h1>${HeaderSearchForSubtitles}</h1>
|
||||
|
||||
<form class="subtitleSearchForm">
|
||||
<form class="subtitleSearchForm" style="max-width:none;">
|
||||
<div style="display: inline-block; width: 85%;">
|
||||
<label for="selectLanguage">${LabelLanguage}</label>
|
||||
<select id="selectLanguage" required="required" data-mini="true"></select>
|
||||
@ -15,10 +15,8 @@
|
||||
</button>
|
||||
</form>
|
||||
<br />
|
||||
<div class="readOnlyContent" style="max-width: 700px;">
|
||||
<div class="subtitleResults"></div>
|
||||
<div class="noSearchResults" style="display: none;">
|
||||
${MessageNoSubtitleSearchResultsFound}
|
||||
</div>
|
||||
<div class="subtitleResults"></div>
|
||||
<div class="noSearchResults" style="display: none;">
|
||||
${MessageNoSubtitleSearchResultsFound}
|
||||
</div>
|
||||
</div>
|
10
dashboard-ui/cordova/fileupload.js
vendored
10
dashboard-ui/cordova/fileupload.js
vendored
@ -12,7 +12,13 @@
|
||||
|
||||
fileEntry.file(function (file) {
|
||||
|
||||
var mimeType = file.type;
|
||||
var mimeType = (file.type || '');
|
||||
|
||||
if (mimeType.indexOf('image/') != 0) {
|
||||
Logger.log('Skipping upload because file is not an image. path: ' + path + ' mimeType: ' + mimeType);
|
||||
deferred.reject();
|
||||
return;
|
||||
}
|
||||
|
||||
Logger.log('mimeType for file ' + path + ' is ' + file);
|
||||
|
||||
@ -37,7 +43,7 @@
|
||||
var params = {};
|
||||
options.params = params;
|
||||
|
||||
new FileTransfer().upload(file, url, onSuccess, onFail, options);
|
||||
new FileTransfer().upload(path, url, onSuccess, onFail, options);
|
||||
|
||||
}, function () {
|
||||
Logger.log('File upload failed. fileEntry.file returned an error');
|
||||
|
34
dashboard-ui/cordova/ios/vlcplayer.js
vendored
34
dashboard-ui/cordova/ios/vlcplayer.js
vendored
@ -130,6 +130,27 @@
|
||||
|
||||
//AndroidVlcPlayer.playAudioVlc(val, JSON.stringify(item), JSON.stringify(mediaSource), options.poster);
|
||||
var artist = item.ArtistItems && item.ArtistItems.length ? item.ArtistItems[0].Name : null;
|
||||
|
||||
var metadata = {};
|
||||
|
||||
if (item.Name) {
|
||||
metadata.title = item.Name;
|
||||
}
|
||||
if (artist) {
|
||||
metadata.artist = artist;
|
||||
}
|
||||
if (item.Overview) {
|
||||
metadata.description = item.Overview;
|
||||
}
|
||||
if (options.poster) {
|
||||
metadata.image = {
|
||||
url: options.poster
|
||||
};
|
||||
metadata.imageThumbnail = {
|
||||
url: options.poster
|
||||
};
|
||||
}
|
||||
|
||||
window.audioplayer.playstream(successHandler, function () {
|
||||
|
||||
Logger.log('playstream failed!');
|
||||
@ -139,18 +160,7 @@
|
||||
ios: val
|
||||
},
|
||||
// metadata used for iOS lock screen, Android 'Now Playing' notification
|
||||
{
|
||||
"title": item.Name,
|
||||
"artist": artist,
|
||||
"image": {
|
||||
"url": options.poster
|
||||
},
|
||||
"imageThumbnail": {
|
||||
"url": options.poster
|
||||
},
|
||||
"name": item.Name,
|
||||
"description": item.Overview
|
||||
}
|
||||
metadata
|
||||
);
|
||||
|
||||
} else {
|
||||
|
@ -213,10 +213,7 @@
|
||||
|
||||
.editorTile h3 {
|
||||
text-transform: uppercase;
|
||||
background: #444;
|
||||
padding: .5em 0;
|
||||
text-align: center;
|
||||
margin-top: 0;
|
||||
color: #ddd;
|
||||
}
|
||||
|
||||
@ -225,7 +222,7 @@
|
||||
}
|
||||
|
||||
.editorTileInner {
|
||||
padding: 1em;
|
||||
padding: .5em;
|
||||
}
|
||||
|
||||
.editorTile .ui-field-contain {
|
||||
|
@ -4,372 +4,335 @@
|
||||
<title>Emby</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="editItemMetadataPage" data-role="page" class="page libraryPage metadataEditorPage noSecondaryNavPage" data-contextname="${HeaderMetadataManager}" data-require="jqmcheckbox,jqmcollapsible,jqmlistview,jqmpopup,scripts/editorsidebar,scripts/edititemmetadata,scripts/edititemimages">
|
||||
<div>
|
||||
<div class="editPageSidebar" style="overflow:auto;">
|
||||
<div class="libraryTree">
|
||||
<ul></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="editPageInnerContent" style="visibility:hidden;">
|
||||
<h1 class="itemName editPageName"> </h1>
|
||||
<br />
|
||||
<paper-tabs hidescrollbuttons>
|
||||
<paper-tab class="metadataTabButton">${TabMetadata}</paper-tab>
|
||||
<paper-tab class="imagesTabButton">${TabImages}</paper-tab>
|
||||
</paper-tabs>
|
||||
|
||||
<div class="editorTab">
|
||||
|
||||
<form class="editItemMetadataForm editMetadataForm">
|
||||
<div class="metadataFormFields">
|
||||
|
||||
<div style="margin:2em 0 .5em;text-align:center;">
|
||||
|
||||
<paper-button raised class="submit">
|
||||
<button class="btnSave clearButton" type="submit" data-role="none" style="display:inline-block;">
|
||||
<iron-icon icon="check"></iron-icon><span>${ButtonSave}</span>
|
||||
</button>
|
||||
</paper-button>
|
||||
|
||||
<paper-button raised class="subdued btnRefresh btnSimpleRefresh" style="background-color:#673AB7;"><iron-icon icon="refresh"></iron-icon><span>${ButtonRefresh}</span></paper-button>
|
||||
<paper-button id="btnIdentify" raised style="background-color:#009688;"><iron-icon icon="info"></iron-icon><span>${ButtonIdentify}</span></paper-button>
|
||||
<paper-button raised class="subdued notext btnMore"><iron-icon icon="more-vert"></iron-icon></paper-button>
|
||||
</div>
|
||||
|
||||
<div style="padding: 0 0 10px;">
|
||||
<div id="fldContentType" style="display:none;">
|
||||
<label for="selectContentType">${LabelContentType}</label>
|
||||
<select id="selectContentType" data-mini="true"></select>
|
||||
</div>
|
||||
<div id="fldPath">
|
||||
<paper-input id="txtPath" type="text" label="${LabelPath}" readonly></paper-input>
|
||||
</div>
|
||||
<div>
|
||||
<paper-input id="txtName" type="text" label="${LabelName}" required="required"></paper-input>
|
||||
</div>
|
||||
<div id="fldSortName" style="display: none;">
|
||||
<paper-input id="txtSortName" type="text" label="${LabelSortName}"></paper-input>
|
||||
</div>
|
||||
<div id="fldDateAdded" style="display: none;">
|
||||
<paper-input id="txtDateAdded" type="date" label="${LabelDateAdded}"></paper-input>
|
||||
</div>
|
||||
<div id="fldStatus" style="display: none;margin:1em 0;">
|
||||
<label for="selectStatus">${LabelStatus}</label>
|
||||
<select id="selectStatus" data-mini="true"></select>
|
||||
</div>
|
||||
<div id="fldArtist" style="display: none;">
|
||||
<paper-input id="txtArtist" type="text" label="${LabelArtists}" placeholder="${LabelArtistsHelp}"></paper-input>
|
||||
</div>
|
||||
<div id="fldAlbumArtist" style="display: none;">
|
||||
<paper-input id="txtAlbumArtist" type="text" label="${LabelAlbumArtists}" placeholder="${LabelArtistsHelp}"></paper-input>
|
||||
</div>
|
||||
<div id="fldAlbum" style="display: none;">
|
||||
<paper-input id="txtAlbum" type="text" label="${LabelAlbum}"></paper-input>
|
||||
</div>
|
||||
<div id="fldParentIndexNumber" style="display: none;">
|
||||
<paper-input id="txtParentIndexNumber" type="number"></paper-input>
|
||||
</div>
|
||||
<div id="fldIndexNumber" style="display: none;">
|
||||
<paper-input id="txtIndexNumber" type="number" pattern="[0-9]*"></paper-input>
|
||||
</div>
|
||||
<div id="fldCommunityRating" style="display: none;">
|
||||
<paper-input id="txtCommunityRating" type="number" step=".1" min="0" max="10" label="${LabelCommunityRating}"></paper-input>
|
||||
</div>
|
||||
<div id="fldCommunityVoteCount" style="display: none;">
|
||||
<paper-input id="txtCommunityVoteCount" type="number" step="1" label="${LabelVoteCount}"></paper-input>
|
||||
</div>
|
||||
<div id="fldMetascore" style="display: none;">
|
||||
<paper-input id="txtMetascore" type="number" step="1" min="0" max="100" label="${LabelMetascore}"></paper-input>
|
||||
</div>
|
||||
<div id="fldCriticRating" style="display: none;">
|
||||
<paper-input id="txtCriticRating" type="number" step=".1" label="${LabelCriticRating}"></paper-input>
|
||||
</div>
|
||||
<div id="fldCriticRatingSummary" style="display: none;">
|
||||
<paper-input id="txtCriticRatingSummary" type="text" label="${LabelCriticRatingSummary}"></paper-input>
|
||||
</div>
|
||||
<div id="fldAwardSummary" style="display: none;">
|
||||
<paper-input id="txtAwardSummary" type="text" label="${LabelAwardSummary}"></paper-input>
|
||||
</div>
|
||||
<div>
|
||||
<paper-input id="txtHomePageUrl" type="text" label="${LabelWebsite}"></paper-input>
|
||||
</div>
|
||||
<div id="fldTagline" style="display: none;">
|
||||
<paper-input id="txtTagline" type="text" label="${LabelTagline}"></paper-input>
|
||||
</div>
|
||||
<div>
|
||||
<label for="txtOverview" class="likePaperLabel">${LabelOverview}</label>
|
||||
<textarea id="txtOverview" class="likePaperText" data-role="none"></textarea>
|
||||
<br />
|
||||
</div>
|
||||
<div id="fldShortOverview" style="display: none;">
|
||||
<paper-input id="txtShortOverview" type="text" label="${LabelShortOverview}"></paper-input>
|
||||
</div>
|
||||
<div id="fldPremiereDate" style="display: none;">
|
||||
<label for="txtPremiereDate" class="likePaperLabel">${LabelReleaseDate}</label>
|
||||
<input id="txtPremiereDate" type="date" class="likePaperText" data-role="none" />
|
||||
</div>
|
||||
<div id="fldYear" style="display: none;">
|
||||
<paper-input id="txtProductionYear" type="number" label="${LabelYear}"></paper-input>
|
||||
</div>
|
||||
<div id="fldPlaceOfBirth" style="display: none;">
|
||||
<paper-input id="txtPlaceOfBirth" type="text" label="${LabelPlaceOfBirth}"></paper-input>
|
||||
</div>
|
||||
<div id="fldEndDate" style="display: none;">
|
||||
<label for="txtEndDate" class="likePaperLabel">${LabelEndDate}</label>
|
||||
<input id="txtEndDate" type="date" class="likePaperText" data-role="none" />
|
||||
</div>
|
||||
<div id="fldAirDays" style="display: none;">
|
||||
<p>${LabelAirDays}</p>
|
||||
|
||||
<div>
|
||||
<paper-checkbox class="chkAirDay" data-day="Sunday">${OptionSunday}</paper-checkbox>
|
||||
<paper-checkbox class="chkAirDay" data-day="Monday">${OptionMonday}</paper-checkbox>
|
||||
<paper-checkbox class="chkAirDay" data-day="Tuesday">${OptionTuesday}</paper-checkbox>
|
||||
<paper-checkbox class="chkAirDay" data-day="Wednesday">${OptionWednesday}</paper-checkbox>
|
||||
<paper-checkbox class="chkAirDay" data-day="Thursday">${OptionThursday}</paper-checkbox>
|
||||
<paper-checkbox class="chkAirDay" data-day="Friday">${OptionFriday}</paper-checkbox>
|
||||
<paper-checkbox class="chkAirDay" data-day="Saturday">${OptionSaturday}</paper-checkbox>
|
||||
</div>
|
||||
<br />
|
||||
|
||||
</div>
|
||||
<div id="fldAirTime" style="display: none;">
|
||||
<paper-input id="txtAirTime" type="text" label="${LabelAirTime}"></paper-input>
|
||||
</div>
|
||||
<div id="fldSeriesRuntime" style="display: none;">
|
||||
<paper-input id="txtSeriesRuntime" type="number" label="${LabelRuntimeMinutes}"></paper-input>
|
||||
</div>
|
||||
<div id="fldOfficialRating" style="display: none;">
|
||||
<br />
|
||||
<label for="selectOfficialRating">${LabelParentalRating}</label>
|
||||
<select id="selectOfficialRating" data-mini="true"></select>
|
||||
</div>
|
||||
<div id="fldCustomRating" style="display: none;">
|
||||
<br />
|
||||
<label for="selectCustomRating">${LabelCustomRating}</label>
|
||||
<select id="selectCustomRating" data-mini="true"></select>
|
||||
</div>
|
||||
<div id="fldBudget" style="display: none;">
|
||||
<paper-input id="txtBudget" type="number" label="${LabelBudget}"></paper-input>
|
||||
</div>
|
||||
<div id="fldRevenue" style="display: none;">
|
||||
<paper-input id="txtRevenue" type="number" label="${LabelRevenue}"></paper-input>
|
||||
</div>
|
||||
<div id="fldOriginalAspectRatio" style="display: none;">
|
||||
<paper-input id="txtOriginalAspectRatio" type="text" label="${LabelOriginalAspectRatio}"></paper-input>
|
||||
</div>
|
||||
<div id="fldPlayers" style="display: none;">
|
||||
<paper-input id="txtPlayers" type="number" pattern="[0-9]*" label="${LabelPlayers}"></paper-input>
|
||||
</div>
|
||||
<div id="fld3dFormat" style="display: none;">
|
||||
<br />
|
||||
<label for="select3dFormat">${Label3DFormat}</label>
|
||||
<select id="select3dFormat" data-mini="true">
|
||||
<option value=""></option>
|
||||
<option value="HalfSideBySide">HSBS</option>
|
||||
<option value="HalfTopAndBottom">HTAB</option>
|
||||
<option value="FullSideBySide">FSBS</option>
|
||||
<option value="FullTopAndBottom">FTAB</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
|
||||
<div class="detailSection" id="collapsibleDvdEpisodeInfo" style="display: none;">
|
||||
<h1>
|
||||
${HeaderAlternateEpisodeNumbers}
|
||||
</h1>
|
||||
<div class="detailSectionContent">
|
||||
<div>
|
||||
<paper-input id="txtDvdSeasonNumber" type="number" pattern="[0-9]*" label="${LabelDvdSeasonNumber}"></paper-input>
|
||||
</div>
|
||||
<div>
|
||||
<paper-input id="txtDvdEpisodeNumber" type="number" pattern="[0-9]*" label="${LabelDvdEpisodeNumber}"></paper-input>
|
||||
</div>
|
||||
<div>
|
||||
<paper-input id="txtAbsoluteEpisodeNumber" type="number" pattern="[0-9]*" label="${LabelAbsoluteEpisodeNumber}"></paper-input>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="detailSection" id="collapsibleSpecialEpisodeInfo" style="display: none;">
|
||||
<h1>
|
||||
${HeaderSpecialEpisodeInfo}
|
||||
</h1>
|
||||
<div class="detailSectionContent">
|
||||
<div>
|
||||
<paper-input id="txtAirsBeforeSeason" type="number" pattern="[0-9]*" label="${LabelAirsBeforeSeason}"></paper-input>
|
||||
</div>
|
||||
<div>
|
||||
<paper-input id="txtAirsAfterSeason" type="number" pattern="[0-9]*" label="${LabelAirsAfterSeason}"></paper-input>
|
||||
</div>
|
||||
<div>
|
||||
<paper-input id="txtAirsBeforeEpisode" type="number" pattern="[0-9]*" label="${LabelAirsBeforeEpisode}"></paper-input>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="detailSection">
|
||||
<h1>
|
||||
${HeaderExternalIds}
|
||||
</h1>
|
||||
<div class="detailSectionContent">
|
||||
<div class="externalIds editorFieldset">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="detailSection" id="collapsibleDisplaySettings" style="display:none;">
|
||||
<h1>
|
||||
${HeaderDisplaySettings}
|
||||
</h1>
|
||||
<div class="detailSectionContent">
|
||||
<div id="fldSourceType" style="display: none;" class="fldDisplaySetting">
|
||||
<paper-input id="txtDisplayMediaType" type="text" label="${LabelTreatImageAs}"></paper-input>
|
||||
</div>
|
||||
<div id="fldDisplaySpecialsInline" class="fldDisplaySetting">
|
||||
<br />
|
||||
<paper-checkbox id="chkDisplaySpecialsInline">${LabelDisplaySpecialsWithinSeasons}</paper-checkbox>
|
||||
</div>
|
||||
<div id="fldDisplayOrder" class="fldDisplaySetting">
|
||||
<label for="selectDisplayOrder" id="labelDisplayOrder">${LabelDisplayOrder}</label>
|
||||
<select id="selectDisplayOrder" data-mini="true"></select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div data-role="collapsible" data-mini="true" id="countriesCollapsible" style="display: none; margin-top: 1em;">
|
||||
<h3>${HeaderCountries}</h3>
|
||||
<div data-role="editableListviewContainer">
|
||||
<div>
|
||||
<div style="display: inline-block; width: 80%;">
|
||||
<input type="text" class="txtEditableListview" />
|
||||
</div>
|
||||
<paper-icon-button icon="add" onclick="EditItemMetadataPage.addElementToEditableListview(this)"></paper-icon-button>
|
||||
</div>
|
||||
<ul data-role="listview" data-inset="true" data-split-icon="delete" id="listCountries"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div data-role="collapsible" data-mini="true" id="genresCollapsible" style="display: none; margin-top: 1em;">
|
||||
<h3>${HeaderGenres}</h3>
|
||||
<div data-role="editableListviewContainer">
|
||||
<div>
|
||||
<div style="display: inline-block; width: 80%;">
|
||||
<input type="text" class="txtEditableListview" />
|
||||
</div>
|
||||
<paper-icon-button icon="add" onclick="EditItemMetadataPage.addElementToEditableListview(this)"></paper-icon-button>
|
||||
</div>
|
||||
<ul data-role="listview" data-inset="true" data-split-icon="delete" id="listGenres"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div data-mini="true" data-role="collapsible" id="peopleCollapsible" style="display: none; margin-top: 1em;">
|
||||
<h3>${HeaderPeople}</h3>
|
||||
<div>
|
||||
<br />
|
||||
<button type="button" id="btnAddPerson" data-icon="plus" data-mini="true" data-theme="a">${ButtonAdd}</button>
|
||||
<br />
|
||||
<ul data-role="listview" data-inset="true" data-split-icon="delete" id="peopleList"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div data-mini="true" data-role="collapsible" id="keywordsCollapsible" style="display: none; margin-top: 1em;">
|
||||
<h3>${HeaderPlotKeywords}</h3>
|
||||
<div data-role="editableListviewContainer">
|
||||
<div>
|
||||
<div style="display: inline-block; width: 80%;">
|
||||
<input type="text" class="txtEditableListview" />
|
||||
</div>
|
||||
<paper-icon-button icon="add" onclick="EditItemMetadataPage.addElementToEditableListview(this)"></paper-icon-button>
|
||||
</div>
|
||||
<ul data-role="listview" data-inset="true" data-split-icon="delete" id="listKeywords"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div data-role="collapsible" data-mini="true" id="studiosCollapsible" style="display: none; margin-top: 1em;">
|
||||
<h3>${HeaderStudios}</h3>
|
||||
<div data-role="editableListviewContainer">
|
||||
<div>
|
||||
<div style="display: inline-block; width: 80%;">
|
||||
<input type="text" class="txtEditableListview" />
|
||||
</div>
|
||||
<paper-icon-button icon="add" onclick="EditItemMetadataPage.addElementToEditableListview(this)"></paper-icon-button>
|
||||
</div>
|
||||
<ul data-role="listview" data-inset="true" data-split-icon="delete" id="listStudios"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div data-mini="true" data-role="collapsible" id="tagsCollapsible" style="display: none; margin-top: 1em;">
|
||||
<h3>${HeaderTags}</h3>
|
||||
<div data-role="editableListviewContainer">
|
||||
<div>
|
||||
<div style="display: inline-block; width: 80%;">
|
||||
<input type="text" class="txtEditableListview" />
|
||||
</div>
|
||||
<paper-icon-button icon="add" onclick="EditItemMetadataPage.addElementToEditableListview(this)"></paper-icon-button>
|
||||
</div>
|
||||
<ul data-role="listview" data-inset="true" data-split-icon="delete" id="listTags"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div id="metadataSettingsCollapsible" style="display: none; margin-top: 3em;">
|
||||
<h1>${HeaderMetadataSettings}</h1>
|
||||
<div>
|
||||
<div>
|
||||
<label for="selectLanguage">${LabelMetadataDownloadLanguage}</label>
|
||||
<select id="selectLanguage" data-mini="true"></select>
|
||||
</div>
|
||||
<div class="fieldDescription editorfieldDescription">${MessageLeaveEmptyToInherit}</div>
|
||||
<br />
|
||||
<div>
|
||||
<label for="selectCountry">${LabelCountry}</label>
|
||||
<select id="selectCountry" data-mini="true"></select>
|
||||
</div>
|
||||
<div class="fieldDescription editorfieldDescription">${MessageLeaveEmptyToInherit}</div>
|
||||
|
||||
<div>
|
||||
<br /><br />
|
||||
<paper-checkbox id="chkLockData" onchange="EditItemMetadataPage.setProviderSettingsContainerVisibility(this)">${LabelLockItemToPreventChanges}</paper-checkbox>
|
||||
</div>
|
||||
<br />
|
||||
<div id="providerSettingsContainer" style="display: none">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
<button type="submit" data-role="none" class="clearButton btnSave">
|
||||
<paper-button raised class="submit block"><iron-icon icon="check"></iron-icon><span>${ButtonSave}</span></paper-button>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
</div>
|
||||
<div class="editorTab imageEditorTab">
|
||||
<div style="margin:2em 0 .5em;text-align:center;">
|
||||
|
||||
<paper-button raised class="subdued btnBrowseAllImages"><iron-icon icon="cloud"></iron-icon><span>${ButtonBrowseImages}</span></paper-button>
|
||||
<paper-button raised class="subdued btnOpenUploadMenu"><iron-icon icon="add"></iron-icon><span>${ButtonUpload}</span></paper-button>
|
||||
</div>
|
||||
|
||||
<div id="imagesContainer" style="display: none;">
|
||||
<h1>${HeaderImages}</h1>
|
||||
<div id="images">
|
||||
</div>
|
||||
<br />
|
||||
</div>
|
||||
|
||||
<div id="backdropsContainer" style="display: none;">
|
||||
<h1>${HeaderBackdrops}</h1>
|
||||
<div id="backdrops">
|
||||
</div>
|
||||
<br />
|
||||
</div>
|
||||
|
||||
<div id="screenshotsContainer" style="display: none;">
|
||||
<h1>${Screenshots}</h1>
|
||||
<div id="screenshots">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="editItemMetadataPage" data-role="page" class="page libraryPage metadataEditorPage noSecondaryNavPage" data-contextname="${HeaderMetadataManager}" data-require="jqmcheckbox,jqmcollapsible,jqmlistview,jqmpopup,scripts/editorsidebar,scripts/edititemmetadata">
|
||||
<div class="editPageSidebar" style="overflow:auto;">
|
||||
<div class="libraryTree">
|
||||
<ul></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div data-role="content">
|
||||
<div class="editPageInnerContent" style="visibility:hidden;">
|
||||
<h1 class="itemName editPageName"> </h1>
|
||||
<br />
|
||||
<form class="editItemMetadataForm editMetadataForm ">
|
||||
<div class="metadataFormFields">
|
||||
|
||||
<div style="margin:2em 0 .5em;text-align:center;">
|
||||
|
||||
<paper-button raised class="submit">
|
||||
<button class="btnSave clearButton" type="submit" data-role="none" style="display:inline-block;">
|
||||
<iron-icon icon="check"></iron-icon><span>${ButtonSave}</span>
|
||||
</button>
|
||||
</paper-button>
|
||||
|
||||
<paper-button raised class="subdued btnRefresh btnSimpleRefresh" style="background-color:#673AB7;"><iron-icon icon="refresh"></iron-icon><span>${ButtonRefresh}</span></paper-button>
|
||||
<paper-button id="btnIdentify" raised style="background-color:#009688;"><iron-icon icon="info"></iron-icon><span>${ButtonIdentify}</span></paper-button>
|
||||
<paper-button raised class="subdued notext btnMore"><iron-icon icon="more-vert"></iron-icon></paper-button>
|
||||
</div>
|
||||
|
||||
<div style="padding: 0 0 10px;">
|
||||
<div id="fldContentType" style="display:none;">
|
||||
<label for="selectContentType">${LabelContentType}</label>
|
||||
<select id="selectContentType" data-mini="true"></select>
|
||||
</div>
|
||||
<div id="fldPath">
|
||||
<paper-input id="txtPath" type="text" label="${LabelPath}" readonly></paper-input>
|
||||
</div>
|
||||
<div>
|
||||
<paper-input id="txtName" type="text" label="${LabelName}" required="required"></paper-input>
|
||||
</div>
|
||||
<div id="fldSortName" style="display: none;">
|
||||
<paper-input id="txtSortName" type="text" label="${LabelSortName}"></paper-input>
|
||||
</div>
|
||||
<div id="fldDateAdded" style="display: none;">
|
||||
<paper-input id="txtDateAdded" type="date" label="${LabelDateAdded}"></paper-input>
|
||||
</div>
|
||||
<div id="fldStatus" style="display: none;margin:1em 0;">
|
||||
<label for="selectStatus">${LabelStatus}</label>
|
||||
<select id="selectStatus" data-mini="true"></select>
|
||||
</div>
|
||||
<div id="fldArtist" style="display: none;">
|
||||
<paper-input id="txtArtist" type="text" label="${LabelArtists}" placeholder="${LabelArtistsHelp}"></paper-input>
|
||||
</div>
|
||||
<div id="fldAlbumArtist" style="display: none;">
|
||||
<paper-input id="txtAlbumArtist" type="text" label="${LabelAlbumArtists}" placeholder="${LabelArtistsHelp}"></paper-input>
|
||||
</div>
|
||||
<div id="fldAlbum" style="display: none;">
|
||||
<paper-input id="txtAlbum" type="text" label="${LabelAlbum}"></paper-input>
|
||||
</div>
|
||||
<div id="fldParentIndexNumber" style="display: none;">
|
||||
<paper-input id="txtParentIndexNumber" type="number"></paper-input>
|
||||
</div>
|
||||
<div id="fldIndexNumber" style="display: none;">
|
||||
<paper-input id="txtIndexNumber" type="number" pattern="[0-9]*"></paper-input>
|
||||
</div>
|
||||
<div id="fldCommunityRating" style="display: none;">
|
||||
<paper-input id="txtCommunityRating" type="number" step=".1" min="0" max="10" label="${LabelCommunityRating}"></paper-input>
|
||||
</div>
|
||||
<div id="fldCommunityVoteCount" style="display: none;">
|
||||
<paper-input id="txtCommunityVoteCount" type="number" step="1" label="${LabelVoteCount}"></paper-input>
|
||||
</div>
|
||||
<div id="fldMetascore" style="display: none;">
|
||||
<paper-input id="txtMetascore" type="number" step="1" min="0" max="100" label="${LabelMetascore}"></paper-input>
|
||||
</div>
|
||||
<div id="fldCriticRating" style="display: none;">
|
||||
<paper-input id="txtCriticRating" type="number" step=".1" label="${LabelCriticRating}"></paper-input>
|
||||
</div>
|
||||
<div id="fldCriticRatingSummary" style="display: none;">
|
||||
<paper-input id="txtCriticRatingSummary" type="text" label="${LabelCriticRatingSummary}"></paper-input>
|
||||
</div>
|
||||
<div id="fldAwardSummary" style="display: none;">
|
||||
<paper-input id="txtAwardSummary" type="text" label="${LabelAwardSummary}"></paper-input>
|
||||
</div>
|
||||
<div>
|
||||
<paper-input id="txtHomePageUrl" type="text" label="${LabelWebsite}"></paper-input>
|
||||
</div>
|
||||
<div id="fldTagline" style="display: none;">
|
||||
<paper-input id="txtTagline" type="text" label="${LabelTagline}"></paper-input>
|
||||
</div>
|
||||
<div>
|
||||
<label for="txtOverview" class="likePaperLabel">${LabelOverview}</label>
|
||||
<textarea id="txtOverview" class="likePaperText" data-role="none"></textarea>
|
||||
<br />
|
||||
</div>
|
||||
<div id="fldShortOverview" style="display: none;">
|
||||
<paper-input id="txtShortOverview" type="text" label="${LabelShortOverview}"></paper-input>
|
||||
</div>
|
||||
<div id="fldPremiereDate" style="display: none;">
|
||||
<label for="txtPremiereDate" class="likePaperLabel">${LabelReleaseDate}</label>
|
||||
<input id="txtPremiereDate" type="date" class="likePaperText" data-role="none" />
|
||||
</div>
|
||||
<div id="fldYear" style="display: none;">
|
||||
<paper-input id="txtProductionYear" type="number" label="${LabelYear}"></paper-input>
|
||||
</div>
|
||||
<div id="fldPlaceOfBirth" style="display: none;">
|
||||
<paper-input id="txtPlaceOfBirth" type="text" label="${LabelPlaceOfBirth}"></paper-input>
|
||||
</div>
|
||||
<div id="fldEndDate" style="display: none;">
|
||||
<label for="txtEndDate" class="likePaperLabel">${LabelEndDate}</label>
|
||||
<input id="txtEndDate" type="date" class="likePaperText" data-role="none" />
|
||||
</div>
|
||||
<div id="fldAirDays" style="display: none;">
|
||||
<p>${LabelAirDays}</p>
|
||||
|
||||
<div>
|
||||
<paper-checkbox class="chkAirDay" data-day="Sunday">${OptionSunday}</paper-checkbox>
|
||||
<paper-checkbox class="chkAirDay" data-day="Monday">${OptionMonday}</paper-checkbox>
|
||||
<paper-checkbox class="chkAirDay" data-day="Tuesday">${OptionTuesday}</paper-checkbox>
|
||||
<paper-checkbox class="chkAirDay" data-day="Wednesday">${OptionWednesday}</paper-checkbox>
|
||||
<paper-checkbox class="chkAirDay" data-day="Thursday">${OptionThursday}</paper-checkbox>
|
||||
<paper-checkbox class="chkAirDay" data-day="Friday">${OptionFriday}</paper-checkbox>
|
||||
<paper-checkbox class="chkAirDay" data-day="Saturday">${OptionSaturday}</paper-checkbox>
|
||||
</div>
|
||||
<br />
|
||||
|
||||
</div>
|
||||
<div id="fldAirTime" style="display: none;">
|
||||
<paper-input id="txtAirTime" type="text" label="${LabelAirTime}"></paper-input>
|
||||
</div>
|
||||
<div id="fldSeriesRuntime" style="display: none;">
|
||||
<paper-input id="txtSeriesRuntime" type="number" label="${LabelRuntimeMinutes}"></paper-input>
|
||||
</div>
|
||||
<div id="fldOfficialRating" style="display: none;">
|
||||
<br />
|
||||
<label for="selectOfficialRating">${LabelParentalRating}</label>
|
||||
<select id="selectOfficialRating" data-mini="true"></select>
|
||||
</div>
|
||||
<div id="fldCustomRating" style="display: none;">
|
||||
<br />
|
||||
<label for="selectCustomRating">${LabelCustomRating}</label>
|
||||
<select id="selectCustomRating" data-mini="true"></select>
|
||||
</div>
|
||||
<div id="fldBudget" style="display: none;">
|
||||
<paper-input id="txtBudget" type="number" label="${LabelBudget}"></paper-input>
|
||||
</div>
|
||||
<div id="fldRevenue" style="display: none;">
|
||||
<paper-input id="txtRevenue" type="number" label="${LabelRevenue}"></paper-input>
|
||||
</div>
|
||||
<div id="fldOriginalAspectRatio" style="display: none;">
|
||||
<paper-input id="txtOriginalAspectRatio" type="text" label="${LabelOriginalAspectRatio}"></paper-input>
|
||||
</div>
|
||||
<div id="fldPlayers" style="display: none;">
|
||||
<paper-input id="txtPlayers" type="number" pattern="[0-9]*" label="${LabelPlayers}"></paper-input>
|
||||
</div>
|
||||
<div id="fld3dFormat" style="display: none;">
|
||||
<br />
|
||||
<label for="select3dFormat">${Label3DFormat}</label>
|
||||
<select id="select3dFormat" data-mini="true">
|
||||
<option value=""></option>
|
||||
<option value="HalfSideBySide">HSBS</option>
|
||||
<option value="HalfTopAndBottom">HTAB</option>
|
||||
<option value="FullSideBySide">FSBS</option>
|
||||
<option value="FullTopAndBottom">FTAB</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
|
||||
<div class="detailSection" id="collapsibleDvdEpisodeInfo" style="display: none;">
|
||||
<h1>
|
||||
${HeaderAlternateEpisodeNumbers}
|
||||
</h1>
|
||||
<div class="detailSectionContent">
|
||||
<div>
|
||||
<paper-input id="txtDvdSeasonNumber" type="number" pattern="[0-9]*" label="${LabelDvdSeasonNumber}"></paper-input>
|
||||
</div>
|
||||
<div>
|
||||
<paper-input id="txtDvdEpisodeNumber" type="number" pattern="[0-9]*" label="${LabelDvdEpisodeNumber}"></paper-input>
|
||||
</div>
|
||||
<div>
|
||||
<paper-input id="txtAbsoluteEpisodeNumber" type="number" pattern="[0-9]*" label="${LabelAbsoluteEpisodeNumber}"></paper-input>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="detailSection" id="collapsibleSpecialEpisodeInfo" style="display: none;">
|
||||
<h1>
|
||||
${HeaderSpecialEpisodeInfo}
|
||||
</h1>
|
||||
<div class="detailSectionContent">
|
||||
<div>
|
||||
<paper-input id="txtAirsBeforeSeason" type="number" pattern="[0-9]*" label="${LabelAirsBeforeSeason}"></paper-input>
|
||||
</div>
|
||||
<div>
|
||||
<paper-input id="txtAirsAfterSeason" type="number" pattern="[0-9]*" label="${LabelAirsAfterSeason}"></paper-input>
|
||||
</div>
|
||||
<div>
|
||||
<paper-input id="txtAirsBeforeEpisode" type="number" pattern="[0-9]*" label="${LabelAirsBeforeEpisode}"></paper-input>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="detailSection">
|
||||
<h1>
|
||||
${HeaderExternalIds}
|
||||
</h1>
|
||||
<div class="detailSectionContent">
|
||||
<div class="externalIds editorFieldset">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="detailSection" id="collapsibleDisplaySettings" style="display:none;">
|
||||
<h1>
|
||||
${HeaderDisplaySettings}
|
||||
</h1>
|
||||
<div class="detailSectionContent">
|
||||
<div id="fldSourceType" style="display: none;" class="fldDisplaySetting">
|
||||
<paper-input id="txtDisplayMediaType" type="text" label="${LabelTreatImageAs}"></paper-input>
|
||||
</div>
|
||||
<div id="fldDisplaySpecialsInline" class="fldDisplaySetting">
|
||||
<br />
|
||||
<paper-checkbox id="chkDisplaySpecialsInline">${LabelDisplaySpecialsWithinSeasons}</paper-checkbox>
|
||||
</div>
|
||||
<div id="fldDisplayOrder" class="fldDisplaySetting">
|
||||
<label for="selectDisplayOrder" id="labelDisplayOrder">${LabelDisplayOrder}</label>
|
||||
<select id="selectDisplayOrder" data-mini="true"></select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div data-role="collapsible" data-mini="true" id="countriesCollapsible" style="display: none; margin-top: 1em;">
|
||||
<h3>${HeaderCountries}</h3>
|
||||
<div data-role="editableListviewContainer">
|
||||
<div>
|
||||
<div style="display: inline-block; width: 80%;">
|
||||
<input type="text" class="txtEditableListview" />
|
||||
</div>
|
||||
<paper-icon-button icon="add" onclick="EditItemMetadataPage.addElementToEditableListview(this)"></paper-icon-button>
|
||||
</div>
|
||||
<ul data-role="listview" data-inset="true" data-split-icon="delete" id="listCountries"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div data-role="collapsible" data-mini="true" id="genresCollapsible" style="display: none; margin-top: 1em;">
|
||||
<h3>${HeaderGenres}</h3>
|
||||
<div data-role="editableListviewContainer">
|
||||
<div>
|
||||
<div style="display: inline-block; width: 80%;">
|
||||
<input type="text" class="txtEditableListview" />
|
||||
</div>
|
||||
<paper-icon-button icon="add" onclick="EditItemMetadataPage.addElementToEditableListview(this)"></paper-icon-button>
|
||||
</div>
|
||||
<ul data-role="listview" data-inset="true" data-split-icon="delete" id="listGenres"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div data-mini="true" data-role="collapsible" id="peopleCollapsible" style="display: none; margin-top: 1em;">
|
||||
<h3>${HeaderPeople}</h3>
|
||||
<div>
|
||||
<br />
|
||||
<button type="button" id="btnAddPerson" data-icon="plus" data-mini="true" data-theme="a">${ButtonAdd}</button>
|
||||
<br />
|
||||
<ul data-role="listview" data-inset="true" data-split-icon="delete" id="peopleList"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div data-mini="true" data-role="collapsible" id="keywordsCollapsible" style="display: none; margin-top: 1em;">
|
||||
<h3>${HeaderPlotKeywords}</h3>
|
||||
<div data-role="editableListviewContainer">
|
||||
<div>
|
||||
<div style="display: inline-block; width: 80%;">
|
||||
<input type="text" class="txtEditableListview" />
|
||||
</div>
|
||||
<paper-icon-button icon="add" onclick="EditItemMetadataPage.addElementToEditableListview(this)"></paper-icon-button>
|
||||
</div>
|
||||
<ul data-role="listview" data-inset="true" data-split-icon="delete" id="listKeywords"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div data-role="collapsible" data-mini="true" id="studiosCollapsible" style="display: none; margin-top: 1em;">
|
||||
<h3>${HeaderStudios}</h3>
|
||||
<div data-role="editableListviewContainer">
|
||||
<div>
|
||||
<div style="display: inline-block; width: 80%;">
|
||||
<input type="text" class="txtEditableListview" />
|
||||
</div>
|
||||
<paper-icon-button icon="add" onclick="EditItemMetadataPage.addElementToEditableListview(this)"></paper-icon-button>
|
||||
</div>
|
||||
<ul data-role="listview" data-inset="true" data-split-icon="delete" id="listStudios"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div data-mini="true" data-role="collapsible" id="tagsCollapsible" style="display: none; margin-top: 1em;">
|
||||
<h3>${HeaderTags}</h3>
|
||||
<div data-role="editableListviewContainer">
|
||||
<div>
|
||||
<div style="display: inline-block; width: 80%;">
|
||||
<input type="text" class="txtEditableListview" />
|
||||
</div>
|
||||
<paper-icon-button icon="add" onclick="EditItemMetadataPage.addElementToEditableListview(this)"></paper-icon-button>
|
||||
</div>
|
||||
<ul data-role="listview" data-inset="true" data-split-icon="delete" id="listTags"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div id="metadataSettingsCollapsible" style="display: none; margin-top: 3em;">
|
||||
<h1>${HeaderMetadataSettings}</h1>
|
||||
<div>
|
||||
<div>
|
||||
<label for="selectLanguage">${LabelMetadataDownloadLanguage}</label>
|
||||
<select id="selectLanguage" data-mini="true"></select>
|
||||
</div>
|
||||
<div class="fieldDescription editorfieldDescription">${MessageLeaveEmptyToInherit}</div>
|
||||
<br />
|
||||
<div>
|
||||
<label for="selectCountry">${LabelCountry}</label>
|
||||
<select id="selectCountry" data-mini="true"></select>
|
||||
</div>
|
||||
<div class="fieldDescription editorfieldDescription">${MessageLeaveEmptyToInherit}</div>
|
||||
|
||||
<div>
|
||||
<br /><br />
|
||||
<paper-checkbox id="chkLockData" onchange="EditItemMetadataPage.setProviderSettingsContainerVisibility(this)">${LabelLockItemToPreventChanges}</paper-checkbox>
|
||||
</div>
|
||||
<br />
|
||||
<div id="providerSettingsContainer" style="display: none">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
<button type="submit" data-role="none" class="clearButton btnSave">
|
||||
<paper-button raised class="submit block"><iron-icon icon="check"></iron-icon><span>${ButtonSave}</span></paper-button>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div data-role="popup" class="popupIdentify popupIdentifyItem popup" data-theme="a">
|
||||
|
||||
@ -522,93 +485,6 @@
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div data-role="popup" id="popupUpload" data-theme="a">
|
||||
<form class="uploadItemImageForm" style="max-width: 100%; margin: 0 1.5em 1.5em;">
|
||||
<h2>${HeaderAddUpdateImage}</h2>
|
||||
<div>
|
||||
<p>${LabelJpgPngOnly}</p>
|
||||
<input type="file" accept="image/*" id="uploadImage" name="uploadImage" />
|
||||
|
||||
<div id="imageDropZone" class="imageDropZone">
|
||||
<h3>${LabelDropImageHere}</h3>
|
||||
<output id="imageOutput"></output>
|
||||
</div>
|
||||
<div id="fldUpload" style="display: none;">
|
||||
<br />
|
||||
<div>
|
||||
<label for="selectImageType">${LabelImageType}</label>
|
||||
<select id="selectImageType" name="selectImageType">
|
||||
<option value="Primary">${OptionPrimary}</option>
|
||||
<option value="Art">${OptionArt}</option>
|
||||
<option value="Backdrop">${OptionBackdrop}</option>
|
||||
<option value="Banner">${OptionBanner}</option>
|
||||
<option value="Box">${OptionBox}</option>
|
||||
<option value="BoxRear">${OptionBoxRear}</option>
|
||||
<option value="Disc">${OptionDisc}</option>
|
||||
<option value="Icon">${OptionIcon}</option>
|
||||
<option value="Logo">${OptionLogo}</option>
|
||||
<option value="Menu">${OptionMenu}</option>
|
||||
<option value="Screenshot">${OptionScreenshot}</option>
|
||||
<option value="Thumb">${OptionThumb}</option>
|
||||
</select>
|
||||
</div>
|
||||
<button type="submit" data-icon="check" data-theme="b">${ButtonUpload}</button>
|
||||
</div>
|
||||
<a data-role="button" data-rel="back" data-icon="delete" onclick="Events.trigger($('#uploadImage').val('')[0], 'change');">${ButtonCancel}</a>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div data-role="popup" class="popup popupDownload" data-theme="a">
|
||||
|
||||
<div class="ui-bar-a" style="text-align: center; padding: 0 20px;">
|
||||
<h3>${HeaderBrowseOnlineImages}</h3>
|
||||
</div>
|
||||
|
||||
<div data-role="content">
|
||||
|
||||
<div style="text-align: center;">
|
||||
<div style="margin: 0; display: inline-block;">
|
||||
<label for="selectImageProvider">${LabelSource}</label>
|
||||
</div>
|
||||
<div style="margin: 0; display: inline-block;">
|
||||
<select id="selectImageProvider" name="selectImageProvider" data-mini="true" data-inline="true">
|
||||
<option value="">${OptionAll}</option>
|
||||
</select>
|
||||
</div>
|
||||
<div style="margin: 0; display: inline-block;">
|
||||
<label for="selectBrowsableImageType">${LabelImage}</label>
|
||||
</div>
|
||||
<div style="margin: 0; display: inline-block;">
|
||||
<select id="selectBrowsableImageType" name="selectBrowsableImageType" data-mini="true" data-inline="true">
|
||||
<option value="Primary">${OptionPrimary}</option>
|
||||
<option value="Art">${OptionArt}</option>
|
||||
<option value="Backdrop">${OptionBackdrop}</option>
|
||||
<option value="Banner">${OptionBanner}</option>
|
||||
<option value="Box">${OptionBox}</option>
|
||||
<option value="BoxRear">${OptionBoxRear}</option>
|
||||
<option value="Disc">${OptionDisc}</option>
|
||||
<option value="Icon">${OptionIcon}</option>
|
||||
<option value="Logo">${OptionLogo}</option>
|
||||
<option value="Menu">${OptionMenu}</option>
|
||||
<option value="Screenshot">${OptionScreenshot}</option>
|
||||
<option value="Thumb">${OptionThumb}</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="availableImagesPaging" style="margin: 0; display: inline-block;"></div>
|
||||
<div style="margin: 0; display: inline-block; vertical-align: middle; margin-left: 10px;">
|
||||
<label for="chkAllLanguages">${LabelAllLanguages}</label>
|
||||
<input type="checkbox" id="chkAllLanguages" data-mini="true" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="availableImagesList"></div>
|
||||
<div style="text-align: center;">
|
||||
<a href="#" data-rel="back" data-role="button" data-mini="true" data-inline="true" data-icon="delete">${ButtonClose}</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -1447,7 +1447,7 @@
|
||||
|
||||
//$.mobile.urlHistory.ignoreNextHashChange = true;
|
||||
window.location.hash = 'editItemMetadataPage?id=' + data.id;
|
||||
$(page.querySelector('paper-tabs')).trigger('tabchange');
|
||||
reload(page);
|
||||
}
|
||||
});
|
||||
|
||||
@ -1462,25 +1462,6 @@
|
||||
$('.popupAdvancedRefreshForm').off('submit', EditItemMetadataPage.onRefreshFormSubmit).on('submit', EditItemMetadataPage.onRefreshFormSubmit);
|
||||
$('.identifyOptionsForm').off('submit', EditItemMetadataPage.onIdentificationOptionsSubmit).on('submit', EditItemMetadataPage.onIdentificationOptionsSubmit);
|
||||
|
||||
var tabs = page.querySelector('paper-tabs');
|
||||
|
||||
configurePaperLibraryTabs(page, tabs);
|
||||
|
||||
$(tabs).on('iron-select', function () {
|
||||
|
||||
var self = this;
|
||||
|
||||
setTimeout(function () {
|
||||
Events.trigger(self, 'tabchange');
|
||||
}, 400);
|
||||
|
||||
}).on('tabchange', function () {
|
||||
var selected = this.selected;
|
||||
|
||||
showTab(page, selected);
|
||||
loadTab(page, parseInt(this.selected));
|
||||
});
|
||||
|
||||
page.querySelector('.btnMore iron-icon').icon = AppInfo.moreIcon;
|
||||
|
||||
$('.btnMore', page).on('click', function () {
|
||||
@ -1492,10 +1473,7 @@
|
||||
var page = this;
|
||||
|
||||
$(LibraryBrowser).on('itemdeleting', onItemDeleted);
|
||||
|
||||
var selected = parseInt(getParameterByName('tab') || '0');
|
||||
|
||||
page.querySelector('paper-tabs').selected = selected;
|
||||
reload(page);
|
||||
|
||||
}).on('pagebeforehide', "#editItemMetadataPage", function () {
|
||||
|
||||
@ -1503,49 +1481,7 @@
|
||||
$(LibraryBrowser).off('itemdeleting', onItemDeleted);
|
||||
|
||||
unbindItemChanged(page);
|
||||
|
||||
});
|
||||
|
||||
function configurePaperLibraryTabs(ownerpage, tabs) {
|
||||
|
||||
tabs.hideScrollButtons = true;
|
||||
tabs.noSlide = true;
|
||||
|
||||
// Unfortunately we can't disable this because it causes iron-select to not fire in IE and Safari.
|
||||
//tabs.noink = true;
|
||||
|
||||
$(ownerpage).on('pageshowready', function () {
|
||||
|
||||
var selected = tabs.selected;
|
||||
|
||||
if (selected == null) {
|
||||
|
||||
Logger.log('selected tab is null, checking query string');
|
||||
|
||||
selected = parseInt(getParameterByName('tab') || '0');
|
||||
|
||||
Logger.log('selected tab will be ' + selected);
|
||||
|
||||
tabs.selected = selected;
|
||||
|
||||
} else {
|
||||
Events.trigger(tabs, 'tabchange');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function loadTab(page, index) {
|
||||
|
||||
switch (index) {
|
||||
|
||||
case 0:
|
||||
reload(page);
|
||||
break;
|
||||
default:
|
||||
reload(page);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
})(jQuery, document, window);
|
||||
|
||||
|
@ -244,9 +244,7 @@
|
||||
|
||||
function renderImage(page, item, user) {
|
||||
|
||||
var imageHref = user.Policy.IsAdministrator && item.MediaType != 'Photo' ? "edititemmetadata.html?tab=1&id=" + item.Id : "";
|
||||
|
||||
LibraryBrowser.renderDetailImage(page.querySelector('.detailImageContainer'), item, imageHref);
|
||||
LibraryBrowser.renderDetailImage(page.querySelector('.detailImageContainer'), item, user.Policy.IsAdministrator && item.MediaType != 'Photo');
|
||||
}
|
||||
|
||||
function refreshImage(page, item, user) {
|
||||
|
@ -678,9 +678,10 @@
|
||||
|
||||
commands.push('edit');
|
||||
|
||||
if (item.MediaType == 'Video' && item.Type != 'TvChannel' && item.Type != 'Program') {
|
||||
commands.push('managesubtitles');
|
||||
if (item.MediaType == 'Video' && item.Type != 'TvChannel' && item.Type != 'Program' && item.LocationType != 'Virtual') {
|
||||
commands.push('editsubtitles');
|
||||
}
|
||||
commands.push('editimages');
|
||||
}
|
||||
|
||||
commands.push('refresh');
|
||||
@ -735,9 +736,17 @@
|
||||
}, 250);
|
||||
},
|
||||
|
||||
editImages: function (itemId) {
|
||||
|
||||
require(['components/imageeditor/imageeditor'], function () {
|
||||
|
||||
ImageEditor.show(itemId);
|
||||
});
|
||||
},
|
||||
|
||||
editSubtitles: function (itemId) {
|
||||
|
||||
require(['subtitleeditor/subtitleeditor'], function () {
|
||||
require(['components/subtitleeditor/subtitleeditor'], function () {
|
||||
|
||||
SubtitleEditor.show(itemId);
|
||||
});
|
||||
@ -787,10 +796,18 @@
|
||||
});
|
||||
}
|
||||
|
||||
if (commands.indexOf('managesubtitles') != -1) {
|
||||
if (commands.indexOf('editimages') != -1) {
|
||||
items.push({
|
||||
name: Globalize.translate('ButtonEditImages'),
|
||||
id: 'editimages',
|
||||
ironIcon: 'photo'
|
||||
});
|
||||
}
|
||||
|
||||
if (commands.indexOf('editsubtitles') != -1) {
|
||||
items.push({
|
||||
name: Globalize.translate('ButtonEditSubtitles'),
|
||||
id: 'managesubtitles',
|
||||
id: 'editsubtitles',
|
||||
ironIcon: 'closed-caption'
|
||||
});
|
||||
}
|
||||
@ -846,9 +863,12 @@
|
||||
case 'edit':
|
||||
Dashboard.navigate('edititemmetadata.html?id=' + itemId);
|
||||
break;
|
||||
case 'managesubtitles':
|
||||
case 'editsubtitles':
|
||||
LibraryBrowser.editSubtitles(itemId);
|
||||
break;
|
||||
case 'editimages':
|
||||
LibraryBrowser.editImages(itemId);
|
||||
break;
|
||||
case 'refresh':
|
||||
ApiClient.refreshItem(itemId, {
|
||||
|
||||
@ -1431,9 +1451,10 @@
|
||||
itemCommands.push('record');
|
||||
}
|
||||
|
||||
if (item.MediaType == 'Video' && item.Type != 'TvChannel' && item.Type != 'Program') {
|
||||
itemCommands.push('managesubtitles');
|
||||
if (item.MediaType == 'Video' && item.Type != 'TvChannel' && item.Type != 'Program' && item.LocationType != 'Virtual') {
|
||||
itemCommands.push('editsubtitles');
|
||||
}
|
||||
itemCommands.push('editimages');
|
||||
|
||||
return itemCommands;
|
||||
},
|
||||
@ -3030,7 +3051,7 @@
|
||||
return html;
|
||||
},
|
||||
|
||||
renderDetailImage: function (elem, item, href, preferThumb) {
|
||||
renderDetailImage: function (elem, item, editable, preferThumb) {
|
||||
|
||||
var imageTags = item.ImageTags || {};
|
||||
|
||||
@ -3127,8 +3148,8 @@
|
||||
|
||||
html += '<div style="position:relative;">';
|
||||
|
||||
if (href) {
|
||||
html += "<a class='itemDetailGalleryLink' href='" + href + "'>";
|
||||
if (editable) {
|
||||
html += "<a onclick='LibraryBrowser.editImages(\"" + item.Id + "\");' class='itemDetailGalleryLink' href='#'>";
|
||||
}
|
||||
|
||||
if (detectRatio && item.PrimaryImageAspectRatio) {
|
||||
@ -3142,7 +3163,7 @@
|
||||
|
||||
html += "<img class='itemDetailImage' src='" + url + "' />";
|
||||
|
||||
if (href) {
|
||||
if (editable) {
|
||||
html += "</a>";
|
||||
}
|
||||
|
||||
|
@ -238,10 +238,18 @@
|
||||
});
|
||||
}
|
||||
|
||||
if (commands.indexOf('managesubtitles') != -1) {
|
||||
if (commands.indexOf('editimages') != -1) {
|
||||
items.push({
|
||||
name: Globalize.translate('ButtonEditImages'),
|
||||
id: 'editimages',
|
||||
ironIcon: 'photo'
|
||||
});
|
||||
}
|
||||
|
||||
if (commands.indexOf('editsubtitles') != -1) {
|
||||
items.push({
|
||||
name: Globalize.translate('ButtonEditSubtitles'),
|
||||
id: 'managesubtitles',
|
||||
id: 'editsubtitles',
|
||||
ironIcon: 'closed-caption'
|
||||
});
|
||||
}
|
||||
@ -481,9 +489,12 @@
|
||||
}]
|
||||
});
|
||||
break;
|
||||
case 'managesubtitles':
|
||||
case 'editsubtitles':
|
||||
LibraryBrowser.editSubtitles(itemId);
|
||||
break;
|
||||
case 'editimages':
|
||||
LibraryBrowser.editImages(itemId);
|
||||
break;
|
||||
case 'externalplayer':
|
||||
LibraryBrowser.playInExternalPlayer(itemId);
|
||||
break;
|
||||
|
@ -1048,22 +1048,16 @@ $.fn.createHoverTouch = function () {
|
||||
|
||||
(function () {
|
||||
|
||||
var backUrl;
|
||||
var isCurrentNavBack = false;
|
||||
|
||||
pageClassOn('pagebeforeshow', "page", function () {
|
||||
|
||||
if (getWindowUrl() != backUrl) {
|
||||
backUrl = null;
|
||||
}
|
||||
});
|
||||
|
||||
$(window).on("popstate", function () {
|
||||
backUrl = getWindowUrl();
|
||||
$(window).on("navigate", function (e, data) {
|
||||
data = data.state || {};
|
||||
isCurrentNavBack = data.direction == 'back';
|
||||
});
|
||||
|
||||
function isBack() {
|
||||
|
||||
return backUrl == getWindowUrl();
|
||||
return isCurrentNavBack;
|
||||
}
|
||||
|
||||
window.NavHelper = {
|
||||
|
@ -58,7 +58,7 @@
|
||||
}
|
||||
|
||||
function renderImage(page, item) {
|
||||
LibraryBrowser.renderDetailImage(page.querySelector('.detailImageContainer'), item, '#');
|
||||
LibraryBrowser.renderDetailImage(page.querySelector('.detailImageContainer'), item, false);
|
||||
}
|
||||
|
||||
$(document).on('pageinit', "#publicSharedItemPage", function () {
|
||||
|
@ -66,7 +66,7 @@
|
||||
"HeaderVideo": "\u0412\u0438\u0434\u0435\u043e",
|
||||
"HeaderPaths": "\u041f\u0443\u0442\u0438",
|
||||
"CategorySync": "\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044f",
|
||||
"TabPlaylist": "\u0421\u043f\u0438\u0441\u043e\u043a \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f",
|
||||
"TabPlaylist": "\u041f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442",
|
||||
"HeaderEasyPinCode": "\u0423\u043f\u0440\u043e\u0449\u0451\u043d\u043d\u044b\u0439 PIN-\u043a\u043e\u0434",
|
||||
"HeaderGrownupsOnly": "\u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0432\u0437\u0440\u043e\u0441\u043b\u044b\u0445!",
|
||||
"DividerOr": "-- \u0438\u043b\u0438 --",
|
||||
@ -918,8 +918,8 @@
|
||||
"HeaderBecomeProjectSupporter": "\u0421\u0442\u0430\u043d\u044c\u0442\u0435 \u0441\u043f\u043e\u043d\u0441\u043e\u0440\u043e\u043c Emby",
|
||||
"MessageNoMovieSuggestionsAvailable": "\u0412 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u043d\u0435 \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u043c\u044b\u0445 \u0444\u0438\u043b\u044c\u043c\u043e\u0432. \u041d\u0430\u0447\u043d\u0438\u0442\u0435 \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0438 \u043e\u0446\u0435\u043d\u0438\u0432\u0430\u0442\u044c \u0441\u0432\u043e\u0438 \u0444\u0438\u043b\u044c\u043c\u044b, \u0438 \u0442\u043e\u0433\u0434\u0430 \u0432\u0435\u0440\u043d\u0438\u0442\u0435\u0441\u044c \u043d\u0430\u0437\u0430\u0434, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438.",
|
||||
"MessageNoCollectionsAvailable": "\u041a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043e\u0431\u043e\u0441\u043e\u0431\u043b\u0435\u043d\u043d\u044b\u0435 \u0441\u043e\u0431\u0440\u0430\u043d\u0438\u044f \u0444\u0438\u043b\u044c\u043c\u043e\u0432, \u0441\u0435\u0440\u0438\u0430\u043b\u043e\u0432, \u0430\u043b\u044c\u0431\u043e\u043c\u043e\u0432, \u043a\u043d\u0438\u0433 \u0438 \u0438\u0433\u0440. \u041d\u0430\u0436\u043c\u0438\u0442\u0435 \u043a\u043d\u043e\u043f\u043a\u0443 \"+\", \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u043a \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0439.",
|
||||
"MessageNoPlaylistsAvailable": "\u0421\u043f\u0438\u0441\u043a\u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u043f\u0438\u0441\u043a\u043e\u0432 \u0438\u0437 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0440\u0430\u0437\u043e\u043c. \u0427\u0442\u043e\u0431\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0432\u043e \u0441\u043f\u0438\u0441\u043a\u0438, \u0449\u0435\u043b\u043a\u043d\u0438\u0442\u0435 \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043d\u043e\u043f\u043a\u043e\u0439 \u043c\u044b\u0448\u0438 \u0438\u043b\u0438 \u043a\u043e\u0441\u043d\u0438\u0442\u0435\u0441\u044c \u0438 \u0443\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0439\u0442\u0435, \u0437\u0430\u0442\u0435\u043c \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u00ab\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432\u043e \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f\u00bb.",
|
||||
"MessageNoPlaylistItemsAvailable": "\u0412 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0434\u0430\u043d\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043f\u0443\u0441\u0442.",
|
||||
"MessageNoPlaylistsAvailable": "\u041f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442\u044b (\u0441\u043f\u0438\u0441\u043a\u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f) \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u043f\u0438\u0441\u043a\u043e\u0432 \u0438\u0437 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0435\u0434\u0438\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e. \u0427\u0442\u043e\u0431\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0432\u043e \u0441\u043f\u0438\u0441\u043a\u0438, \u0449\u0435\u043b\u043a\u043d\u0438\u0442\u0435 \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043d\u043e\u043f\u043a\u043e\u0439 \u043c\u044b\u0448\u0438 \u0438\u043b\u0438 \u043a\u043e\u0441\u043d\u0438\u0442\u0435\u0441\u044c \u0438 \u0443\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0439\u0442\u0435, \u0437\u0430\u0442\u0435\u043c \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u00ab\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u043f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442\u00bb.",
|
||||
"MessageNoPlaylistItemsAvailable": "\u0412 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0434\u0430\u043d\u043d\u044b\u0439 \u043f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442 \u043f\u0443\u0441\u0442.",
|
||||
"ButtonDismiss": "\u041f\u0440\u0435\u043a\u0440\u0430\u0442\u0438\u0442\u044c",
|
||||
"ButtonEditOtherUserPreferences": "\u041f\u0440\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u0444\u0438\u043b\u044c, \u0440\u0438\u0441\u0443\u043d\u043e\u043a \u0438 \u043b\u0438\u0447\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f.",
|
||||
"LabelChannelStreamQuality": "\u041f\u0440\u0435\u0434\u043f\u043e\u0447\u0438\u0442\u0430\u0435\u043c\u043e\u0435 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u0442\u0440\u0430\u043d\u0441\u043b\u044f\u0446\u0438\u0438:",
|
||||
@ -933,7 +933,7 @@
|
||||
"LabelChannelDownloadAgeHelp": "\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c\u043e\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435 \u0441\u0442\u0430\u0440\u0448\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u0431\u0443\u0434\u0435\u0442 \u0443\u0434\u0430\u043b\u0435\u043d\u043e. \u0415\u0433\u043e \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u0442\u0440\u0430\u043d\u0441\u043b\u044f\u0446\u0438\u0438.",
|
||||
"ChannelSettingsFormHelp": "\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 \u043a\u0430\u043d\u0430\u043b\u044b (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: Trailers \u0438\u043b\u0438 Vimeo) \u0438\u0437 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430 \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u0432.",
|
||||
"ButtonOptions": "\u0412\u0430\u0440\u0438\u0430\u043d\u0442\u044b...",
|
||||
"ViewTypePlaylists": "\u0421\u043f\u0438\u0441\u043a\u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f",
|
||||
"ViewTypePlaylists": "\u041f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442\u044b",
|
||||
"ViewTypeMovies": "\u041a\u0438\u043d\u043e",
|
||||
"ViewTypeTvShows": "\u0422\u0412",
|
||||
"ViewTypeGames": "\u0418\u0433\u0440\u044b",
|
||||
@ -963,7 +963,7 @@
|
||||
"ViewTypeMovieFavorites": "\u0418\u0437\u0431\u0440\u0430\u043d\u043d\u043e\u0435",
|
||||
"ViewTypeMovieGenres": "\u0416\u0430\u043d\u0440\u044b",
|
||||
"ViewTypeMusicLatest": "\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435",
|
||||
"ViewTypeMusicPlaylists": "\u0421\u043f\u0438\u0441\u043a\u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f",
|
||||
"ViewTypeMusicPlaylists": "\u041f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442\u044b",
|
||||
"ViewTypeMusicAlbums": "\u0410\u043b\u044c\u0431\u043e\u043c\u044b",
|
||||
"ViewTypeMusicAlbumArtists": "\u0418\u0441\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u0438 \u0430\u043b\u044c\u0431\u043e\u043c\u0430",
|
||||
"HeaderOtherDisplaySettings": "\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f",
|
||||
@ -995,7 +995,7 @@
|
||||
"OptionDisplayChannelsInline": "\u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c \u043a\u0430\u043d\u0430\u043b\u044b \u0440\u044f\u0434\u043e\u043c \u0441 \u043c\u043e\u0438\u043c\u0438 \u0430\u0441\u043f\u0435\u043a\u0442\u0430\u043c\u0438.",
|
||||
"OptionDisplayChannelsInlineHelp": "\u041f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438, \u043a\u0430\u043d\u0430\u043b\u044b \u0431\u0443\u0434\u0443\u0442 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c\u0441\u044f \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0440\u044f\u0434\u043e\u043c \u0441 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0430\u0441\u043f\u0435\u043a\u0442\u0430\u043c\u0438. \u041f\u0440\u0438 \u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438, \u043e\u043d\u0438 \u0431\u0443\u0434\u0443\u0442 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c\u0441\u044f \u0432\u043d\u0443\u0442\u0440\u0438 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0430\u0441\u043f\u0435\u043a\u0442\u0430 \u00ab\u041a\u0430\u043d\u0430\u043b\u044b\u00bb.",
|
||||
"LabelDisplayCollectionsView": "\u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c \u0430\u0441\u043f\u0435\u043a\u0442 \u041a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438 \u0444\u0438\u043b\u044c\u043c\u043e\u0432",
|
||||
"LabelDisplayCollectionsViewHelp": "\u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0430\u0441\u043f\u0435\u043a\u0442 \u0434\u043b\u044f \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0439, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0445 \u0432\u0430\u043c\u0438 \u0438\u043b\u0438 \u043a \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0438\u043c\u0435\u0435\u0442\u0435 \u0434\u043e\u0441\u0442\u0443\u043f. \u0427\u0442\u043e\u0431\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044e, \u0449\u0435\u043b\u043a\u043d\u0438\u0442\u0435 \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043d\u043e\u043f\u043a\u043e\u0439 \u043c\u044b\u0448\u0438 \u0438\u043b\u0438 \u043a\u043e\u0441\u043d\u0438\u0442\u0435\u0441\u044c \u0438 \u0443\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0439\u0442\u0435 \u043b\u044e\u0431\u043e\u0439 \u0444\u0438\u043b\u044c\u043c, \u0438 \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043a \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438\".",
|
||||
"LabelDisplayCollectionsViewHelp": "\u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0430\u0441\u043f\u0435\u043a\u0442 \u0434\u043b\u044f \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0439, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0445 \u0432\u0430\u043c\u0438 \u0438\u043b\u0438 \u043a \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0438\u043c\u0435\u0435\u0442\u0435 \u0434\u043e\u0441\u0442\u0443\u043f. \u0427\u0442\u043e\u0431\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044e, \u0449\u0435\u043b\u043a\u043d\u0438\u0442\u0435 \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043d\u043e\u043f\u043a\u043e\u0439 \u043c\u044b\u0448\u0438 \u0438\u043b\u0438 \u043a\u043e\u0441\u043d\u0438\u0442\u0435\u0441\u044c \u0438 \u0443\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0439\u0442\u0435 \u043b\u044e\u0431\u043e\u0439 \u0444\u0438\u043b\u044c\u043c, \u0438 \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044e\". ",
|
||||
"LabelKodiMetadataEnableExtraThumbs": "\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c extrafanart \u0432\u043d\u0443\u0442\u0440\u044c extrathumbs",
|
||||
"LabelKodiMetadataEnableExtraThumbsHelp": "\u041f\u0440\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435 \u0440\u0438\u0441\u0443\u043d\u043a\u043e\u0432, \u0438\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0442\u044c \u0432\u043d\u0443\u0442\u0440\u044c extrafanart \u0438 extrathumbs \u0434\u043b\u044f \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u043e\u0439 Kodi.",
|
||||
"TabServices": "\u0421\u043b\u0443\u0436\u0431\u044b",
|
||||
@ -1060,8 +1060,8 @@
|
||||
"LabelContext": "\u041a\u043e\u043d\u0442\u0435\u043a\u0441\u0442:",
|
||||
"OptionContextStreaming": "\u0422\u0440\u0430\u043d\u0441\u043b\u044f\u0446\u0438\u044f",
|
||||
"OptionContextStatic": "\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044f",
|
||||
"ButtonAddToPlaylist": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043a \u0441\u043f\u0438\u0441\u043a\u0443 \u0432\u043e\u0441\u043f\u0440-\u0438\u044f",
|
||||
"TabPlaylists": "\u0421\u043f\u0438\u0441\u043a\u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f",
|
||||
"ButtonAddToPlaylist": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u043f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442",
|
||||
"TabPlaylists": "\u041f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442\u044b",
|
||||
"ButtonClose": "\u0417\u0430\u043a\u0440\u044b\u0442\u044c",
|
||||
"LabelAllLanguages": "\u0412\u0441\u0435 \u044f\u0437\u044b\u043a\u0438",
|
||||
"HeaderBrowseOnlineImages": "\u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0440\u0438\u0441\u0443\u043d\u043a\u043e\u0432 \u0432 \u0441\u0435\u0442\u0438",
|
||||
@ -1346,7 +1346,7 @@
|
||||
"ButtonTrailerReel": "\u0421\u043a\u043b\u0435\u0438\u0442\u044c \u0442\u0440\u0435\u0439\u043b\u0435\u0440\u044b",
|
||||
"HeaderTrailerReel": "\u0421\u043a\u043b\u0435\u0439\u043a\u0430 \u0442\u0440\u0435\u0439\u043b\u0435\u0440\u043e\u0432",
|
||||
"OptionPlayUnwatchedTrailersOnly": "\u0412\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0435\u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u043d\u044b\u0435 \u0442\u0440\u0435\u0439\u043b\u0435\u0440\u044b",
|
||||
"HeaderTrailerReelHelp": "\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0435 \u0441\u043a\u043b\u0435\u0439\u043a\u0443 \u0442\u0440\u0435\u0439\u043b\u0435\u0440\u043e\u0432, \u0447\u0442\u043e\u0431\u044b \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0434\u043e\u043b\u0433\u043e\u0438\u0433\u0440\u0430\u044e\u0449\u0438\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0442\u0440\u0435\u0439\u043b\u0435\u0440\u043e\u0432.",
|
||||
"HeaderTrailerReelHelp": "\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0435 \u0441\u043a\u043b\u0435\u0439\u043a\u0443 \u0442\u0440\u0435\u0439\u043b\u0435\u0440\u043e\u0432, \u0447\u0442\u043e\u0431\u044b \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0434\u043e\u043b\u0433\u043e\u0438\u0433\u0440\u0430\u044e\u0449\u0438\u0439 \u043f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442 \u0442\u0440\u0435\u0439\u043b\u0435\u0440\u043e\u0432.",
|
||||
"MessageNoTrailersFound": "\u0422\u0440\u0435\u0439\u043b\u0435\u0440\u044b \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u044b. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 \u043a\u0430\u043d\u0430\u043b \u0442\u0440\u0435\u0439\u043b\u0435\u0440\u043e\u0432, \u0447\u0442\u043e\u0431\u044b \u0443\u0441\u0438\u043b\u0438\u0442\u044c \u0441\u0432\u043e\u0438 \u043e\u0449\u0443\u0449\u0435\u043d\u0438\u044f \u043e\u0442 \u0444\u0438\u043b\u044c\u043c\u0430 \u043f\u0443\u0442\u0451\u043c \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u043e\u0431\u0440\u0430\u043d\u0438\u044f \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u0442\u0440\u0435\u0439\u043b\u0435\u0440\u043e\u0432.",
|
||||
"HeaderNewUsers": "\u041d\u043e\u0432\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438",
|
||||
"ButtonSignUp": "\u0417\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f",
|
||||
@ -1415,7 +1415,7 @@
|
||||
"LabelConversionCpuCoreLimitHelp": "\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0447\u0438\u0441\u043b\u043e \u044f\u0434\u0435\u0440 \u0426\u041f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u044b \u0432\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f.",
|
||||
"OptionEnableFullSpeedConversion": "\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u043e\u043b\u043d\u043e\u0441\u043a\u043e\u0440\u043e\u0441\u0442\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435",
|
||||
"OptionEnableFullSpeedConversionHelp": "\u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043d\u0438\u0437\u043a\u043e\u0439 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438, \u0447\u0442\u043e\u0431\u044b \u043c\u0438\u043d\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432.",
|
||||
"HeaderPlaylists": "\u0421\u043f\u0438\u0441\u043a\u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f",
|
||||
"HeaderPlaylists": "\u041f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442\u044b",
|
||||
"HeaderViewStyles": "\u0421\u0442\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043c\u0435\u0434\u0438\u0430\u043f\u0430\u043f\u043e\u043a",
|
||||
"LabelSelectViewStyles": "\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u043d\u044b\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u043b\u044f:",
|
||||
"LabelSelectViewStylesHelp": "\u041f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438, \u043c\u0435\u0434\u0438\u0430\u043f\u0430\u043f\u043a\u0438 \u0431\u0443\u0434\u0443\u0442 \u0441\u0442\u0438\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u043c\u0438, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u043c\u0438 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u041f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u043c\u043e\u0435, \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435, \u0416\u0430\u043d\u0440\u044b \u0438 \u0442.\u0434. \u041f\u0440\u0438 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438, \u043e\u043d\u0438 \u0431\u0443\u0434\u0443\u0442 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u044b \u043f\u0440\u043e\u0441\u0442\u044b\u043c\u0438 \u043f\u0430\u043f\u043a\u0430\u043c\u0438.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Einstellungen",
|
||||
"ButtonViewArtist": "Zeige Darsteller",
|
||||
"ButtonViewAlbum": "Zeige Album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "Das Passwort und die Passwort-Best\u00e4tigung m\u00fcssen \u00fcbereinstimmen.",
|
||||
"ErrorMessageUsernameInUse": "Der Benutzername wird bereits verwenden. Bitte w\u00e4hlen Sie einen neuen Namen und versuchen Sie es erneut.",
|
||||
"ErrorMessageEmailInUse": "Die Emailadresse wird bereits verwendet. Bitte verwenden Sie eine neue Emailadresse und versuchen Sie es erneut oder benutzen Sie die \"Passwort vergessen\" Funktion.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferencias",
|
||||
"ButtonViewArtist": "Ver artista",
|
||||
"ButtonViewAlbum": "Ver album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "La Contrase\u00f1a y la confirmaci\u00f3n de la contrase\u00f1a deben coincidir.",
|
||||
"ErrorMessageUsernameInUse": "El Nombre de Usuario ya esta en uso. Por favor seleccione un nuevo nombre e intente de nuevo.",
|
||||
"ErrorMessageEmailInUse": "La direcci\u00f3n de correo electr\u00f3nico ya esta en uso. Por favor ingrese un correo electr\u00f3nico nuevo e intente de nuevo, o si olvido la contrase\u00f1a use la opci\u00f3n \"Olvide mi contrase\u00f1a\".",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -801,10 +801,11 @@
|
||||
"MessageIfYouBlockedVoice": "Si vous avez supprim\u00e9 l'acc\u00e8s par commande vocale \u00e0 l'application, vous devrez reconfigurer avant de r\u00e9essayer.",
|
||||
"MessageNoItemsFound": "Aucun \u00e9l\u00e9ment trouv\u00e9",
|
||||
"ButtonManageServer": "G\u00e9rer le serveur",
|
||||
"ButtonEditSubtitles": "Edit subtitles",
|
||||
"ButtonEditSubtitles": "Modifier les sous-titres",
|
||||
"ButtonPreferences": "Pr\u00e9f\u00e9rences",
|
||||
"ButtonViewArtist": "Voir l'artiste",
|
||||
"ButtonViewAlbum": "Voir l'album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "Le mot de passe et sa confirmation doivent correspondre.",
|
||||
"ErrorMessageUsernameInUse": "Ce nom d'utilisateur est d\u00e9j\u00e0 utilis\u00e9. Veuillez en choisir un autre et r\u00e9essayer.",
|
||||
"ErrorMessageEmailInUse": "Cette adresse email est d\u00e9j\u00e0 utilis\u00e9e. Veuillez en saisir une autre et r\u00e9essayer, ou bien utiliser la fonction du mot de passe oubli\u00e9.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferenze",
|
||||
"ButtonViewArtist": "Visualizza artista",
|
||||
"ButtonViewAlbum": "Visualizza album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "La password e la password di conferma devono corrispondere.",
|
||||
"ErrorMessageUsernameInUse": "L' username \u00e8 gi\u00e0 usato. Per favore scegli un nuovo nome e riprova.",
|
||||
"ErrorMessageEmailInUse": "L'indirizzo email \u00e8 gi\u00e0 usato.Per favore inserisci un nuovo indirizzo email e riprova, o usa la funzione password dimenticata.",
|
||||
|
@ -717,6 +717,7 @@
|
||||
"MessageRefreshQueued": "Refresh queued",
|
||||
"TabDevices": "Devices",
|
||||
"TabExtras": "Extras",
|
||||
"HeaderUploadImage": "Upload Image",
|
||||
"DeviceLastUsedByUserName": "Last used by {0}",
|
||||
"HeaderDeleteDevice": "Delete Device",
|
||||
"DeleteDeviceConfirmation": "Are you sure you wish to delete this device? It will reappear the next time a user signs in with it.",
|
||||
@ -815,6 +816,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -801,10 +801,11 @@
|
||||
"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\u0434\u0430\u043d \u0431\u0430\u0441 \u0442\u0430\u0440\u0442\u0441\u0430\u04a3\u044b\u0437, \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.",
|
||||
"MessageNoItemsFound": "\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.",
|
||||
"ButtonManageServer": "\u0421\u0435\u0440\u0432\u0435\u0440\u0434\u0456 \u0431\u0430\u0441\u049b\u0430\u0440\u0443",
|
||||
"ButtonEditSubtitles": "Edit subtitles",
|
||||
"ButtonEditSubtitles": "\u0421\u0443\u0431\u0442\u0438\u0442\u0440\u043b\u0435\u0440\u0434\u0456 \u04e9\u04a3\u0434\u0435\u0443",
|
||||
"ButtonPreferences": "\u0422\u0435\u04a3\u0448\u0435\u043b\u0456\u043c\u0434\u0435\u0440",
|
||||
"ButtonViewArtist": "\u041e\u0440\u044b\u043d\u0434\u0430\u0443\u0448\u044b\u043d\u044b \u049b\u0430\u0440\u0430\u0443",
|
||||
"ButtonViewAlbum": "\u0410\u043b\u044c\u0431\u043e\u043c\u0434\u044b \u049b\u0430\u0440\u0430\u0443",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "\u049a\u04b1\u043f\u0438\u044f \u0441\u04e9\u0437 \u0431\u0435\u043d \u049a\u04b1\u043f\u0438\u044f \u0441\u04e9\u0437 \u0440\u0430\u0441\u0442\u0430\u0443 \u04e9\u0440\u0456\u0441\u0442\u0435\u0440\u0456 \u0441\u04d9\u0439\u043a\u0435\u0441 \u0431\u043e\u043b\u0443\u044b \u049b\u0430\u0436\u0435\u0442.",
|
||||
"ErrorMessageUsernameInUse": "\u041f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u0443\u0448\u044b \u0430\u0442\u044b \u04d9\u043b\u0434\u0435\u049b\u0430\u0448\u0430\u043d \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u044b\u043b\u0443\u0434\u0430. \u0416\u0430\u04a3\u0430 \u0430\u0442\u044b\u043d \u0442\u0430\u04a3\u0434\u0430\u04a3\u044b\u0437 \u0434\u0430 \u04d9\u0440\u0435\u043a\u0435\u0442\u0442\u0456 \u049b\u0430\u0439\u0442\u0430\u043b\u0430\u04a3\u044b\u0437.",
|
||||
"ErrorMessageEmailInUse": "\u042d-\u043f\u043e\u0448\u0442\u0430 \u043c\u0435\u043a\u0435\u043d\u0436\u0430\u0439\u044b \u04d9\u043b\u0434\u0435\u049b\u0430\u0448\u0430\u043d \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u044b\u043b\u0443\u0434\u0430. \u0416\u0430\u04a3\u0430 \u042d-\u043f\u043e\u0448\u0442\u0430 \u043c\u0435\u043a\u0435\u043d\u0436\u0430\u0439\u044b\u043d \u0442\u0430\u04a3\u0434\u0430\u04a3\u044b\u0437 \u0434\u0430 \u04d9\u0440\u0435\u043a\u0435\u0442\u0442\u0456 \u049b\u0430\u0439\u0442\u0430\u043b\u0430\u04a3\u044b\u0437, \u043d\u0435\u043c\u0435\u0441\u0435 \u049a\u04b1\u043f\u0438\u044f \u0441\u04e9\u0437\u0434\u0456 \u0435\u0441\u043a\u0435 \u0441\u0430\u043b\u0443 \u049b\u04b1\u0440\u0430\u043c\u0434\u0430\u0441\u044b\u043d \u043f\u0430\u0439\u0434\u0430\u043b\u0430\u043d\u044b\u04a3\u044b\u0437.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Voorkeuren",
|
||||
"ButtonViewArtist": "Bekijk artiest",
|
||||
"ButtonViewAlbum": "Bekijk album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "Het wachtwoord en de wachtwoordbevestiging moeten overeenkomen.",
|
||||
"ErrorMessageUsernameInUse": "Deze gebruikersnaam is al in gebruik. Kies een andere en probeer het opnieuw.",
|
||||
"ErrorMessageEmailInUse": "Dit emailadres is al in gebruik. Kies een ander en probeer het opnieuw, of gebruik de vergeten wachtwoord functie.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -801,10 +801,11 @@
|
||||
"MessageIfYouBlockedVoice": "Se voc\u00ea negou o acesso de voz \u00e0 app, voc\u00ea necessitar\u00e1 reconfigurar antes de tentar novamente.",
|
||||
"MessageNoItemsFound": "Nenhum item encontrado.",
|
||||
"ButtonManageServer": "Gerenciar Servidor",
|
||||
"ButtonEditSubtitles": "Edit subtitles",
|
||||
"ButtonEditSubtitles": "Editar legendas",
|
||||
"ButtonPreferences": "Prefer\u00eancias",
|
||||
"ButtonViewArtist": "Ver artista",
|
||||
"ButtonViewAlbum": "Ver \u00e1lbum",
|
||||
"ButtonEditImages": "Editar imagens",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "A senha e a confirma\u00e7\u00e3o de senha devem ser iguais.",
|
||||
"ErrorMessageUsernameInUse": "O nome do usu\u00e1rio j\u00e1 est\u00e1 em uso. Por favor, escolha um novo nome e tente novamente.",
|
||||
"ErrorMessageEmailInUse": "O endere\u00e7o de email j\u00e1 est\u00e1 em uso. Por favor, digite um novo endere\u00e7o de email e tente novamente ou use o recurso de senha esquecida.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -39,7 +39,7 @@
|
||||
"TextEnjoyBonusFeatures": "\u041f\u0440\u0438\u043e\u0431\u0440\u0435\u0442\u0438\u0442\u0435 \u0431\u043e\u043d\u0443\u0441\u043d\u044b\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b",
|
||||
"TitleLiveTV": "\u042d\u0444\u0438\u0440",
|
||||
"ButtonCancelSyncJob": "\u041e\u0442\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044e",
|
||||
"ButtonSelectView": "\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0438\u0434",
|
||||
"ButtonSelectView": "\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435",
|
||||
"TitleSync": "\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044f",
|
||||
"OptionAutomatic": "\u0410\u0432\u0442\u043e",
|
||||
"HeaderSelectDate": "\u0412\u044b\u0431\u043e\u0440 \u0434\u0430\u0442\u044b",
|
||||
@ -92,14 +92,14 @@
|
||||
"SyncJobStatusCompletedWithError": "\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441 \u043e\u0448\u0438\u0431\u043a\u0430\u043c\u0438",
|
||||
"SyncJobItemStatusReadyToTransfer": "\u0413\u043e\u0442\u043e\u0432\u043e \u043a \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0443",
|
||||
"LabelCollection": "\u041a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f",
|
||||
"HeaderAddToCollection": "\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043e \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438",
|
||||
"HeaderAddToCollection": "\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0432 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044e",
|
||||
"NewCollectionNameExample": "\u041f\u0440\u0438\u043c\u0435\u0440: \u0417\u0432\u0451\u0437\u0434\u043d\u044b\u0435 \u0432\u043e\u0439\u043d\u044b (\u041a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f)",
|
||||
"OptionSearchForInternetMetadata": "\u0418\u0441\u043a\u0430\u0442\u044c \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0438 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435",
|
||||
"LabelSelectCollection": "\u0412\u044b\u0431\u043e\u0440 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438:",
|
||||
"HeaderDevices": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430",
|
||||
"ButtonScheduledTasks": "\u041f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a...",
|
||||
"MessageItemsAdded": "\u042d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b",
|
||||
"ButtonAddToCollection": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043a\u043e \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438",
|
||||
"ButtonAddToCollection": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044e",
|
||||
"HeaderSelectCertificatePath": "\u0412\u044b\u0431\u043e\u0440 \u043f\u0443\u0442\u0438 \u043a \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0443",
|
||||
"ConfirmMessageScheduledTaskButton": "\u042d\u0442\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043e\u0431\u044b\u0447\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043a\u0430\u043a \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u0430\u044f \u0437\u0430\u0434\u0430\u0447\u0430. \u042d\u0442\u043e \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043e \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u043e\u0442\u0441\u044e\u0434\u0430. \u0427\u0442\u043e\u0431\u044b \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u0443\u044e \u0437\u0430\u0434\u0430\u0447\u0443, \u0441\u043c.:",
|
||||
"HeaderSupporterBenefit": "\u0427\u043b\u0435\u043d\u0441\u0442\u0432\u043e \u0441\u043f\u043e\u043d\u0441\u043e\u0440\u0430 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438, \u043f\u0440\u0435\u043c\u0438\u0430\u043b\u044c\u043d\u044b\u043c \u043f\u043b\u0430\u0433\u0438\u043d\u0430\u043c, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044e \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043a\u0430\u043d\u0430\u043b\u043e\u0432 \u0438 \u0442.\u0434. {0}\u0423\u0437\u043d\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435{1}.",
|
||||
@ -151,8 +151,8 @@
|
||||
"ButtonPlay": "\u0412\u043e\u0441\u043f\u0440.",
|
||||
"ButtonEdit": "\u041f\u0440\u0430\u0432\u0438\u0442\u044c",
|
||||
"ButtonQueue": "\u0412 \u043e\u0447\u0435\u0440\u0435\u0434\u044c...",
|
||||
"ButtonPlayTrailer": "\u0412\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0442\u0440\u0435\u0439\u043b\u0435\u0440",
|
||||
"ButtonPlaylist": "\u0421\u043f\u0438\u0441\u043e\u043a \u0432\u043e\u0441\u043f\u0440-\u0438\u044f...",
|
||||
"ButtonPlayTrailer": "\u0412\u043e\u0441\u043f\u0440. \u0442\u0440\u0435\u0439\u043b\u0435\u0440",
|
||||
"ButtonPlaylist": "\u041f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442...",
|
||||
"ButtonPreviousTrack": "\u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0430\u044f \u0434\u043e\u0440\u043e\u0436\u043a\u0430...",
|
||||
"LabelEnabled": "\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e",
|
||||
"LabelDisabled": "\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u043e",
|
||||
@ -425,17 +425,17 @@
|
||||
"ButtonNew": "\u0421\u043e\u0437\u0434\u0430\u0442\u044c",
|
||||
"MessageInternetExplorerWebm": "\u0414\u043b\u044f \u043b\u0443\u0447\u0448\u0435\u0433\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0432 Internet Explorer, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 \u043f\u043b\u0430\u0433\u0438\u043d \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f WebM.",
|
||||
"HeaderVideoError": "\u041e\u0448\u0438\u0431\u043a\u0430 \u0432\u0438\u0434\u0435\u043e",
|
||||
"ButtonAddToPlaylist": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043a \u0441\u043f\u0438\u0441\u043a\u0443 \u0432\u043e\u0441\u043f\u0440-\u0438\u044f",
|
||||
"HeaderAddToPlaylist": "\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a \u0441\u043f\u0438\u0441\u043a\u0443 \u0432\u043e\u0441\u043f\u0440-\u0438\u044f",
|
||||
"ButtonAddToPlaylist": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u043f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442",
|
||||
"HeaderAddToPlaylist": "\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0432 \u043f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442",
|
||||
"LabelName": "\u0418\u043c\u044f (\u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435):",
|
||||
"ButtonSubmit": "\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044c",
|
||||
"LabelSelectPlaylist": "\u0421\u043f\u0438\u0441\u043e\u043a \u0432\u043e\u0441\u043f\u0440-\u0438\u044f:",
|
||||
"OptionNewPlaylist": "\u041d\u043e\u0432\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a...",
|
||||
"LabelSelectPlaylist": "\u041f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442:",
|
||||
"OptionNewPlaylist": "\u041d\u043e\u0432\u044b\u0439 \u043f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442...",
|
||||
"MessageAddedToPlaylistSuccess": "\u041e\u041a",
|
||||
"ButtonView": "\u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c",
|
||||
"ButtonViewSeriesRecording": "\u0421\u043c. \u0437\u0430\u043f\u0438\u0441\u044c \u0441\u0435\u0440\u0438\u0430\u043b\u0430",
|
||||
"ValueOriginalAirDate": "\u0414\u0430\u0442\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u044d\u0444\u0438\u0440\u0430: {0}",
|
||||
"ButtonRemoveFromPlaylist": "\u0418\u0437\u044a\u044f\u0442\u044c \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430 \u0432\u043e\u0441\u043f\u0440-\u0438\u044f",
|
||||
"ButtonRemoveFromPlaylist": "\u0418\u0437\u044a\u044f\u0442\u044c \u0438\u0437 \u043f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442\u0430",
|
||||
"HeaderSpecials": "\u0421\u043f\u0435\u0446.",
|
||||
"HeaderTrailers": "\u0422\u0440\u0435\u0439\u043b.",
|
||||
"HeaderAudio": "\u0410\u0443\u0434\u0438\u043e",
|
||||
@ -683,7 +683,7 @@
|
||||
"WebClientTourMouseOver": "\u0417\u0430\u0434\u0435\u0440\u0436\u0438\u0442\u0435 \u043a\u0443\u0440\u0441\u043e\u0440 \u043c\u044b\u0448\u0438 \u043d\u0430\u0434 \u043b\u044e\u0431\u044b\u043c \u043f\u043e\u0441\u0442\u0435\u0440\u043e\u043c \u0434\u043b\u044f \u0431\u044b\u0441\u0442\u0440\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0432\u0430\u0436\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438",
|
||||
"WebClientTourTapHold": "\u041a\u043e\u0441\u043d\u0438\u0442\u0435\u0441\u044c \u0438 \u0443\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0439\u0442\u0435 \u0438\u043b\u0438 \u0449\u0451\u043b\u043a\u043d\u0438\u0442\u0435 \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043d\u043e\u043f\u043a\u043e\u0439 \u043c\u044b\u0448\u0438 \u043b\u044e\u0431\u043e\u0439 \u043f\u043e\u0441\u0442\u0435\u0440 \u0434\u043b\u044f \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u044e",
|
||||
"WebClientTourMetadataManager": "\u041d\u0430\u0436\u043c\u0438\u0442\u0435 \u043a\u043d\u043e\u043f\u043a\u0443 \u041f\u0440\u0430\u0432\u0438\u0442\u044c, \u0447\u0442\u043e\u0431\u044b \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0414\u0438\u0441\u043f\u0435\u0442\u0447\u0435\u0440 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0445",
|
||||
"WebClientTourPlaylists": "\u0411\u0435\u0437 \u0443\u0441\u0438\u043b\u0438\u0439 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0441\u043f\u0438\u0441\u043a\u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0438 \u0430\u0432\u0442\u043e\u043c\u0438\u043a\u0441\u044b, \u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435 \u0438\u0445 \u043d\u0430 \u043b\u044e\u0431\u043e\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435",
|
||||
"WebClientTourPlaylists": "\u0411\u0435\u0437 \u0443\u0441\u0438\u043b\u0438\u0439 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043b\u0435\u0439-\u043b\u0438\u0441\u0442\u044b (\u0441\u043f\u0438\u0441\u043a\u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f) \u0438 \u0430\u0432\u0442\u043e\u043c\u0438\u043a\u0441\u044b, \u0438 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435 \u0438\u0445 \u043d\u0430 \u043b\u044e\u0431\u043e\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435",
|
||||
"WebClientTourCollections": "\u0421\u043e\u0437\u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0444\u0438\u043b\u044c\u043c\u043e\u0432\u044b\u0435 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438, \u0447\u0442\u043e\u0431\u044b \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0442\u044b \u0432\u043c\u0435\u0441\u0442\u0435",
|
||||
"WebClientTourUserPreferences1": "\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0441\u043f\u043e\u0441\u043e\u0431, \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043c\u0435\u0434\u0438\u0430\u0442\u0435\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0432\u043e \u0432\u0441\u0435\u0445 \u0432\u0430\u0448\u0438\u0445 Emby-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445.",
|
||||
"WebClientTourUserPreferences2": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u0442\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0430\u0443\u0434\u0438\u043e \u0438 \u0441\u0443\u0431\u0442\u0438\u0442\u0440\u043e\u0432 \u0441\u0432\u043e\u0435\u0433\u043e \u044f\u0437\u044b\u043a\u0430, \u0435\u0434\u0438\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e Emby-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f",
|
||||
@ -801,10 +801,11 @@
|
||||
"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.",
|
||||
"MessageNoItemsFound": "\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.",
|
||||
"ButtonManageServer": "\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c...",
|
||||
"ButtonEditSubtitles": "Edit subtitles",
|
||||
"ButtonEditSubtitles": "\u041f\u0440\u0430\u0432\u0438\u0442\u044c \u0441\u0443\u0431\u0442\u0438\u0442\u0440\u044b",
|
||||
"ButtonPreferences": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438",
|
||||
"ButtonViewArtist": "\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044f",
|
||||
"ButtonViewAlbum": "\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0430\u043b\u044c\u0431\u043e\u043c",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "\u041f\u043e\u043b\u044f \u041f\u0430\u0440\u043e\u043b\u044c \u0438 \u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u0430\u0440\u043e\u043b\u044f \u0434\u043e\u043b\u0436\u043d\u044b \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u0442\u044c.",
|
||||
"ErrorMessageUsernameInUse": "\u0418\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0443\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f. \u041f\u043e\u0434\u0431\u0435\u0440\u0438\u0442\u0435 \u043d\u043e\u0432\u043e\u0435 \u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u0435 \u043f\u043e\u043f\u044b\u0442\u043a\u0443.",
|
||||
"ErrorMessageEmailInUse": "\u0410\u0434\u0440\u0435\u0441 \u042d-\u043f\u043e\u0447\u0442\u044b \u0443\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f. \u041f\u043e\u0434\u0431\u0435\u0440\u0438\u0442\u0435 \u043d\u043e\u0432\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 \u042d-\u043f\u043e\u0447\u0442\u044b \u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u0435 \u043f\u043e\u043f\u044b\u0442\u043a\u0443, \u0438\u043b\u0438 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435\u0441\u044c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u043c \u041d\u0430\u043f\u043e\u043c\u043d\u0438\u0442\u044c \u043f\u0430\u0440\u043e\u043b\u044c.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
@ -805,6 +805,7 @@
|
||||
"ButtonPreferences": "Preferences",
|
||||
"ButtonViewArtist": "View artist",
|
||||
"ButtonViewAlbum": "View album",
|
||||
"ButtonEditImages": "Edit images",
|
||||
"ErrorMessagePasswordNotMatchConfirm": "The password and password confirmation must match.",
|
||||
"ErrorMessageUsernameInUse": "The username is already in use. Please choose a new name and try again.",
|
||||
"ErrorMessageEmailInUse": "The email address is already in use. Please enter a new email address and try again, or use the forgot password feature.",
|
||||
|
Loading…
Reference in New Issue
Block a user