From 2ea2132740238f79136e7e398d78a9d25329c9fa Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Fri, 29 May 2020 23:32:45 +0200 Subject: [PATCH 001/285] Add barebones comic book reader --- package.json | 2 + src/bundle.js | 6 + src/components/comicsPlayer/plugin.js | 215 +++++++++++++++++++++ src/components/playback/playbackmanager.js | 6 +- src/components/pluginManager.js | 2 +- src/scripts/site.js | 4 +- webpack.common.js | 18 +- yarn.lock | 5 + 8 files changed, 252 insertions(+), 6 deletions(-) create mode 100644 src/components/comicsPlayer/plugin.js diff --git a/package.json b/package.json index 749c62d39c..aefec20d7a 100644 --- a/package.json +++ b/package.json @@ -69,6 +69,7 @@ "jellyfin-noto": "https://github.com/jellyfin/jellyfin-noto", "jquery": "^3.5.1", "jstree": "^3.3.7", + "libarchive.js": "^1.3.0", "libass-wasm": "https://github.com/jellyfin/JavascriptSubtitlesOctopus#4.0.0-jf-smarttv", "material-design-icons-iconfont": "^5.0.1", "native-promise-only": "^0.8.0-a", @@ -92,6 +93,7 @@ "src/components/autoFocuser.js", "src/components/cardbuilder/cardBuilder.js", "src/scripts/fileDownloader.js", + "src/components/comicsPlayer/plugin.js", "src/components/images/imageLoader.js", "src/components/lazyLoader/lazyLoaderIntersectionObserver.js", "src/components/playback/mediasession.js", diff --git a/src/bundle.js b/src/bundle.js index d7ba6c6a51..fd9099aaf3 100644 --- a/src/bundle.js +++ b/src/bundle.js @@ -176,3 +176,9 @@ _define('connectionManagerFactory', function () { _define('appStorage', function () { return apiclient.AppStorage; }); + +// libarchive.js +var libarchive = require('libarchive.js'); +_define('libarchive', function () { + return libarchive; +}); diff --git a/src/components/comicsPlayer/plugin.js b/src/components/comicsPlayer/plugin.js new file mode 100644 index 0000000000..43469bfed4 --- /dev/null +++ b/src/components/comicsPlayer/plugin.js @@ -0,0 +1,215 @@ +import connectionManager from 'connectionManager'; +import loading from 'loading'; +import dialogHelper from 'dialogHelper'; +import keyboardnavigation from 'keyboardnavigation'; +import appRouter from 'appRouter'; +import 'css!../slideshow/style'; +import * as libarchive from 'libarchive'; + +export class ComicsPlayer { + constructor() { + this.name = 'Comics Player'; + this.type = 'mediaplayer'; + this.id = 'comicsplayer'; + this.priority = 1; + this.imageMap = new Map(); + + this.onDialogClosed = this.onDialogClosed.bind(this); + this.onWindowKeyUp = this.onWindowKeyUp.bind(this); + } + + play(options) { + this._progress = 0; + + let elem = this.createMediaElement(); + return this.setCurrentSrc(elem, options); + } + + stop() { + this.unbindEvents(); + + let elem = this._mediaElement; + + if (elem) { + dialogHelper.close(elem); + this._mediaElement = null; + } + + // Hide loader in case player was not fully loaded yet + loading.hide(); + } + + onDialogClosed() { + this.stop(); + } + + onWindowKeyUp(e) { + let key = keyboardnavigation.getKeyName(e); + switch (key) { + case 'Escape': + this.stop(); + break; + } + } + + bindEvents() { + document.addEventListener('keyup', this.onWindowKeyUp); + } + + unbindEvents() { + document.removeEventListener('keyup', this.onWindowKeyUp); + } + + createMediaElement() { + let elem = this._mediaElement; + + if (elem) { + return elem; + } + + elem = document.getElementById('comicsPlayer'); + if (!elem) { + elem = dialogHelper.createDialog({ + exitAnimationDuration: 400, + size: 'fullscreen', + autoFocus: false, + scrollY: false, + exitAnimation: 'fadeout', + removeOnClose: true + }); + elem.id = 'bookPlayer'; + + elem.classList.add('slideshowDialog'); + + elem.innerHTML = '
'; + + this.bindEvents(); + + dialogHelper.open(elem); + } + + this._mediaElement = elem; + + return elem; + } + + setCurrentSrc(elem, options) { + let item = options.items[0]; + this._currentItem = item; + + loading.show(); + + let serverId = item.ServerId; + let apiClient = connectionManager.getApiClient(serverId); + + libarchive.Archive.init({ + workerUrl: appRouter.baseUrl() + '/libraries/worker-bundle.js' + }); + + return new Promise((resolve, reject) => { + let downloadUrl = apiClient.getItemDownloadUrl(item.Id); + const archiveSource = new ArchiveSource(downloadUrl); + var instance = this; + import('swiper').then(({default: Swiper}) => { + archiveSource.load().then(() => { + loading.hide(); + this.swiperInstance = new Swiper(elem.querySelector('.slideshowSwiperContainer'), { + direction: 'horizontal', + // Loop is disabled due to the virtual slides option not supporting it. + loop: false, + zoom: { + minRatio: 1, + toggle: true, + containerClass: 'slider-zoom-container' + }, + autoplay: false, + keyboard: { + enabled: true + }, + preloadImages: true, + slidesPerView: 1, + slidesPerColumn: 1, + initialSlide: 0, + // Virtual slides reduce memory consumption for large libraries while allowing preloading of images; + virtual: { + slides: archiveSource.urls, + cache: true, + renderSlide: instance.getImgFromUrl, + addSlidesBefore: 1, + addSlidesAfter: 1 + } + }); + }); + }); + }); + } + + getImgFromUrl(url) { + return `
+
+ +
+
`; + } + + canPlayMediaType(mediaType) { + return (mediaType || '').toLowerCase() === 'book'; + } + + canPlayItem(item) { + if (item.Path && (item.Path.endsWith('cbz') || item.Path.endsWith('cbr'))) { + return true; + } + return false; + } +} + +class ArchiveSource { + constructor(url) { + this.url = url; + this.files = []; + this.urls = []; + this.loadPromise = this.load(); + this.itemsLoaded = 0; + } + + async load() { + let res = await fetch(this.url); + if (!res.ok) { + return; + } + let blob = await res.blob(); + this.archive = await libarchive.Archive.open(blob); + this.raw = await this.archive.getFilesArray(); + this.numberOfFiles = this.raw.length; + await this.archive.extractFiles(); + + let files = await this.archive.getFilesArray(); + files.sort((a, b) => { + if (a.file.name < b.file.name) + return -1; + else + return 1; + }); + + for (let file of files) { + let url = URL.createObjectURL(file.file); + this.urls.push(url); + } + } + + getLength() { + return this.raw.length; + } + + async item(index) { + if (this.urls[index]) { + return this.urls[index]; + } + + await this.loadPromise; + return this.urls[index]; + } +} + +export default ComicsPlayer; diff --git a/src/components/playback/playbackmanager.js b/src/components/playback/playbackmanager.js index 59108cf72e..053088ef2f 100644 --- a/src/components/playback/playbackmanager.js +++ b/src/components/playback/playbackmanager.js @@ -2187,7 +2187,7 @@ define(['events', 'datetime', 'appSettings', 'itemHelper', 'pluginManager', 'pla // Only used internally self.getCurrentTicks = getCurrentTicks; - function playPhotos(items, options, user) { + function playOther(items, options, user) { var playStartIndex = options.startIndex || 0; var player = getPlayer(items[playStartIndex], options); @@ -2216,9 +2216,9 @@ define(['events', 'datetime', 'appSettings', 'itemHelper', 'pluginManager', 'pla return Promise.reject(); } - if (firstItem.MediaType === 'Photo') { + if (firstItem.MediaType === 'Photo' || firstItem.MediaType === 'Book') { - return playPhotos(items, options, user); + return playOther(items, options, user); } var apiClient = connectionManager.getApiClient(firstItem.ServerId); diff --git a/src/components/pluginManager.js b/src/components/pluginManager.js index 6cb56d767b..fd35d344bf 100644 --- a/src/components/pluginManager.js +++ b/src/components/pluginManager.js @@ -58,7 +58,7 @@ define(['events', 'globalize'], function (events, globalize) { return new Promise(function (resolve, reject) { require([pluginSpec], (pluginFactory) => { - var plugin = new pluginFactory(); + var plugin = pluginFactory.default ? new pluginFactory.default() : new pluginFactory(); // See if it's already installed var existing = instance.pluginsList.filter(function (p) { diff --git a/src/scripts/site.js b/src/scripts/site.js index aeb651d888..2e83928f97 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -490,6 +490,7 @@ var AppInfo = {}; 'components/playback/experimentalwarnings', 'components/htmlAudioPlayer/plugin', 'components/htmlVideoPlayer/plugin', + 'components/comicsPlayer/plugin', 'components/photoPlayer/plugin', 'components/youtubeplayer/plugin', 'components/backdropScreensaver/plugin', @@ -701,7 +702,8 @@ var AppInfo = {}; 'events', 'credentialprovider', 'connectionManagerFactory', - 'appStorage' + 'appStorage', + 'comicReader' ] }, urlArgs: urlArgs, diff --git a/webpack.common.js b/webpack.common.js index 03beb63a73..2cc8478d86 100644 --- a/webpack.common.js +++ b/webpack.common.js @@ -1,10 +1,12 @@ const path = require('path'); const CopyPlugin = require('copy-webpack-plugin'); +const WorkerPlugin = require('worker-plugin'); const Assets = [ 'alameda/alameda.js', 'native-promise-only/npo.js', + 'libarchive.js/dist/worker-bundle.js', 'libass-wasm/dist/js/subtitles-octopus-worker.js', 'libass-wasm/dist/js/subtitles-octopus-worker.data', 'libass-wasm/dist/js/subtitles-octopus-worker.wasm', @@ -13,6 +15,11 @@ const Assets = [ 'libass-wasm/dist/js/subtitles-octopus-worker-legacy.js.mem' ]; +const LibarchiveWasm = [ + 'libarchive.js/dist/wasm-gen/libarchive.js', + 'libarchive.js/dist/wasm-gen/libarchive.wasm' +]; + module.exports = { context: path.resolve(__dirname, 'src'), entry: './bundle.js', @@ -34,6 +41,15 @@ module.exports = { to: path.resolve(__dirname, './dist/libraries') }; }) - ) + ), + new CopyPlugin( + LibarchiveWasm.map(asset => { + return { + from: path.resolve(__dirname, `./node_modules/${asset}`), + to: path.resolve(__dirname, './dist/libraries/wasm-gen/') + }; + }) + ), + new WorkerPlugin() ] }; diff --git a/yarn.lock b/yarn.lock index 20fdef5de1..5b8df85f45 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6783,6 +6783,11 @@ levn@^0.3.0, levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" +libarchive.js@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/libarchive.js/-/libarchive.js-1.3.0.tgz#18c42c6b4ce727a02359c90769e4e454cf3743cd" + integrity sha512-EkQfRXt9DhWwj6BnEA2TNpOf4jTnzSTUPGgE+iFxcdNqjktY8GitbDeHnx8qZA0/IukNyyBUR3oQKRdYkO+HFg== + "libass-wasm@https://github.com/jellyfin/JavascriptSubtitlesOctopus#4.0.0-jf-smarttv": version "4.0.0" resolved "https://github.com/jellyfin/JavascriptSubtitlesOctopus#58e9a3f1a7f7883556ee002545f445a430120639" From 48899bead2a0c1e53eb518e45f6e41f53496b2c3 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sat, 1 Aug 2020 14:48:48 +0200 Subject: [PATCH 002/285] Update Swiper to 6.1.1 --- package.json | 2 +- src/bundle.js | 4 ++-- yarn.lock | 30 +++++++++++++++--------------- 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/package.json b/package.json index 17d175b7e7..b91d1004f6 100644 --- a/package.json +++ b/package.json @@ -78,7 +78,7 @@ "resize-observer-polyfill": "^1.5.1", "screenfull": "^5.0.2", "sortablejs": "^1.10.2", - "swiper": "^5.4.5", + "swiper": "^6.1.1", "webcomponents.js": "^0.7.24", "whatwg-fetch": "^3.2.0" }, diff --git a/src/bundle.js b/src/bundle.js index ae2a59f0d5..3c21ed66a6 100644 --- a/src/bundle.js +++ b/src/bundle.js @@ -60,8 +60,8 @@ _define('resize-observer-polyfill', function() { }); // swiper -var swiper = require('swiper/js/swiper'); -require('swiper/css/swiper.min.css'); +var swiper = require('swiper/swiper-bundle'); +require('swiper/swiper-bundle.css'); _define('swiper', function() { return swiper; }); diff --git a/yarn.lock b/yarn.lock index 09181bfc78..ef66f04419 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3510,12 +3510,12 @@ dom-serializer@0: domelementtype "^2.0.1" entities "^2.0.0" -dom7@^2.1.5: - version "2.1.5" - resolved "https://registry.yarnpkg.com/dom7/-/dom7-2.1.5.tgz#a79411017800b31d8400070cdaebbfc92c1f6377" - integrity sha512-xnhwVgyOh3eD++/XGtH+5qBwYTgCm0aW91GFgPJ3XG+jlsRLyJivnbP0QmUBFhI+Oaz9FV0s7cxgXHezwOEBYA== +dom7@^3.0.0-alpha.7: + version "3.0.0-alpha.7" + resolved "https://registry.yarnpkg.com/dom7/-/dom7-3.0.0-alpha.7.tgz#3b4ba156a83fa37fb3fa34b8ab40a1a41a56feb1" + integrity sha512-3epkQPsKsbk2Dixqqgm2DT/KzhiAPByjDK7emu6owwFLbM5UoiqWKgdsH+6PpMEgoeR6Ex/bW1UbOe0FWZU0zg== dependencies: - ssr-window "^2.0.0" + ssr-window "^3.0.0-alpha.1" domain-browser@^1.1.1: version "1.2.0" @@ -10462,10 +10462,10 @@ sshpk@^1.7.0: safer-buffer "^2.0.2" tweetnacl "~0.14.0" -ssr-window@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ssr-window/-/ssr-window-2.0.0.tgz#98c301aef99523317f8d69618f0010791096efc4" - integrity sha512-NXzN+/HPObKAx191H3zKlYomE5WrVIkoCB5IaSdvKokxTpjBdWfr0RaP+1Z5KOfDT0ZVz+2tdtiBkhsEQ9p+0A== +ssr-window@^3.0.0-alpha.1, ssr-window@^3.0.0-alpha.4: + version "3.0.0-alpha.4" + resolved "https://registry.yarnpkg.com/ssr-window/-/ssr-window-3.0.0-alpha.4.tgz#0c69a18c4305ecccdd8e11596155ca07b635f345" + integrity sha512-+dBRP/pZ+VyITxTzD0lMDzDwN/BmfUl8xi2e6t5Nz4+FqUphfcBLB1OOUSYCRNFB25rD3c8AJRYpY5rHTbL+kg== ssri@^6.0.1: version "6.0.1" @@ -11038,13 +11038,13 @@ svgo@^1.0.0, svgo@^1.3.2: unquote "~1.1.1" util.promisify "~1.0.0" -swiper@^5.4.5: - version "5.4.5" - resolved "https://registry.yarnpkg.com/swiper/-/swiper-5.4.5.tgz#a350f654bf68426dbb651793824925512d223c0f" - integrity sha512-7QjA0XpdOmiMoClfaZ2lYN6ICHcMm72LXiY+NF4fQLFidigameaofvpjEEiTQuw3xm5eksG5hzkaRsjQX57vtA== +swiper@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/swiper/-/swiper-6.1.1.tgz#1246f28557dd33968dc43e926bc6e9e9a7b3850d" + integrity sha512-w6rmEUnpuSWvzuIDJ+nTi7YQ4+pvr++zUnBO2VxkzOZbzQzcMNKNw1yj0RFEok682IHDPCs3LXSl8zSQ+zDEdw== dependencies: - dom7 "^2.1.5" - ssr-window "^2.0.0" + dom7 "^3.0.0-alpha.7" + ssr-window "^3.0.0-alpha.4" symbol-observable@1.0.1: version "1.0.1" From b5c1cbb5b39b59324666d1d2cdc5cd68d0a463e8 Mon Sep 17 00:00:00 2001 From: Cameron Date: Sun, 2 Aug 2020 12:16:14 +0100 Subject: [PATCH 003/285] Remove ailaising this in music --- src/controllers/itemDetails/index.js | 2 -- src/controllers/music/musicalbums.js | 37 ++++++++++---------- src/controllers/music/musicartists.js | 41 +++++++++++------------ src/controllers/music/musicgenres.js | 23 ++++++------- src/controllers/music/musicplaylists.js | 7 ++-- src/controllers/music/musicrecommended.js | 13 ++++--- 6 files changed, 58 insertions(+), 65 deletions(-) diff --git a/src/controllers/itemDetails/index.js b/src/controllers/itemDetails/index.js index c65ce39d84..df2855d69a 100644 --- a/src/controllers/itemDetails/index.js +++ b/src/controllers/itemDetails/index.js @@ -29,8 +29,6 @@ import 'emby-select'; /* eslint-disable indent */ - loading = loading.default || loading; - function getPromise(apiClient, params) { const id = params.id; diff --git a/src/controllers/music/musicalbums.js b/src/controllers/music/musicalbums.js index 7d03c91073..55c66aee66 100644 --- a/src/controllers/music/musicalbums.js +++ b/src/controllers/music/musicalbums.js @@ -69,8 +69,8 @@ import 'emby-itemscontainer'; return savedQueryKey; } - function onViewStyleChange() { - const viewStyle = self.getCurrentViewStyle(); + const onViewStyleChange = () => { + const viewStyle = this.getCurrentViewStyle(); const itemsContainer = tabContent.querySelector('.itemsContainer'); if (viewStyle == 'List') { @@ -84,11 +84,11 @@ import 'emby-itemscontainer'; itemsContainer.innerHTML = ''; } - function reloadItems(page) { + const reloadItems = (page) => { loading.show(); isLoading = true; const query = getQuery(); - ApiClient.getItems(ApiClient.getCurrentUserId(), query).then(function (result) { + ApiClient.getItems(ApiClient.getCurrentUserId(), query).then((result) => { function onNextPageClick() { if (isLoading) { return; @@ -124,7 +124,7 @@ import 'emby-itemscontainer'; sortButton: false, filterButton: false }); - const viewStyle = self.getCurrentViewStyle(); + const viewStyle = this.getCurrentViewStyle(); if (viewStyle == 'List') { html = listView.getListViewHtml({ items: result.Items, @@ -184,17 +184,16 @@ import 'emby-itemscontainer'; }); } - function updateFilterControls(tabContent) { + const updateFilterControls = (tabContent) => { const query = getQuery(); - self.alphaPicker.value(query.NameStartsWithOrGreater); + this.alphaPicker.value(query.NameStartsWithOrGreater); } let savedQueryKey; let pageData; - const self = this; let isLoading = false; - self.showFilterMenu = function () { + this.showFilterMenu = function () { import('components/filterdialog/filterdialog').then(({default: filterDialogFactory}) => { const filterDialog = new filterDialogFactory({ query: getQuery(), @@ -209,11 +208,11 @@ import 'emby-itemscontainer'; }); }; - self.getCurrentViewStyle = function () { + this.getCurrentViewStyle = function () { return getPageData().view; }; - function initPage(tabContent) { + const initPage = (tabContent) => { const alphaPickerElement = tabContent.querySelector('.alphaPicker'); const itemsContainer = tabContent.querySelector('.itemsContainer'); @@ -224,7 +223,7 @@ import 'emby-itemscontainer'; query.StartIndex = 0; reloadItems(tabContent); }); - self.alphaPicker = new AlphaPicker({ + this.alphaPicker = new AlphaPicker({ element: alphaPickerElement, valueChangeEvent: 'click' }); @@ -233,10 +232,10 @@ import 'emby-itemscontainer'; alphaPickerElement.classList.add('alphaPicker-fixed-right'); itemsContainer.classList.add('padded-right-withalphapicker'); - tabContent.querySelector('.btnFilter').addEventListener('click', function () { - self.showFilterMenu(); + tabContent.querySelector('.btnFilter').addEventListener('click', () => { + this.showFilterMenu(); }); - tabContent.querySelector('.btnSort').addEventListener('click', function (e) { + tabContent.querySelector('.btnSort').addEventListener('click', (e) => { libraryBrowser.showSortMenu({ items: [{ name: globalize.translate('OptionNameSort'), @@ -269,8 +268,8 @@ import 'emby-itemscontainer'; }); }); const btnSelectView = tabContent.querySelector('.btnSelectView'); - btnSelectView.addEventListener('click', function (e) { - libraryBrowser.showLayoutMenu(e.target, self.getCurrentViewStyle(), 'List,Poster,PosterCard'.split(',')); + btnSelectView.addEventListener('click', (e) => { + libraryBrowser.showLayoutMenu(e.target, this.getCurrentViewStyle(), 'List,Poster,PosterCard'.split(',')); }); btnSelectView.addEventListener('layoutchange', function (e) { const viewStyle = e.detail.viewStyle; @@ -287,12 +286,12 @@ import 'emby-itemscontainer'; initPage(tabContent); onViewStyleChange(); - self.renderTab = function () { + this.renderTab = function () { reloadItems(tabContent); updateFilterControls(tabContent); }; - self.destroy = function () {}; + this.destroy = function () {}; } /* eslint-enable indent */ diff --git a/src/controllers/music/musicartists.js b/src/controllers/music/musicartists.js index 23e0bbd459..713f66a72a 100644 --- a/src/controllers/music/musicartists.js +++ b/src/controllers/music/musicartists.js @@ -45,16 +45,16 @@ import 'emby-itemscontainer'; return getPageData(context).query; } - function getSavedQueryKey(context) { + const getSavedQueryKey = (context) => { if (!context.savedQueryKey) { - context.savedQueryKey = libraryBrowser.getSavedQueryKey(self.mode); + context.savedQueryKey = libraryBrowser.getSavedQueryKey(this.mode); } return context.savedQueryKey; } - function onViewStyleChange() { - const viewStyle = self.getCurrentViewStyle(); + const onViewStyleChange = () => { + const viewStyle = this.getCurrentViewStyle(); const itemsContainer = tabContent.querySelector('.itemsContainer'); if (viewStyle == 'List') { @@ -68,14 +68,14 @@ import 'emby-itemscontainer'; itemsContainer.innerHTML = ''; } - function reloadItems(page) { + const reloadItems = (page) => { loading.show(); isLoading = true; const query = getQuery(page); - const promise = self.mode == 'albumartists' ? + const promise = this.mode == 'albumartists' ? ApiClient.getAlbumArtists(ApiClient.getCurrentUserId(), query) : ApiClient.getArtists(ApiClient.getCurrentUserId(), query); - promise.then(function (result) { + promise.then((result) => { function onNextPageClick() { if (isLoading) { return; @@ -111,7 +111,7 @@ import 'emby-itemscontainer'; sortButton: false, filterButton: false }); - const viewStyle = self.getCurrentViewStyle(); + const viewStyle = this.getCurrentViewStyle(); if (viewStyle == 'List') { html = listView.getListViewHtml({ items: result.Items, @@ -167,20 +167,19 @@ import 'emby-itemscontainer'; }); } - function updateFilterControls(tabContent) { + const updateFilterControls = (tabContent) => { const query = getQuery(tabContent); - self.alphaPicker.value(query.NameStartsWithOrGreater); + this.alphaPicker.value(query.NameStartsWithOrGreater); } - const self = this; const data = {}; let isLoading = false; - self.showFilterMenu = function () { + this.showFilterMenu = function () { import('components/filterdialog/filterdialog').then(({default: filterDialogFactory}) => { const filterDialog = new filterDialogFactory({ query: getQuery(tabContent), - mode: self.mode, + mode: this.mode, serverId: ApiClient.serverId() }); events.on(filterDialog, 'filterchange', function () { @@ -191,11 +190,11 @@ import 'emby-itemscontainer'; }); }; - self.getCurrentViewStyle = function () { + this.getCurrentViewStyle = function () { return getPageData(tabContent).view; }; - function initPage(tabContent) { + const initPage = (tabContent) => { const alphaPickerElement = tabContent.querySelector('.alphaPicker'); const itemsContainer = tabContent.querySelector('.itemsContainer'); @@ -206,7 +205,7 @@ import 'emby-itemscontainer'; query.StartIndex = 0; reloadItems(tabContent); }); - self.alphaPicker = new AlphaPicker({ + this.alphaPicker = new AlphaPicker({ element: alphaPickerElement, valueChangeEvent: 'click' }); @@ -215,12 +214,12 @@ import 'emby-itemscontainer'; alphaPickerElement.classList.add('alphaPicker-fixed-right'); itemsContainer.classList.add('padded-right-withalphapicker'); - tabContent.querySelector('.btnFilter').addEventListener('click', function () { - self.showFilterMenu(); + tabContent.querySelector('.btnFilter').addEventListener('click', () => { + this.showFilterMenu(); }); const btnSelectView = tabContent.querySelector('.btnSelectView'); btnSelectView.addEventListener('click', function (e) { - libraryBrowser.showLayoutMenu(e.target, self.getCurrentViewStyle(), 'List,Poster,PosterCard'.split(',')); + libraryBrowser.showLayoutMenu(e.target, this.getCurrentViewStyle(), 'List,Poster,PosterCard'.split(',')); }); btnSelectView.addEventListener('layoutchange', function (e) { const viewStyle = e.detail.viewStyle; @@ -235,12 +234,12 @@ import 'emby-itemscontainer'; initPage(tabContent); onViewStyleChange(); - self.renderTab = function () { + this.renderTab = function () { reloadItems(tabContent); updateFilterControls(tabContent); }; - self.destroy = function () {}; + this.destroy = function () {}; } /* eslint-enable indent */ diff --git a/src/controllers/music/musicgenres.js b/src/controllers/music/musicgenres.js index 29e0d888e4..b018a270fb 100644 --- a/src/controllers/music/musicgenres.js +++ b/src/controllers/music/musicgenres.js @@ -42,11 +42,11 @@ import loading from 'loading'; return ApiClient.getGenres(ApiClient.getCurrentUserId(), query); } - function reloadItems(context, promise) { + const reloadItems = (context, promise) => { const query = getQuery(); - promise.then(function (result) { + promise.then((result) => { let html = ''; - const viewStyle = self.getCurrentViewStyle(); + const viewStyle = this.getCurrentViewStyle(); if (viewStyle == 'Thumb') { html = cardBuilder.getCardsHtml({ @@ -99,35 +99,34 @@ import loading from 'loading'; } function fullyReload() { - self.preRender(); - self.renderTab(); + this.preRender(); + this.renderTab(); } - const self = this; const data = {}; - self.getViewStyles = function () { + this.getViewStyles = function () { return 'Poster,PosterCard,Thumb,ThumbCard'.split(','); }; - self.getCurrentViewStyle = function () { + this.getCurrentViewStyle = function () { return getPageData().view; }; - self.setCurrentViewStyle = function (viewStyle) { + this.setCurrentViewStyle = function (viewStyle) { getPageData().view = viewStyle; libraryBrowser.saveViewSetting(getSavedQueryKey(), viewStyle); fullyReload(); }; - self.enableViewSelection = true; + this.enableViewSelection = true; let promise; - self.preRender = function () { + this.preRender = function () { promise = getPromise(); }; - self.renderTab = function () { + this.renderTab = function () { reloadItems(tabContent, promise); }; } diff --git a/src/controllers/music/musicplaylists.js b/src/controllers/music/musicplaylists.js index befeafcf4c..67e6a959eb 100644 --- a/src/controllers/music/musicplaylists.js +++ b/src/controllers/music/musicplaylists.js @@ -69,20 +69,19 @@ import loading from 'loading'; }); } - const self = this; const data = {}; - self.getCurrentViewStyle = function () { + this.getCurrentViewStyle = function () { return getPageData().view; }; let promise; - self.preRender = function () { + this.preRender = function () { promise = getPromise(); }; - self.renderTab = function () { + this.renderTab = function () { reloadItems(tabContent, promise); }; } diff --git a/src/controllers/music/musicrecommended.js b/src/controllers/music/musicrecommended.js index db7dac9547..df10d828bf 100644 --- a/src/controllers/music/musicrecommended.js +++ b/src/controllers/music/musicrecommended.js @@ -267,7 +267,7 @@ import 'flexStyles'; mainTabsManager.setTabs(view, currentTabIndex, getTabs, getTabContainers, onBeforeTabChange, onTabChange); } - function getTabController(page, index, callback) { + const getTabController = (page, index, callback) => { let depends; switch (index) { @@ -306,7 +306,7 @@ import 'flexStyles'; if (index == 0) { tabContent = view.querySelector(".pageTabContent[data-index='" + index + "']"); - self.tabContent = tabContent; + this.tabContent = tabContent; } let controller = tabControllers[index]; @@ -315,7 +315,7 @@ import 'flexStyles'; tabContent = view.querySelector(".pageTabContent[data-index='" + index + "']"); if (index === 0) { - controller = self; + controller = this; } else if (index === 7) { controller = new controllerFactory(view, tabContent, { collectionType: 'music', @@ -367,10 +367,9 @@ import 'flexStyles'; } } - var self = this; - var currentTabIndex = parseInt(params.tab || getDefaultTabIndex(params.topParentId)); + let currentTabIndex = parseInt(params.tab || getDefaultTabIndex(params.topParentId)); - self.initTab = function () { + this.initTab = function () { const tabContent = view.querySelector(".pageTabContent[data-index='0']"); const containers = tabContent.querySelectorAll('.itemsContainer'); @@ -379,7 +378,7 @@ import 'flexStyles'; } }; - self.renderTab = function () { + this.renderTab = function () { reload(); }; From 404bdc12dfc847723199e6df1d186d71fc3c2649 Mon Sep 17 00:00:00 2001 From: Cameron Date: Sun, 2 Aug 2020 19:13:13 +0100 Subject: [PATCH 004/285] lint --- src/components/imageeditor/imageeditor.js | 2 -- src/controllers/livetvsettings.js | 2 -- src/controllers/music/musicalbums.js | 8 ++++---- src/controllers/music/musicartists.js | 10 +++++----- src/controllers/music/musicgenres.js | 2 +- src/controllers/music/musicrecommended.js | 2 +- 6 files changed, 11 insertions(+), 15 deletions(-) diff --git a/src/components/imageeditor/imageeditor.js b/src/components/imageeditor/imageeditor.js index 166ebb2245..46e2dae999 100644 --- a/src/components/imageeditor/imageeditor.js +++ b/src/components/imageeditor/imageeditor.js @@ -19,8 +19,6 @@ import 'css!./imageeditor'; const enableFocusTransform = !browser.slow && !browser.edge; - loading = loading.default || loading; - let currentItem; let hasChanges = false; diff --git a/src/controllers/livetvsettings.js b/src/controllers/livetvsettings.js index 8c296cdd3c..29ec4a10a5 100644 --- a/src/controllers/livetvsettings.js +++ b/src/controllers/livetvsettings.js @@ -3,8 +3,6 @@ import loading from 'loading'; import globalize from 'globalize'; import 'emby-button'; -loading = loading.default || loading; - function loadPage(page, config) { $('.liveTvSettingsForm', page).show(); $('.noLiveTvServices', page).hide(); diff --git a/src/controllers/music/musicalbums.js b/src/controllers/music/musicalbums.js index 55c66aee66..7ea8fa254a 100644 --- a/src/controllers/music/musicalbums.js +++ b/src/controllers/music/musicalbums.js @@ -82,7 +82,7 @@ import 'emby-itemscontainer'; } itemsContainer.innerHTML = ''; - } + }; const reloadItems = (page) => { loading.show(); @@ -182,12 +182,12 @@ import 'emby-itemscontainer'; autoFocuser.autoFocus(tabContent); }); }); - } + }; const updateFilterControls = (tabContent) => { const query = getQuery(); this.alphaPicker.value(query.NameStartsWithOrGreater); - } + }; let savedQueryKey; let pageData; @@ -281,7 +281,7 @@ import 'emby-itemscontainer'; }); tabContent.querySelector('.btnPlayAll').addEventListener('click', playAll); tabContent.querySelector('.btnShuffle').addEventListener('click', shuffle); - } + }; initPage(tabContent); onViewStyleChange(); diff --git a/src/controllers/music/musicartists.js b/src/controllers/music/musicartists.js index 713f66a72a..32e0a22a07 100644 --- a/src/controllers/music/musicartists.js +++ b/src/controllers/music/musicartists.js @@ -51,7 +51,7 @@ import 'emby-itemscontainer'; } return context.savedQueryKey; - } + }; const onViewStyleChange = () => { const viewStyle = this.getCurrentViewStyle(); @@ -66,7 +66,7 @@ import 'emby-itemscontainer'; } itemsContainer.innerHTML = ''; - } + }; const reloadItems = (page) => { loading.show(); @@ -165,12 +165,12 @@ import 'emby-itemscontainer'; autoFocuser.autoFocus(tabContent); }); }); - } + }; const updateFilterControls = (tabContent) => { const query = getQuery(tabContent); this.alphaPicker.value(query.NameStartsWithOrGreater); - } + }; const data = {}; let isLoading = false; @@ -229,7 +229,7 @@ import 'emby-itemscontainer'; onViewStyleChange(); reloadItems(tabContent); }); - } + }; initPage(tabContent); onViewStyleChange(); diff --git a/src/controllers/music/musicgenres.js b/src/controllers/music/musicgenres.js index b018a270fb..2cd9e2114b 100644 --- a/src/controllers/music/musicgenres.js +++ b/src/controllers/music/musicgenres.js @@ -96,7 +96,7 @@ import loading from 'loading'; autoFocuser.autoFocus(context); }); }); - } + }; function fullyReload() { this.preRender(); diff --git a/src/controllers/music/musicrecommended.js b/src/controllers/music/musicrecommended.js index df10d828bf..53c9440750 100644 --- a/src/controllers/music/musicrecommended.js +++ b/src/controllers/music/musicrecommended.js @@ -339,7 +339,7 @@ import 'flexStyles'; callback(controller); }); - } + }; function preLoadTab(page, index) { getTabController(page, index, function (controller) { From 3c482cc9d8922049a32cc0d378ba68642fb76837 Mon Sep 17 00:00:00 2001 From: Supergamer1337 Date: Mon, 3 Aug 2020 13:11:23 +0200 Subject: [PATCH 005/285] Added overlay and play functionality. Co-authored-by: Esaias Tilly --- src/controllers/itemDetails/index.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/controllers/itemDetails/index.js b/src/controllers/itemDetails/index.js index df2855d69a..51a08b579c 100644 --- a/src/controllers/itemDetails/index.js +++ b/src/controllers/itemDetails/index.js @@ -1,5 +1,6 @@ import loading from 'loading'; import appRouter from 'appRouter'; +import itemShortcuts from 'itemShortcuts'; import layoutManager from 'layoutManager'; import connectionManager from 'connectionManager'; import * as userSettings from 'userSettings'; @@ -757,8 +758,8 @@ import 'emby-select'; overlayText: false, transition: false, disableIndicators: true, - disableHoverMenu: true, overlayPlayButton: true, + action: 'play', width: dom.getWindowSize().innerWidth * 0.25 }); @@ -1894,6 +1895,10 @@ import 'emby-select'; playCurrentItem(this, this.getAttribute('data-mode')); } + function onPosterClick(e) { + itemShortcuts.onClick.call(view.querySelector('.detailImageContainer'), e); + } + function onInstantMixClick() { playbackManager.instantMix(currentItem); } @@ -1980,6 +1985,7 @@ import 'emby-select'; bindAll(view, '.btnCancelSeriesTimer', 'click', onCancelSeriesTimerClick); bindAll(view, '.btnCancelTimer', 'click', onCancelTimerClick); bindAll(view, '.btnDownload', 'click', onDownloadClick); + view.querySelector('.detailImageContainer').addEventListener('click', onPosterClick); view.querySelector('.trackSelections').addEventListener('submit', onTrackSelectionsSubmit); view.querySelector('.btnSplitVersions').addEventListener('click', function () { splitVersions(self, view, apiClient, params); From 84b9dc95f66237bfbeac58c9c7eff8114c4c8c27 Mon Sep 17 00:00:00 2001 From: Cameron Date: Wed, 5 Aug 2020 10:13:11 +0100 Subject: [PATCH 006/285] Migration of recording editor and fields to ES6 modules --- package.json | 2 + .../recordingcreator/recordingcreator.js | 2 +- .../recordingcreator/recordingeditor.js | 275 ++++++------ .../recordingcreator/recordingfields.js | 402 +++++++++--------- 4 files changed, 353 insertions(+), 328 deletions(-) diff --git a/package.json b/package.json index 8408217bf3..b38116cc5b 100644 --- a/package.json +++ b/package.json @@ -153,6 +153,8 @@ "src/components/playmenu.js", "src/components/prompt/prompt.js", "src/components/refreshdialog/refreshdialog.js", + "src/components/recordingcreator/recordingeditor.js", + "src/components/recordingcreator/recordingfields.js", "src/components/sanatizefilename.js", "src/components/scrollManager.js", "src/plugins/htmlVideoPlayer/plugin.js", diff --git a/src/components/recordingcreator/recordingcreator.js b/src/components/recordingcreator/recordingcreator.js index ca5c475829..511ba00fcd 100644 --- a/src/components/recordingcreator/recordingcreator.js +++ b/src/components/recordingcreator/recordingcreator.js @@ -168,7 +168,7 @@ define(['dialogHelper', 'globalize', 'layoutManager', 'mediaInfo', 'apphost', 'c reload(dlg, itemId, serverId); - currentRecordingFields = new recordingFields({ + currentRecordingFields = new recordingFields.default({ parent: dlg.querySelector('.recordingFields'), programId: itemId, serverId: serverId diff --git a/src/components/recordingcreator/recordingeditor.js b/src/components/recordingcreator/recordingeditor.js index 2086129a9e..047d491c02 100644 --- a/src/components/recordingcreator/recordingeditor.js +++ b/src/components/recordingcreator/recordingeditor.js @@ -1,147 +1,160 @@ -define(['dialogHelper', 'globalize', 'layoutManager', 'mediaInfo', 'apphost', 'connectionManager', 'require', 'loading', 'scrollHelper', 'imageLoader', 'scrollStyles', 'emby-button', 'emby-collapse', 'emby-input', 'paper-icon-button-light', 'css!./../formdialog', 'css!./recordingcreator', 'material-icons', 'flexStyles'], function (dialogHelper, globalize, layoutManager, mediaInfo, appHost, connectionManager, require, loading, scrollHelper, imageLoader) { - 'use strict'; +import dialogHelper from 'dialogHelper'; +import globalize from 'globalize'; +import layoutManager from 'layoutManager'; +import connectionManager from 'connectionManager'; +import require from 'require'; +import loading from 'loading'; +import scrollHelper from 'scrollHelper'; +import 'scrollStyles'; +import 'emby-button'; +import 'emby-collapse'; +import 'emby-input'; +import 'paper-icon-button-light'; +import 'css!./../formdialog'; +import 'css!./recordingcreator'; +import 'material-icons'; +import 'flexStyles'; - loading = loading.default || loading; +/*eslint prefer-const: "error"*/ - var currentDialog; - var recordingDeleted = false; - var currentItemId; - var currentServerId; - var currentResolve; +let currentDialog; +let recordingDeleted = false; +let currentItemId; +let currentServerId; +let currentResolve; - function deleteTimer(apiClient, timerId) { - return new Promise(function (resolve, reject) { - require(['recordingHelper'], function (recordingHelper) { - recordingHelper.cancelTimerWithConfirmation(timerId, apiClient.serverId()).then(resolve, reject); - }); +function deleteTimer(apiClient, timerId) { + return new Promise(function (resolve, reject) { + require(['recordingHelper'], function (recordingHelper) { + recordingHelper.cancelTimerWithConfirmation(timerId, apiClient.serverId()).then(resolve, reject); }); - } + }); +} - function renderTimer(context, item, apiClient) { - context.querySelector('#txtPrePaddingMinutes').value = item.PrePaddingSeconds / 60; - context.querySelector('#txtPostPaddingMinutes').value = item.PostPaddingSeconds / 60; +function renderTimer(context, item, apiClient) { + context.querySelector('#txtPrePaddingMinutes').value = item.PrePaddingSeconds / 60; + context.querySelector('#txtPostPaddingMinutes').value = item.PostPaddingSeconds / 60; + loading.hide(); +} + +function closeDialog(isDeleted) { + recordingDeleted = isDeleted; + + dialogHelper.close(currentDialog); +} + +function onSubmit(e) { + const form = this; + + const apiClient = connectionManager.getApiClient(currentServerId); + + apiClient.getLiveTvTimer(currentItemId).then(function (item) { + item.PrePaddingSeconds = form.querySelector('#txtPrePaddingMinutes').value * 60; + item.PostPaddingSeconds = form.querySelector('#txtPostPaddingMinutes').value * 60; + apiClient.updateLiveTvTimer(item).then(currentResolve); + }); + + e.preventDefault(); + + // Disable default form submission + return false; +} + +function init(context) { + context.querySelector('.btnCancel').addEventListener('click', function () { + closeDialog(false); + }); + + context.querySelector('.btnCancelRecording').addEventListener('click', function () { + const apiClient = connectionManager.getApiClient(currentServerId); + deleteTimer(apiClient, currentItemId).then(function () { + closeDialog(true); + }); + }); + + context.querySelector('form').addEventListener('submit', onSubmit); +} + +function reload(context, id) { + loading.show(); + currentItemId = id; + + const apiClient = connectionManager.getApiClient(currentServerId); + apiClient.getLiveTvTimer(id).then(function (result) { + renderTimer(context, result, apiClient); loading.hide(); - } + }); +} - function closeDialog(isDeleted) { - recordingDeleted = isDeleted; - - dialogHelper.close(currentDialog); - } - - function onSubmit(e) { - var form = this; - - var apiClient = connectionManager.getApiClient(currentServerId); - - apiClient.getLiveTvTimer(currentItemId).then(function (item) { - item.PrePaddingSeconds = form.querySelector('#txtPrePaddingMinutes').value * 60; - item.PostPaddingSeconds = form.querySelector('#txtPostPaddingMinutes').value * 60; - apiClient.updateLiveTvTimer(item).then(currentResolve); - }); - - e.preventDefault(); - - // Disable default form submission - return false; - } - - function init(context) { - context.querySelector('.btnCancel').addEventListener('click', function () { - closeDialog(false); - }); - - context.querySelector('.btnCancelRecording').addEventListener('click', function () { - var apiClient = connectionManager.getApiClient(currentServerId); - deleteTimer(apiClient, currentItemId).then(function () { - closeDialog(true); - }); - }); - - context.querySelector('form').addEventListener('submit', onSubmit); - } - - function reload(context, id) { +function showEditor(itemId, serverId, options) { + return new Promise(function (resolve, reject) { + recordingDeleted = false; + currentServerId = serverId; loading.show(); - currentItemId = id; + options = options || {}; + currentResolve = resolve; - var apiClient = connectionManager.getApiClient(currentServerId); - apiClient.getLiveTvTimer(id).then(function (result) { - renderTimer(context, result, apiClient); - loading.hide(); - }); - } + require(['text!./recordingeditor.template.html'], function (template) { + const dialogOptions = { + removeOnClose: true, + scrollY: false + }; - function showEditor(itemId, serverId, options) { - return new Promise(function (resolve, reject) { - recordingDeleted = false; - currentServerId = serverId; - loading.show(); - options = options || {}; - currentResolve = resolve; + if (layoutManager.tv) { + dialogOptions.size = 'fullscreen'; + } - require(['text!./recordingeditor.template.html'], function (template) { - var dialogOptions = { - removeOnClose: true, - scrollY: false - }; + const dlg = dialogHelper.createDialog(dialogOptions); - if (layoutManager.tv) { - dialogOptions.size = 'fullscreen'; + dlg.classList.add('formDialog'); + dlg.classList.add('recordingDialog'); + + if (!layoutManager.tv) { + dlg.style['min-width'] = '20%'; + dlg.classList.add('dialog-fullscreen-lowres'); + } + + let html = ''; + + html += globalize.translateHtml(template, 'core'); + + dlg.innerHTML = html; + + if (options.enableCancel === false) { + dlg.querySelector('.formDialogFooter').classList.add('hide'); + } + + currentDialog = dlg; + + dlg.addEventListener('closing', function () { + if (!recordingDeleted) { + dlg.querySelector('.btnSubmit').click(); } - - var dlg = dialogHelper.createDialog(dialogOptions); - - dlg.classList.add('formDialog'); - dlg.classList.add('recordingDialog'); - - if (!layoutManager.tv) { - dlg.style['min-width'] = '20%'; - dlg.classList.add('dialog-fullscreen-lowres'); - } - - var html = ''; - - html += globalize.translateHtml(template, 'core'); - - dlg.innerHTML = html; - - if (options.enableCancel === false) { - dlg.querySelector('.formDialogFooter').classList.add('hide'); - } - - currentDialog = dlg; - - dlg.addEventListener('closing', function () { - if (!recordingDeleted) { - dlg.querySelector('.btnSubmit').click(); - } - }); - - dlg.addEventListener('close', function () { - if (recordingDeleted) { - resolve({ - updated: true, - deleted: true - }); - } - }); - - if (layoutManager.tv) { - scrollHelper.centerFocus.on(dlg.querySelector('.formDialogContent'), false); - } - - init(dlg); - - reload(dlg, itemId); - - dialogHelper.open(dlg); }); - }); - } - return { - show: showEditor - }; -}); + dlg.addEventListener('close', function () { + if (recordingDeleted) { + resolve({ + updated: true, + deleted: true + }); + } + }); + + if (layoutManager.tv) { + scrollHelper.centerFocus.on(dlg.querySelector('.formDialogContent'), false); + } + + init(dlg); + + reload(dlg, itemId); + + dialogHelper.open(dlg); + }); + }); +} + +export default { + show: showEditor +}; diff --git a/src/components/recordingcreator/recordingfields.js b/src/components/recordingcreator/recordingfields.js index e3739f1cfe..d9d7c0098c 100644 --- a/src/components/recordingcreator/recordingfields.js +++ b/src/components/recordingcreator/recordingfields.js @@ -1,221 +1,126 @@ -define(['globalize', 'connectionManager', 'serverNotifications', 'require', 'loading', 'apphost', 'dom', 'recordingHelper', 'events', 'paper-icon-button-light', 'emby-button', 'css!./recordingfields', 'flexStyles'], function (globalize, connectionManager, serverNotifications, require, loading, appHost, dom, recordingHelper, events) { - 'use strict'; +import globalize from 'globalize'; +import connectionManager from 'connectionManager'; +import serverNotifications from 'serverNotifications'; +import loading from 'loading'; +import dom from 'dom'; +import recordingHelper from 'recordingHelper'; +import events from 'events'; +import 'paper-icon-button-light'; +import 'emby-button'; +import 'css!./recordingfields'; +import 'flexStyles'; - loading = loading.default || loading; +/*eslint prefer-const: "error"*/ - function loadData(parent, program, apiClient) { - if (program.IsSeries) { - parent.querySelector('.recordSeriesContainer').classList.remove('hide'); +function loadData(parent, program, apiClient) { + if (program.IsSeries) { + parent.querySelector('.recordSeriesContainer').classList.remove('hide'); + } else { + parent.querySelector('.recordSeriesContainer').classList.add('hide'); + } + + if (program.SeriesTimerId) { + parent.querySelector('.btnManageSeriesRecording').classList.remove('hide'); + parent.querySelector('.seriesRecordingButton .recordingIcon').classList.add('recordingIcon-active'); + parent.querySelector('.seriesRecordingButton .buttonText').innerHTML = globalize.translate('CancelSeries'); + } else { + parent.querySelector('.btnManageSeriesRecording').classList.add('hide'); + parent.querySelector('.seriesRecordingButton .recordingIcon').classList.remove('recordingIcon-active'); + parent.querySelector('.seriesRecordingButton .buttonText').innerHTML = globalize.translate('RecordSeries'); + } + + if (program.TimerId && program.Status !== 'Cancelled') { + parent.querySelector('.btnManageRecording').classList.remove('hide'); + parent.querySelector('.singleRecordingButton .recordingIcon').classList.add('recordingIcon-active'); + if (program.Status === 'InProgress') { + parent.querySelector('.singleRecordingButton .buttonText').innerHTML = globalize.translate('StopRecording'); } else { - parent.querySelector('.recordSeriesContainer').classList.add('hide'); + parent.querySelector('.singleRecordingButton .buttonText').innerHTML = globalize.translate('DoNotRecord'); } + } else { + parent.querySelector('.btnManageRecording').classList.add('hide'); + parent.querySelector('.singleRecordingButton .recordingIcon').classList.remove('recordingIcon-active'); + parent.querySelector('.singleRecordingButton .buttonText').innerHTML = globalize.translate('Record'); + } +} - if (program.SeriesTimerId) { - parent.querySelector('.btnManageSeriesRecording').classList.remove('hide'); - parent.querySelector('.seriesRecordingButton .recordingIcon').classList.add('recordingIcon-active'); - parent.querySelector('.seriesRecordingButton .buttonText').innerHTML = globalize.translate('CancelSeries'); - } else { - parent.querySelector('.btnManageSeriesRecording').classList.add('hide'); - parent.querySelector('.seriesRecordingButton .recordingIcon').classList.remove('recordingIcon-active'); - parent.querySelector('.seriesRecordingButton .buttonText').innerHTML = globalize.translate('RecordSeries'); +function fetchData(instance) { + const options = instance.options; + const apiClient = connectionManager.getApiClient(options.serverId); + + options.parent.querySelector('.recordingFields').classList.remove('hide'); + return apiClient.getLiveTvProgram(options.programId, apiClient.getCurrentUserId()).then(function (program) { + instance.TimerId = program.TimerId; + instance.Status = program.Status; + instance.SeriesTimerId = program.SeriesTimerId; + loadData(options.parent, program, apiClient); + }); +} + +function onTimerChangedExternally(e, apiClient, data) { + const options = this.options; + let refresh = false; + + if (data.Id) { + if (this.TimerId === data.Id) { + refresh = true; } - - if (program.TimerId && program.Status !== 'Cancelled') { - parent.querySelector('.btnManageRecording').classList.remove('hide'); - parent.querySelector('.singleRecordingButton .recordingIcon').classList.add('recordingIcon-active'); - if (program.Status === 'InProgress') { - parent.querySelector('.singleRecordingButton .buttonText').innerHTML = globalize.translate('StopRecording'); - } else { - parent.querySelector('.singleRecordingButton .buttonText').innerHTML = globalize.translate('DoNotRecord'); - } - } else { - parent.querySelector('.btnManageRecording').classList.add('hide'); - parent.querySelector('.singleRecordingButton .recordingIcon').classList.remove('recordingIcon-active'); - parent.querySelector('.singleRecordingButton .buttonText').innerHTML = globalize.translate('Record'); + } + if (data.ProgramId && options) { + if (options.programId === data.ProgramId) { + refresh = true; } } - function fetchData(instance) { - var options = instance.options; - var apiClient = connectionManager.getApiClient(options.serverId); - - options.parent.querySelector('.recordingFields').classList.remove('hide'); - return apiClient.getLiveTvProgram(options.programId, apiClient.getCurrentUserId()).then(function (program) { - instance.TimerId = program.TimerId; - instance.Status = program.Status; - instance.SeriesTimerId = program.SeriesTimerId; - loadData(options.parent, program, apiClient); - }); + if (refresh) { + this.refresh(); } +} - function onTimerChangedExternally(e, apiClient, data) { - var options = this.options; - var refresh = false; +function onSeriesTimerChangedExternally(e, apiClient, data) { + const options = this.options; + let refresh = false; - if (data.Id) { - if (this.TimerId === data.Id) { - refresh = true; - } + if (data.Id) { + if (this.SeriesTimerId === data.Id) { + refresh = true; } - if (data.ProgramId && options) { - if (options.programId === data.ProgramId) { - refresh = true; - } - } - - if (refresh) { - this.refresh(); + } + if (data.ProgramId && options) { + if (options.programId === data.ProgramId) { + refresh = true; } } - function onSeriesTimerChangedExternally(e, apiClient, data) { - var options = this.options; - var refresh = false; - - if (data.Id) { - if (this.SeriesTimerId === data.Id) { - refresh = true; - } - } - if (data.ProgramId && options) { - if (options.programId === data.ProgramId) { - refresh = true; - } - } - - if (refresh) { - this.refresh(); - } + if (refresh) { + this.refresh(); } +} - function RecordingEditor(options) { +class RecordingEditor { + constructor(options) { this.options = options; this.embed(); - var timerChangedHandler = onTimerChangedExternally.bind(this); + const timerChangedHandler = onTimerChangedExternally.bind(this); this.timerChangedHandler = timerChangedHandler; events.on(serverNotifications, 'TimerCreated', timerChangedHandler); events.on(serverNotifications, 'TimerCancelled', timerChangedHandler); - var seriesTimerChangedHandler = onSeriesTimerChangedExternally.bind(this); + const seriesTimerChangedHandler = onSeriesTimerChangedExternally.bind(this); this.seriesTimerChangedHandler = seriesTimerChangedHandler; events.on(serverNotifications, 'SeriesTimerCreated', seriesTimerChangedHandler); events.on(serverNotifications, 'SeriesTimerCancelled', seriesTimerChangedHandler); } - function onManageRecordingClick(e) { - var options = this.options; - if (!this.TimerId || this.Status === 'Cancelled') { - return; - } - - var self = this; - require(['recordingEditor'], function (recordingEditor) { - recordingEditor.show(self.TimerId, options.serverId, { - enableCancel: false - }).then(function () { - self.changed = true; - }); - }); - } - - function onManageSeriesRecordingClick(e) { - var options = this.options; - - if (!this.SeriesTimerId) { - return; - } - - var self = this; - - require(['seriesRecordingEditor'], function (seriesRecordingEditor) { - seriesRecordingEditor.show(self.SeriesTimerId, options.serverId, { - - enableCancel: false - - }).then(function () { - self.changed = true; - }); - }); - } - - function onRecordChange(e) { - this.changed = true; - - var self = this; - var options = this.options; - var apiClient = connectionManager.getApiClient(options.serverId); - - var button = dom.parentWithTag(e.target, 'BUTTON'); - var isChecked = !button.querySelector('.material-icons').classList.contains('recordingIcon-active'); - - var hasEnabledTimer = this.TimerId && this.Status !== 'Cancelled'; - - if (isChecked) { - if (!hasEnabledTimer) { - loading.show(); - recordingHelper.createRecording(apiClient, options.programId, false).then(function () { - events.trigger(self, 'recordingchanged'); - fetchData(self); - loading.hide(); - }); - } - } else { - if (hasEnabledTimer) { - loading.show(); - recordingHelper.cancelTimer(apiClient, this.TimerId, true).then(function () { - events.trigger(self, 'recordingchanged'); - fetchData(self); - loading.hide(); - }); - } - } - } - - function sendToast(msg) { - require(['toast'], function (toast) { - toast(msg); - }); - } - - function onRecordSeriesChange(e) { - this.changed = true; - - var self = this; - var options = this.options; - var apiClient = connectionManager.getApiClient(options.serverId); - - var button = dom.parentWithTag(e.target, 'BUTTON'); - var isChecked = !button.querySelector('.material-icons').classList.contains('recordingIcon-active'); - - if (isChecked) { - options.parent.querySelector('.recordSeriesContainer').classList.remove('hide'); - if (!this.SeriesTimerId) { - var promise = this.TimerId ? - recordingHelper.changeRecordingToSeries(apiClient, this.TimerId, options.programId) : - recordingHelper.createRecording(apiClient, options.programId, true); - promise.then(function () { - fetchData(self); - }); - } - } else { - if (this.SeriesTimerId) { - apiClient.cancelLiveTvSeriesTimer(this.SeriesTimerId).then(function () { - sendToast(globalize.translate('RecordingCancelled')); - fetchData(self); - }); - } - } - } - - RecordingEditor.prototype.embed = function () { - var self = this; + embed() { + const self = this; return new Promise(function (resolve, reject) { - require(['text!./recordingfields.template.html'], function (template) { - var options = self.options; - var context = options.parent; + import('text!./recordingfields.template.html').then(({default: template}) => { + const options = self.options; + const context = options.parent; context.innerHTML = globalize.translateHtml(template, 'core'); context.querySelector('.singleRecordingButton').addEventListener('click', onRecordChange.bind(self)); @@ -226,29 +131,134 @@ define(['globalize', 'connectionManager', 'serverNotifications', 'require', 'loa fetchData(self).then(resolve); }); }); - }; + } - RecordingEditor.prototype.hasChanged = function () { + hasChanged() { return this.changed; - }; + } - RecordingEditor.prototype.refresh = function () { + refresh() { fetchData(this); - }; + } - RecordingEditor.prototype.destroy = function () { - var timerChangedHandler = this.timerChangedHandler; + destroy() { + const timerChangedHandler = this.timerChangedHandler; this.timerChangedHandler = null; events.off(serverNotifications, 'TimerCreated', timerChangedHandler); events.off(serverNotifications, 'TimerCancelled', timerChangedHandler); - var seriesTimerChangedHandler = this.seriesTimerChangedHandler; + const seriesTimerChangedHandler = this.seriesTimerChangedHandler; this.seriesTimerChangedHandler = null; events.off(serverNotifications, 'SeriesTimerCreated', seriesTimerChangedHandler); events.off(serverNotifications, 'SeriesTimerCancelled', seriesTimerChangedHandler); - }; + } +} - return RecordingEditor; -}); +function onManageRecordingClick(e) { + const options = this.options; + if (!this.TimerId || this.Status === 'Cancelled') { + return; + } + + const self = this; + import('recordingEditor').then(({default: recordingEditor}) => { + recordingEditor.show(self.TimerId, options.serverId, { + enableCancel: false + }).then(function () { + self.changed = true; + }); + }); +} + +function onManageSeriesRecordingClick(e) { + const options = this.options; + + if (!this.SeriesTimerId) { + return; + } + + const self = this; + + import('seriesRecordingEditor').then(({default: seriesRecordingEditor}) => { + seriesRecordingEditor.show(self.SeriesTimerId, options.serverId, { + + enableCancel: false + + }).then(function () { + self.changed = true; + }); + }); +} + +function onRecordChange(e) { + this.changed = true; + + const self = this; + const options = this.options; + const apiClient = connectionManager.getApiClient(options.serverId); + + const button = dom.parentWithTag(e.target, 'BUTTON'); + const isChecked = !button.querySelector('.material-icons').classList.contains('recordingIcon-active'); + + const hasEnabledTimer = this.TimerId && this.Status !== 'Cancelled'; + + if (isChecked) { + if (!hasEnabledTimer) { + loading.show(); + recordingHelper.createRecording(apiClient, options.programId, false).then(function () { + events.trigger(self, 'recordingchanged'); + fetchData(self); + loading.hide(); + }); + } + } else { + if (hasEnabledTimer) { + loading.show(); + recordingHelper.cancelTimer(apiClient, this.TimerId, true).then(function () { + events.trigger(self, 'recordingchanged'); + fetchData(self); + loading.hide(); + }); + } + } +} + +function sendToast(msg) { + import('toast').then(({default: toast}) => { + toast(msg); + }); +} + +function onRecordSeriesChange(e) { + this.changed = true; + + const self = this; + const options = this.options; + const apiClient = connectionManager.getApiClient(options.serverId); + + const button = dom.parentWithTag(e.target, 'BUTTON'); + const isChecked = !button.querySelector('.material-icons').classList.contains('recordingIcon-active'); + + if (isChecked) { + options.parent.querySelector('.recordSeriesContainer').classList.remove('hide'); + if (!this.SeriesTimerId) { + const promise = this.TimerId ? + recordingHelper.changeRecordingToSeries(apiClient, this.TimerId, options.programId) : + recordingHelper.createRecording(apiClient, options.programId, true); + promise.then(function () { + fetchData(self); + }); + } + } else { + if (this.SeriesTimerId) { + apiClient.cancelLiveTvSeriesTimer(this.SeriesTimerId).then(function () { + sendToast(globalize.translate('RecordingCancelled')); + fetchData(self); + }); + } + } +} + +export default RecordingEditor; From 1ef55292446b4cfddb7389671dc23b9934ad92b9 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sat, 1 Aug 2020 03:01:32 +0200 Subject: [PATCH 007/285] Migrate PluginManager to ES6 --- package.json | 1 + src/components/packageManager.js | 2 + src/components/pluginManager.js | 214 +++++++++++++------------- src/plugins/logoScreensaver/plugin.js | 2 + src/scripts/site.js | 5 +- 5 files changed, 117 insertions(+), 107 deletions(-) diff --git a/package.json b/package.json index bf3ac42f97..819d27a1f6 100644 --- a/package.json +++ b/package.json @@ -152,6 +152,7 @@ "src/components/playerstats/playerstats.js", "src/components/playlisteditor/playlisteditor.js", "src/components/playmenu.js", + "src/components/pluginManager.js", "src/components/prompt/prompt.js", "src/components/recordingcreator/seriesrecordingeditor.js", "src/components/recordingcreator/recordinghelper.js", diff --git a/src/components/packageManager.js b/src/components/packageManager.js index 936f5a4029..d2b3ed5857 100644 --- a/src/components/packageManager.js +++ b/src/components/packageManager.js @@ -1,6 +1,8 @@ define(['appSettings', 'pluginManager'], function (appSettings, pluginManager) { 'use strict'; + pluginManager = pluginManager.default || pluginManager; + var settingsKey = 'installedpackages1'; function addPackage(packageManager, pkg) { diff --git a/src/components/pluginManager.js b/src/components/pluginManager.js index df4a0c42b7..14f4fdecf9 100644 --- a/src/components/pluginManager.js +++ b/src/components/pluginManager.js @@ -1,37 +1,38 @@ -define(['events', 'globalize'], function (events, globalize) { - 'use strict'; +import events from 'events'; +import globalize from 'globalize'; +/* eslint-disable indent */ // TODO: replace with each plugin version var cacheParam = new Date().getTime(); - function loadStrings(plugin) { - var strings = plugin.getTranslations ? plugin.getTranslations() : []; - return globalize.loadStrings({ - name: plugin.id || plugin.packageName, - strings: strings - }); - } + class PluginManager { + pluginsList = []; - function definePluginRoute(pluginManager, route, plugin) { - route.contentPath = pluginManager.mapPath(plugin, route.path); - route.path = pluginManager.mapRoute(plugin, route); + get plugins() { + return this.pluginsList; + } - Emby.App.defineRoute(route, plugin.id); - } + #loadStrings(plugin) { + var strings = plugin.getTranslations ? plugin.getTranslations() : []; + return globalize.loadStrings({ + name: plugin.id || plugin.packageName, + strings: strings + }); + } - function PluginManager() { - this.pluginsList = []; - } + #definePluginRoute(route, plugin) { + route.contentPath = this.#mapPath(plugin, route.path); + route.path = this.mapRoute(plugin, route); - PluginManager.prototype.loadPlugin = function(pluginSpec) { - var instance = this; + Emby.App.defineRoute(route, plugin.id); + } - function registerPlugin(plugin) { - instance.register(plugin); + #registerPlugin(plugin) { + this.#register(plugin); if (plugin.getRoutes) { - plugin.getRoutes().forEach(function (route) { - definePluginRoute(instance, route, plugin); + plugin.getRoutes().forEach((route) => { + this.#definePluginRoute(route, plugin); }); } @@ -40,7 +41,7 @@ define(['events', 'globalize'], function (events, globalize) { return Promise.resolve(plugin); } else { return new Promise((resolve, reject) => { - loadStrings(plugin) + this.#loadStrings(plugin) .then(function () { resolve(plugin); }) @@ -49,103 +50,106 @@ define(['events', 'globalize'], function (events, globalize) { } } - if (typeof pluginSpec === 'string') { - console.debug('Loading plugin (via deprecated requirejs method): ' + pluginSpec); + loadPlugin(pluginSpec) { + var instance = this; - return new Promise(function (resolve, reject) { - require([pluginSpec], (pluginFactory) => { - var plugin = pluginFactory.default ? new pluginFactory.default() : new pluginFactory(); + if (typeof pluginSpec === 'string') { + console.debug('Loading plugin (via deprecated requirejs method): ' + pluginSpec); - // See if it's already installed - var existing = instance.pluginsList.filter(function (p) { - return p.id === plugin.id; - })[0]; + return new Promise((resolve, reject) => { + require([pluginSpec], (pluginFactory) => { + var plugin = pluginFactory.default ? new pluginFactory.default() : new pluginFactory(); - if (existing) { - resolve(pluginSpec); - } + // See if it's already installed + var existing = this.pluginsList.filter(function (p) { + return p.id === plugin.id; + })[0]; - plugin.installUrl = pluginSpec; + if (existing) { + resolve(pluginSpec); + } - var separatorIndex = Math.max(pluginSpec.lastIndexOf('/'), pluginSpec.lastIndexOf('\\')); - plugin.baseUrl = pluginSpec.substring(0, separatorIndex); + plugin.installUrl = pluginSpec; - var paths = {}; - paths[plugin.id] = plugin.baseUrl; + var separatorIndex = Math.max(pluginSpec.lastIndexOf('/'), pluginSpec.lastIndexOf('\\')); + plugin.baseUrl = pluginSpec.substring(0, separatorIndex); - requirejs.config({ - waitSeconds: 0, - paths: paths + var paths = {}; + paths[plugin.id] = plugin.baseUrl; + + requirejs.config({ + waitSeconds: 0, + paths: paths + }); + + this.#registerPlugin(plugin).then(resolve).catch(reject); }); - - registerPlugin(plugin).then(resolve).catch(reject); }); + } else if (pluginSpec.then) { + return pluginSpec.then(pluginBuilder => { + return pluginBuilder(); + }).then((plugin) => { + console.debug(`Plugin loaded: ${plugin.id}`); + return this.#registerPlugin(plugin); + }); + } else { + const err = new TypeError('Plugins have to be a Promise that resolves to a plugin builder function or a RequireJS url (deprecated)'); + console.error(err); + return Promise.reject(err); + } + } + + // In lieu of automatic discovery, plugins will register dynamic objects + // Each object will have the following properties: + // name + // type (skin, screensaver, etc) + #register(obj) { + this.pluginsList.push(obj); + events.trigger(this, 'registered', [obj]); + } + + ofType(type) { + return this.pluginsList.filter((o) => { + return o.type === type; }); - } else if (pluginSpec.then) { - return pluginSpec.then(pluginBuilder => { - return pluginBuilder(); - }).then(plugin => { - console.debug(`Plugin loaded: ${plugin.id}`); - return registerPlugin(plugin); - }); - } else { - const err = new Error('Plugins have to be a Promise that resolves to a plugin builder function or a requirejs urls (deprecated)'); - console.error(err); - return Promise.reject(err); - } - }; - - // In lieu of automatic discovery, plugins will register dynamic objects - // Each object will have the following properties: - // name - // type (skin, screensaver, etc) - PluginManager.prototype.register = function (obj) { - this.pluginsList.push(obj); - events.trigger(this, 'registered', [obj]); - }; - - PluginManager.prototype.ofType = function (type) { - return this.pluginsList.filter(function (o) { - return o.type === type; - }); - }; - - PluginManager.prototype.plugins = function () { - return this.pluginsList; - }; - - PluginManager.prototype.mapRoute = function (plugin, route) { - if (typeof plugin === 'string') { - plugin = this.pluginsList.filter(function (p) { - return (p.id || p.packageName) === plugin; - })[0]; } - route = route.path || route; + #mapRoute(plugin, route) { + if (typeof plugin === 'string') { + plugin = this.pluginsList.filter((p) => { + return (p.id || p.packageName) === plugin; + })[0]; + } - if (route.toLowerCase().indexOf('http') === 0) { - return route; + route = route.path || route; + + if (route.toLowerCase().startsWith('http')) { + return route; + } + + return '/plugins/' + plugin.id + '/' + route; } - return '/plugins/' + plugin.id + '/' + route; - }; + #mapPath(plugin, path, addCacheParam) { + if (typeof plugin === 'string') { + plugin = this.pluginsList.filter((p) => { + return (p.id || p.packageName) === plugin; + })[0]; + } - PluginManager.prototype.mapPath = function (plugin, path, addCacheParam) { - if (typeof plugin === 'string') { - plugin = this.pluginsList.filter(function (p) { - return (p.id || p.packageName) === plugin; - })[0]; + console.dir(plugin); + + var url = plugin.baseUrl + '/' + path; + + if (addCacheParam) { + url += url.includes('?') ? '&' : '?'; + url += 'v=' + cacheParam; + } + + return url; } + } - var url = plugin.baseUrl + '/' + path; +/* eslint-enable indent */ - if (addCacheParam) { - url += url.indexOf('?') === -1 ? '?' : '&'; - url += 'v=' + cacheParam; - } - - return url; - }; - - return new PluginManager(); -}); +export default new PluginManager(); diff --git a/src/plugins/logoScreensaver/plugin.js b/src/plugins/logoScreensaver/plugin.js index bdd1d34e79..542649ecef 100644 --- a/src/plugins/logoScreensaver/plugin.js +++ b/src/plugins/logoScreensaver/plugin.js @@ -1,4 +1,6 @@ define(['pluginManager'], function (pluginManager) { + pluginManager = pluginManager.default || pluginManager; + return function () { var self = this; diff --git a/src/scripts/site.js b/src/scripts/site.js index cd85c35e83..876b717877 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -476,7 +476,7 @@ function initClient() { } function loadPlugins(appHost, browser, shell) { - console.debug('loading installed plugins'); + console.groupCollapsed('loading installed plugins'); return new Promise(function (resolve, reject) { require(['webSettings'], function (webSettings) { webSettings.getPlugins().then(function (list) { @@ -495,6 +495,7 @@ function initClient() { } Promise.all(list.map(loadPlugin)).then(function () { + console.groupEnd('loading installed plugins'); require(['packageManager'], function (packageManager) { packageManager.init().then(resolve, reject); }); @@ -507,7 +508,7 @@ function initClient() { function loadPlugin(url) { return new Promise(function (resolve, reject) { require(['pluginManager'], function (pluginManager) { - pluginManager.loadPlugin(url).then(resolve, reject); + pluginManager.default.loadPlugin(url).then(resolve, reject); }); }); } From ca5f194ee6ca2bd27081fb0d5f00e75d5e5ec14b Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sat, 1 Aug 2020 03:51:44 +0200 Subject: [PATCH 008/285] Migrate packageManager to ES6 --- package.json | 1 + src/components/packageManager.js | 223 ++++++++++++++++--------------- src/scripts/site.js | 2 +- 3 files changed, 114 insertions(+), 112 deletions(-) diff --git a/package.json b/package.json index 819d27a1f6..46e5691c34 100644 --- a/package.json +++ b/package.json @@ -137,6 +137,7 @@ "src/components/metadataEditor/personEditor.js", "src/components/multiSelect/multiSelect.js", "src/components/nowPlayingBar/nowPlayingBar.js", + "src/components/packageManager.js", "src/components/playback/brightnessosd.js", "src/components/playback/mediasession.js", "src/components/playback/nowplayinghelper.js", diff --git a/src/components/packageManager.js b/src/components/packageManager.js index d2b3ed5857..7e2b1362c7 100644 --- a/src/components/packageManager.js +++ b/src/components/packageManager.js @@ -1,136 +1,137 @@ -define(['appSettings', 'pluginManager'], function (appSettings, pluginManager) { - 'use strict'; +import appSettings from 'appSettings'; +import pluginManager from 'pluginManager'; +/* eslint-disable indent */ - pluginManager = pluginManager.default || pluginManager; + class PackageManager { + #packagesList = []; + #settingsKey = 'installedpackages1'; - var settingsKey = 'installedpackages1'; + init() { + console.groupCollapsed('loading packages'); + var manifestUrls = JSON.parse(appSettings.get(this.#settingsKey) || '[]'); - function addPackage(packageManager, pkg) { - packageManager.packagesList = packageManager.packagesList.filter(function (p) { - return p.name !== pkg.name; - }); + var instance = this; + return Promise.all(manifestUrls.map((u) => { + return this.loadPackage(instance, u); + })).then(() => { + console.groupEnd('loading packages'); + return Promise.resolve(); + }, () => { + return Promise.resolve(); + }); + } - packageManager.packagesList.push(pkg); - } + get packages() { + return this.#packagesList.slice(0); + } - function removeUrl(url) { - var manifestUrls = JSON.parse(appSettings.get(settingsKey) || '[]'); + install(url) { + return this.loadPackage(this, url, true).then((pkg) => { + var manifestUrls = JSON.parse(appSettings.get(this.#settingsKey) || '[]'); - manifestUrls = manifestUrls.filter(function (i) { - return i !== url; - }); - - appSettings.set(settingsKey, JSON.stringify(manifestUrls)); - } - - function loadPackage(packageManager, url, throwError) { - return new Promise(function (resolve, reject) { - var xhr = new XMLHttpRequest(); - var originalUrl = url; - url += url.indexOf('?') === -1 ? '?' : '&'; - url += 't=' + new Date().getTime(); - - xhr.open('GET', url, true); - - var onError = function () { - if (throwError === true) { - reject(); - } else { - removeUrl(originalUrl); - resolve(); + if (!manifestUrls.includes(url)) { + manifestUrls.push(url); + appSettings.set(this.#settingsKey, JSON.stringify(manifestUrls)); } - }; - xhr.onload = function (e) { - if (this.status < 400) { - var pkg = JSON.parse(this.response); - pkg.url = originalUrl; + return pkg; + }); + } - addPackage(packageManager, pkg); + uninstall(name) { + var pkg = this.#packagesList.filter((p) => { + return p.name === name; + })[0]; - var plugins = pkg.plugins || []; - if (pkg.plugin) { - plugins.push(pkg.plugin); - } - var promises = plugins.map(function (pluginUrl) { - return pluginManager.loadPlugin(packageManager.mapPath(pkg, pluginUrl)); - }); - Promise.all(promises).then(resolve, resolve); - } else { - onError(); - } - }; + if (pkg) { + this.#packagesList = this.#packagesList.filter((p) => { + return p.name !== name; + }); - xhr.onerror = onError; - - xhr.send(); - }); - } - - function PackageManager() { - this.packagesList = []; - } - - PackageManager.prototype.init = function () { - var manifestUrls = JSON.parse(appSettings.get(settingsKey) || '[]'); - - var instance = this; - return Promise.all(manifestUrls.map(function (u) { - return loadPackage(instance, u); - })).then(function () { - return Promise.resolve(); - }, function () { - return Promise.resolve(); - }); - }; - - PackageManager.prototype.packages = function () { - return this.packagesList.slice(0); - }; - - PackageManager.prototype.install = function (url) { - return loadPackage(this, url, true).then(function (pkg) { - var manifestUrls = JSON.parse(appSettings.get(settingsKey) || '[]'); - - if (manifestUrls.indexOf(url) === -1) { - manifestUrls.push(url); - appSettings.set(settingsKey, JSON.stringify(manifestUrls)); + this.removeUrl(pkg.url); } - return pkg; - }); - }; + return Promise.resolve(); + } - PackageManager.prototype.uninstall = function (name) { - var pkg = this.packagesList.filter(function (p) { - return p.name === name; - })[0]; + mapPath(pkg, pluginUrl) { + var urlLower = pluginUrl.toLowerCase(); + if (urlLower.startsWith('http:') || urlLower.startsWith('https:') || urlLower.startsWith('file:')) { + return pluginUrl; + } - if (pkg) { - this.packagesList = this.packagesList.filter(function (p) { - return p.name !== name; + var packageUrl = pkg.url; + packageUrl = packageUrl.substring(0, packageUrl.lastIndexOf('/')); + + packageUrl += '/'; + packageUrl += pluginUrl; + + return packageUrl; + } + + addPackage(packageManager, pkg) { + packageManager.packagesList = packageManager.packagesList.filter((p) => { + return p.name !== pkg.name; }); - removeUrl(pkg.url); + packageManager.packagesList.push(pkg); } - return Promise.resolve(); - }; + removeUrl(url) { + var manifestUrls = JSON.parse(appSettings.get(this.#settingsKey) || '[]'); - PackageManager.prototype.mapPath = function (pkg, pluginUrl) { - var urlLower = pluginUrl.toLowerCase(); - if (urlLower.indexOf('http:') === 0 || urlLower.indexOf('https:') === 0 || urlLower.indexOf('file:') === 0) { - return pluginUrl; + manifestUrls = manifestUrls.filter((i) => { + return i !== url; + }); + + appSettings.set(this.#settingsKey, JSON.stringify(manifestUrls)); } - var packageUrl = pkg.url; - packageUrl = packageUrl.substring(0, packageUrl.lastIndexOf('/')); + loadPackage(packageManager, url, throwError) { + return new Promise((resolve, reject) => { + var xhr = new XMLHttpRequest(); + var originalUrl = url; + url += url.indexOf('?') === -1 ? '?' : '&'; + url += 't=' + new Date().getTime(); - packageUrl += '/'; - packageUrl += pluginUrl; + xhr.open('GET', url, true); - return packageUrl; - }; + var onError = () => { + if (throwError === true) { + reject(); + } else { + this.removeUrl(originalUrl); + resolve(); + } + }; - return new PackageManager(); -}); + xhr.onload = (e) => { + if (this.status < 400) { + var pkg = JSON.parse(this.response); + pkg.url = originalUrl; + + this.addPackage(packageManager, pkg); + + var plugins = pkg.plugins || []; + if (pkg.plugin) { + plugins.push(pkg.plugin); + } + var promises = plugins.map((pluginUrl) => { + return pluginManager.loadPlugin(packageManager.mapPath(pkg, pluginUrl)); + }); + Promise.all(promises).then(resolve, resolve); + } else { + onError(); + } + }; + + xhr.onerror = onError; + + xhr.send(); + }); + } + } + +/* eslint-enable indent */ + +export default new PackageManager(); diff --git a/src/scripts/site.js b/src/scripts/site.js index 876b717877..7b5a72c042 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -497,7 +497,7 @@ function initClient() { Promise.all(list.map(loadPlugin)).then(function () { console.groupEnd('loading installed plugins'); require(['packageManager'], function (packageManager) { - packageManager.init().then(resolve, reject); + packageManager.default.init().then(resolve, reject); }); }, reject); }); From 4cd83e6f73a7c21e01881e0c2cae2399222bcde6 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sat, 1 Aug 2020 04:07:00 +0200 Subject: [PATCH 009/285] Fix linting errors --- .eslintrc.js | 7 ++++--- src/components/cardbuilder/cardBuilder.js | 6 +++--- src/plugins/htmlVideoPlayer/plugin.js | 22 +++++++++++----------- src/scripts/editorsidebar.js | 2 +- src/scripts/keyboardNavigation.js | 2 +- 5 files changed, 20 insertions(+), 19 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index ff12e198c3..c9d5ed917c 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -40,12 +40,12 @@ module.exports = { 'no-multi-spaces': ['error'], 'no-multiple-empty-lines': ['error', { 'max': 1 }], 'no-trailing-spaces': ['error'], - 'no-unused-expressions': ['error', { 'allowShortCircuit': true, 'allowTernary': true, 'allowTaggedTemplates': true }], - 'no-unused-vars': ['error', { 'vars': 'all', 'args': 'none', 'ignoreRestSiblings': true }], + '@babel/no-unused-expressions': ['error', { 'allowShortCircuit': true, 'allowTernary': true, 'allowTaggedTemplates': true }], + //'no-unused-vars': ['error', { 'vars': 'all', 'args': 'none', 'ignoreRestSiblings': true }], 'one-var': ['error', 'never'], 'padded-blocks': ['error', 'never'], 'quotes': ['error', 'single', { 'avoidEscape': true, 'allowTemplateLiterals': false }], - 'semi': ['error'], + '@babel/semi': ['error'], 'space-before-blocks': ['error'], 'space-infix-ops': 'error', 'yoda': 'error' @@ -105,6 +105,7 @@ module.exports = { // TODO: Fix warnings and remove these rules 'no-redeclare': ['off'], 'no-useless-escape': ['off'], + 'no-unused-vars': ['off'], // TODO: Remove after ES6 migration is complete 'import/no-unresolved': ['off'] }, diff --git a/src/components/cardbuilder/cardBuilder.js b/src/components/cardbuilder/cardBuilder.js index 4a37331ef4..64cc7dab9b 100644 --- a/src/components/cardbuilder/cardBuilder.js +++ b/src/components/cardbuilder/cardBuilder.js @@ -1117,7 +1117,7 @@ import 'programStyles'; function importRefreshIndicator() { if (!refreshIndicatorLoaded) { refreshIndicatorLoaded = true; - /* eslint-disable-next-line no-unused-expressions */ + /* eslint-disable-next-line @babel/no-unused-expressions */ import('emby-itemrefreshindicator'); } } @@ -1449,7 +1449,7 @@ import 'programStyles'; const userData = item.UserData || {}; if (itemHelper.canMarkPlayed(item)) { - /* eslint-disable-next-line no-unused-expressions */ + /* eslint-disable-next-line @babel/no-unused-expressions */ import('emby-playstatebutton'); html += ''; } @@ -1457,7 +1457,7 @@ import 'programStyles'; if (itemHelper.canRate(item)) { const likes = userData.Likes == null ? '' : userData.Likes; - /* eslint-disable-next-line no-unused-expressions */ + /* eslint-disable-next-line @babel/no-unused-expressions */ import('emby-ratingbutton'); html += ''; } diff --git a/src/plugins/htmlVideoPlayer/plugin.js b/src/plugins/htmlVideoPlayer/plugin.js index d52f0eb5b3..7789061677 100644 --- a/src/plugins/htmlVideoPlayer/plugin.js +++ b/src/plugins/htmlVideoPlayer/plugin.js @@ -150,7 +150,7 @@ function tryRemoveElement(elem) { /** * @type {string} */ - name + name; /** * @type {string} */ @@ -730,7 +730,7 @@ function tryRemoveElement(elem) { const elem = e.target; this.destroyCustomTrack(elem); onEndedInternal(this, elem, this.onError); - } + }; /** * @private @@ -760,7 +760,7 @@ function tryRemoveElement(elem) { } events.trigger(this, 'timeupdate'); - } + }; /** * @private @@ -773,7 +773,7 @@ function tryRemoveElement(elem) { const elem = e.target; saveVolume(elem.volume); events.trigger(this, 'volumechange'); - } + }; /** * @private @@ -785,7 +785,7 @@ function tryRemoveElement(elem) { this.onStartedAndNavigatedToOsd(); } - } + }; /** * @private @@ -832,14 +832,14 @@ function tryRemoveElement(elem) { } } events.trigger(this, 'playing'); - } + }; /** * @private */ onPlay = () => { events.trigger(this, 'unpause'); - } + }; /** * @private @@ -865,21 +865,21 @@ function tryRemoveElement(elem) { */ onClick = () => { events.trigger(this, 'click'); - } + }; /** * @private */ onDblClick = () => { events.trigger(this, 'dblclick'); - } + }; /** * @private */ onPause = () => { events.trigger(this, 'pause'); - } + }; onWaiting() { events.trigger(this, 'waiting'); @@ -929,7 +929,7 @@ function tryRemoveElement(elem) { } onErrorInternal(this, type); - } + }; /** * @private diff --git a/src/scripts/editorsidebar.js b/src/scripts/editorsidebar.js index 2489335969..d10407c7bb 100644 --- a/src/scripts/editorsidebar.js +++ b/src/scripts/editorsidebar.js @@ -302,7 +302,7 @@ import 'material-icons'; $(document).on('itemsaved', '.metadataEditorPage', function (e, item) { updateEditorNode(this, item); }).on('pagebeforeshow', '.metadataEditorPage', function () { - /* eslint-disable-next-line no-unused-expressions */ + /* eslint-disable-next-line @babel/no-unused-expressions */ import('css!assets/css/metadataeditor.css'); }).on('pagebeforeshow', '.metadataEditorPage', function () { var page = this; diff --git a/src/scripts/keyboardNavigation.js b/src/scripts/keyboardNavigation.js index 10a9611c33..ec354a7ba3 100644 --- a/src/scripts/keyboardNavigation.js +++ b/src/scripts/keyboardNavigation.js @@ -155,7 +155,7 @@ export function enable() { function attachGamepadScript(e) { console.log('Gamepad connected! Attaching gamepadtokey.js script'); window.removeEventListener('gamepadconnected', attachGamepadScript); - /* eslint-disable-next-line no-unused-expressions */ + /* eslint-disable-next-line @babel/no-unused-expressions */ import('scripts/gamepadtokey'); } From 57fb43fb04b80e467821a69825b34a0e52c28164 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sat, 1 Aug 2020 16:04:24 +0200 Subject: [PATCH 010/285] Fix suggestions --- src/components/packageManager.js | 32 ++++++++++++++++------------- src/libraries/screensavermanager.js | 1 + src/scripts/site.js | 19 +++++++++++------ 3 files changed, 32 insertions(+), 20 deletions(-) diff --git a/src/components/packageManager.js b/src/components/packageManager.js index 7e2b1362c7..358529ba79 100644 --- a/src/components/packageManager.js +++ b/src/components/packageManager.js @@ -11,13 +11,17 @@ import pluginManager from 'pluginManager'; var manifestUrls = JSON.parse(appSettings.get(this.#settingsKey) || '[]'); var instance = this; - return Promise.all(manifestUrls.map((u) => { - return this.loadPackage(instance, u); - })).then(() => { + return Promise.all(manifestUrls.map((url) => { + return this.loadPackage(url); + })) + .then(() => { + console.debug('finished loading packages'); + return Promise.resolve(); + }) + .catch(() => { + return Promise.resolve(); + }).finally(() => { console.groupEnd('loading packages'); - return Promise.resolve(); - }, () => { - return Promise.resolve(); }); } @@ -26,7 +30,7 @@ import pluginManager from 'pluginManager'; } install(url) { - return this.loadPackage(this, url, true).then((pkg) => { + return this.loadPackage(url, true).then((pkg) => { var manifestUrls = JSON.parse(appSettings.get(this.#settingsKey) || '[]'); if (!manifestUrls.includes(url)) { @@ -69,12 +73,12 @@ import pluginManager from 'pluginManager'; return packageUrl; } - addPackage(packageManager, pkg) { - packageManager.packagesList = packageManager.packagesList.filter((p) => { + addPackage(pkg) { + this.packagesList = this.packagesList.filter((p) => { return p.name !== pkg.name; }); - packageManager.packagesList.push(pkg); + this.packagesList.push(pkg); } removeUrl(url) { @@ -87,7 +91,7 @@ import pluginManager from 'pluginManager'; appSettings.set(this.#settingsKey, JSON.stringify(manifestUrls)); } - loadPackage(packageManager, url, throwError) { + loadPackage(url, throwError = false) { return new Promise((resolve, reject) => { var xhr = new XMLHttpRequest(); var originalUrl = url; @@ -105,19 +109,19 @@ import pluginManager from 'pluginManager'; } }; - xhr.onload = (e) => { + xhr.onload = () => { if (this.status < 400) { var pkg = JSON.parse(this.response); pkg.url = originalUrl; - this.addPackage(packageManager, pkg); + this.addPackage(pkg); var plugins = pkg.plugins || []; if (pkg.plugin) { plugins.push(pkg.plugin); } var promises = plugins.map((pluginUrl) => { - return pluginManager.loadPlugin(packageManager.mapPath(pkg, pluginUrl)); + return pluginManager.loadPlugin(this.mapPath(pkg, pluginUrl)); }); Promise.all(promises).then(resolve, resolve); } else { diff --git a/src/libraries/screensavermanager.js b/src/libraries/screensavermanager.js index 557b31e0f4..6d025ac67f 100644 --- a/src/libraries/screensavermanager.js +++ b/src/libraries/screensavermanager.js @@ -2,6 +2,7 @@ define(["events", "playbackManager", "pluginManager", "inputManager", "connectio "use strict"; playbackManager = playbackManager.default || playbackManager; + pluginManager = pluginManager.default || pluginManager; function getMinIdleTime() { // Returns the minimum amount of idle time required before the screen saver can be displayed diff --git a/src/scripts/site.js b/src/scripts/site.js index 7b5a72c042..7919ed510f 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -470,6 +470,7 @@ function initClient() { require(['apphost', 'css!assets/css/librarybrowser'], function (appHost) { loadPlugins(appHost, browser).then(function () { + console.groupEnd('loading packages'); onAppReady(browser); }); }); @@ -494,12 +495,18 @@ function initClient() { list = list.concat(window.NativeShell.getPlugins()); } - Promise.all(list.map(loadPlugin)).then(function () { - console.groupEnd('loading installed plugins'); - require(['packageManager'], function (packageManager) { - packageManager.default.init().then(resolve, reject); - }); - }, reject); + Promise.all(list.map(loadPlugin)) + .then(function () { + console.debug('finished loading plugins'); + }) + .catch(() => reject) + .finally(() => { + console.groupEnd('loading installed plugins'); + require(['packageManager'], function (packageManager) { + packageManager.default.init().then(resolve, reject); + }); + }) + ; }); }); }); From 4aa0ef49368508805321aaf901830df65bed2b1f Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Thu, 30 Jul 2020 20:34:21 +0200 Subject: [PATCH 011/285] Migrate appRouter to ES6 --- .eslintrc.js | 1 + package.json | 1 + src/components/actionSheet/actionSheet.js | 14 +- src/components/appRouter.js | 893 +++++++++++------- src/components/cardbuilder/cardBuilder.js | 28 +- src/components/dialogHelper/dialogHelper.js | 9 +- src/components/filtermenu/filtermenu.js | 2 + src/components/images/imageLoader.js | 14 +- src/components/indicators/indicators.js | 2 +- src/components/itemContextMenu.js | 5 +- src/components/mediainfo/mediainfo.js | 1 - .../metadataEditor/metadataEditor.js | 2 +- src/components/nowPlayingBar/nowPlayingBar.js | 18 +- src/components/playback/mediasession.js | 8 +- src/components/remotecontrol/remotecontrol.js | 18 +- src/components/scrollManager.js | 2 +- src/components/viewSettings/viewSettings.js | 2 + .../dashboard/plugins/repositories/index.js | 2 +- src/controllers/playback/video/index.js | 8 +- src/plugins/bookPlayer/plugin.js | 22 +- src/plugins/bookPlayer/tableOfContents.js | 18 +- src/plugins/htmlVideoPlayer/plugin.js | 6 +- src/plugins/youtubePlayer/plugin.js | 2 +- src/scripts/deleteHelper.js | 4 +- src/scripts/inputManager.js | 2 +- src/scripts/libraryMenu.js | 1 + src/scripts/serverNotifications.js | 1 + src/scripts/site.js | 275 +----- 28 files changed, 652 insertions(+), 709 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index ff12e198c3..a4e972c83e 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -44,6 +44,7 @@ module.exports = { 'no-unused-vars': ['error', { 'vars': 'all', 'args': 'none', 'ignoreRestSiblings': true }], 'one-var': ['error', 'never'], 'padded-blocks': ['error', 'never'], + //'prefer-const': ['error', {'destructuring': 'all'}], 'quotes': ['error', 'single', { 'avoidEscape': true, 'allowTemplateLiterals': false }], 'semi': ['error'], 'space-before-blocks': ['error'], diff --git a/package.json b/package.json index bf3ac42f97..744f080124 100644 --- a/package.json +++ b/package.json @@ -95,6 +95,7 @@ "src/components/alert.js", "src/components/alphaPicker/alphaPicker.js", "src/components/appFooter/appFooter.js", + "src/components/appRouter.js", "src/components/autoFocuser.js", "src/components/backdrop/backdrop.js", "src/components/cardbuilder/cardBuilder.js", diff --git a/src/components/actionSheet/actionSheet.js b/src/components/actionSheet/actionSheet.js index 937cd2afe5..be84cf0a06 100644 --- a/src/components/actionSheet/actionSheet.js +++ b/src/components/actionSheet/actionSheet.js @@ -9,14 +9,14 @@ import 'scrollStyles'; import 'listViewStyle'; function getOffsets(elems) { - let results = []; + const results = []; if (!document) { return results; } for (const elem of elems) { - let box = elem.getBoundingClientRect(); + const box = elem.getBoundingClientRect(); results.push({ top: box.top, @@ -34,7 +34,7 @@ function getPosition(options, dlg) { const windowHeight = windowSize.innerHeight; const windowWidth = windowSize.innerWidth; - let pos = getOffsets([options.positionTo])[0]; + const pos = getOffsets([options.positionTo])[0]; if (options.positionY !== 'top') { pos.top += (pos.height || 0) / 2; @@ -82,7 +82,7 @@ export function show(options) { // positionTo // showCancel // title - let dialogOptions = { + const dialogOptions = { removeOnClose: true, enableHistory: options.enableHistory, scrollY: false @@ -103,7 +103,7 @@ export function show(options) { dialogOptions.autoFocus = false; } - let dlg = dialogHelper.createDialog(dialogOptions); + const dlg = dialogHelper.createDialog(dialogOptions); if (isFullscreen) { dlg.classList.add('actionsheet-fullscreen'); @@ -129,7 +129,7 @@ export function show(options) { } let renderIcon = false; - let icons = []; + const icons = []; let itemIcon; for (const item of options.items) { itemIcon = item.icon || (item.selected ? 'check' : null); @@ -241,7 +241,7 @@ export function show(options) { centerFocus(dlg.querySelector('.actionSheetScroller'), false, true); } - let btnCloseActionSheet = dlg.querySelector('.btnCloseActionSheet'); + const btnCloseActionSheet = dlg.querySelector('.btnCloseActionSheet'); if (btnCloseActionSheet) { btnCloseActionSheet.addEventListener('click', function () { dialogHelper.close(dlg); diff --git a/src/components/appRouter.js b/src/components/appRouter.js index da3b08317c..c7495d6460 100644 --- a/src/components/appRouter.js +++ b/src/components/appRouter.js @@ -1,66 +1,294 @@ -define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdrop', 'browser', 'page', 'appSettings', 'apphost', 'connectionManager'], function (loading, globalize, events, viewManager, skinManager, backdrop, browser, page, appSettings, appHost, connectionManager) { - 'use strict'; +import appHost from 'apphost'; +import appSettings from 'appSettings'; +import backdrop from 'backdrop'; +import browser from 'browser'; +import connectionManager from 'connectionManager'; +import events from 'events'; +import globalize from 'globalize'; +import itemHelper from 'itemHelper'; +import loading from 'loading'; +import page from 'page'; +import viewManager from 'viewManager'; - browser = browser.default || browser; - loading = loading.default || loading; +class AppRouter { + allRoutes = []; + backdropContainer; + backgroundContainer; + currentRouteInfo; + currentViewLoadRequest; + firstConnectionResult; + forcedLogoutMsg; + handleAnchorClick = page.clickHandler; + isDummyBackToHome; + msgTimeout; + popstateOccurred = false; + resolveOnNextShow; + /** + * Pages of "no return" (when "Go back" should behave differently, probably quitting the application). + */ + startPages = ['home', 'login', 'selectserver']; - var appRouter = { - showLocalLogin: function (serverId, manualLogin) { - var pageName = manualLogin ? 'manuallogin' : 'login'; - show('/startup/' + pageName + '.html?serverid=' + serverId); - }, - showSelectServer: function () { - show('/startup/selectserver.html'); - }, - showWelcome: function () { - show('/startup/welcome.html'); - }, - showSettings: function () { - show('/settings/settings.html'); - }, - showNowPlaying: function () { - show('queue'); + constructor() { + window.addEventListener('popstate', () => { + this.popstateOccurred = true; + }); + + document.addEventListener('viewshow', () => { + const resolve = this.resolveOnNextShow; + if (resolve) { + this.resolveOnNextShow = null; + resolve(); + } + }); + + this.baseRoute = self.location.href.split('?')[0].replace(this.getRequestFile(), ''); + // support hashbang + this.baseRoute = this.baseRoute.split('#')[0]; + if (this.baseRoute.endsWith('/') && !this.baseRoute.endsWith('://')) { + this.baseRoute = this.baseRoute.substring(0, this.baseRoute.length - 1); } - }; - function beginConnectionWizard() { - backdrop.clearBackdrop(); + this.setBaseRoute(); + } + + /** + * @private + */ + setBaseRoute() { + let baseRoute = self.location.pathname.replace(this.getRequestFile(), ''); + if (baseRoute.lastIndexOf('/') === baseRoute.length - 1) { + baseRoute = baseRoute.substring(0, baseRoute.length - 1); + } + console.debug('setting page base to ' + baseRoute); + page.base(baseRoute); + } + + addRoute(path, newRoute) { + page(path, this.getHandler(newRoute)); + this.allRoutes.push(newRoute); + } + + showLocalLogin(serverId) { + this.show('login.html?serverid=' + serverId); + } + + showSelectServer() { + this.show(AppInfo.isNativeApp ? 'selectserver.html' : 'login.html'); + } + + showWelcome() { + this.show(AppInfo.isNativeApp ? 'selectserver.html' : 'login.html'); + } + + showSettings() { + this.show('mypreferencesmenu.html'); + } + + showNowPlaying() { + this.show('/nowplaying.html'); + } + + beginConnectionWizard() { + backdrop.clear(); loading.show(); connectionManager.connect({ enableAutoLogin: appSettings.enableAutoLogin() - }).then(function (result) { - handleConnectionResult(result); + }).then((result) => { + this.handleConnectionResult(result); }); } - function handleConnectionResult(result) { + param(name, url) { + name = name.replace(/[[]/, '\\[').replace(/[\]]/, '\\]'); + const regexS = '[\\?&]' + name + '=([^&#]*)'; + const regex = new RegExp(regexS, 'i'); + + const results = regex.exec(url || getWindowLocationSearch()); + if (results == null) { + return ''; + } else { + return decodeURIComponent(results[1].replace(/\+/g, ' ')); + } + } + + back() { + page.back(); + } + + show(path, options) { + if (path.indexOf('/') !== 0 && path.indexOf('://') === -1) { + path = '/' + path; + } + + path = path.replace(this.baseUrl(), ''); + + if (this.currentRouteInfo && this.currentRouteInfo.path === path) { + // can't use this with home right now due to the back menu + if (this.currentRouteInfo.route.type !== 'home') { + loading.hide(); + return Promise.resolve(); + } + } + + return new Promise((resolve) => { + this.resolveOnNextShow = resolve; + page.show(path, options); + }); + } + + showDirect(path) { + return new Promise(function(resolve) { + this.resolveOnNextShow = resolve; + page.show(this.baseUrl() + path); + }); + } + + start(options) { + loading.show(); + this.initApiClients(); + + events.on(appHost, 'beforeexit', this.onBeforeExit); + events.on(appHost, 'resume', this.onAppResume); + + connectionManager.connect({ + enableAutoLogin: appSettings.enableAutoLogin() + }).then((result) => { + this.firstConnectionResult = result; + options = options || {}; + page({ + click: options.click !== false, + hashbang: options.hashbang !== false + }); + }).catch().then(() => { + loading.hide(); + }); + } + + baseUrl() { + return this.baseRoute; + } + + canGoBack() { + const curr = this.current(); + if (!curr) { + return false; + } + + if (!document.querySelector('.dialogContainer') && this.startPages.indexOf(curr.type) !== -1) { + return false; + } + + return history.length > 1; + } + + current() { + return this.currentRouteInfo ? this.currentRouteInfo.route : null; + } + + invokeShortcut(id) { + if (id.indexOf('library-') === 0) { + id = id.replace('library-', ''); + id = id.split('_'); + + this.showItem(id[0], id[1]); + } else if (id.indexOf('item-') === 0) { + id = id.replace('item-', ''); + id = id.split('_'); + this.showItem(id[0], id[1]); + } else { + id = id.split('_'); + this.show(this.getRouteUrl(id[0], { + serverId: id[1] + })); + } + } + + showItem(item, serverId, options) { + // TODO: Refactor this so it only gets items, not strings. + if (typeof (item) === 'string') { + const apiClient = serverId ? connectionManager.getApiClient(serverId) : connectionManager.currentApiClient(); + apiClient.getItem(apiClient.getCurrentUserId(), item).then((itemObject) => { + this.showItem(itemObject, options); + }); + } else { + if (arguments.length === 2) { + options = arguments[1]; + } + + const url = this.getRouteUrl(item, options); + this.show(url, { + item: item + }); + } + } + + setTransparency(level) { + if (!this.backdropContainer) { + this.backdropContainer = document.querySelector('.backdropContainer'); + } + if (!this.backgroundContainer) { + this.backgroundContainer = document.querySelector('.backgroundContainer'); + } + + if (level === 'full' || level === 2) { + backdrop.clear(true); + document.documentElement.classList.add('transparentDocument'); + this.backgroundContainer.classList.add('backgroundContainer-transparent'); + this.backdropContainer.classList.add('hide'); + } else if (level === 'backdrop' || level === 1) { + backdrop.externalBackdrop(true); + document.documentElement.classList.add('transparentDocument'); + this.backgroundContainer.classList.add('backgroundContainer-transparent'); + this.backdropContainer.classList.add('hide'); + } else { + backdrop.externalBackdrop(false); + document.documentElement.classList.remove('transparentDocument'); + this.backgroundContainer.classList.remove('backgroundContainer-transparent'); + this.backdropContainer.classList.remove('hide'); + } + } + + getRoutes() { + return this.allRoutes; + } + + pushState(state, title, url) { + state.navigate = false; + history.pushState(state, title, url); + } + + enableNativeHistory() { + return false; + } + + handleConnectionResult(result) { switch (result.State) { case 'SignedIn': loading.hide(); Emby.Page.goHome(); break; case 'ServerSignIn': - result.ApiClient.getPublicUsers().then(function (users) { + result.ApiClient.getPublicUsers().then((users) => { if (users.length) { - appRouter.showLocalLogin(result.Servers[0].Id); + this.showLocalLogin(result.Servers[0].Id); } else { - appRouter.showLocalLogin(result.Servers[0].Id, true); + this.showLocalLogin(result.Servers[0].Id, true); } }); break; case 'ServerSelection': - appRouter.showSelectServer(); + this.showSelectServer(); break; case 'ConnectSignIn': - appRouter.showWelcome(); + this.showWelcome(); break; case 'ServerUpdateNeeded': - require(['alert'], function (alert) { - alert.default({ + require(['alert'], (alert) => { + alert({ text: globalize.translate('ServerUpdateNeeded', 'https://github.com/jellyfin/jellyfin'), html: globalize.translate('ServerUpdateNeeded', 'https://github.com/jellyfin/jellyfin') - }).then(function () { - appRouter.showSelectServer(); + }).then(() => { + this.showSelectServer(); }); }); break; @@ -69,8 +297,8 @@ define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdro } } - function loadContentUrl(ctx, next, route, request) { - var url; + loadContentUrl(ctx, next, route, request) { + let url; if (route.contentPath && typeof (route.contentPath) === 'function') { url = route.contentPath(ctx.querystring); } else { @@ -83,27 +311,27 @@ define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdro url = '/' + url; } - url = baseUrl() + url; + url = this.baseUrl() + url; } if (ctx.querystring && route.enableContentQueryString) { url += '?' + ctx.querystring; } - require(['text!' + url], function (html) { - loadContent(ctx, route, html, request); + require(['text!' + url], (html) => { + this.loadContent(ctx, route, html, request); }); } - function handleRoute(ctx, next, route) { - authenticate(ctx, route, function () { - initRoute(ctx, next, route); + handleRoute(ctx, next, route) { + this.authenticate(ctx, route, () => { + this.initRoute(ctx, next, route); }); } - function initRoute(ctx, next, route) { - var onInitComplete = function (controllerFactory) { - sendRouteToViewManager(ctx, next, route, controllerFactory); + initRoute(ctx, next, route) { + const onInitComplete = (controllerFactory) => { + this.sendRouteToViewManager(ctx, next, route, controllerFactory); }; if (route.controller) { @@ -113,25 +341,24 @@ define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdro } } - function cancelCurrentLoadRequest() { - var currentRequest = currentViewLoadRequest; + cancelCurrentLoadRequest() { + const currentRequest = this.currentViewLoadRequest; if (currentRequest) { currentRequest.cancel = true; } } - var currentViewLoadRequest; - function sendRouteToViewManager(ctx, next, route, controllerFactory) { - if (isDummyBackToHome && route.type === 'home') { - isDummyBackToHome = false; + sendRouteToViewManager(ctx, next, route, controllerFactory) { + if (this.isDummyBackToHome && route.type === 'home') { + this.isDummyBackToHome = false; return; } - cancelCurrentLoadRequest(); - var isBackNav = ctx.isBack; + this.cancelCurrentLoadRequest(); + const isBackNav = ctx.isBack; - var currentRequest = { - url: baseUrl() + ctx.path, + const currentRequest = { + url: this.baseUrl() + ctx.path, transition: route.transition, isBack: isBackNav, state: ctx.state, @@ -144,11 +371,11 @@ define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdro }, autoFocus: route.autoFocus }; - currentViewLoadRequest = currentRequest; + this.currentViewLoadRequest = currentRequest; - var onNewViewNeeded = function () { + const onNewViewNeeded = () => { if (typeof route.path === 'string') { - loadContentUrl(ctx, next, route, currentRequest); + this.loadContentUrl(ctx, next, route, currentRequest); } else { next(); } @@ -158,64 +385,62 @@ define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdro onNewViewNeeded(); return; } - viewManager.tryRestoreView(currentRequest, function () { - currentRouteInfo = { + viewManager.tryRestoreView(currentRequest, () => { + this.currentRouteInfo = { route: route, path: ctx.path }; - }).catch(function (result) { + }).catch((result) => { if (!result || !result.cancelled) { onNewViewNeeded(); } }); } - var msgTimeout; - var forcedLogoutMsg; - function onForcedLogoutMessageTimeout() { - var msg = forcedLogoutMsg; - forcedLogoutMsg = null; + onForcedLogoutMessageTimeout() { + const msg = this.forcedLogoutMsg; + this.forcedLogoutMsg = null; if (msg) { - require(['alert'], function (alert) { + require(['alert'], (alert) => { alert(msg); }); } } - function showForcedLogoutMessage(msg) { - forcedLogoutMsg = msg; - if (msgTimeout) { - clearTimeout(msgTimeout); + showForcedLogoutMessage(msg) { + this.forcedLogoutMsg = msg; + if (this.msgTimeout) { + clearTimeout(this.msgTimeout); } - msgTimeout = setTimeout(onForcedLogoutMessageTimeout, 100); + this.msgTimeout = setTimeout(this.onForcedLogoutMessageTimeout, 100); } - function onRequestFail(e, data) { - var apiClient = this; + onRequestFail(e, data) { + const apiClient = this; if (data.status === 403) { if (data.errorCode === 'ParentalControl') { - var isCurrentAllowed = currentRouteInfo ? (currentRouteInfo.route.anonymous || currentRouteInfo.route.startup) : true; + const isCurrentAllowed = this.currentRouteInfo ? (this.currentRouteInfo.route.anonymous || this.currentRouteInfo.route.startup) : true; // Bounce to the login screen, but not if a password entry fails, obviously if (!isCurrentAllowed) { - showForcedLogoutMessage(globalize.translate('AccessRestrictedTryAgainLater')); - appRouter.showLocalLogin(apiClient.serverId()); + this.showForcedLogoutMessage(globalize.translate('AccessRestrictedTryAgainLater')); + this.showLocalLogin(apiClient.serverId()); } } } } - function onBeforeExit(e) { + onBeforeExit() { if (browser.web0s) { page.restorePreviousState(); } } - function normalizeImageOptions(options) { - var setQuality; + normalizeImageOptions(options) { + let setQuality; if (options.maxWidth || options.width || options.maxHeight || options.height) { setQuality = true; } @@ -225,10 +450,10 @@ define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdro } } - function getMaxBandwidth() { + getMaxBandwidth() { /* eslint-disable compat/compat */ if (navigator.connection) { - var max = navigator.connection.downlinkMax; + let max = navigator.connection.downlinkMax; if (max && max > 0 && max < Number.POSITIVE_INFINITY) { max /= 8; max *= 1000000; @@ -241,90 +466,65 @@ define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdro return null; } - function getMaxBandwidthIOS() { + getMaxBandwidthIOS() { return 800000; } - function onApiClientCreated(e, newApiClient) { - newApiClient.normalizeImageOptions = normalizeImageOptions; + onApiClientCreated(e, newApiClient) { + newApiClient.normalizeImageOptions = this.normalizeImageOptions; if (browser.iOS) { - newApiClient.getMaxBandwidth = getMaxBandwidthIOS; + newApiClient.getMaxBandwidth = this.getMaxBandwidthIOS; } else { - newApiClient.getMaxBandwidth = getMaxBandwidth; + newApiClient.getMaxBandwidth = this.getMaxBandwidth; } - events.off(newApiClient, 'requestfail', onRequestFail); - events.on(newApiClient, 'requestfail', onRequestFail); + events.off(newApiClient, 'requestfail', this.onRequestFail); + events.on(newApiClient, 'requestfail', this.onRequestFail); } - function initApiClient(apiClient) { - onApiClientCreated({}, apiClient); + initApiClient(apiClient, instance) { + instance.onApiClientCreated({}, apiClient); } - function initApiClients() { - connectionManager.getApiClients().forEach(initApiClient); + initApiClients() { + connectionManager.getApiClients().forEach((apiClient) => { + this.initApiClient(apiClient, this); + }); - events.on(connectionManager, 'apiclientcreated', onApiClientCreated); + events.on(connectionManager, 'apiclientcreated', this.onApiClientCreated); } - function onAppResume() { - var apiClient = connectionManager.currentApiClient(); + onAppResume() { + const apiClient = connectionManager.currentApiClient(); if (apiClient) { apiClient.ensureWebSocket(); } } - var firstConnectionResult; - function start(options) { - loading.show(); - - initApiClients(); - - events.on(appHost, 'beforeexit', onBeforeExit); - events.on(appHost, 'resume', onAppResume); - - connectionManager.connect({ - enableAutoLogin: appSettings.enableAutoLogin() - }).then(function (result) { - firstConnectionResult = result; - options = options || {}; - page({ - click: options.click !== false, - hashbang: options.hashbang !== false - }); - }).catch().then(function() { - loading.hide(); - }); - } - - function enableNativeHistory() { - return false; - } - - function authenticate(ctx, route, callback) { - var firstResult = firstConnectionResult; + authenticate(ctx, route, callback) { + const firstResult = this.firstConnectionResult; if (firstResult) { - firstConnectionResult = null; + this.firstConnectionResult = null; if (firstResult.State !== 'SignedIn' && !route.anonymous) { - handleConnectionResult(firstResult); + this.handleConnectionResult(firstResult); return; } } - var apiClient = connectionManager.currentApiClient(); - var pathname = ctx.pathname.toLowerCase(); + const apiClient = connectionManager.currentApiClient(); + const pathname = ctx.pathname.toLowerCase(); console.debug('appRouter - processing path request ' + pathname); - var isCurrentRouteStartup = currentRouteInfo ? currentRouteInfo.route.startup : true; - var shouldExitApp = ctx.isBack && route.isDefaultRoute && isCurrentRouteStartup; + const isCurrentRouteStartup = this.currentRouteInfo ? this.currentRouteInfo.route.startup : true; + const shouldExitApp = ctx.isBack && route.isDefaultRoute && isCurrentRouteStartup; if (!shouldExitApp && (!apiClient || !apiClient.isLoggedIn()) && !route.anonymous) { console.debug('appRouter - route does not allow anonymous access, redirecting to login'); - beginConnectionWizard(); + this.beginConnectionWizard(); return; } @@ -344,9 +544,9 @@ define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdro Emby.Page.goHome(); return; } else if (route.roles) { - validateRoles(apiClient, route.roles).then(function () { + this.validateRoles(apiClient, route.roles).then(() => { callback(); - }, beginConnectionWizard); + }, this.beginConnectionWizard); return; } } @@ -355,15 +555,15 @@ define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdro callback(); } - function validateRoles(apiClient, roles) { - return Promise.all(roles.split(',').map(function (role) { - return validateRole(apiClient, role); + validateRoles(apiClient, roles) { + return Promise.all(roles.split(',').map((role) => { + return this.validateRole(apiClient, role); })); } - function validateRole(apiClient, role) { + validateRole(apiClient, role) { if (role === 'admin') { - return apiClient.getCurrentUser().then(function (user) { + return apiClient.getCurrentUser().then((user) => { if (user.Policy.IsAdministrator) { return Promise.resolve(); } @@ -375,15 +575,13 @@ define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdro return Promise.resolve(); } - var isDummyBackToHome; - - function loadContent(ctx, route, html, request) { + loadContent(ctx, route, html, request) { html = globalize.translateHtml(html, route.dictionary); request.view = html; viewManager.loadView(request); - currentRouteInfo = { + this.currentRouteInfo = { route: route, path: ctx.path }; @@ -391,10 +589,10 @@ define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdro ctx.handled = true; } - function getRequestFile() { - var path = self.location.pathname || ''; + getRequestFile() { + let path = self.location.pathname || ''; - var index = path.lastIndexOf('/'); + const index = path.lastIndexOf('/'); if (index !== -1) { path = path.substring(index); } else { @@ -408,39 +606,19 @@ define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdro return path; } - function endsWith(str, srch) { - return str.lastIndexOf(srch) === srch.length - 1; - } - - var baseRoute = self.location.href.split('?')[0].replace(getRequestFile(), ''); - // support hashbang - baseRoute = baseRoute.split('#')[0]; - if (endsWith(baseRoute, '/') && !endsWith(baseRoute, '://')) { - baseRoute = baseRoute.substring(0, baseRoute.length - 1); - } - - function baseUrl() { - return baseRoute; - } - - var popstateOccurred = false; - window.addEventListener('popstate', function () { - popstateOccurred = true; - }); - - function getHandler(route) { - return function (ctx, next) { - ctx.isBack = popstateOccurred; - handleRoute(ctx, next, route); - popstateOccurred = false; + getHandler(route) { + return (ctx, next) => { + ctx.isBack = this.popstateOccurred; + this.handleRoute(ctx, next, route); + this.popstateOccurred = false; }; } - function getWindowLocationSearch(win) { - var currentPath = currentRouteInfo ? (currentRouteInfo.path || '') : ''; + getWindowLocationSearch() { + const currentPath = this.currentRouteInfo ? (this.currentRouteInfo.path || '') : ''; - var index = currentPath.indexOf('?'); - var search = ''; + const index = currentPath.indexOf('?'); + let search = ''; if (index !== -1) { search = currentPath.substring(index); @@ -449,199 +627,218 @@ define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdro return search || ''; } - function param(name, url) { - name = name.replace(/[\[]/, '\\\[').replace(/[\]]/, '\\\]'); - var regexS = '[\\?&]' + name + '=([^&#]*)'; - var regex = new RegExp(regexS, 'i'); - - var results = regex.exec(url || getWindowLocationSearch()); - if (results == null) { - return ''; - } else { - return decodeURIComponent(results[1].replace(/\+/g, ' ')); - } + showGuide() { + this.show('livetv.html?tab=1'); } - function back() { - page.back(); + goHome() { + this.show('home.html'); } - /** - * Pages of "no return" (when "Go back" should behave differently, probably quitting the application). - */ - var startPages = ['home', 'login', 'selectserver']; - - function canGoBack() { - var curr = current(); - if (!curr) { - return false; - } - - if (!document.querySelector('.dialogContainer') && startPages.indexOf(curr.type) !== -1) { - return false; - } - - return (page.len || 0) > 0; + showSearch() { + this.show('search.html'); } - function showDirect(path) { - return new Promise(function(resolve, reject) { - resolveOnNextShow = resolve; - page.show(baseUrl() + path); - }); + showLiveTV() { + this.show('livetv.html'); } - function show(path, options) { - if (path.indexOf('/') !== 0 && path.indexOf('://') === -1) { - path = '/' + path; + showRecordedTV() { + this.show('livetv.html?tab=3'); + } + + showFavorites() { + this.show('home.html?tab=1'); + } + + setTitle(title) { + LibraryMenu.setTitle(title); + } + + getRouteUrl(item, options) { + if (!item) { + throw new Error('item cannot be null'); } - path = path.replace(baseUrl(), ''); + if (item.url) { + return item.url; + } - if (currentRouteInfo && currentRouteInfo.path === path) { - // can't use this with home right now due to the back menu - if (currentRouteInfo.route.type !== 'home') { - loading.hide(); - return Promise.resolve(); + const context = options ? options.context : null; + const id = item.Id || item.ItemId; + + if (!options) { + options = {}; + } + + let url; + // TODO: options will never be false. Replace condition with lodash's isEmpty() + const itemType = item.Type || (options ? options.itemType : null); + const serverId = item.ServerId || options.serverId; + + if (item === 'settings') { + return 'mypreferencesmenu.html'; + } + + if (item === 'wizard') { + return 'wizardstart.html'; + } + + if (item === 'manageserver') { + return 'dashboard.html'; + } + + if (item === 'recordedtv') { + return 'livetv.html?tab=3&serverId=' + options.serverId; + } + + if (item === 'nextup') { + return 'list.html?type=nextup&serverId=' + options.serverId; + } + + if (item === 'list') { + let url = 'list.html?serverId=' + options.serverId + '&type=' + options.itemTypes; + + if (options.isFavorite) { + url += '&IsFavorite=true'; + } + + return url; + } + + if (item === 'livetv') { + if (options.section === 'programs') { + return 'livetv.html?tab=0&serverId=' + options.serverId; + } + if (options.section === 'guide') { + return 'livetv.html?tab=1&serverId=' + options.serverId; + } + + if (options.section === 'movies') { + return 'list.html?type=Programs&IsMovie=true&serverId=' + options.serverId; + } + + if (options.section === 'shows') { + return 'list.html?type=Programs&IsSeries=true&IsMovie=false&IsNews=false&serverId=' + options.serverId; + } + + if (options.section === 'sports') { + return 'list.html?type=Programs&IsSports=true&serverId=' + options.serverId; + } + + if (options.section === 'kids') { + return 'list.html?type=Programs&IsKids=true&serverId=' + options.serverId; + } + + if (options.section === 'news') { + return 'list.html?type=Programs&IsNews=true&serverId=' + options.serverId; + } + + if (options.section === 'onnow') { + return 'list.html?type=Programs&IsAiring=true&serverId=' + options.serverId; + } + + if (options.section === 'dvrschedule') { + return 'livetv.html?tab=4&serverId=' + options.serverId; + } + + if (options.section === 'seriesrecording') { + return 'livetv.html?tab=5&serverId=' + options.serverId; + } + + return 'livetv.html?serverId=' + options.serverId; + } + + if (itemType == 'SeriesTimer') { + return 'details?seriesTimerId=' + id + '&serverId=' + serverId; + } + + if (item.CollectionType == 'livetv') { + return 'livetv.html'; + } + + if (item.Type === 'Genre') { + url = 'list.html?genreId=' + item.Id + '&serverId=' + serverId; + + if (context === 'livetv') { + url += '&type=Programs'; + } + + if (options.parentId) { + url += '&parentId=' + options.parentId; + } + + return url; + } + + if (item.Type === 'MusicGenre') { + url = 'list.html?musicGenreId=' + item.Id + '&serverId=' + serverId; + + if (options.parentId) { + url += '&parentId=' + options.parentId; + } + + return url; + } + + if (item.Type === 'Studio') { + url = 'list.html?studioId=' + item.Id + '&serverId=' + serverId; + + if (options.parentId) { + url += '&parentId=' + options.parentId; + } + + return url; + } + + if (context !== 'folders' && !itemHelper.isLocalItem(item)) { + if (item.CollectionType == 'movies') { + url = 'movies.html?topParentId=' + item.Id; + + if (options && options.section === 'latest') { + url += '&tab=1'; + } + + return url; + } + + if (item.CollectionType == 'tvshows') { + url = 'tv.html?topParentId=' + item.Id; + + if (options && options.section === 'latest') { + url += '&tab=2'; + } + + return url; + } + + if (item.CollectionType == 'music') { + return 'music.html?topParentId=' + item.Id; } } - return new Promise(function (resolve, reject) { - resolveOnNextShow = resolve; - page.show(path, options); - }); - } + const itemTypes = ['Playlist', 'TvChannel', 'Program', 'BoxSet', 'MusicAlbum', 'MusicGenre', 'Person', 'Recording', 'MusicArtist']; - var resolveOnNextShow; - document.addEventListener('viewshow', function () { - var resolve = resolveOnNextShow; - if (resolve) { - resolveOnNextShow = null; - resolve(); + if (itemTypes.indexOf(itemType) >= 0) { + return 'details?id=' + id + '&serverId=' + serverId; } - }); - var currentRouteInfo; - function current() { - return currentRouteInfo ? currentRouteInfo.route : null; - } + const contextSuffix = context ? '&context=' + context : ''; - function showItem(item, serverId, options) { - // TODO: Refactor this so it only gets items, not strings. - if (typeof (item) === 'string') { - var apiClient = serverId ? connectionManager.getApiClient(serverId) : connectionManager.currentApiClient(); - apiClient.getItem(apiClient.getCurrentUserId(), item).then(function (itemObject) { - appRouter.showItem(itemObject, options); - }); - } else { - if (arguments.length === 2) { - options = arguments[1]; + if (itemType == 'Series' || itemType == 'Season' || itemType == 'Episode') { + return 'details?id=' + id + contextSuffix + '&serverId=' + serverId; + } + + if (item.IsFolder) { + if (id) { + return 'list.html?parentId=' + id + '&serverId=' + serverId; } - var url = appRouter.getRouteUrl(item, options); - appRouter.show(url, { - item: item - }); - } - } - - var allRoutes = []; - - function addRoute(path, newRoute) { - page(path, getHandler(newRoute)); - allRoutes.push(newRoute); - } - - function getRoutes() { - return allRoutes; - } - - var backdropContainer; - var backgroundContainer; - function setTransparency(level) { - if (!backdropContainer) { - backdropContainer = document.querySelector('.backdropContainer'); - } - if (!backgroundContainer) { - backgroundContainer = document.querySelector('.backgroundContainer'); + return '#'; } - if (level === 'full' || level === 2) { - backdrop.clearBackdrop(true); - document.documentElement.classList.add('transparentDocument'); - backgroundContainer.classList.add('backgroundContainer-transparent'); - backdropContainer.classList.add('hide'); - } else if (level === 'backdrop' || level === 1) { - backdrop.externalBackdrop(true); - document.documentElement.classList.add('transparentDocument'); - backgroundContainer.classList.add('backgroundContainer-transparent'); - backdropContainer.classList.add('hide'); - } else { - backdrop.externalBackdrop(false); - document.documentElement.classList.remove('transparentDocument'); - backgroundContainer.classList.remove('backgroundContainer-transparent'); - backdropContainer.classList.remove('hide'); - } + return 'details?id=' + id + '&serverId=' + serverId; } +} - function pushState(state, title, url) { - state.navigate = false; - history.pushState(state, title, url); - } - - function setBaseRoute() { - var baseRoute = self.location.pathname.replace(getRequestFile(), ''); - if (baseRoute.lastIndexOf('/') === baseRoute.length - 1) { - baseRoute = baseRoute.substring(0, baseRoute.length - 1); - } - - console.debug('setting page base to ' + baseRoute); - page.base(baseRoute); - } - - setBaseRoute(); - - function invokeShortcut(id) { - if (id.indexOf('library-') === 0) { - id = id.replace('library-', ''); - id = id.split('_'); - - appRouter.showItem(id[0], id[1]); - } else if (id.indexOf('item-') === 0) { - id = id.replace('item-', ''); - id = id.split('_'); - - appRouter.showItem(id[0], id[1]); - } else { - id = id.split('_'); - appRouter.show(appRouter.getRouteUrl(id[0], { - serverId: id[1] - })); - } - } - - appRouter.addRoute = addRoute; - appRouter.param = param; - appRouter.back = back; - appRouter.show = show; - appRouter.showDirect = showDirect; - appRouter.start = start; - appRouter.baseUrl = baseUrl; - appRouter.canGoBack = canGoBack; - appRouter.current = current; - appRouter.beginConnectionWizard = beginConnectionWizard; - appRouter.invokeShortcut = invokeShortcut; - appRouter.showItem = showItem; - appRouter.setTransparency = setTransparency; - appRouter.getRoutes = getRoutes; - appRouter.pushState = pushState; - appRouter.enableNativeHistory = enableNativeHistory; - appRouter.handleAnchorClick = page.clickHandler; - appRouter.TransparencyLevel = { - None: 0, - Backdrop: 1, - Full: 2 - }; - - return appRouter; -}); +export default new AppRouter(); diff --git a/src/components/cardbuilder/cardBuilder.js b/src/components/cardbuilder/cardBuilder.js index 4a37331ef4..e644365906 100644 --- a/src/components/cardbuilder/cardBuilder.js +++ b/src/components/cardbuilder/cardBuilder.js @@ -362,12 +362,12 @@ import 'programStyles'; let hasOpenRow; let hasOpenSection; - let sectionTitleTagName = options.sectionTitleTagName || 'div'; + const sectionTitleTagName = options.sectionTitleTagName || 'div'; let apiClient; let lastServerId; for (const [i, item] of items.entries()) { - let serverId = item.ServerId || options.serverId; + const serverId = item.ServerId || options.serverId; if (serverId !== lastServerId) { lastServerId = serverId; @@ -621,7 +621,7 @@ import 'programStyles'; }); } - let blurHashes = options.imageBlurhashes || item.ImageBlurHashes || {}; + const blurHashes = options.imageBlurhashes || item.ImageBlurHashes || {}; return { imgUrl: imgUrl, @@ -656,7 +656,7 @@ import 'programStyles'; for (let i = 0; i < character.length; i++) { sum += parseInt(character.charAt(i)); } - let index = String(sum).substr(-1); + const index = String(sum).substr(-1); return (index % numRandomColors) + 1; } else { @@ -682,7 +682,7 @@ import 'programStyles'; for (let i = 0; i < lines.length; i++) { let currentCssClass = cssClass; - let text = lines[i]; + const text = lines[i]; if (valid > 0 && isOuterFooter) { currentCssClass += ' cardText-secondary'; @@ -707,7 +707,7 @@ import 'programStyles'; } if (forceLines) { - let linesLength = maxLines || Math.min(lines.length, maxLines || lines.length); + const linesLength = maxLines || Math.min(lines.length, maxLines || lines.length); while (valid < linesLength) { html += "
 
"; @@ -1036,7 +1036,7 @@ import 'programStyles'; * @returns {string} HTML markup for the item count indicator. */ function getItemCountsHtml(options, item) { - let counts = []; + const counts = []; let childText; if (item.Type === 'Playlist') { @@ -1318,7 +1318,7 @@ import 'programStyles'; let cardBoxClose = ''; let cardScalableClose = ''; - let cardContentClass = 'cardContent'; + const cardContentClass = 'cardContent'; let blurhashAttrib = ''; if (blurhash && blurhash.length > 0) { @@ -1337,7 +1337,7 @@ import 'programStyles'; cardImageContainerClose = ''; } - let cardScalableClass = 'cardScalable'; + const cardScalableClass = 'cardScalable'; cardImageContainerOpen = '
' + cardImageContainerOpen; cardBoxClose = '
'; @@ -1681,7 +1681,7 @@ import 'programStyles'; const cells = itemsContainer.querySelectorAll('.card[data-id="' + programId + '"]'); for (let i = 0, length = cells.length; i < length; i++) { - let cell = cells[i]; + const cell = cells[i]; const icon = cell.querySelector('.timerIndicator'); if (!icon) { const indicatorsElem = ensureIndicators(cell); @@ -1700,8 +1700,8 @@ import 'programStyles'; const cells = itemsContainer.querySelectorAll('.card[data-timerid="' + timerId + '"]'); for (let i = 0; i < cells.length; i++) { - let cell = cells[i]; - let icon = cell.querySelector('.timerIndicator'); + const cell = cells[i]; + const icon = cell.querySelector('.timerIndicator'); if (icon) { icon.parentNode.removeChild(icon); } @@ -1718,8 +1718,8 @@ import 'programStyles'; const cells = itemsContainer.querySelectorAll('.card[data-seriestimerid="' + cancelledTimerId + '"]'); for (let i = 0; i < cells.length; i++) { - let cell = cells[i]; - let icon = cell.querySelector('.timerIndicator'); + const cell = cells[i]; + const icon = cell.querySelector('.timerIndicator'); if (icon) { icon.parentNode.removeChild(icon); } diff --git a/src/components/dialogHelper/dialogHelper.js b/src/components/dialogHelper/dialogHelper.js index 1f11d8a195..a9ca595c30 100644 --- a/src/components/dialogHelper/dialogHelper.js +++ b/src/components/dialogHelper/dialogHelper.js @@ -375,7 +375,7 @@ import 'scrollStyles'; dlg.setAttribute('data-lockscroll', 'true'); } - if (options.enableHistory !== false && appRouter.enableNativeHistory()) { + if (options.enableHistory !== false) { dlg.setAttribute('data-history', 'true'); } @@ -391,11 +391,8 @@ import 'scrollStyles'; dlg.setAttribute('data-autofocus', 'true'); } - let defaultEntryAnimation; - let defaultExitAnimation; - - defaultEntryAnimation = 'scaleup'; - defaultExitAnimation = 'scaledown'; + const defaultEntryAnimation = 'scaleup'; + const defaultExitAnimation = 'scaledown'; const entryAnimation = options.entryAnimation || defaultEntryAnimation; const exitAnimation = options.exitAnimation || defaultExitAnimation; diff --git a/src/components/filtermenu/filtermenu.js b/src/components/filtermenu/filtermenu.js index b02b5fb9f8..b976ea3f90 100644 --- a/src/components/filtermenu/filtermenu.js +++ b/src/components/filtermenu/filtermenu.js @@ -2,6 +2,8 @@ define(['require', 'dom', 'focusManager', 'dialogHelper', 'loading', 'apphost', 'use strict'; focusManager = focusManager.default || focusManager; + appRouter = appRouter.default || appRouter; + function onSubmit(e) { e.preventDefault(); return false; diff --git a/src/components/images/imageLoader.js b/src/components/images/imageLoader.js index 0effcc7a57..39dc6c2622 100644 --- a/src/components/images/imageLoader.js +++ b/src/components/images/imageLoader.js @@ -17,8 +17,8 @@ import 'css!./style'; // Although the default values recommended by Blurhash developers is 32x32, a size of 18x18 seems to be the sweet spot for us, // improving the performance and reducing the memory usage, while retaining almost full blur quality. // Lower values had more visible pixelation - let width = 18; - let height = 18; + const width = 18; + const height = 18; let pixels; try { pixels = blurhash.decode(blurhashstr, width, height); @@ -27,11 +27,11 @@ import 'css!./style'; target.classList.add('non-blurhashable'); return; } - let canvas = document.createElement('canvas'); + const canvas = document.createElement('canvas'); canvas.width = width; canvas.height = height; - let ctx = canvas.getContext('2d'); - let imgData = ctx.createImageData(width, height); + const ctx = canvas.getContext('2d'); + const imgData = ctx.createImageData(width, height); imgData.data.set(pixels); ctx.putImageData(imgData, 0, 0); @@ -55,7 +55,7 @@ import 'css!./style'; if (!entry) { throw new Error('entry cannot be null'); } - let target = entry.target; + const target = entry.target; var source = undefined; if (target) { @@ -78,7 +78,7 @@ import 'css!./style'; throw new TypeError('url cannot be undefined'); } - let preloaderImg = new Image(); + const preloaderImg = new Image(); preloaderImg.src = url; elem.classList.add('lazy-hidden'); diff --git a/src/components/indicators/indicators.js b/src/components/indicators/indicators.js index 604f480f1d..bbd672ef72 100644 --- a/src/components/indicators/indicators.js +++ b/src/components/indicators/indicators.js @@ -82,7 +82,7 @@ export function enablePlayedIndicator(item) { export function getPlayedIndicatorHtml(item) { if (enablePlayedIndicator(item)) { - let userData = item.UserData || {}; + const userData = item.UserData || {}; if (userData.UnplayedItemCount) { return '
' + userData.UnplayedItemCount + '
'; } diff --git a/src/components/itemContextMenu.js b/src/components/itemContextMenu.js index 173383d064..a42a7537a1 100644 --- a/src/components/itemContextMenu.js +++ b/src/components/itemContextMenu.js @@ -8,7 +8,6 @@ import browser from 'browser'; import actionsheet from 'actionsheet'; /* eslint-disable indent */ - export function getCommands(options) { const item = options.item; const user = options.user; @@ -16,7 +15,7 @@ import actionsheet from 'actionsheet'; const canPlay = playbackManager.canPlay(item); const restrictOptions = (browser.operaTv || browser.web0s) && !user.Policy.IsAdministrator; - let commands = []; + const commands = []; if (canPlay && item.MediaType !== 'Photo') { if (options.play !== false) { @@ -367,7 +366,7 @@ import actionsheet from 'actionsheet'; case 'copy-stream': { const downloadHref = apiClient.getItemDownloadUrl(itemId); const textAreaCopy = function () { - let textArea = document.createElement('textarea'); + const textArea = document.createElement('textarea'); textArea.value = downloadHref; document.body.appendChild(textArea); textArea.focus(); diff --git a/src/components/mediainfo/mediainfo.js b/src/components/mediainfo/mediainfo.js index 53982040b8..4ead1c4dd8 100644 --- a/src/components/mediainfo/mediainfo.js +++ b/src/components/mediainfo/mediainfo.js @@ -9,7 +9,6 @@ import 'programStyles'; import 'emby-button'; /* eslint-disable indent */ - function getTimerIndicator(item) { let status; diff --git a/src/components/metadataEditor/metadataEditor.js b/src/components/metadataEditor/metadataEditor.js index be44e86b44..3dbf5c4264 100644 --- a/src/components/metadataEditor/metadataEditor.js +++ b/src/components/metadataEditor/metadataEditor.js @@ -247,7 +247,7 @@ import 'flexStyles'; reload(context, parentId, item.ServerId); } else { require(['appRouter'], function (appRouter) { - appRouter.goHome(); + appRouter.default.goHome(); }); } } diff --git a/src/components/nowPlayingBar/nowPlayingBar.js b/src/components/nowPlayingBar/nowPlayingBar.js index d411dcc620..7aa8c623b3 100644 --- a/src/components/nowPlayingBar/nowPlayingBar.js +++ b/src/components/nowPlayingBar/nowPlayingBar.js @@ -500,20 +500,20 @@ import 'emby-ratingbutton'; const textLines = nowPlayingItem ? nowPlayingHelper.getNowPlayingNames(nowPlayingItem) : []; nowPlayingTextElement.innerHTML = ''; if (textLines) { - let itemText = document.createElement('div'); - let secondaryText = document.createElement('div'); + const itemText = document.createElement('div'); + const secondaryText = document.createElement('div'); secondaryText.classList.add('nowPlayingBarSecondaryText'); if (textLines.length > 1) { textLines[1].secondary = true; if (textLines[1].text) { - let text = document.createElement('a'); + const text = document.createElement('a'); text.innerHTML = textLines[1].text; secondaryText.appendChild(text); } } if (textLines[0].text) { - let text = document.createElement('a'); + const text = document.createElement('a'); text.innerHTML = textLines[0].text; itemText.appendChild(text); } @@ -555,10 +555,10 @@ import 'emby-ratingbutton'; if (!layoutManager.mobile) { let contextButton = nowPlayingBarElement.querySelector('.btnToggleContextMenu'); // We remove the previous event listener by replacing the item in each update event - let contextButtonClone = contextButton.cloneNode(true); + const contextButtonClone = contextButton.cloneNode(true); contextButton.parentNode.replaceChild(contextButtonClone, contextButton); contextButton = nowPlayingBarElement.querySelector('.btnToggleContextMenu'); - let options = { + const options = { play: false, queue: false, clearQueue: true, @@ -600,10 +600,10 @@ import 'emby-ratingbutton'; return; } - let shuffleMode = playbackManager.getQueueShuffleMode(); - let context = nowPlayingBarElement; + const shuffleMode = playbackManager.getQueueShuffleMode(); + const context = nowPlayingBarElement; const cssClass = 'buttonActive'; - let toggleShuffleButton = context.querySelector('.btnShuffleQueue'); + const toggleShuffleButton = context.querySelector('.btnShuffleQueue'); switch (shuffleMode) { case 'Shuffle': toggleShuffleButton.classList.add(cssClass); diff --git a/src/components/playback/mediasession.js b/src/components/playback/mediasession.js index 0f275c88f7..5c7ddf45dd 100644 --- a/src/components/playback/mediasession.js +++ b/src/components/playback/mediasession.js @@ -127,7 +127,7 @@ import connectionManager from 'connectionManager'; artwork: getImageUrls(item) }); } else { - let itemImageUrl = seriesImageUrl(item, { maxHeight: 3000 }) || imageUrl(item, { maxHeight: 3000 }); + const itemImageUrl = seriesImageUrl(item, { maxHeight: 3000 }) || imageUrl(item, { maxHeight: 3000 }); window.NativeShell.updateMediaSession({ action: eventName, @@ -244,10 +244,10 @@ import connectionManager from 'connectionManager'; /* eslint-disable-next-line compat/compat */ navigator.mediaSession.setActionHandler('seekto', function (object) { - let item = playbackManager.getPlayerState(currentPlayer).NowPlayingItem; + const item = playbackManager.getPlayerState(currentPlayer).NowPlayingItem; // Convert to ms - let duration = parseInt(item.RunTimeTicks ? (item.RunTimeTicks / 10000) : 0); - let wantedTime = object.seekTime * 1000; + const duration = parseInt(item.RunTimeTicks ? (item.RunTimeTicks / 10000) : 0); + const wantedTime = object.seekTime * 1000; playbackManager.seekPercent(wantedTime / duration * 100, currentPlayer); }); } diff --git a/src/components/remotecontrol/remotecontrol.js b/src/components/remotecontrol/remotecontrol.js index b5ac4c9a8b..363eb5ab00 100644 --- a/src/components/remotecontrol/remotecontrol.js +++ b/src/components/remotecontrol/remotecontrol.js @@ -127,8 +127,8 @@ define(['browser', 'datetime', 'backdrop', 'libraryBrowser', 'listView', 'imageL if (item.Artists != null) { if (item.ArtistItems != null) { for (const artist of item.ArtistItems) { - let artistName = artist.Name; - let artistId = artist.Id; + const artistName = artist.Name; + const artistId = artist.Id; artistsSeries += `${artistName}`; if (artist !== item.ArtistItems.slice(-1)[0]) { artistsSeries += ', '; @@ -185,7 +185,7 @@ define(['browser', 'datetime', 'backdrop', 'libraryBrowser', 'listView', 'imageL let contextButton = context.querySelector('.btnToggleContextMenu'); // We remove the previous event listener by replacing the item in each update event const autoFocusContextButton = document.activeElement === contextButton; - let contextButtonClone = contextButton.cloneNode(true); + const contextButtonClone = contextButton.cloneNode(true); contextButton.parentNode.replaceChild(contextButtonClone, contextButton); contextButton = context.querySelector('.btnToggleContextMenu'); if (autoFocusContextButton) { @@ -362,7 +362,7 @@ define(['browser', 'datetime', 'backdrop', 'libraryBrowser', 'listView', 'imageL function updateRepeatModeDisplay(repeatMode) { var context = dlg; - let toggleRepeatButtons = context.querySelectorAll('.repeatToggleButton'); + const toggleRepeatButtons = context.querySelectorAll('.repeatToggleButton'); const cssClass = 'buttonActive'; let innHtml = ''; let repeatOn = true; @@ -529,12 +529,12 @@ define(['browser', 'datetime', 'backdrop', 'libraryBrowser', 'listView', 'imageL } function onShuffleQueueModeChange(updateView = true) { - let shuffleMode = playbackManager.getQueueShuffleMode(this); - let context = dlg; + const shuffleMode = playbackManager.getQueueShuffleMode(this); + const context = dlg; const cssClass = 'buttonActive'; - let shuffleButtons = context.querySelectorAll('.btnShuffleQueue'); + const shuffleButtons = context.querySelectorAll('.btnShuffleQueue'); - for (let shuffleButton of shuffleButtons) { + for (const shuffleButton of shuffleButtons) { switch (shuffleMode) { case 'Shuffle': shuffleButton.classList.add(cssClass); @@ -877,7 +877,7 @@ define(['browser', 'datetime', 'backdrop', 'libraryBrowser', 'listView', 'imageL volumecontrolHtml += ``; volumecontrolHtml += '
'; volumecontrolHtml += '
'; - let optionsSection = context.querySelector('.playlistSectionButton'); + const optionsSection = context.querySelector('.playlistSectionButton'); if (!layoutManager.mobile) { context.querySelector('.nowPlayingSecondaryButtons').insertAdjacentHTML('beforeend', volumecontrolHtml); optionsSection.classList.remove('align-items-center', 'justify-content-center'); diff --git a/src/components/scrollManager.js b/src/components/scrollManager.js index 4ee31a6275..549cb9445c 100644 --- a/src/components/scrollManager.js +++ b/src/components/scrollManager.js @@ -251,7 +251,7 @@ import layoutManager from 'layoutManager'; * @return {ScrollerData} Scroller data. */ function getScrollerData(scroller, vertical) { - let data = {}; + const data = {}; if (!vertical) { data.scrollPos = scroller.scrollLeft; diff --git a/src/components/viewSettings/viewSettings.js b/src/components/viewSettings/viewSettings.js index 67abc25a9c..0427618f26 100644 --- a/src/components/viewSettings/viewSettings.js +++ b/src/components/viewSettings/viewSettings.js @@ -1,6 +1,8 @@ define(['require', 'dialogHelper', 'loading', 'apphost', 'layoutManager', 'connectionManager', 'appRouter', 'globalize', 'userSettings', 'emby-checkbox', 'emby-input', 'paper-icon-button-light', 'emby-select', 'material-icons', 'css!./../formdialog', 'emby-button', 'flexStyles'], function (require, dialogHelper, loading, appHost, layoutManager, connectionManager, appRouter, globalize, userSettings) { 'use strict'; + appRouter = appRouter.default || appRouter; + function onSubmit(e) { e.preventDefault(); return false; diff --git a/src/controllers/dashboard/plugins/repositories/index.js b/src/controllers/dashboard/plugins/repositories/index.js index 3087cdd927..25cbbac38a 100644 --- a/src/controllers/dashboard/plugins/repositories/index.js +++ b/src/controllers/dashboard/plugins/repositories/index.js @@ -105,7 +105,7 @@ export default function(view, params) { }); view.querySelector('.btnNewRepository').addEventListener('click', () => { - let dialog = dialogHelper.createDialog({ + const dialog = dialogHelper.createDialog({ scrollY: false, size: 'large', modal: false, diff --git a/src/controllers/playback/video/index.js b/src/controllers/playback/video/index.js index a8bd0e01f3..8f46d24f0e 100644 --- a/src/controllers/playback/video/index.js +++ b/src/controllers/playback/video/index.js @@ -172,9 +172,7 @@ import 'css!assets/css/videoosd'; } setTitle(displayItem, parentName); - let titleElement; - const osdTitle = view.querySelector('.osdTitle'); - titleElement = osdTitle; + const titleElement = view.querySelector('.osdTitle'); let displayName = itemHelper.getDisplayName(displayItem, { includeParentInfo: displayItem.Type !== 'Program', includeIndexNumber: displayItem.Type !== 'Program' @@ -1442,7 +1440,7 @@ import 'css!assets/css/videoosd'; }); } catch (e) { import('appRouter').then(({default: appRouter}) => { - appRouter.goHome(); + appRouter.default.goHome(); }); } }); @@ -1619,7 +1617,7 @@ import 'css!assets/css/videoosd'; const item = currentItem; if (item && item.Chapters && item.Chapters.length && item.Chapters[0].ImageTag) { - let html = getChapterBubbleHtml(connectionManager.getApiClient(item.ServerId), item, item.Chapters, ticks); + const html = getChapterBubbleHtml(connectionManager.getApiClient(item.ServerId), item, item.Chapters, ticks); if (html) { return html; diff --git a/src/plugins/bookPlayer/plugin.js b/src/plugins/bookPlayer/plugin.js index c167046cb9..9563173536 100644 --- a/src/plugins/bookPlayer/plugin.js +++ b/src/plugins/bookPlayer/plugin.js @@ -27,16 +27,16 @@ export class BookPlayer { this._loaded = false; loading.show(); - let elem = this.createMediaElement(); + const elem = this.createMediaElement(); return this.setCurrentSrc(elem, options); } stop() { this.unbindEvents(); - let elem = this._mediaElement; - let tocElement = this._tocElement; - let rendition = this._rendition; + const elem = this._mediaElement; + const tocElement = this._tocElement; + const rendition = this._rendition; if (elem) { dialogHelper.close(elem); @@ -147,7 +147,7 @@ export class BookPlayer { } bindMediaElementEvents() { - let elem = this._mediaElement; + const elem = this._mediaElement; elem.addEventListener('close', this.onDialogClosed, {once: true}); elem.querySelector('.btnBookplayerExit').addEventListener('click', this.onDialogClosed, {once: true}); @@ -166,7 +166,7 @@ export class BookPlayer { } unbindMediaElementEvents() { - let elem = this._mediaElement; + const elem = this._mediaElement; elem.removeEventListener('close', this.onDialogClosed); elem.querySelector('.btnBookplayerExit').removeEventListener('click', this.onDialogClosed); @@ -231,7 +231,7 @@ export class BookPlayer { } setCurrentSrc(elem, options) { - let item = options.items[0]; + const item = options.items[0]; this._currentItem = item; this.streamInfo = { started: true, @@ -241,8 +241,8 @@ export class BookPlayer { } }; - let serverId = item.ServerId; - let apiClient = connectionManager.getApiClient(serverId); + const serverId = item.ServerId; + const apiClient = connectionManager.getApiClient(serverId); return new Promise((resolve, reject) => { import('epubjs').then(({default: epubjs}) => { @@ -252,14 +252,14 @@ export class BookPlayer { this._currentSrc = downloadHref; this._rendition = rendition; - let cancellationToken = { + const cancellationToken = { shouldCancel: false }; this._cancellationToken = cancellationToken; return rendition.display().then(() => { - let epubElem = document.querySelector('.epub-container'); + const epubElem = document.querySelector('.epub-container'); epubElem.style.display = 'none'; this.bindEvents(); diff --git a/src/plugins/bookPlayer/tableOfContents.js b/src/plugins/bookPlayer/tableOfContents.js index 23e288aff5..a1c5d8f220 100644 --- a/src/plugins/bookPlayer/tableOfContents.js +++ b/src/plugins/bookPlayer/tableOfContents.js @@ -11,7 +11,7 @@ export default class TableOfContents { } destroy() { - let elem = this._elem; + const elem = this._elem; if (elem) { this.unbindEvents(); dialogHelper.close(elem); @@ -21,14 +21,14 @@ export default class TableOfContents { } bindEvents() { - let elem = this._elem; + const elem = this._elem; elem.addEventListener('close', this.onDialogClosed, {once: true}); elem.querySelector('.btnBookplayerTocClose').addEventListener('click', this.onDialogClosed, {once: true}); } unbindEvents() { - let elem = this._elem; + const elem = this._elem; elem.removeEventListener('close', this.onDialogClosed); elem.querySelector('.btnBookplayerTocClose').removeEventListener('click', this.onDialogClosed); @@ -39,10 +39,10 @@ export default class TableOfContents { } replaceLinks(contents, f) { - let links = contents.querySelectorAll('a[href]'); + const links = contents.querySelectorAll('a[href]'); links.forEach((link) => { - let href = link.getAttribute('href'); + const href = link.getAttribute('href'); link.onclick = () => { f(href); @@ -52,9 +52,9 @@ export default class TableOfContents { } createMediaElement() { - let rendition = this._rendition; + const rendition = this._rendition; - let elem = dialogHelper.createDialog({ + const elem = dialogHelper.createDialog({ size: 'small', autoFocus: false, removeOnClose: true @@ -69,7 +69,7 @@ export default class TableOfContents { rendition.book.navigation.forEach((chapter) => { tocHtml += '
  • '; // Remove '../' from href - let link = chapter.href.startsWith('../') ? chapter.href.substr(3) : chapter.href; + const link = chapter.href.startsWith('../') ? chapter.href.substr(3) : chapter.href; tocHtml += `${chapter.label}`; tocHtml += '
  • '; }); @@ -78,7 +78,7 @@ export default class TableOfContents { elem.innerHTML = tocHtml; this.replaceLinks(elem, (href) => { - let relative = rendition.book.path.relative(href); + const relative = rendition.book.path.relative(href); rendition.display(relative); this.destroy(); }); diff --git a/src/plugins/htmlVideoPlayer/plugin.js b/src/plugins/htmlVideoPlayer/plugin.js index 525372ac88..40fa98c650 100644 --- a/src/plugins/htmlVideoPlayer/plugin.js +++ b/src/plugins/htmlVideoPlayer/plugin.js @@ -105,7 +105,7 @@ function tryRemoveElement(elem) { } function hidePrePlaybackPage() { - let animatedPage = document.querySelector('.page:not(.hide)'); + const animatedPage = document.querySelector('.page:not(.hide)'); animatedPage.classList.add('hide'); // At this point, we must hide the scrollbar placeholder, so it's not being displayed while the item is being loaded document.body.classList.remove('force-scroll'); @@ -822,8 +822,8 @@ function tryRemoveElement(elem) { } }); - if (this._currentPlayOptions.fullscreen) { - appRouter.showVideoOsd().then(this.onNavigatedToOsd); + if (self._currentPlayOptions.fullscreen) { + appRouter.show('videoosd.html').then(this.onNavigatedToOsd); } else { appRouter.setTransparency('backdrop'); this.#videoDialog.classList.remove('videoPlayerContainer-onTop'); diff --git a/src/plugins/youtubePlayer/plugin.js b/src/plugins/youtubePlayer/plugin.js index eed75a8116..f7b6a04a97 100644 --- a/src/plugins/youtubePlayer/plugin.js +++ b/src/plugins/youtubePlayer/plugin.js @@ -106,7 +106,7 @@ function onPlaying(instance, playOptions, resolve) { instance.timeUpdateInterval = setInterval(onTimeUpdate.bind(instance), 500); if (playOptions.fullscreen) { - appRouter.showVideoOsd().then(function () { + appRouter.show('videoosd.html').then(function () { instance.videoDialog.classList.remove('onTop'); }); } else { diff --git a/src/scripts/deleteHelper.js b/src/scripts/deleteHelper.js index e10a1568c7..44876c75b3 100644 --- a/src/scripts/deleteHelper.js +++ b/src/scripts/deleteHelper.js @@ -15,7 +15,7 @@ export function deleteItem(options) { const item = options.item; const parentId = item.SeasonId || item.SeriesId || item.ParentId; - let apiClient = connectionManager.getApiClient(item.ServerId); + const apiClient = connectionManager.getApiClient(item.ServerId); return confirm({ @@ -34,7 +34,7 @@ export function deleteItem(options) { } } }, function (err) { - let result = function () { + const result = function () { return Promise.reject(err); }; diff --git a/src/scripts/inputManager.js b/src/scripts/inputManager.js index 3432c9e351..077af39bf7 100644 --- a/src/scripts/inputManager.js +++ b/src/scripts/inputManager.js @@ -39,7 +39,7 @@ import appHost from 'apphost'; dom.removeEventListener(scope, 'command', fn, {}); } - let commandTimes = {}; + const commandTimes = {}; function checkCommandTime(command) { const last = commandTimes[command] || 0; diff --git a/src/scripts/libraryMenu.js b/src/scripts/libraryMenu.js index bbe01276ba..55b8e834e4 100644 --- a/src/scripts/libraryMenu.js +++ b/src/scripts/libraryMenu.js @@ -3,6 +3,7 @@ define(['dom', 'layoutManager', 'inputManager', 'connectionManager', 'events', ' playbackManager = playbackManager.default || playbackManager; browser = browser.default || browser; + appRouter = appRouter.default || appRouter; function renderHeader() { var html = ''; diff --git a/src/scripts/serverNotifications.js b/src/scripts/serverNotifications.js index 87db52402d..e432aee805 100644 --- a/src/scripts/serverNotifications.js +++ b/src/scripts/serverNotifications.js @@ -3,6 +3,7 @@ define(['connectionManager', 'playbackManager', 'syncPlayManager', 'events', 'in playbackManager = playbackManager.default || playbackManager; focusManager = focusManager.default || focusManager; + appRouter = appRouter.default || appRouter; var serverNotifications = {}; diff --git a/src/scripts/site.js b/src/scripts/site.js index cd85c35e83..7a9ca00590 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -138,14 +138,14 @@ var Dashboard = { return new Promise(function (resolve, reject) { require(['appRouter'], function (appRouter) { - return appRouter.show(url).then(resolve, reject); + return appRouter.default.show(url).then(resolve, reject); }); }); }, navigate_direct: function (path) { return new Promise(function (resolve, reject) { require(['appRouter'], function (appRouter) { - return appRouter.showDirect(path).then(resolve, reject); + return appRouter.default.showDirect(path).then(resolve, reject); }); }); }, @@ -517,6 +517,7 @@ function initClient() { // ensure that appHost is loaded in this point require(['apphost', 'appRouter'], function (appHost, appRouter) { + appRouter = appRouter.default || appRouter; window.Emby = {}; console.debug('onAppReady: loading dependencies'); @@ -614,10 +615,10 @@ function initClient() { init(); } + var promise; var localApiClient; - let promise; - (function () { + function initRequireJs() { var urlArgs = 'v=' + (window.dashboardVersion || new Date().getDate()); var bowerPath = getBowerPath(); @@ -648,7 +649,9 @@ function initClient() { nowPlayingHelper: componentsPath + '/playback/nowplayinghelper', pluginManager: componentsPath + '/pluginManager', packageManager: componentsPath + '/packageManager', - screensaverManager: componentsPath + '/screensavermanager' + screensaverManager: componentsPath + '/screensavermanager', + chromecastHelper: 'plugins/chromecastPlayer/chromecastHelpers', + appRouter: 'components/appRouter' }; requirejs.onError = onRequireJsError; @@ -847,267 +850,9 @@ function initClient() { return window.ApiClient; }; }); - define('appRouter', [componentsPath + '/appRouter', 'itemHelper'], function (appRouter, itemHelper) { - function showItem(item, serverId, options) { - if (typeof item == 'string') { - require(['connectionManager'], function (connectionManager) { - var apiClient = connectionManager.currentApiClient(); - apiClient.getItem(apiClient.getCurrentUserId(), item).then(function (item) { - appRouter.showItem(item, options); - }); - }); - } else { - if (arguments.length == 2) { - options = arguments[1]; - } - - appRouter.show('/' + appRouter.getRouteUrl(item, options), { - item: item - }); - } - } - - appRouter.showLocalLogin = function (serverId, manualLogin) { - Dashboard.navigate('login.html?serverid=' + serverId); - }; - - appRouter.showVideoOsd = function () { - return Dashboard.navigate('video'); - }; - - appRouter.showSelectServer = function () { - Dashboard.navigate(AppInfo.isNativeApp ? 'selectserver.html' : 'login.html'); - }; - - appRouter.showWelcome = function () { - Dashboard.navigate(AppInfo.isNativeApp ? 'selectserver.html' : 'login.html'); - }; - - appRouter.showSettings = function () { - Dashboard.navigate('mypreferencesmenu.html'); - }; - - appRouter.showGuide = function () { - Dashboard.navigate('livetv.html?tab=1'); - }; - - appRouter.goHome = function () { - Dashboard.navigate('home.html'); - }; - - appRouter.showSearch = function () { - Dashboard.navigate('search.html'); - }; - - appRouter.showLiveTV = function () { - Dashboard.navigate('livetv.html'); - }; - - appRouter.showRecordedTV = function () { - Dashboard.navigate('livetv.html?tab=3'); - }; - - appRouter.showFavorites = function () { - Dashboard.navigate('home.html?tab=1'); - }; - - appRouter.showSettings = function () { - Dashboard.navigate('mypreferencesmenu.html'); - }; - - appRouter.setTitle = function (title) { - LibraryMenu.setTitle(title); - }; - - appRouter.getRouteUrl = function (item, options) { - if (!item) { - throw new Error('item cannot be null'); - } - - if (item.url) { - return item.url; - } - - var context = options ? options.context : null; - var id = item.Id || item.ItemId; - - if (!options) { - options = {}; - } - - var url; - var itemType = item.Type || (options ? options.itemType : null); - var serverId = item.ServerId || options.serverId; - - if (item === 'settings') { - return 'mypreferencesmenu.html'; - } - - if (item === 'wizard') { - return 'wizardstart.html'; - } - - if (item === 'manageserver') { - return 'dashboard.html'; - } - - if (item === 'recordedtv') { - return 'livetv.html?tab=3&serverId=' + options.serverId; - } - - if (item === 'nextup') { - return 'list.html?type=nextup&serverId=' + options.serverId; - } - - if (item === 'list') { - var url = 'list.html?serverId=' + options.serverId + '&type=' + options.itemTypes; - - if (options.isFavorite) { - url += '&IsFavorite=true'; - } - - return url; - } - - if (item === 'livetv') { - if (options.section === 'programs') { - return 'livetv.html?tab=0&serverId=' + options.serverId; - } - if (options.section === 'guide') { - return 'livetv.html?tab=1&serverId=' + options.serverId; - } - - if (options.section === 'movies') { - return 'list.html?type=Programs&IsMovie=true&serverId=' + options.serverId; - } - - if (options.section === 'shows') { - return 'list.html?type=Programs&IsSeries=true&IsMovie=false&IsNews=false&serverId=' + options.serverId; - } - - if (options.section === 'sports') { - return 'list.html?type=Programs&IsSports=true&serverId=' + options.serverId; - } - - if (options.section === 'kids') { - return 'list.html?type=Programs&IsKids=true&serverId=' + options.serverId; - } - - if (options.section === 'news') { - return 'list.html?type=Programs&IsNews=true&serverId=' + options.serverId; - } - - if (options.section === 'onnow') { - return 'list.html?type=Programs&IsAiring=true&serverId=' + options.serverId; - } - - if (options.section === 'dvrschedule') { - return 'livetv.html?tab=4&serverId=' + options.serverId; - } - - if (options.section === 'seriesrecording') { - return 'livetv.html?tab=5&serverId=' + options.serverId; - } - - return 'livetv.html?serverId=' + options.serverId; - } - - if (itemType == 'SeriesTimer') { - return 'details?seriesTimerId=' + id + '&serverId=' + serverId; - } - - if (item.CollectionType == 'livetv') { - return 'livetv.html'; - } - - if (item.Type === 'Genre') { - url = 'list.html?genreId=' + item.Id + '&serverId=' + serverId; - - if (context === 'livetv') { - url += '&type=Programs'; - } - - if (options.parentId) { - url += '&parentId=' + options.parentId; - } - - return url; - } - - if (item.Type === 'MusicGenre') { - url = 'list.html?musicGenreId=' + item.Id + '&serverId=' + serverId; - - if (options.parentId) { - url += '&parentId=' + options.parentId; - } - - return url; - } - - if (item.Type === 'Studio') { - url = 'list.html?studioId=' + item.Id + '&serverId=' + serverId; - - if (options.parentId) { - url += '&parentId=' + options.parentId; - } - - return url; - } - - if (context !== 'folders' && !itemHelper.isLocalItem(item)) { - if (item.CollectionType == 'movies') { - url = 'movies.html?topParentId=' + item.Id; - - if (options && options.section === 'latest') { - url += '&tab=1'; - } - - return url; - } - - if (item.CollectionType == 'tvshows') { - url = 'tv.html?topParentId=' + item.Id; - - if (options && options.section === 'latest') { - url += '&tab=2'; - } - - return url; - } - - if (item.CollectionType == 'music') { - return 'music.html?topParentId=' + item.Id; - } - } - - var itemTypes = ['Playlist', 'TvChannel', 'Program', 'BoxSet', 'MusicAlbum', 'MusicGenre', 'Person', 'Recording', 'MusicArtist']; - - if (itemTypes.indexOf(itemType) >= 0) { - return 'details?id=' + id + '&serverId=' + serverId; - } - - var contextSuffix = context ? '&context=' + context : ''; - - if (itemType == 'Series' || itemType == 'Season' || itemType == 'Episode') { - return 'details?id=' + id + contextSuffix + '&serverId=' + serverId; - } - - if (item.IsFolder) { - if (id) { - return 'list.html?parentId=' + id + '&serverId=' + serverId; - } - - return '#'; - } - - return 'details?id=' + id + '&serverId=' + serverId; - }; - - appRouter.showItem = showItem; - return appRouter; - }); - })(); + } + initRequireJs(); promise.then(onWebComponentsReady); } From e9b97185b8ba7197d973fe4b61bb24944e43debd Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Thu, 6 Aug 2020 23:25:18 +0200 Subject: [PATCH 012/285] Fix broken pages --- src/components/appRouter.js | 30 +++++++++++++++------------ src/plugins/htmlVideoPlayer/plugin.js | 4 ++-- src/plugins/youtubePlayer/plugin.js | 2 +- 3 files changed, 20 insertions(+), 16 deletions(-) diff --git a/src/components/appRouter.js b/src/components/appRouter.js index c7495d6460..dc05acc9fd 100644 --- a/src/components/appRouter.js +++ b/src/components/appRouter.js @@ -69,27 +69,31 @@ class AppRouter { } showLocalLogin(serverId) { - this.show('login.html?serverid=' + serverId); + Dashboard.navigate('login.html?serverid=' + serverId); + } + + showVideoOsd() { + return Dashboard.navigate('video'); } showSelectServer() { - this.show(AppInfo.isNativeApp ? 'selectserver.html' : 'login.html'); + Dashboard.navigate(AppInfo.isNativeApp ? 'selectserver.html' : 'login.html'); } showWelcome() { - this.show(AppInfo.isNativeApp ? 'selectserver.html' : 'login.html'); + Dashboard.navigate(AppInfo.isNativeApp ? 'selectserver.html' : 'login.html'); } showSettings() { - this.show('mypreferencesmenu.html'); + Dashboard.navigate('mypreferencesmenu.html'); } showNowPlaying() { - this.show('/nowplaying.html'); + this.show('queue'); } beginConnectionWizard() { - backdrop.clear(); + backdrop.clearBackdrop(); loading.show(); connectionManager.connect({ enableAutoLogin: appSettings.enableAutoLogin() @@ -231,7 +235,7 @@ class AppRouter { } if (level === 'full' || level === 2) { - backdrop.clear(true); + backdrop.clearBackdrop(true); document.documentElement.classList.add('transparentDocument'); this.backgroundContainer.classList.add('backgroundContainer-transparent'); this.backdropContainer.classList.add('hide'); @@ -628,27 +632,27 @@ class AppRouter { } showGuide() { - this.show('livetv.html?tab=1'); + Dashboard.navigate('livetv.html?tab=1'); } goHome() { - this.show('home.html'); + Dashboard.navigate('home.html'); } showSearch() { - this.show('search.html'); + Dashboard.navigate('search.html'); } showLiveTV() { - this.show('livetv.html'); + Dashboard.navigate('livetv.html'); } showRecordedTV() { - this.show('livetv.html?tab=3'); + Dashboard.navigate('livetv.html?tab=3'); } showFavorites() { - this.show('home.html?tab=1'); + Dashboard.navigate('home.html?tab=1'); } setTitle(title) { diff --git a/src/plugins/htmlVideoPlayer/plugin.js b/src/plugins/htmlVideoPlayer/plugin.js index 40fa98c650..dc59604de9 100644 --- a/src/plugins/htmlVideoPlayer/plugin.js +++ b/src/plugins/htmlVideoPlayer/plugin.js @@ -822,8 +822,8 @@ function tryRemoveElement(elem) { } }); - if (self._currentPlayOptions.fullscreen) { - appRouter.show('videoosd.html').then(this.onNavigatedToOsd); + if (this._currentPlayOptions.fullscreen) { + appRouter.showVideoOsd().then(this.onNavigatedToOsd); } else { appRouter.setTransparency('backdrop'); this.#videoDialog.classList.remove('videoPlayerContainer-onTop'); diff --git a/src/plugins/youtubePlayer/plugin.js b/src/plugins/youtubePlayer/plugin.js index f7b6a04a97..eed75a8116 100644 --- a/src/plugins/youtubePlayer/plugin.js +++ b/src/plugins/youtubePlayer/plugin.js @@ -106,7 +106,7 @@ function onPlaying(instance, playOptions, resolve) { instance.timeUpdateInterval = setInterval(onTimeUpdate.bind(instance), 500); if (playOptions.fullscreen) { - appRouter.show('videoosd.html').then(function () { + appRouter.showVideoOsd().then(function () { instance.videoDialog.classList.remove('onTop'); }); } else { From 58361ce70cc92a91e64a587908b34409f7411dd6 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Thu, 6 Aug 2020 23:56:29 +0200 Subject: [PATCH 013/285] Remove focus-prevent-scroll, migrate gamepadtokey and chromecastHelper to ES6 --- package.json | 2 + src/bundle.js | 5 + src/legacy/focusPreventScroll.js | 43 -- .../chromecastPlayer/chromecastHelper.js | 400 +++++------ src/plugins/chromecastPlayer/plugin.js | 2 + src/scripts/gamepadtokey.js | 647 +++++++++--------- src/scripts/site.js | 5 +- yarn.lock | 5 + 8 files changed, 540 insertions(+), 569 deletions(-) delete mode 100644 src/legacy/focusPreventScroll.js diff --git a/package.json b/package.json index bf3ac42f97..2631a4ad68 100644 --- a/package.json +++ b/package.json @@ -62,6 +62,7 @@ "epubjs": "^0.3.85", "fast-text-encoding": "^1.0.3", "flv.js": "^1.5.0", + "focus-options-polyfill": "^1.5.0", "headroom.js": "^0.11.0", "hls.js": "^0.14.7", "howler": "^2.2.0", @@ -278,6 +279,7 @@ "src/plugins/backdropScreensaver/plugin.js", "src/plugins/bookPlayer/plugin.js", "src/plugins/bookPlayer/tableOfContents.js", + "src/plugins/chromecastPlayer/chromecastHelper.js", "src/plugins/photoPlayer/plugin.js", "src/plugins/youtubePlayer/plugin.js", "src/scripts/alphanumericshortcuts.js", diff --git a/src/bundle.js b/src/bundle.js index ae2a59f0d5..bebc80a181 100644 --- a/src/bundle.js +++ b/src/bundle.js @@ -10,6 +10,11 @@ _define('fetch', function() { return fetch; }); +var focusPreventScroll = require('focus-options-polyfill'); +_define('focus-options-polyfill', function() { + return focusPreventScroll; +}); + // Blurhash var blurhash = require('blurhash'); _define('blurhash', function() { diff --git a/src/legacy/focusPreventScroll.js b/src/legacy/focusPreventScroll.js deleted file mode 100644 index 97d6b0b120..0000000000 --- a/src/legacy/focusPreventScroll.js +++ /dev/null @@ -1,43 +0,0 @@ -// TODO: Move to external library (https://github.com/calvellido/focus-options-polyfill) -// Polyfill to add support for preventScroll by focus function - -if (HTMLElement.prototype.nativeFocus === undefined) { - (function () { - var supportsPreventScrollOption = false; - try { - var focusElem = document.createElement('div'); - - focusElem.addEventListener('focus', function(event) { - event.preventDefault(); - event.stopPropagation(); - }, true); - - var opts = Object.defineProperty({}, 'preventScroll', { - // eslint-disable-next-line getter-return - get: function () { - supportsPreventScrollOption = true; - } - }); - - focusElem.focus(opts); - } catch (e) { - console.error('error checking preventScroll support'); - } - - if (!supportsPreventScrollOption) { - HTMLElement.prototype.nativeFocus = HTMLElement.prototype.focus; - - HTMLElement.prototype.focus = function(options) { - var scrollX = window.scrollX; - var scrollY = window.scrollY; - - this.nativeFocus(); - - // Restore window scroll if preventScroll - if (options && options.preventScroll) { - window.scroll(scrollX, scrollY); - } - }; - } - })(); -} diff --git a/src/plugins/chromecastPlayer/chromecastHelper.js b/src/plugins/chromecastPlayer/chromecastHelper.js index 3fbff5507b..5893a5fe20 100644 --- a/src/plugins/chromecastPlayer/chromecastHelper.js +++ b/src/plugins/chromecastPlayer/chromecastHelper.js @@ -1,229 +1,229 @@ -define(['events'], function (events) { - 'use strict'; +import events from 'events'; - // LinkParser +// LinkParser +// +// https://github.com/ravisorg/LinkParser +// +// Locate and extract almost any URL within a string. Handles protocol-less domains, IPv4 and +// IPv6, unrecognised TLDs, and more. +// +// This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. +// http://creativecommons.org/licenses/by-sa/4.0/ +(function () { + // Original URL regex from the Android android.text.util.Linkify function, found here: + // http://stackoverflow.com/a/19696443 // - // https://github.com/ravisorg/LinkParser + // However there were problems with it, most probably related to the fact it was + // written in 2007, and it's been highly modified. // - // Locate and extract almost any URL within a string. Handles protocol-less domains, IPv4 and - // IPv6, unrecognised TLDs, and more. + // 1) I didn't like the fact that it was tied to specific TLDs, since new ones + // are being added all the time it wouldn't be reasonable to expect developer to + // be continually updating their regular expressions. // - // This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. - // http://creativecommons.org/licenses/by-sa/4.0/ - (function () { - // Original URL regex from the Android android.text.util.Linkify function, found here: - // http://stackoverflow.com/a/19696443 - // - // However there were problems with it, most probably related to the fact it was - // written in 2007, and it's been highly modified. - // - // 1) I didn't like the fact that it was tied to specific TLDs, since new ones - // are being added all the time it wouldn't be reasonable to expect developer to - // be continually updating their regular expressions. - // - // 2) It didn't allow unicode characters in the domains which are now allowed in - // many languages, (including some IDN TLDs). Again these are constantly being - // added to and it doesn't seem reasonable to hard-code them. Note this ended up - // not being possible in standard JS due to the way it handles multibyte strings. - // It is possible using XRegExp, however a big performance hit results. Disabled - // for now. - // - // 3) It didn't allow for IPv6 hostnames - // IPv6 regex from http://stackoverflow.com/a/17871737 - // - // 4) It was very poorly commented - // - // 5) It wasn't as smart as it could have been about what should be part of a - // URL and what should be part of human language. + // 2) It didn't allow unicode characters in the domains which are now allowed in + // many languages, (including some IDN TLDs). Again these are constantly being + // added to and it doesn't seem reasonable to hard-code them. Note this ended up + // not being possible in standard JS due to the way it handles multibyte strings. + // It is possible using XRegExp, however a big performance hit results. Disabled + // for now. + // + // 3) It didn't allow for IPv6 hostnames + // IPv6 regex from http://stackoverflow.com/a/17871737 + // + // 4) It was very poorly commented + // + // 5) It wasn't as smart as it could have been about what should be part of a + // URL and what should be part of human language. - var protocols = '(?:(?:http|https|rtsp|ftp):\\/\\/)'; - var credentials = "(?:(?:[a-z0-9\\$\\-\\_\\.\\+\\!\\*\\'\\(\\)\\,\\;\\?\\&\\=]|(?:\\%[a-f0-9]{2})){1,64}" // username (1-64 normal or url escaped characters) - + "(?:\\:(?:[a-z0-9\\$\\-\\_\\.\\+\\!\\*\\'\\(\\)\\,\\;\\?\\&\\=]|(?:\\%[a-f0-9]{2})){1,25})?" // followed by optional password (: + 1-25 normal or url escaped characters) - + '\\@)'; + const protocols = '(?:(?:http|https|rtsp|ftp):\\/\\/)'; + const credentials = "(?:(?:[a-z0-9\\$\\-\\_\\.\\+\\!\\*\\'\\(\\)\\,\\;\\?\\&\\=]|(?:\\%[a-f0-9]{2})){1,64}" // username (1-64 normal or url escaped characters) + + "(?:\\:(?:[a-z0-9\\$\\-\\_\\.\\+\\!\\*\\'\\(\\)\\,\\;\\?\\&\\=]|(?:\\%[a-f0-9]{2})){1,25})?" // followed by optional password (: + 1-25 normal or url escaped characters) + + '\\@)'; - // IPv6 Regex http://forums.intermapper.com/viewtopic.php?t=452 - // by Dartware, LLC is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License - // http://intermapper.com/ - var ipv6 = '(' - + '(([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))' - + '|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))' - + '|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))' - + '|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))' - + '|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))' - + '|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))' - + '|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))' - + '|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))' - + ')(%.+)?'; + // IPv6 Regex http://forums.intermapper.com/viewtopic.php?t=452 + // by Dartware, LLC is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License + // http://intermapper.com/ + const ipv6 = '(' + + '(([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))' + + '|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))' + + '|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))' + + '|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))' + + '|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))' + + '|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))' + + '|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))' + + '|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))' + + ')(%.+)?'; - var ipv4 = '(?:25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[1-9][0-9]|[1-9])\\.' - + '(?:25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[1-9][0-9]|[1-9]|0)\\.' - + '(?:25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[1-9][0-9]|[1-9]|0)\\.' - + '(?:25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[1-9][0-9]|[0-9])'; + const ipv4 = '(?:25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[1-9][0-9]|[1-9])\\.' + + '(?:25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[1-9][0-9]|[1-9]|0)\\.' + + '(?:25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[1-9][0-9]|[1-9]|0)\\.' + + '(?:25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[1-9][0-9]|[0-9])'; - // This would have been a lot cleaner if JS RegExp supported conditionals... - var linkRegExpString = + // This would have been a lot cleaner if JS RegExp supported conditionals... + const linkRegExpString = - // begin match for protocol / username / password / host - '(?:' + // begin match for protocol / username / password / host + '(?:' - // ============================ - // If we have a recognized protocol at the beginning of the URL, we're - // more relaxed about what we accept, because we assume the user wants - // this to be a URL, and we're not accidentally matching human language - + protocols + '?' + // ============================ + // If we have a recognized protocol at the beginning of the URL, we're + // more relaxed about what we accept, because we assume the user wants + // this to be a URL, and we're not accidentally matching human language + + protocols + '?' - // optional username:password@ - + credentials + '?' + // optional username:password@ + + credentials + '?' - // IP address (both v4 and v6) - + '(?:' + // IP address (both v4 and v6) + + '(?:' - // IPv6 - + ipv6 + // IPv6 + + ipv6 - // IPv4 - + '|' + ipv4 + // IPv4 + + '|' + ipv4 - + ')' + + ')' - // end match for protocol / username / password / host - + ')' + // end match for protocol / username / password / host + + ')' - // optional port number - + '(?:\\:\\d{1,5})?' + // optional port number + + '(?:\\:\\d{1,5})?' - // plus optional path and query params (no unicode allowed here?) - + '(?:' - + '\\/(?:' - // some characters we'll accept because it's unlikely human language - // would use them after a URL unless they were part of the url - + '(?:[a-z0-9\\/\\@\\&\\#\\~\\*\\_\\-\\+])' - + '|(?:\\%[a-f0-9]{2})' - // some characters are much more likely to be used AFTER a url and - // were not intended to be included in the url itself. Mostly end - // of sentence type things. It's also likely that the URL would - // still work if any of these characters were missing from the end - // because we parsed it incorrectly. For these characters to be accepted - // they must be followed by another character that we're reasonably - // sure is part of the url - + "|(?:[\\;\\?\\:\\.\\!\\'\\(\\)\\,\\=]+(?=(?:[a-z0-9\\/\\@\\&\\#\\~\\*\\_\\-\\+])|(?:\\%[a-f0-9]{2})))" - + ')*' - + '|\\b|\$' - + ')'; + // plus optional path and query params (no unicode allowed here?) + + '(?:' + + '\\/(?:' + // some characters we'll accept because it's unlikely human language + // would use them after a URL unless they were part of the url + + '(?:[a-z0-9\\/\\@\\&\\#\\~\\*\\_\\-\\+])' + + '|(?:\\%[a-f0-9]{2})' + // some characters are much more likely to be used AFTER a url and + // were not intended to be included in the url itself. Mostly end + // of sentence type things. It's also likely that the URL would + // still work if any of these characters were missing from the end + // because we parsed it incorrectly. For these characters to be accepted + // they must be followed by another character that we're reasonably + // sure is part of the url + + "|(?:[\\;\\?\\:\\.\\!\\'\\(\\)\\,\\=]+(?=(?:[a-z0-9\\/\\@\\&\\#\\~\\*\\_\\-\\+])|(?:\\%[a-f0-9]{2})))" + + ')*' + + '|\\b|\$' + + ')'; - // regex = XRegExp(regex,'gi'); - var linkRegExp = RegExp(linkRegExpString, 'gi'); + // regex = XRegExp(regex,'gi'); + const linkRegExp = RegExp(linkRegExpString, 'gi'); - var protocolRegExp = RegExp('^' + protocols, 'i'); + const protocolRegExp = RegExp('^' + protocols, 'i'); - // if url doesn't begin with a known protocol, add http by default - function ensureProtocol(url) { - if (!url.match(protocolRegExp)) { - url = 'http://' + url; - } - return url; + // if url doesn't begin with a known protocol, add http by default + function ensureProtocol(url) { + if (!url.match(protocolRegExp)) { + url = 'http://' + url; } + return url; + } - // look for links in the text - var LinkParser = { - parse: function (text) { - var links = []; - var match; + // look for links in the text + const LinkParser = { + parse: function (text) { + const links = []; + let match; - // eslint-disable-next-line no-cond-assign - while (match = linkRegExp.exec(text)) { - console.debug(match); - var txt = match[0]; - var pos = match.index; - var len = txt.length; - var url = ensureProtocol(text); - links.push({ 'pos': pos, 'text': txt, 'len': len, 'url': url }); - } - - return links; + // eslint-disable-next-line no-cond-assign + while (match = linkRegExp.exec(text)) { + console.debug(match); + const txt = match[0]; + const pos = match.index; + const len = txt.length; + const url = ensureProtocol(text); + links.push({ 'pos': pos, 'text': txt, 'len': len, 'url': url }); } - }; - - window.LinkParser = LinkParser; - })(); - - var cache = {}; - - function isValidIpAddress(address) { - var links = LinkParser.parse(address); - - return links.length == 1; - } - - function isLocalIpAddress(address) { - address = address.toLowerCase(); - - if (address.indexOf('127.0.0.1') !== -1) { - return true; - } - if (address.indexOf('localhost') !== -1) { - return true; + return links; } - return false; - } - - function getServerAddress(apiClient) { - var serverAddress = apiClient.serverAddress(); - - if (isValidIpAddress(serverAddress) && !isLocalIpAddress(serverAddress)) { - return Promise.resolve(serverAddress); - } - - var cachedValue = getCachedValue(serverAddress); - if (cachedValue) { - return Promise.resolve(cachedValue); - } - - return apiClient.getEndpointInfo().then(function (endpoint) { - if (endpoint.IsInNetwork) { - return apiClient.getPublicSystemInfo().then(function (info) { - var localAddress = info.LocalAddress; - if (!localAddress) { - console.debug('No valid local address returned, defaulting to external one'); - localAddress = serverAddress; - } - addToCache(serverAddress, localAddress); - return localAddress; - }); - } else { - addToCache(serverAddress, serverAddress); - return serverAddress; - } - }); - } - - function clearCache() { - cache = {}; - } - - function addToCache(key, value) { - cache[key] = { - value: value, - time: new Date().getTime() - }; - } - - function getCachedValue(key) { - var obj = cache[key]; - - if (obj && (new Date().getTime() - obj.time) < 180000) { - return obj.value; - } - - return null; - } - - events.on(ConnectionManager, 'localusersignedin', clearCache); - events.on(ConnectionManager, 'localusersignedout', clearCache); - - return { - getServerAddress: getServerAddress }; -}); + + window.LinkParser = LinkParser; +})(); + +let cache = {}; + +// TODO: Replace with isIP (https://www.npmjs.com/package/is-ip) +function isValidIpAddress(address) { + const links = LinkParser.parse(address); + + return links.length == 1; +} + +// TODO: Add IPv6 support. Potentially replace with isLocalhost (https://www.npmjs.com/package/is-localhost-ip) +function isLocalIpAddress(address) { + address = address.toLowerCase(); + + if (address.includes('127.0.0.1')) { + return true; + } + if (address.includes('localhost')) { + return true; + } + + return false; +} + +function getServerAddress(apiClient) { + const serverAddress = apiClient.serverAddress(); + + if (isValidIpAddress(serverAddress) && !isLocalIpAddress(serverAddress)) { + return Promise.resolve(serverAddress); + } + + const cachedValue = getCachedValue(serverAddress); + if (cachedValue) { + return Promise.resolve(cachedValue); + } + + return apiClient.getEndpointInfo().then(function (endpoint) { + if (endpoint.IsInNetwork) { + return apiClient.getPublicSystemInfo().then(function (info) { + let localAddress = info.LocalAddress; + if (!localAddress) { + console.debug('No valid local address returned, defaulting to external one'); + localAddress = serverAddress; + } + addToCache(serverAddress, localAddress); + return localAddress; + }); + } else { + addToCache(serverAddress, serverAddress); + return serverAddress; + } + }); +} + +function clearCache() { + cache = {}; +} + +function addToCache(key, value) { + cache[key] = { + value: value, + time: new Date().getTime() + }; +} + +function getCachedValue(key) { + const obj = cache[key]; + + if (obj && (new Date().getTime() - obj.time) < 180000) { + return obj.value; + } + + return null; +} + +events.on(ConnectionManager, 'localusersignedin', clearCache); +events.on(ConnectionManager, 'localusersignedout', clearCache); + +export default { + getServerAddress: getServerAddress +}; diff --git a/src/plugins/chromecastPlayer/plugin.js b/src/plugins/chromecastPlayer/plugin.js index 22b49d6faf..4a4ce25600 100644 --- a/src/plugins/chromecastPlayer/plugin.js +++ b/src/plugins/chromecastPlayer/plugin.js @@ -366,6 +366,8 @@ define(['appSettings', 'userSettings', 'playbackManager', 'connectionManager', ' return new Promise(function (resolve, reject) { require(['./chromecastHelper'], function (chromecastHelper) { + chromecastHelper = chromecastHelper.default || chromecastHelper; + chromecastHelper.getServerAddress(apiClient).then(function (serverAddress) { message.serverAddress = serverAddress; player.sendMessageInternal(message).then(resolve, reject); diff --git a/src/scripts/gamepadtokey.js b/src/scripts/gamepadtokey.js index 870429ee09..b6f25f1eea 100644 --- a/src/scripts/gamepadtokey.js +++ b/src/scripts/gamepadtokey.js @@ -19,384 +19,383 @@ // # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, // # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // # THE SOFTWARE. -require(['apphost'], function (appHost) { - 'use strict'; - var _GAMEPAD_A_BUTTON_INDEX = 0; - var _GAMEPAD_B_BUTTON_INDEX = 1; - var _GAMEPAD_DPAD_UP_BUTTON_INDEX = 12; - var _GAMEPAD_DPAD_DOWN_BUTTON_INDEX = 13; - var _GAMEPAD_DPAD_LEFT_BUTTON_INDEX = 14; - var _GAMEPAD_DPAD_RIGHT_BUTTON_INDEX = 15; - var _GAMEPAD_A_KEY = 'GamepadA'; - var _GAMEPAD_B_KEY = 'GamepadB'; - var _GAMEPAD_DPAD_UP_KEY = 'GamepadDPadUp'; - var _GAMEPAD_DPAD_DOWN_KEY = 'GamepadDPadDown'; - var _GAMEPAD_DPAD_LEFT_KEY = 'GamepadDPadLeft'; - var _GAMEPAD_DPAD_RIGHT_KEY = 'GamepadDPadRight'; - var _GAMEPAD_LEFT_THUMBSTICK_UP_KEY = 'GamepadLeftThumbStickUp'; - var _GAMEPAD_LEFT_THUMBSTICK_DOWN_KEY = 'GamepadLeftThumbStickDown'; - var _GAMEPAD_LEFT_THUMBSTICK_LEFT_KEY = 'GamepadLeftThumbStickLeft'; - var _GAMEPAD_LEFT_THUMBSTICK_RIGHT_KEY = 'GamepadLeftThumbStickRight'; - var _GAMEPAD_A_KEYCODE = 0; - var _GAMEPAD_B_KEYCODE = 27; - var _GAMEPAD_DPAD_UP_KEYCODE = 38; - var _GAMEPAD_DPAD_DOWN_KEYCODE = 40; - var _GAMEPAD_DPAD_LEFT_KEYCODE = 37; - var _GAMEPAD_DPAD_RIGHT_KEYCODE = 39; - var _GAMEPAD_LEFT_THUMBSTICK_UP_KEYCODE = 38; - var _GAMEPAD_LEFT_THUMBSTICK_DOWN_KEYCODE = 40; - var _GAMEPAD_LEFT_THUMBSTICK_LEFT_KEYCODE = 37; - var _GAMEPAD_LEFT_THUMBSTICK_RIGHT_KEYCODE = 39; - var _THUMB_STICK_THRESHOLD = 0.75; +import appHost from 'apphost'; - var _leftThumbstickUpPressed = false; - var _leftThumbstickDownPressed = false; - var _leftThumbstickLeftPressed = false; - var _leftThumbstickRightPressed = false; - var _dPadUpPressed = false; - var _dPadDownPressed = false; - var _dPadLeftPressed = false; - var _dPadRightPressed = false; - var _gamepadAPressed = false; - var _gamepadBPressed = false; +var _GAMEPAD_A_BUTTON_INDEX = 0; +var _GAMEPAD_B_BUTTON_INDEX = 1; +var _GAMEPAD_DPAD_UP_BUTTON_INDEX = 12; +var _GAMEPAD_DPAD_DOWN_BUTTON_INDEX = 13; +var _GAMEPAD_DPAD_LEFT_BUTTON_INDEX = 14; +var _GAMEPAD_DPAD_RIGHT_BUTTON_INDEX = 15; +var _GAMEPAD_A_KEY = 'GamepadA'; +var _GAMEPAD_B_KEY = 'GamepadB'; +var _GAMEPAD_DPAD_UP_KEY = 'GamepadDPadUp'; +var _GAMEPAD_DPAD_DOWN_KEY = 'GamepadDPadDown'; +var _GAMEPAD_DPAD_LEFT_KEY = 'GamepadDPadLeft'; +var _GAMEPAD_DPAD_RIGHT_KEY = 'GamepadDPadRight'; +var _GAMEPAD_LEFT_THUMBSTICK_UP_KEY = 'GamepadLeftThumbStickUp'; +var _GAMEPAD_LEFT_THUMBSTICK_DOWN_KEY = 'GamepadLeftThumbStickDown'; +var _GAMEPAD_LEFT_THUMBSTICK_LEFT_KEY = 'GamepadLeftThumbStickLeft'; +var _GAMEPAD_LEFT_THUMBSTICK_RIGHT_KEY = 'GamepadLeftThumbStickRight'; +var _GAMEPAD_A_KEYCODE = 0; +var _GAMEPAD_B_KEYCODE = 27; +var _GAMEPAD_DPAD_UP_KEYCODE = 38; +var _GAMEPAD_DPAD_DOWN_KEYCODE = 40; +var _GAMEPAD_DPAD_LEFT_KEYCODE = 37; +var _GAMEPAD_DPAD_RIGHT_KEYCODE = 39; +var _GAMEPAD_LEFT_THUMBSTICK_UP_KEYCODE = 38; +var _GAMEPAD_LEFT_THUMBSTICK_DOWN_KEYCODE = 40; +var _GAMEPAD_LEFT_THUMBSTICK_LEFT_KEYCODE = 37; +var _GAMEPAD_LEFT_THUMBSTICK_RIGHT_KEYCODE = 39; +var _THUMB_STICK_THRESHOLD = 0.75; - // The set of buttons on the gamepad we listen for. - var ProcessedButtons = [ - _GAMEPAD_DPAD_UP_BUTTON_INDEX, - _GAMEPAD_DPAD_DOWN_BUTTON_INDEX, - _GAMEPAD_DPAD_LEFT_BUTTON_INDEX, - _GAMEPAD_DPAD_RIGHT_BUTTON_INDEX, - _GAMEPAD_A_BUTTON_INDEX, - _GAMEPAD_B_BUTTON_INDEX - ]; +var _leftThumbstickUpPressed = false; +var _leftThumbstickDownPressed = false; +var _leftThumbstickLeftPressed = false; +var _leftThumbstickRightPressed = false; +var _dPadUpPressed = false; +var _dPadDownPressed = false; +var _dPadLeftPressed = false; +var _dPadRightPressed = false; +var _gamepadAPressed = false; +var _gamepadBPressed = false; - var _ButtonPressedState = {}; - _ButtonPressedState.getgamepadA = function () { - return _gamepadAPressed; - }; +// The set of buttons on the gamepad we listen for. +var ProcessedButtons = [ + _GAMEPAD_DPAD_UP_BUTTON_INDEX, + _GAMEPAD_DPAD_DOWN_BUTTON_INDEX, + _GAMEPAD_DPAD_LEFT_BUTTON_INDEX, + _GAMEPAD_DPAD_RIGHT_BUTTON_INDEX, + _GAMEPAD_A_BUTTON_INDEX, + _GAMEPAD_B_BUTTON_INDEX +]; - _ButtonPressedState.setgamepadA = function (newPressedState) { - raiseKeyEvent(_gamepadAPressed, newPressedState, _GAMEPAD_A_KEY, _GAMEPAD_A_KEYCODE, false, true); - _gamepadAPressed = newPressedState; - }; +var _ButtonPressedState = {}; +_ButtonPressedState.getgamepadA = function () { + return _gamepadAPressed; +}; - _ButtonPressedState.getgamepadB = function () { - return _gamepadBPressed; - }; +_ButtonPressedState.setgamepadA = function (newPressedState) { + raiseKeyEvent(_gamepadAPressed, newPressedState, _GAMEPAD_A_KEY, _GAMEPAD_A_KEYCODE, false, true); + _gamepadAPressed = newPressedState; +}; - _ButtonPressedState.setgamepadB = function (newPressedState) { - raiseKeyEvent(_gamepadBPressed, newPressedState, _GAMEPAD_B_KEY, _GAMEPAD_B_KEYCODE); - _gamepadBPressed = newPressedState; - }; +_ButtonPressedState.getgamepadB = function () { + return _gamepadBPressed; +}; - _ButtonPressedState.getleftThumbstickUp = function () { - return _leftThumbstickUpPressed; - }; +_ButtonPressedState.setgamepadB = function (newPressedState) { + raiseKeyEvent(_gamepadBPressed, newPressedState, _GAMEPAD_B_KEY, _GAMEPAD_B_KEYCODE); + _gamepadBPressed = newPressedState; +}; - _ButtonPressedState.setleftThumbstickUp = function (newPressedState) { - raiseKeyEvent(_leftThumbstickUpPressed, newPressedState, _GAMEPAD_LEFT_THUMBSTICK_UP_KEY, _GAMEPAD_LEFT_THUMBSTICK_UP_KEYCODE, true); - _leftThumbstickUpPressed = newPressedState; - }; +_ButtonPressedState.getleftThumbstickUp = function () { + return _leftThumbstickUpPressed; +}; - _ButtonPressedState.getleftThumbstickDown = function () { - return _leftThumbstickDownPressed; - }; +_ButtonPressedState.setleftThumbstickUp = function (newPressedState) { + raiseKeyEvent(_leftThumbstickUpPressed, newPressedState, _GAMEPAD_LEFT_THUMBSTICK_UP_KEY, _GAMEPAD_LEFT_THUMBSTICK_UP_KEYCODE, true); + _leftThumbstickUpPressed = newPressedState; +}; - _ButtonPressedState.setleftThumbstickDown = function (newPressedState) { - raiseKeyEvent(_leftThumbstickDownPressed, newPressedState, _GAMEPAD_LEFT_THUMBSTICK_DOWN_KEY, _GAMEPAD_LEFT_THUMBSTICK_DOWN_KEYCODE, true); - _leftThumbstickDownPressed = newPressedState; - }; +_ButtonPressedState.getleftThumbstickDown = function () { + return _leftThumbstickDownPressed; +}; - _ButtonPressedState.getleftThumbstickLeft = function () { - return _leftThumbstickLeftPressed; - }; +_ButtonPressedState.setleftThumbstickDown = function (newPressedState) { + raiseKeyEvent(_leftThumbstickDownPressed, newPressedState, _GAMEPAD_LEFT_THUMBSTICK_DOWN_KEY, _GAMEPAD_LEFT_THUMBSTICK_DOWN_KEYCODE, true); + _leftThumbstickDownPressed = newPressedState; +}; - _ButtonPressedState.setleftThumbstickLeft = function (newPressedState) { - raiseKeyEvent(_leftThumbstickLeftPressed, newPressedState, _GAMEPAD_LEFT_THUMBSTICK_LEFT_KEY, _GAMEPAD_LEFT_THUMBSTICK_LEFT_KEYCODE, true); - _leftThumbstickLeftPressed = newPressedState; - }; +_ButtonPressedState.getleftThumbstickLeft = function () { + return _leftThumbstickLeftPressed; +}; - _ButtonPressedState.getleftThumbstickRight = function () { - return _leftThumbstickRightPressed; - }; +_ButtonPressedState.setleftThumbstickLeft = function (newPressedState) { + raiseKeyEvent(_leftThumbstickLeftPressed, newPressedState, _GAMEPAD_LEFT_THUMBSTICK_LEFT_KEY, _GAMEPAD_LEFT_THUMBSTICK_LEFT_KEYCODE, true); + _leftThumbstickLeftPressed = newPressedState; +}; - _ButtonPressedState.setleftThumbstickRight = function (newPressedState) { - raiseKeyEvent(_leftThumbstickRightPressed, newPressedState, _GAMEPAD_LEFT_THUMBSTICK_RIGHT_KEY, _GAMEPAD_LEFT_THUMBSTICK_RIGHT_KEYCODE, true); - _leftThumbstickRightPressed = newPressedState; - }; +_ButtonPressedState.getleftThumbstickRight = function () { + return _leftThumbstickRightPressed; +}; - _ButtonPressedState.getdPadUp = function () { - return _dPadUpPressed; - }; +_ButtonPressedState.setleftThumbstickRight = function (newPressedState) { + raiseKeyEvent(_leftThumbstickRightPressed, newPressedState, _GAMEPAD_LEFT_THUMBSTICK_RIGHT_KEY, _GAMEPAD_LEFT_THUMBSTICK_RIGHT_KEYCODE, true); + _leftThumbstickRightPressed = newPressedState; +}; - _ButtonPressedState.setdPadUp = function (newPressedState) { - raiseKeyEvent(_dPadUpPressed, newPressedState, _GAMEPAD_DPAD_UP_KEY, _GAMEPAD_DPAD_UP_KEYCODE, true); - _dPadUpPressed = newPressedState; - }; +_ButtonPressedState.getdPadUp = function () { + return _dPadUpPressed; +}; - _ButtonPressedState.getdPadDown = function () { - return _dPadDownPressed; - }; +_ButtonPressedState.setdPadUp = function (newPressedState) { + raiseKeyEvent(_dPadUpPressed, newPressedState, _GAMEPAD_DPAD_UP_KEY, _GAMEPAD_DPAD_UP_KEYCODE, true); + _dPadUpPressed = newPressedState; +}; - _ButtonPressedState.setdPadDown = function (newPressedState) { - raiseKeyEvent(_dPadDownPressed, newPressedState, _GAMEPAD_DPAD_DOWN_KEY, _GAMEPAD_DPAD_DOWN_KEYCODE, true); - _dPadDownPressed = newPressedState; - }; +_ButtonPressedState.getdPadDown = function () { + return _dPadDownPressed; +}; - _ButtonPressedState.getdPadLeft = function () { - return _dPadLeftPressed; - }; +_ButtonPressedState.setdPadDown = function (newPressedState) { + raiseKeyEvent(_dPadDownPressed, newPressedState, _GAMEPAD_DPAD_DOWN_KEY, _GAMEPAD_DPAD_DOWN_KEYCODE, true); + _dPadDownPressed = newPressedState; +}; - _ButtonPressedState.setdPadLeft = function (newPressedState) { - raiseKeyEvent(_dPadLeftPressed, newPressedState, _GAMEPAD_DPAD_LEFT_KEY, _GAMEPAD_DPAD_LEFT_KEYCODE, true); - _dPadLeftPressed = newPressedState; - }; +_ButtonPressedState.getdPadLeft = function () { + return _dPadLeftPressed; +}; - _ButtonPressedState.getdPadRight = function () { - return _dPadRightPressed; - }; +_ButtonPressedState.setdPadLeft = function (newPressedState) { + raiseKeyEvent(_dPadLeftPressed, newPressedState, _GAMEPAD_DPAD_LEFT_KEY, _GAMEPAD_DPAD_LEFT_KEYCODE, true); + _dPadLeftPressed = newPressedState; +}; - _ButtonPressedState.setdPadRight = function (newPressedState) { - raiseKeyEvent(_dPadRightPressed, newPressedState, _GAMEPAD_DPAD_RIGHT_KEY, _GAMEPAD_DPAD_RIGHT_KEYCODE, true); - _dPadRightPressed = newPressedState; - }; +_ButtonPressedState.getdPadRight = function () { + return _dPadRightPressed; +}; - var times = {}; +_ButtonPressedState.setdPadRight = function (newPressedState) { + raiseKeyEvent(_dPadRightPressed, newPressedState, _GAMEPAD_DPAD_RIGHT_KEY, _GAMEPAD_DPAD_RIGHT_KEYCODE, true); + _dPadRightPressed = newPressedState; +}; - function throttle(key) { - var time = times[key] || 0; - var now = new Date().getTime(); +var times = {}; - if ((now - time) >= 200) { - //times[key] = now; - return true; - } - - return false; - } - - function resetThrottle(key) { - times[key] = new Date().getTime(); - } - - var isElectron = navigator.userAgent.toLowerCase().indexOf('electron') !== -1; - function allowInput() { - // This would be nice but always seems to return true with electron - if (!isElectron && document.hidden) { /* eslint-disable-line compat/compat */ - return false; - } - - if (appHost.getWindowState() === 'Minimized') { - return false; - } +function throttle(key) { + var time = times[key] || 0; + var now = new Date().getTime(); + if ((now - time) >= 200) { + //times[key] = now; return true; } - function raiseEvent(name, key, keyCode) { - if (!allowInput()) { - return; - } + return false; +} - var event = document.createEvent('Event'); - event.initEvent(name, true, true); - event.key = key; - event.keyCode = keyCode; - (document.activeElement || document.body).dispatchEvent(event); +function resetThrottle(key) { + times[key] = new Date().getTime(); +} + +var isElectron = navigator.userAgent.toLowerCase().indexOf('electron') !== -1; +function allowInput() { + // This would be nice but always seems to return true with electron + if (!isElectron && document.hidden) { /* eslint-disable-line compat/compat */ + return false; } - function clickElement(elem) { - if (!allowInput()) { - return; - } - - elem.click(); + if (appHost.getWindowState() === 'Minimized') { + return false; } - function raiseKeyEvent(oldPressedState, newPressedState, key, keyCode, enableRepeatKeyDown, clickonKeyUp) { - // No-op if oldPressedState === newPressedState - if (newPressedState === true) { - // button down - var fire = false; + return true; +} - // always fire if this is the initial down press - if (oldPressedState === false) { - fire = true; - resetThrottle(key); - } else if (enableRepeatKeyDown) { - fire = throttle(key); - } +function raiseEvent(name, key, keyCode) { + if (!allowInput()) { + return; + } - if (fire && keyCode) { - raiseEvent('keydown', key, keyCode); - } - } else if (newPressedState === false && oldPressedState === true) { + var event = document.createEvent('Event'); + event.initEvent(name, true, true); + event.key = key; + event.keyCode = keyCode; + (document.activeElement || document.body).dispatchEvent(event); +} + +function clickElement(elem) { + if (!allowInput()) { + return; + } + + elem.click(); +} + +function raiseKeyEvent(oldPressedState, newPressedState, key, keyCode, enableRepeatKeyDown, clickonKeyUp) { + // No-op if oldPressedState === newPressedState + if (newPressedState === true) { + // button down + var fire = false; + + // always fire if this is the initial down press + if (oldPressedState === false) { + fire = true; resetThrottle(key); + } else if (enableRepeatKeyDown) { + fire = throttle(key); + } - // button up - if (keyCode) { - raiseEvent('keyup', key, keyCode); - } - if (clickonKeyUp) { - clickElement(document.activeElement || window); - } + if (fire && keyCode) { + raiseEvent('keydown', key, keyCode); + } + } else if (newPressedState === false && oldPressedState === true) { + resetThrottle(key); + + // button up + if (keyCode) { + raiseEvent('keyup', key, keyCode); + } + if (clickonKeyUp) { + clickElement(document.activeElement || window); } } +} - var inputLoopTimer; - function runInputLoop() { - // Get the latest gamepad state. - var gamepads = navigator.getGamepads(); /* eslint-disable-line compat/compat */ - for (var i = 0, len = gamepads.length; i < len; i++) { - var gamepad = gamepads[i]; - if (!gamepad) { - continue; - } - // Iterate through the axes - var axes = gamepad.axes; - var leftStickX = axes[0]; - var leftStickY = axes[1]; - if (leftStickX > _THUMB_STICK_THRESHOLD) { // Right - _ButtonPressedState.setleftThumbstickRight(true); - } else if (leftStickX < -_THUMB_STICK_THRESHOLD) { // Left - _ButtonPressedState.setleftThumbstickLeft(true); - } else if (leftStickY < -_THUMB_STICK_THRESHOLD) { // Up - _ButtonPressedState.setleftThumbstickUp(true); - } else if (leftStickY > _THUMB_STICK_THRESHOLD) { // Down - _ButtonPressedState.setleftThumbstickDown(true); - } else { - _ButtonPressedState.setleftThumbstickLeft(false); - _ButtonPressedState.setleftThumbstickRight(false); - _ButtonPressedState.setleftThumbstickUp(false); - _ButtonPressedState.setleftThumbstickDown(false); - } - // Iterate through the buttons to see if Left thumbstick, DPad, A and B are pressed. - var buttons = gamepad.buttons; - for (var j = 0, len = buttons.length; j < len; j++) { - if (ProcessedButtons.indexOf(j) !== -1) { - if (buttons[j].pressed) { - switch (j) { - case _GAMEPAD_DPAD_UP_BUTTON_INDEX: - _ButtonPressedState.setdPadUp(true); - break; - case _GAMEPAD_DPAD_DOWN_BUTTON_INDEX: - _ButtonPressedState.setdPadDown(true); - break; - case _GAMEPAD_DPAD_LEFT_BUTTON_INDEX: - _ButtonPressedState.setdPadLeft(true); - break; - case _GAMEPAD_DPAD_RIGHT_BUTTON_INDEX: - _ButtonPressedState.setdPadRight(true); - break; - case _GAMEPAD_A_BUTTON_INDEX: - _ButtonPressedState.setgamepadA(true); - break; - case _GAMEPAD_B_BUTTON_INDEX: - _ButtonPressedState.setgamepadB(true); - break; - default: - // No-op - break; - } - } else { - switch (j) { - case _GAMEPAD_DPAD_UP_BUTTON_INDEX: - if (_ButtonPressedState.getdPadUp()) { - _ButtonPressedState.setdPadUp(false); - } - break; - case _GAMEPAD_DPAD_DOWN_BUTTON_INDEX: - if (_ButtonPressedState.getdPadDown()) { - _ButtonPressedState.setdPadDown(false); - } - break; - case _GAMEPAD_DPAD_LEFT_BUTTON_INDEX: - if (_ButtonPressedState.getdPadLeft()) { - _ButtonPressedState.setdPadLeft(false); - } - break; - case _GAMEPAD_DPAD_RIGHT_BUTTON_INDEX: - if (_ButtonPressedState.getdPadRight()) { - _ButtonPressedState.setdPadRight(false); - } - break; - case _GAMEPAD_A_BUTTON_INDEX: - if (_ButtonPressedState.getgamepadA()) { - _ButtonPressedState.setgamepadA(false); - } - break; - case _GAMEPAD_B_BUTTON_INDEX: - if (_ButtonPressedState.getgamepadB()) { - _ButtonPressedState.setgamepadB(false); - } - break; - default: - // No-op - break; - } +var inputLoopTimer; +function runInputLoop() { + // Get the latest gamepad state. + var gamepads = navigator.getGamepads(); /* eslint-disable-line compat/compat */ + for (var i = 0, len = gamepads.length; i < len; i++) { + var gamepad = gamepads[i]; + if (!gamepad) { + continue; + } + // Iterate through the axes + var axes = gamepad.axes; + var leftStickX = axes[0]; + var leftStickY = axes[1]; + if (leftStickX > _THUMB_STICK_THRESHOLD) { // Right + _ButtonPressedState.setleftThumbstickRight(true); + } else if (leftStickX < -_THUMB_STICK_THRESHOLD) { // Left + _ButtonPressedState.setleftThumbstickLeft(true); + } else if (leftStickY < -_THUMB_STICK_THRESHOLD) { // Up + _ButtonPressedState.setleftThumbstickUp(true); + } else if (leftStickY > _THUMB_STICK_THRESHOLD) { // Down + _ButtonPressedState.setleftThumbstickDown(true); + } else { + _ButtonPressedState.setleftThumbstickLeft(false); + _ButtonPressedState.setleftThumbstickRight(false); + _ButtonPressedState.setleftThumbstickUp(false); + _ButtonPressedState.setleftThumbstickDown(false); + } + // Iterate through the buttons to see if Left thumbstick, DPad, A and B are pressed. + var buttons = gamepad.buttons; + for (var j = 0, len = buttons.length; j < len; j++) { + if (ProcessedButtons.indexOf(j) !== -1) { + if (buttons[j].pressed) { + switch (j) { + case _GAMEPAD_DPAD_UP_BUTTON_INDEX: + _ButtonPressedState.setdPadUp(true); + break; + case _GAMEPAD_DPAD_DOWN_BUTTON_INDEX: + _ButtonPressedState.setdPadDown(true); + break; + case _GAMEPAD_DPAD_LEFT_BUTTON_INDEX: + _ButtonPressedState.setdPadLeft(true); + break; + case _GAMEPAD_DPAD_RIGHT_BUTTON_INDEX: + _ButtonPressedState.setdPadRight(true); + break; + case _GAMEPAD_A_BUTTON_INDEX: + _ButtonPressedState.setgamepadA(true); + break; + case _GAMEPAD_B_BUTTON_INDEX: + _ButtonPressedState.setgamepadB(true); + break; + default: + // No-op + break; + } + } else { + switch (j) { + case _GAMEPAD_DPAD_UP_BUTTON_INDEX: + if (_ButtonPressedState.getdPadUp()) { + _ButtonPressedState.setdPadUp(false); + } + break; + case _GAMEPAD_DPAD_DOWN_BUTTON_INDEX: + if (_ButtonPressedState.getdPadDown()) { + _ButtonPressedState.setdPadDown(false); + } + break; + case _GAMEPAD_DPAD_LEFT_BUTTON_INDEX: + if (_ButtonPressedState.getdPadLeft()) { + _ButtonPressedState.setdPadLeft(false); + } + break; + case _GAMEPAD_DPAD_RIGHT_BUTTON_INDEX: + if (_ButtonPressedState.getdPadRight()) { + _ButtonPressedState.setdPadRight(false); + } + break; + case _GAMEPAD_A_BUTTON_INDEX: + if (_ButtonPressedState.getgamepadA()) { + _ButtonPressedState.setgamepadA(false); + } + break; + case _GAMEPAD_B_BUTTON_INDEX: + if (_ButtonPressedState.getgamepadB()) { + _ButtonPressedState.setgamepadB(false); + } + break; + default: + // No-op + break; } } } } - // Schedule the next one - inputLoopTimer = requestAnimationFrame(runInputLoop); } + // Schedule the next one + inputLoopTimer = requestAnimationFrame(runInputLoop); +} - function startInputLoop() { - if (!inputLoopTimer) { - runInputLoop(); +function startInputLoop() { + if (!inputLoopTimer) { + runInputLoop(); + } +} + +function stopInputLoop() { + cancelAnimationFrame(inputLoopTimer); + inputLoopTimer = undefined; +} + +function isGamepadConnected() { + var gamepads = navigator.getGamepads(); /* eslint-disable-line compat/compat */ + for (var i = 0, len = gamepads.length; i < len; i++) { + var gamepad = gamepads[i]; + if (gamepad && gamepad.connected) { + return true; } } + return false; +} - function stopInputLoop() { - cancelAnimationFrame(inputLoopTimer); - inputLoopTimer = undefined; +function onFocusOrGamepadAttach(e) { + /* eslint-disable-next-line compat/compat */ + if (isGamepadConnected() && document.hasFocus()) { + console.log('Gamepad connected! Starting input loop'); + startInputLoop(); } +} - function isGamepadConnected() { - var gamepads = navigator.getGamepads(); /* eslint-disable-line compat/compat */ - for (var i = 0, len = gamepads.length; i < len; i++) { - var gamepad = gamepads[i]; - if (gamepad && gamepad.connected) { - return true; - } - } - return false; +function onFocusOrGamepadDetach(e) { + /* eslint-disable-next-line compat/compat */ + if (!isGamepadConnected() || !document.hasFocus()) { + console.log('Gamepad disconnected! No other gamepads are connected, stopping input loop'); + stopInputLoop(); + } else { + console.log('Gamepad disconnected! There are gamepads still connected.'); } +} - function onFocusOrGamepadAttach(e) { - /* eslint-disable-next-line compat/compat */ - if (isGamepadConnected() && document.hasFocus()) { - console.log('Gamepad connected! Starting input loop'); - startInputLoop(); - } - } +// Event listeners for any change in gamepads' state. +window.addEventListener('gamepaddisconnected', onFocusOrGamepadDetach); +window.addEventListener('gamepadconnected', onFocusOrGamepadAttach); +window.addEventListener('blur', onFocusOrGamepadDetach); +window.addEventListener('focus', onFocusOrGamepadAttach); - function onFocusOrGamepadDetach(e) { - /* eslint-disable-next-line compat/compat */ - if (!isGamepadConnected() || !document.hasFocus()) { - console.log('Gamepad disconnected! No other gamepads are connected, stopping input loop'); - stopInputLoop(); - } else { - console.log('Gamepad disconnected! There are gamepads still connected.'); - } - } +onFocusOrGamepadAttach(); - // Event listeners for any change in gamepads' state. - window.addEventListener('gamepaddisconnected', onFocusOrGamepadDetach); - window.addEventListener('gamepadconnected', onFocusOrGamepadAttach); - window.addEventListener('blur', onFocusOrGamepadDetach); - window.addEventListener('focus', onFocusOrGamepadAttach); - - onFocusOrGamepadAttach(); - - // The gamepadInputEmulation is a string property that exists in JavaScript UWAs and in WebViews in UWAs. - // It won't exist in Win8.1 style apps or browsers. - if (window.navigator && typeof window.navigator.gamepadInputEmulation === 'string') { - // We want the gamepad to provide gamepad VK keyboard events rather than moving a - // mouse like cursor. Set to "keyboard", the gamepad will provide such keyboard events - // and provide input to the DOM navigator.getGamepads API. - window.navigator.gamepadInputEmulation = 'gamepad'; - } -}); +// The gamepadInputEmulation is a string property that exists in JavaScript UWAs and in WebViews in UWAs. +// It won't exist in Win8.1 style apps or browsers. +if (window.navigator && typeof window.navigator.gamepadInputEmulation === 'string') { + // We want the gamepad to provide gamepad VK keyboard events rather than moving a + // mouse like cursor. Set to "keyboard", the gamepad will provide such keyboard events + // and provide input to the DOM navigator.getGamepads API. + window.navigator.gamepadInputEmulation = 'gamepad'; +} diff --git a/src/scripts/site.js b/src/scripts/site.js index cd85c35e83..bf0fa75efa 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -689,7 +689,8 @@ function initClient() { 'events', 'credentialprovider', 'connectionManagerFactory', - 'appStorage' + 'appStorage', + 'focus-options-polyfill' ] }, urlArgs: urlArgs, @@ -698,7 +699,7 @@ function initClient() { }); promise = require(['fetch']) - .then(() => require(['jQuery', 'polyfill', 'fast-text-encoding', 'intersection-observer', 'classlist-polyfill', 'css!assets/css/site', 'jellyfin-noto'], (jQuery) => { + .then(() => require(['jQuery', 'polyfill', 'fast-text-encoding', 'intersection-observer', 'classlist-polyfill', 'focus-options-polyfill', 'css!assets/css/site', 'jellyfin-noto'], (jQuery) => { // Expose jQuery globally window.$ = jQuery; window.jQuery = jQuery; diff --git a/yarn.lock b/yarn.lock index 3ec7f21487..be5f329fa6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4608,6 +4608,11 @@ flv.js@^1.5.0: es6-promise "^4.2.5" webworkify "^1.5.0" +focus-options-polyfill@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/focus-options-polyfill/-/focus-options-polyfill-1.5.0.tgz#fd2e6a0d6d8f828346726a5adf02f3d2bdfece5f" + integrity sha512-HiMSaXGUz2OFjOuoGTWXlp+YjZCGnVXPu6vPeccgaSOzGmqLVz8tJRcKXWfMJnj16LXf/IM1rJI0zrZMVc9q7g== + follow-redirects@1.5.10: version "1.5.10" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.10.tgz#7b7a9f9aea2fdff36786a94ff643ed07f4ff5e2a" From 85e01537495a73de3dbd8575ad83c34563b0d0e0 Mon Sep 17 00:00:00 2001 From: Julien Machiels Date: Fri, 7 Aug 2020 00:12:27 +0200 Subject: [PATCH 014/285] Update src/components/pluginManager.js Co-authored-by: Dmitry Lyzo <56478732+dmitrylyzo@users.noreply.github.com> --- src/components/pluginManager.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/components/pluginManager.js b/src/components/pluginManager.js index 14f4fdecf9..c4418cbff5 100644 --- a/src/components/pluginManager.js +++ b/src/components/pluginManager.js @@ -51,8 +51,6 @@ import globalize from 'globalize'; } loadPlugin(pluginSpec) { - var instance = this; - if (typeof pluginSpec === 'string') { console.debug('Loading plugin (via deprecated requirejs method): ' + pluginSpec); From 2d5db406c8bfac5c7478b1e2e45896b9cd86af01 Mon Sep 17 00:00:00 2001 From: Julien Machiels Date: Fri, 7 Aug 2020 00:13:16 +0200 Subject: [PATCH 015/285] Update src/scripts/site.js Co-authored-by: Dmitry Lyzo <56478732+dmitrylyzo@users.noreply.github.com> --- src/scripts/site.js | 1 - 1 file changed, 1 deletion(-) diff --git a/src/scripts/site.js b/src/scripts/site.js index 7919ed510f..f8e80408ee 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -470,7 +470,6 @@ function initClient() { require(['apphost', 'css!assets/css/librarybrowser'], function (appHost) { loadPlugins(appHost, browser).then(function () { - console.groupEnd('loading packages'); onAppReady(browser); }); }); From e55c8958db714479560689f77d2cf0928ee57f29 Mon Sep 17 00:00:00 2001 From: Cameron Date: Fri, 7 Aug 2020 08:16:18 +0100 Subject: [PATCH 016/285] Migration of experimentalWarnings to ES6 modules --- package.json | 1 + src/plugins/experimentalWarnings/plugin.js | 88 +++++++++++----------- 2 files changed, 47 insertions(+), 42 deletions(-) diff --git a/package.json b/package.json index 1d7cf770d3..2d0f044694 100644 --- a/package.json +++ b/package.json @@ -155,6 +155,7 @@ "src/components/refreshdialog/refreshdialog.js", "src/components/sanatizefilename.js", "src/components/scrollManager.js", + "src/plugins/experimentalWarnings/plugin.js", "src/plugins/htmlVideoPlayer/plugin.js", "src/components/search/searchfields.js", "src/components/search/searchresults.js", diff --git a/src/plugins/experimentalWarnings/plugin.js b/src/plugins/experimentalWarnings/plugin.js index c39612d45b..7450040541 100644 --- a/src/plugins/experimentalWarnings/plugin.js +++ b/src/plugins/experimentalWarnings/plugin.js @@ -1,59 +1,63 @@ -define(['connectionManager', 'globalize', 'userSettings', 'apphost'], function (connectionManager, globalize, userSettings, appHost) { - 'use strict'; +import globalize from 'globalize'; +import * as userSettings from 'userSettings'; +import appHost from 'apphost'; - // TODO: Replace with date-fns - // https://stackoverflow.com/questions/6117814/get-week-of-year-in-javascript-like-in-php - function getWeek(date) { - var d = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate())); - var dayNum = d.getUTCDay() || 7; - d.setUTCDate(d.getUTCDate() + 4 - dayNum); - var yearStart = new Date(Date.UTC(d.getUTCFullYear(), 0, 1)); - return Math.ceil((((d - yearStart) / 86400000) + 1) / 7); +/*eslint prefer-const: "error"*/ + +// TODO: Replace with date-fns +// https://stackoverflow.com/questions/6117814/get-week-of-year-in-javascript-like-in-php +function getWeek(date) { + const d = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate())); + const dayNum = d.getUTCDay() || 7; + d.setUTCDate(d.getUTCDate() + 4 - dayNum); + const yearStart = new Date(Date.UTC(d.getUTCFullYear(), 0, 1)); + return Math.ceil((((d - yearStart) / 86400000) + 1) / 7); +} + +function showMessage(text, userSettingsKey, appHostFeature) { + if (appHost.supports(appHostFeature)) { + return Promise.resolve(); } - function showMessage(text, userSettingsKey, appHostFeature) { - if (appHost.supports(appHostFeature)) { - return Promise.resolve(); - } + const now = new Date(); - var now = new Date(); + // TODO: Use date-fns + userSettingsKey += now.getFullYear() + '-w' + getWeek(now); - // TODO: Use date-fns - userSettingsKey += now.getFullYear() + '-w' + getWeek(now); + if (userSettings.get(userSettingsKey, false) === '1') { + return Promise.resolve(); + } - if (userSettings.get(userSettingsKey, false) === '1') { - return Promise.resolve(); - } + return new Promise(function (resolve, reject) { + userSettings.set(userSettingsKey, '1', false); - return new Promise(function (resolve, reject) { - userSettings.set(userSettingsKey, '1', false); - - require(['alert'], function (alert) { - return alert(text).then(resolve, resolve); - }); + import('alert').then(({default: alert}) => { + return alert(text).then(resolve, resolve); }); - } + }); +} - function showBlurayMessage() { - return showMessage(globalize.translate('UnsupportedPlayback'), 'blurayexpirementalinfo', 'nativeblurayplayback'); - } +function showBlurayMessage() { + return showMessage(globalize.translate('UnsupportedPlayback'), 'blurayexpirementalinfo', 'nativeblurayplayback'); +} - function showDvdMessage() { - return showMessage(globalize.translate('UnsupportedPlayback'), 'dvdexpirementalinfo', 'nativedvdplayback'); - } +function showDvdMessage() { + return showMessage(globalize.translate('UnsupportedPlayback'), 'dvdexpirementalinfo', 'nativedvdplayback'); +} - function showIsoMessage() { - return showMessage(globalize.translate('UnsupportedPlayback'), 'isoexpirementalinfo', 'nativeisoplayback'); - } +function showIsoMessage() { + return showMessage(globalize.translate('UnsupportedPlayback'), 'isoexpirementalinfo', 'nativeisoplayback'); +} - function ExpirementalPlaybackWarnings() { +class ExpirementalPlaybackWarnings { + constructor() { this.name = 'Experimental playback warnings'; this.type = 'preplayintercept'; this.id = 'expirementalplaybackwarnings'; } - ExpirementalPlaybackWarnings.prototype.intercept = function (options) { - var item = options.item; + intercept(options) { + const item = options.item; if (!item) { return Promise.resolve(); } @@ -71,7 +75,7 @@ define(['connectionManager', 'globalize', 'userSettings', 'apphost'], function ( } return Promise.resolve(); - }; + } +} - return ExpirementalPlaybackWarnings; -}); +export default ExpirementalPlaybackWarnings; From e6ec5bab0287c932897cedcc7720dfa43ec08c0d Mon Sep 17 00:00:00 2001 From: Cameron Date: Fri, 7 Aug 2020 08:16:35 +0100 Subject: [PATCH 017/285] Migration of sessionPlayer to ES6 module --- package.json | 1 + src/plugins/sessionPlayer/plugin.js | 546 +++++++++++++--------------- 2 files changed, 263 insertions(+), 284 deletions(-) diff --git a/package.json b/package.json index 2d0f044694..4fde07544c 100644 --- a/package.json +++ b/package.json @@ -157,6 +157,7 @@ "src/components/scrollManager.js", "src/plugins/experimentalWarnings/plugin.js", "src/plugins/htmlVideoPlayer/plugin.js", + "src/plugins/sessionPlayer/plugin.js", "src/components/search/searchfields.js", "src/components/search/searchresults.js", "src/components/settingshelper.js", diff --git a/src/plugins/sessionPlayer/plugin.js b/src/plugins/sessionPlayer/plugin.js index fb1f745df3..56d904e2fc 100644 --- a/src/plugins/sessionPlayer/plugin.js +++ b/src/plugins/sessionPlayer/plugin.js @@ -1,131 +1,123 @@ -define(['playbackManager', 'events', 'serverNotifications', 'connectionManager'], function (playbackManager, events, serverNotifications, connectionManager) { - 'use strict'; +import playbackManager from 'playbackManager'; +import events from 'events'; +import serverNotifications from 'serverNotifications'; +import connectionManager from 'connectionManager'; - playbackManager = playbackManager.default || playbackManager; +function getActivePlayerId() { + const info = playbackManager.getPlayerInfo(); + return info ? info.id : null; +} - function getActivePlayerId() { - var info = playbackManager.getPlayerInfo(); - return info ? info.id : null; +function sendPlayCommand(apiClient, options, playType) { + const sessionId = getActivePlayerId(); + + const ids = options.ids || options.items.map(function (i) { + return i.Id; + }); + + const remoteOptions = { + ItemIds: ids.join(','), + + PlayCommand: playType + }; + + if (options.startPositionTicks) { + remoteOptions.StartPositionTicks = options.startPositionTicks; } - function sendPlayCommand(apiClient, options, playType) { - var sessionId = getActivePlayerId(); - - var ids = options.ids || options.items.map(function (i) { - return i.Id; - }); - - var remoteOptions = { - ItemIds: ids.join(','), - - PlayCommand: playType - }; - - if (options.startPositionTicks) { - remoteOptions.StartPositionTicks = options.startPositionTicks; - } - - if (options.mediaSourceId) { - remoteOptions.MediaSourceId = options.mediaSourceId; - } - - if (options.audioStreamIndex != null) { - remoteOptions.AudioStreamIndex = options.audioStreamIndex; - } - - if (options.subtitleStreamIndex != null) { - remoteOptions.SubtitleStreamIndex = options.subtitleStreamIndex; - } - - if (options.startIndex != null) { - remoteOptions.StartIndex = options.startIndex; - } - - return apiClient.sendPlayCommand(sessionId, remoteOptions); + if (options.mediaSourceId) { + remoteOptions.MediaSourceId = options.mediaSourceId; } - function sendPlayStateCommand(apiClient, command, options) { - var sessionId = getActivePlayerId(); - - apiClient.sendPlayStateCommand(sessionId, command, options); + if (options.audioStreamIndex != null) { + remoteOptions.AudioStreamIndex = options.audioStreamIndex; } - function getCurrentApiClient(instance) { - var currentServerId = instance.currentServerId; - - if (currentServerId) { - return connectionManager.getApiClient(currentServerId); - } - - return connectionManager.currentApiClient(); + if (options.subtitleStreamIndex != null) { + remoteOptions.SubtitleStreamIndex = options.subtitleStreamIndex; } - function sendCommandByName(instance, name, options) { - var command = { - Name: name - }; - - if (options) { - command.Arguments = options; - } - - instance.sendCommand(command); + if (options.startIndex != null) { + remoteOptions.StartIndex = options.startIndex; } - function unsubscribeFromPlayerUpdates(instance) { - instance.isUpdating = true; + return apiClient.sendPlayCommand(sessionId, remoteOptions); +} - var apiClient = getCurrentApiClient(instance); - apiClient.sendMessage('SessionsStop'); - if (instance.pollInterval) { - clearInterval(instance.pollInterval); - instance.pollInterval = null; - } +function sendPlayStateCommand(apiClient, command, options) { + const sessionId = getActivePlayerId(); + + apiClient.sendPlayStateCommand(sessionId, command, options); +} + +function getCurrentApiClient(instance) { + const currentServerId = instance.currentServerId; + + if (currentServerId) { + return connectionManager.getApiClient(currentServerId); } - function processUpdatedSessions(instance, sessions, apiClient) { - var serverId = apiClient.serverId(); + return connectionManager.currentApiClient(); +} - sessions.map(function (s) { - if (s.NowPlayingItem) { - s.NowPlayingItem.ServerId = serverId; - } - }); +function sendCommandByName(instance, name, options) { + const command = { + Name: name + }; - var currentTargetId = getActivePlayerId(); - - var session = sessions.filter(function (s) { - return s.Id === currentTargetId; - })[0]; - - if (session) { - normalizeImages(session, apiClient); - - var eventNames = getChangedEvents(instance.lastPlayerData, session); - instance.lastPlayerData = session; - - for (var i = 0, length = eventNames.length; i < length; i++) { - events.trigger(instance, eventNames[i], [session]); - } - } else { - instance.lastPlayerData = session; - - playbackManager.setDefaultPlayerActive(); - } + if (options) { + command.Arguments = options; } - function getChangedEvents(state1, state2) { - var names = []; + instance.sendCommand(command); +} - if (!state1) { - names.push('statechange'); - names.push('timeupdate'); - names.push('pause'); +function unsubscribeFromPlayerUpdates(instance) { + instance.isUpdating = true; - return names; + const apiClient = getCurrentApiClient(instance); + apiClient.sendMessage('SessionsStop'); + if (instance.pollInterval) { + clearInterval(instance.pollInterval); + instance.pollInterval = null; + } +} + +function processUpdatedSessions(instance, sessions, apiClient) { + const serverId = apiClient.serverId(); + + sessions.map(function (s) { + if (s.NowPlayingItem) { + s.NowPlayingItem.ServerId = serverId; } + }); - // TODO: Trim these down to prevent the UI from over-refreshing + const currentTargetId = getActivePlayerId(); + + const session = sessions.filter(function (s) { + return s.Id === currentTargetId; + })[0]; + + if (session) { + normalizeImages(session, apiClient); + + const eventNames = getChangedEvents(instance.lastPlayerData, session); + instance.lastPlayerData = session; + + for (let i = 0, length = eventNames.length; i < length; i++) { + events.trigger(instance, eventNames[i], [session]); + } + } else { + instance.lastPlayerData = session; + + playbackManager.setDefaultPlayerActive(); + } +} + +function getChangedEvents(state1, state2) { + const names = []; + + if (!state1) { names.push('statechange'); names.push('timeupdate'); names.push('pause'); @@ -133,53 +125,62 @@ define(['playbackManager', 'events', 'serverNotifications', 'connectionManager'] return names; } - function onPollIntervalFired() { - var instance = this; - var apiClient = getCurrentApiClient(instance); - if (!apiClient.isMessageChannelOpen()) { - apiClient.getSessions().then(function (sessions) { - processUpdatedSessions(instance, sessions, apiClient); - }); - } + // TODO: Trim these down to prevent the UI from over-refreshing + names.push('statechange'); + names.push('timeupdate'); + names.push('pause'); + + return names; +} + +function onPollIntervalFired() { + const instance = this; + const apiClient = getCurrentApiClient(instance); + if (!apiClient.isMessageChannelOpen()) { + apiClient.getSessions().then(function (sessions) { + processUpdatedSessions(instance, sessions, apiClient); + }); } +} - function subscribeToPlayerUpdates(instance) { - instance.isUpdating = true; +function subscribeToPlayerUpdates(instance) { + instance.isUpdating = true; - var apiClient = getCurrentApiClient(instance); - apiClient.sendMessage('SessionsStart', '100,800'); - if (instance.pollInterval) { - clearInterval(instance.pollInterval); - instance.pollInterval = null; - } - instance.pollInterval = setInterval(onPollIntervalFired.bind(instance), 5000); + const apiClient = getCurrentApiClient(instance); + apiClient.sendMessage('SessionsStart', '100,800'); + if (instance.pollInterval) { + clearInterval(instance.pollInterval); + instance.pollInterval = null; } + instance.pollInterval = setInterval(onPollIntervalFired.bind(instance), 5000); +} - function normalizeImages(state, apiClient) { - if (state && state.NowPlayingItem) { - var item = state.NowPlayingItem; +function normalizeImages(state, apiClient) { + if (state && state.NowPlayingItem) { + const item = state.NowPlayingItem; - if (!item.ImageTags || !item.ImageTags.Primary) { - if (item.PrimaryImageTag) { - item.ImageTags = item.ImageTags || {}; - item.ImageTags.Primary = item.PrimaryImageTag; - } - } - if (item.BackdropImageTag && item.BackdropItemId === item.Id) { - item.BackdropImageTags = [item.BackdropImageTag]; - } - if (item.BackdropImageTag && item.BackdropItemId !== item.Id) { - item.ParentBackdropImageTags = [item.BackdropImageTag]; - item.ParentBackdropItemId = item.BackdropItemId; - } - if (!item.ServerId) { - item.ServerId = apiClient.serverId(); + if (!item.ImageTags || !item.ImageTags.Primary) { + if (item.PrimaryImageTag) { + item.ImageTags = item.ImageTags || {}; + item.ImageTags.Primary = item.PrimaryImageTag; } } + if (item.BackdropImageTag && item.BackdropItemId === item.Id) { + item.BackdropImageTags = [item.BackdropImageTag]; + } + if (item.BackdropImageTag && item.BackdropItemId !== item.Id) { + item.ParentBackdropImageTags = [item.BackdropImageTag]; + item.ParentBackdropItemId = item.BackdropItemId; + } + if (!item.ServerId) { + item.ServerId = apiClient.serverId(); + } } +} - function SessionPlayer() { - var self = this; +class SessionPlayer { + constructor() { + const self = this; this.name = 'Remote Control'; this.type = 'mediaplayer'; @@ -191,7 +192,7 @@ define(['playbackManager', 'events', 'serverNotifications', 'connectionManager'] }); } - SessionPlayer.prototype.beginPlayerUpdates = function () { + beginPlayerUpdates() { this.playerListenerCount = this.playerListenerCount || 0; if (this.playerListenerCount <= 0) { @@ -201,9 +202,9 @@ define(['playbackManager', 'events', 'serverNotifications', 'connectionManager'] } this.playerListenerCount++; - }; + } - SessionPlayer.prototype.endPlayerUpdates = function () { + endPlayerUpdates() { this.playerListenerCount = this.playerListenerCount || 0; this.playerListenerCount--; @@ -211,21 +212,21 @@ define(['playbackManager', 'events', 'serverNotifications', 'connectionManager'] unsubscribeFromPlayerUpdates(this); this.playerListenerCount = 0; } - }; + } - SessionPlayer.prototype.getPlayerState = function () { + getPlayerState() { return this.lastPlayerData || {}; - }; + } - SessionPlayer.prototype.getTargets = function () { - var apiClient = getCurrentApiClient(this); + getTargets() { + const apiClient = getCurrentApiClient(this); - var sessionQuery = { + const sessionQuery = { ControllableByUserId: apiClient.getCurrentUserId() }; if (apiClient) { - var name = this.name; + const name = this.name; return apiClient.getSessions(sessionQuery).then(function (sessions) { return sessions.filter(function (s) { @@ -242,11 +243,9 @@ define(['playbackManager', 'events', 'serverNotifications', 'connectionManager'] isLocalPlayer: false, supportedCommands: s.Capabilities.SupportedCommands, user: s.UserId ? { - Id: s.UserId, Name: s.UserName, PrimaryImageTag: s.UserPrimaryImageTag - } : null }; }); @@ -254,16 +253,16 @@ define(['playbackManager', 'events', 'serverNotifications', 'connectionManager'] } else { return Promise.resolve([]); } - }; + } - SessionPlayer.prototype.sendCommand = function (command) { - var sessionId = getActivePlayerId(); + sendCommand(command) { + const sessionId = getActivePlayerId(); - var apiClient = getCurrentApiClient(this); + const apiClient = getCurrentApiClient(this); apiClient.sendCommand(sessionId, command); - }; + } - SessionPlayer.prototype.play = function (options) { + play(options) { options = Object.assign({}, options); if (options.items) { @@ -275,251 +274,230 @@ define(['playbackManager', 'events', 'serverNotifications', 'connectionManager'] } return sendPlayCommand(getCurrentApiClient(this), options, 'PlayNow'); - }; + } - SessionPlayer.prototype.shuffle = function (item) { + shuffle(item) { sendPlayCommand(getCurrentApiClient(this), { ids: [item.Id] }, 'PlayShuffle'); - }; + } - SessionPlayer.prototype.instantMix = function (item) { + instantMix(item) { sendPlayCommand(getCurrentApiClient(this), { ids: [item.Id] }, 'PlayInstantMix'); - }; + } - SessionPlayer.prototype.queue = function (options) { + queue(options) { sendPlayCommand(getCurrentApiClient(this), options, 'PlayNext'); - }; + } - SessionPlayer.prototype.queueNext = function (options) { + queueNext(options) { sendPlayCommand(getCurrentApiClient(this), options, 'PlayLast'); - }; + } - SessionPlayer.prototype.canPlayMediaType = function (mediaType) { + canPlayMediaType(mediaType) { mediaType = (mediaType || '').toLowerCase(); return mediaType === 'audio' || mediaType === 'video'; - }; + } - SessionPlayer.prototype.canQueueMediaType = function (mediaType) { + canQueueMediaType(mediaType) { return this.canPlayMediaType(mediaType); - }; + } - SessionPlayer.prototype.stop = function () { + stop() { sendPlayStateCommand(getCurrentApiClient(this), 'stop'); - }; + } - SessionPlayer.prototype.nextTrack = function () { + nextTrack() { sendPlayStateCommand(getCurrentApiClient(this), 'nextTrack'); - }; + } - SessionPlayer.prototype.previousTrack = function () { + previousTrack() { sendPlayStateCommand(getCurrentApiClient(this), 'previousTrack'); - }; + } - SessionPlayer.prototype.seek = function (positionTicks) { + seek(positionTicks) { sendPlayStateCommand(getCurrentApiClient(this), 'seek', { SeekPositionTicks: positionTicks }); - }; + } - SessionPlayer.prototype.currentTime = function (val) { + currentTime(val) { if (val != null) { return this.seek(val); } - var state = this.lastPlayerData || {}; + let state = this.lastPlayerData || {}; state = state.PlayState || {}; return state.PositionTicks; - }; + } - SessionPlayer.prototype.duration = function () { - var state = this.lastPlayerData || {}; + duration() { + let state = this.lastPlayerData || {}; state = state.NowPlayingItem || {}; return state.RunTimeTicks; - }; + } - SessionPlayer.prototype.paused = function () { - var state = this.lastPlayerData || {}; + paused() { + let state = this.lastPlayerData || {}; state = state.PlayState || {}; return state.IsPaused; - }; + } - SessionPlayer.prototype.getVolume = function () { - var state = this.lastPlayerData || {}; + getVolume() { + let state = this.lastPlayerData || {}; state = state.PlayState || {}; return state.VolumeLevel; - }; + } - SessionPlayer.prototype.isMuted = function () { - var state = this.lastPlayerData || {}; + isMuted() { + let state = this.lastPlayerData || {}; state = state.PlayState || {}; return state.IsMuted; - }; + } - SessionPlayer.prototype.pause = function () { + pause() { sendPlayStateCommand(getCurrentApiClient(this), 'Pause'); - }; + } - SessionPlayer.prototype.unpause = function () { + unpause() { sendPlayStateCommand(getCurrentApiClient(this), 'Unpause'); - }; + } - SessionPlayer.prototype.playPause = function () { + playPause() { sendPlayStateCommand(getCurrentApiClient(this), 'PlayPause'); - }; + } - SessionPlayer.prototype.setMute = function (isMuted) { + setMute(isMuted) { if (isMuted) { sendCommandByName(this, 'Mute'); } else { sendCommandByName(this, 'Unmute'); } - }; + } - SessionPlayer.prototype.toggleMute = function () { + toggleMute() { sendCommandByName(this, 'ToggleMute'); - }; + } - SessionPlayer.prototype.setVolume = function (vol) { + setVolume(vol) { sendCommandByName(this, 'SetVolume', { Volume: vol }); - }; + } - SessionPlayer.prototype.volumeUp = function () { + volumeUp() { sendCommandByName(this, 'VolumeUp'); - }; + } - SessionPlayer.prototype.volumeDown = function () { + volumeDown() { sendCommandByName(this, 'VolumeDown'); - }; + } - SessionPlayer.prototype.toggleFullscreen = function () { + toggleFullscreen() { sendCommandByName(this, 'ToggleFullscreen'); - }; + } - SessionPlayer.prototype.audioTracks = function () { - var state = this.lastPlayerData || {}; + audioTracks() { + let state = this.lastPlayerData || {}; state = state.NowPlayingItem || {}; - var streams = state.MediaStreams || []; + const streams = state.MediaStreams || []; return streams.filter(function (s) { return s.Type === 'Audio'; }); - }; + } - SessionPlayer.prototype.getAudioStreamIndex = function () { - var state = this.lastPlayerData || {}; + getAudioStreamIndex() { + let state = this.lastPlayerData || {}; state = state.PlayState || {}; return state.AudioStreamIndex; - }; + } - SessionPlayer.prototype.playTrailers = function (item) { + playTrailers(item) { sendCommandByName(this, 'PlayTrailers', { ItemId: item.Id }); - }; + } - SessionPlayer.prototype.setAudioStreamIndex = function (index) { + setAudioStreamIndex(index) { sendCommandByName(this, 'SetAudioStreamIndex', { Index: index }); - }; + } - SessionPlayer.prototype.subtitleTracks = function () { - var state = this.lastPlayerData || {}; + subtitleTracks() { + let state = this.lastPlayerData || {}; state = state.NowPlayingItem || {}; - var streams = state.MediaStreams || []; + const streams = state.MediaStreams || []; return streams.filter(function (s) { return s.Type === 'Subtitle'; }); - }; + } - SessionPlayer.prototype.getSubtitleStreamIndex = function () { - var state = this.lastPlayerData || {}; + getSubtitleStreamIndex() { + let state = this.lastPlayerData || {}; state = state.PlayState || {}; return state.SubtitleStreamIndex; - }; + } - SessionPlayer.prototype.setSubtitleStreamIndex = function (index) { + setSubtitleStreamIndex(index) { sendCommandByName(this, 'SetSubtitleStreamIndex', { Index: index }); - }; + } - SessionPlayer.prototype.getMaxStreamingBitrate = function () { + setMaxStreamingBitrate(options) { + } - }; - - SessionPlayer.prototype.setMaxStreamingBitrate = function (options) { - - }; - - SessionPlayer.prototype.isFullscreen = function () { - - }; - - SessionPlayer.prototype.toggleFullscreen = function () { - - }; - - SessionPlayer.prototype.getRepeatMode = function () { - - }; - - SessionPlayer.prototype.setRepeatMode = function (mode) { + setRepeatMode(mode) { sendCommandByName(this, 'SetRepeatMode', { RepeatMode: mode }); - }; + } - SessionPlayer.prototype.setQueueShuffleMode = function (mode) { + setQueueShuffleMode(mode) { sendCommandByName(this, 'SetShuffleQueue', { ShuffleMode: mode }); - }; + } - SessionPlayer.prototype.getQueueShuffleMode = function () { + getQueueShuffleMode() { + } - }; - - SessionPlayer.prototype.displayContent = function (options) { + displayContent(options) { sendCommandByName(this, 'DisplayContent', options); - }; + } - SessionPlayer.prototype.isPlaying = function () { - var state = this.lastPlayerData || {}; + isPlaying() { + const state = this.lastPlayerData || {}; return state.NowPlayingItem != null; - }; + } - SessionPlayer.prototype.isPlayingVideo = function () { - var state = this.lastPlayerData || {}; + isPlayingVideo() { + let state = this.lastPlayerData || {}; state = state.NowPlayingItem || {}; return state.MediaType === 'Video'; - }; + } - SessionPlayer.prototype.isPlayingAudio = function () { - var state = this.lastPlayerData || {}; + isPlayingAudio() { + let state = this.lastPlayerData || {}; state = state.NowPlayingItem || {}; return state.MediaType === 'Audio'; - }; + } - SessionPlayer.prototype.getPlaylist = function () { + getPlaylist() { return Promise.resolve([]); - }; + } - SessionPlayer.prototype.getCurrentPlaylistItemId = function () { - }; - - SessionPlayer.prototype.setCurrentPlaylistItem = function (playlistItemId) { + setCurrentPlaylistItem(playlistItemId) { return Promise.resolve(); - }; + } - SessionPlayer.prototype.removeFromPlaylist = function (playlistItemIds) { + removeFromPlaylist(playlistItemIds) { return Promise.resolve(); - }; + } - SessionPlayer.prototype.tryPair = function (target) { + tryPair(target) { return Promise.resolve(); - }; + } +} - return SessionPlayer; -}); +export default SessionPlayer; From abd6e02151a5c5d985172da69f053ad40ee49b53 Mon Sep 17 00:00:00 2001 From: Cameron Date: Fri, 7 Aug 2020 09:31:46 +0100 Subject: [PATCH 018/285] lint --- src/components/recordingcreator/recordingeditor.js | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/src/components/recordingcreator/recordingeditor.js b/src/components/recordingcreator/recordingeditor.js index c08feeeb83..6fe104b57f 100644 --- a/src/components/recordingcreator/recordingeditor.js +++ b/src/components/recordingcreator/recordingeditor.js @@ -15,22 +15,12 @@ import 'css!./recordingcreator'; import 'material-icons'; import 'flexStyles'; -/*eslint prefer-const: "error"*/ - let currentDialog; let recordingDeleted = false; let currentItemId; let currentServerId; let currentResolve; -function deleteTimer(apiClient, timerId) { - return new Promise(function (resolve, reject) { - require(['recordingHelper'], function (recordingHelper) { - recordingHelper.cancelTimerWithConfirmation(timerId, apiClient.serverId()).then(resolve, reject); - }); - }); -} - function renderTimer(context, item, apiClient) { context.querySelector('#txtPrePaddingMinutes').value = item.PrePaddingSeconds / 60; context.querySelector('#txtPostPaddingMinutes').value = item.PostPaddingSeconds / 60; @@ -67,8 +57,8 @@ function init(context) { context.querySelector('.btnCancelRecording').addEventListener('click', function () { const apiClient = connectionManager.getApiClient(currentServerId); - - (apiClient, currentItemId).then(function () { + + (apiClient, currentItemId).then(function () { closeDialog(true); }); }); From 81c6dc6907f94ab7e438c8c17e8d6a13db481473 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sat, 8 Aug 2020 15:26:03 +0200 Subject: [PATCH 019/285] Move Dashboard to a new module --- package.json | 1 + src/components/appRouter.js | 8 -- src/scripts/clientUtils.js | 228 ++++++++++++++++++++++++++++++++ src/scripts/site.js | 254 ++++++------------------------------ 4 files changed, 266 insertions(+), 225 deletions(-) create mode 100644 src/scripts/clientUtils.js diff --git a/package.json b/package.json index bd2605372c..7326dfa1f4 100644 --- a/package.json +++ b/package.json @@ -288,6 +288,7 @@ "src/scripts/alphanumericshortcuts.js", "src/scripts/autoBackdrops.js", "src/scripts/browser.js", + "src/scripts/clientUtils.js", "src/scripts/datetime.js", "src/scripts/deleteHelper.js", "src/scripts/dfnshelper.js", diff --git a/src/components/appRouter.js b/src/components/appRouter.js index e7b697daf4..9be762fc8f 100644 --- a/src/components/appRouter.js +++ b/src/components/appRouter.js @@ -485,13 +485,6 @@ define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdro return (page.len || 0) > 0; } - function showDirect(path) { - return new Promise(function(resolve, reject) { - resolveOnNextShow = resolve; - page.show(baseUrl() + path); - }); - } - function show(path, options) { if (path.indexOf('/') !== 0 && path.indexOf('://') === -1) { path = '/' + path; @@ -625,7 +618,6 @@ define(['loading', 'globalize', 'events', 'viewManager', 'skinManager', 'backdro appRouter.param = param; appRouter.back = back; appRouter.show = show; - appRouter.showDirect = showDirect; appRouter.start = start; appRouter.baseUrl = baseUrl; appRouter.canGoBack = canGoBack; diff --git a/src/scripts/clientUtils.js b/src/scripts/clientUtils.js new file mode 100644 index 0000000000..b576f0504e --- /dev/null +++ b/src/scripts/clientUtils.js @@ -0,0 +1,228 @@ +export function getCurrentUser() { + return window.ApiClient.getCurrentUser(false); +} + +//TODO: investigate url prefix support for serverAddress function +export function serverAddress() { + if (AppInfo.isNativeApp) { + var apiClient = window.ApiClient; + + if (apiClient) { + return apiClient.serverAddress(); + } + + return null; + } + + var urlLower = window.location.href.toLowerCase(); + var index = urlLower.lastIndexOf('/web'); + + if (index != -1) { + return urlLower.substring(0, index); + } + + var loc = window.location; + var address = loc.protocol + '//' + loc.hostname; + + if (loc.port) { + address += ':' + loc.port; + } + + return address; +} + +export function getCurrentUserId() { + var apiClient = window.ApiClient; + + if (apiClient) { + return apiClient.getCurrentUserId(); + } + + return null; +} + +export function onServerChanged(userId, accessToken, apiClient) { + apiClient = apiClient || window.ApiClient; + window.ApiClient = apiClient; +} + +export function logout() { + ConnectionManager.logout().then(function () { + var loginPage; + + if (AppInfo.isNativeApp) { + loginPage = 'selectserver.html'; + window.ApiClient = null; + } else { + loginPage = 'login.html'; + } + + navigate(loginPage); + }); +} + +export function getConfigurationPageUrl(name) { + return 'configurationpage?name=' + encodeURIComponent(name); +} + +export function getConfigurationResourceUrl(name) { + if (AppInfo.isNativeApp) { + return ApiClient.getUrl('web/ConfigurationPage', { + name: name + }); + } + + return getConfigurationPageUrl(name); +} + +export function navigate(url, preserveQueryString) { + if (!url) { + throw new Error('url cannot be null or empty'); + } + + var queryString = getWindowLocationSearch(); + + if (preserveQueryString && queryString) { + url += queryString; + } + + return new Promise(function (resolve, reject) { + require(['appRouter'], function (appRouter) { + return appRouter.show(url).then(resolve, reject); + }); + }); +} + +export function processPluginConfigurationUpdateResult() { + require(['loading', 'toast'], function (loading, toast) { + loading.hide(); + toast.default(Globalize.translate('MessageSettingsSaved')); + }); +} + +export function processServerConfigurationUpdateResult(result) { + require(['loading', 'toast'], function (loading, toast) { + loading.hide(); + toast.default(Globalize.translate('MessageSettingsSaved')); + }); +} + +export function processErrorResponse(response) { + require(['loading'], function (loading) { + loading.hide(); + }); + + var status = '' + response.status; + + if (response.statusText) { + status = response.statusText; + } + + alert({ + title: status, + message: response.headers ? response.headers.get('X-Application-Error-Code') : null + }); +} + +export function alert(options) { + if (typeof options == 'string') { + return void require(['toast'], function (toast) { + toast.default({ + text: options + }); + }); + } + + require(['alert'], function (alert) { + alert.default({ + title: options.title || Globalize.translate('HeaderAlert'), + text: options.message + }).then(options.callback || function () {}); + }); +} + +export function capabilities(appHost) { + var capabilities = { + PlayableMediaTypes: ['Audio', 'Video'], + SupportedCommands: ['MoveUp', 'MoveDown', 'MoveLeft', 'MoveRight', 'PageUp', 'PageDown', 'PreviousLetter', 'NextLetter', 'ToggleOsd', 'ToggleContextMenu', 'Select', 'Back', 'SendKey', 'SendString', 'GoHome', 'GoToSettings', 'VolumeUp', 'VolumeDown', 'Mute', 'Unmute', 'ToggleMute', 'SetVolume', 'SetAudioStreamIndex', 'SetSubtitleStreamIndex', 'DisplayContent', 'GoToSearch', 'DisplayMessage', 'SetRepeatMode', 'SetShuffleQueue', 'ChannelUp', 'ChannelDown', 'PlayMediaSource', 'PlayTrailers'], + SupportsPersistentIdentifier: self.appMode === 'cordova' || self.appMode === 'android', + SupportsMediaControl: true + }; + appHost.getPushTokenInfo(); + return capabilities = Object.assign(capabilities, appHost.getPushTokenInfo()); +} + +export function selectServer() { + if (window.NativeShell && typeof window.NativeShell.selectServer === 'function') { + window.NativeShell.selectServer(); + } else { + navigate('selectserver.html'); + } +} + +export function hideLoadingMsg() { + 'use strict'; + require(['loading'], function(loading) { + loading.hide(); + }); +} + +export function showLoadingMsg() { + 'use strict'; + require(['loading'], function(loading) { + loading.show(); + }); +} + +export function confirm(message, title, callback) { + 'use strict'; + require(['confirm'], function(confirm) { + confirm(message, title).then(function() { + callback(!0); + }).catch(function() { + callback(!1); + }); + }); +} + +// This is used in plugins and templates, so keep it defined for now. +// TODO: Remove once plugins don't need it +window.Dashboard = { + alert, + capabilities, + confirm, + getConfigurationPageUrl, + getConfigurationResourceUrl, + getCurrentUser, + getCurrentUserId, + hideLoadingMsg, + logout, + navigate, + onServerChanged, + processErrorResponse, + processPluginConfigurationUpdateResult, + processServerConfigurationUpdateResult, + selectServer, + serverAddress, + showLoadingMsg +}; + +export default { + alert, + capabilities, + confirm, + getConfigurationPageUrl, + getConfigurationResourceUrl, + getCurrentUser, + getCurrentUserId, + hideLoadingMsg, + logout, + navigate, + onServerChanged, + processErrorResponse, + processPluginConfigurationUpdateResult, + processServerConfigurationUpdateResult, + selectServer, + serverAddress, + showLoadingMsg +}; diff --git a/src/scripts/site.js b/src/scripts/site.js index aa74411af4..02e24a8b46 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -1,4 +1,4 @@ -function getWindowLocationSearch(win) { +window.getWindowLocationSearch = function(win) { 'use strict'; var search = (win || window).location.search; @@ -12,9 +12,9 @@ function getWindowLocationSearch(win) { } return search || ''; -} +}; -window.getParameterByName = function (name, url) { +window.getParameterByName = function(name, url) { 'use strict'; name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]'); @@ -29,7 +29,7 @@ window.getParameterByName = function (name, url) { return decodeURIComponent(results[1].replace(/\+/g, ' ')); }; -function pageClassOn(eventName, className, fn) { +window.pageClassOn = function(eventName, className, fn) { 'use strict'; document.addEventListener(eventName, function (event) { @@ -39,7 +39,7 @@ function pageClassOn(eventName, className, fn) { fn.call(target, event); } }); -} +}; window.pageIdOn = function(eventName, id, fn) { 'use strict'; @@ -53,187 +53,6 @@ window.pageIdOn = function(eventName, id, fn) { }); }; -var Dashboard = { - getCurrentUser: function () { - return window.ApiClient.getCurrentUser(false); - }, - - //TODO: investigate url prefix support for serverAddress function - serverAddress: function () { - if (AppInfo.isNativeApp) { - var apiClient = window.ApiClient; - - if (apiClient) { - return apiClient.serverAddress(); - } - - return null; - } - - var urlLower = window.location.href.toLowerCase(); - var index = urlLower.lastIndexOf('/web'); - - if (index != -1) { - return urlLower.substring(0, index); - } - - var loc = window.location; - var address = loc.protocol + '//' + loc.hostname; - - if (loc.port) { - address += ':' + loc.port; - } - - return address; - }, - getCurrentUserId: function () { - var apiClient = window.ApiClient; - - if (apiClient) { - return apiClient.getCurrentUserId(); - } - - return null; - }, - onServerChanged: function (userId, accessToken, apiClient) { - apiClient = apiClient || window.ApiClient; - window.ApiClient = apiClient; - }, - logout: function () { - ConnectionManager.logout().then(function () { - var loginPage; - - if (AppInfo.isNativeApp) { - loginPage = 'selectserver.html'; - window.ApiClient = null; - } else { - loginPage = 'login.html'; - } - - Dashboard.navigate(loginPage); - }); - }, - getConfigurationPageUrl: function (name) { - return 'configurationpage?name=' + encodeURIComponent(name); - }, - getConfigurationResourceUrl: function (name) { - if (AppInfo.isNativeApp) { - return ApiClient.getUrl('web/ConfigurationPage', { - name: name - }); - } - - return Dashboard.getConfigurationPageUrl(name); - }, - navigate: function (url, preserveQueryString) { - if (!url) { - throw new Error('url cannot be null or empty'); - } - - var queryString = getWindowLocationSearch(); - - if (preserveQueryString && queryString) { - url += queryString; - } - - return new Promise(function (resolve, reject) { - require(['appRouter'], function (appRouter) { - return appRouter.show(url).then(resolve, reject); - }); - }); - }, - navigate_direct: function (path) { - return new Promise(function (resolve, reject) { - require(['appRouter'], function (appRouter) { - return appRouter.showDirect(path).then(resolve, reject); - }); - }); - }, - processPluginConfigurationUpdateResult: function () { - require(['loading', 'toast'], function (loading, toast) { - loading.hide(); - toast.default(Globalize.translate('MessageSettingsSaved')); - }); - }, - processServerConfigurationUpdateResult: function (result) { - require(['loading', 'toast'], function (loading, toast) { - loading.hide(); - toast.default(Globalize.translate('MessageSettingsSaved')); - }); - }, - processErrorResponse: function (response) { - require(['loading'], function (loading) { - loading.hide(); - }); - - var status = '' + response.status; - - if (response.statusText) { - status = response.statusText; - } - - Dashboard.alert({ - title: status, - message: response.headers ? response.headers.get('X-Application-Error-Code') : null - }); - }, - alert: function (options) { - if (typeof options == 'string') { - return void require(['toast'], function (toast) { - toast.default({ - text: options - }); - }); - } - - require(['alert'], function (alert) { - alert.default({ - title: options.title || Globalize.translate('HeaderAlert'), - text: options.message - }).then(options.callback || function () {}); - }); - }, - capabilities: function (appHost) { - var capabilities = { - PlayableMediaTypes: ['Audio', 'Video'], - SupportedCommands: ['MoveUp', 'MoveDown', 'MoveLeft', 'MoveRight', 'PageUp', 'PageDown', 'PreviousLetter', 'NextLetter', 'ToggleOsd', 'ToggleContextMenu', 'Select', 'Back', 'SendKey', 'SendString', 'GoHome', 'GoToSettings', 'VolumeUp', 'VolumeDown', 'Mute', 'Unmute', 'ToggleMute', 'SetVolume', 'SetAudioStreamIndex', 'SetSubtitleStreamIndex', 'DisplayContent', 'GoToSearch', 'DisplayMessage', 'SetRepeatMode', 'SetShuffleQueue', 'ChannelUp', 'ChannelDown', 'PlayMediaSource', 'PlayTrailers'], - SupportsPersistentIdentifier: self.appMode === 'cordova' || self.appMode === 'android', - SupportsMediaControl: true - }; - appHost.getPushTokenInfo(); - return capabilities = Object.assign(capabilities, appHost.getPushTokenInfo()); - }, - selectServer: function () { - if (window.NativeShell && typeof window.NativeShell.selectServer === 'function') { - window.NativeShell.selectServer(); - } else { - Dashboard.navigate('selectserver.html'); - } - }, - hideLoadingMsg: function() { - 'use strict'; - require(['loading'], function(loading) { - loading.hide(); - }); - }, - showLoadingMsg: function() { - 'use strict'; - require(['loading'], function(loading) { - loading.show(); - }); - }, - confirm: function(message, title, callback) { - 'use strict'; - require(['confirm'], function(confirm) { - confirm(message, title).then(function() { - callback(!0); - }).catch(function() { - callback(!1); - }); - }); - } -}; - var AppInfo = {}; function initClient() { @@ -289,7 +108,7 @@ function initClient() { if (!AppInfo.isNativeApp) { console.debug('loading ApiClient singleton'); - return require(['apiclient'], function (apiClientFactory) { + return require(['apiclient', 'clientUtils'], function (apiClientFactory, clientUtils) { console.debug('creating ApiClient singleton'); var apiClient = new apiClientFactory(Dashboard.serverAddress(), apphost.appName(), apphost.appVersion(), apphost.deviceName(), apphost.deviceId()); @@ -376,36 +195,12 @@ function initClient() { } } - function initRequireWithBrowser() { - var componentsPath = getComponentsPath(); - var scriptsPath = getScriptsPath(); - - define('filesystem', [scriptsPath + '/filesystem'], returnFirstDependency); - - define('lazyLoader', [componentsPath + '/lazyLoader/lazyLoaderIntersectionObserver'], returnFirstDependency); - define('shell', [scriptsPath + '/shell'], returnFirstDependency); - - define('alert', [componentsPath + '/alert'], returnFirstDependency); - - defineResizeObserver(); - - define('dialog', [componentsPath + '/dialog/dialog'], returnFirstDependency); - - define('confirm', [componentsPath + '/confirm/confirm'], returnFirstDependency); - - define('prompt', [componentsPath + '/prompt/prompt'], returnFirstDependency); - - define('loading', [componentsPath + '/loading/loading'], returnFirstDependency); - define('multi-download', [scriptsPath + '/multiDownload'], returnFirstDependency); - define('fileDownloader', [scriptsPath + '/fileDownloader'], returnFirstDependency); - - define('castSenderApiLoader', [componentsPath + '/castSenderApi'], returnFirstDependency); - } - function init() { define('livetvcss', ['css!assets/css/livetv.css'], returnFirstDependency); define('detailtablecss', ['css!assets/css/detailtable.css'], returnFirstDependency); + require(['clientUtils']); + var promises = []; if (!window.fetch) { promises.push(require(['fetch'])); @@ -605,7 +400,29 @@ function initClient() { } function onWebComponentsReady() { - initRequireWithBrowser(); + var componentsPath = getComponentsPath(); + var scriptsPath = getScriptsPath(); + + define('filesystem', [scriptsPath + '/filesystem'], returnFirstDependency); + + define('lazyLoader', [componentsPath + '/lazyLoader/lazyLoaderIntersectionObserver'], returnFirstDependency); + define('shell', [scriptsPath + '/shell'], returnFirstDependency); + + define('alert', [componentsPath + '/alert'], returnFirstDependency); + + defineResizeObserver(); + + define('dialog', [componentsPath + '/dialog/dialog'], returnFirstDependency); + + define('confirm', [componentsPath + '/confirm/confirm'], returnFirstDependency); + + define('prompt', [componentsPath + '/prompt/prompt'], returnFirstDependency); + + define('loading', [componentsPath + '/loading/loading'], returnFirstDependency); + define('multi-download', [scriptsPath + '/multiDownload'], returnFirstDependency); + define('fileDownloader', [scriptsPath + '/fileDownloader'], returnFirstDependency); + + define('castSenderApiLoader', [componentsPath + '/castSenderApi'], returnFirstDependency); if (self.appMode === 'cordova' || self.appMode === 'android' || self.appMode === 'standalone') { AppInfo.isNativeApp = true; @@ -617,7 +434,7 @@ function initClient() { var localApiClient; let promise; - (function () { + function initRequireJs() { var urlArgs = 'v=' + (window.dashboardVersion || new Date().getDate()); var bowerPath = getBowerPath(); @@ -648,7 +465,8 @@ function initClient() { nowPlayingHelper: componentsPath + '/playback/nowplayinghelper', pluginManager: componentsPath + '/pluginManager', packageManager: componentsPath + '/packageManager', - screensaverManager: componentsPath + '/screensavermanager' + screensaverManager: componentsPath + '/screensavermanager', + clientUtils: scriptsPath + '/clientUtils' }; requirejs.onError = onRequireJsError; @@ -1106,7 +924,9 @@ function initClient() { appRouter.showItem = showItem; return appRouter; }); - })(); + } + + initRequireJs(); promise.then(onWebComponentsReady); } From 1f16e0fb9c0a023e71094a3f0a185ecc0f0b400a Mon Sep 17 00:00:00 2001 From: Cameron Date: Mon, 10 Aug 2020 22:13:43 +0100 Subject: [PATCH 020/285] Fix suggestions --- src/components/playback/playbackmanager.js | 4 ++-- src/plugins/sessionPlayer/plugin.js | 3 --- src/scripts/site.js | 2 +- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/src/components/playback/playbackmanager.js b/src/components/playback/playbackmanager.js index 437127be18..cf62d647dd 100644 --- a/src/components/playback/playbackmanager.js +++ b/src/components/playback/playbackmanager.js @@ -1416,8 +1416,8 @@ class PlaybackManager { self.toggleFullscreen = function (player) { player = player || self._currentPlayer; - if (!player.isLocalPlayer || player.toggleFulscreen) { - return player.toggleFulscreen(); + if (!player.isLocalPlayer || player.toggleFullscreen) { + return player.toggleFullscreen(); } if (screenfull.isEnabled) { diff --git a/src/plugins/sessionPlayer/plugin.js b/src/plugins/sessionPlayer/plugin.js index 56d904e2fc..d4cbb8345f 100644 --- a/src/plugins/sessionPlayer/plugin.js +++ b/src/plugins/sessionPlayer/plugin.js @@ -444,9 +444,6 @@ class SessionPlayer { }); } - setMaxStreamingBitrate(options) { - } - setRepeatMode(mode) { sendCommandByName(this, 'SetRepeatMode', { RepeatMode: mode diff --git a/src/scripts/site.js b/src/scripts/site.js index aa74411af4..acd38b0970 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -341,7 +341,7 @@ function initClient() { function getPlaybackManager(playbackManager) { window.addEventListener('beforeunload', function () { try { - playbackManager.onAppClose(); + playbackManager.default.onAppClose(); } catch (err) { console.error('error in onAppClose: ' + err); } From e434eebf496a1b4da01fc61715b0c702414e50b6 Mon Sep 17 00:00:00 2001 From: Cameron Date: Tue, 11 Aug 2020 18:27:02 +0100 Subject: [PATCH 021/285] Update package.json Co-authored-by: Dmitry Lyzo <56478732+dmitrylyzo@users.noreply.github.com> --- package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/package.json b/package.json index b7800ebd62..b7595b3804 100644 --- a/package.json +++ b/package.json @@ -166,7 +166,6 @@ "src/components/sanatizefilename.js", "src/components/scrollManager.js", "src/plugins/experimentalWarnings/plugin.js", - "src/plugins/htmlVideoPlayer/plugin.js", "src/plugins/sessionPlayer/plugin.js", "src/plugins/htmlAudioPlayer/plugin.js", "src/plugins/chromecastPlayer/plugin.js", From 0a9632b53170fb5502e905cb24f5ba454451330b Mon Sep 17 00:00:00 2001 From: Cameron Date: Tue, 11 Aug 2020 18:34:28 +0100 Subject: [PATCH 022/285] Update recordingeditor.js --- src/components/recordingcreator/recordingeditor.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/components/recordingcreator/recordingeditor.js b/src/components/recordingcreator/recordingeditor.js index 6fe104b57f..5bd3d73c67 100644 --- a/src/components/recordingcreator/recordingeditor.js +++ b/src/components/recordingcreator/recordingeditor.js @@ -21,6 +21,12 @@ let currentItemId; let currentServerId; let currentResolve; +function deleteTimer(apiClient, timerId) { + return import('recordingHelper').then(({ default: recordingHelper }) => { + recordingHelper.cancelTimerWithConfirmation(timerId, apiClient.serverId()); + }); +} + function renderTimer(context, item, apiClient) { context.querySelector('#txtPrePaddingMinutes').value = item.PrePaddingSeconds / 60; context.querySelector('#txtPostPaddingMinutes').value = item.PostPaddingSeconds / 60; @@ -58,7 +64,7 @@ function init(context) { context.querySelector('.btnCancelRecording').addEventListener('click', function () { const apiClient = connectionManager.getApiClient(currentServerId); - (apiClient, currentItemId).then(function () { + deleteTimer(apiClient, currentItemId).then(function () { closeDialog(true); }); }); From a6b114ce13a9f46b99d0f97f3a25e10dd35f89bd Mon Sep 17 00:00:00 2001 From: matjaz321 Date: Tue, 11 Aug 2020 22:15:26 +0200 Subject: [PATCH 023/285] Removed code that was changing checked flag for keypress event, because it is already handled by browswer --- src/elements/emby-checkbox/emby-checkbox.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/elements/emby-checkbox/emby-checkbox.js b/src/elements/emby-checkbox/emby-checkbox.js index 84961848c6..7b906286ef 100644 --- a/src/elements/emby-checkbox/emby-checkbox.js +++ b/src/elements/emby-checkbox/emby-checkbox.js @@ -13,8 +13,6 @@ import 'webcomponents'; if (e.keyCode === 13 || e.keyCode === 32) { e.preventDefault(); - this.checked = !this.checked; - this.dispatchEvent(new CustomEvent('change', { bubbles: true })); From c11dc53e44fb40c0d0c7fb88de636738a60a4109 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Wed, 12 Aug 2020 15:12:03 +0200 Subject: [PATCH 024/285] Fix require --- src/components/appRouter.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/components/appRouter.js b/src/components/appRouter.js index dc05acc9fd..83c93fdaf3 100644 --- a/src/components/appRouter.js +++ b/src/components/appRouter.js @@ -287,7 +287,7 @@ class AppRouter { this.showWelcome(); break; case 'ServerUpdateNeeded': - require(['alert'], (alert) => { + import('alert').then(({default: alert}) =>{ alert({ text: globalize.translate('ServerUpdateNeeded', 'https://github.com/jellyfin/jellyfin'), html: globalize.translate('ServerUpdateNeeded', 'https://github.com/jellyfin/jellyfin') @@ -322,7 +322,8 @@ class AppRouter { url += '?' + ctx.querystring; } - require(['text!' + url], (html) => { + import('text!' + url).then(({default: html}) => { + console.warn(html) this.loadContent(ctx, route, html, request); }); } @@ -339,7 +340,7 @@ class AppRouter { }; if (route.controller) { - require(['controllers/' + route.controller], onInitComplete); + import('controllers/' + route.controller).then(onInitComplete); } else { onInitComplete(); } @@ -406,7 +407,7 @@ class AppRouter { this.forcedLogoutMsg = null; if (msg) { - require(['alert'], (alert) => { + import('alert').then((alert) => { alert(msg); }); } From ed4e733a6499e866915fea54a3c9a014ba760917 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Wed, 12 Aug 2020 15:18:13 +0200 Subject: [PATCH 025/285] Remove default --- src/controllers/playback/video/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/controllers/playback/video/index.js b/src/controllers/playback/video/index.js index 8f46d24f0e..73540cd636 100644 --- a/src/controllers/playback/video/index.js +++ b/src/controllers/playback/video/index.js @@ -1440,7 +1440,7 @@ import 'css!assets/css/videoosd'; }); } catch (e) { import('appRouter').then(({default: appRouter}) => { - appRouter.default.goHome(); + appRouter.goHome(); }); } }); From e432f3fed2ab4d2881b9f1b3bc80b6deb539b6b2 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Wed, 12 Aug 2020 15:21:56 +0200 Subject: [PATCH 026/285] Fix issues --- src/components/packageManager.js | 1 - src/components/pluginManager.js | 6 +++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/components/packageManager.js b/src/components/packageManager.js index 358529ba79..c20f6c5d3e 100644 --- a/src/components/packageManager.js +++ b/src/components/packageManager.js @@ -10,7 +10,6 @@ import pluginManager from 'pluginManager'; console.groupCollapsed('loading packages'); var manifestUrls = JSON.parse(appSettings.get(this.#settingsKey) || '[]'); - var instance = this; return Promise.all(manifestUrls.map((url) => { return this.loadPackage(url); })) diff --git a/src/components/pluginManager.js b/src/components/pluginManager.js index c4418cbff5..b662cca836 100644 --- a/src/components/pluginManager.js +++ b/src/components/pluginManager.js @@ -21,8 +21,8 @@ import globalize from 'globalize'; } #definePluginRoute(route, plugin) { - route.contentPath = this.#mapPath(plugin, route.path); - route.path = this.mapRoute(plugin, route); + route.contentPath = this.mapPath(plugin, route.path); + route.path = this.#mapRoute(plugin, route); Emby.App.defineRoute(route, plugin.id); } @@ -128,7 +128,7 @@ import globalize from 'globalize'; return '/plugins/' + plugin.id + '/' + route; } - #mapPath(plugin, path, addCacheParam) { + mapPath(plugin, path, addCacheParam) { if (typeof plugin === 'string') { plugin = this.pluginsList.filter((p) => { return (p.id || p.packageName) === plugin; From 41f627a07e6084310e2f494ca9a0ff4526088f75 Mon Sep 17 00:00:00 2001 From: matjaz321 Date: Wed, 12 Aug 2020 21:06:10 +0200 Subject: [PATCH 027/285] Added firefox browser condition --- src/elements/emby-checkbox/emby-checkbox.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/elements/emby-checkbox/emby-checkbox.js b/src/elements/emby-checkbox/emby-checkbox.js index 7b906286ef..74a1696298 100644 --- a/src/elements/emby-checkbox/emby-checkbox.js +++ b/src/elements/emby-checkbox/emby-checkbox.js @@ -10,9 +10,11 @@ import 'webcomponents'; function onKeyDown(e) { // Don't submit form on enter // Real (non-emulator) Tizen does nothing on Space - if (e.keyCode === 13 || e.keyCode === 32) { + if ((e.keyCode === 13 || e.keyCode === 32) && !browser.firefox) { e.preventDefault(); + this.checked = !this.checked; + this.dispatchEvent(new CustomEvent('change', { bubbles: true })); From 3359fc388b1665b110c01db45e7e47802e3a3334 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Wed, 12 Aug 2020 21:17:07 +0200 Subject: [PATCH 028/285] Use JSON when POSTing data --- src/components/channelMapper/channelMapper.js | 4 ++-- src/components/directorybrowser/directorybrowser.js | 4 ++-- src/controllers/dashboard/encodingsettings.js | 4 ++-- src/controllers/session/forgotPassword/index.js | 4 ++-- src/controllers/session/resetPassword/index.js | 4 ++-- src/controllers/wizard/remote/index.js | 2 +- src/controllers/wizard/settings/index.js | 2 +- src/controllers/wizard/start/index.js | 2 +- src/controllers/wizard/user/index.js | 4 ++-- 9 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/components/channelMapper/channelMapper.js b/src/components/channelMapper/channelMapper.js index 89d085c185..a5e5cc3537 100644 --- a/src/components/channelMapper/channelMapper.js +++ b/src/components/channelMapper/channelMapper.js @@ -19,11 +19,11 @@ export default class channelMapper { connectionManager.getApiClient(options.serverId).ajax({ type: 'POST', url: ApiClient.getUrl('LiveTv/ChannelMappings'), - data: { + data: JSON.stringify({ providerId: providerId, tunerChannelId: channelId, providerChannelId: providerChannelId - }, + }), dataType: 'json' }).then(mapping => { const listItem = dom.parentWithClass(button, 'listItem'); diff --git a/src/components/directorybrowser/directorybrowser.js b/src/components/directorybrowser/directorybrowser.js index 41744bdcbb..5c44db3b15 100644 --- a/src/components/directorybrowser/directorybrowser.js +++ b/src/components/directorybrowser/directorybrowser.js @@ -166,10 +166,10 @@ import 'emby-button'; return apiClient.ajax({ type: 'POST', url: apiClient.getUrl('Environment/ValidatePath'), - data: { + data: JSON.stringify({ ValidateWriteable: validateWriteable, Path: path - } + }) }).catch(response => { if (response) { if (response.status === 404) { diff --git a/src/controllers/dashboard/encodingsettings.js b/src/controllers/dashboard/encodingsettings.js index 3a0ad24430..320a679b37 100644 --- a/src/controllers/dashboard/encodingsettings.js +++ b/src/controllers/dashboard/encodingsettings.js @@ -45,10 +45,10 @@ import libraryMenu from 'libraryMenu'; return ApiClient.ajax({ url: ApiClient.getUrl('System/MediaEncoder/Path'), type: 'POST', - data: { + data: JSON.stringify({ Path: form.querySelector('.txtEncoderPath').value, PathType: 'Custom' - } + }) }).then(Dashboard.processServerConfigurationUpdateResult, onSaveEncodingPathFailure); }); } diff --git a/src/controllers/session/forgotPassword/index.js b/src/controllers/session/forgotPassword/index.js index 368642db35..45e05409da 100644 --- a/src/controllers/session/forgotPassword/index.js +++ b/src/controllers/session/forgotPassword/index.js @@ -41,9 +41,9 @@ import globalize from 'globalize'; type: 'POST', url: ApiClient.getUrl('Users/ForgotPassword'), dataType: 'json', - data: { + data: JSON.stringify({ EnteredUsername: view.querySelector('#txtName').value - } + }) }).then(processForgotPasswordResult); e.preventDefault(); return false; diff --git a/src/controllers/session/resetPassword/index.js b/src/controllers/session/resetPassword/index.js index a88e131eea..3cb8d4a9e2 100644 --- a/src/controllers/session/resetPassword/index.js +++ b/src/controllers/session/resetPassword/index.js @@ -29,9 +29,9 @@ import globalize from 'globalize'; type: 'POST', url: ApiClient.getUrl('Users/ForgotPassword/Pin'), dataType: 'json', - data: { + data: JSON.stringify({ Pin: view.querySelector('#txtPin').value - } + }) }).then(processForgotPasswordResult); e.preventDefault(); return false; diff --git a/src/controllers/wizard/remote/index.js b/src/controllers/wizard/remote/index.js index 3c482607de..74c795658d 100644 --- a/src/controllers/wizard/remote/index.js +++ b/src/controllers/wizard/remote/index.js @@ -11,7 +11,7 @@ function save(page) { config.EnableAutomaticPortMapping = page.querySelector('#chkEnableUpnp').checked; apiClient.ajax({ type: 'POST', - data: config, + data: JSON.stringify(config), url: apiClient.getUrl('Startup/RemoteAccess') }).then(function () { loading.hide(); diff --git a/src/controllers/wizard/settings/index.js b/src/controllers/wizard/settings/index.js index a1c3c11267..2eaef4fab6 100644 --- a/src/controllers/wizard/settings/index.js +++ b/src/controllers/wizard/settings/index.js @@ -11,7 +11,7 @@ function save(page) { config.MetadataCountryCode = page.querySelector('#selectCountry').value; apiClient.ajax({ type: 'POST', - data: config, + data: JSON.stringify(config), url: apiClient.getUrl('Startup/Configuration') }).then(function () { loading.hide(); diff --git a/src/controllers/wizard/start/index.js b/src/controllers/wizard/start/index.js index cec93446db..8c147fc75e 100644 --- a/src/controllers/wizard/start/index.js +++ b/src/controllers/wizard/start/index.js @@ -17,7 +17,7 @@ function save(page) { config.UICulture = $('#selectLocalizationLanguage', page).val(); apiClient.ajax({ type: 'POST', - data: config, + data: JSON.stringify(config), url: apiClient.getUrl('Startup/Configuration') }).then(function () { Dashboard.navigate('wizarduser.html'); diff --git a/src/controllers/wizard/user/index.js b/src/controllers/wizard/user/index.js index 855086a3a4..fc9a27855f 100644 --- a/src/controllers/wizard/user/index.js +++ b/src/controllers/wizard/user/index.js @@ -23,10 +23,10 @@ function submit(form) { const apiClient = getApiClient(); apiClient.ajax({ type: 'POST', - data: { + data: JSON.stringify({ Name: form.querySelector('#txtUsername').value, Password: form.querySelector('#txtManualPassword').value - }, + }), url: apiClient.getUrl('Startup/User') }).then(onUpdateUserComplete); } From f3cdedacdf4d71318b597a487d18789d7de9c018 Mon Sep 17 00:00:00 2001 From: Cameron Date: Thu, 13 Aug 2020 09:19:32 +0100 Subject: [PATCH 029/285] Remove unneccessary .default --- .../recordingcreator/recordingcreator.js | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/components/recordingcreator/recordingcreator.js b/src/components/recordingcreator/recordingcreator.js index 412ec6e274..43a91b4992 100644 --- a/src/components/recordingcreator/recordingcreator.js +++ b/src/components/recordingcreator/recordingcreator.js @@ -118,7 +118,7 @@ function reload(context, programId, serverId, refreshRecordingStateOnly) { function executeCloseAction(action, programId, serverId) { if (action === 'play') { - import('playbackManager').then(({default: playbackManager}) => { + import('playbackManager').then(({ default: playbackManager }) => { const apiClient = connectionManager.getApiClient(serverId); apiClient.getLiveTvProgram(programId, apiClient.getCurrentUserId()).then(function (item) { @@ -138,7 +138,7 @@ function showEditor(itemId, serverId) { loading.show(); - import('text!./recordingcreator.template.html').then(({default: template}) => { + import('text!./recordingcreator.template.html').then(({ default: template }) => { const dialogOptions = { removeOnClose: true, scrollY: false @@ -184,13 +184,13 @@ function showEditor(itemId, serverId) { init(dlg); - currentRecordingFields = new recordingFields.default({ - parent: dlg.querySelector('.recordingFields'), - programId: itemId, - serverId: serverId - }); + currentRecordingFields = new recordingFields({ + parent: dlg.querySelector('.recordingFields'), + programId: itemId, + serverId: serverId + }); - events.on(currentRecordingFields, 'recordingchanged', onRecordingChanged); + events.on(currentRecordingFields, 'recordingchanged', onRecordingChanged); currentRecordingFields = new recordingFields({ parent: dlg.querySelector('.recordingFields'), From 67ce56da9511d9aa1d51eb16339ff50c65163d03 Mon Sep 17 00:00:00 2001 From: dkanada Date: Thu, 13 Aug 2020 21:23:51 +0900 Subject: [PATCH 030/285] remove some duplicate strings --- .../displaySettings/displaySettings.template.html | 2 +- src/components/guide/guide.js | 2 +- .../mediaLibraryEditor/mediaLibraryEditor.js | 2 +- src/components/mediainfo/mediainfo.js | 2 +- src/controllers/dashboard/dashboard.js | 2 +- src/controllers/dashboard/devices/devices.js | 2 +- src/controllers/dashboard/dlna/profile.html | 10 +++++----- src/controllers/dashboard/dlna/profiles.js | 2 +- .../dashboard/plugins/repositories/index.js | 2 +- .../dashboard/scheduledtasks/scheduledtask.js | 2 +- src/controllers/dashboard/users/userprofilespage.js | 4 ++-- src/controllers/itemDetails/index.js | 2 +- src/controllers/livetvstatus.js | 4 ++-- src/controllers/music/musicrecommended.js | 2 +- src/scripts/itembynamedetailpage.js | 2 +- 15 files changed, 21 insertions(+), 21 deletions(-) diff --git a/src/components/displaySettings/displaySettings.template.html b/src/components/displaySettings/displaySettings.template.html index fdaf8d70f1..e751ce56c4 100644 --- a/src/components/displaySettings/displaySettings.template.html +++ b/src/components/displaySettings/displaySettings.template.html @@ -162,7 +162,7 @@
    ${EnableBackdropsHelp}
    diff --git a/src/components/guide/guide.js b/src/components/guide/guide.js index a7b32d887d..b63490a5a5 100644 --- a/src/components/guide/guide.js +++ b/src/components/guide/guide.js @@ -547,7 +547,7 @@ function Guide(options) { } else if (program.IsPremiere && options.showPremiereIndicator) { indicatorHtml = '' + globalize.translate('Premiere') + ''; } else if (program.IsSeries && !program.IsRepeat && options.showNewIndicator) { - indicatorHtml = '' + globalize.translate('AttributeNew') + ''; + indicatorHtml = '' + globalize.translate('New') + ''; } else if (program.IsSeries && program.IsRepeat && options.showRepeatIndicator) { indicatorHtml = '' + globalize.translate('Repeat') + ''; } diff --git a/src/components/mediaLibraryEditor/mediaLibraryEditor.js b/src/components/mediaLibraryEditor/mediaLibraryEditor.js index 0e68c6a289..13d264f4c9 100644 --- a/src/components/mediaLibraryEditor/mediaLibraryEditor.js +++ b/src/components/mediaLibraryEditor/mediaLibraryEditor.js @@ -76,7 +76,7 @@ import 'flexStyles'; confirm({ title: globalize.translate('HeaderRemoveMediaLocation'), text: globalize.translate('MessageConfirmRemoveMediaLocation'), - confirmText: globalize.translate('ButtonDelete'), + confirmText: globalize.translate('Delete'), primary: 'delete' }).then(() => { const refreshAfterChange = currentOptions.refresh; diff --git a/src/components/mediainfo/mediainfo.js b/src/components/mediainfo/mediainfo.js index 53982040b8..8ea165743b 100644 --- a/src/components/mediainfo/mediainfo.js +++ b/src/components/mediainfo/mediainfo.js @@ -208,7 +208,7 @@ import 'emby-button'; }); } else if (item.IsSeries && !item.IsRepeat) { miscInfo.push({ - html: `
    ${globalize.translate('AttributeNew')}
    ` + html: `
    ${globalize.translate('New')}
    ` }); } else if (item.IsSeries && item.IsRepeat) { miscInfo.push({ diff --git a/src/controllers/dashboard/dashboard.js b/src/controllers/dashboard/dashboard.js index a36aa3ce68..a1ce7f489e 100644 --- a/src/controllers/dashboard/dashboard.js +++ b/src/controllers/dashboard/dashboard.js @@ -737,7 +737,7 @@ import 'emby-itemscontainer'; shutdown: function (btn) { import('confirm').then(({default: confirm}) => { confirm({ - title: globalize.translate('HeaderShutdown'), + title: globalize.translate('ButtonShutdown'), text: globalize.translate('MessageConfirmShutdown'), confirmText: globalize.translate('ButtonShutdown'), primary: 'delete' diff --git a/src/controllers/dashboard/devices/devices.js b/src/controllers/dashboard/devices/devices.js index bc9dd19764..1178a0f1bd 100644 --- a/src/controllers/dashboard/devices/devices.js +++ b/src/controllers/dashboard/devices/devices.js @@ -21,7 +21,7 @@ import 'cardStyle'; confirm({ text: msg, title: globalize.translate('HeaderDeleteDevice'), - confirmText: globalize.translate('ButtonDelete'), + confirmText: globalize.translate('Delete'), primary: 'delete' }).then(function () { loading.show(); diff --git a/src/controllers/dashboard/dlna/profile.html b/src/controllers/dashboard/dlna/profile.html index 02a85b4ec7..22c7ce73ef 100644 --- a/src/controllers/dashboard/dlna/profile.html +++ b/src/controllers/dashboard/dlna/profile.html @@ -231,31 +231,31 @@

    ${HeaderDirectPlayProfileHelp}

    - +

    ${HeaderTranscodingProfileHelp}

    - +

    ${HeaderContainerProfileHelp}

    - +

    ${HeaderCodecProfileHelp}

    - +

    ${HeaderResponseProfileHelp}

    - +
    diff --git a/src/controllers/dashboard/dlna/profiles.js b/src/controllers/dashboard/dlna/profiles.js index f1d57eef3c..cdfdcf8212 100644 --- a/src/controllers/dashboard/dlna/profiles.js +++ b/src/controllers/dashboard/dlna/profiles.js @@ -46,7 +46,7 @@ import 'emby-button'; html += ''; if (profile.Type == 'User') { - html += ''; + html += ''; } html += ''; diff --git a/src/controllers/dashboard/plugins/repositories/index.js b/src/controllers/dashboard/plugins/repositories/index.js index c4c0885375..8d1cbf3164 100644 --- a/src/controllers/dashboard/plugins/repositories/index.js +++ b/src/controllers/dashboard/plugins/repositories/index.js @@ -69,7 +69,7 @@ function getRepositoryHtml(repository) { html += `

    ${repository.Name}

    `; html += `
    ${repository.Url}
    `; html += ''; - html += ``; + html += ``; html += ''; return html; diff --git a/src/controllers/dashboard/scheduledtasks/scheduledtask.js b/src/controllers/dashboard/scheduledtasks/scheduledtask.js index 0bf0fc5c3c..64c09c6d81 100644 --- a/src/controllers/dashboard/scheduledtasks/scheduledtask.js +++ b/src/controllers/dashboard/scheduledtasks/scheduledtask.js @@ -75,7 +75,7 @@ import 'emby-select'; } html += ''; - html += ''; + html += ''; html += ''; } diff --git a/src/controllers/dashboard/users/userprofilespage.js b/src/controllers/dashboard/users/userprofilespage.js index add90d0a0b..bfd8d96d92 100644 --- a/src/controllers/dashboard/users/userprofilespage.js +++ b/src/controllers/dashboard/users/userprofilespage.js @@ -18,7 +18,7 @@ import 'flexStyles'; confirm({ title: globalize.translate('DeleteUser'), text: msg, - confirmText: globalize.translate('ButtonDelete'), + confirmText: globalize.translate('Delete'), primary: 'delete' }).then(function () { loading.show(); @@ -50,7 +50,7 @@ import 'flexStyles'; icon: 'person' }); menuItems.push({ - name: globalize.translate('ButtonDelete'), + name: globalize.translate('Delete'), id: 'delete', icon: 'delete' }); diff --git a/src/controllers/itemDetails/index.js b/src/controllers/itemDetails/index.js index b3c6a15dc9..119d265a14 100644 --- a/src/controllers/itemDetails/index.js +++ b/src/controllers/itemDetails/index.js @@ -1435,7 +1435,7 @@ import 'emby-select'; name: globalize.translate('HeaderSeries'), type: 'Series' }, { - name: globalize.translate('HeaderAlbums'), + name: globalize.translate('Albums'), type: 'MusicAlbum' }, { name: globalize.translate('HeaderBooks'), diff --git a/src/controllers/livetvstatus.js b/src/controllers/livetvstatus.js index 7555b04b99..07a6556fb2 100644 --- a/src/controllers/livetvstatus.js +++ b/src/controllers/livetvstatus.js @@ -137,7 +137,7 @@ function renderProviders(page, providers) { function showProviderOptions(page, providerId, button) { const items = []; items.push({ - name: globalize.translate('ButtonDelete'), + name: globalize.translate('Delete'), id: 'delete' }); items.push({ @@ -255,7 +255,7 @@ function addDevice(button) { function showDeviceMenu(button, tunerDeviceId) { const items = []; items.push({ - name: globalize.translate('ButtonDelete'), + name: globalize.translate('Delete'), id: 'delete' }); items.push({ diff --git a/src/controllers/music/musicrecommended.js b/src/controllers/music/musicrecommended.js index 94031cd2c4..e16afa2d59 100644 --- a/src/controllers/music/musicrecommended.js +++ b/src/controllers/music/musicrecommended.js @@ -179,7 +179,7 @@ import 'flexStyles'; return [{ name: globalize.translate('Suggestions') }, { - name: globalize.translate('TabAlbums') + name: globalize.translate('Albums') }, { name: globalize.translate('TabAlbumArtists') }, { diff --git a/src/scripts/itembynamedetailpage.js b/src/scripts/itembynamedetailpage.js index 147dc66ae0..7a56be6781 100644 --- a/src/scripts/itembynamedetailpage.js +++ b/src/scripts/itembynamedetailpage.js @@ -53,7 +53,7 @@ function renderItems(page, item) { if (item.AlbumCount) { sections.push({ - name: globalize.translate('TabAlbums'), + name: globalize.translate('Albums'), type: 'MusicAlbum' }); } From 65776be6aa8eceaeb0c2eb626fd2fb228bc8d173 Mon Sep 17 00:00:00 2001 From: dkanada Date: Thu, 13 Aug 2020 21:31:29 +0900 Subject: [PATCH 031/285] remove more strings from source --- .../accessSchedule.template.html | 2 +- .../guide/guide-settings.template.html | 2 +- src/components/guide/tvguide.template.html | 4 ++-- .../libraryoptionseditor.js | 20 +++++++++---------- .../subtitlesettings.template.html | 2 +- src/controllers/dashboard/general.html | 2 +- src/controllers/itemDetails/index.html | 2 +- src/controllers/itemDetails/index.js | 4 ++-- src/controllers/livetv.html | 2 +- src/controllers/livetv/livetvsuggested.js | 2 +- src/controllers/movies/movies.html | 6 +++--- src/controllers/music/music.html | 6 +++--- src/controllers/music/musicrecommended.js | 2 +- src/controllers/playback/queue/index.html | 8 ++++---- src/controllers/shows/tvrecommended.html | 4 ++-- src/controllers/shows/tvrecommended.js | 6 +++--- src/controllers/wizard/finish/index.html | 2 +- src/controllers/wizard/library.html | 4 ++-- src/controllers/wizard/remote/index.html | 4 ++-- src/controllers/wizard/settings/index.html | 4 ++-- src/controllers/wizard/start/index.html | 2 +- src/controllers/wizard/user/index.html | 4 ++-- src/scripts/itembynamedetailpage.js | 2 +- src/scripts/libraryBrowser.js | 2 +- src/scripts/libraryMenu.js | 2 +- 25 files changed, 50 insertions(+), 50 deletions(-) diff --git a/src/components/accessSchedule/accessSchedule.template.html b/src/components/accessSchedule/accessSchedule.template.html index d89b69d9bd..e209fbc1ff 100644 --- a/src/components/accessSchedule/accessSchedule.template.html +++ b/src/components/accessSchedule/accessSchedule.template.html @@ -1,5 +1,5 @@
    -

    diff --git a/src/components/guide/guide-settings.template.html b/src/components/guide/guide-settings.template.html index edb2ffa8d3..d4bad711b1 100644 --- a/src/components/guide/guide-settings.template.html +++ b/src/components/guide/guide-settings.template.html @@ -1,5 +1,5 @@
    -

    diff --git a/src/components/guide/tvguide.template.html b/src/components/guide/tvguide.template.html index 730de55909..b0f23f4b32 100644 --- a/src/components/guide/tvguide.template.html +++ b/src/components/guide/tvguide.template.html @@ -29,10 +29,10 @@

    - -
    diff --git a/src/components/libraryoptionseditor/libraryoptionseditor.js b/src/components/libraryoptionseditor/libraryoptionseditor.js index ab193c264e..f90643ce07 100644 --- a/src/components/libraryoptionseditor/libraryoptionseditor.js +++ b/src/components/libraryoptionseditor/libraryoptionseditor.js @@ -75,9 +75,9 @@ import 'emby-input'; html += '

    '; html += '
    '; if (i > 0) { - html += ``; + html += ``; } else if (plugins.length > 1) { - html += ``; + html += ``; } html += ''; } @@ -131,9 +131,9 @@ import 'emby-input'; html += ''; html += ''; if (index > 0) { - html += ''; + html += ''; } else if (plugins.length > 1) { - html += ''; + html += ''; } html += ''; }); @@ -197,9 +197,9 @@ import 'emby-input'; html += ''; html += ''; if (i > 0) { - html += ``; + html += ``; } else if (plugins.length > 1) { - html += ``; + html += ``; } html += ''; } @@ -236,9 +236,9 @@ import 'emby-input'; html += ''; html += ''; if (i > 0) { - html += ''; + html += ''; } else if (plugins.length > 1) { - html += ''; + html += ''; } html += ''; } @@ -291,13 +291,13 @@ import 'emby-input'; const btnSortable = elem.querySelector('.btnSortable'); const inner = btnSortable.querySelector('.material-icons'); if (elem.previousSibling) { - btnSortable.title = globalize.translate('ButtonUp'); + btnSortable.title = globalize.translate('Up'); btnSortable.classList.add('btnSortableMoveUp'); btnSortable.classList.remove('btnSortableMoveDown'); inner.classList.remove('keyboard_arrow_down'); inner.classList.add('keyboard_arrow_up'); } else { - btnSortable.title = globalize.translate('ButtonDown'); + btnSortable.title = globalize.translate('Down'); btnSortable.classList.remove('btnSortableMoveUp'); btnSortable.classList.add('btnSortableMoveDown'); inner.classList.remove('keyboard_arrow_up'); diff --git a/src/components/subtitlesettings/subtitlesettings.template.html b/src/components/subtitlesettings/subtitlesettings.template.html index af9139188c..2884b26efd 100644 --- a/src/components/subtitlesettings/subtitlesettings.template.html +++ b/src/components/subtitlesettings/subtitlesettings.template.html @@ -14,7 +14,7 @@ - +
    ${DefaultSubtitlesHelp}
    ${SmartSubtitlesHelp}
    diff --git a/src/controllers/dashboard/general.html b/src/controllers/dashboard/general.html index 9ac0a90832..078d9d6055 100644 --- a/src/controllers/dashboard/general.html +++ b/src/controllers/dashboard/general.html @@ -19,7 +19,7 @@
    ${LabelPreferredDisplayLanguageHelp}
    diff --git a/src/controllers/itemDetails/index.html b/src/controllers/itemDetails/index.html index bc6bc5f5a4..9aff1efa14 100644 --- a/src/controllers/itemDetails/index.html +++ b/src/controllers/itemDetails/index.html @@ -42,7 +42,7 @@ - - + @@ -46,7 +46,7 @@
    - +
    @@ -75,7 +75,7 @@
    - +
    diff --git a/src/controllers/music/music.html b/src/controllers/music/music.html index 1e22ae9f3a..6ef1afb89f 100644 --- a/src/controllers/music/music.html +++ b/src/controllers/music/music.html @@ -38,9 +38,9 @@
    - + - +
    @@ -92,7 +92,7 @@
    - +
    diff --git a/src/controllers/music/musicrecommended.js b/src/controllers/music/musicrecommended.js index e16afa2d59..ee182a0427 100644 --- a/src/controllers/music/musicrecommended.js +++ b/src/controllers/music/musicrecommended.js @@ -187,7 +187,7 @@ import 'flexStyles'; }, { name: globalize.translate('TabPlaylists') }, { - name: globalize.translate('TabSongs') + name: globalize.translate('Songs') }, { name: globalize.translate('TabGenres') }]; diff --git a/src/controllers/playback/queue/index.html b/src/controllers/playback/queue/index.html index 2720dfe3f0..8d8476bb1e 100644 --- a/src/controllers/playback/queue/index.html +++ b/src/controllers/playback/queue/index.html @@ -59,7 +59,7 @@ - @@ -81,7 +81,7 @@ - @@ -99,7 +99,7 @@
    -
    @@ -120,7 +120,7 @@ - - +
    @@ -60,7 +60,7 @@
    - +
    diff --git a/src/controllers/shows/tvrecommended.js b/src/controllers/shows/tvrecommended.js index c519e0ac58..3d78997bab 100644 --- a/src/controllers/shows/tvrecommended.js +++ b/src/controllers/shows/tvrecommended.js @@ -17,7 +17,7 @@ import 'emby-button'; function getTabs() { return [{ - name: globalize.translate('TabShows') + name: globalize.translate('Shows') }, { name: globalize.translate('Suggestions') }, { @@ -318,8 +318,8 @@ import 'emby-button'; libraryMenu.setTitle(item.Name); }); } else { - view.setAttribute('data-title', globalize.translate('TabShows')); - libraryMenu.setTitle(globalize.translate('TabShows')); + view.setAttribute('data-title', globalize.translate('Shows')); + libraryMenu.setTitle(globalize.translate('Shows')); } } diff --git a/src/controllers/wizard/finish/index.html b/src/controllers/wizard/finish/index.html index 4d54a10cd4..3447ced02f 100644 --- a/src/controllers/wizard/finish/index.html +++ b/src/controllers/wizard/finish/index.html @@ -6,7 +6,7 @@
    diff --git a/src/controllers/wizard/remote/index.html b/src/controllers/wizard/remote/index.html index 0718c2dc37..0334f584c5 100644 --- a/src/controllers/wizard/remote/index.html +++ b/src/controllers/wizard/remote/index.html @@ -22,10 +22,10 @@
    diff --git a/src/controllers/wizard/settings/index.html b/src/controllers/wizard/settings/index.html index d4f537cf98..d1f557d8f1 100644 --- a/src/controllers/wizard/settings/index.html +++ b/src/controllers/wizard/settings/index.html @@ -17,10 +17,10 @@
    diff --git a/src/controllers/wizard/start/index.html b/src/controllers/wizard/start/index.html index 05e282bee3..5306d2ca73 100644 --- a/src/controllers/wizard/start/index.html +++ b/src/controllers/wizard/start/index.html @@ -19,7 +19,7 @@
    diff --git a/src/controllers/wizard/user/index.html b/src/controllers/wizard/user/index.html index 3ce0b3ba74..24429d043a 100644 --- a/src/controllers/wizard/user/index.html +++ b/src/controllers/wizard/user/index.html @@ -23,10 +23,10 @@
    diff --git a/src/scripts/itembynamedetailpage.js b/src/scripts/itembynamedetailpage.js index 7a56be6781..306282b5fd 100644 --- a/src/scripts/itembynamedetailpage.js +++ b/src/scripts/itembynamedetailpage.js @@ -32,7 +32,7 @@ function renderItems(page, item) { if (item.SeriesCount) { sections.push({ - name: globalize.translate('TabShows'), + name: globalize.translate('Shows'), type: 'Series' }); } diff --git a/src/scripts/libraryBrowser.js b/src/scripts/libraryBrowser.js index 83d683a690..debae200c0 100644 --- a/src/scripts/libraryBrowser.js +++ b/src/scripts/libraryBrowser.js @@ -105,7 +105,7 @@ export function getQueryPagingHtml (options) { } if (options.sortButton) { - html += ''; + html += ''; } if (options.filterButton) { diff --git a/src/scripts/libraryMenu.js b/src/scripts/libraryMenu.js index 543aa6f3d0..29d859740a 100644 --- a/src/scripts/libraryMenu.js +++ b/src/scripts/libraryMenu.js @@ -567,7 +567,7 @@ import 'flexStyles'; view.ImageTags = {}; view.icon = 'live_tv'; const guideView = Object.assign({}, view); - guideView.Name = globalize.translate('ButtonGuide'); + guideView.Name = globalize.translate('Guide'); guideView.ImageTags = {}; guideView.icon = 'dvr'; guideView.url = 'livetv.html?tab=1'; From a9f9444bf7b8750060f230cb52b2a58c4048a27d Mon Sep 17 00:00:00 2001 From: dkanada Date: Thu, 13 Aug 2020 21:38:57 +0900 Subject: [PATCH 032/285] merge most tab and header strings --- src/components/channelMapper/channelMapper.js | 2 +- src/components/filterdialog/filterdialog.template.html | 2 +- .../mediaLibraryCreator.template.html | 2 +- .../mediaLibraryEditor.template.html | 2 +- src/components/multiSelect/multiSelect.js | 2 +- src/controllers/dashboard/devices/devices.html | 2 +- src/controllers/dashboard/users/userlibraryaccess.js | 2 +- src/controllers/dashboard/users/usernew.js | 2 +- src/controllers/itemDetails/index.html | 2 +- src/controllers/livetv.html | 2 +- src/controllers/livetv/livetvsuggested.js | 2 +- src/controllers/movies/moviesrecommended.js | 10 +++++----- src/controllers/music/musicrecommended.js | 2 +- src/controllers/session/addServer/index.html | 2 +- src/controllers/shows/tvrecommended.js | 2 +- src/controllers/user/profile/index.html | 2 +- src/scripts/itembynamedetailpage.js | 2 +- src/scripts/libraryMenu.js | 6 +++--- 18 files changed, 24 insertions(+), 24 deletions(-) diff --git a/src/components/channelMapper/channelMapper.js b/src/components/channelMapper/channelMapper.js index 89d085c185..24f506b9dd 100644 --- a/src/components/channelMapper/channelMapper.js +++ b/src/components/channelMapper/channelMapper.js @@ -93,7 +93,7 @@ export default class channelMapper { html += '
    '; html += '
    '; html += '
    '; - html += `

    ${globalize.translate('HeaderChannels')}

    `; + html += `

    ${globalize.translate('Channels')}

    `; html += '
    '; html += '
    '; html += '
    '; diff --git a/src/components/filterdialog/filterdialog.template.html b/src/components/filterdialog/filterdialog.template.html index f4bbfe7395..1d61f3923e 100644 --- a/src/components/filterdialog/filterdialog.template.html +++ b/src/components/filterdialog/filterdialog.template.html @@ -90,7 +90,7 @@
    -
    +
    diff --git a/src/components/mediaLibraryCreator/mediaLibraryCreator.template.html b/src/components/mediaLibraryCreator/mediaLibraryCreator.template.html index 2884ce256c..4d84544d06 100644 --- a/src/components/mediaLibraryCreator/mediaLibraryCreator.template.html +++ b/src/components/mediaLibraryCreator/mediaLibraryCreator.template.html @@ -24,7 +24,7 @@
    -

    ${HeadersFolders}

    +

    ${Folders}

    diff --git a/src/components/mediaLibraryEditor/mediaLibraryEditor.template.html b/src/components/mediaLibraryEditor/mediaLibraryEditor.template.html index ae7d65e1e5..1f2581612d 100644 --- a/src/components/mediaLibraryEditor/mediaLibraryEditor.template.html +++ b/src/components/mediaLibraryEditor/mediaLibraryEditor.template.html @@ -18,7 +18,7 @@
    -

    ${HeadersFolders}

    +

    ${Folders}

    diff --git a/src/components/multiSelect/multiSelect.js b/src/components/multiSelect/multiSelect.js index d922aee84a..fdce40ab86 100644 --- a/src/components/multiSelect/multiSelect.js +++ b/src/components/multiSelect/multiSelect.js @@ -198,7 +198,7 @@ import 'css!./multiSelect'; if (user.Policy.EnableContentDownloading && appHost.supports('filedownload')) { menuItems.push({ - name: globalize.translate('ButtonDownload'), + name: globalize.translate('Download'), id: 'download', icon: 'file_download' }); diff --git a/src/controllers/dashboard/devices/devices.html b/src/controllers/dashboard/devices/devices.html index 55f51d7e23..63c348c900 100644 --- a/src/controllers/dashboard/devices/devices.html +++ b/src/controllers/dashboard/devices/devices.html @@ -3,7 +3,7 @@
    -

    ${TabDevices}

    +

    ${HeaderDevices}

    ${Help}
    diff --git a/src/controllers/dashboard/users/userlibraryaccess.js b/src/controllers/dashboard/users/userlibraryaccess.js index d32c7312b7..146777a0db 100644 --- a/src/controllers/dashboard/users/userlibraryaccess.js +++ b/src/controllers/dashboard/users/userlibraryaccess.js @@ -32,7 +32,7 @@ import globalize from 'globalize'; function loadChannels(page, user, channels) { let html = ''; - html += '

    ' + globalize.translate('HeaderChannels') + '

    '; + html += '

    ' + globalize.translate('Channels') + '

    '; html += '
    '; for (let i = 0, length = channels.length; i < length; i++) { diff --git a/src/controllers/dashboard/users/usernew.js b/src/controllers/dashboard/users/usernew.js index d3ff449d02..68b6365c02 100644 --- a/src/controllers/dashboard/users/usernew.js +++ b/src/controllers/dashboard/users/usernew.js @@ -22,7 +22,7 @@ import 'emby-checkbox'; function loadChannels(page, channels) { let html = ''; - html += '

    ' + globalize.translate('HeaderChannels') + '

    '; + html += '

    ' + globalize.translate('Channels') + '

    '; html += '
    '; for (let i = 0; i < channels.length; i++) { diff --git a/src/controllers/itemDetails/index.html b/src/controllers/itemDetails/index.html index 9aff1efa14..8c16daba99 100644 --- a/src/controllers/itemDetails/index.html +++ b/src/controllers/itemDetails/index.html @@ -24,7 +24,7 @@
    -
    diff --git a/src/scripts/itembynamedetailpage.js b/src/scripts/itembynamedetailpage.js index 306282b5fd..60be838448 100644 --- a/src/scripts/itembynamedetailpage.js +++ b/src/scripts/itembynamedetailpage.js @@ -25,7 +25,7 @@ function renderItems(page, item) { if (item.MovieCount) { sections.push({ - name: globalize.translate('TabMovies'), + name: globalize.translate('Movies'), type: 'Movie' }); } diff --git a/src/scripts/libraryMenu.js b/src/scripts/libraryMenu.js index 29d859740a..5ee485e815 100644 --- a/src/scripts/libraryMenu.js +++ b/src/scripts/libraryMenu.js @@ -395,10 +395,10 @@ import 'flexStyles'; addPluginPagesToMainMenu(links, pluginItems, 'server'); links.push({ divider: true, - name: globalize.translate('TabDevices') + name: globalize.translate('HeaderDevices') }); links.push({ - name: globalize.translate('TabDevices'), + name: globalize.translate('HeaderDevices'), href: 'devices.html', pageIds: ['devicesPage', 'devicePage'], icon: 'devices' @@ -426,7 +426,7 @@ import 'flexStyles'; icon: 'live_tv' }); links.push({ - name: globalize.translate('TabDVR'), + name: globalize.translate('HeaderDVR'), href: 'livetvsettings.html', pageIds: ['liveTvSettingsPage'], icon: 'dvr' From e21397b38b137921c567d2e9173f8b94d393c67d Mon Sep 17 00:00:00 2001 From: dkanada Date: Thu, 13 Aug 2020 21:43:25 +0900 Subject: [PATCH 033/285] remove unused translations --- src/strings/af.json | 9 --------- src/strings/ar.json | 33 --------------------------------- src/strings/be-by.json | 3 --- src/strings/bg-bg.json | 35 ----------------------------------- src/strings/ca.json | 30 ------------------------------ src/strings/cs.json | 35 ----------------------------------- src/strings/da.json | 34 ---------------------------------- src/strings/de.json | 35 ----------------------------------- src/strings/el.json | 34 ---------------------------------- src/strings/en-gb.json | 35 ----------------------------------- src/strings/en-us.json | 35 ----------------------------------- src/strings/es-ar.json | 35 ----------------------------------- src/strings/es-mx.json | 35 ----------------------------------- src/strings/es.json | 35 ----------------------------------- src/strings/es_419.json | 35 ----------------------------------- src/strings/fa.json | 35 ----------------------------------- src/strings/fi.json | 34 ---------------------------------- src/strings/fr-ca.json | 14 -------------- src/strings/fr.json | 35 ----------------------------------- src/strings/gsw.json | 9 --------- src/strings/he.json | 33 --------------------------------- src/strings/hi-in.json | 11 ----------- src/strings/hr.json | 34 ---------------------------------- src/strings/hu.json | 35 ----------------------------------- src/strings/id.json | 14 -------------- src/strings/is-is.json | 22 ---------------------- src/strings/it.json | 35 ----------------------------------- src/strings/ja.json | 34 ---------------------------------- src/strings/kk.json | 34 ---------------------------------- src/strings/ko.json | 34 ---------------------------------- src/strings/lt-lt.json | 32 -------------------------------- src/strings/lv.json | 33 --------------------------------- src/strings/mr.json | 10 ---------- src/strings/ms.json | 10 ---------- src/strings/nb.json | 35 ----------------------------------- src/strings/nl.json | 35 ----------------------------------- src/strings/pl.json | 35 ----------------------------------- src/strings/pt-br.json | 35 ----------------------------------- src/strings/pt-pt.json | 34 ---------------------------------- src/strings/pt.json | 34 ---------------------------------- src/strings/ro.json | 35 ----------------------------------- src/strings/ru.json | 35 ----------------------------------- src/strings/sk.json | 35 ----------------------------------- src/strings/sl-si.json | 36 +----------------------------------- src/strings/sr.json | 12 ------------ src/strings/sv.json | 35 ----------------------------------- src/strings/tr.json | 30 ------------------------------ src/strings/uk.json | 19 ------------------- src/strings/vi.json | 26 -------------------------- src/strings/zh-cn.json | 35 ----------------------------------- src/strings/zh-hk.json | 27 --------------------------- src/strings/zh-tw.json | 35 ----------------------------------- 52 files changed, 1 insertion(+), 1523 deletions(-) diff --git a/src/strings/af.json b/src/strings/af.json index 8e34e87d60..53b658836e 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -2,7 +2,6 @@ "Auto": "Outo", "AuthProviderHelp": "Kies 'n Authentication Provider vir die egtheid van gebruiker se wagwoord.", "Audio": "Klank", - "AttributeNew": "Nuwe", "AspectRatio": "Aspek verhouding", "Ascending": "Boontoe", "AsManyAsPossible": "So veel moontlik", @@ -43,16 +42,11 @@ "AlbumArtist": "Album Kunstenaar", "TabLatest": "Nuutste", "TabInfo": "Inligting", - "TabGuide": "Gids", - "TabGenres": "Genres", - "TabFavorites": "Gunstellinge", "TabEpisodes": "Episodes", "TabDirectPlay": "Speel Direk", - "TabDevices": "Toestelle", "TabDashboard": "Paneelbord", "TabContainers": "Houers", "Collections": "Versamelings", - "TabCollections": "Versamelings", "UnsupportedPlayback": "Jellyfin kan nie inhoud wat beskerm word deur DRM ontsuifer nie, maar daar sal 'n poging aangwend word inelkgeval, insluitend beskermde titels. Sommige leêrs mag geheel en al swart verksyn weens enkripsie of ander on-ondersteunde funksies, byvoorbeeld interaktiewe titels.", "OnApplicationStartup": "Op applikasie begin", "EveryXHours": "Elke {0} ure", @@ -132,8 +126,6 @@ "TabUpcoming": "Komende", "TabTrailers": "Voorprente", "TabStreaming": "Stroom", - "TabSongs": "Liedjies", - "TabShows": "Programme", "TabSettings": "Instellings", "TabServer": "Bediener", "TabSeries": "Reekse", @@ -153,7 +145,6 @@ "TabNetworks": "Netwerke", "TabMusicVideos": "Musiek Videos", "TabMusic": "Musiek", - "TabMovies": "Rolprente", "TabLogs": "Logs", "TabLiveTV": "Lewendige TV" } diff --git a/src/strings/ar.json b/src/strings/ar.json index 862c985c85..24020ed834 100644 --- a/src/strings/ar.json +++ b/src/strings/ar.json @@ -15,19 +15,12 @@ "ButtonAddScheduledTaskTrigger": "إضافة زناد", "ButtonAddServer": "إضافة خادم", "ButtonAddUser": "اضافة مستخدم", - "ButtonArrowDown": "أسفل", "ButtonArrowLeft": "يسار", "ButtonArrowRight": "يمين", - "ButtonArrowUp": "أعلى", "ButtonAudioTracks": "المقاطع الصوتية", "ButtonBack": "خلف", "ButtonCancel": "الغاء", "ButtonChangeServer": "غير الخادم", - "ButtonConnect": "اتصل", - "ButtonDelete": "حذف", - "ButtonDeleteImage": "حذف الصورة", - "ButtonDown": "أسفل", - "ButtonDownload": "إنزال", "ButtonEdit": "تعديل", "ButtonEditImages": "تعديل الصور", "ButtonEditOtherUserPreferences": "اضبط إعدادات حساب المستخدم هذا، وصورته وتفضيلاته الشخصية.", @@ -41,7 +34,6 @@ "ButtonManualLogin": "الدخول اليدوي", "ButtonMore": "المزيد", "ButtonNetwork": "الشبكة", - "ButtonNew": "جديد", "ButtonNextTrack": "المقطوعة التالية", "ButtonOff": "إيقاف التشغيل", "ButtonOk": "موافق", @@ -66,18 +58,15 @@ "ButtonSelectView": "إختر طريقة عرض", "ButtonSend": "إرسال", "ButtonSettings": "الإعدادات", - "ButtonShuffle": "إخلط", "ButtonShutdown": "إنهاء التشغيل", "ButtonSignIn": "تسجيل الدخول", "ButtonSignOut": "تسجيل الخروج", - "ButtonSort": "ترتيب", "ButtonStart": "إبدأ", "ButtonStop": "إيقاف", "ButtonSubmit": "تسليم", "ButtonSubtitles": "ترجمات", "ButtonTrailer": "العرض الإعلاني", "ButtonUninstall": "إزالة التثبيت", - "ButtonUp": "أعلى", "ButtonWebsite": "موقع إلكتروني", "ChannelAccessHelp": "إختر قناة لمشاركتها مع هذا المستخدم. المدراء سيكونون قادرين على تغيير إعدادات القنوات باستخدام مدير واصفات البيانات.", "Channels": "القنوات", @@ -135,7 +124,6 @@ "HeaderAddUser": "إضافة مستخدم", "HeaderAdditionalParts": "أدوار إضافية", "HeaderAdmin": "المدير", - "HeaderAlbums": "الألبومات", "HeaderAlert": "تنبيه", "HeaderAllowMediaDeletionFrom": "السماح بحذف الوسائط من قبل", "HeaderApiKey": "مفتاح API", @@ -148,7 +136,6 @@ "HeaderCastAndCrew": "الممثلين وطاقم العمل", "HeaderCastCrew": "الممثلين والطاقم", "HeaderChannelAccess": "صلاحيات القنوات", - "HeaderChannels": "القنوات", "HeaderCodecProfile": "عريضة الكودك", "HeaderCodecProfileHelp": "عرائض الكودك تشير إلى محدودية جهاز ما عند تشغيل وسيطة مشفر بكودك معيّن. إن كان هناك أي محدودية مذكورة فستحال الوسيطة إلى التشغير البيني، حتى لو كانت الصيغة مضبوطة للعمل بتلقائية.", "HeaderConfirmPluginInstallation": "أكد عملية تثبيت الملحق", @@ -179,7 +166,6 @@ "HeaderForKids": "للأطفال", "HeaderForgotPassword": "نسيت كلمة السر", "HeaderFrequentlyPlayed": "تم تشغيله مراراً", - "HeaderGenres": "أنواع الأفلام", "HeaderGuideProviders": "مزودو الأدلة", "HeaderHttpHeaders": "رؤوس HTTP", "HeaderIdentification": "التعريفة", @@ -189,7 +175,6 @@ "HeaderImageSettings": "إعدادات الصورة", "HeaderInstall": "تثبيت", "HeaderInstantMix": "مزيج فوري", - "HeaderItems": "العناصر", "HeaderLatestEpisodes": "احدث الحلقات", "HeaderLatestMedia": "آحدث الوسائط", "HeaderLatestMovies": "أحدث الأفلام", @@ -205,7 +190,6 @@ "HeaderMediaFolders": "مجلدات الوسائط", "HeaderMediaInfo": "معلومات الوسيطة", "HeaderMoreLikeThis": "المزيد من الروابط لهذا", - "HeaderMovies": "الأفلام", "HeaderMusicVideos": "الفيديوهات الموسيقية", "HeaderMyMedia": "وسائطي", "HeaderNewApiKey": "مفتاح API جديد", @@ -252,7 +236,6 @@ "HeaderServerSettings": "إعدادات الخادم", "HeaderSettings": "الإعدادات", "HeaderSetupLibrary": "ضبط مكتبة المحتوى الخاصة بك", - "HeaderShutdown": "إنهاء التشغيل", "HeaderSortBy": "ترتيب حسب", "HeaderSortOrder": "تسلسل الترتيب", "HeaderSpecialEpisodeInfo": "معلومات الحلقة الخاصة", @@ -281,7 +264,6 @@ "HeaderXmlDocumentAttributes": "سمات مستند xml", "HeaderXmlSettings": "إعدادات xml", "HeaderYears": "السنوات", - "HeadersFolders": "مجلدات", "ImportFavoriteChannelsHelp": "فقط القنوات التي علّمت في المفضلة على جهاز المولف ستورد.", "ImportMissingEpisodesHelp": "المعلومات الناقصة للحلقات ستورّد إلى قاعدة بياناتك وستعرض داخل المواسم والمسلسلات. قد تتسبب هذه بأوقات أطول بكثير عند تمشيط المكتبات.", "LabelAbortedByServerShutdown": "(تم إهماله بسبب عملية إغلاق الخادم)", @@ -446,7 +428,6 @@ "LabelNewPassword": "كلمة السر الجديدة:", "LabelNewPasswordConfirm": "تأكيد كلمة السر الجديدة:", "LabelNewsCategories": "التصنيفات الأخبارية:", - "LabelNext": "التالي", "LabelNotificationEnabled": "تفعيل هذه الإشعارات", "LabelNumberOfGuideDays": "عدد أيام بيانات الدليل للإنزال:", "LabelNumberOfGuideDaysHelp": "إنزال أيام أكثر من بيانات الدليل ستوفر أمكانية جدولة أيام أبعد وإظهار قوائم أطول للبرامج، لكنها ستأخذ وقتاً أطول للإنزال. االخيار الآلي سوف يتخيّر بناء على عدد القنوات المتاحة.", @@ -462,7 +443,6 @@ "LabelPostProcessorArgumentsHelp": "استخدم المسار: {path} كمسار لملف التسجيل.", "LabelPreferredDisplayLanguage": "لغة الواجهة المفضلة:", "LabelPreferredDisplayLanguageHelp": "إن ترجمة أمبي هو مشروع جاري التنفيذ.", - "LabelPrevious": "السابق", "LabelProfileAudioCodecs": "كودك تشفير الصوت", "LabelProfileCodecs": "الكودكات:", "LabelProfileCodecsHelp": "يجب فصل العناصر بفواصل (,). يمكن أن تترك هذه فارغة إذا أريد تطبيقها على كل الكودكات.", @@ -476,7 +456,6 @@ "LabelPublicHttpPortHelp": "رقم المنفذ العالمي الذي يجب أن يوافق منفذ http المحلي.", "LabelPublicHttpsPort": "رقم منفذ https العالمي:", "LabelPublicHttpsPortHelp": "رقم المنفذ العالمي الذي يجب أن يوافق منفذ https المحلي.", - "LabelReadHowYouCanContribute": "تعرّف على كيفية المساهمة فيه.", "LabelRecordingPath": "المسار الافتراضي للمقاطع المسجلة:", "LabelRecordingPathHelp": "حدد موقع افتراضي لحفظ المقاطع المسجلة، لو تركت هذه الخانة فارغة، فسيستعمل مجلد بيانات البرنامج.", "LabelReleaseDate": "تاريخ الإصدار", @@ -785,24 +764,16 @@ "TabAccess": "الدخول", "TabAdvanced": "متقدم", "TabAlbumArtists": "فنانو الألبومات", - "TabAlbums": "الألبومات", "TabCatalog": "الكتالوج", - "TabChannels": "القنوات", "TabCodecs": "الكودكات", - "TabCollections": "المجاميع", "TabContainers": "الحاويات", "TabDashboard": "لوحة العدادات", - "TabDevices": "الأجهزة", "TabDirectPlay": "تشغيل مباشر", "TabEpisodes": "الحلقات", - "TabFavorites": "المفضلة", - "TabGenres": "أنواع الأفلام", - "TabGuide": "الدليل", "TabInfo": "معلومات", "TabLatest": "الاخير", "TabLiveTV": "التلفاز المباشر", "TabLogs": "الكشوفات", - "TabMovies": "الفيلم", "TabMusic": "الموسيقى", "TabMusicVideos": "الفيديوهات الموسيقية", "TabMyPlugins": "ملحقاتي", @@ -823,8 +794,6 @@ "TabSeries": "المسلسلات", "TabServer": "الخادم", "TabSettings": "الإعدادات", - "TabShows": "المسلسلات", - "TabSongs": "الاغانى", "TabStreaming": "التشغيل التدفقي", "TabTrailers": "العروض الإعلانية", "TabUpcoming": "القادم", @@ -916,7 +885,6 @@ "Auto": "تلقائي", "AuthProviderHelp": "اختار مقدم المصادقة ليتم استخدامه لمصادقة كلمة مرور هذا المستخدم.", "AroundTime": "حول", - "AttributeNew": "جديد", "AspectRatio": "نسبة العرض الى الارتفاع", "Ascending": "تصاعدي", "AsManyAsPossible": "أكبر عدد ممكن", @@ -1108,7 +1076,6 @@ "EnableColorCodedBackgrounds": "تصنيف الخلفيات حسب اللون", "EnableCinemaMode": "وضع السينما", "EnableBackdropsHelp": "اعرض الخلفيات في خلفية بعض الصفحات أثناء تصفح المكتبة.", - "EnableBackdrops": "الخلفيات", "DownloadsValue": "عدد التنزيلات {0}", "Download": "تحميل", "Down": "أسفل", diff --git a/src/strings/be-by.json b/src/strings/be-by.json index e8726bf216..8bd6d2aa31 100644 --- a/src/strings/be-by.json +++ b/src/strings/be-by.json @@ -1,6 +1,5 @@ { "ButtonCancel": "Адмяніць", - "ButtonNew": "Новае", "ButtonOk": "ОК", "ButtonQuickStartGuide": "Кіраўніцтва па запуску", "ButtonSignOut": "Sign out", @@ -9,8 +8,6 @@ "HeaderPaths": "Шляхі", "HeaderTaskTriggers": "Трыгеры задачы", "LabelFinish": "Гатова", - "LabelNext": "Наступнае", - "LabelPrevious": "Папярэдняе", "LabelYoureDone": "Вы скончылі!", "MoreUsersCanBeAddedLater": "Потым можна дадаць яшчэ карыстальнікаў праз «Інфапанэль».", "TellUsAboutYourself": "Раскажыце пра сябе", diff --git a/src/strings/bg-bg.json b/src/strings/bg-bg.json index 20337a876a..4ab46a6eab 100644 --- a/src/strings/bg-bg.json +++ b/src/strings/bg-bg.json @@ -11,7 +11,6 @@ "AllLibraries": "Всички библиотеки", "Art": "Картина", "Artists": "Артисти", - "AttributeNew": "Нови", "Audio": "Звук", "Auto": "Автоматично", "Backdrop": "Фон", @@ -24,16 +23,11 @@ "ButtonAddScheduledTaskTrigger": "Добавяне на спусък", "ButtonAddServer": "Добавяне на сървър", "ButtonAddUser": "Добавяне на потребител", - "ButtonArrowDown": "Надолу", "ButtonArrowLeft": "Наляво", "ButtonArrowRight": "Надясно", - "ButtonArrowUp": "Нагоре", "ButtonAudioTracks": "Звукови пътеки", "ButtonBack": "Назад", "ButtonCancel": "Отмяна", - "ButtonDelete": "Изтриване", - "ButtonDeleteImage": "Изтриване на изобр.", - "ButtonDownload": "Изтегляне", "ButtonEdit": "Редактиране", "ButtonEditImages": "Редактиране на изображенията", "ButtonFilter": "Филтър", @@ -45,7 +39,6 @@ "ButtonLibraryAccess": "Достъп до библиотеката", "ButtonManualLogin": "Вход с име и парола", "ButtonMore": "Още", - "ButtonNew": "Нов", "ButtonNextTrack": "Следваща пътека", "ButtonOff": "Изключено", "ButtonOk": "Добре", @@ -67,11 +60,9 @@ "ButtonSelectDirectory": "Изберете папка", "ButtonSend": "Изпращане", "ButtonSettings": "Настройки", - "ButtonShuffle": "Пускане в разбъркан ред", "ButtonShutdown": "Загасяне", "ButtonSignIn": "Вписване", "ButtonSignOut": "Отписване", - "ButtonSort": "Подреждане", "ButtonStop": "Спиране", "ButtonSubmit": "Подаване", "ButtonSubtitles": "Субтитри", @@ -106,7 +97,6 @@ "EditImages": "Редактиране на изображенията", "EditMetadata": "Редактиране на метаданните", "EditSubtitles": "Редактиране на субтитрите", - "EnableBackdrops": "Фонове", "EnableCinemaMode": "Режим \"Киносалон\"", "EnableThemeSongs": "Тематични песни", "Ended": "Приключило", @@ -148,7 +138,6 @@ "HeaderAdditionalParts": "Допълнителни части", "HeaderAdmin": "Администриране", "HeaderAlbumArtists": "Изпълнители на албуми", - "HeaderAlbums": "Албуми", "HeaderApiKey": "ППИ ключ", "HeaderApiKeys": "ППИ ключове", "HeaderApp": "Програма", @@ -156,7 +145,6 @@ "HeaderBooks": "Книги", "HeaderCastAndCrew": "Артисти и изпълнители", "HeaderCastCrew": "Артисти и изпълнители", - "HeaderChannels": "Канали", "HeaderCodecProfile": "Профил на кодека", "HeaderContainerProfile": "Профил на контейнера", "HeaderContinueListening": "Продължаване на слушането", @@ -177,7 +165,6 @@ "HeaderForKids": "Детски", "HeaderForgotPassword": "Забравена парола", "HeaderFrequentlyPlayed": "Често пускани", - "HeaderGenres": "Жанрове", "HeaderGuideProviders": "Доставчици на справочници", "HeaderIdentification": "Идентификация", "HeaderImageSettings": "Настройки на картината", @@ -200,7 +187,6 @@ "HeaderMediaInfo": "Сведения", "HeaderMetadataSettings": "Настройки на метаданните", "HeaderMoreLikeThis": "Подобни", - "HeaderMovies": "Филми", "HeaderMusicQuality": "Качество на музиката", "HeaderMusicVideos": "Музикални клипове", "HeaderMyDevice": "Моето устройство", @@ -256,7 +242,6 @@ "HeaderVideoQuality": "Качество на видеото", "HeaderVideos": "Видеоклипове", "HeaderYears": "Години", - "HeadersFolders": "Папки", "Help": "Помощ", "Hide": "Скриване", "HideWatchedContentFromLatestMedia": "Скриване на гледаното съдържание от последната медия", @@ -367,7 +352,6 @@ "LabelNewName": "Ново име:", "LabelNewPassword": "Нова парола:", "LabelNewPasswordConfirm": "Нова парола (отново):", - "LabelNext": "Следващ", "LabelNumberOfGuideDays": "Брой дни за които да се свали програма:", "LabelNumberOfGuideDaysHelp": "Изтеглянето на програма заповече дни дава възможност да планирате по-нататъшните записи предварително, но и отнема повече време, за да се изтегли. Автомат ще избере въз основа на броя на каналите.", "LabelOptionalNetworkPath": "Споделена мрежова папка (незадължително):", @@ -385,7 +369,6 @@ "LabelPreferredDisplayLanguage": "Предпочитан език на показване:", "LabelPreferredDisplayLanguageHelp": "Превеждането на Емби е текущ проект.", "LabelPreferredSubtitleLanguage": "Предпочитан език на субтитрите:", - "LabelPrevious": "Предишен", "LabelProfileAudioCodecs": "Звукови кодеци:", "LabelProfileCodecs": "Кодеци:", "LabelProfileCodecsHelp": "Разделени със запетая. Може да бъде оставено празно, за да се отнася за всички кодеци.", @@ -397,7 +380,6 @@ "LabelPublicHttpPortHelp": "Публичният порт, който да бъде съпоставен с локалния HTTP порт.", "LabelPublicHttpsPort": "Публичен HTTPS порт:", "LabelPublicHttpsPortHelp": "Публичният порт, който да бъде съпоставен с локалния HTTPS порт.", - "LabelReadHowYouCanContribute": "Научете как можете да допринесете.", "LabelRecordingPath": "Път за запис по подразбиране:", "LabelReleaseDate": "Дата на издаване:", "LabelRemoteClientBitrateLimit": "Ограничение на интернетното излъчване (мбит/сек):", @@ -494,7 +476,6 @@ "News": "Новини", "MessageNoNextUpItems": "Нищо не е намерено. Започнете да гледате вашите предавания!", "NoSubtitleSearchResultsFound": "Няма намерени резултати.", - "NoSubtitles": "Без", "None": "Нищо", "Normal": "Нормален", "NumLocationsValue": "{0} папки", @@ -668,24 +649,16 @@ "TabAccess": "Достъп", "TabAdvanced": "Допълнителни", "TabAlbumArtists": "Изпълнители на албуми", - "TabAlbums": "Албуми", "TabCatalog": "Каталог", - "TabChannels": "Канали", "TabCodecs": "Кодеци", - "TabCollections": "Колекции", "TabContainers": "Контейнери", "TabDashboard": "Табло", - "TabDevices": "Устройства", "TabDirectPlay": "Директно пускане", "TabEpisodes": "Епизоди", - "TabFavorites": "Любими", - "TabGenres": "Жанрове", - "TabGuide": "Ръководство", "TabInfo": "Информация", "TabLatest": "Последни", "TabLiveTV": "Телевизия на живо", "TabLogs": "Журнали", - "TabMovies": "Филми", "TabMusic": "Музика", "TabMusicVideos": "Музикални клипове", "TabMyPlugins": "Моите приставки", @@ -706,8 +679,6 @@ "TabSeries": "Сериали", "TabServer": "Сървър", "TabSettings": "Настройки", - "TabShows": "Предавания", - "TabSongs": "Песни", "TabStreaming": "Излъчване", "TabTrailers": "Трейлъри", "TabUpcoming": "Предстоящи", @@ -794,15 +765,12 @@ "ReplaceExistingImages": "Заменяне на текущите изображения", "Channels": "Канали", "Categories": "Категории", - "ButtonUp": "Нагоре", "ButtonTrailer": "Предварителен откъс", "ButtonStart": "Пускане", "ButtonSelectView": "Изберете изглед", "ButtonSelectServer": "Изберете сървър", "ButtonNetwork": "Мрежа", "ButtonFullscreen": "На цял екран", - "ButtonDown": "Надолу", - "ButtonConnect": "Свързване", "AllowOnTheFlySubtitleExtraction": "Позволява моментално извличане на поднадписи", "AllowHWTranscodingHelp": "Позволява на тунера да прекодира моментално. Това може да помогне за редуциране на прекодирането от сървъра.", "Absolute": "Aбсолютен", @@ -987,7 +955,6 @@ "HeaderSubtitleDownloads": "Сваляне на субтитри", "HeaderStopRecording": "Спри запис", "HeaderSpecialEpisodeInfo": "Информация за специалните епизоди", - "HeaderShutdown": "Изключване", "HeaderServerAddressSettings": "Настройки за адреса на сървъра", "HeaderSeriesStatus": "Състояние на сериала", "HeaderSeriesOptions": "Настройки на сериала", @@ -1017,7 +984,6 @@ "HeaderKodiMetadataHelp": "За да включиш или изключиш използването на NFO метаданните влез в настройките за библиотеки на сървъра и намери секцията за съхранение.", "HeaderKeepSeries": "Запази сериалите", "HeaderKeepRecording": "Запази записите", - "HeaderItems": "Елементи", "HeaderImageOptions": "Настройки на картини", "HeaderIdentifyItemHelp": "Въведете един или повече критерии за търсене.Премахнете ,ако искате да увеличите резултатите при търсенето.", "HeaderIdentificationHeader": "Идентификационен хедър", @@ -1207,7 +1173,6 @@ "TitleHostingSettings": "Настройки за хостинг", "TitleHardwareAcceleration": "Хардуерно ускорение", "TabNetworking": "Работа в мрежа", - "TabDVR": "ДВР", "SystemDlnaProfilesHelp": "Системните профили са с достъп \"само за четене\".При промяна в системния профил ще бъде създаден нов персонализиран профил.", "SyncPlayAccessHelp": "Избери нивото на достъп ,който този потребител ще има за услугата \"Синхронизирано възпроизвеждане\".С нейна помощ може да синхронизирате възпроизвеждането с други устройства.", "SubtitleOffset": "Изместване на субтитрите", diff --git a/src/strings/ca.json b/src/strings/ca.json index 4033ba56c4..c5f7f2d6de 100644 --- a/src/strings/ca.json +++ b/src/strings/ca.json @@ -12,23 +12,17 @@ "Artists": "Artistes", "AsManyAsPossible": "Tants com sigui possible", "AspectRatio": "Relació d'aspecte", - "AttributeNew": "Nou", "Audio": "Àudio", "MessageBrowsePluginCatalog": "Consulta el nostre catàleg per veure els complements disponibles.", "ButtonAddMediaLibrary": "Afegir Biblioteca Multimèdia", "ButtonAddScheduledTaskTrigger": "Afegir Disparador", "ButtonAddServer": "Afegeix Servidor", "ButtonAddUser": "Afegir Usuari", - "ButtonArrowDown": "Avall", "ButtonArrowLeft": "Esquerra", "ButtonArrowRight": "Dreta", - "ButtonArrowUp": "Amunt", "ButtonBack": "Darrera", "ButtonCancel": "Cancel·la", "ButtonChangeServer": "Canvia Servidor", - "ButtonDelete": "Esborra", - "ButtonDeleteImage": "Esborra Imatge", - "ButtonDownload": "Descarrega", "ButtonEdit": "Edita", "ButtonEditImages": "Edita les imatges", "ButtonEditOtherUserPreferences": "Edita el perfil, la imatge i les preferències d'aquest usuari.", @@ -40,7 +34,6 @@ "ButtonLibraryAccess": "Accés a la biblioteca", "ButtonManualLogin": "Inici de sessió manual", "ButtonMore": "Més", - "ButtonNew": "Nou", "ButtonNextTrack": "Pista següent", "ButtonOk": "D'acord", "ButtonOpen": "Obre", @@ -61,11 +54,9 @@ "ButtonSelectServer": "Seleccionar servidor", "ButtonSend": "Envia", "ButtonSettings": "Preferències", - "ButtonShuffle": "Aleatori", "ButtonShutdown": "Atura", "ButtonSignIn": "Inicia Sessió", "ButtonSignOut": "Tanca sessió", - "ButtonSort": "Ordena", "ButtonStop": "Atura", "ButtonSubmit": "Envia", "ButtonSubtitles": "Subtítols", @@ -138,7 +129,6 @@ "HeaderCancelSeries": "Cancel·lar Sèries", "HeaderCastAndCrew": "Repartiment i Equip", "HeaderCastCrew": "Repartiment i Equip", - "HeaderChannels": "Canals", "HeaderCodecProfile": "Perfil de Còdec", "HeaderConfirmProfileDeletion": "Confirmar Supressió de Perfil", "HeaderConnectToServer": "Connectar al Servidor", @@ -163,7 +153,6 @@ "HeaderFetchImages": "Obtingues Imatges:", "HeaderForgotPassword": "He oblidat la contrasenya", "HeaderFrequentlyPlayed": "Reproduït Freqüentment", - "HeaderGenres": "Gèneres", "HeaderHttpHeaders": "Capçaleres Http", "HeaderIdentification": "Identificació", "HeaderIdentificationCriteriaHelp": "Insereix al menys un criteri d'identificació.", @@ -188,7 +177,6 @@ "HeaderMediaFolders": "Directoris Multimèdia", "HeaderMediaInfo": "Info Multimèdia", "HeaderMetadataSettings": "Preferències de Metadades", - "HeaderMovies": "Pel·lícules", "HeaderMusicVideos": "Vídeos Musicals", "HeaderMyDevice": "El meu dispositiu", "HeaderMyMedia": "Els meus mitjans", @@ -245,7 +233,6 @@ "HeaderXmlDocumentAttributes": "Atributs de Documents XML", "HeaderXmlSettings": "Preferències Xml", "HeaderYears": "Anys", - "HeadersFolders": "Directoris", "Help": "Ajuda", "Hide": "Amaga", "Identify": "Identifica", @@ -358,7 +345,6 @@ "LabelNewName": "Nou nom:", "LabelNewPassword": "Nova contrasenya:", "LabelNewPasswordConfirm": "Confirma la nova contrasenya:", - "LabelNext": "Següent", "LabelNotificationEnabled": "Habilita aquesta notificació", "LabelNumber": "Nombre:", "LabelNumberOfGuideDays": "Nombre de dies de dades de la guia per a descarregar:", @@ -376,7 +362,6 @@ "LabelPreferredDisplayLanguage": "Idioma de visualització preferit:", "LabelPreferredDisplayLanguageHelp": "La traducció d'Jellyfin és un projecte en curs.", "LabelPreferredSubtitleLanguage": "Idioma preferit de subtítols:", - "LabelPrevious": "Anterior", "LabelProfileAudioCodecs": "Còdecs d'àudio:", "LabelProfileCodecs": "Còdecs:", "LabelProfileContainer": "Contenidor:", @@ -384,7 +369,6 @@ "LabelProtocolInfo": "Informació del protocol:", "LabelPublicHttpPort": "Número públic del port http:", "LabelPublicHttpsPort": "Número públic del port https:", - "LabelReadHowYouCanContribute": "Aprèn com pots contribuir.", "LabelRecord": "Enregistra:", "LabelRecordingPath": "Directori de gravació per defecte:", "LabelRefreshMode": "Mode de refresc:", @@ -477,7 +461,6 @@ "MessageNoNextUpItems": "Cap trobat. Comença a mirar els teus programes!", "MessageNoPluginConfiguration": "Aquest complement no té opcions de configuració.", "NoSubtitleSearchResultsFound": "No s'han trobat resultats.", - "NoSubtitles": "Sense subtítols", "None": "Cap", "NumLocationsValue": "{0} directoris", "OnlyForcedSubtitles": "Només subtítols forçats", @@ -633,23 +616,15 @@ "Sync": "Sincronitzar", "TabAccess": "Accés", "TabAdvanced": "Avançat", - "TabAlbums": "Àlbums", "TabCatalog": "Catàleg", - "TabChannels": "Canals", "TabCodecs": "Còdecs", - "TabCollections": "Col·leccions", "TabContainers": "Contenidors", "TabDashboard": "Tauler de Control", - "TabDevices": "Dispositius", "TabDirectPlay": "Reproducció Directa", "TabEpisodes": "Episodis", - "TabFavorites": "Preferits", - "TabGenres": "Gèneres", - "TabGuide": "Guia", "TabInfo": "Informació", "TabLatest": "Novetats", "TabLiveTV": "TV en Directe", - "TabMovies": "Pel·lícules", "TabMusic": "Música", "TabMusicVideos": "Vídeos musicals", "TabMyPlugins": "Els meus complements", @@ -669,8 +644,6 @@ "TabSeries": "Sèries", "TabServer": "Servidor", "TabSettings": "Preferències", - "TabShows": "Programes", - "TabSongs": "Cançons", "TabTrailers": "Tràilers", "TabUpcoming": "Properament", "TabUsers": "Usuaris", @@ -722,7 +695,6 @@ "ChannelNumber": "Número de canal", "Categories": "Categories", "ButtonWebsite": "Lloc web", - "ButtonUp": "Amunt", "ButtonUninstall": "Desinstal·lar", "ButtonSplit": "Dividir", "ButtonStart": "Començar", @@ -733,8 +705,6 @@ "ButtonNetwork": "Xarxa", "ButtonInfo": "Informació", "ButtonFullscreen": "Pantalla completa", - "ButtonDown": "A baix", - "ButtonConnect": "Connectar", "ButtonAudioTracks": "Pistes d'àudio", "ButtonAddImage": "Afegir imatge", "Blacklist": "Llista negra", diff --git a/src/strings/cs.json b/src/strings/cs.json index 85d4b175f2..daa4573874 100644 --- a/src/strings/cs.json +++ b/src/strings/cs.json @@ -21,7 +21,6 @@ "Artists": "Umělci", "AsManyAsPossible": "Tolikrát jak je možné", "AspectRatio": "Poměr stran", - "AttributeNew": "Nové", "Audio": "Zvuk", "Auto": "Automaticky", "Backdrop": "Pozadí", @@ -38,19 +37,12 @@ "ButtonAddScheduledTaskTrigger": "Přidat Spouštěč", "ButtonAddServer": "Přidat server", "ButtonAddUser": "Přidat uživatele", - "ButtonArrowDown": "Dolů", "ButtonArrowLeft": "Vlevo", "ButtonArrowRight": "Vpravo", - "ButtonArrowUp": "Nahoru", "ButtonAudioTracks": "Audio stopy", "ButtonBack": "Zpět", "ButtonCancel": "Zrušit", "ButtonChangeServer": "Změna serveru", - "ButtonConnect": "Připojit", - "ButtonDelete": "Odstranit", - "ButtonDeleteImage": "Odstranit obrázek", - "ButtonDown": "Zeslabit", - "ButtonDownload": "Stáhnout", "ButtonEdit": "Upravit", "ButtonEditImages": "Editovat obrázky", "ButtonEditOtherUserPreferences": "Editace uživatelského profilu, avataru a osobních preferencí.", @@ -64,7 +56,6 @@ "ButtonManualLogin": "Manuální přihlášení", "ButtonMore": "Více", "ButtonNetwork": "Síť", - "ButtonNew": "Nové", "ButtonNextTrack": "Následující stopa", "ButtonOff": "Vypnout", "ButtonOpen": "Otevřít", @@ -87,17 +78,14 @@ "ButtonSelectView": "Výběr zobrazení", "ButtonSend": "Odeslat", "ButtonSettings": "Nastavení", - "ButtonShuffle": "Náhodně", "ButtonShutdown": "Vypnout", "ButtonSignIn": "Přihlásit se", "ButtonSignOut": "Odhlásit se", - "ButtonSort": "Seřadit", "ButtonStop": "Zastavit", "ButtonSubmit": "Potvrdit", "ButtonSubtitles": "Titulky", "ButtonTrailer": "Upoutávka", "ButtonUninstall": "Odinstalovat", - "ButtonUp": "Zesílit", "ButtonWebsite": "Webové stránky", "CancelRecording": "Zrušit nahrávání", "CancelSeries": "Ukončit Seriál", @@ -155,7 +143,6 @@ "Edit": "Upravit", "EditImages": "Editovat obrázky", "EditSubtitles": "Editovat titulky", - "EnableBackdrops": "Povolit pozadí", "EnableBackdropsHelp": "Pokud je povoleno, pozadí je zobrazeno pro některé stránky při procházení vaší knihovny.", "EnableCinemaMode": "Režim Cinema", "EnableColorCodedBackgrounds": "Barevně označené pozadí", @@ -223,7 +210,6 @@ "HeaderAdditionalParts": "Další součásti", "HeaderAdmin": "Administrátor", "HeaderAlbumArtists": "Umělci alba", - "HeaderAlbums": "Alba", "HeaderAlert": "Upozornění", "HeaderApiKey": "Klíč Api", "HeaderApiKeys": "Klíče API", @@ -238,7 +224,6 @@ "HeaderCastAndCrew": "Herci a obsazení", "HeaderCastCrew": "Herci a obsazení", "HeaderChannelAccess": "Přístup ke kanálu", - "HeaderChannels": "Kanály", "HeaderCodecProfile": "Profil kodeků", "HeaderCodecProfileHelp": "Kodek profily označují omezení daného zařízení pro přehrávání pomocí specifických kodeků. Jestliže je omezení aplikováno, média budou překódovany i v případě, že kodek je nakonfigurován pro přímé přehrávání.", "HeaderConfirmPluginInstallation": "Potvrzení instalace zásuvného modulu", @@ -274,7 +259,6 @@ "HeaderForKids": "Pro děti", "HeaderForgotPassword": "Zapomenuté heslo", "HeaderFrequentlyPlayed": "Nejčastěji přehráváno", - "HeaderGenres": "Žánry", "HeaderGuideProviders": "Poskytovatelé programových průvodců", "HeaderHttpHeaders": "Http hlavičky", "HeaderIdentification": "Identifikace", @@ -284,7 +268,6 @@ "HeaderImageSettings": "Nastavení obrázků", "HeaderInstall": "Instalovat", "HeaderInstantMix": "Okamžité míchání", - "HeaderItems": "Položky", "HeaderKeepRecording": "Udržet nahrávání", "HeaderKeepSeries": "Udržet seriál", "HeaderLatestEpisodes": "Nejnovější díly", @@ -303,7 +286,6 @@ "HeaderMediaInfo": "Informace o médiu", "HeaderMetadataSettings": "Nastavení metadat", "HeaderMoreLikeThis": "Podobné položky", - "HeaderMovies": "Filmy", "HeaderMusicQuality": "Kvalita hudby", "HeaderMusicVideos": "Hudební videa", "HeaderMyDevice": "Moje zařízení", @@ -359,7 +341,6 @@ "HeaderServerSettings": "Nastavení serveru", "HeaderSettings": "Nastavení", "HeaderSetupLibrary": "Nastavení Vašich knihoven médií", - "HeaderShutdown": "Vypnout", "HeaderSortBy": "Třídit dle", "HeaderSortOrder": "Pořadí třídění", "HeaderSpecialEpisodeInfo": "Infromace o speciální epizodě", @@ -390,7 +371,6 @@ "HeaderXmlDocumentAttributes": "Atributy XML dokumentu", "HeaderXmlSettings": "Nastavení XML", "HeaderYears": "Roky", - "HeadersFolders": "Složky", "Help": "Nápověda", "Hide": "Skrýt", "HideWatchedContentFromLatestMedia": "Skrýt přehrané položky ze seznamu nejnovějších médií", @@ -583,7 +563,6 @@ "LabelNewPassword": "Nové heslo:", "LabelNewPasswordConfirm": "Potvrzení hesla:", "LabelNewsCategories": "Nové kategorie:", - "LabelNext": "Další", "LabelNotificationEnabled": "Povolit toto oznámení", "LabelNumber": "Číslo:", "LabelNumberOfGuideDays": "Počet dnů programového průvodce ke stažení:", @@ -607,7 +586,6 @@ "LabelPreferredDisplayLanguage": "Preferovaný jazyk zobrazení:", "LabelPreferredDisplayLanguageHelp": "Překlad projektu Jellyfin se neustále vyvíjí.", "LabelPreferredSubtitleLanguage": "Preferovaný jazyk titulků:", - "LabelPrevious": "Předchozí", "LabelProfileAudioCodecs": "Audio kodeky:", "LabelProfileCodecs": "Kodeky:", "LabelProfileCodecsHelp": "Odděl čárkou. Pokud ponecháte prázdné, aplikují se všechny kodeky.", @@ -621,7 +599,6 @@ "LabelPublicHttpPortHelp": "Číslo veřejného portu, které by mělo být mapováno na místní port HTTP.", "LabelPublicHttpsPort": "Veřejný HTTPS port:", "LabelPublicHttpsPortHelp": "Číslo veřejného portu, které by mělo být mapováno na místní port HTTPS.", - "LabelReadHowYouCanContribute": "Zjistěte, jak můžete přispět.", "LabelRecord": "Záznam:", "LabelRecordingPath": "Standardní složka pro nahrávání:", "LabelRecordingPathHelp": "Určete výchozí umístění pro uložení nahrávky. Pokud je ponecháno prázdné, budou použity složky programu na serveru (data).", @@ -802,7 +779,6 @@ "MessageNoNextUpItems": "Nic nenalezeno. Začněte sledovat Vaše oblíbené seriály!", "MessageNoPluginConfiguration": "Tento zásuvný modul nemá žádné nastavení.", "NoSubtitleSearchResultsFound": "Žádné výsledky.", - "NoSubtitles": "Žádné", "NoSubtitlesHelp": "Ve výchozím nastavení nebudou titulky načteny. Během přehrávání však mohou být manuálně zapnuty.", "None": "Žádný", "Normal": "Normální", @@ -1051,21 +1027,13 @@ "TabAccess": "Přístup", "TabAdvanced": "Pokročilé", "TabAlbumArtists": "Umělci alba", - "TabAlbums": "Alba", "TabCatalog": "Katalog", - "TabChannels": "Kanály", "TabCodecs": "Kodeky", - "TabCollections": "Kolekce", "TabContainers": "Obaly", "TabDashboard": "Nástěnka", - "TabDevices": "Zařízení", "TabEpisodes": "Epizody", - "TabFavorites": "Oblíbené", - "TabGenres": "Žánry", - "TabGuide": "Programový průvodce", "TabLatest": "Nejnovější", "TabLogs": "Záznamy", - "TabMovies": "Filmy", "TabMusic": "Hudba", "TabMusicVideos": "Hudební videa", "TabMyPlugins": "Moje zásuvné moduly", @@ -1085,8 +1053,6 @@ "TabScheduledTasks": "Naplánované úlohy", "TabSeries": "Série", "TabSettings": "Nastavení", - "TabShows": "Seriály", - "TabSongs": "Skladby", "TabStreaming": "Streamování", "TabTrailers": "Upoutávky", "TabUpcoming": "Nadcházející", @@ -1464,7 +1430,6 @@ "HeaderHttpsSettings": "Nastavení HTTPS", "LabelRequireHttpsHelp": "Server automaticky přesměruje všechny požadavky z HTTP na HTTPS. Pokud server nenaslouchá na portu HTTPS, tato funkce nemá žádný účinek.", "LabelRequireHttps": "Vyžadovat HTTPS", - "TabDVR": "Nahrávání", "HeaderDVR": "Nahrávání", "SaveChanges": "Uložit změny", "LabelSyncPlayPlaybackDiff": "Rozdíl v době přehrávání:", diff --git a/src/strings/da.json b/src/strings/da.json index 7e4721a42b..e5c8655645 100644 --- a/src/strings/da.json +++ b/src/strings/da.json @@ -23,7 +23,6 @@ "AroundTime": "Omkring {0}", "AsManyAsPossible": "Så mange som muligt", "AspectRatio": "Billedformat", - "AttributeNew": "Ny", "Audio": "Lyd", "BirthDateValue": "Født: {0}", "BirthLocation": "Fødselslokation", @@ -35,19 +34,12 @@ "ButtonAddScheduledTaskTrigger": "Tilføj udløser", "ButtonAddServer": "Tilføj Server", "ButtonAddUser": "Tilføj bruger", - "ButtonArrowDown": "Ned", "ButtonArrowLeft": "Venstre", "ButtonArrowRight": "Højre", - "ButtonArrowUp": "Op", "ButtonAudioTracks": "Lysspor", "ButtonBack": "Tilbage", "ButtonCancel": "Annuller", "ButtonChangeServer": "Skift server", - "ButtonConnect": "Forbind", - "ButtonDelete": "Slet", - "ButtonDeleteImage": "Slet billede", - "ButtonDown": "Ned", - "ButtonDownload": "Hent", "ButtonEdit": "Rediger", "ButtonEditImages": "Rediger billeder", "ButtonEditOtherUserPreferences": "Rediger denne brugers profil, billede og personlige indstillinger.", @@ -59,7 +51,6 @@ "ButtonManualLogin": "Manuel Login", "ButtonMore": "Mere", "ButtonNetwork": "Netværk", - "ButtonNew": "Ny", "ButtonNextTrack": "Næste spor", "ButtonOff": "Fra", "ButtonOpen": "Åben", @@ -82,15 +73,12 @@ "ButtonSelectServer": "Vælg server", "ButtonSelectView": "Vælg visning", "ButtonSettings": "Indstillinger", - "ButtonShuffle": "Bland", "ButtonShutdown": "Luk", "ButtonSignIn": "Log Ind", "ButtonSignOut": "Log ud", - "ButtonSort": "Sortér", "ButtonSubmit": "Indsend", "ButtonSubtitles": "Undertekster", "ButtonUninstall": "Afinstaller", - "ButtonUp": "Op", "ButtonWebsite": "Hjemmeside", "CancelRecording": "Annuller optagelse", "CancelSeries": "Annuller serie", @@ -200,7 +188,6 @@ "HeaderCastAndCrew": "Medvirkende", "HeaderCastCrew": "Medvirkende", "HeaderChannelAccess": "Adgang til kanaler", - "HeaderChannels": "Kanaler", "HeaderChapterImages": "Kapitel Billeder", "HeaderCodecProfile": "Codec profil", "HeaderCodecProfileHelp": "Codec profiler angiver begrænsninger på en enhed for et specifikt codec. Hvis en begrænsning nås, vil indholdet blive transkodet, selv om codec'et er angivet til direkte afspilning.", @@ -240,7 +227,6 @@ "HeaderForKids": "For Børn", "HeaderForgotPassword": "Glemt adgangskode", "HeaderFrequentlyPlayed": "Ofte afspillet", - "HeaderGenres": "Genrer", "HeaderGuideProviders": "Guide Udbydere", "HeaderHttpHeaders": "HTTP Headers", "HeaderIdentification": "Identifikation", @@ -251,7 +237,6 @@ "HeaderImageSettings": "Billedindstillinger", "HeaderInstall": "Installer", "HeaderInstantMix": "Øjeblikkelig Mix", - "HeaderItems": "Element", "HeaderKeepRecording": "Bevar Optagelse", "HeaderKeepSeries": "Bevar Serie", "HeaderKodiMetadataHelp": "For at aktivere eller deaktivere NFO-metadata skal du redigere et bibliotek i Jellyfin-biblioteksopsætningen og finde afsnittet om metadata.", @@ -271,7 +256,6 @@ "HeaderMediaInfo": "Medieinformation", "HeaderMetadataSettings": "Indstillinger for metadata", "HeaderMoreLikeThis": "Mere Som Denne", - "HeaderMovies": "Film", "HeaderMusicVideos": "Musikvideoer", "HeaderMyDevice": "Min Enhed", "HeaderMyMedia": "Mine medier", @@ -324,7 +308,6 @@ "HeaderServerSettings": "Serverindstillinger", "HeaderSettings": "Indstillinger", "HeaderSetupLibrary": "Opsæt dine mediebiblioteker", - "HeaderShutdown": "Luk", "HeaderSortBy": "Sorter Efter", "HeaderSortOrder": "Sorteringsorden", "HeaderSpecialEpisodeInfo": "Information om specialepisoder", @@ -353,7 +336,6 @@ "HeaderXmlDocumentAttributes": "XML dokumentattributter", "HeaderXmlSettings": "XML indstillinger", "HeaderYears": "År", - "HeadersFolders": "Mapper", "Help": "Hjælp", "HttpsRequiresCert": "For at aktivere sikre forbindelser, skal du angive et betroet SSL certifikat, såsom Let's Encrypt. Venligst angiv et certifikat eller deaktiver sikre forbindelser.", "Identify": "Identificer", @@ -541,7 +523,6 @@ "LabelNewPassword": "Ny kode:", "LabelNewPasswordConfirm": "Gentag ny adgangskode:", "LabelNewsCategories": "Nyhedskategorier:", - "LabelNext": "Næste", "LabelNotificationEnabled": "Aktiver denne underretning", "LabelNumber": "Nummer:", "LabelNumberOfGuideDays": "Antal dage af programguide data der skal hentes:", @@ -567,7 +548,6 @@ "LabelPostProcessorArgumentsHelp": "Benyt {path} som stien til optagelsesfilen.", "LabelPreferredDisplayLanguage": "Foretrukket sprog til visning:", "LabelPreferredDisplayLanguageHelp": "Oversættelse af Jellyfin er et løbende projekt.", - "LabelPrevious": "Forrige", "LabelProfileAudioCodecs": "Lyd codecs:", "LabelProfileCodecsHelp": "Adskil med komma. Kan efterlades tom for at gælde for alle codecs.", "LabelProfileContainersHelp": "Adskil med komma. Kan efterlades tom for at gælde for alle containere.", @@ -578,7 +558,6 @@ "LabelPublicHttpPortHelp": "Det offentlige portnummer som bliver knyttet til det lokale HTTP-portnummer.", "LabelPublicHttpsPort": "Offentligt HTTPS portnummer:", "LabelPublicHttpsPortHelp": "Det offentlige portnummer som bliver knyttet til det lokale HTTPS portnummer.", - "LabelReadHowYouCanContribute": "Lær hvordan du kan bidrage.", "LabelRecord": "Optag:", "LabelRecordingPath": "Standard afspilningssti:", "LabelRecordingPathHelp": "Angiv standard-lokationen til at gemme afspilninger. Hvis efterladt blankt, benyttes serverens programdata-mappe.", @@ -966,17 +945,11 @@ "TabAdvanced": "Avanceret", "TabAlbumArtists": "Album-artister", "TabCatalog": "Katalog", - "TabChannels": "Kanaler", - "TabCollections": "Samlinger", "TabContainers": "Containere", "TabDashboard": "Betjeningspanel", - "TabDevices": "Enheder", "TabDirectPlay": "Direkte afspilning", "TabEpisodes": "Episoder", - "TabFavorites": "Favoritter", - "TabGenres": "Genre", "TabLatest": "Seneste", - "TabMovies": "Film", "TabMusic": "Musik", "TabMusicVideos": "Musikvideoer", "TabMyPlugins": "Mine tilføjelser", @@ -996,8 +969,6 @@ "TabScheduledTasks": "Planlagte opgaver", "TabSeries": "Serier", "TabSettings": "Indstillinger", - "TabShows": "Serier", - "TabSongs": "Sange", "TabTrailers": "Trailere", "TabUpcoming": "Kommende", "TabUsers": "Brugere", @@ -1114,7 +1085,6 @@ "DownloadsValue": "{0} hentninger", "DropShadow": "Drop Skygge", "EditMetadata": "Redigér metadata", - "EnableBackdrops": "Baggrundsbilleder", "EnableBackdropsHelp": "Vis baggrundsbilleder i baggrunden af nogle sider mens man gennemser biblioteket.", "EnableDisplayMirroring": "Visning afspejling", "EnableExternalVideoPlayers": "Eksterne video afspillere", @@ -1137,7 +1107,6 @@ "Guide": "Vejledning", "GuideProviderLogin": "Log Ind", "HeaderAdmin": "Admin", - "HeaderAlbums": "Albummer", "HeaderApp": "App", "HeaderAppearsOn": "Forekommer I", "HeaderAudioBooks": "Lydbøger", @@ -1248,7 +1217,6 @@ "Mobile": "Mobil", "Next": "Næste", "No": "Nej", - "NoSubtitles": "Ingen undertekster", "NoSubtitlesHelp": "Undertekster vil ikke blive indlæst som standard. De kan slåes til manuelt under afspilning.", "None": "Ingen", "Normal": "Normalt", @@ -1310,9 +1278,7 @@ "SubtitleAppearanceSettingsDisclaimer": "Disse indstillinger bliver ikke aktiveret på grafiske undertekster (PGS, DVD, etc) eller ASS/SSA undertekster der har deres egen indbyggede stil.", "Suggestions": "Forslag", "TV": "TV", - "TabAlbums": "Albummer", "TabCodecs": "Codeks", - "TabGuide": "Vejledning", "TabInfo": "Information", "TabLiveTV": "Live TV", "TabLogs": "Log", diff --git a/src/strings/de.json b/src/strings/de.json index 40035d6a45..2e28c73d2f 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -34,7 +34,6 @@ "AsManyAsPossible": "So viele wie möglich", "Ascending": "Aufsteigend", "AspectRatio": "Seitenverhältnis", - "AttributeNew": "Neu", "Backdrop": "Hintergrund", "Backdrops": "Hintergründe", "BirthDateValue": "Geboren: {0}", @@ -50,18 +49,12 @@ "ButtonAddScheduledTaskTrigger": "Auslöser hinzufügen", "ButtonAddServer": "Server hinzufügen", "ButtonAddUser": "User hinzufügen", - "ButtonArrowDown": "Ab", "ButtonArrowLeft": "Links", "ButtonArrowRight": "Rechts", - "ButtonArrowUp": "Auf", "ButtonAudioTracks": "Audiospuren", "ButtonBack": "Zurück", "ButtonCancel": "Abbrechen", "ButtonChangeServer": "Wechsel Server", - "ButtonConnect": "Verbinde", - "ButtonDelete": "Löschen", - "ButtonDeleteImage": "Lösche Bild", - "ButtonDown": "Runter", "ButtonEdit": "Bearbeiten", "ButtonEditImages": "Bearbeite Bilder", "ButtonEditOtherUserPreferences": "Bearbeite dieses Benutzerprofil, das Benutzerbild und die persönlichen Einstellungen.", @@ -73,7 +66,6 @@ "ButtonManualLogin": "Manuelle Anmeldung", "ButtonMore": "Mehr", "ButtonNetwork": "Netzwerk", - "ButtonNew": "Neu", "ButtonNextTrack": "Nächstes Stück", "ButtonOff": "Ausschalten", "ButtonOpen": "Öffnen", @@ -97,16 +89,13 @@ "ButtonSelectView": "Ansicht wählen", "ButtonSend": "senden", "ButtonSettings": "Einstellungen", - "ButtonShuffle": "Zufallswiedergabe", "ButtonShutdown": "Herunterfahren", "ButtonSignIn": "Einloggen", "ButtonSignOut": "Abmelden", - "ButtonSort": "Sortieren", "ButtonStop": "Stopp", "ButtonSubmit": "Bestätigen", "ButtonSubtitles": "Untertitel", "ButtonUninstall": "Deinstallieren", - "ButtonUp": "Hoch", "CancelRecording": "Aufnahme abbrechen", "CancelSeries": "Serien abbrechen", "Categories": "Kategorien", @@ -174,7 +163,6 @@ "EditImages": "Bearbeite Bilder", "EditMetadata": "Bearbeite Metadaten", "EditSubtitles": "Untertitel bearbeiten", - "EnableBackdrops": "Hintergründe", "EnableBackdropsHelp": "Zeige während des Browsens durch die Bibliothek auf einigen Seiten passende Hintergründe an.", "EnableCinemaMode": "Kino-Modus", "EnableColorCodedBackgrounds": "Farbige Hintergründe", @@ -249,7 +237,6 @@ "HeaderAddUser": "Benutzer anlegen", "HeaderAdditionalParts": "Zusätzliche Teile", "HeaderAlbumArtists": "Album-Interpreten", - "HeaderAlbums": "Alben", "HeaderAlert": "Alarm", "HeaderAllowMediaDeletionFrom": "Erlaube Medienlöschung von", "HeaderApiKey": "API-Schlüssel", @@ -266,7 +253,6 @@ "HeaderCastAndCrew": "Besetzung & Mitwirkende", "HeaderCastCrew": "Besetzung & Crew", "HeaderChannelAccess": "Channelzugriff", - "HeaderChannels": "Kanäle", "HeaderChapterImages": "Kapitel Bilder", "HeaderCodecProfile": "Codec Profil", "HeaderCodecProfileHelp": "Codec Profile weisen auf Beschränkungen eines Gerätes beim Abspielen bestimmter Codecs hin. Wenn eine Beschränkung zutrifft, dann werden Medien transcodiert, auch wenn der Codec für die Direktwiedergabe konfiguriert ist.", @@ -317,7 +303,6 @@ "HeaderImageSettings": "Bild Einstellungen", "HeaderInstall": "Installieren", "HeaderInstantMix": "Schnellmix", - "HeaderItems": "Inhalte", "HeaderKeepRecording": "Aufnahme behalten", "HeaderKeepSeries": "Serie behalten", "HeaderKodiMetadataHelp": "Um NFO Metadaten zu aktivieren oder deaktivieren, bearbeite eine Bibliothek und mache den Metadaten-Speicherer Abschnitt ausfindig.", @@ -340,7 +325,6 @@ "HeaderMediaInfo": "Medieninformation", "HeaderMetadataSettings": "Metadaten Einstellungen", "HeaderMoreLikeThis": "Mehr wie dieses", - "HeaderMovies": "Filme", "HeaderMusicQuality": "Musikqualität", "HeaderMusicVideos": "Musikvideos", "HeaderMyDevice": "Mein Gerät", @@ -400,7 +384,6 @@ "HeaderServerSettings": "Server Einstellungen", "HeaderSettings": "Einstellungen", "HeaderSetupLibrary": "Medienbibliotheken einrichten", - "HeaderShutdown": "Herunterfahren", "HeaderSortBy": "Sortiert nach", "HeaderSortOrder": "Sortierreihenfolge", "HeaderSpecialEpisodeInfo": "Spezialepisoden Information", @@ -432,7 +415,6 @@ "HeaderXmlDocumentAttributes": "XML-Dokument Eigenschaften", "HeaderXmlSettings": "XML Einstellungen", "HeaderYears": "Jahre", - "HeadersFolders": "Verzeichnisse", "Help": "Hilfe", "Hide": "Verstecke", "HideWatchedContentFromLatestMedia": "Verberge gesehene Inhalte von neuesten Medien", @@ -640,7 +622,6 @@ "LabelNewPassword": "Neues Passwort:", "LabelNewPasswordConfirm": "Neues Passwort wiederholen:", "LabelNewsCategories": "Nachrichtenkategorien:", - "LabelNext": "Nächstes", "LabelNotificationEnabled": "Aktiviere diese Benachrichtigung", "LabelNumber": "Nummer:", "LabelNumberOfGuideDays": "Anzahl von Tagen für die Programminformationen geladen werden sollen:", @@ -667,7 +648,6 @@ "LabelPreferredDisplayLanguage": "Bevorzugte Anzeigesprache:", "LabelPreferredDisplayLanguageHelp": "Die Übersetzung von Jellyfin ist ein laufendes Projekt.", "LabelPreferredSubtitleLanguage": "Bevorzugte Untertitelsprache:", - "LabelPrevious": "Vorheriges", "LabelProfileAudioCodecs": "Audio Codecs:", "LabelProfileCodecsHelp": "Getrennt durch Komma. Leerlassen, um auf alle Codecs anzuwenden.", "LabelProfileContainersHelp": "Getrennt durch Komma. Leerlassen, um auf alle Containerformate anzuwenden.", @@ -679,7 +659,6 @@ "LabelPublicHttpPortHelp": "Die öffentliche Portnummer sollte einem lokalen HTTP Port zugewiesen werden.", "LabelPublicHttpsPort": "Öffentliche HTTPS Portnummer:", "LabelPublicHttpsPortHelp": "Die öffentliche Portnummer sollte einem lokalen HTTPS Port zugewiesen werden.", - "LabelReadHowYouCanContribute": "Erfahren Sie, wie Sie unterstützen können.", "LabelReasonForTranscoding": "Grund für die Transkodierung:", "LabelRecord": "Aufnahme:", "LabelRecordingPath": "Standard Aufnahmepfad:", @@ -871,7 +850,6 @@ "MessageNoNextUpItems": "Es wurde nichts gefunden. Schau dir deine Shows an!", "MessageNoPluginConfiguration": "Dieses Plugin hat keine konfigurierbaren Einstellungen.", "NoSubtitleSearchResultsFound": "Keine Ergebnisse gefunden.", - "NoSubtitles": "Keine", "NoSubtitlesHelp": "Untertitel werden standardmäßig nicht geladen. Sie können aber während der Wiedergabe manuell aktiviert werden.", "None": "Keines", "NumLocationsValue": "{0} Verzeichnisse", @@ -1129,20 +1107,13 @@ "TabAccess": "Zugang", "TabAdvanced": "Erweitert", "TabAlbumArtists": "Album-Interpreten", - "TabAlbums": "Alben", "TabCatalog": "Katalog", - "TabChannels": "Kanäle", - "TabCollections": "Sammlungen", "TabContainers": "Container", "TabDashboard": "Übersicht", - "TabDevices": "Geräte", "TabDirectPlay": "Direktwiedergabe", "TabEpisodes": "Episoden", - "TabFavorites": "Favoriten", - "TabGuide": "Programm", "TabLatest": "Neueste", "TabLiveTV": "Live-TV", - "TabMovies": "Filme", "TabMusic": "Musik", "TabMusicVideos": "Musikvideos", "TabMyPlugins": "Meine Plugins", @@ -1161,7 +1132,6 @@ "TabScheduledTasks": "Geplante Aufgaben", "TabSeries": "Serie", "TabSettings": "Einstellungen", - "TabShows": "Serien", "TabTrailers": "Trailer", "TabUpcoming": "Bevorstehend", "TabUsers": "Benutzer", @@ -1226,7 +1196,6 @@ "Auto": "Auto", "Banner": "Banner", "Blacklist": "Sperrliste", - "ButtonDownload": "Download", "ButtonFilter": "Filter", "ButtonHome": "Startseite", "ButtonOk": "Ok", @@ -1246,7 +1215,6 @@ "Genres": "Genres", "HeaderAdmin": "Admin", "HeaderApp": "App", - "HeaderGenres": "Genres", "HeaderHttpHeaders": "HTTP-Header", "HeaderPluginInstallation": "Plugininstallation", "HeaderStatus": "Status", @@ -1311,12 +1279,10 @@ "Studios": "Studios", "TV": "TV", "TabCodecs": "Codecs", - "TabGenres": "Genres", "TabInfo": "Info", "TabLogs": "Protokoll", "TabPlugins": "Plugins", "TabServer": "Server", - "TabSongs": "Songs", "TabStreaming": "Streaming", "Transcoding": "Transcoding", "ValueAudioCodec": "Audiocodec: {0}", @@ -1458,7 +1424,6 @@ "LabelStable": "Stable", "LabelChromecastVersion": "Chromecast Version", "HeaderDVR": "DVR", - "TabDVR": "DVR", "SaveChanges": "Änderungen speichern", "LabelRequireHttpsHelp": "Wenn dies ausgewählt ist, leitet der Server alle Anfragen über HTTP an HTTPS weiter. Dies hat keinen Effekt, falls der Server nicht auf HTTPS hört.", "LabelRequireHttps": "Erfordere HTTPS", diff --git a/src/strings/el.json b/src/strings/el.json index d3176ae83c..1a15e1b994 100644 --- a/src/strings/el.json +++ b/src/strings/el.json @@ -29,7 +29,6 @@ "AsManyAsPossible": "Οσο το δυνατον περισσοτερα", "Ascending": "Αύξουσα", "AspectRatio": "Αναλογία απεικόνισης", - "AttributeNew": "Νέο", "Audio": "Ήχος", "Auto": "Αυτόματο", "Backdrop": "Φόντο", @@ -48,18 +47,12 @@ "ButtonAddScheduledTaskTrigger": "Προσθήκη διακόπτη", "ButtonAddServer": "Προσθήκη διακομιστή", "ButtonAddUser": "Προσθήκη χρήστη", - "ButtonArrowDown": "Κάτω", "ButtonArrowLeft": "Αριστερά", "ButtonArrowRight": "Δεξιά", - "ButtonArrowUp": "Επάνω", "ButtonAudioTracks": "Ηχητικά κομμάτια", "ButtonBack": "Πίσω", "ButtonCancel": "Ακύρωση", "ButtonChangeServer": "Αλλαγή Διακομιστή", - "ButtonConnect": "Σύνδεση", - "ButtonDelete": "Διαγραφή", - "ButtonDeleteImage": "Διαγραφή εικόνας", - "ButtonDown": "Κάτω", "ButtonEdit": "Επεξεργασία", "ButtonEditImages": "Επεξεργασία εικόνων", "ButtonEditOtherUserPreferences": "Επεξεργαστείτε το προφίλ, την εικόνα και τις προσωπικές προτιμήσεις αυτού του χρήστη.", @@ -73,7 +66,6 @@ "ButtonLibraryAccess": "Πρόσβαση στη βιβλιοθήκη", "ButtonManualLogin": "Χειροκίνητη Είσοδος", "ButtonMore": "Περισσότερα", - "ButtonNew": "Νέο", "ButtonNextTrack": "Επομενο", "ButtonOpen": "Άνοιγμα", "ButtonParentalControl": "Γονικός έλεγχος", @@ -97,18 +89,15 @@ "ButtonSelectView": "Επιλέξτε Προβολή", "ButtonSend": "Αποστολή", "ButtonSettings": "Ρυθμίσεις", - "ButtonShuffle": "Τυχαία Αναπαραγωγή", "ButtonShutdown": "Απενεργοποίηση", "ButtonSignIn": "Είσοδος", "ButtonSignOut": "Έξοδος", - "ButtonSort": "Ταξινόμηση", "ButtonStart": "Έναρξη", "ButtonStop": "Διακοπή", "ButtonSubmit": "υποβολή", "ButtonSubtitles": "Υπότιτλοι", "ButtonTrailer": "Τρέϊλερ", "ButtonUninstall": "Απεγκατάσταση", - "ButtonUp": "Επάνω", "ButtonWebsite": "Ιστοσελίδα", "CancelRecording": "Ακύρωση Εγγραφής", "CancelSeries": "Ακύρωση Σειράς", @@ -179,7 +168,6 @@ "EditImages": "Επεξεργασία εικόνων", "EditMetadata": "Επεξεργασία μεταδεδομένων", "EditSubtitles": "Επεξεργασία υποτίτλων", - "EnableBackdrops": "Ενεργοποίηση Σκηνικών", "EnableBackdropsHelp": "Eμφάνιση φόντων στο παρασκήνιο ορισμένων σελίδων κατά την περιήγηση στη βιβλιοθήκη.", "EnableCinemaMode": "Λειτουργία Κινηματογράφου", "EnableColorCodedBackgrounds": "Ενεργοποιήστε τα έγχρωμα κωδικοποιημένα φόντα", @@ -258,7 +246,6 @@ "HeaderCancelSeries": "Ακύρωση Σειράς", "HeaderCastAndCrew": "Ηθοποιοί και Συνεργείο", "HeaderCastCrew": "Ηθοποιοί και συνεργείο", - "HeaderChannels": "Κανάλια", "HeaderCodecProfileHelp": "Τα προφίλ κωδικοποιητή υποδεικνύουν τους περιορισμούς μιας συσκευής κατά την αναπαραγωγή συγκεκριμένων κωδικοποιητών. Εάν ισχύει περιορισμός, τότε τα μέσα θα κωδικοποιηθούν, ακόμα και αν ο κωδικοποιητής έχει ρυθμιστεί για άμεση αναπαραγωγή.", "HeaderConfigureRemoteAccess": "Ρύθμιση απομακρυσμένης πρόσβασης", "HeaderConfirmPluginInstallation": "Επιβεβαιώστε την εγκατάσταση της προσθήκης", @@ -292,7 +279,6 @@ "HeaderForKids": "Για τα Παιδιά", "HeaderForgotPassword": "Ξέχασα τον κωδικό", "HeaderFrequentlyPlayed": "Συχνά έπαιξε", - "HeaderGenres": "Είδη", "HeaderIdentificationCriteriaHelp": "Καταχωρήστε τουλάχιστον ένα κριτήριο αναγνώρισης.", "HeaderIdentificationHeader": "Αναγνωριστικό Header", "HeaderIdentifyItemHelp": "Πληκτρολογήστε ένα ή περισσότερα κριτήρια αναζήτησης. Κατάργηση κριτηρίων για την αύξηση των αποτελεσμάτων αναζήτησης.", @@ -300,7 +286,6 @@ "HeaderImageSettings": "Ρυθμίσεις Εικόνας", "HeaderInstall": "Εγκατάσταση", "HeaderInstantMix": "Άμεση Mix", - "HeaderItems": "Στοιχεία", "HeaderKeepRecording": "Συνέχισε την Εγγραφή", "HeaderKeepSeries": "Συνέχισε την Σειρά", "HeaderLatestEpisodes": "Τελευταία επεισόδια", @@ -321,7 +306,6 @@ "HeaderMediaInfo": "Πληροφορίες πολυμέσων", "HeaderMetadataSettings": "Ρυθμίσεις μεταδεδομένων", "HeaderMoreLikeThis": "Περισσότερα Σαν Αυτό", - "HeaderMovies": "Ταινίες", "HeaderMusicQuality": "Ποιότητα Μουσικής", "HeaderMusicVideos": "Βίντεο Μουσικής", "HeaderMyDevice": "Η Συσκευή μου", @@ -370,7 +354,6 @@ "HeaderServerSettings": "Ρυθμίσεις διακομιστή", "HeaderSettings": "Ρυθμίσεις", "HeaderSetupLibrary": "Ρυθμίστε τις βιβλιοθήκες πολυμέσων σας", - "HeaderShutdown": "Απενεργοποίηση", "HeaderSortBy": "Ταξινόμηση κατά", "HeaderSortOrder": "Σειρά ταξινόμησης", "HeaderSpecialEpisodeInfo": "Ειδικές πληροφορίες επεισοδίου", @@ -401,7 +384,6 @@ "HeaderXmlDocumentAttributes": "Χαρακτηριστικά εγγράφου Xml", "HeaderXmlSettings": "Ρυθμίσεις xml", "HeaderYears": "Χρονιές", - "HeadersFolders": "Φάκελοι", "Help": "Βοήθεια", "Hide": "Κρύψε", "HideWatchedContentFromLatestMedia": "Απόκρυψη προβληθέντων από τα πρόσφατα μέσα", @@ -577,7 +559,6 @@ "LabelNewPassword": "Νέος κωδικός πρόσβασης:", "LabelNewPasswordConfirm": "Επιβεβαίωση νέου κωδικού πρόσβασης:", "LabelNewsCategories": "Κατηγορίες ειδήσεων:", - "LabelNext": "Επόμενο", "LabelNotificationEnabled": "Ενεργοποίηση αυτής της ειδοποίησης", "LabelNumber": "Αριθμός:", "LabelNumberOfGuideDays": "Αριθμός ημερών οδηγιών για λήψη:", @@ -599,7 +580,6 @@ "LabelPreferredDisplayLanguage": "Προτιμώμενη γλώσσα εμφάνισης:", "LabelPreferredDisplayLanguageHelp": "Η μετάφραση του Jellyfin είναι ένα συνεχιζόμενο έργο.", "LabelPreferredSubtitleLanguage": "Προτεινόμενη Γλώσσα υποτίτλων:", - "LabelPrevious": "Προηγούμενο", "LabelProfileCodecsHelp": "Διαχωρίζονται με κόμμα. Αυτό μπορεί να μείνει κενό για να εφαρμοστεί σε όλα τα codecs.", "LabelProfileContainersHelp": "Διαχωρίζονται με κόμμα. Αυτό μπορεί να μείνει κενό για να εφαρμοστεί σε όλα τα containers.", "LabelProtocol": "Πρωτόκολλο:", @@ -607,7 +587,6 @@ "LabelPublicHttpPortHelp": "Ο αριθμός δημόσιας θύρας που πρέπει να αντιστοιχιστεί στην τοπική θύρα http.", "LabelPublicHttpsPort": "Αριθμός δημόσιας https θύρας:", "LabelPublicHttpsPortHelp": "Ο αριθμός δημόσιας θύρας που πρέπει να αντιστοιχιστεί στην τοπική θύρα https.", - "LabelReadHowYouCanContribute": "Μάθετε πώς μπορείτε να συμβάλλετε.", "LabelReasonForTranscoding": "Λόγος για την Κωδικοποίηση:", "LabelRecord": "Εγγραφή:", "LabelRecordingPath": "Προεπιλεγμένη διαδρομή εγγραφής:", @@ -776,7 +755,6 @@ "MessageNoNextUpItems": "Δεν βρέθηκε κανένα. Ξεκινήστε παρακολουθώντας τις εκπομπές σας!", "MessageNoPluginConfiguration": "Αυτό το plugin δεν απαιτεί ρυθμίσεις.", "NoSubtitleSearchResultsFound": "Δεν βρέθηκαν αποτελέσματα.", - "NoSubtitles": "Χωρίς Υπότιτλους", "NoSubtitlesHelp": "Οι υπότιτλοι δεν θα φορτωθούν από προεπιλογή.Μπορούν ακόμα να ενεργοποιούνται χειροκίνητα κατά την αναπαραγωγή.", "None": "Κανένα", "Normal": "Κανονικός", @@ -1018,20 +996,12 @@ "TabAccess": "Πρόσβαση", "TabAdvanced": "Για προχωρημένους", "TabAlbumArtists": "Άλμπουμ Καλλιτέχνες", - "TabAlbums": "Άλμπουμ", "TabCatalog": "Κατάλογος", - "TabChannels": "Κανάλια", - "TabCollections": "Συλλογές", "TabDashboard": "Πίνακας Ελέγχου", - "TabDevices": "Συσκευές", "TabDirectPlay": "Άμεση Αναπαραγωγή", "TabEpisodes": "Επεισόδια", - "TabFavorites": "Αγαπημένα", - "TabGenres": "Είδη", - "TabGuide": "Οδηγός", "TabInfo": "Πληροφορία", "TabLatest": "Τελευταία", - "TabMovies": "Ταινίες", "TabMusic": "Μουσική", "TabMusicVideos": "Μουσικά βίντεο", "TabMyPlugins": "Τα πρόσθετα μου", @@ -1051,8 +1021,6 @@ "TabSeries": "Σειρές", "TabServer": "Διακομιστής", "TabSettings": "Ρυθμισεις", - "TabShows": "Επεισόδια", - "TabSongs": "Τραγούδια", "TabStreaming": "Ροή", "TabTrailers": "Τρέιλερς", "TabUpcoming": "Επερχόμενα", @@ -1143,7 +1111,6 @@ "HeaderChapterImages": "Εικόνες Κεφαλαίων", "HeaderChannelAccess": "Πρόσβαση σε Κανάλια", "HeaderApp": "Εφαρμογή", - "HeaderAlbums": "Άλμπουμ", "HeaderAccessScheduleHelp": "Δημιουργήστε ένα πρόγραμμα πρόσβασης για να περιορίσετε την πρόσβαση ορισμένες ώρες.", "HeaderAccessSchedule": "Πρόγραμμα Πρόσβασης", "LabelTranscodePath": "Διαδρομή μετατροπών:", @@ -1165,7 +1132,6 @@ "ButtonOk": "Οκ", "ButtonOff": "Απενεργοποίηση", "ButtonNetwork": "Δίκτυο", - "ButtonDownload": "Κατέβασμα", "AllowOnTheFlySubtitleExtractionHelp": "Οι ενσωματωμένοι υπότιτλοι μπορούν να εξαχθούν από βίντεο και να σταλούν στις συσκευές σε απλό κείμενο για να αποφευχθούν μετατροπές βίντεο. Σε μερικά συστήματα αυτό μπορεί να πάρει πολύ ώρα και να κάνει το βίντεο να κολλάει κατά την διάρκεια της εξαγωγής. Απενεργοποιήστε το για να έχετε ενσωματωμένους υπότιτλους πάνω στο βίντεο όταν αυτοί δεν υποστηρίζονται από την συσκευή.", "AllowOnTheFlySubtitleExtraction": "Επίτρεψε την εξαγωγή υποτίτλων σε πραγματικό χρόνο", "AllowMediaConversionHelp": "Παραχώρηση ή στέρηση πρόσβασης στην λειτουργία μετατροπής μέσων.", diff --git a/src/strings/en-gb.json b/src/strings/en-gb.json index f2fc6e7764..2714f21147 100644 --- a/src/strings/en-gb.json +++ b/src/strings/en-gb.json @@ -26,7 +26,6 @@ "PlaceFavoriteChannelsAtBeginning": "Place favourite channels at the beginning", "Programs": "Programs", "TabCatalog": "Catalogue", - "TabFavorites": "Favourites", "XmlTvKidsCategoriesHelp": "Programs with these categories will be displayed as programs for children. Separate multiple with '|'.", "XmlTvMovieCategoriesHelp": "Programs with these categories will be displayed as movies. Separate multiple with '|'.", "XmlTvNewsCategoriesHelp": "Programs with these categories will be displayed as news programs. Separate multiple with '|'.", @@ -83,7 +82,6 @@ "AsManyAsPossible": "As many as possible", "Ascending": "Ascending", "AspectRatio": "Aspect Ratio", - "AttributeNew": "New", "Audio": "Audio", "AuthProviderHelp": "Select an Authentication Provider to be used to authenticate this user's password.", "Auto": "Auto", @@ -103,19 +101,12 @@ "ButtonAddScheduledTaskTrigger": "Add Trigger", "ButtonAddServer": "Add Server", "ButtonAddUser": "Add User", - "ButtonArrowDown": "Down", "ButtonArrowLeft": "Left", "ButtonArrowRight": "Right", - "ButtonArrowUp": "Up", "ButtonAudioTracks": "Audio Tracks", "ButtonBack": "Back", "ButtonCancel": "Cancel", "ButtonChangeServer": "Change Server", - "ButtonConnect": "Connect", - "ButtonDelete": "Delete", - "ButtonDeleteImage": "Delete Image", - "ButtonDown": "Down", - "ButtonDownload": "Download", "ButtonEdit": "Edit", "ButtonEditImages": "Edit images", "ButtonEditOtherUserPreferences": "Edit this user's profile, image and personal preferences.", @@ -130,7 +121,6 @@ "ButtonManualLogin": "Manual Login", "ButtonMore": "More", "ButtonNetwork": "Network", - "ButtonNew": "New", "ButtonNextTrack": "Next track", "ButtonOff": "Off", "ButtonOk": "OK", @@ -156,18 +146,15 @@ "ButtonSelectView": "Select view", "ButtonSend": "Send", "ButtonSettings": "Settings", - "ButtonShuffle": "Shuffle", "ButtonShutdown": "Shutdown", "ButtonSignIn": "Sign In", "ButtonSignOut": "Sign Out", - "ButtonSort": "Sort", "ButtonStart": "Start", "ButtonStop": "Stop", "ButtonSubmit": "Submit", "ButtonSubtitles": "Subtitles", "ButtonTrailer": "Trailer", "ButtonUninstall": "Uninstall", - "ButtonUp": "Up", "ButtonWebsite": "Website", "CancelRecording": "Cancel recording", "CancelSeries": "Cancel series", @@ -234,7 +221,6 @@ "EditImages": "Edit images", "EditMetadata": "Edit metadata", "EditSubtitles": "Edit subtitles", - "EnableBackdrops": "Backdrops", "EnableBackdropsHelp": "Display backdrops in the background of some pages while browsing the library.", "EnableCinemaMode": "Cinema mode", "EnableDisplayMirroring": "Display mirroring", @@ -308,7 +294,6 @@ "HeaderAddUser": "Add User", "HeaderAdditionalParts": "Additional Parts", "HeaderAdmin": "Admin", - "HeaderAlbums": "Albums", "HeaderAlert": "Alert", "HeaderAllowMediaDeletionFrom": "Allow Media Deletion From", "HeaderApiKey": "API Key", @@ -325,7 +310,6 @@ "HeaderCastAndCrew": "Cast & Crew", "HeaderCastCrew": "Cast & Crew", "HeaderChannelAccess": "Channel Access", - "HeaderChannels": "Channels", "HeaderChapterImages": "Chapter Images", "HeaderCodecProfile": "Codec Profile", "HeaderCodecProfileHelp": "Codec profiles indicate the limitations of a device when playing specific codecs. If a limitation applies then the media will be transcoded, even if the codec is configured for direct play.", @@ -375,7 +359,6 @@ "HeaderForKids": "For Kids", "HeaderForgotPassword": "Forgot Password", "HeaderFrequentlyPlayed": "Frequently Played", - "HeaderGenres": "Genres", "HeaderGuideProviders": "TV Guide Data Providers", "HeaderHttpHeaders": "HTTP Headers", "HeaderIdentification": "Identification", @@ -386,7 +369,6 @@ "HeaderImageSettings": "Image Settings", "HeaderInstall": "Install", "HeaderInstantMix": "Instant Mix", - "HeaderItems": "Items", "HeaderKeepRecording": "Keep Recording", "HeaderKeepSeries": "Keep Series", "HeaderKodiMetadataHelp": "To enable or disable NFO metadata, edit a library in Jellyfin library setup and locate the metadata savers section.", @@ -408,7 +390,6 @@ "HeaderMediaInfo": "Media Info", "HeaderMetadataSettings": "Metadata Settings", "HeaderMoreLikeThis": "More Like This", - "HeaderMovies": "Movies", "HeaderMusicQuality": "Music Quality", "HeaderMusicVideos": "Music Videos", "HeaderMyDevice": "My Device", @@ -462,7 +443,6 @@ "Thursday": "Thursday", "ThisWizardWillGuideYou": "This wizard will help guide you through the setup process. To begin, please select your preferred language.", "TheseSettingsAffectSubtitlesOnThisDevice": "These settings affect subtitles on this device", - "TabShows": "Shows", "TabSettings": "Settings", "TabServer": "Server", "TabSeries": "Series", @@ -476,12 +456,8 @@ "TabMyPlugins": "My Plugins", "TabMusicVideos": "Music Videos", "TabMusic": "Music", - "TabMovies": "Movies", "TabLogs": "Logs", "TabDirectPlay": "Direct Play", - "TabDevices": "Devices", - "TabChannels": "Channels", - "TabAlbums": "Albums", "TabAlbumArtists": "Album Artists", "TabAdvanced": "Advanced", "TabAccess": "Access", @@ -665,7 +641,6 @@ "Normal": "Normal", "None": "None", "NoSubtitlesHelp": "Subtitles will not be loaded by default. They can still be turned on manually during playback.", - "NoSubtitles": "None", "MessageNoPluginConfiguration": "This plugin has no settings to configure.", "MessageNoNextUpItems": "None found. Start watching your shows!", "No": "No", @@ -920,7 +895,6 @@ "LabelDeviceDescription": "Device description", "LabelDefaultUserHelp": "Determines which user library should be displayed on connected devices. This can be overridden for each device using profiles.", "TabStreaming": "Streaming", - "TabSongs": "Songs", "TabProfiles": "Profiles", "TabProfile": "Profile", "TabPlugins": "Plugins", @@ -930,12 +904,9 @@ "TabLiveTV": "Live TV", "TabLatest": "Latest", "TabInfo": "Info", - "TabGuide": "Guide", - "TabGenres": "Genres", "TabEpisodes": "Episodes", "TabDashboard": "Dashboard", "TabContainers": "Containers", - "TabCollections": "Collections", "TabCodecs": "Codecs", "Sort": "Sort", "Smaller": "Smaller", @@ -958,7 +929,6 @@ "LabelSeriesRecordingPath": "Series recording path (optional):", "LabelRecordingPathHelp": "Specify the default location to save recordings. If left empty, the server's program data folder will be used.", "LabelRecordingPath": "Default recording path:", - "LabelReadHowYouCanContribute": "Learn how you can contribute.", "LabelAlbumArtMaxWidth": "Album art max width:", "LabelCustomCssHelp": "Apply your own custom styling to the web interface.", "LabelBlastMessageIntervalHelp": "Determines the duration in seconds between blast alive messages.", @@ -1010,7 +980,6 @@ "LabelParentalRating": "Parental rating:", "LabelParentNumber": "Parent number:", "LabelOptionalNetworkPath": "(Optional) Shared network folder:", - "LabelNext": "Next", "LabelNewsCategories": "News categories:", "LabelNewPasswordConfirm": "New password confirm:", "LabelNewPassword": "New password:", @@ -1158,7 +1127,6 @@ "HideWatchedContentFromLatestMedia": "Hide watched content from latest media", "Hide": "Hide", "Help": "Help", - "HeadersFolders": "Folders", "HeaderXmlSettings": "XML Settings", "HeaderXmlDocumentAttributes": "XML Document Attributes", "HeaderXmlDocumentAttribute": "XML Document Attribute", @@ -1289,7 +1257,6 @@ "ValueOneSeries": "1 series", "MediaInfoBitrate": "Bitrate", "LabelVideo": "Video", - "LabelPrevious": "Previous", "LabelPostProcessorArgumentsHelp": "Use {path} as the path to the recording file.", "LabelKodiMetadataEnableExtraThumbs": "Copy extrafanart to extrathumbs field", "LabelInternetQuality": "Internet quality:", @@ -1359,7 +1326,6 @@ "HeaderSpecialEpisodeInfo": "Special Episode Info", "HeaderSortOrder": "Sort Order", "HeaderSortBy": "Sort By", - "HeaderShutdown": "Shutdown", "HeaderSetupLibrary": "Setup your media libraries", "HeaderSettings": "Settings", "HeaderServerSettings": "Server Settings", @@ -1462,7 +1428,6 @@ "ButtonSyncPlay": "SyncPlay", "EnableBlurHashHelp": "Images that are still being loaded will be displayed with a blurred placeholder", "EnableBlurHash": "Enable blurred placeholders for images", - "TabDVR": "DVR", "TabRepositories": "Repositories", "SyncPlayAccessHelp": "Select the level of access this user has to the SyncPlay feature. SyncPlay enables to sync playback with other devices.", "ShowMore": "Show more", diff --git a/src/strings/en-us.json b/src/strings/en-us.json index 2e437b148b..355ef9c96c 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -42,7 +42,6 @@ "Ascending": "Ascending", "AskAdminToCreateLibrary": "Ask an administrator to create a library.", "AspectRatio": "Aspect Ratio", - "AttributeNew": "New", "Audio": "Audio", "AuthProviderHelp": "Select an authentication provider to be used to authenticate this user's password.", "Auto": "Auto", @@ -66,19 +65,12 @@ "ButtonAddScheduledTaskTrigger": "Add Trigger", "ButtonAddServer": "Add Server", "ButtonAddUser": "Add User", - "ButtonArrowDown": "Down", "ButtonArrowLeft": "Left", "ButtonArrowRight": "Right", - "ButtonArrowUp": "Up", "ButtonAudioTracks": "Audio Tracks", "ButtonBack": "Back", "ButtonCancel": "Cancel", "ButtonChangeServer": "Change Server", - "ButtonConnect": "Connect", - "ButtonDelete": "Delete", - "ButtonDeleteImage": "Delete Image", - "ButtonDown": "Down", - "ButtonDownload": "Download", "ButtonEdit": "Edit", "ButtonEditImages": "Edit images", "ButtonEditOtherUserPreferences": "Edit this user's profile, image and personal preferences.", @@ -93,7 +85,6 @@ "ButtonManualLogin": "Manual Login", "ButtonMore": "More", "ButtonNetwork": "Network", - "ButtonNew": "New", "ButtonNextTrack": "Next track", "ButtonOff": "Off", "ButtonOk": "Ok", @@ -119,11 +110,9 @@ "ButtonSelectView": "Select view", "ButtonSend": "Send", "ButtonSettings": "Settings", - "ButtonShuffle": "Shuffle", "ButtonShutdown": "Shutdown", "ButtonSignIn": "Sign In", "ButtonSignOut": "Sign Out", - "ButtonSort": "Sort", "ButtonStart": "Start", "ButtonStop": "Stop", "ButtonSplit": "Split", @@ -132,7 +121,6 @@ "ButtonTogglePlaylist": "Playlist", "ButtonTrailer": "Trailer", "ButtonUninstall": "Uninstall", - "ButtonUp": "Up", "ButtonWebsite": "Website", "CancelRecording": "Cancel recording", "CancelSeries": "Cancel series", @@ -210,7 +198,6 @@ "EditImages": "Edit images", "EditMetadata": "Edit metadata", "EditSubtitles": "Edit subtitles", - "EnableBackdrops": "Backdrops", "EnableBackdropsHelp": "Display backdrops in the background of some pages while browsing the library.", "EnableCinemaMode": "Cinema mode", "EnableColorCodedBackgrounds": "Color coded backgrounds", @@ -297,7 +284,6 @@ "HeaderAdditionalParts": "Additional Parts", "HeaderAdmin": "Admin", "HeaderAlbumArtists": "Album Artists", - "HeaderAlbums": "Albums", "HeaderAlert": "Alert", "HeaderAllowMediaDeletionFrom": "Allow Media Deletion From", "HeaderApiKey": "API Key", @@ -316,7 +302,6 @@ "HeaderCastAndCrew": "Cast & Crew", "HeaderCastCrew": "Cast & Crew", "HeaderChannelAccess": "Channel Access", - "HeaderChannels": "Channels", "HeaderChapterImages": "Chapter Images", "HeaderCodecProfile": "Codec Profile", "HeaderCodecProfileHelp": "Codec profiles indicate the limitations of a device when playing specific codecs. If a limitation applies then the media will be transcoded, even if the codec is configured for direct play.", @@ -369,7 +354,6 @@ "HeaderForKids": "For Kids", "HeaderForgotPassword": "Forgot Password", "HeaderFrequentlyPlayed": "Frequently Played", - "HeaderGenres": "Genres", "HeaderGuideProviders": "TV Guide Data Providers", "HeaderHome": "Home", "HeaderHttpHeaders": "HTTP Headers", @@ -382,7 +366,6 @@ "HeaderImageSettings": "Image Settings", "HeaderInstall": "Install", "HeaderInstantMix": "Instant Mix", - "HeaderItems": "Items", "HeaderKeepRecording": "Keep Recording", "HeaderKeepSeries": "Keep Series", "HeaderKodiMetadataHelp": "To enable or disable NFO metadata, edit a library and locate the metadata savers section.", @@ -405,7 +388,6 @@ "HeaderMediaInfo": "Media Info", "HeaderMetadataSettings": "Metadata Settings", "HeaderMoreLikeThis": "More Like This", - "HeaderMovies": "Movies", "HeaderMusicQuality": "Music Quality", "HeaderMusicVideos": "Music Videos", "HeaderMyDevice": "My Device", @@ -469,7 +451,6 @@ "HeaderServerSettings": "Server Settings", "HeaderSettings": "Settings", "HeaderSetupLibrary": "Setup your media libraries", - "HeaderShutdown": "Shutdown", "HeaderSortBy": "Sort By", "HeaderSortOrder": "Sort Order", "HeaderSpecialEpisodeInfo": "Special Episode Info", @@ -506,7 +487,6 @@ "HeaderXmlDocumentAttributes": "Xml Document Attributes", "HeaderXmlSettings": "Xml Settings", "HeaderYears": "Years", - "HeadersFolders": "Folders", "Help": "Help", "Hide": "Hide", "HideWatchedContentFromLatestMedia": "Hide watched content from latest media", @@ -744,7 +724,6 @@ "LabelNewPassword": "New password:", "LabelNewPasswordConfirm": "New password confirm:", "LabelNewsCategories": "News categories:", - "LabelNext": "Next", "LabelNotificationEnabled": "Enable this notification", "LabelNumber": "Number:", "LabelNumberOfGuideDays": "Number of days of guide data to download:", @@ -776,7 +755,6 @@ "LabelPreferredDisplayLanguage": "Preferred display language:", "LabelPreferredDisplayLanguageHelp": "Translating Jellyfin is an ongoing project.", "LabelPreferredSubtitleLanguage": "Preferred subtitle language:", - "LabelPrevious": "Previous", "LabelProfileAudioCodecs": "Audio codecs:", "LabelProfileCodecs": "Codecs:", "LabelProfileCodecsHelp": "Separated by comma. This can be left empty to apply to all codecs.", @@ -790,7 +768,6 @@ "LabelPublicHttpPortHelp": "The public port number that should be mapped to the local HTTP port.", "LabelPublicHttpsPort": "Public HTTPS port number:", "LabelPublicHttpsPortHelp": "The public port number that should be mapped to the local HTTPS port.", - "LabelReadHowYouCanContribute": "Learn how you can contribute.", "LabelReasonForTranscoding": "Reason for transcoding:", "LabelRecord": "Record:", "LabelRecordingPath": "Default recording path:", @@ -1073,7 +1050,6 @@ "MessageNoNextUpItems": "None found. Start watching your shows!", "MessageNoPluginConfiguration": "This plugin has no settings to configure.", "NoSubtitleSearchResultsFound": "No results found.", - "NoSubtitles": "None", "NoSubtitlesHelp": "Subtitles will not be loaded by default. They can still be turned on manually during playback.", "None": "None", "Normal": "Normal", @@ -1389,26 +1365,17 @@ "TabAccess": "Access", "TabAdvanced": "Advanced", "TabAlbumArtists": "Album Artists", - "TabAlbums": "Albums", "TabCatalog": "Catalog", "TabRepositories": "Repositories", - "TabChannels": "Channels", "TabCodecs": "Codecs", - "TabCollections": "Collections", "TabContainers": "Containers", "TabDashboard": "Dashboard", - "TabDevices": "Devices", "TabDirectPlay": "Direct Play", - "TabDVR": "DVR", "TabEpisodes": "Episodes", - "TabFavorites": "Favorites", - "TabGenres": "Genres", - "TabGuide": "Guide", "TabInfo": "Info", "TabLatest": "Latest", "TabLiveTV": "Live TV", "TabLogs": "Logs", - "TabMovies": "Movies", "TabMusic": "Music", "TabMusicVideos": "Music Videos", "TabMyPlugins": "My Plugins", @@ -1430,8 +1397,6 @@ "TabSeries": "Series", "TabServer": "Server", "TabSettings": "Settings", - "TabShows": "Shows", - "TabSongs": "Songs", "TabStreaming": "Streaming", "TabTrailers": "Trailers", "TabUpcoming": "Upcoming", diff --git a/src/strings/es-ar.json b/src/strings/es-ar.json index 6fb6907284..0ae3654a9b 100644 --- a/src/strings/es-ar.json +++ b/src/strings/es-ar.json @@ -9,8 +9,6 @@ "HeaderSeries": "Series", "LabelDisplayMissingEpisodesWithinSeasons": "Mostrar capítulos no disponibles en temporadas", "LabelFinish": "Terminar", - "LabelNext": "Siguiente", - "LabelPrevious": "Anterior", "LabelYoureDone": "Ha terminado!", "MoreUsersCanBeAddedLater": "Se pueden agregar más usuarios más tarde desde el tablero.", "NewCollectionNameExample": "Ejemplo: Colección de Star Wars", @@ -72,7 +70,6 @@ "AnyLanguage": "Cualquier idioma", "Anytime": "Cualquier fecha", "Ascending": "Ascendente", - "AttributeNew": "Nuevo", "Audio": "Audio", "Auto": "Auto", "Backdrop": "Fondo", @@ -99,19 +96,12 @@ "ButtonAddScheduledTaskTrigger": "Agregar desencadenador", "ButtonAddServer": "Agregar servidor", "ButtonAddUser": "Agregar usuario", - "ButtonArrowDown": "Abajo", "ButtonArrowLeft": "Izquierda", "ButtonArrowRight": "Derecha", - "ButtonArrowUp": "Arriba", "ButtonAudioTracks": "Pistas de audio", "ButtonBack": "Atrás", "ButtonCancel": "Cancelar", "ButtonChangeServer": "Cambiar servidor", - "ButtonConnect": "Conectar", - "ButtonDelete": "Eliminar", - "ButtonDeleteImage": "Eliminar imagen", - "ButtonDown": "Abajo", - "ButtonDownload": "Descargar", "ButtonEdit": "Editar", "ButtonEditImages": "Editar imágenes", "ButtonEditOtherUserPreferences": "Editar perfil, imagen y preferencias personales del usuario.", @@ -126,7 +116,6 @@ "ButtonManualLogin": "Inicio de sesión manual", "ButtonMore": "Más", "ButtonNetwork": "Red", - "ButtonNew": "Nuevo", "ButtonNextTrack": "Pista siguiente", "ButtonOff": "Desactivado", "ButtonOk": "Aceptar", @@ -151,17 +140,14 @@ "ButtonSelectView": "Seleccionar vista", "ButtonSend": "Enviar", "ButtonSettings": "Configuraciones", - "ButtonShuffle": "Aleatorio", "ButtonShutdown": "Apagar", "ButtonSignIn": "Iniciar sesión", - "ButtonSort": "Ordenar", "ButtonStart": "Iniciar", "ButtonStop": "Detener", "ButtonSubmit": "Enviar", "ButtonSubtitles": "Subtítulos", "ButtonTrailer": "Avance", "ButtonUninstall": "Desinstalar", - "ButtonUp": "Arriba", "ButtonWebsite": "Sitio web", "CancelRecording": "Cancelar grabación", "CancelSeries": "Cancelar serie", @@ -230,7 +216,6 @@ "EditImages": "Editar imagenes", "EditMetadata": "Editar metadata", "EditSubtitles": "Editar subtitulos", - "EnableBackdrops": "Fondos", "EnableBackdropsHelp": "Muestra imágenes de fondo en el fondo de algunas páginas mientras se navega por la biblioteca.", "EnableCinemaMode": "Modo cine", "EnableColorCodedBackgrounds": "Habilitar colores en el fondo del código", @@ -319,7 +304,6 @@ "HeaderApiKey": "Contraseña API", "HeaderAllowMediaDeletionFrom": "Permitir el borrado de medios desde", "HeaderAlert": "Alerta", - "HeaderAlbums": "Albumes", "HeaderAdmin": "Admin", "HeaderAdditionalParts": "Partes adicionales", "HeaderAddUpdateImage": "Agregar/Actualizar imagen", @@ -356,7 +340,6 @@ "HeaderCodecProfileHelp": "Los perfiles de códec indican las limitaciones de un dispositivo cuando se reproducen códecs específicos. Si se aplica una limitación, los medios se transcodificarán, incluso si el códec está configurado para reproducción directa.", "HeaderCodecProfile": "Perfil del códec", "HeaderChapterImages": "Imágenes del capitulo", - "HeaderChannels": "Canales", "HeaderChannelAccess": "Acceso al canal", "HeaderCastCrew": "Reparto", "HeaderCastAndCrew": "Reparto", @@ -402,7 +385,6 @@ "HeaderLatestMedia": "Medios recientes", "HeaderKeepSeries": "Mantener serie", "HeaderKeepRecording": "Mantener grabación", - "HeaderItems": "Artículos", "HeaderInstantMix": "Mezcla instantánea", "HeaderInstall": "Instalar", "HeaderImageSettings": "Configuraciones de imagen", @@ -414,7 +396,6 @@ "HeaderHttpHeaders": "Encabezados HTTP", "HeaderHome": "Inicio", "HeaderGuideProviders": "Proveedores de datos de guías de TV", - "HeaderGenres": "Géneros", "HeaderFrequentlyPlayed": "Reproducido con frecuencia", "HeaderForgotPassword": "Olvidé la contraseña", "HeaderForKids": "Para niños", @@ -444,7 +425,6 @@ "HeaderMyDevice": "Mi dispositivo", "HeaderMusicVideos": "Videos musicales", "HeaderMusicQuality": "Calidad de música", - "HeaderMovies": "Películas", "LabelAccessDay": "Día de la semana:", "LabelAbortedByServerShutdown": "(Abortado por el apagado del servidor)", "Label3DFormat": "Formato 3D:", @@ -462,7 +442,6 @@ "HideWatchedContentFromLatestMedia": "Ocultar contenido visto de los últimos medios", "Hide": "Ocultar", "Help": "Ayuda", - "HeadersFolders": "Carpetas", "HeaderYears": "Años", "HeaderXmlSettings": "Configuraciones Xml", "HeaderXmlDocumentAttributes": "Atributos del documento Xml", @@ -496,7 +475,6 @@ "HeaderSpecialEpisodeInfo": "Información especial del capítulo", "HeaderSortOrder": "Orden de clasificación", "HeaderSortBy": "Ordenar por", - "HeaderShutdown": "Apagar", "HeaderSetupLibrary": "Configura tus bibliotecas de medios", "HeaderSettings": "Configuraciones", "HeaderServerSettings": "Configuración del servidor", @@ -755,7 +733,6 @@ "LabelRecordingPath": "Ruta de grabación predeterminada:", "LabelRecord": "Grabar:", "LabelReasonForTranscoding": "Motivo de la transcodificación:", - "LabelReadHowYouCanContribute": "Aprende cómo puedes contribuir.", "LabelPublicHttpsPortHelp": "El número de puerto público que debe asignarse al puerto HTTPS local.", "LabelPublicHttpsPort": "Número de puerto HTTPS público:", "LabelPublicHttpPortHelp": "El número de puerto público que debe asignarse al puerto HTTP local.", @@ -892,7 +869,6 @@ "Normal": "Normal", "None": "Nunguno", "NoSubtitlesHelp": "Los subtítulos no se cargarán de manera predeterminada. Todavía se pueden activar manualmente durante la reproducción.", - "NoSubtitles": "Ninguno", "NoSubtitleSearchResultsFound": "No se han encontrado resultados.", "MessageNoPluginConfiguration": "Este complemento no tiene opciones para configurar.", "MessageNoNextUpItems": "Nada encontrado. ¡Comienza a ver tus shows!", @@ -1404,8 +1380,6 @@ "Trailers": "Avances", "TabTrailers": "Avances", "TabStreaming": "Transmisión", - "TabSongs": "Canciones", - "TabShows": "Programas", "TabSettings": "Configuraciones", "TabServer": "Servidor", "TabSeries": "Series", @@ -1427,25 +1401,16 @@ "TabMyPlugins": "Mis complementos", "TabMusicVideos": "Videos musicales", "TabMusic": "Música", - "TabMovies": "Películas", "TabLogs": "Registros", "TabLiveTV": "TV en vivo", "TabLatest": "Último", "TabInfo": "Información", - "TabGuide": "Guía", - "TabGenres": "Géneros", - "TabFavorites": "Favoritos", - "TabDVR": "DVR", "TabDirectPlay": "Reproducción directa", - "TabDevices": "Dispositivos", "TabDashboard": "Tablero", "TabContainers": "Contenedores", - "TabCollections": "Colecciones", "TabCodecs": "Códecs", - "TabChannels": "Canales", "TabRepositories": "Repositorios", "TabCatalog": "Catálogo", - "TabAlbums": "Álbumes", "TabAlbumArtists": "Artistas del álbum", "TabAdvanced": "Avanzado", "TabAccess": "Acceso", diff --git a/src/strings/es-mx.json b/src/strings/es-mx.json index 643758b660..e682b2f4cb 100644 --- a/src/strings/es-mx.json +++ b/src/strings/es-mx.json @@ -35,7 +35,6 @@ "AsManyAsPossible": "Tantos como sea posible", "Ascending": "Ascendente", "AspectRatio": "Relación de aspecto", - "AttributeNew": "Nuevo", "Backdrop": "Imagen de fondo", "Backdrops": "Imágenes de fondo", "Banner": "Banner", @@ -54,19 +53,12 @@ "ButtonAddScheduledTaskTrigger": "Agregar disparador", "ButtonAddServer": "Agregar servidor", "ButtonAddUser": "Agregar usuario", - "ButtonArrowDown": "Abajo", "ButtonArrowLeft": "Izquierda", "ButtonArrowRight": "Derecha", - "ButtonArrowUp": "Arriba", "ButtonAudioTracks": "Pistas de audio", "ButtonBack": "Atrás", "ButtonCancel": "Cancelar", "ButtonChangeServer": "Cambiar servidor", - "ButtonConnect": "Conectar", - "ButtonDelete": "Eliminar", - "ButtonDeleteImage": "Eliminar imagen", - "ButtonDown": "Abajo", - "ButtonDownload": "Descargar", "ButtonEdit": "Editar", "ButtonEditImages": "Editar imágenes", "ButtonEditOtherUserPreferences": "Editar el perfil, la imagen y las preferencias personales de este usuario.", @@ -80,7 +72,6 @@ "ButtonManualLogin": "Inicio de sesión manual", "ButtonMore": "Más", "ButtonNetwork": "Red", - "ButtonNew": "Nuevo", "ButtonNextTrack": "Pista siguiente", "ButtonOff": "Apagar", "ButtonOpen": "Abrir", @@ -105,17 +96,14 @@ "ButtonSelectView": "Seleccionar vista", "ButtonSend": "Enviar", "ButtonSettings": "Configuración", - "ButtonShuffle": "Aleatorio", "ButtonShutdown": "Apagar", "ButtonSignIn": "Iniciar sesión", "ButtonSignOut": "Cerrar sesión", - "ButtonSort": "Ordenar", "ButtonStart": "Iniciar", "ButtonStop": "Detener", "ButtonSubmit": "Enviar", "ButtonSubtitles": "Subtítulos", "ButtonUninstall": "Desinstalar", - "ButtonUp": "Arriba", "ButtonWebsite": "Sitio web", "CancelRecording": "Cancelar grabación", "CancelSeries": "Cancelar serie", @@ -188,7 +176,6 @@ "EditImages": "Editar imágenes", "EditMetadata": "Editar metadatos", "EditSubtitles": "Editar subtítulos", - "EnableBackdrops": "Imágenes de fondo", "EnableBackdropsHelp": "Muestra imágenes de fondo en el fondo de algunas páginas mientras se navega por la biblioteca.", "EnableCinemaMode": "Modo cine", "EnableColorCodedBackgrounds": "Fondos de colores codificados", @@ -266,7 +253,6 @@ "HeaderAddUser": "Agregar usuario", "HeaderAdditionalParts": "Partes adicionales", "HeaderAlbumArtists": "Artistas del álbum", - "HeaderAlbums": "Álbumes", "HeaderAlert": "Alerta", "HeaderAllowMediaDeletionFrom": "Permitir eliminación de medios de", "HeaderApiKey": "Clave API", @@ -283,7 +269,6 @@ "HeaderCastAndCrew": "Reparto y equipo", "HeaderCastCrew": "Reparto y equipo", "HeaderChannelAccess": "Acceso a los canales", - "HeaderChannels": "Canales", "HeaderChapterImages": "Imágenes de los capítulos", "HeaderCodecProfile": "Perfil de códec", "HeaderCodecProfileHelp": "Los perfiles de códecs indican las limitaciones de un dispositivo al reproducir códecs específicos. Si una limitación se aplica entonces el medio será transcodificado, incluso si el códec ha sido configurado para reproducción directa.", @@ -324,7 +309,6 @@ "HeaderForKids": "Para niños", "HeaderForgotPassword": "Olvidé mi contraseña", "HeaderFrequentlyPlayed": "Reproducido frecuentemente", - "HeaderGenres": "Géneros", "HeaderGuideProviders": "Proveedores de Guías de TV", "HeaderHttpHeaders": "Encabezados HTTP", "HeaderIdentification": "Identificación", @@ -335,7 +319,6 @@ "HeaderImageSettings": "Configuración de imagen", "HeaderInstall": "Instalar", "HeaderInstantMix": "Mix instantáneo", - "HeaderItems": "Elementos", "HeaderKeepRecording": "Conservar grabación", "HeaderKeepSeries": "Conservar serie", "HeaderKodiMetadataHelp": "Para habilitar o deshabilitar los metadatos NFO, edite una biblioteca en la configuración de bibliotecas de Jellyfin y ubica la sección grabadores de metadatos.", @@ -358,7 +341,6 @@ "HeaderMediaInfo": "Info del medio", "HeaderMetadataSettings": "Configuración de metadatos", "HeaderMoreLikeThis": "Más como esto", - "HeaderMovies": "Películas", "HeaderMusicQuality": "Calidad de la música", "HeaderMusicVideos": "Videos musicales", "HeaderMyDevice": "Mi dispositivo", @@ -419,7 +401,6 @@ "HeaderServerSettings": "Configuración del servidor", "HeaderSettings": "Configuración", "HeaderSetupLibrary": "Configura tus bibliotecas de medios", - "HeaderShutdown": "Apagar", "HeaderSortBy": "Ordenar por", "HeaderSortOrder": "Clasificar ordenado", "HeaderSpecialEpisodeInfo": "Información del episodio especial", @@ -453,7 +434,6 @@ "HeaderXmlDocumentAttributes": "Atributos del documento XML", "HeaderXmlSettings": "Configuración XML", "HeaderYears": "Años", - "HeadersFolders": "Carpetas", "Help": "Ayuda", "Hide": "Ocultar", "HideWatchedContentFromLatestMedia": "Ocultar contenido ya visto de últimos medios", @@ -668,7 +648,6 @@ "LabelNewPassword": "Contraseña nueva:", "LabelNewPasswordConfirm": "Confirmación de contraseña nueva:", "LabelNewsCategories": "Categorías de noticias:", - "LabelNext": "Siguiente", "LabelNotificationEnabled": "Habilitar esta notificación", "LabelNumber": "Número:", "LabelNumberOfGuideDays": "Número de días de datos de la programación a descargar:", @@ -695,7 +674,6 @@ "LabelPreferredDisplayLanguage": "Idioma de pantalla preferido:", "LabelPreferredDisplayLanguageHelp": "La traducción de Jellyfin es un proyecto en curso.", "LabelPreferredSubtitleLanguage": "Idioma preferido para los subtítulos:", - "LabelPrevious": "Anterior", "LabelProfileAudioCodecs": "Códecs de audio:", "LabelProfileCodecsHelp": "Separados por comas. Puede dejarse vacío para aplicarlo a todos los códecs.", "LabelProfileContainer": "Contenedor:", @@ -708,7 +686,6 @@ "LabelPublicHttpPortHelp": "El número de puerto público que debe asignarse al puerto HTTP local.", "LabelPublicHttpsPort": "Número de puerto HTTPS público:", "LabelPublicHttpsPortHelp": "El número de puerto público que debe asignarse al puerto HTTPS local.", - "LabelReadHowYouCanContribute": "Aprende cómo puedes contribuir.", "LabelReasonForTranscoding": "Motivo para transcodificar:", "LabelRecord": "Grabar:", "LabelRecordingPath": "Ruta por defecto para las grabaciones:", @@ -914,7 +891,6 @@ "MessageNoNextUpItems": "No se encontró nada. ¡Comienza a ver tus programas!", "MessageNoPluginConfiguration": "Este complemento no tiene configuraciones disponibles.", "NoSubtitleSearchResultsFound": "No se encontraron resultados.", - "NoSubtitles": "Ninguno", "NoSubtitlesHelp": "Los subtítulos no serán cargados por defecto. Pueden ser activados manualmente durante la reproducción.", "None": "Ninguno", "NumLocationsValue": "{0} carpetas", @@ -1189,22 +1165,14 @@ "TabAccess": "Acceso", "TabAdvanced": "Avanzado", "TabAlbumArtists": "Artistas del álbum", - "TabAlbums": "Álbumes", "TabCatalog": "Catálogo", - "TabChannels": "Canales", - "TabCollections": "Colecciones", "TabContainers": "Contenedores", "TabDashboard": "Panel de control", - "TabDevices": "Dispositivos", "TabDirectPlay": "Reproducción directa", "TabEpisodes": "Episodios", - "TabFavorites": "Favoritos", - "TabGenres": "Géneros", - "TabGuide": "Guía", "TabLatest": "Recientes", "TabLiveTV": "TV en vivo", "TabLogs": "Registros", - "TabMovies": "Películas", "TabMusic": "Música", "TabMusicVideos": "Videos musicales", "TabMyPlugins": "Mis complementos", @@ -1224,8 +1192,6 @@ "TabScheduledTasks": "Tareas programadas", "TabServer": "Servidor", "TabSettings": "Configuración", - "TabShows": "Programas", - "TabSongs": "Canciones", "TabStreaming": "Transmisión", "TabTrailers": "Trailers", "TabUpcoming": "Próximamente", @@ -1454,7 +1420,6 @@ "HeaderFavoritePlaylists": "Listas de reproducción favoritas", "ButtonTogglePlaylist": "Lista de reproducción", "UnsupportedPlayback": "Jellyfin no puede desencriptar contenido protegido por DRM de todas formas todo el contenido será intentado, incluyendo los títulos protegidos. Algunos archivos pueden aparecer completamente en negro debido al encriptado o características no soportadas, como títulos interactivos.", - "TabDVR": "DVR", "SaveChanges": "Guardar cambios", "LabelRequireHttpsHelp": "Si se marca, el servidor redirigirá automáticamente todas las solicitudes a través de HTTP a HTTPS. Esto no tiene efecto si el servidor no está escuchando en HTTPS.", "LabelRequireHttps": "Requerir HTTPS", diff --git a/src/strings/es.json b/src/strings/es.json index 3ee716038c..3bd59126a9 100644 --- a/src/strings/es.json +++ b/src/strings/es.json @@ -27,7 +27,6 @@ "Artists": "Artistas", "AsManyAsPossible": "Tantos como sea posible", "AspectRatio": "Relación de aspecto", - "AttributeNew": "Nuevo", "Backdrop": "Imagen de fondo", "Backdrops": "Imágenes de fondo", "BirthDateValue": "Nacido: {0}", @@ -44,19 +43,12 @@ "ButtonAddScheduledTaskTrigger": "Agregar Activador", "ButtonAddServer": "Añadir servidor", "ButtonAddUser": "Agregar Usuario", - "ButtonArrowDown": "Abajo", "ButtonArrowLeft": "Izquierda", "ButtonArrowRight": "Derecha", - "ButtonArrowUp": "Arriba", "ButtonAudioTracks": "Pistas de audio", "ButtonBack": "Atrás", "ButtonCancel": "Cancelar", "ButtonChangeServer": "Cambiar servidor", - "ButtonConnect": "Conectar", - "ButtonDelete": "Borrar", - "ButtonDeleteImage": "Borrar imagen", - "ButtonDown": "Abajo", - "ButtonDownload": "Descargar", "ButtonEdit": "Editar", "ButtonEditImages": "Editar imágenes", "ButtonEditOtherUserPreferences": "Editar este perfil, la imagen y los ajustes personales.", @@ -70,7 +62,6 @@ "ButtonManualLogin": "Acceder manualmente", "ButtonMore": "Más", "ButtonNetwork": "Red", - "ButtonNew": "Nuevo", "ButtonNextTrack": "Pista siguiente", "ButtonOff": "Apagado", "ButtonOk": "OK", @@ -96,18 +87,15 @@ "ButtonSelectView": "Seleccionar vista", "ButtonSend": "Enviar", "ButtonSettings": "Opciones", - "ButtonShuffle": "Mezclar", "ButtonShutdown": "Apagar", "ButtonSignIn": "Iniciar sesión", "ButtonSignOut": "Desconectarse", - "ButtonSort": "Ordenar", "ButtonStart": "Inicio", "ButtonStop": "Detener", "ButtonSubmit": "Enviar", "ButtonSubtitles": "Subtítulos", "ButtonTrailer": "Tráiler", "ButtonUninstall": "Desinstalar", - "ButtonUp": "Arriba", "ButtonWebsite": "Sitio web", "CancelRecording": "Cancelar grabación", "CancelSeries": "Cancelar series", @@ -236,7 +224,6 @@ "HeaderCastAndCrew": "Reparto y equipo", "HeaderCastCrew": "Reparto y equipo técnico", "HeaderChannelAccess": "Acceso a los canales", - "HeaderChannels": "Canales", "HeaderChapterImages": "Imágenes de capítulos", "HeaderCodecProfile": "Perfil de códec", "HeaderCodecProfileHelp": "Los perfiles de los códecs indican las limitaciones de un dispositivo cuando reproduce un códec en específico. Si lo que se va a reproducir no está dentro de estos límites (por ejemplo, bitrate demasiado alto), el contenido se convertirá, incluso si el códec está configurado para reproducción directa.", @@ -277,7 +264,6 @@ "HeaderForKids": "Para niños", "HeaderForgotPassword": "Contraseña olvidada", "HeaderFrequentlyPlayed": "Reproducido frecuentemente", - "HeaderGenres": "Géneros", "HeaderGuideProviders": "Proveedores de guías", "HeaderHttpHeaders": "Cabeceras HTTP", "HeaderIdentification": "Identificación", @@ -288,7 +274,6 @@ "HeaderImageSettings": "Ajustes de imagen", "HeaderInstall": "Instalar", "HeaderInstantMix": "Mezcla instantánea", - "HeaderItems": "Elementos", "HeaderKeepRecording": "Mantener grabación", "HeaderKeepSeries": "Mantener series", "HeaderKodiMetadataHelp": "Puedes activar o desactivar las etiquetas en formato NFO abriendo la configuración de una biblioteca y revisando los ajustes en la sección de etiquetas.", @@ -311,7 +296,6 @@ "HeaderMediaInfo": "Información multimedia", "HeaderMetadataSettings": "Ajustes de etiquetas", "HeaderMoreLikeThis": "Más como este", - "HeaderMovies": "Películas", "HeaderMusicVideos": "Vídeos musicales", "HeaderMyDevice": "Mi dispositivo", "HeaderMyMedia": "Mis contenidos", @@ -369,7 +353,6 @@ "HeaderServerSettings": "Ajustes del servidor", "HeaderSettings": "Ajustes", "HeaderSetupLibrary": "Configure sus bibliotecas de medios", - "HeaderShutdown": "Apagar", "HeaderSortBy": "Ordenar por", "HeaderSortOrder": "Orden", "HeaderSpecialEpisodeInfo": "Información del episodio especial", @@ -401,7 +384,6 @@ "HeaderXmlDocumentAttributes": "Atributos del documento xml", "HeaderXmlSettings": "Ajustes xml", "HeaderYears": "Años", - "HeadersFolders": "Carpetas", "Help": "Ayuda", "Hide": "Ocultar", "HideWatchedContentFromLatestMedia": "Esconder medios vistos de los medios más recientes", @@ -609,7 +591,6 @@ "LabelNewPassword": "Nueva contraseña:", "LabelNewPasswordConfirm": "Confirmación de la nueva contraseña:", "LabelNewsCategories": "Categorías de noticias:", - "LabelNext": "Siguiente", "LabelNotificationEnabled": "Activar esta notificación", "LabelNumber": "Número:", "LabelNumberOfGuideDays": "Número de días a descargar de la guía:", @@ -634,7 +615,6 @@ "LabelPreferredDisplayLanguage": "Idioma preferido visualizado:", "LabelPreferredDisplayLanguageHelp": "La traducción de Jellyfin es un proyecto en marcha.", "LabelPreferredSubtitleLanguage": "Idioma de subtítulos preferido:", - "LabelPrevious": "Anterior", "LabelProfileAudioCodecs": "Códecs de audio:", "LabelProfileCodecs": "Códecs:", "LabelProfileCodecsHelp": "Separados por comas. Esto se puede dejar vacío para aplicar a todos los códecs.", @@ -648,7 +628,6 @@ "LabelPublicHttpPortHelp": "Número de puerto público que debe ser enlazado al puerto HTTP local.", "LabelPublicHttpsPort": "Puerto público HTTPS:", "LabelPublicHttpsPortHelp": "Puerto público que debe ser enlazado al puerto local HTTPS.", - "LabelReadHowYouCanContribute": "Aprenda cómo contribuir.", "LabelReasonForTranscoding": "Motivo por el que se realiza la conversión:", "LabelRecord": "Grabar:", "LabelRecordingPath": "Ruta de grabaciones por defecto:", @@ -839,7 +818,6 @@ "MessageNoNextUpItems": "Nada encontrado. ¡Comienza a ver tus programas!", "MessageNoPluginConfiguration": "Este complemento no tiene opciones que configurar.", "NoSubtitleSearchResultsFound": "No se han encontrado resultados.", - "NoSubtitles": "Sin subtítulos", "NoSubtitlesHelp": "Los subtítulos no se cargarán de forma predeterminada. Tienen que ser activados manualmente durante la reproducción.", "None": "Nada", "NumLocationsValue": "{0} carpetas", @@ -1090,22 +1068,14 @@ "TabAccess": "Acceso", "TabAdvanced": "Avanzado", "TabAlbumArtists": "Artistas de los álbumes", - "TabAlbums": "Álbumes", "TabCatalog": "Catálogo", - "TabChannels": "Canales", "TabCodecs": "Códecs", - "TabCollections": "Colecciones", "TabContainers": "Contenedores", "TabDashboard": "Panel de control", - "TabDevices": "Dispositivos", "TabDirectPlay": "Reproducción directa", "TabEpisodes": "Episodios", - "TabFavorites": "Favoritos", - "TabGenres": "Géneros", - "TabGuide": "Guía", "TabLatest": "Novedades", "TabLiveTV": "Televisión en directo", - "TabMovies": "Películas", "TabMusic": "Música", "TabMusicVideos": "Videos musicales", "TabMyPlugins": "Mis extensiones", @@ -1124,8 +1094,6 @@ "TabScheduledTasks": "Tareas programadas", "TabServer": "Servidor", "TabSettings": "Opciones", - "TabShows": "Programas", - "TabSongs": "Canciones", "TabStreaming": "Transmisión", "TabUpcoming": "Próximos", "TabUsers": "Usuarios", @@ -1222,7 +1190,6 @@ "DisplayMissingEpisodesWithinSeasonsHelp": "Esto también debe ser habilitado para la biblioteca de TV en la configuración del servidor.", "DropShadow": "Eliminar sombra", "EditMetadata": "Editar etiquetas", - "EnableBackdrops": "Imágenes de fondo", "EnableBackdropsHelp": "Mostrar imágenes de fondo en algunas páginas mientras se explora la biblioteca.", "EnableColorCodedBackgrounds": "Fondos con código de colores", "EnableExternalVideoPlayersHelp": "Se mostrará un menú para reproductor externo cuando comience la reproducción del vídeo.", @@ -1240,7 +1207,6 @@ "GroupBySeries": "Agrupar por series", "GuideProviderLogin": "Credenciales", "HeaderAlbumArtists": "Artistas del álbum", - "HeaderAlbums": "Álbumes", "HeaderApp": "Aplicación", "HeaderAppearsOn": "Aparece en", "HeaderBranding": "Remarcado", @@ -1467,7 +1433,6 @@ "LabelRequireHttps": "Necesita HTTPS", "LabelEnableHttpsHelp": "Permite que el servidor escuche en el puerto HTTPS configurado. También se debe configurar un certificado válido para que esto surta efecto.", "LabelEnableHttps": "Activar HTTPS", - "TabDVR": "DVR", "SaveChanges": "Guardar cambios", "EnableBlurHash": "Mostrar una representación de las imágenes mientras cargan", "EnableBlurHashHelp": "Aparecerá una representación de los colores de las imágenes antes de que terminen de cargar", diff --git a/src/strings/es_419.json b/src/strings/es_419.json index 7f1702c910..815018e9c3 100644 --- a/src/strings/es_419.json +++ b/src/strings/es_419.json @@ -133,8 +133,6 @@ "TabUsers": "Usuarios", "TabUpcoming": "Próximamente", "TabStreaming": "Transmisión", - "TabSongs": "Canciones", - "TabShows": "Programas", "TabSettings": "Configuración", "TabServer": "Servidor", "TabSeries": "Series", @@ -156,22 +154,14 @@ "TabMyPlugins": "Mis complementos", "TabMusicVideos": "Videos musicales", "TabMusic": "Música", - "TabMovies": "Películas", "TabLogs": "Registros", "TabLiveTV": "TV en vivo", "TabInfo": "Información", - "TabGuide": "Guía", - "TabGenres": "Géneros", - "TabFavorites": "Favoritos", "TabEpisodes": "Episodios", - "TabDVR": "DVR", "TabDirectPlay": "Reproducción directa", - "TabDevices": "Dispositivos", "TabDashboard": "Panel de control", "TabContainers": "Contenedores", - "TabCollections": "Colecciones", "TabCodecs": "Códecs", - "TabChannels": "Canales", "TabCatalog": "Catálogo", "OptionPoster": "Póster", "OptionPlayed": "Reproducido", @@ -294,7 +284,6 @@ "Normal": "Normal", "None": "Ninguno", "NoSubtitlesHelp": "Los subtítulos no serán cargados por defecto. Pueden ser activados manualmente durante la reproducción.", - "NoSubtitles": "Ninguno", "NoSubtitleSearchResultsFound": "No se encontraron resultados.", "MessageNoPluginConfiguration": "Este complemento no tiene configuraciones disponibles.", "MessageNoNextUpItems": "No se encontró nada. ¡Comienza a ver tus programas!", @@ -682,7 +671,6 @@ "LabelRecordingPath": "Ruta por defecto para las grabaciones:", "LabelRecord": "Grabar:", "LabelReasonForTranscoding": "Motivo para transcodificar:", - "LabelReadHowYouCanContribute": "Aprende cómo puedes contribuir.", "LabelPublicHttpsPortHelp": "El número de puerto público que debe asignarse al puerto HTTPS local.", "LabelPublicHttpsPort": "Número de puerto HTTPS público:", "LabelPublicHttpPortHelp": "El número de puerto público que debe asignarse al puerto HTTP local.", @@ -696,7 +684,6 @@ "LabelProfileCodecsHelp": "Separados por comas. Puede dejarse vacío para aplicarlo a todos los códecs.", "LabelProfileCodecs": "Códecs:", "LabelProfileAudioCodecs": "Códecs de audio:", - "LabelPrevious": "Anterior", "LabelPreferredSubtitleLanguage": "Idioma preferido para los subtítulos:", "LabelPreferredDisplayLanguageHelp": "La traducción de Jellyfin es un proyecto en curso.", "LabelPreferredDisplayLanguage": "Idioma de pantalla preferido:", @@ -728,7 +715,6 @@ "LabelNumberOfGuideDays": "Número de días de datos de la programación a descargar:", "LabelNumber": "Número:", "LabelNotificationEnabled": "Habilitar esta notificación", - "LabelNext": "Siguiente", "LabelNewsCategories": "Categorías de noticias:", "LabelNewPasswordConfirm": "Confirmación de contraseña nueva:", "LabelNewPassword": "Contraseña nueva:", @@ -865,7 +851,6 @@ "LabelChannels": "Canales:", "LabelCertificatePasswordHelp": "Si tu certificado requiere una contraseña, por favor, introdúcela aquí.", "LabelCertificatePassword": "Contraseña del certificado:", - "TabAlbums": "Álbumes", "TabAlbumArtists": "Artistas del álbum", "TabAdvanced": "Avanzado", "TabAccess": "Acceso", @@ -990,7 +975,6 @@ "HideWatchedContentFromLatestMedia": "Ocultar contenido ya visto de últimos medios", "Hide": "Ocultar", "Help": "Ayuda", - "HeadersFolders": "Carpetas", "HeaderYears": "Años", "HeaderXmlSettings": "Configuración XML", "HeaderXmlDocumentAttributes": "Atributos del documento XML", @@ -1025,7 +1009,6 @@ "HeaderSpecialEpisodeInfo": "Información del episodio especial", "HeaderSortOrder": "Clasificar ordenado", "HeaderSortBy": "Ordenar por", - "HeaderShutdown": "Apagar", "HeaderSetupLibrary": "Configura tus bibliotecas de medios", "HeaderSettings": "Configuración", "HeaderServerSettings": "Configuración del servidor", @@ -1081,7 +1064,6 @@ "HeaderMyDevice": "Mi dispositivo", "HeaderMusicVideos": "Videos musicales", "HeaderMusicQuality": "Calidad de la música", - "HeaderMovies": "Películas", "HeaderMoreLikeThis": "Más como esto", "HeaderMetadataSettings": "Configuración de metadatos", "HeaderMediaInfo": "Info del medio", @@ -1103,7 +1085,6 @@ "HeaderKodiMetadataHelp": "Para habilitar o deshabilitar los metadatos NFO, edita una biblioteca y ubica la sección de grabadores de metadatos.", "HeaderKeepSeries": "Conservar serie", "HeaderKeepRecording": "Conservar grabación", - "HeaderItems": "Elementos", "HeaderInstantMix": "Mix instantáneo", "HeaderInstall": "Instalar", "HeaderImageSettings": "Configuración de imagen", @@ -1116,7 +1097,6 @@ "HeaderHttpHeaders": "Encabezados HTTP", "HeaderHome": "Inicio", "HeaderGuideProviders": "Proveedores de Guías de TV", - "HeaderGenres": "Géneros", "HeaderFrequentlyPlayed": "Reproducido frecuentemente", "HeaderForgotPassword": "Olvidé mi contraseña", "HeaderForKids": "Para niños", @@ -1201,7 +1181,6 @@ "HeaderCodecProfileHelp": "Los perfiles de códecs indican las limitaciones de un dispositivo al reproducir códecs específicos. Si una limitación se aplica entonces el medio será transcodificado, incluso si el códec ha sido configurado para reproducción directa.", "HeaderCodecProfile": "Perfil de códec", "HeaderChapterImages": "Imágenes de los capítulos", - "HeaderChannels": "Canales", "HeaderChannelAccess": "Acceso a los canales", "HeaderCastCrew": "Reparto y equipo", "HeaderCastAndCrew": "Reparto y equipo", @@ -1220,7 +1199,6 @@ "HeaderApiKey": "Clave API", "HeaderAllowMediaDeletionFrom": "Permitir eliminación de medios de", "HeaderAlert": "Alerta", - "HeaderAlbums": "Álbumes", "HeaderAdmin": "Administrador", "HeaderAdditionalParts": "Partes adicionales", "HeaderAddUser": "Agregar usuario", @@ -1301,7 +1279,6 @@ "EnableColorCodedBackgrounds": "Fondos de colores codificados", "EnableCinemaMode": "Modo cine", "EnableBackdropsHelp": "Muestra imágenes de fondo en el fondo de algunas páginas mientras se navega por la biblioteca.", - "EnableBackdrops": "Imágenes de fondo", "EditSubtitles": "Editar subtítulos", "EditMetadata": "Editar metadatos", "EditImages": "Editar imágenes", @@ -1382,7 +1359,6 @@ "CancelSeries": "Cancelar serie", "CancelRecording": "Cancelar grabación", "ButtonWebsite": "Sitio web", - "ButtonUp": "Arriba", "ButtonUninstall": "Desinstalar", "ButtonTrailer": "Trailer", "ButtonTogglePlaylist": "Lista de reproducción", @@ -1391,11 +1367,9 @@ "ButtonSplit": "Dividir", "ButtonStop": "Detener", "ButtonStart": "Iniciar", - "ButtonSort": "Ordenar", "ButtonSignOut": "Cerrar sesión", "ButtonSignIn": "Iniciar sesión", "ButtonShutdown": "Apagar", - "ButtonShuffle": "Aleatorio", "ButtonSettings": "Configuración", "ButtonSend": "Enviar", "ButtonSelectView": "Seleccionar vista", @@ -1421,7 +1395,6 @@ "ButtonOk": "OK", "ButtonOff": "Apagar", "ButtonNextTrack": "Pista siguiente", - "ButtonNew": "Nuevo", "ButtonNetwork": "Red", "ButtonMore": "Más", "ButtonManualLogin": "Inicio de sesión manual", @@ -1436,19 +1409,12 @@ "ButtonEditOtherUserPreferences": "Editar el perfil, la imagen y las preferencias personales de este usuario.", "ButtonEditImages": "Editar imágenes", "ButtonEdit": "Editar", - "ButtonDownload": "Descargar", - "ButtonDown": "Abajo", - "ButtonDeleteImage": "Eliminar imagen", - "ButtonDelete": "Eliminar", - "ButtonConnect": "Conectar", "ButtonChangeServer": "Cambiar servidor", "ButtonCancel": "Cancelar", "ButtonBack": "Atrás", "ButtonAudioTracks": "Pistas de audio", - "ButtonArrowUp": "Arriba", "ButtonArrowRight": "Derecha", "ButtonArrowLeft": "Izquierda", - "ButtonArrowDown": "Abajo", "ButtonAddUser": "Agregar usuario", "ButtonAddServer": "Agregar servidor", "ButtonAddScheduledTaskTrigger": "Agregar disparador", @@ -1470,7 +1436,6 @@ "Auto": "Auto", "AuthProviderHelp": "Selecciona el proveedor de autenticación que se utilizará para autenticar la contraseña de este usuario.", "Audio": "Audio", - "AttributeNew": "Nuevo", "AspectRatio": "Relación de aspecto", "AskAdminToCreateLibrary": "Pide a un administrador crear una biblioteca.", "Ascending": "Ascendente", diff --git a/src/strings/fa.json b/src/strings/fa.json index 5db3a657ca..a764f28998 100644 --- a/src/strings/fa.json +++ b/src/strings/fa.json @@ -7,15 +7,12 @@ "Browse": "مرور کردن", "ButtonAddUser": "افزودن کاربر", "ButtonCancel": "لغو کردن", - "ButtonDeleteImage": "حذف عکس", "ButtonFilter": "فیلتر", - "ButtonNew": "جدید", "ButtonOk": "خوب", "ButtonPlay": "پخش", "ButtonQuickStartGuide": "راهنمای شروع سریع", "ButtonResetPassword": "تنظیم مجدد رمز", "ButtonSignOut": "Sign out", - "ButtonSort": "مرتب سازی", "DeleteMedia": "حذف رسانه", "Disabled": "غیرفعال شده", "FolderTypeBooks": "کتاب‌ها", @@ -54,8 +51,6 @@ "LabelMaxParentalRating": "حداکثر امتیاز سنی مجاز والدین:", "LabelNewPassword": "رمز جدید:", "LabelNewPasswordConfirm": "تایید رمز جدید:", - "LabelNext": "بعدی", - "LabelPrevious": "قبلی", "LabelProfileCodecsHelp": "جدا شده توسط کاما این می تواند برای همه کدک ها اعمال شود.", "LabelSaveLocalMetadata": "پوستر در پوشه مدیا ذخیره گردد", "LabelSaveLocalMetadataHelp": "ذخیره ی پوستر ها داخل پوشه های رسانه، امکان ویرایش آسان آنها را در یک مکان میسر میکند.", @@ -86,9 +81,7 @@ "TabAccess": "دسترسی", "TabAdvanced": "پیشرفته", "TabAlbumArtists": "هنرمندان آلبوم", - "TabAlbums": "آلبوم ها", "TabEpisodes": "قسمت ها", - "TabGenres": "ژانرها", "TabLatest": "جدیدترین‌ها", "TabMusicVideos": "موزیک ویدیوها", "TabNetworks": "شبکه ها", @@ -96,8 +89,6 @@ "TabPassword": "رمز عبور", "TabProfile": "پروفایل", "TabProfiles": "پروفایل ها", - "TabShows": "سریال ها", - "TabSongs": "آهنگ ها", "TabUpcoming": "بزودی", "TellUsAboutYourself": "در مورد خودتان به ما بگویید", "ThisWizardWillGuideYou": "این عمل برای انجام تنظیمات به شما کمک می‌کند. برای شروع، لطفا زبان مورد نظر خود را انتخاب کنید.", @@ -134,7 +125,6 @@ "Add": "افزودن", "Actor": "بازیگر", "AccessRestrictedTryAgainLater": "دسترسی در حال حاضر محدود شده است. لطفا دوباره تلاش کنید.", - "ButtonShuffle": "مخلوط کردن", "ButtonSettings": "تنظیمات", "ButtonSend": "ارسال", "ButtonSelectView": "انتخاب نما", @@ -167,16 +157,10 @@ "ButtonForgotPassword": "فراموشی گذرواژه", "ButtonEditImages": "ویرایش عکس‌ها", "ButtonEdit": "ویرایش", - "ButtonDownload": "بارگیری", - "ButtonDown": "پایین", - "ButtonDelete": "حذف", - "ButtonConnect": "اتصال", "ButtonChangeServer": "تغییر سرور", "ButtonBack": "بازگشت", - "ButtonArrowUp": "بالا", "ButtonArrowRight": "راست", "ButtonArrowLeft": "چپ", - "ButtonArrowDown": "پایین", "ButtonAddServer": "افزودن سرور", "ButtonAddScheduledTaskTrigger": "افزودن راه انداز", "ButtonAddMediaLibrary": "افزودن کتابخانه رسانه", @@ -192,7 +176,6 @@ "Backdrop": "پس زمینه", "Auto": "خودکار", "Audio": "صدا", - "AttributeNew": "جدید", "AspectRatio": "نسبت ابعاد", "AskAdminToCreateLibrary": "از کاربر مدیر بخواهید که یک کتابخانه ایجاد کند.", "Ascending": "بالا رونده", @@ -226,7 +209,6 @@ "EnableExternalVideoPlayers": "پخش کننده ویدیوی خارجی", "EnableDisplayMirroring": "نمایش آینه", "EnableCinemaMode": "حالت سینما", - "EnableBackdrops": "پشت‌زمینه‌ها", "EditSubtitles": "ویرایش زیرنویس‌ها", "EditMetadata": "ویرایش فراداده", "EditImages": "ویرایش عکس‌ها", @@ -285,7 +267,6 @@ "CancelSeries": "لغو سریال‌ها", "CancelRecording": "لغو ضبط", "ButtonWebsite": "وبسایت", - "ButtonUp": "بالا", "ButtonUninstall": "حذف نصب", "ButtonTrailer": "تریلر", "ButtonSubtitles": "زیرنویس‌ها", @@ -326,7 +307,6 @@ "HeaderMyDevice": "دستگاه‌های من", "HeaderMusicVideos": "موزیک ویدیوها", "HeaderMusicQuality": "کیفیت آهنگ", - "HeaderMovies": "فیلم‌ها", "HeaderMoreLikeThis": "موارد مشابه با این", "HeaderMetadataSettings": "تنظیمات ابرداده", "HeaderMediaInfo": "اطلاعات رسانه", @@ -346,7 +326,6 @@ "HeaderLatestMedia": "جدیدترین‌ رسانه‌ها", "HeaderKeepSeries": "سریال ادامه دهید", "HeaderKeepRecording": "ضبط را ادامه دهید", - "HeaderItems": "آیتم‌ها", "HeaderInstall": "نصب", "HeaderImageSettings": "تنظیمات عکس", "HeaderIdentifyItemHelp": "یک یا بیشتر مورد برای جستجو وارد کنید. موارد را حذف کنید تا نتیجه جستجو را افزایش دهید.", @@ -356,7 +335,6 @@ "HeaderHttpHeaders": "سرفصل‌های HTTP", "HeaderHome": "خانه", "HeaderGuideProviders": "ارائه دهنده داده راهنمای تلویزیونی", - "HeaderGenres": "ژانرها", "HeaderFrequentlyPlayed": "اغلب پخش شده", "HeaderForgotPassword": "فراموشی گذرواژه", "HeaderForKids": "برای کودکان", @@ -388,7 +366,6 @@ "HeaderCodecProfileHelp": "نمایه‌های کدک محدودیت‌های یک دستگاه را هنگام پخش کدک‌های خاص نشان می‌دهد. اگر محدودیتی اعمال شود، رسانه‌ها کد گذاری می‌شوند ، حتی اگر کدک برای پخش مستقیم پیکربندی شده باشد.", "HeaderCodecProfile": "نمایه کدک", "HeaderChapterImages": "عکس‌های سکانس", - "HeaderChannels": "کانال‌ها", "HeaderChannelAccess": "دسترسی به کانال", "HeaderCastCrew": "بازیگران و کارکنان", "HeaderCastAndCrew": "بازیگران و کارکنان", @@ -450,7 +427,6 @@ "FolderTypeUnset": "محتواهای مخلوط", "TabMyPlugins": "افزونه‌های من", "TabMusic": "موسیقی‌ها", - "TabMovies": "فیلم‌ها", "TabLogs": "واقعه نگار‌ها", "TabLiveTV": "تلویزیون زنده", "LatestFromLibrary": "جدیدترین‌های {0}", @@ -617,14 +593,9 @@ "OptionOnInterval": "در یک فاصله", "BookLibraryHelp": "کتاب‌های صوتی و متنی پشتیبانی می‌شوند. {0} راهنمای نامگذاری کتاب {1} را مرور کنید.", "TabInfo": "اطلاعات", - "TabGuide": "راهنما", - "TabFavorites": "مورد علاقه‌ها", "TabDirectPlay": "پخش مستقیم", - "TabDevices": "دستگاه‌ها", "TabDashboard": "داشبورد", - "TabCollections": "مجموعه‌ها", "TabCodecs": "کدک‌ها", - "TabChannels": "کانال‌ها", "TabCatalog": "فهرست", "TV": "تلویزیون", "Sunday": "یکشنبه", @@ -765,7 +736,6 @@ "LabelSeasonNumber": "شماره فصل:", "ConfigureDateAdded": "تنظیم کنید که چگونه تاریخ اضافه شده در داشبورد سرور Jellyfin تحت تنظیمات کتابخانه تعیین می‌شود", "CinemaModeConfigurationHelp": "حالت سینما تجربه تئاتر گونه را مستقیم به اتاق نشیمن شما می‌آورد با قابلیت پخش تریلرها و پیش نمایش‌ها قبل از سایر ویژگی‌های اصلی.", - "NoSubtitles": "خالی", "NoSubtitleSearchResultsFound": "نتیجه‌ای یافت نشد.", "MessageNoPluginConfiguration": "این افزونه هیچ تنظیماتی برای پیکربندی ندارد.", "No": "خیر", @@ -919,7 +889,6 @@ "HeaderAddUpdateImage": "Add/Update Image", "HeaderAdditionalParts": "Additional Parts", "HeaderAdmin": "Admin", - "HeaderAlbums": "Albums", "HeaderAlert": "Alert", "HeaderAllowMediaDeletionFrom": "Allow Media Deletion From", "HeaderApiKey": "API Key", @@ -1037,7 +1006,6 @@ "HeaderServerAddressSettings": "Server Address Settings", "HeaderServerSettings": "Server Settings", "HeaderSettings": "Settings", - "HeaderShutdown": "Shutdown", "HeaderSortBy": "Sort By", "HeaderSortOrder": "Sort Order", "HeaderSpecialEpisodeInfo": "Special Episode Info", @@ -1070,7 +1038,6 @@ "HeaderXmlDocumentAttributes": "Xml Document Attributes", "HeaderXmlSettings": "Xml Settings", "HeaderYears": "Years", - "HeadersFolders": "Folders", "Help": "Help", "Hide": "Hide", "HideWatchedContentFromLatestMedia": "Hide watched content from latest media", @@ -1208,7 +1175,6 @@ "LabelPublicHttpPortHelp": "The public port number that should be mapped to the local HTTP port.", "LabelPublicHttpsPort": "Public HTTPS port number:", "LabelPublicHttpsPortHelp": "The public port number that should be mapped to the local HTTPS port.", - "LabelReadHowYouCanContribute": "Learn how you can contribute.", "LabelReasonForTranscoding": "Reason for transcoding:", "LabelRecord": "Record:", "LabelRecordingPath": "Default recording path:", @@ -1497,7 +1463,6 @@ "SyncPlayAccessHelp": "Select the level of access this user has to the SyncPlay feature. SyncPlay enables to sync playback with other devices.", "SystemDlnaProfilesHelp": "System profiles are read-only. Changes to a system profile will be saved to a new custom profile.", "TabContainers": "Containers", - "TabDVR": "DVR", "TvLibraryHelp": "Review the {0}TV naming guide{1}.", "UserAgentHelp": "Supply a custom user-agent HTTP header.", "ValueContainer": "Container: {0}", diff --git a/src/strings/fi.json b/src/strings/fi.json index fd514ddb77..3b17554efc 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -2,7 +2,6 @@ "MessageBrowsePluginCatalog": "Selaa lisäosakuvastoamme katsoaksesi saatavilla olevia lisäosia.", "ButtonAddUser": "Lisää Käyttäjä", "ButtonCancel": "Peruuta", - "ButtonDeleteImage": "Poista Kuva", "ButtonResetPassword": "Nollaa salasana", "ButtonSignOut": "Sign out", "Delete": "Poista", @@ -24,8 +23,6 @@ "LabelMaxParentalRating": "Suurin sallittu ikäraja:", "LabelNewPassword": "Uusi salasana:", "LabelNewPasswordConfirm": "Uuden salasanan varmistus:", - "LabelNext": "Seuraava", - "LabelPrevious": "Edellinen", "LabelSaveLocalMetadata": "Tallenna kuvamateriaali mediakansioihin", "LabelSaveLocalMetadataHelp": "Kuvamateriaalin ja metadatan tallentaminen suoraan kansioihin missä niitä on helppo muuttaa.", "LabelYoureDone": "Valmista!", @@ -83,7 +80,6 @@ "AsManyAsPossible": "Niin monta kuin mahdollista", "Ascending": "Nousevassa järjestyksessä", "AspectRatio": "Kuvasuhde", - "AttributeNew": "Uusi", "Audio": "Ääni", "AuthProviderHelp": "Valitse todentamispalvelu, jota käytetään tämän käyttäjän salasanan todentamisessa.", "Auto": "Auto", @@ -102,17 +98,11 @@ "ButtonAddMediaLibrary": "Lisää Mediakirjasto", "ButtonAddScheduledTaskTrigger": "Lisää Liipaisin", "ButtonAddServer": "Lisää Palvelin", - "ButtonArrowDown": "Alas", "ButtonArrowLeft": "Vasen", "ButtonArrowRight": "Oikea", - "ButtonArrowUp": "Ylös", "ButtonAudioTracks": "Ääniraidat", "ButtonBack": "Takaisin", "ButtonChangeServer": "Vaihda Palvelinta", - "ButtonConnect": "Yhdistä", - "ButtonDelete": "Poista", - "ButtonDown": "Alas", - "ButtonDownload": "Lataa", "ButtonEdit": "Muokkaa", "ButtonEditImages": "Muokkaa kuvia", "ButtonEditOtherUserPreferences": "Muokkaa tämän käyttäjän profiilia, kuvaa ja henkilökohtaisia asetuksia.", @@ -127,7 +117,6 @@ "ButtonManualLogin": "Manuaalinen kirjautuminen", "ButtonMore": "Lisää", "ButtonNetwork": "Verkko", - "ButtonNew": "Uusi", "ButtonNextTrack": "Seuraava raita", "ButtonOff": "Pois päältä", "ButtonOk": "Ok", @@ -153,17 +142,14 @@ "ButtonSelectView": "Valitse näkymä", "ButtonSend": "Lähetä", "ButtonSettings": "Asetukset", - "ButtonShuffle": "Satunnaistoisto", "ButtonShutdown": "Sammuta", "ButtonSignIn": "Kirjaudu sisään", - "ButtonSort": "Lajittele", "ButtonStart": "Käynnistä", "ButtonStop": "Pysäytä", "ButtonSubmit": "Lähetä", "ButtonSubtitles": "Tekstitykset", "ButtonTrailer": "Traileri", "ButtonUninstall": "Poista asennus", - "ButtonUp": "Ylös", "ButtonWebsite": "Nettisivusto", "CancelRecording": "Peruuta tallennus", "Categories": "Kategoriat", @@ -253,7 +239,6 @@ "CopyStreamURLSuccess": "Osoite kopioitu onnistuneesti.", "DeathDateValue": "Kuoli: {}", "CustomDlnaProfilesHelp": "Luo uusi profiili kohdistaaksesi uuteen laitteeseen tai ohittaaksesi järjestelmäprofiilin.", - "EnableBackdrops": "Taustat", "ErrorAddingMediaPathToVirtualFolder": "Media-polkua lisätessä ilmeni ongelma. Varmista, että polku on kirjoitettu oikein ja Jellyfin Palvelimella pääsy sijaintiin.", "Episodes": "Jaksot", "EndsAtValue": "Päättyy {0}", @@ -475,7 +460,6 @@ "HeaderConfirmPluginInstallation": "Vahvista liitännäisen asennus", "HeaderConfigureRemoteAccess": "Määritä etäkäyttö", "HeaderChapterImages": "Kappalekuvat", - "HeaderChannels": "Kanavat", "HeaderApp": "Sovellus", "HeaderAllowMediaDeletionFrom": "Salli median poisto", "HeaderAlert": "Hälytys", @@ -499,7 +483,6 @@ "OptionBlockTrailers": "Trailerit", "OptionBlockMusic": "Musiikki", "OptionBlockMovies": "Elokuvat", - "HeaderMovies": "Elokuvat", "HeaderMoreLikeThis": "Lisää tällaista", "HeaderMetadataSettings": "Metadata-asetukset", "MoreMediaInfo": "Mediainfo", @@ -514,7 +497,6 @@ "HeaderLatestMovies": "Uusimmat elokuvat", "HeaderLatestEpisodes": "Uusimmat jaksot", "HeaderInstall": "Asenna", - "HeaderGenres": "Tyylilajit", "HeaderFrequentlyPlayed": "Usein toistetut", "HeaderFetcherSettings": "Hakijan asetukset", "HeaderFetchImages": "Hae kuvia:", @@ -602,7 +584,6 @@ "LabelSeasonNumber": "Kauden numero:", "LabelScreensaver": "Näytönsäästäjä:", "LabelReasonForTranscoding": "Transkoodauksen syy:", - "LabelReadHowYouCanContribute": "Katso, miten voit auttaa.", "LabelPublicHttpsPort": "Julkinen HTTPS-porttinumero:", "LabelPublicHttpPort": "Julkinen HTTP-porttinumero:", "LabelProtocolInfo": "Protokollan info:", @@ -646,7 +627,6 @@ "ExtraLarge": "Suurin", "EveryNDays": "Joka {0} päivä", "Raised": "Korotettu", - "TabShows": "Sarjat", "Yesterday": "Eilen", "Yes": "Kyllä", "Unplayed": "Toistamattomat", @@ -663,7 +643,6 @@ "Tags": "Tunnisteet", "TabUsers": "Käyttäjät", "TabUpcoming": "Tulevat", - "TabSongs": "Kappaleet", "TabSettings": "Asetukset", "TabServer": "Palvelin", "TabSeries": "Sarjat", @@ -678,21 +657,14 @@ "TabMyPlugins": "Omat liittännäiseni", "TabMusicVideos": "Musiikkivideot", "TabMusic": "Musiikki", - "TabMovies": "Elokuvat", "TabLogs": "Lokit", "TabLiveTV": "Live-TV", "TabLatest": "Uusimmat", "TabInfo": "Tiedot", - "TabGenres": "Tyylilajit", - "TabFavorites": "Suosikit", "TabEpisodes": "Jaksot", "TabDirectPlay": "Suoratoisto", - "TabDevices": "Laitteet", "TabDashboard": "Päänäkymä", - "TabCollections": "Kokoelmat", - "TabChannels": "Kanavat", "TabCatalog": "Luettelo", - "TabAlbums": "Albumit", "TabAlbumArtists": "Albumin artistit", "TabAdvanced": "Edistynyt", "TV": "TV", @@ -883,7 +855,6 @@ "Kids": "Lapset", "Images": "Kuvat", "Hide": "Piilota", - "HeadersFolders": "Kansiot", "HeaderYears": "Vuodet", "HeaderVideos": "Videot", "HeaderVideoQuality": "Kuvanlaatu", @@ -891,7 +862,6 @@ "HeaderUser": "Käyttäjä", "HeaderSubtitleAppearance": "Tekstityksen ulkonäkö", "HeaderStatus": "Tila", - "HeaderShutdown": "Sammuta", "HeaderServerSettings": "Palvelimen asetukset", "HeaderSettings": "Asetukset", "HeaderSendMessage": "Lähetä viesti", @@ -928,7 +898,6 @@ "HeaderApiKeys": "API-avaimet", "HeaderApiKey": "API-avain", "HeaderAdmin": "Ylläpitäjä", - "HeaderAlbums": "Albumit", "HeaderAddUser": "Lisää käyttäjä", "HeaderAddUpdateImage": "Lisää/Päivitä kuva", "HeaderAddToPlaylist": "Lisää soittolistaan", @@ -1013,7 +982,6 @@ "TabOther": "Muut", "TabNotifications": "Ilmoitukset", "TabNetworking": "Verkkoasetukset", - "TabGuide": "Opas", "TabContainers": "Säiliöt", "TabCodecs": "Codecit", "Suggestions": "Ehdotukset", @@ -1043,7 +1011,6 @@ "Off": "Poissa päältä", "Normal": "Normaali", "None": "Ei mitään", - "NoSubtitles": "Ei mitään", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Seuraavat mediasijainnit tullaan poistamaan kirjastostasi:", "MessageItemsAdded": "Kohteet lisätty.", "MessageItemSaved": "Kohde tallennettu.", @@ -1085,7 +1052,6 @@ "HeaderOtherItems": "Muut kohteet", "HeaderLiveTvTunerSetup": "Live-TV virittimen määritys", "HeaderLibrarySettings": "Kirjaston asetukset", - "HeaderItems": "Kohteet", "HeaderGuideProviders": "TV-ohjelmaoppaiden tarjoajat", "HeaderFavoritePlaylists": "Suosikki soittolistat", "HeaderEnabledFields": "Käytössä olevat kentät", diff --git a/src/strings/fr-ca.json b/src/strings/fr-ca.json index d5782ea3fe..e7deac36f9 100644 --- a/src/strings/fr-ca.json +++ b/src/strings/fr-ca.json @@ -2,7 +2,6 @@ "Add": "Ajouter", "AddToCollection": "Ajouter à la collection", "AddToPlaylist": "Ajouter à la liste de lecture", - "AttributeNew": "Nouveau", "ButtonCancel": "Annuler", "ButtonGotIt": "J'ai compris", "ButtonQuickStartGuide": "Guide de démarrage rapide", @@ -32,9 +31,7 @@ "LabelFinish": "Terminer", "LabelLanguage": "Langue :", "LabelName": "Nom :", - "LabelNext": "Suivant", "LabelPlaylist": "Liste de lecture :", - "LabelPrevious": "Précédent", "LabelYear": "Année :", "LabelYoureDone": "Vous avez terminé !", "Live": "En direct", @@ -142,18 +139,11 @@ "ButtonAddScheduledTaskTrigger": "Ajouter un déclencheur", "ButtonAddServer": "Ajouter un serveur", "ButtonAddUser": "Ajouter un utilisateur", - "ButtonArrowDown": "Bas", "ButtonArrowLeft": "Gauche", "ButtonArrowRight": "Droite", - "ButtonArrowUp": "Haut", "ButtonAudioTracks": "Pistes Audio", "ButtonBack": "Retour arrière", "ButtonChangeServer": "Changer de serveur", - "ButtonConnect": "Connexion", - "ButtonDelete": "Supprimer", - "ButtonDeleteImage": "Supprimer l'image", - "ButtonDown": "Bas", - "ButtonDownload": "Téléchargement", "ButtonEdit": "Modifier", "ButtonEditImages": "Modifier les images", "ButtonEditOtherUserPreferences": "Modifier ce profil utilisateur, son avatar et ses préférences personnelles.", @@ -202,17 +192,14 @@ "CancelSeries": "Annuler la série", "CancelRecording": "Annuler l'enregistrement", "ButtonWebsite": "Site web", - "ButtonUp": "Vers le haut", "ButtonUninstall": "Désinstaller", "ButtonTogglePlaylist": "Liste de lecture", "ButtonSubtitles": "Sous-titres", "ButtonSubmit": "Soumettre", "ButtonStop": "Arrêt", "ButtonStart": "Démarrer", - "ButtonSort": "Trier", "ButtonSignIn": "Se connecter", "ButtonShutdown": "Éteindre", - "ButtonShuffle": "Lecture aléatoire", "ButtonSettings": "Paramètres", "ButtonSend": "Envoyer", "ButtonSelectServer": "Sélectionner le serveur", @@ -234,7 +221,6 @@ "ButtonOpen": "Ouvrir", "ButtonOk": "OK", "ButtonNextTrack": "Prochaine piste", - "ButtonNew": "Nouveau", "ButtonAddImage": "Ajouter l'image", "BoxSet": "Coffret" } diff --git a/src/strings/fr.json b/src/strings/fr.json index 8e13275e39..61710fede0 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -34,7 +34,6 @@ "AsManyAsPossible": "Autant que possible", "Ascending": "Croissant", "AspectRatio": "Format d'image", - "AttributeNew": "Nouveau", "Backdrop": "Arrière-plan", "Backdrops": "Arrière-plans", "Banner": "Bannière", @@ -53,19 +52,12 @@ "ButtonAddScheduledTaskTrigger": "Ajouter un déclencheur", "ButtonAddServer": "Ajouter un serveur", "ButtonAddUser": "Ajouter un utilisateur", - "ButtonArrowDown": "Bas", "ButtonArrowLeft": "Gauche", "ButtonArrowRight": "Droite", - "ButtonArrowUp": "Haut", "ButtonAudioTracks": "Pistes Audio", "ButtonBack": "Retour arrière", "ButtonCancel": "Annuler", "ButtonChangeServer": "Changer de serveur", - "ButtonConnect": "Connexion", - "ButtonDelete": "Supprimer", - "ButtonDeleteImage": "Supprimer l'image", - "ButtonDown": "Bas", - "ButtonDownload": "Téléchargement", "ButtonEdit": "Modifier", "ButtonEditImages": "Modifier les images", "ButtonEditOtherUserPreferences": "Modifier ce profil utilisateur, son avatar et ses préférences personnelles.", @@ -79,7 +71,6 @@ "ButtonManualLogin": "Connexion manuelle", "ButtonMore": "Plus", "ButtonNetwork": "Réseau", - "ButtonNew": "Nouveau", "ButtonNextTrack": "Piste suivante", "ButtonOff": "Arrêt", "ButtonOk": "OK", @@ -104,18 +95,15 @@ "ButtonSelectView": "Sélectionnez une vue", "ButtonSend": "Envoyer", "ButtonSettings": "Paramètres", - "ButtonShuffle": "Aléatoire", "ButtonShutdown": "Éteindre", "ButtonSignIn": "Se connecter", "ButtonSignOut": "Se déconnecter", - "ButtonSort": "Trier", "ButtonStart": "Commencer", "ButtonStop": "Arrêter", "ButtonSubmit": "Soumettre", "ButtonSubtitles": "Sous-titres", "ButtonTrailer": "Bande-annonce", "ButtonUninstall": "Désinstaller", - "ButtonUp": "Haut", "ButtonWebsite": "Site Web", "CancelRecording": "Annuler l'enregistrement", "CancelSeries": "Annuler la série", @@ -188,7 +176,6 @@ "EditImages": "Modifier les images", "EditMetadata": "Éditer les métadonnées", "EditSubtitles": "Modifier les sous-titres", - "EnableBackdrops": "Images d'arrière-plans", "EnableBackdropsHelp": "Afficher des images d'arrière-plans sur certaines pages pendant la navigation dans la médiathèque.", "EnableCinemaMode": "Mode cinéma", "EnableColorCodedBackgrounds": "Fonds avec code couleur", @@ -281,7 +268,6 @@ "HeaderCastAndCrew": "Distribution & équipe", "HeaderCastCrew": "Distribution & équipe", "HeaderChannelAccess": "Accès aux chaînes", - "HeaderChannels": "Chaînes", "HeaderChapterImages": "Images des chapitres", "HeaderCodecProfile": "Profil de codec", "HeaderCodecProfileHelp": "Les profils de codec indiquent les limites d'un appareil lors de la lecture de codecs spécifiques. Si la limite s'applique au média, ce dernier sera transcodé, même si le codec est configuré pour la lecture directe.", @@ -332,7 +318,6 @@ "HeaderImageSettings": "Paramètres d'image", "HeaderInstall": "Installer", "HeaderInstantMix": "Mix instantané", - "HeaderItems": "Éléments", "HeaderKeepRecording": "Garder l'enregistrement", "HeaderKeepSeries": "Garder la série", "HeaderKodiMetadataHelp": "Pour activer ou désactiver les métadonnées NFO, utilisez l'onglet Métadonnées et configurez les options pour vos types de médias.", @@ -355,7 +340,6 @@ "HeaderMediaInfo": "Informations du média", "HeaderMetadataSettings": "Paramètres des métadonnées", "HeaderMoreLikeThis": "Similaires", - "HeaderMovies": "Films", "HeaderMusicQuality": "Qualité de la musique :", "HeaderMusicVideos": "Vidéos musicales", "HeaderMyDevice": "Cet appareil", @@ -416,7 +400,6 @@ "HeaderServerSettings": "Paramètres du serveur", "HeaderSettings": "Paramètres", "HeaderSetupLibrary": "Configurer vos médiathèques", - "HeaderShutdown": "Éteindre", "HeaderSortBy": "Trier par", "HeaderSortOrder": "Ordre de tri", "HeaderSpecialEpisodeInfo": "Informations de l'épisode spécial", @@ -450,7 +433,6 @@ "HeaderXmlDocumentAttributes": "Attributs des documents XML", "HeaderXmlSettings": "Paramètres XML", "HeaderYears": "Années", - "HeadersFolders": "Dossiers", "Help": "Aide", "Hide": "Cacher", "HideWatchedContentFromLatestMedia": "Masquer le contenu déjà vu dans les derniers médias", @@ -665,7 +647,6 @@ "LabelNewPassword": "Nouveau mot de passe :", "LabelNewPasswordConfirm": "Confirmer le nouveau mot de passe :", "LabelNewsCategories": "Catégories des informations :", - "LabelNext": "Suivant", "LabelNotificationEnabled": "Activer cette notification", "LabelNumber": "Numéro :", "LabelNumberOfGuideDays": "Nombre de jours de données du guide à télécharger :", @@ -692,7 +673,6 @@ "LabelPreferredDisplayLanguage": "Langue d'affichage préférée :", "LabelPreferredDisplayLanguageHelp": "La traduction de Jellyfin est un projet en cours.", "LabelPreferredSubtitleLanguage": "Langue de sous-titrage préférée :", - "LabelPrevious": "Précédent", "LabelProfileAudioCodecs": "Codecs audio :", "LabelProfileCodecs": "Codecs :", "LabelProfileCodecsHelp": "Séparés par des virgules. Peut être laissé vide pour s'appliquer à tous les codecs.", @@ -706,7 +686,6 @@ "LabelPublicHttpPortHelp": "Le numéro de port public à mapper sur le port HTTP local.", "LabelPublicHttpsPort": "Numéro de port HTTPS public :", "LabelPublicHttpsPortHelp": "Le numéro de port public à mapper sur le port HTTPS local.", - "LabelReadHowYouCanContribute": "Voir comment vous pouvez contribuer.", "LabelReasonForTranscoding": "Raison du transcodage :", "LabelRecord": "Enregistrer :", "LabelRecordingPath": "Chemin d'enregistrement par défaut :", @@ -912,7 +891,6 @@ "MessageNoNextUpItems": "Aucun élément trouvé. Commencez à regarder vos émissions !", "MessageNoPluginConfiguration": "Cette extension n'a aucun paramètre à configurer.", "NoSubtitleSearchResultsFound": "Aucun résultat trouvé.", - "NoSubtitles": "Pas de sous-titres", "NoSubtitlesHelp": "Les sous-titres ne seront pas chargés par défaut. Ils peuvent toujours être activés manuellement pendant la lecture.", "None": "Aucun", "NumLocationsValue": "{0} dossiers", @@ -1181,17 +1159,13 @@ "TabAdvanced": "Avancé", "TabAlbumArtists": "Artistes de l'album", "TabCatalog": "Catalogue", - "TabChannels": "Chaînes", "TabContainers": "Conteneurs", "TabDashboard": "Tableau de bord", - "TabDevices": "Appareils", "TabDirectPlay": "Lecture directe", "TabEpisodes": "Épisodes", - "TabFavorites": "Favoris", "TabLatest": "Derniers", "TabLiveTV": "TV en direct", "TabLogs": "Journaux", - "TabMovies": "Films", "TabMusic": "Musique", "TabMusicVideos": "Vidéos musicales", "TabMyPlugins": "Mes extensions", @@ -1210,8 +1184,6 @@ "TabSeries": "Séries", "TabServer": "Serveur", "TabSettings": "Paramètres", - "TabShows": "Séries", - "TabSongs": "Chansons", "TabTrailers": "Bandes-annonces", "TabUpcoming": "À venir", "TabUsers": "Utilisateurs", @@ -1292,8 +1264,6 @@ "Guide": "Guide", "GuestStar": "Guest star", "Photos": "Photos", - "HeaderAlbums": "Albums", - "HeaderGenres": "Genres", "HeaderIdentification": "Identification", "HeaderTuners": "Égaliseur", "Horizontal": "Horizontal", @@ -1323,11 +1293,7 @@ "Studios": "Studios", "Suggestions": "Suggestions", "TV": "Tv", - "TabAlbums": "Albums", "TabCodecs": "Codecs", - "TabCollections": "Collections", - "TabGenres": "Genres", - "TabGuide": "Guide", "TabInfo": "Informations", "TabNotifications": "Notifications", "TabPlugins": "Extensions", @@ -1454,7 +1420,6 @@ "Filter": "Filtre", "New": "Nouveau", "HeaderFavoritePlaylists": "Listes de lecture favorites", - "TabDVR": "DVR", "LabelChromecastVersion": "Version de Chromecast", "LabelEnableHttpsHelp": "Écouter les requêtes HTTPS sur le port configuré. Un certificat valide doit être fourni pour permettre ce mode de fonctionnement.", "LabelEnableHttps": "Activer HTTPS", diff --git a/src/strings/gsw.json b/src/strings/gsw.json index 70c773a137..1b23cb29b1 100644 --- a/src/strings/gsw.json +++ b/src/strings/gsw.json @@ -1,13 +1,10 @@ { "ButtonAddUser": "Erstell en User", "ButtonCancel": "Abbreche", - "ButtonDeleteImage": "Lösch Bild", - "ButtonNew": "Neu", "ButtonOk": "OK", "ButtonQuickStartGuide": "Schnellstart Instruktione", "ButtonResetPassword": "Passwort zrug setze", "ButtonSignOut": "Uslogge", - "ButtonSort": "Sortiere", "ChannelAccessHelp": "Wähl en Kanal us, um de mit dem User z'teile. Administratore werded immer d'Möglichkeit ha alli Kanäl mitm Metadate Manager z'bearbeite.", "Continuing": "Fortlaufend", "DeviceAccessHelp": "Das betrifft nur Grät wo einzigartig indentifiziert werded und tuet ned Browser Zuegriff verhindere. En Filter för Grät Zuegriff verhindered, dass neui Grät dezue gfüegt werded, bovor si ned überprüefd worde sind.", @@ -41,8 +38,6 @@ "LabelMaxParentalRating": "Maximum erlaubti Kindersicherig:", "LabelNewPassword": "Neus Passwort:", "LabelNewPasswordConfirm": "Neus Passwort bestätige:", - "LabelNext": "Nöchst", - "LabelPrevious": "Vorher", "LabelSaveLocalMetadata": "Speicher Bilder und Metadate i d'Medieordner", "LabelSaveLocalMetadataHelp": "Wennd Bilder und Metadate direkt i d'Medieordner speicherisch, chasch sie eifach weder finde und au bearbeite.", "LabelSelectUsers": "Wähl User:", @@ -96,12 +91,9 @@ "TabAccess": "Zuegriff", "TabAdvanced": "Erwiitert", "TabAlbumArtists": "Album-Artist", - "TabAlbums": "Albene", "TabCatalog": "Katalog", "TabEpisodes": "Episode", - "TabGenres": "Genre", "TabLatest": "Letschti", - "TabMovies": "Film", "TabMusicVideos": "Musigvideos", "TabMyPlugins": "Miini Plugins", "TabNetworks": "Studios", @@ -109,7 +101,6 @@ "TabPassword": "Passwort", "TabProfile": "Profil", "TabProfiles": "Profil", - "TabShows": "Serie", "TabUpcoming": "Usstehend", "TellUsAboutYourself": "Verzell was über dech selber", "ThisWizardWillGuideYou": "De Assistent hilft der dur de Installations Prozess. Zum afange, wähl bitte dini Sproch us.", diff --git a/src/strings/he.json b/src/strings/he.json index f5084ace4c..d3a6b1ee19 100644 --- a/src/strings/he.json +++ b/src/strings/he.json @@ -12,19 +12,15 @@ "Anytime": "בכל עת", "AroundTime": "בסביבות", "AsManyAsPossible": "כמה שיותר", - "AttributeNew": "חדש", "Backdrops": "תמונות רקע", "BirthLocation": "מיקום לידה", "MessageBrowsePluginCatalog": "עבור לקטלוג התוספים לראות אילו זמינים.", "ButtonAddUser": "הוסף משתמש", "ButtonCancel": "בטל", - "ButtonDelete": "מחק", - "ButtonDeleteImage": "מחק תמונה", "ButtonEdit": "ערוך", "ButtonFilter": "מסנן", "ButtonGotIt": "הבנתי", "ButtonManualLogin": "התחברות ידנית", - "ButtonNew": "חדש", "ButtonOk": "בסדר", "ButtonPlay": "נגן", "ButtonQuickStartGuide": "מדריך מהיר", @@ -36,7 +32,6 @@ "ButtonShutdown": "כבה", "ButtonSignIn": "היכנס", "ButtonSignOut": "התנתק", - "ButtonSort": "מיין", "CancelRecording": "ביטול הקלטה", "CancelSeries": "בטל סדרה", "Categories": "קטגוריות", @@ -88,7 +83,6 @@ "HeaderCancelRecording": "ביטול הקלטה", "HeaderCancelSeries": "בטל סדרה", "HeaderCastCrew": "שחקנים וצוות", - "HeaderChannels": "ערוצים", "HeaderConfirmPluginInstallation": "אשר התקנת תוסף", "HeaderCustomDlnaProfiles": "פרופילים מותאמים אישית", "HeaderDeleteItem": "מחק פריט", @@ -112,7 +106,6 @@ "HeaderLiveTV": "שידורים חיים", "HeaderMediaFolders": "ספריות מדיה", "HeaderMetadataSettings": "הגדרות מטא-דאטה", - "HeaderMovies": "סרטים", "HeaderMusicVideos": "קליפים", "HeaderMyMedia": "המדיה שלי", "HeaderNextUp": "הבא בתור", @@ -212,7 +205,6 @@ "LabelName": "שם:", "LabelNewPassword": "סיסמא חדשה:", "LabelNewPasswordConfirm": "אימות סיסמא חדשה:", - "LabelNext": "הבא", "LabelNotificationEnabled": "אפשר התראה זו", "LabelNumber": "מספר:", "LabelNumberOfGuideDays": "מספר ימים להורדה מלוח השידורים:", @@ -230,12 +222,10 @@ "LabelPlaylist": "רשימת ניגון:", "LabelPreferredDisplayLanguage": "שפת תצוגה מועדפת:", "LabelPreferredDisplayLanguageHelp": "תרגום Jellyfin הוא תהליך מתמשך.", - "LabelPrevious": "הקודם", "LabelProfileAudioCodecs": "מקודדי שמע:", "LabelProfileCodecs": "מקודדים:", "LabelProfileVideoCodecs": "‮מקודדי וידאו:", "LabelPublicHttpPort": "מספר פורט HTTP פומבי:", - "LabelReadHowYouCanContribute": "למד איך אתה יכול לתרום.", "LabelRecord": "הקלטה:", "LabelRefreshMode": "מצב רענון:", "LabelReleaseDate": "תאריך הוצאה:", @@ -436,19 +426,13 @@ "TabAccess": "גישה", "TabAdvanced": "מתקדם", "TabAlbumArtists": "אמני אלבום", - "TabAlbums": "אלבומים", "TabCatalog": "קטלוג", - "TabChannels": "ערוצים", "TabCodecs": "מקודדים", "TabDashboard": "לוח בקרה", "TabEpisodes": "פרקים", - "TabFavorites": "מועדפים", - "TabGenres": "זאנרים", - "TabGuide": "מדריך", "TabInfo": "מידע", "TabLatest": "אחרון", "TabLiveTV": "שידור ישיר", - "TabMovies": "סרטים", "TabMusic": "מוסיקה", "TabMusicVideos": "קליפים", "TabMyPlugins": "התוספים שלי", @@ -461,8 +445,6 @@ "TabSeries": "סדרות", "TabServer": "שרת", "TabSettings": "הגדרות", - "TabShows": "תוכניות", - "TabSongs": "שירים", "TabTrailers": "טריילרים", "TabUpcoming": "בקרוב", "Tags": "מילות מפתח", @@ -569,14 +551,12 @@ "ButtonHome": "בית", "ButtonFullscreen": "מסך מלא", "ButtonEditImages": "ערוך תמונות", - "ButtonConnect": "התחבר", "ButtonAddServer": "הוסף שרת", "ButtonAddMediaLibrary": "הוסף ספריית מדיה", "ButtonAddImage": "הוסף תמונה", "AskAdminToCreateLibrary": "בקש ממנהל ליצור ספרייה.", "Ascending": "סדר עולה", "Photos": "תמונות", - "TabCollections": "אוספים", "MessageConfirmShutdown": "‫האם אתה בטוח שברצונך לכבות את השרת?", "MessageConfirmRestart": "‫האם אתה בטוח שברצונך לאתחל את שרת ה-Jellyfin‏?", "HeaderThisUserIsCurrentlyDisabled": "משתמש זה אינו פעיל כרגע", @@ -584,7 +564,6 @@ "HeaderStopRecording": "עצור הקלטה", "HeaderSortOrder": "סדר מיון", "HeaderSortBy": "מיין לפי", - "HeaderShutdown": "כיבוי", "HeaderSettings": "הגדרות", "HeaderSendMessage": "שלח הודעה", "HeaderSelectServer": "בחר שרת", @@ -612,11 +591,9 @@ "HeaderLibrarySettings": "הגדרות ספרייה", "HeaderLibraryFolders": "תיקיות הספרייה", "HeaderLibraries": "ספריות", - "HeaderItems": "פריטים", "HeaderInstall": "התקנה", "HeaderImageOptions": "הגדרות תמונה", "HeaderHome": "בית", - "HeaderGenres": "ז'אנרים", "HeaderForKids": "עבור ילדים", "HeaderFavoriteVideos": "סרטונים מועדפים", "HeaderFavoritePeople": "אנשים מועדפים", @@ -625,7 +602,6 @@ "HeaderError": "שגיאה", "HeaderEpisodes": "פרקים", "HeaderDownloadSync": "הורדה וסנכרון", - "TabDevices": "מכשירים", "HeaderDevices": "מכשירים", "HeaderDeveloperInfo": "מידע למפתח", "HeaderDeleteTaskTrigger": "מחק טריגר משימה", @@ -641,7 +617,6 @@ "HeaderAudioBooks": "ספרים מוקלטים", "HeaderApiKeys": "‫מפתחות API", "HeaderApiKey": "‫מפתח API", - "HeaderAlbums": "אלבומים", "HeaderAddUpdateImage": "הוסף/עדכן תמונה", "HeaderAddScheduledTaskTrigger": "הוסף טריגר", "HeaderActivity": "פעילות", @@ -667,7 +642,6 @@ "EnableHardwareEncoding": "הפעל קידוד חומרה", "EnableExternalVideoPlayers": "נגני וידאו חיצוניים", "EnableCinemaMode": "מצב קולנוע", - "EnableBackdrops": "תמונות רקע", "EditMetadata": "ערוך מטא-דאטה", "DrmChannelsNotImported": "‫ערוצים בעלי ניהול זכויות דיגיטלי (DRM) לא ייובאו.", "Down": "למטה", @@ -684,10 +658,8 @@ "ConfirmEndPlayerSession": "‫האם לכבות את Jellyfin על {0}?", "CommunityRating": "דירוג קהילה", "ButtonWebsite": "אתר אינטרנט", - "ButtonUp": "למעלה", "ButtonSubmit": "שלח", "ButtonStart": "התחל", - "ButtonShuffle": "ערבוב", "ButtonScanAllLibraries": "סרוק את כל הספריות", "ButtonRevoke": "בטל", "TabScheduledTasks": "משימות מתוזמנות", @@ -703,14 +675,10 @@ "HeaderForgotPassword": "שחזור סיסמה", "ButtonForgotPassword": "שחזור סיסמה", "ButtonEditOtherUserPreferences": "ערוך את הפרופיל, התמונה וההגדרות האישיות של משתמש זה.", - "ButtonDownload": "הורדה", - "ButtonDown": "למטה", "ButtonChangeServer": "החלף שרת", "ButtonBack": "חזרה", "OptionBanner": "באנר", "ButtonAudioTracks": "רצועות שמע", - "ButtonArrowDown": "למטה", - "ButtonArrowUp": "למעלה", "ButtonArrowRight": "ימינה", "ButtonArrowLeft": "שמאלה", "ButtonAddScheduledTaskTrigger": "הוסף טריגר", @@ -821,7 +789,6 @@ "TabLogs": "יומני רישום", "LabelLogs": "יומני רישום:", "TabNetworking": "תקשורת", - "TabDVR": "ממיר-מקליט", "HeaderDVR": "ממיר-מקליט", "LabelScheduledTaskLastRan": "רץ לאחרונה {0}, במשך {1}.", "LabelTheme": "ערכת נושא:", diff --git a/src/strings/hi-in.json b/src/strings/hi-in.json index e7ac775adf..6a22cb170c 100644 --- a/src/strings/hi-in.json +++ b/src/strings/hi-in.json @@ -3,8 +3,6 @@ "ButtonSignOut": "Sign out", "HeaderAddUser": "उपयोगकर्ता जोडें", "LabelFinish": "समाप्त", - "LabelNext": "अगला", - "LabelPrevious": "पिछला", "LabelYoureDone": "आपने पूरा कर लिया है!", "MoreUsersCanBeAddedLater": "अधिक उपयोगकर्ताओं को बाद में डैशबोर्ड के अंतर्गत जोड़ा जा सकता है।", "TellUsAboutYourself": "हमें अपने बारे में बताएं", @@ -37,7 +35,6 @@ "ButtonOk": "ठीक", "ButtonOff": "बंद", "ButtonNextTrack": "आगे धावन पथ", - "ButtonNew": "नया", "ButtonNetwork": "संजाल", "ButtonMore": "अधिक", "ButtonManualLogin": "मैनुअल लॉगिन", @@ -52,19 +49,12 @@ "ButtonEditOtherUserPreferences": "इस उपयोगकर्ता की प्रोफ़ाइल, छवि और व्यक्तिगत प्राथमिकताएँ संपादित करें।", "ButtonEditImages": "छवियों को संपादित करें", "ButtonEdit": "संपादित करें", - "ButtonDownload": "डाउनलोड", - "ButtonDown": "नीचे", - "ButtonDeleteImage": "छवि हटाएं", - "ButtonDelete": "हटाएं", - "ButtonConnect": "जुडिये", "ButtonChangeServer": "सर्वर बदलें", "ButtonCancel": "रद्द करना", "ButtonBack": "वापस", "ButtonAudioTracks": "ऑडियो ट्रैक्स", - "ButtonArrowUp": "ऊपर", "ButtonArrowRight": "दाएँ", "ButtonArrowLeft": "बाएं", - "ButtonArrowDown": "नीचे", "ButtonAddUser": "उपयोगकर्ता जोड़ें", "ButtonAddServer": "सर्वर जोड़े", "ButtonAddScheduledTaskTrigger": "ट्रिगर जोड़ें", @@ -85,7 +75,6 @@ "Auto": "ऑटो", "AuthProviderHelp": "इस उपयोगकर्ता के पासवर्ड को प्रमाणित करने के लिए एक प्रमाणीकरण प्रदाता का उपयोग करें।", "Audio": "नया", - "AttributeNew": "नया", "AspectRatio": "आस्पेक्ट अनुपात", "AskAdminToCreateLibrary": "लाइब्रेरी बनाने के लिए किसी व्यवस्थापक से पूछें।", "Ascending": "आरोही", diff --git a/src/strings/hr.json b/src/strings/hr.json index 44c151be31..cf4aba1e9d 100644 --- a/src/strings/hr.json +++ b/src/strings/hr.json @@ -10,7 +10,6 @@ "Anytime": "Bilo kada", "AroundTime": "Oko", "AsManyAsPossible": "Što više je moguće", - "AttributeNew": "Novo", "Backdrops": "Pozadine", "BirthDateValue": "Rođen: {0}", "BirthLocation": "Lokacija rođenja", @@ -20,19 +19,12 @@ "ButtonAddScheduledTaskTrigger": "Dodaj okidač", "ButtonAddServer": "Dodaj Server", "ButtonAddUser": "Dodaj korisnika", - "ButtonArrowDown": "Dolje", "ButtonArrowLeft": "Ljevo", "ButtonArrowRight": "Desno", - "ButtonArrowUp": "Gore", "ButtonAudioTracks": "Audio pjesme", "ButtonBack": "Nazad", "ButtonCancel": "Odustani", "ButtonChangeServer": "Promijeni Server", - "ButtonConnect": "Spoji", - "ButtonDelete": "Izbriši", - "ButtonDeleteImage": "Izbriši sliku", - "ButtonDown": "Dolje", - "ButtonDownload": "Preuzimanje", "ButtonEdit": "Izmjeni", "ButtonEditImages": "Uređivanje slika", "ButtonEditOtherUserPreferences": "Uredite ovaj korisnički profil, slike i osobne postavke.", @@ -45,7 +37,6 @@ "ButtonManualLogin": "Ručna prijava", "ButtonMore": "Više", "ButtonNetwork": "Mreža", - "ButtonNew": "Novo", "ButtonNextTrack": "Sljedeća pjesma", "ButtonOff": "Isključi", "ButtonOk": "U redu", @@ -70,17 +61,14 @@ "ButtonSelectView": "Odaberi pogled", "ButtonSend": "Pošalji", "ButtonSettings": "Postavke", - "ButtonShuffle": "Miješaj", "ButtonShutdown": "Ugasi", "ButtonSignIn": "Prijava", "ButtonSignOut": "Odjava", - "ButtonSort": "Složi", "ButtonStart": "Početak", "ButtonSubmit": "Podnesi", "ButtonSubtitles": "Titlovi", "ButtonTrailer": "Kratki video", "ButtonUninstall": "Ukloni", - "ButtonUp": "Gore", "ButtonWebsite": "Web stranica", "CancelRecording": "Prekini snimanje", "CancelSeries": "Odustani od serije", @@ -175,7 +163,6 @@ "HeaderCastAndCrew": "Glumci i ekipa", "HeaderCastCrew": "Glumci i ekipa", "HeaderChannelAccess": "Pristup kanalima", - "HeaderChannels": "Kanali", "HeaderCodecProfile": "Profil kodeka", "HeaderCodecProfileHelp": "Profili kodeka definiraju ograničenja kada uređaji izvode sadržaj u specifičnom kodeku. Ako se ograničenja podudaraju tada će sadržaj biti transkodiran, iako je kodek konfiguriran za direktno izvođenje.", "HeaderConfirmPluginInstallation": "Potvrdi instalaciju dodatka", @@ -216,7 +203,6 @@ "HeaderIdentifyItemHelp": "Unesite jednu ili više kriterija pretraživanja. Uklonite kriterije za povećanje rezultata pretraživanja.", "HeaderImageSettings": "Postavke slike", "HeaderInstall": "Instaliraj", - "HeaderItems": "Stavke", "HeaderKeepRecording": "Zadrži snimanje", "HeaderKeepSeries": "Zadrži serije", "HeaderLatestEpisodes": "Zadnje epizode", @@ -235,7 +221,6 @@ "HeaderMediaInfo": "Info medija", "HeaderMetadataSettings": "Postavke meta-podataka", "HeaderMoreLikeThis": "Više ovakvih", - "HeaderMovies": "Filmovi", "HeaderMusicVideos": "Muzički spotovi", "HeaderMyMedia": "Moji mediji", "HeaderNewApiKey": "Novi API ključ", @@ -280,7 +265,6 @@ "HeaderServerSettings": "Postavke Servera", "HeaderSettings": "Postavke", "HeaderSetupLibrary": "Postavite vaše medijske biblioteke", - "HeaderShutdown": "Ugasi", "HeaderSortBy": "Složi po", "HeaderSortOrder": "Redoslijed", "HeaderSpecialEpisodeInfo": "Posebni podaci o epizodi", @@ -306,7 +290,6 @@ "HeaderXmlDocumentAttributes": "Xml atributi dokumenta", "HeaderXmlSettings": "Xml postavke", "HeaderYears": "Godine", - "HeadersFolders": "Mape", "Help": "Pomoć", "Identify": "Identificiraj", "Images": "Slike", @@ -483,7 +466,6 @@ "LabelNewPassword": "Nova lozinka:", "LabelNewPasswordConfirm": "Potvrda nove lozinke:", "LabelNewsCategories": "Kategorije vijesti:", - "LabelNext": "Sljedeći", "LabelNotificationEnabled": "Omogući ovu obavijest", "LabelNumber": "Broj:", "LabelNumberOfGuideDays": "Broj dana TV vodiča za preuzet:", @@ -505,7 +487,6 @@ "LabelPlaylist": "Popis:", "LabelPreferredDisplayLanguage": "Željeni jezik za prikaz:", "LabelPreferredDisplayLanguageHelp": "Prevađanje Jellyfin-a je projekt u tijeku.", - "LabelPrevious": "Prethodni", "LabelProfileAudioCodecs": "Audio kodek:", "LabelProfileCodecs": "Kodeki:", "LabelProfileCodecsHelp": "Odvojeno sa točka-zrezom. Ovo može ostaviti prazno kao bi bilo postavljeno za sve codecs.", @@ -519,7 +500,6 @@ "LabelPublicHttpPortHelp": "Broj javnog broja porta koji treba biti mapiran na lokalni http port.", "LabelPublicHttpsPort": "Javni broj https porta:", "LabelPublicHttpsPortHelp": "Broj javnog broja porta koji treba biti mapiran na lokalni https port.", - "LabelReadHowYouCanContribute": "Naučite kako možete pridonijeti.", "LabelRecord": "Snimka:", "LabelRecordingPath": "Zadana putanja za snimanje:", "LabelRecordingPathHelp": "Odredite zadano mjesto za spremanje snimaka. Ako se ostavi prazno, koristit će se mapa poslužitelja programskih podaka.", @@ -885,23 +865,15 @@ "TabAccess": "Pristup", "TabAdvanced": "Napredno", "TabAlbumArtists": "Albumi izvođača", - "TabAlbums": "Albumi", "TabCatalog": "Katalog", - "TabChannels": "Kanali", "TabCodecs": "Kodek", - "TabCollections": "Kolekcije", "TabContainers": "Spremnik", "TabDashboard": "Nadzorna ploča", - "TabDevices": "Uređaji", "TabDirectPlay": "Direktna reprodukcija", "TabEpisodes": "Epizode", - "TabFavorites": "Omiljeni", - "TabGenres": "Žanrovi", - "TabGuide": "Vodič", "TabLatest": "Zadnje", "TabLiveTV": "TV uživo", "TabLogs": "Dnevnici", - "TabMovies": "Filmovi", "TabMusic": "Glazba", "TabMusicVideos": "Muzički spotovi", "TabMyPlugins": "Moji dodaci", @@ -921,8 +893,6 @@ "TabScheduledTasks": "Zakazani zadaci", "TabSeries": "Serije", "TabSettings": "Postavke", - "TabShows": "Emisije", - "TabSongs": "Pjesme", "TabStreaming": "Strujanje", "TabTrailers": "Kratki filmovi", "TabUpcoming": "Uskoro", @@ -1058,7 +1028,6 @@ "Off": "Isključi", "Normal": "Normalno", "None": "Ništa", - "NoSubtitles": "Ništa", "No": "Ne", "NextUp": "Slijedi", "Next": "Slijedeće", @@ -1149,7 +1118,6 @@ "HeaderMyDevice": "Moj uređaj", "HeaderLibrarySettings": "Postavke biblioteke", "HeaderHome": "Početna", - "HeaderGenres": "Žanrovi", "HeaderFavoritePeople": "Omiljeni ljudi", "HeaderFavoriteMovies": "Omiljeni filmovi", "HeaderFavoriteBooks": "Omiljene knjige", @@ -1160,7 +1128,6 @@ "HeaderAudioBooks": "Audio knjige", "ApiKeysCaption": "Popis trenutno dostupnih API ključeva", "HeaderAllowMediaDeletionFrom": "Dozvoli brisanje datoteka iz", - "HeaderAlbums": "Albumi", "HeaderAdmin": "Administrator", "Guide": "Vodič", "GroupBySeries": "Grupiraj po serijama", @@ -1181,7 +1148,6 @@ "EnableDecodingColorDepth10Vp9": "Omogući 10-Bitno hardversko dekodiranje za VP9", "EnableDecodingColorDepth10Hevc": "Omogući 10-Bitno hardversko dekodiranje za HEVC", "EnableCinemaMode": "Kino mod", - "EnableBackdrops": "Pozadine", "EditMetadata": "Izmijeni meta podatke", "DisplayMissingEpisodesWithinSeasons": "Prikaži epizode koje nedostaju unutar sezona", "DisplayInMyMedia": "Prikaz na početnom ekranu", diff --git a/src/strings/hu.json b/src/strings/hu.json index 70089ff734..9baf2220b6 100644 --- a/src/strings/hu.json +++ b/src/strings/hu.json @@ -10,7 +10,6 @@ "AllLanguages": "Összes nyelv", "AllLibraries": "Összes könyvtár", "Ascending": "Növekvő", - "AttributeNew": "Új", "Audio": "Audió", "BirthDateValue": "Született: {0}", "BirthPlaceValue": "Születési hely: {0}", @@ -19,16 +18,9 @@ "ButtonAddMediaLibrary": "Médiakönyvtár hozzáadása", "ButtonAddServer": "Szerver Hozzáadása", "ButtonAddUser": "Új felhasználó", - "ButtonArrowDown": "Le", - "ButtonArrowUp": "Fel", "ButtonAudioTracks": "Audió Sávok", "ButtonCancel": "Mégsem", "ButtonChangeServer": "Szerver váltás", - "ButtonConnect": "Kapcsolódás", - "ButtonDelete": "Törlés", - "ButtonDeleteImage": "Kép törlése", - "ButtonDown": "Le", - "ButtonDownload": "Letöltés", "ButtonEdit": "Szerkesztés", "ButtonEditImages": "Képek szerkesztése", "ButtonFilter": "Szűrő", @@ -38,7 +30,6 @@ "ButtonLibraryAccess": "Könyvtár hozzáférés", "ButtonManualLogin": "Manuális belépés", "ButtonMore": "Tovább", - "ButtonNew": "Új", "ButtonNextTrack": "Következő sáv", "ButtonOff": "Ki", "ButtonOpen": "Megnyitás", @@ -60,11 +51,9 @@ "ButtonSelectServer": "Szerver Kiválasztás", "ButtonSend": "Küldés", "ButtonSettings": "Beállítások", - "ButtonShuffle": "Keverés", "ButtonShutdown": "Leállítás", "ButtonSignIn": "Bejelentkezés", "ButtonSignOut": "Kijelentkezés", - "ButtonSort": "Rendezés", "ButtonStop": "Leállít", "ButtonSubmit": "Elküld", "ButtonSubtitles": "Feliratok", @@ -92,7 +81,6 @@ "EditImages": "Képek szerkesztése", "EditMetadata": "Metaadat szerkesztése", "EditSubtitles": "Feliratok szerkesztése", - "EnableBackdrops": "Háttérképek", "EnableBackdropsHelp": "A háttérképek a könyvtár böngészése közben néhány oldal hátterében jelennek meg.", "EnableHardwareEncoding": "Hardveres kódolás engedélyezése", "EnableThemeSongs": "Főcímdalok", @@ -122,12 +110,10 @@ "HeaderAddToPlaylist": "Hozzáadás lejátszási listához", "HeaderAddUpdateImage": "Kép hozzáadása / frissítése", "HeaderAddUser": "Új felhasználó", - "HeaderAlbums": "Albumok", "HeaderAudioBooks": "Hangos könyvek", "HeaderAudioSettings": "Audió Beállítások", "HeaderCastAndCrew": "Szereplők és Stáb", "HeaderCastCrew": "Szereplők és Stáb", - "HeaderChannels": "Csatornák", "HeaderConnectToServer": "Kapcsolódás a Szerverhez", "HeaderContinueWatching": "Megtekintés folytatása", "HeaderCustomDlnaProfiles": "Egyedi profilok", @@ -143,7 +129,6 @@ "HeaderExternalIds": "Külső id-k:", "HeaderForgotPassword": "Elfelejtett Jelszó", "HeaderFrequentlyPlayed": "Gyakran játszott", - "HeaderGenres": "Műfajok", "HeaderIdentifyItemHelp": "Adj meg egy vagy több keresési kritériumot. Távolítsd el a kritériumokat a keresési eredmények növelése érdekében.", "HeaderImageSettings": "Kép beállítások", "HeaderInstall": "Telepítés", @@ -161,7 +146,6 @@ "HeaderMediaInfo": "Média Infó", "HeaderMetadataSettings": "Metaadat Beállítások", "HeaderMoreLikeThis": "Több ehhez hasonló", - "HeaderMovies": "Filmek", "HeaderMusicVideos": "Zenei videók", "HeaderMyDevice": "Jelenlegi eszköz", "HeaderMyMedia": "Médiatáram", @@ -193,7 +177,6 @@ "HeaderSeries": "Sorozatok", "HeaderSettings": "Beállítások", "HeaderSetupLibrary": "Média könyvtárak beállítása", - "HeaderShutdown": "Leállítás", "HeaderSortBy": "Megjelenítés", "HeaderSortOrder": "Sorrend", "HeaderSpecialFeatures": "Speciális lehetőségek", @@ -207,7 +190,6 @@ "HeaderVideoType": "Videó típusa", "HeaderVideos": "Videók", "HeaderYears": "Év", - "HeadersFolders": "Könyvtárak", "Help": "Segítség", "HideWatchedContentFromLatestMedia": "A megtekintett tartalom elrejtése a legújabb médiából", "Home": "Kezdőlap", @@ -267,7 +249,6 @@ "LabelName": "Név:", "LabelNewPassword": "Új jelszó:", "LabelNewPasswordConfirm": "Új jelszó megerősítése:", - "LabelNext": "Következő", "LabelNotificationEnabled": "Értesítés engedélyezése", "LabelOptionalNetworkPath": "Megosztott hálózati mappa:", "LabelOriginalAspectRatio": "Eredeti képarány:", @@ -281,7 +262,6 @@ "LabelPlaylist": "Lejátszási lista:", "LabelPreferredDisplayLanguage": "Elsődleges megjelenítendő nyelv:", "LabelPreferredDisplayLanguageHelp": "A Jellyfin fordítása egy folyamatos projekt.", - "LabelPrevious": "Előző", "LabelProfileAudioCodecs": "Audió kódekek:", "LabelProfileCodecs": "Kódek:", "LabelProfileContainer": "Tároló:", @@ -484,22 +464,14 @@ "TabAccess": "Hozzáférés", "TabAdvanced": "Haladó", "TabAlbumArtists": "Album Előadók", - "TabAlbums": "Albumok", "TabCatalog": "Katalógus", - "TabChannels": "Csatornák", "TabCodecs": "Kódek", - "TabCollections": "Gyűjtemények", "TabContainers": "Tároló", "TabDashboard": "Vezérlőpult", - "TabDevices": "Eszközök", "TabEpisodes": "Epizódok", - "TabFavorites": "Kedvencek", - "TabGenres": "Műfajok", - "TabGuide": "Leírás", "TabInfo": "Infó", "TabLatest": "Legújabb", "TabLogs": "Naplók", - "TabMovies": "Filmek", "TabMusic": "Zene", "TabMusicVideos": "Zenei Videók", "TabMyPlugins": "Telepített bővítmények", @@ -518,8 +490,6 @@ "TabSeries": "Sorozatok", "TabServer": "Szerver", "TabSettings": "Beállítások", - "TabShows": "Műsorok", - "TabSongs": "Dalok", "TabTrailers": "Előzetesek", "TabUpcoming": "Hamarosan érkezik", "TabUsers": "Felhasználók", @@ -595,7 +565,6 @@ "ButtonRevoke": "Visszavon", "ButtonSelectView": "Válassz nézetet", "ButtonStart": "Start", - "ButtonUp": "Fel", "CancelRecording": "Felvétel törlése", "CancelSeries": "Sorozat törlése", "Categories": "Kategóriák", @@ -719,7 +688,6 @@ "HeaderIdentificationHeader": "Azonosító fejléc", "HeaderImageOptions": "Képbeállítások", "HeaderInstantMix": "Azonnali keverés", - "HeaderItems": "Elemek", "HeaderKeepRecording": "Felvétel készítése", "HeaderKodiMetadataHelp": "Az Nfo metaadatok engedélyezéséhez vagy letiltásához szerkeszd a könyvtárat és keresd meg a metaadat letöltő részt.", "HeaderLatestMusic": "Legújabb Zene", @@ -914,7 +882,6 @@ "LabelPublicHttpPortHelp": "A nyilvános port száma, amelyet a helyi HTTP portra kell átirányítani.", "LabelPublicHttpsPort": "Nyilvános HTTPS port száma:", "LabelPublicHttpsPortHelp": "A nyilvános port száma, amelyet a helyi HTTPS portra kell átirányítani.", - "LabelReadHowYouCanContribute": "Ismerd meg, hogyan járulhatsz hozzá.", "LabelReasonForTranscoding": "Az átkódolás oka:", "LabelRemoteClientBitrateLimit": "Internetes streaming bitráta limit (Mbps):", "LabelRemoteClientBitrateLimitHelp": "Ez egy opcionális adatfolyam sebesség korlát a hálózaton kívüli eszközök számára. Ez akkor hasznos, amikor az eszközök magasabb bitrátát kérnek, mint amennyit az internetkapcsolat képes kezelni. Ez megnövelheti a szerver CPU terhelését, hogy átkódolja a videókat egy alacsonyabb bitrátára.", @@ -1041,7 +1008,6 @@ "NoNewDevicesFound": "Nem található új eszköz. Új tuner hozzáadásához zárd be ezt a párbeszédablakot és add meg kézzel az eszköz adatait.", "MessageNoNextUpItems": "Nem található. Kezdj el nézni műsorokat!", "MessageNoPluginConfiguration": "Ez a bővítmény nem rendelkezik konfigurációs beállításokkal.", - "NoSubtitles": "Nincs", "NoSubtitlesHelp": "A feliratok alapértelmezés szerint nem lesznek betöltve. Lejátszás közben kézzel is bekapcsolhatók.", "Off": "Ki", "OneChannel": "Egy csatorna", @@ -1464,7 +1430,6 @@ "HeaderServerAddressSettings": "Kiszolgáló Címének Beállításai", "HeaderRemoteAccessSettings": "Távoli Hozzáférés Beállításai", "HeaderHttpsSettings": "HTTPS Beállítások", - "TabDVR": "DVR", "HeaderDVR": "DVR", "SaveChanges": "Változtatások mentése", "MessageSyncPlayGroupWait": "{0} pufferel…", diff --git a/src/strings/id.json b/src/strings/id.json index bcb8c6a441..a11d411afa 100644 --- a/src/strings/id.json +++ b/src/strings/id.json @@ -10,8 +10,6 @@ "LabelCountry": "Negara:", "LabelFinish": "Selesai", "LabelLanguage": "Bahasa:", - "LabelNext": "Berikutnya", - "LabelPrevious": "Sebelumnya", "LabelSaveLocalMetadata": "Simpan artwork dan metadata ke dalam folder media", "LabelSaveLocalMetadataHelp": "Menyimpan artwork dan metadata langsung ke folder media akan meletakkan mereka di tempat yang mudah diedit.", "LabelTimeLimitHours": "Batas waktu (jam):", @@ -79,15 +77,12 @@ "Categories": "Kategori", "CancelRecording": "Batalkan perekaman", "ButtonWebsite": "Situs web", - "ButtonUp": "Atas", "ButtonTrailer": "Cuplikan", "ButtonSubmit": "Kirim", "ButtonStop": "Berhenti", "ButtonStart": "Mulai", - "ButtonSort": "Urutkan", "ButtonSignIn": "Masuk", "ButtonShutdown": "Matikan", - "ButtonShuffle": "Acak", "ButtonSettings": "Pengaturan", "ButtonSend": "Kirim", "ButtonSelectView": "Pilih tampilan", @@ -108,7 +103,6 @@ "ButtonOpen": "Buka", "ButtonOk": "Baik", "ButtonOff": "Matikan", - "ButtonNew": "Baru", "ButtonNetwork": "Jaringan", "ButtonMore": "Lebih banyak", "ButtonLibraryAccess": "Akses pustaka", @@ -122,19 +116,12 @@ "ButtonEditOtherUserPreferences": "Ubah profil, gambar, dan preferensi pribadi pengguna ini.", "ButtonEditImages": "Ubah gambar", "ButtonEdit": "Ubah", - "ButtonDownload": "Unduh", - "ButtonDown": "Bawah", - "ButtonDeleteImage": "Hapus Gambar", - "ButtonDelete": "Hapus", - "ButtonConnect": "Sambung", "ButtonChangeServer": "Ubah Peladen", "ButtonCancel": "Batalkan", "ButtonBack": "Kembali", "ButtonAudioTracks": "Trek Audio", - "ButtonArrowUp": "Atas", "ButtonArrowRight": "Kanan", "ButtonArrowLeft": "Kiri", - "ButtonArrowDown": "Turun", "ButtonAddUser": "Tambah Pengguna", "ButtonAddServer": "Tambah Peladen", "ButtonAddScheduledTaskTrigger": "Tambah Pemicu", @@ -155,7 +142,6 @@ "Auto": "Auto", "AuthProviderHelp": "Pilih Penyedia Autentikasi yang akan digunakan untuk mengautentikasi kata sandi pengguna ini.", "Audio": "Audio", - "AttributeNew": "Baru", "AspectRatio": "Rasio perbandingan", "Ascending": "Urutan naik", "AsManyAsPossible": "Sebanyak mungkin", diff --git a/src/strings/is-is.json b/src/strings/is-is.json index a820f82921..264b341b62 100644 --- a/src/strings/is-is.json +++ b/src/strings/is-is.json @@ -2,7 +2,6 @@ "All": "Allt", "Browse": "Vafra", "ButtonCancel": "Hætta við", - "ButtonNew": "Nýtt", "ButtonOk": "Í lagi", "ButtonSignOut": "Útskráning", "DeleteMedia": "Eyða margmiðlunarefni", @@ -20,8 +19,6 @@ "LabelCountry": "Land:", "LabelFinish": "Ljúka", "LabelLanguage": "Tungumál:", - "LabelNext": "Næsta", - "LabelPrevious": "Fyrra", "LabelTimeLimitHours": "Tímamörk (í klukkustundum):", "MoreUsersCanBeAddedLater": "Þú getur bætt við fleiri notendum síðar undir stjórnborðinu.", "NextUp": "Næst á dagskrá", @@ -36,10 +33,8 @@ "ButtonAddImage": "Bæta við ljósmynd", "ButtonAddServer": "Bæta við þjón", "ButtonAddUser": "Bæta við notenda", - "ButtonArrowDown": "Niður", "ButtonArrowLeft": "Vinstri", "ButtonArrowRight": "Hægri", - "ButtonArrowUp": "Upp", "OptionBlockBooks": "Bækur", "OptionContinuing": "Heldur áfram", "OptionBlockTvShows": "Sjónvarpsþættir", @@ -98,7 +93,6 @@ "AsManyAsPossible": "Eins margir og mögulegt er", "Ascending": "Í vaxandi röð", "AspectRatio": "Skjáhlutfall", - "AttributeNew": "Nýtt", "Audio": "Hjóð", "Auto": "Sjálfkrafa", "Banner": "Borði", @@ -172,7 +166,6 @@ "HeaderCastCrew": "Leikarar og Áhöfn", "HeaderCastAndCrew": "Leikarar og Áhöfn", "HeaderBooks": "Bækur", - "HeaderAlbums": "Plötur", "HeaderAdmin": "Stjórnandi", "GuideProviderLogin": "Innskrá", "General": "Almennt", @@ -208,13 +201,10 @@ "Categories": "Flokkar", "CancelRecording": "Hætta við upptöku", "ButtonWebsite": "Vefsiða", - "ButtonUp": "Upp", "ButtonUninstall": "Fjarlægja", "ButtonTrailer": "Sýnishorn", "ButtonSubtitles": "Texti", - "ButtonSort": "Flokka", "ButtonSignIn": "Innskráning", - "ButtonShuffle": "Stokka", "ButtonSettings": "Stillingar", "ButtonSend": "Senda", "ButtonSelectServer": "Velja netþjón", @@ -252,11 +242,6 @@ "ButtonEditOtherUserPreferences": "Breyta stillingum notanda, mynd og persónulegum stillingum.", "ButtonEditImages": "Breyta myndum", "ButtonEdit": "Breyta", - "ButtonDownload": "Sækja", - "ButtonDown": "Niður", - "ButtonDeleteImage": "Eyða Mynd", - "ButtonDelete": "Eyða", - "ButtonConnect": "Tengjast", "ButtonChangeServer": "Skipta um þjón", "ButtonBack": "Til baka", "ButtonAudioTracks": "Hljóðspor", @@ -300,14 +285,12 @@ "HeaderAddToPlaylist": "Bæta við á Spilunarlista", "HeaderAlert": "Viðvörun", "HeaderAppearsOn": "Birtist á", - "HeaderChannels": "Rásir", "HeaderDetectMyDevices": "Finna tækin mín", "HeaderFavoritePeople": "Uppáhalds Fólk", "HeaderFavoritePlaylists": "Uppáhalds spilunarlistar", "HeaderForgotPassword": "Gleymt lykilorð", "HeaderForKids": "Fyrir Krakka", "HeaderFrequentlyPlayed": "Oft Spilað", - "HeaderGenres": "Flokkar", "HeaderLatestMusic": "Tónlist, nýlega bætt við", "HeaderMetadataSettings": "Stillingar lýsigagna", "HeaderMedia": "Margmiðlunarsafn", @@ -316,7 +299,6 @@ "HeaderMyDevice": "Tækið mitt", "HeaderMusicVideos": "Tónlistarmyndbönd", "HeaderMusicQuality": "Tónlistargæði", - "HeaderMovies": "Kvikmyndir", "HeaderNewDevices": "Ný tæki", "HeaderPasswordReset": "Endurstilla Lykilorð", "HeaderPhotoAlbums": "Myndaalbúm", @@ -429,7 +411,6 @@ "TabUsers": "Notendur", "TabUpcoming": "Væntanlegt", "TabTrailers": "Sýnishorn", - "TabSongs": "Lög", "TabResumeSettings": "Halda áfram", "TabProfile": "Prófíll", "TabPlugins": "Viðbætur", @@ -438,7 +419,6 @@ "TabMyPlugins": "Mínar viðbætur", "TabMusicVideos": "Tónlistarmyndbönd", "TabMusic": "Tónlist", - "TabMovies": "Kvikmyndir", "PleaseRestartServerName": "Vinsamlegast endurræstu Jellyfin netþjóninn - {0}.", "Previous": "Fyrri", "Premiere": "Frumsýning", @@ -483,8 +463,6 @@ "HeaderVideoQuality": "Myndgæði", "HeaderUsers": "Notendur", "HeaderUser": "Notandi", - "TabGenres": "Flokkar", - "TabFavorites": "Eftirlæti", "TabEpisodes": "Þættir", "TabDirectPlay": "Bein Spilun", "TabAdvanced": "Ítarlegt", diff --git a/src/strings/it.json b/src/strings/it.json index 2dd958fb49..af6de16491 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -32,7 +32,6 @@ "AsManyAsPossible": "Tutto il possibile", "Ascending": "Crescente", "AspectRatio": "Rapporto d'Aspetto", - "AttributeNew": "Nuovo", "Backdrop": "Sfondo", "Backdrops": "Sfondi", "BirthDateValue": "Nato il: {0}", @@ -48,18 +47,12 @@ "ButtonAddScheduledTaskTrigger": "Aggiungi operazione", "ButtonAddServer": "Aggiungi server", "ButtonAddUser": "Aggiungi Utente", - "ButtonArrowDown": "Giù", "ButtonArrowLeft": "Sinistra", "ButtonArrowRight": "Destra", - "ButtonArrowUp": "Su", "ButtonAudioTracks": "Tracce Audio", "ButtonBack": "Indietro", "ButtonCancel": "Annulla", "ButtonChangeServer": "Cambia Server", - "ButtonConnect": "Connetti", - "ButtonDelete": "Elimina", - "ButtonDeleteImage": "Elimina immagine", - "ButtonDown": "Giu", "ButtonEdit": "Modifica", "ButtonEditImages": "Modifica Immagini", "ButtonEditOtherUserPreferences": "Modifica questo utente di profilo, l'immagine e le preferenze personali.", @@ -72,7 +65,6 @@ "ButtonManualLogin": "Accesso Manuale", "ButtonMore": "Altro", "ButtonNetwork": "Rete", - "ButtonNew": "Nuovo", "ButtonNextTrack": "Traccia Successiva", "ButtonOff": "No", "ButtonOpen": "Apri", @@ -97,16 +89,13 @@ "ButtonSelectView": "Seleziona vista", "ButtonSend": "Invia", "ButtonSettings": "Impostazioni", - "ButtonShuffle": "Casuale", "ButtonShutdown": "Arresta Server", "ButtonSignIn": "Accedi", "ButtonSignOut": "Esci", - "ButtonSort": "Ordina", "ButtonStart": "Avvio", "ButtonSubmit": "Invia", "ButtonSubtitles": "Sottotitoli", "ButtonUninstall": "Disinstalla", - "ButtonUp": "Su", "ButtonWebsite": "Web", "CancelRecording": "Annulla la registrazione", "CancelSeries": "Annulla Serie TV", @@ -177,7 +166,6 @@ "EditImages": "Modifica immagini", "EditMetadata": "Modifica metadati", "EditSubtitles": "Modifica i sottotitoli", - "EnableBackdrops": "Abilita gli Sfondi", "EnableBackdropsHelp": "Gli sfondi verranno mostrati sullo sfondo di alcune pagine mentre visualizzi la libreria.", "EnableCinemaMode": "Modalità cinema", "EnableColorCodedBackgrounds": "Sfondi a colori", @@ -255,7 +243,6 @@ "HeaderAdditionalParts": "Parti addizionali", "HeaderAdmin": "Admin", "HeaderAlbumArtists": "Artisti degli Album", - "HeaderAlbums": "Album", "HeaderAlert": "Avviso", "HeaderAllowMediaDeletionFrom": "Abilita Eliminazione Media Da", "HeaderApiKey": "Chiave API", @@ -269,7 +256,6 @@ "HeaderCancelRecording": "Annulla la Registrazione", "HeaderCancelSeries": "Annulla Serie TV", "HeaderChannelAccess": "Accesso canali", - "HeaderChannels": "Canali", "HeaderChapterImages": "Immagini Capitolo", "HeaderCodecProfile": "Profilo Codec", "HeaderCodecProfileHelp": "I Profili Codec indicano i limiti di un dispositivo durante la riproduzione di codec specifici. Se una limitazione corrisponde i media saranno sottoposti a transcodifica, anche se il codec è configurato per la riproduzione diretta.", @@ -310,7 +296,6 @@ "HeaderForKids": "Per Bambini", "HeaderForgotPassword": "Password dimenticata", "HeaderFrequentlyPlayed": "Visti di frequente", - "HeaderGenres": "Generi", "HeaderGuideProviders": "Provider Guida", "HeaderHttpHeaders": "Header HTTP", "HeaderIdentification": "Identificazione", @@ -319,7 +304,6 @@ "HeaderImageSettings": "Impostazioni Immagini", "HeaderInstall": "Installa", "HeaderInstantMix": "Mix Istantaneo", - "HeaderItems": "Elementi", "HeaderKeepRecording": "Mantieni la registrazione", "HeaderKeepSeries": "Mantieni Serie TV", "HeaderKodiMetadataHelp": "Jellyfin include il supporto nativo per i file metadati NFO. Per attivare o disattivare i metadati NFO, utilizzare la scheda Metadati per configurare le opzioni per i tipi di supporto.", @@ -341,7 +325,6 @@ "HeaderMediaInfo": "Informazioni Media", "HeaderMetadataSettings": "Impostazioni Metadati", "HeaderMoreLikeThis": "Simili a questo", - "HeaderMovies": "Film", "HeaderMusicQuality": "Qualità Musica", "HeaderMusicVideos": "Video Musicali", "HeaderMyDevice": "Il Mio Dispositivo", @@ -401,7 +384,6 @@ "HeaderServerSettings": "Impostazioni server", "HeaderSettings": "Impostazioni", "HeaderSetupLibrary": "Imposta le tue librerie multimediali", - "HeaderShutdown": "Spegni", "HeaderSortBy": "Ordina per", "HeaderSortOrder": "Ordinamento", "HeaderSpecialEpisodeInfo": "Informazioni Episodio Speciale", @@ -435,7 +417,6 @@ "HeaderXmlDocumentAttributes": "Attributi Documento Xml", "HeaderXmlSettings": "Impostazioni Xml", "HeaderYears": "Anni", - "HeadersFolders": "Cartella", "Help": "Aiuto", "Hide": "Nascondi", "HideWatchedContentFromLatestMedia": "Nascondi i contenuti già visti dagli Ultimi Media", @@ -645,7 +626,6 @@ "LabelNewPassword": "Nuova password:", "LabelNewPasswordConfirm": "Conferma nuova password:", "LabelNewsCategories": "Categorie notizie:", - "LabelNext": "Prossimo", "LabelNotificationEnabled": "Abilita questa notifica", "LabelNumber": "Numero:", "LabelNumberOfGuideDays": "Numero di giorni per i quali scaricare i dati della guida:", @@ -670,7 +650,6 @@ "LabelPreferredDisplayLanguage": "Lingua preferita visualizzata:", "LabelPreferredDisplayLanguageHelp": "La traduzione di Jellyfin è un progetto attivo.", "LabelPreferredSubtitleLanguage": "Lingua dei sottotitoli preferita:", - "LabelPrevious": "Precedente", "LabelProfileAudioCodecs": "Codec Audio:", "LabelProfileCodecs": "Codec:", "LabelProfileCodecsHelp": "Separati da virgola. Questo può essere lasciato vuoto da applicare a tutti i codec.", @@ -684,7 +663,6 @@ "LabelPublicHttpPortHelp": "Numero di porta pubblica che dovrebbe essere mappato sulla porta HTTP locale.", "LabelPublicHttpsPort": "Numero porta HTTPS pubblica:", "LabelPublicHttpsPortHelp": "Numero della porta pubblica che dovrebbe essere mappato sulla porta HTTPS locale.", - "LabelReadHowYouCanContribute": "Scopri come puoi contribuire.", "LabelReasonForTranscoding": "Motivo per la transcodifica:", "LabelRecord": "Registra:", "LabelRecordingPath": "Percorso di registrazione predefinito:", @@ -875,7 +853,6 @@ "MessageNoNextUpItems": "Trovato niente. Inizia a guardare i tuoi programmi!", "MessageNoPluginConfiguration": "Questo Plugin non ha impostazioni da configurare.", "NoSubtitleSearchResultsFound": "Nessun risultato.", - "NoSubtitles": "Nessuno", "NoSubtitlesHelp": "I sottotitoli non verranno caricati per impostazione predefinita.Possono essere ancora caricati manualmente durante la riproduzione.", "None": "Nessuno", "Normal": "Normale", @@ -1138,22 +1115,14 @@ "TabAccess": "Accesso", "TabAdvanced": "Avanzato", "TabAlbumArtists": "Artisti degli Album", - "TabAlbums": "Album", "TabCatalog": "Catalogo", - "TabChannels": "Canali", "TabCodecs": "Codec", - "TabCollections": "Collezioni", "TabContainers": "Contenitori", "TabDashboard": "Pannello Controllo", - "TabDevices": "Dispositivi", "TabDirectPlay": "Riproduzione Diretta", "TabEpisodes": "Episodi", - "TabFavorites": "Preferiti", - "TabGenres": "Generi", - "TabGuide": "Guida", "TabLatest": "Novità", "TabLiveTV": "Tv in Diretta", - "TabMovies": "Film", "TabMusic": "Musica", "TabMusicVideos": "Video Musicali", "TabMyPlugins": "I miei Plug-in", @@ -1171,8 +1140,6 @@ "TabScheduledTasks": "Operazioni Pianificate", "TabSeries": "Serie TV", "TabSettings": "Impostazioni", - "TabShows": "Spettacoli", - "TabSongs": "Brani", "TabTrailers": "Trailer", "TabUpcoming": "In Arrivo", "TabUsers": "Utenti", @@ -1248,7 +1215,6 @@ "Banner": "Banner", "Blacklist": "Blacklist", "Box": "Scatola", - "ButtonDownload": "Download", "ButtonHome": "Home", "ButtonInfo": "Info", "ButtonOk": "Ok", @@ -1464,7 +1430,6 @@ "HeaderServerAddressSettings": "Configurazione Indirizzo Server", "HeaderRemoteAccessSettings": "Configurazione Access Remoto", "HeaderHttpsSettings": "Configurazione HTTPS", - "TabDVR": "DVR", "SaveChanges": "Salva modifiche", "HeaderDVR": "DVR", "SyncPlayAccessHelp": "Selezionare il livello d'accesso di questo utente a SyncPlay che permetterà di riprodurre contemporaneamente su diversi dispositivi.", diff --git a/src/strings/ja.json b/src/strings/ja.json index f57a1ea672..31f377875d 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -57,19 +57,12 @@ "ButtonAddScheduledTaskTrigger": "トリガーを追加", "ButtonAddServer": "サーバーを追加", "ButtonAddUser": "ユーザーを追加", - "ButtonArrowDown": "下", "ButtonArrowLeft": "左", "ButtonArrowRight": "右", - "ButtonArrowUp": "上", "ButtonAudioTracks": "オーディオトラック", "ButtonBack": "戻る", "ButtonCancel": "キャンセル", "ButtonChangeServer": "サーバーを変更", - "ButtonConnect": "接続", - "ButtonDelete": "削除", - "ButtonDeleteImage": "イメージを削除", - "ButtonDown": "下", - "ButtonDownload": "ダウンロード", "ButtonEdit": "編集", "ButtonEditImages": "イメージを編集", "ButtonEditOtherUserPreferences": "ユーザーのアバターイメージやプロフィールなどの個人設定を編集。", @@ -108,18 +101,15 @@ "ButtonSelectView": "ビューを選択", "ButtonSend": "送る", "ButtonSettings": "設定", - "ButtonShuffle": "シャッフル", "ButtonShutdown": "シャットダウン", "ButtonSignIn": "サインイン", "ButtonSignOut": "サインアウト", - "ButtonSort": "ソート", "ButtonStart": "スタート", "ButtonStop": "ストップ", "ButtonSubmit": "提出", "ButtonSubtitles": "字幕", "ButtonTrailer": "予告", "ButtonUninstall": "アンインストール", - "ButtonUp": "上", "ButtonWebsite": "ウェブサイト", "CancelRecording": "レコーディングをキャンセル", "CancelSeries": "中止したシリーズ", @@ -190,7 +180,6 @@ "EditImages": "イメージを編集", "EditMetadata": "メタデータを編集", "EditSubtitles": "字幕を編集", - "EnableBackdrops": "背景", "EnableBackdropsHelp": "ライブラリを閲覧している間、背景がいくつかのページの背景に表示されます。", "EnableCinemaMode": "シネマモード", "EnableColorCodedBackgrounds": "カラーコードによる背景", @@ -215,8 +204,6 @@ "HeaderMoreLikeThis": "これに似たもの", "InstantMix": "インスタントミックス", "MoreFromValue": "もっと詳しく {0}", - "AttributeNew": "新規", - "ButtonNew": "新規", "ButtonOff": "オフ", "ColorTransfer": "Color transfer", "DeathDateValue": "死亡日:{0}", @@ -281,7 +268,6 @@ "HeaderAdditionalParts": "追加のパーツ", "HeaderAdmin": "管理者", "HeaderAlbumArtists": "アルバムアーティスト", - "HeaderAlbums": "アルバム", "HeaderAlert": "アラート", "HeaderAllowMediaDeletionFrom": "メディアの削除を許可", "HeaderApiKey": "API キー", @@ -299,7 +285,6 @@ "HeaderCastAndCrew": "キャスト&クルー", "HeaderCastCrew": "キャスト&クルー", "HeaderChannelAccess": "チャンネルアクセス", - "HeaderChannels": "チャンネル", "HeaderChapterImages": "チャプターイメージ", "HeaderCodecProfile": "コーデックプロファイル", "HeaderCodecProfileHelp": "コーデックプロファイルは、特定のコーデックを再生するときのデバイスの制限を示します。 制限が適用される場合、コーデックが直接再生用に設定されていても、メディアはトランスコードされます。", @@ -348,7 +333,6 @@ "HeaderForKids": "子供向け", "HeaderForgotPassword": "パスワードを忘れました", "HeaderFrequentlyPlayed": "よく再生する", - "HeaderGenres": "ジャンル", "HeaderGuideProviders": "TV番組情報のプロバイダ", "HeaderHome": "ホーム", "HeaderHttpHeaders": "HTTPヘッダー", @@ -359,7 +343,6 @@ "HeaderImageOptions": "イメージオプション", "HeaderImageSettings": "イメージ設定", "HeaderInstall": "インストール", - "HeaderItems": "アイテム", "HeaderKeepRecording": "録画を続ける", "HeaderKeepSeries": "シリーズを続ける", "HeaderKodiMetadataHelp": "NFOメタデータを有効または無効にするには、ライブラリを編集し「メタデータサーバー」の項目にて変更できます。", @@ -381,7 +364,6 @@ "HeaderMediaFolders": "メディアフォルダ", "HeaderMediaInfo": "メディア情報", "HeaderMetadataSettings": "メタデータ設定", - "HeaderMovies": "ムービー", "HeaderMusicQuality": "ミュージックの品質", "HeaderMusicVideos": "ミュージックビデオ", "HeaderMyDevice": "マイデバイス", @@ -442,7 +424,6 @@ "HeaderServerSettings": "サーバー設定", "HeaderSettings": "設定", "HeaderSetupLibrary": "メディアライブラリを設定する", - "HeaderShutdown": "シャットダウン", "HeaderSortBy": "ソート", "HeaderSortOrder": "ソート順", "HeaderSpecialEpisodeInfo": "スペシャルエピソード情報", @@ -475,7 +456,6 @@ "HeaderVideos": "ビデオ", "HeaderXmlSettings": "XML設定", "HeaderYears": "年", - "HeadersFolders": "フォルダ", "Help": "ヘルプ", "Hide": "隠す", "Movies": "ムービー", @@ -488,8 +468,6 @@ "ButtonAddImage": "イメージの追加", "List": "リスト", "MediaInfoTimestamp": "タイムスタンプ", - "NoSubtitles": "無し", - "TabCollections": "コレクション", "Thursday": "木曜日", "TitleHardwareAcceleration": "ハードウェアアクセラレーション", "Tuesday": "火曜日", @@ -535,11 +513,9 @@ "LabelModelUrl": "モデルURL", "LabelNewPassword": "新しいパスワード:", "LabelNewPasswordConfirm": "新しいパスワードを確認:", - "LabelNext": "次へ", "LabelNotificationEnabled": "この通知を有効化", "LabelOptionalNetworkPath": "(任意) 共有ネットワークフォルダー:", "LabelOriginalAspectRatio": "元のアスペクト比:", - "LabelPrevious": "前へ", "LabelServerName": "サーバー名:", "LabelSubtitles": "字幕", "LabelSupportedMediaTypes": "サポートされているメディアタイプ:", @@ -595,8 +571,6 @@ "CopyStreamURLSuccess": "URLのコピーが成功しました。", "TabDirectPlay": "直接再生", "TabEpisodes": "エピソード", - "TabFavorites": "お気に入り", - "TabGenres": "ジャンル", "LabelDefaultUser": "デフォルトユーザー:", "TabSeries": "シリーズ", "Trailers": "トレーラー", @@ -616,7 +590,6 @@ "FetchingData": "追加のデータを取得中", "HeaderFavoriteBooks": "お気に入りのブック", "OneChannel": "1チャンネル", - "TabDevices": "デバイス", "ValueContainer": "コンテナ: {0}", "ImportFavoriteChannelsHelp": "チューナーでのお気に入りのチャンネルのみインポートされます。", "MusicAlbum": "ミュージックアルバム", @@ -743,9 +716,7 @@ "TabAccess": "アクセス", "TabAdvanced": "高度", "TabAlbumArtists": "アルバムアーティスト", - "TabAlbums": "アルバム", "TabCatalog": "カタログ", - "TabChannels": "チャンネル", "TabCodecs": "コーデック", "TabContainers": "コンテナ", "Rewind": "巻き戻す", @@ -754,12 +725,10 @@ "SaveSubtitlesIntoMediaFolders": "字幕をメディアフォルダーに保存", "ScanForNewAndUpdatedFiles": "新しいファイルとアップデートされたファイルをスキャン", "TabDashboard": "ダッシュボード", - "TabGuide": "ガイド", "TabInfo": "情報", "TabLatest": "最新", "TabLiveTV": "ライブTV", "TabLogs": "ログ", - "TabMovies": "ムービー", "TabMusic": "ミュージック", "TabMusicVideos": "ミュージックビデオ", "TheseSettingsAffectSubtitlesOnThisDevice": "これらの設定はこのデバイスの字幕に影響します", @@ -896,7 +865,6 @@ "LabelPublicHttpPort": "公開HTTPポート番号:", "LabelPublicHttpPortHelp": "公開ポート番号はローカルHTTPポートにマッピングしてください。", "LabelPublicHttpsPort": "公開HTTPSポート番号:", - "LabelReadHowYouCanContribute": "コントリビュートする方法を知る。", "LabelReleaseDate": "公開日:", "LabelRemoteClientBitrateLimit": "インターネットストリーミングビットレートリミット (Mbps):", "LabelRuntimeMinutes": "実行時間 (分):", @@ -1049,8 +1017,6 @@ "TabResponses": "レスポンス", "TabServer": "サーバー", "TabSettings": "設定", - "TabShows": "表示", - "TabSongs": "曲", "TabStreaming": "ストリーミング", "TabTrailers": "トレーラー", "MessageContactAdminToResetPassword": "パスワードをリセットするためにシステムの管理者に連絡してください。", diff --git a/src/strings/kk.json b/src/strings/kk.json index 2f0d0c5927..ef542a0705 100644 --- a/src/strings/kk.json +++ b/src/strings/kk.json @@ -36,7 +36,6 @@ "AsManyAsPossible": "Múmkindiginshe kóp", "Ascending": "Artýy boıynsha", "AspectRatio": "Pishimdik araqatynasy", - "AttributeNew": "Jańa", "Audio": "Dybys", "Auto": "Avtomatty", "Backdrop": "Artqy sýret", @@ -57,19 +56,12 @@ "ButtonAddScheduledTaskTrigger": "Trıger ústeý", "ButtonAddServer": "Server ústeý", "ButtonAddUser": "Paıdalanýshy ústeý", - "ButtonArrowDown": "Tómenge", "ButtonArrowLeft": "Sol jaqqa", "ButtonArrowRight": "Oń jaqqa", - "ButtonArrowUp": "Joǵaryǵa", "ButtonAudioTracks": "Dybys jolshyqtaryna", "ButtonBack": "Artqa", "ButtonCancel": "Boldyrmaý", "ButtonChangeServer": "Serverdi aýystyrý", - "ButtonConnect": "Qosylý", - "ButtonDelete": "Joıý", - "ButtonDeleteImage": "Sýretti joıý", - "ButtonDown": "Tómenge", - "ButtonDownload": "Júktep alý", "ButtonEdit": "Óńdeý", "ButtonEditImages": "Sýretterdi óńdeý", "ButtonEditOtherUserPreferences": "Osy paıdalanýshynyń profaılyn, sýretin jáne ózindik teńshelimderin óńdeý.", @@ -84,7 +76,6 @@ "ButtonManualLogin": "Qolmen kirý", "ButtonMore": "Kóbirek", "ButtonNetwork": "Jeli", - "ButtonNew": "Jasaý", "ButtonNextTrack": "Kelesi jolshyqqa", "ButtonOff": "Óshir", "ButtonOk": "Jaraıdy", @@ -110,18 +101,15 @@ "ButtonSelectView": "Kórinisti tańdaý", "ButtonSend": "Jiberý", "ButtonSettings": "Parametrlerge", - "ButtonShuffle": "Aralastyrý", "ButtonShutdown": "Jumysty aıaqtaý", "ButtonSignIn": "Kirý", "ButtonSignOut": "Shyǵý", - "ButtonSort": "Suryptaý", "ButtonStart": "Bastaý", "ButtonStop": "Toqtatý", "ButtonSubmit": "Jiberý", "ButtonSubtitles": "Sýbtıtrlerge", "ButtonTrailer": "Treıler", "ButtonUninstall": "Ornatymdy joıý", - "ButtonUp": "Joǵaryǵa", "ButtonWebsite": "Ýeb-saıty", "CancelRecording": "Jazýdy boldyrmaý", "CancelSeries": "Telehıkaıany boldyrmaý", @@ -194,7 +182,6 @@ "EditImages": "Sýretterdi óńdeý", "EditMetadata": "Metaderekterdi óńdeý", "EditSubtitles": "Sýbtıtrlerdi óńdeý", - "EnableBackdrops": "Artqy sýretter", "EnableBackdropsHelp": "Artqy sýretter tasyǵyshhanany sholý kezinde keıbir betterde óńde beınelenedi.", "EnableCinemaMode": "Kınoteatr rejimi", "EnableColorCodedBackgrounds": "Túspen belgilengen óńder", @@ -275,7 +262,6 @@ "HeaderAdditionalParts": "Jalǵasatyn bólimder", "HeaderAdmin": "Basqarý", "HeaderAlbumArtists": "Álbom oryndaýshylary", - "HeaderAlbums": "Álbomdar", "HeaderAlert": "Eskertý", "HeaderAllowMediaDeletionFrom": "Osydan tasyǵyshderekterdi joıýǵa ruqsat etý", "HeaderApiKey": "API-kilt", @@ -293,7 +279,6 @@ "HeaderCastAndCrew": "Róldegiler men qyzmetkerler", "HeaderCastCrew": "Róldegiler men qyzmetkerler", "HeaderChannelAccess": "Arnaǵa qatynaý", - "HeaderChannels": "Arnalar", "HeaderChapterImages": "Sahna sýretteri", "HeaderCodecProfile": "Kodek profaıly", "HeaderCodecProfileHelp": "Kodek profaıldary naqty kodekter arqyly oınatqanda qurylǵynyń shekteýlerin kórsetedi. Eger shekteý qoldanylsa, sonda kodek tikeleı oınatý úshin teńshelse de tasyǵyshderekter qaıta kodtalynady.", @@ -335,7 +320,6 @@ "HeaderForKids": "Balalyq", "HeaderForgotPassword": "Paróldi umytyńyz ba", "HeaderFrequentlyPlayed": "Jıi oınatylǵandar", - "HeaderGenres": "Janrlar", "HeaderGuideProviders": "Telegıd derekterin jetkizýshileri", "HeaderHttpHeaders": "HTTP ústińgi derektemeleri", "HeaderIdentification": "Anyqtaý", @@ -346,7 +330,6 @@ "HeaderImageSettings": "Sýret parametrleri", "HeaderInstall": "Ornatý", "HeaderInstantMix": "Lezdik qospa", - "HeaderItems": "Tarmaqtar", "HeaderKeepRecording": "Jazýdy saqtap qalý", "HeaderKeepSeries": "Telehıkaıany saqtap qalý", "HeaderKodiMetadataHelp": "NFO metaderekterin qosý nemese óshirý úshin, Jellyfin tasyǵyshhanalar ornatý bóliminde tasyǵyshhana ny óńdeńiz jáne metaderekter saqtaýysh bólimin tabyńyz.", @@ -369,7 +352,6 @@ "HeaderMediaInfo": "Tasyǵyshderekter týraly", "HeaderMetadataSettings": "Metaderekter parametrleri", "HeaderMoreLikeThis": "Osy sıaqty kóbirek", - "HeaderMovies": "Fılmder", "HeaderMusicQuality": "Mýzyka sapasy", "HeaderMusicVideos": "Mýzykalyq beıneler", "HeaderMyDevice": "Meniń qurylǵym", @@ -430,7 +412,6 @@ "HeaderServerSettings": "Server parametrleri", "HeaderSettings": "Parametrler", "HeaderSetupLibrary": "Tasyǵyshhanalardy ornatý jáne teńsheý", - "HeaderShutdown": "Jumysty aıaqtaý", "HeaderSortBy": "Suryptaý tásili", "HeaderSortOrder": "Suryptaý reti", "HeaderSpecialEpisodeInfo": "Arnaıy bólim týraly", @@ -465,7 +446,6 @@ "HeaderXmlDocumentAttributes": "XML-qujat tólsıpattary", "HeaderXmlSettings": "XML parametrleri", "HeaderYears": "Jyldar", - "HeadersFolders": "Qaltalar", "Help": "Internettegi anyqtamaǵa", "Hide": "Jasyrý", "HideWatchedContentFromLatestMedia": "Eń keıingi tasyǵyshderekterden qaralǵan mazmundy jasyrý", @@ -682,7 +662,6 @@ "LabelNewPassword": "Jańa paról:", "LabelNewPasswordConfirm": "Jańa paróldi rastaý:", "LabelNewsCategories": "Jańalyq sanattary:", - "LabelNext": "Kelesi", "LabelNotificationEnabled": "Bul habarlandyrmany qosý", "LabelNumber": "Nómiri:", "LabelNumberOfGuideDays": "Júktep alý úshin Telegıd derekterindegi kún sany:", @@ -709,7 +688,6 @@ "LabelPreferredDisplayLanguage": "Beıneleý tiliniń teńshelimi:", "LabelPreferredDisplayLanguageHelp": "Jellyfin tárjimeleýi aǵymdaǵy joba bolyp tabylady.", "LabelPreferredSubtitleLanguage": "Sýbtıtr tiliniń teńshelimi:", - "LabelPrevious": "Aldyńǵy", "LabelProfileAudioCodecs": "Dybystyq kodekter:", "LabelProfileCodecs": "Kodekter:", "LabelProfileCodecsHelp": "Útir arqyly bólip alynǵan. Barlyq kodekterge qoldaný úshin bul bos qaldyrylý múmkin.", @@ -723,7 +701,6 @@ "LabelPublicHttpPortHelp": "Jergilikti HTTP-portyna salystyrylýy tıis jarıa port nómiri.", "LabelPublicHttpsPort": "Jarıa HTTPS-port nómiri:", "LabelPublicHttpsPortHelp": "Jergilikti HTTPS-portyna salystyrylýy tıis jarıa port nómiri.", - "LabelReadHowYouCanContribute": "Qalaı úles qosý týraly bilý.", "LabelReasonForTranscoding": "Qaıta kodtaý sebebi:", "LabelRecord": "Jazý:", "LabelRecordingPath": "Jazbalardyń ádepki joly:", @@ -932,7 +909,6 @@ "MessageNoNextUpItems": "Eshteńe tabylmady. Kórsetimderińizdi qaraı bastańyz!", "MessageNoPluginConfiguration": "Osy plagınde teńsheletin parametrler joq.", "NoSubtitleSearchResultsFound": "Eshqandaı nátıjeler tabylmady.", - "NoSubtitles": "Eshqandaı", "NoSubtitlesHelp": "Ádepkide sýbtıtrler júktelmeıdi. Olardy oınatý kezinde áli de qolmen qosýǵa bolady.", "None": "Eshqandaı", "Normal": "Kádimgi", @@ -1215,24 +1191,16 @@ "TabAccess": "Qatynaý", "TabAdvanced": "Keńeıtilgen", "TabAlbumArtists": "Álbom oryndaýshylary", - "TabAlbums": "Álbomdar", "TabCatalog": "Tizimdeme", - "TabChannels": "Arnalar", "TabCodecs": "Kodekter", - "TabCollections": "Jıyntyqtar", "TabContainers": "Konteınerler", "TabDashboard": "Taqta", - "TabDevices": "Qurylǵylar", "TabDirectPlay": "Tikeleı oınatý", "TabEpisodes": "TD-bólimder", - "TabFavorites": "Tańdaýlylar", - "TabGenres": "Janrlar", - "TabGuide": "Telegıd", "TabInfo": "Profaıl týraly", "TabLatest": "Eń keıingi", "TabLiveTV": "Efırlik TD", "TabLogs": "Jurnaldar", - "TabMovies": "Fılmder", "TabMusic": "Mýzyka", "TabMusicVideos": "Mýzykalyq beıneler", "TabMyPlugins": "Meniń plagınderim", @@ -1253,8 +1221,6 @@ "TabSeries": "Telehıkaıalar", "TabServer": "Server", "TabSettings": "Parametrler", - "TabShows": "Kórsetimder", - "TabSongs": "Áýender", "TabStreaming": "Tasymaldaný", "TabTrailers": "Treılerler", "TabUpcoming": "Kútilgen", diff --git a/src/strings/ko.json b/src/strings/ko.json index 6a6dadc120..dcdb1f5a8f 100644 --- a/src/strings/ko.json +++ b/src/strings/ko.json @@ -8,7 +8,6 @@ "AllChannels": "모든 채널", "AllEpisodes": "모든 에피소드", "AllLanguages": "모든 언어", - "AttributeNew": "새로운", "Audio": "오디오", "Backdrops": "배경", "BirthDateValue": "출생: {0}", @@ -17,17 +16,11 @@ "ButtonAddScheduledTaskTrigger": "트리거 추가", "ButtonAddServer": "서버 추가", "ButtonAddUser": "사용자 추가", - "ButtonArrowDown": "아래", "ButtonArrowLeft": "왼쪽", "ButtonArrowRight": "오른쪽", - "ButtonArrowUp": "위", "ButtonBack": "뒤로", "ButtonCancel": "취소", "ButtonChangeServer": "서버 변경", - "ButtonConnect": "접속", - "ButtonDelete": "삭제", - "ButtonDeleteImage": "이미지 삭제", - "ButtonDownload": "다운로드", "ButtonEdit": "편집", "ButtonEditOtherUserPreferences": "이 사용자의 프로필, 이미지, 개인 설정을 수정합니다.", "ButtonFilter": "필터", @@ -39,7 +32,6 @@ "ButtonManualLogin": "수동 로그인", "ButtonMore": "더 보기", "ButtonNetwork": "네트워크", - "ButtonNew": "새로운", "ButtonNextTrack": "다음 트랙", "ButtonOk": "OK", "ButtonOpen": "열기", @@ -64,7 +56,6 @@ "ButtonShutdown": "종료", "ButtonSignIn": "로그인", "ButtonSignOut": "로그아웃", - "ButtonSort": "정렬", "ButtonStart": "시작", "ButtonStop": "중지", "ButtonSubmit": "제출", @@ -122,7 +113,6 @@ "HeaderAddUser": "사용자 추가", "HeaderAdditionalParts": "추가 장면", "HeaderAdmin": "관리자", - "HeaderAlbums": "앨범", "HeaderAlert": "알림", "HeaderApiKey": "API 키", "HeaderApiKeys": "API 키", @@ -132,7 +122,6 @@ "HeaderBranding": "브랜딩", "HeaderCastCrew": "배역 및 제작진", "HeaderChannelAccess": "채널 접속", - "HeaderChannels": "채널", "HeaderCodecProfile": "코덱 프로필", "HeaderConfirmProfileDeletion": "프로필 삭제 확인", "HeaderConnectToServer": "서버 접속", @@ -153,13 +142,11 @@ "HeaderFetchImages": "이미지 가져오기:", "HeaderForgotPassword": "비밀번호 분실", "HeaderFrequentlyPlayed": "자주 재생함", - "HeaderGenres": "장르", "HeaderGuideProviders": "가이드 제공자", "HeaderIdentification": "식별자", "HeaderImageSettings": "이미지 설정", "HeaderInstall": "설치", "HeaderInstantMix": "인스턴스 믹스", - "HeaderItems": "항목", "HeaderLatestEpisodes": "최근 에피소드", "HeaderLatestMedia": "최근 미디어", "HeaderLatestMusic": "최근 음악", @@ -175,7 +162,6 @@ "HeaderMediaFolders": "미디어 폴더", "HeaderMediaInfo": "미디어 정보", "HeaderMetadataSettings": "메타데이터 설정", - "HeaderMovies": "영화", "HeaderMusicVideos": "뮤직비디오", "HeaderMyMedia": "내 미디어", "HeaderMyMediaSmall": "내 미디어 (작음)", @@ -218,7 +204,6 @@ "HeaderServerSettings": "서버 설정", "HeaderSettings": "설정", "HeaderSetupLibrary": "미디어 라이브러리 설정", - "HeaderShutdown": "종료", "HeaderSpecialEpisodeInfo": "스페셜 에피소드 정보", "HeaderSpecialFeatures": "특별 배역", "HeaderStatus": "상태", @@ -239,7 +224,6 @@ "HeaderXmlDocumentAttributes": "XML 문서 속성", "HeaderXmlSettings": "XML 설정", "HeaderYears": "연도", - "HeadersFolders": "폴더", "Help": "도움말", "Images": "이미지", "ImportFavoriteChannelsHelp": "활성화 시, 튜너 장치에서 즐겨찾기로 표시된 채널만 불러옵니다.", @@ -381,7 +365,6 @@ "LabelNewName": "새 이름:", "LabelNewPassword": "새 비밀번호:", "LabelNewPasswordConfirm": "새 비밀번호 확인:", - "LabelNext": "다음", "LabelNotificationEnabled": "이 알림 활성화", "LabelNumber": "번호:", "LabelNumberOfGuideDays": "다운로드할 가이드 데이터 일 수:", @@ -398,7 +381,6 @@ "LabelPlaylist": "재생목록:", "LabelPreferredDisplayLanguage": "선호하는 화면 언어:", "LabelPreferredDisplayLanguageHelp": "Jellyfin 번역은 진행중인 프로젝트입니다.", - "LabelPrevious": "이전", "LabelProfileAudioCodecs": "오디오 코덱:", "LabelProfileCodecs": "코덱:", "LabelProfileCodecsHelp": "쉼표로 구분합니다. 모든 코덱에 적용할 수 있도록 빈 칸을 남겨둘 수 있습니다.", @@ -411,7 +393,6 @@ "LabelPublicHttpPortHelp": "로컬 HTTP 포트는 공용 포트 번호에 매핑되어야합니다.", "LabelPublicHttpsPort": "공용 HTTPS 포트 번호:", "LabelPublicHttpsPortHelp": "로컬 HTTPS 포트는 공용 포트 번호에 매핑 되어야합니다.", - "LabelReadHowYouCanContribute": "여러분이 기여할 수 있는 방법을 알려드립니다.", "LabelRecordingPath": "기본 재코딩 위치 :", "LabelRecordingPathHelp": "녹화를 저장할 기본 위치를 지정합니다. 비어 있는 경우 서버의 프로그램 데이터 폴더가 사용됩니다.", "LabelReleaseDate": "개봉일:", @@ -676,24 +657,16 @@ "TabAccess": "접속", "TabAdvanced": "고급", "TabAlbumArtists": "앨범 아티스트", - "TabAlbums": "앨범", "TabCatalog": "카탈로그", - "TabChannels": "채널", "TabCodecs": "코덱", - "TabCollections": "컬렉션", "TabContainers": "컨테이너", "TabDashboard": "대시보드", - "TabDevices": "장치", "TabDirectPlay": "다이렉트 재생", "TabEpisodes": "에피소드", - "TabFavorites": "즐겨찾기", - "TabGenres": "장르", - "TabGuide": "가이드", "TabInfo": "정보", "TabLatest": "최근", "TabLiveTV": "실시간 TV", "TabLogs": "로그", - "TabMovies": "영화", "TabMusic": "음악", "TabMusicVideos": "뮤직비디오", "TabMyPlugins": "내 플러그인", @@ -712,8 +685,6 @@ "TabSeries": "시리즈", "TabServer": "서버", "TabSettings": "설정", - "TabShows": "쇼", - "TabSongs": "노래", "TabStreaming": "스트리밍", "TabTrailers": "예고편", "TabUpcoming": "방송 예정", @@ -818,12 +789,9 @@ "ChannelNumber": "채널 번호", "Categories": "카테고리", "CancelRecording": "녹화 취소", - "ButtonUp": "위", "ButtonTrailer": "트레일러", - "ButtonShuffle": "셔플", "ButtonScanAllLibraries": "모든 라이브러리 스캔", "ButtonOff": "끄기", - "ButtonDown": "아래", "ButtonAudioTracks": "오디오 트랙", "ButtonAddMediaLibrary": "미디어 라이브러리 추가", "ButtonAddImage": "이미지 추가", @@ -952,7 +920,6 @@ "NumLocationsValue": "{0} 폴더", "Normal": "보통", "None": "None", - "NoSubtitles": "자막 없음", "No": "아니오", "Next": "다음", "NextUp": "다음", @@ -1209,7 +1176,6 @@ "ConfirmDeleteItems": "이 항목들을 삭제하면 파일 시스템과 라이브러리 모두에서 삭제됩니다. 계속하겠습니까?", "DeleteDeviceConfirmation": "정말로 이 장치를 제거하시겠습니까? 사용자가 로그인하면 다시 나타날것입니다.", "DisplayMissingEpisodesWithinSeasons": "시즌 내 누락된 에피소드 표시", - "EnableBackdrops": "배경", "EnableBackdropsHelp": "라이브러리를 탐색하는 동안 일부 페이지의 배경을 표시합니다.", "ErrorAddingXmlTvFile": "XMLTV 파일에 액세스하는 동안 오류가 발생했습니다. 파일이 존재하는지 확인 후 다시 시도하십시오.", "ErrorDeletingItem": "Jellyfin 서버에서 항목을 제거하는 중에 오류가 발생했습니다. Jellyfin 서버가 미디어 폴더에 대해 쓰기 권한이 있는지 확인한 후 다시 시도하십시오.", diff --git a/src/strings/lt-lt.json b/src/strings/lt-lt.json index e02a183c97..39277004a2 100644 --- a/src/strings/lt-lt.json +++ b/src/strings/lt-lt.json @@ -9,25 +9,19 @@ "Anytime": "Bet kada", "AroundTime": "Maždaug {0}", "AsManyAsPossible": "Kiek įmanoma", - "AttributeNew": "Naujas", "Backdrops": "Fonai", "BirthLocation": "Gimimo vieta", "ButtonAddScheduledTaskTrigger": "Pridėti jungiklį", "ButtonAddUser": "Pridėt vartotoją", - "ButtonArrowDown": "Žemyn", "ButtonArrowLeft": "Kairėn", "ButtonArrowRight": "Dešinėn", - "ButtonArrowUp": "Aukštyn", "ButtonBack": "Atgal", "ButtonCancel": "Atšaukti", - "ButtonDelete": "Ištrinti", - "ButtonDeleteImage": "Trinti paveikslus", "ButtonEdit": "Redaguoti", "ButtonFilter": "Filtras", "ButtonGotIt": "Supratau", "ButtonHome": "Pradinis", "ButtonManualLogin": "Rankinis prisijungimas", - "ButtonNew": "Naujas", "ButtonNextTrack": "Kitas takelis", "ButtonOk": "OK", "ButtonPause": "Pauzė", @@ -43,7 +37,6 @@ "ButtonSettings": "Nustatymai", "ButtonSignIn": "Prisijungti", "ButtonSignOut": "Atsijungti", - "ButtonSort": "Rūšiuoti", "ButtonStop": "Stabdyti", "ButtonSubmit": "Pateikti", "ButtonSubtitles": "Subtitrai", @@ -98,7 +91,6 @@ "HeaderCancelRecording": "Atšaukti įrašymą", "HeaderCancelSeries": "Atšaukti laidą", "HeaderCastCrew": "Kūrėjai", - "HeaderChannels": "Kanalai", "HeaderContinueWatching": "Žiūrėti toliau", "HeaderCustomDlnaProfiles": "Kiti profiliai", "HeaderDeleteItem": "Ištrinti elementą", @@ -230,7 +222,6 @@ "LabelName": "Pavadinimas:", "LabelNewPassword": "Naujas slaptažodis:", "LabelNewPasswordConfirm": "Naujas slaptažodis (pakartokite):", - "LabelNext": "Kitas", "LabelNumber": "Numeris:", "LabelNumberOfGuideDays": "Kiek dienų gido duomenų atsisiųsti:", "LabelNumberOfGuideDaysHelp": "Atsiuntus daugiau gido duomenų dienų bus galima toliau numatyti tvarkaraštį, tačiau tai užtruks ilgiau. Auto parinks dienų skaičių pagal kanalų kiekį.", @@ -246,14 +237,12 @@ "LabelPlaylist": "Grojaraštis:", "LabelPreferredDisplayLanguage": "Pageidautina rodymo kalba:", "LabelPreferredDisplayLanguageHelp": "Jellyfin vertimas yra besitęsiantis projektas.", - "LabelPrevious": "Ankstesnis", "LabelProfileCodecsHelp": "Atskirta kableliais. Palikus tuščią bus pritaikyta visiems kodekams.", "LabelProfileContainersHelp": "Atskirta kableliais. Palikus tuščią bus pritaikyta visiems konteineriams.", "LabelPublicHttpPort": "Numeris viešo HTTP porto:", "LabelPublicHttpPortHelp": "Numeris viešo porto, kurį reiktų susieti su vietiniu HTTP portu.", "LabelPublicHttpsPort": "Numeris viešo HTTPS porto:", "LabelPublicHttpsPortHelp": "Viešas porto numeris, kurį reiktų susieti su vietiniu HTTPS portu.", - "LabelReadHowYouCanContribute": "Sužinokite, kaip galite prisidėti.", "LabelRecord": "Rašyti:", "LabelRecordingPath": "Įprasta įrašų vieta:", "LabelRecordingPathHelp": "Nurodykite įprastą vietą, kur saugoti įrašus. Palikus tuščia bus saugoma į serverio programos duomenų direktoriją.", @@ -460,16 +449,9 @@ "TabAccess": "Prieiga", "TabAdvanced": "Sudėtingiau", "TabAlbumArtists": "Albumo atlikėjai", - "TabAlbums": "Albumai", "TabCatalog": "Katalogas", - "TabChannels": "Kanalai", - "TabCollections": "Kolekcijos", "TabEpisodes": "Serijos", - "TabFavorites": "Mėgstamiausi", - "TabGenres": "Žanrai", - "TabGuide": "Gidas", "TabLatest": "Vėliausi", - "TabMovies": "Filmai", "TabMusic": "Muzika", "TabMusicVideos": "Muzikos klipai", "TabMyPlugins": "Mano priedai", @@ -483,8 +465,6 @@ "TabSeries": "Laidos", "TabServer": "Serveris", "TabSettings": "Nustatymai", - "TabShows": "Laidos", - "TabSongs": "Dainos", "TabTrailers": "Anonsai", "TabUpcoming": "Būsimi", "Tags": "Žymės", @@ -538,9 +518,6 @@ "ButtonAddServer": "Pridėti Serverį", "ButtonAudioTracks": "Garso takeliai", "ButtonChangeServer": "Keisti serverį", - "ButtonConnect": "Prisijungti", - "ButtonDown": "Žemyn", - "ButtonDownload": "Atsisiųsti", "ButtonEditImages": "Redaguoti vaizdus", "ButtonForgotPassword": "Pamiršau slaptažodį", "ButtonFullscreen": "Per visą ekraną", @@ -563,7 +540,6 @@ "ButtonShutdown": "Išjungti", "ButtonStart": "Pradėti", "ButtonUninstall": "Pašalinti", - "ButtonUp": "Aukštyn", "ButtonWebsite": "Svetainė", "ChangingMetadataImageSettingsNewContent": "Metaduomenų ar iliustracijų pakeitimai bus pritaikyti tik naujai pridėtam turiniui. Norint pritaikyti pakeitimus esančiam turiniui reikės atnaujinti metaduomenis rankiniu būdu.", "Channels": "Kanalai", @@ -598,7 +574,6 @@ "BookLibraryHelp": "Garso ir tekstinės knygos yra palaikomos. Peržiūrėkite {0} knygų vardinimo gidą {1}.", "ButtonEditOtherUserPreferences": "Keisti šio vartotojo profilį, paveikslą ir asmeninius nustatymus.", "ButtonResetEasyPassword": "Atstatyti pin kodą", - "ButtonShuffle": "Sumaišyti", "ColorPrimaries": "Pirminės spalvos", "ConfirmEndPlayerSession": "Ar norite išjungti Jellyfin ant {0}?", "Descending": "Mažėjančia tvarka", @@ -628,7 +603,6 @@ "AllowedRemoteAddressesHelp": "IP adresų atskirtų kableliais sąrašas ar IP/netmask įrašai tinklams, kurie turės teisę prisijungti nuotoliniu būdu. Visi adresai bus leidžiami, jei įrašas tuščias.", "HeaderMyMedia": "Mediateka", "HeaderMyDevice": "Mano įrenginys", - "HeaderMovies": "Filmai", "HeaderMyMediaSmall": "Mediateka", "HeaderNewDevices": "Naujas įrenginys", "AddToPlayQueue": "Pridėti prie grojaraščio", @@ -636,7 +610,6 @@ "Banner": "Juosta", "HeaderDeleteDevice": "Ištrinti prietaisą", "MessageBrowsePluginCatalog": "Peržiūrėti įskiepių katalogą.", - "EnableBackdrops": "Fonai", "EnableCinemaMode": "Kino režimas", "EnableDisplayMirroring": "Ekrano dubliavimas", "CopyStreamURL": "Kopijuoti srauto nuorodą", @@ -708,7 +681,6 @@ "HeaderFavoritePeople": "Mėgstami žmonės", "HeaderForKids": "Vaikams", "HeaderForgotPassword": "Pamiršau slaptažodį", - "HeaderGenres": "Žanrai", "HeaderGuideProviders": "TV gido informacijos teikėjai", "HeaderHome": "Pradinis", "HeaderIdentification": "Identifikacija", @@ -730,7 +702,6 @@ "HeaderFavoriteSongs": "Mėgstamos dainos", "HeaderImageOptions": "Vaizdo parinktys", "HeaderInstall": "Diegti", - "HeaderItems": "Elementai", "HeaderApiKeysHelp": "Išorinėms programoms reikalingas API raktas norint prisijungti prie Jellyfin serverio. Raktai išduodami prisijungus prie Jellyfin paskyros, arba raktas į programą suteikimas rankiniu būdu.", "HeaderSelectTranscodingPath": "Išrinkite kelią į aplanką laikiniems perkodavimo failams", "HeaderSelectTranscodingPathHelp": "Suraskite arba įrašykite kelią serverio į aplanką laikinų perkodavimo failų saugojimui. Aplankalas turi būti su rašymo teise.", @@ -781,7 +752,6 @@ "Genre": "Žanras", "ErrorPleaseSelectLineup": "Pasirinkite TV programą ir bandykite dar kartą. Jei TV programos nerodoma, patikrinkite ar teisingas jūsų vartotojo vardas, slaptažodis ir pašto kodas.", "HeaderRevisionHistory": "Versijų istorija", - "HeaderShutdown": "Išjungti", "HeaderSortBy": "Rūšiuoti pagal", "HeaderTranscodingProfileHelp": "Pridėti perkodavimo profilius, kad nurodyti, kokius formatus reikia naudoti, kai reikia perkoduoti.", "HeaderTunerDevices": "Tiunerio prietaisai", @@ -900,7 +870,6 @@ "GuideProviderLogin": "Prisijungti", "HardwareAccelerationWarning": "Įjungus aparatinės įrangos spartinimą, kai kuriose diegimo aplinkose gali atsirasti nestabilumas. Įsitikinkite, kad jūsų operacinė sistema ir vaizdo tvarkyklės yra visiškai atnaujintos. Jei įjungus šį vaizdo įrašą kyla problemų, turite pakeisti nustatymą į \"Joks\".", "HeaderAdmin": "Administratorius", - "HeaderAlbums": "Albumai", "HeaderAlert": "Perspėjimas", "HeaderAllowMediaDeletionFrom": "Leisti pašalinti medijos failą iš", "HeaderApiKey": "API raktas", @@ -921,7 +890,6 @@ "HeaderVideos": "Video įrašai", "HeaderXmlSettings": "XML nustatymai", "HeaderYears": "Metai", - "HeadersFolders": "Aplankai", "Home": "Pradinis", "Items": "Elementai", "LabelAbortedByServerShutdown": "(Nutraukta išjungus serverį)", diff --git a/src/strings/lv.json b/src/strings/lv.json index 094b3a4c74..e952b25fa9 100644 --- a/src/strings/lv.json +++ b/src/strings/lv.json @@ -143,7 +143,6 @@ "LabelOriginalTitle": "Oriģinālais nosaukums:", "LabelNumber": "Numurs:", "LabelNotificationEnabled": "Iespējot šo paziņojumu", - "LabelNext": "Nākamais", "LabelNewsCategories": "Ziņu kategorijas:", "LabelNewPasswordConfirm": "Jaunās paroles apstiprinājums:", "LabelNewPassword": "Jaunā parole:", @@ -248,7 +247,6 @@ "HeaderSpecialEpisodeInfo": "Speciālās Epizodes Info", "HeaderSortOrder": "Kārtošanas Secība", "HeaderSortBy": "Kārtot Pēc", - "HeaderShutdown": "Izslēgt", "HeaderSetupLibrary": "Uzstādīt multvides bibliotēkas", "HeaderSettings": "Iestatījumi", "HeaderServerSettings": "Servera Iestatījumi", @@ -290,7 +288,6 @@ "HeaderMyDevice": "Mana Ierīce", "HeaderMusicVideos": "Mūzikas Video", "HeaderMusicQuality": "Audio Kvalitāte", - "HeaderMovies": "Filmas", "HeaderMoreLikeThis": "Vairāk Kā Šis", "HeaderMetadataSettings": "Metadatu Iestatījumi", "HeaderMediaInfo": "Multvides informācija", @@ -310,7 +307,6 @@ "HeaderLatestMedia": "Jaunākā Multvide", "HeaderLatestEpisodes": "Jaunākās Epizodes", "HeaderKeepRecording": "Turpināt Ierakstu", - "HeaderItems": "Vienumi", "HeaderInstall": "Uzstādīt", "HeaderImageSettings": "Attēlu Iestatījumi", "HeaderImageOptions": "Attēlu Opcijas", @@ -320,7 +316,6 @@ "HeaderHttpHeaders": "HTTP Headeri", "HeaderHome": "Mājas", "HeaderGuideProviders": "TV Gida Datu Nodrošinātāji", - "HeaderGenres": "Žanri", "HeaderFrequentlyPlayed": "Bieži Atskaņots", "HeaderForgotPassword": "Aizmirst PAroli", "HeaderForKids": "Priekš Bērniem", @@ -375,7 +370,6 @@ "HeaderConfirmPluginInstallation": "Apstiprināt Palašinājumu Uzstādījumu", "HeaderConfigureRemoteAccess": "Konfigurēt Attālināto Piekļuvi", "HeaderCodecProfile": "Kodeksu Profils", - "HeaderChannels": "Kanāli", "HeaderChannelAccess": "Kanālu Piekļuve", "HeaderCancelSeries": "Atcelt Sēriju", "HeaderCancelRecording": "Atcelt Ierakstus", @@ -387,7 +381,6 @@ "HeaderApiKey": "API Atslēga", "HeaderAllowMediaDeletionFrom": "Atļaut Multvides Dzēšanu no", "HeaderAlert": "Paziņojums", - "HeaderAlbums": "Albumi", "HeaderAlbumArtists": "Albumu Izpildītāji", "HeaderAdmin": "Admin", "HeaderAddUser": "Pievienot Lietotāju", @@ -435,7 +428,6 @@ "EnableExternalVideoPlayers": "Ārējie video atskaņotāji", "EnableDisplayMirroring": "Displeju spoguļošana", "EnableCinemaMode": "Teātra režīms", - "EnableBackdrops": "Foni", "EditSubtitles": "Rediģēt subtitrus", "EditMetadata": "Rediģēt metadatus", "EditImages": "Rediģēt attēlus", @@ -489,7 +481,6 @@ "ButtonSignOut": "Iziet", "ButtonSignIn": "Ieiet", "ButtonShutdown": "Izslēgt", - "ButtonShuffle": "Jaukt", "ButtonSettings": "Iestatījumi", "ButtonSend": "Nosūtīt", "ButtonSelectView": "Izvēlies Skatu", @@ -514,7 +505,6 @@ "ButtonOk": "Labi", "ButtonOff": "Izslēgt", "ButtonNextTrack": "Nākamais Celiņš", - "ButtonNew": "Jauns", "ButtonNetwork": "Tīkls", "ButtonMore": "Vairāk", "ButtonLibraryAccess": "Bibliotēku piekļuve", @@ -527,10 +517,6 @@ "ButtonFilter": "Filtrs", "ButtonEditImages": "Rediģēt attēlus", "ButtonEdit": "Rediģēt", - "ButtonDownload": "Lejupielāde", - "ButtonDeleteImage": "Izdzēst Attēlu", - "ButtonDelete": "Izdzēst", - "ButtonConnect": "Pieslēgties", "ButtonChangeServer": "Nomainīt Serveri", "ButtonCancel": "Atcelt", "ButtonBack": "Atpakaļ", @@ -545,7 +531,6 @@ "Box": "Kaste", "Books": "Grāmatas", "Help": "Palīdzība", - "HeadersFolders": "Mapes", "HeaderYears": "Gadi", "HeaderXmlSettings": "Xml Iestatījumi", "HeaderXmlDocumentAttribute": "Xml Dokumenta Atribūts", @@ -578,7 +563,6 @@ "Backdrop": "Fons", "Auto": "Auto", "Audio": "Audio", - "AttributeNew": "Jauns", "AsManyAsPossible": "Cik vien iespējams", "Artists": "Izpildītāji", "Art": "Māksla", @@ -622,7 +606,6 @@ "NumLocationsValue": "{0} mapes", "Normal": "Normāls", "None": "Nakā", - "NoSubtitles": "Nav subtitru", "NoSubtitleSearchResultsFound": "Nav atrasti rezultāti.", "No": "Nr", "Next": "Nākamais", @@ -690,8 +673,6 @@ "TabUsers": "Lietotāji", "TabTrailers": "Treileri", "TabStreaming": "Straumēšana", - "TabSongs": "Dziesmas", - "TabShows": "Raidījumi", "TabSettings": "Iestatījumi", "TabServer": "Serveris", "TabSeries": "Sērijas", @@ -712,23 +693,15 @@ "TabMyPlugins": "Mani Paplašinājumi", "TabMusicVideos": "Mūzikas Video", "TabMusic": "Mūzika", - "TabMovies": "Filmas", "TabLogs": "Logs", "TabLiveTV": "Tiešraides TV", "TabLatest": "Jaunākais", "TabInfo": "Info", - "TabGuide": "Gids", - "TabGenres": "Žanri", - "TabFavorites": "Favorīti", "TabEpisodes": "Epizodes", "TabDirectPlay": "Tiešā Atskaņošana", - "TabDevices": "Ierīces", "TabContainers": "Konteineri", - "TabCollections": "Kolekcijas", "TabCodecs": "Kodeksi", - "TabChannels": "Kanāli", "TabCatalog": "Katalogs", - "TabAlbums": "Albumi", "ValueSpecialEpisodeName": "Speciālais - {0}", "Sync": "Sinhronizācija", "Songs": "Dziesmas", @@ -816,7 +789,6 @@ "LabelServerHostHelp": "192.168.1.100:8096 vai https://myserver.com", "LabelServerHost": "Resursdators:", "LabelReleaseDate": "Izlaiduma datums:", - "LabelPrevious": "Iepriekšējais", "LabelPreferredSubtitleLanguage": "Ieteicamā subtitru valoda:", "LabelPreferredDisplayLanguageHelp": "Jellyfin tulkošana ir notiekošs projekts.", "LabelPlayerDimensions": "Atskaņotāja dimensijas:", @@ -957,15 +929,11 @@ "ChannelAccessHelp": "Izvēlies kanālus, ko koplietot ar šo lietotāju. Administratori spēs rediģēt visus kanālus izmantojot metadatu pārvaldnieku.", "ChangingMetadataImageSettingsNewContent": "Izmaiņas metadatu vai mākslas lejupielādes iestatījumos tiks izmantotas tikai jauniem bibliotēkas vienumiem. Lai pielietotu šīs izmaiņas jau esošiem vienumiem, tev vajadzēs atjaunot šo vienumu metadatus manuāli.", "ButtonSubmit": "Iesniegt", - "ButtonSort": "Kārtot", "ButtonQuickStartGuide": "Pamata Lietošanas Instrukcija", "ButtonManualLogin": "Manuālā Ieiešana", "ButtonEditOtherUserPreferences": "Rediģē šī lietotāja profilu, attēlu un personas iestatījumus.", - "ButtonDown": "Lejup", - "ButtonArrowUp": "Augšup", "ButtonArrowRight": "Labi", "ButtonArrowLeft": "Kreisi", - "ButtonArrowDown": "Lejup", "ButtonAddScheduledTaskTrigger": "Pievienot Trigeru", "BookLibraryHelp": "Audio un teksta grāmatas tiek atbalstītas. Pārskati {0} grāmatu nosaukumu instrukciju {1}.", "Blacklist": "Melnais saraksts", @@ -1036,7 +1004,6 @@ "LabelTranscodes": "Transkodi:", "LabelTitle": "Tituls:", "LabelSaveLocalMetadata": "Saglabāt māksu media mapēs", - "LabelReadHowYouCanContribute": "Uzzini, kā tu vari dot ieguldījumu.", "LabelNumberOfGuideDays": "Dienu daudzumus, kuram lejupielādēt gidu:", "LabelLockItemToPreventChanges": "Aizslēgt šo objektu lai aizliegtu izmaiņas", "LabelLocalHttpServerPortNumber": "Vietējais HTTP porta numurs:", diff --git a/src/strings/mr.json b/src/strings/mr.json index 80708c700d..8a2114bf05 100644 --- a/src/strings/mr.json +++ b/src/strings/mr.json @@ -3,7 +3,6 @@ "ButtonOk": "ऑन", "ButtonOff": "ऑफ", "ButtonNextTrack": "पुढचा ट्रॅक", - "ButtonNew": "नवीन", "ButtonNetwork": "नेटवर्क", "ButtonMore": "अजून", "ButtonInfo": "माहिती", @@ -12,18 +11,12 @@ "ButtonForgotPassword": "पासवर्ड विसरलो", "ButtonEditImages": "चित्र संपादित करा", "ButtonEdit": "संपादित करा", - "ButtonDownload": "डाउनलोड करा", - "ButtonDown": "खाली", - "ButtonDeleteImage": "चित्र काढून टाका", - "ButtonDelete": "काढून टाका", "ButtonChangeServer": "सर्व्हर बदला", "ButtonCancel": "रद्द करा", "ButtonBack": "मागे", "ButtonAudioTracks": "ऑडिओ ट्रॅक", - "ButtonArrowUp": "वर", "ButtonArrowRight": "उजवीकडे", "ButtonArrowLeft": "डावीकडे", - "ButtonArrowDown": "खाली", "ButtonAddUser": "प्रयोक्ता जोडा", "ButtonAddServer": "सर्व्हर जोडा", "Books": "पुस्तकं", @@ -35,7 +28,6 @@ "Backdrop": "पार्श्वभूमी", "Auto": "आपोआप", "Audio": "ऑडिओ", - "AttributeNew": "नवीन", "AspectRatio": "अ‍ॅस्पेक्ट रेशो", "AsManyAsPossible": "जमतील तितके", "Artists": "संगीतकार", @@ -54,7 +46,6 @@ "AddedOnValue": "{0} जोडले", "Add": "जोडा", "Actor": "अभिनेता", - "EnableBackdrops": "पार्श्वभूमी", "EditSubtitles": "सबटायटल संपादित करा", "EditMetadata": "मेटाडेटा संपादित करा", "EditImages": "चित्र संपादित करा", @@ -77,7 +68,6 @@ "Categories": "वर्ग", "CancelRecording": "रेकॉर्डिंग रद्द करा", "ButtonWebsite": "संकेतस्थळ", - "ButtonUp": "वर", "ButtonTrailer": "ट्रेलर", "ButtonSubtitles": "सबटायटल", "ButtonStop": "थांबा", diff --git a/src/strings/ms.json b/src/strings/ms.json index e7b5be39ee..772cb3e043 100644 --- a/src/strings/ms.json +++ b/src/strings/ms.json @@ -4,8 +4,6 @@ "FolderTypeTvShows": "TV", "HeaderSeries": "Series", "LabelFinish": "Habis", - "LabelNext": "Seterusnya", - "LabelPrevious": "Sebelumnya", "LabelYoureDone": "Kamu Selesai!", "ParentalRating": "Parental Rating", "SettingsSaved": "Seting Disimpan", @@ -45,7 +43,6 @@ "AsManyAsPossible": "Sebanyak mungkin", "Ascending": "Susunan menaik", "AspectRatio": "Nisbah aspek", - "AttributeNew": "Terbaru", "Audio": "Audio", "Auto": "Auto", "Backdrop": "Latar belakang", @@ -60,15 +57,12 @@ "ButtonAddMediaLibrary": "Tambah Pustaka Media", "ButtonAddServer": "Tambah pelayan", "ButtonAddUser": "Tambah pengguna", - "ButtonArrowDown": "Turun", "ButtonArrowLeft": "Kiri", "ButtonArrowRight": "Kanan", - "ButtonArrowUp": "Atas", "ButtonAudioTracks": "Trek Audio", "ButtonBack": "Kembali", "ButtonCancel": "Batalkan", "ButtonChangeServer": "Tukar pelayan", - "ButtonConnect": "Sambung", "ButtonLibraryAccess": "Akses pustaka", "ButtonInfo": "Info", "ButtonHome": "Mula", @@ -80,10 +74,6 @@ "ButtonEditOtherUserPreferences": "Edit profil, gambar dan keutamaan peribadi pengguna ini", "ButtonEditImages": "Edit gambar-gambar", "ButtonEdit": "Edit", - "ButtonDownload": "Muat turun", - "ButtonDown": "Bawah", - "ButtonDeleteImage": "Buang gambar", - "ButtonDelete": "Buang", "ButtonAddScheduledTaskTrigger": "Tambah Pencetus", "ButtonAddImage": "Tambah gambar", "BurnSubtitlesHelp": "Menentukan sama ada pelayan perlu membakar subtitle ke skrin apabila menukar video bergantung kepada format sarikata. Menghindari pembakaran sari kata ke skrin akan meningkatkan prestasi pelayan. Pilih Auto untuk membakar format berasaskan imej (VOBSUB, PGS, SUB / IDX, dll) dan subtitle ASS / SSA tertentu.", diff --git a/src/strings/nb.json b/src/strings/nb.json index c427b92486..d9e0b3c8ec 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -24,7 +24,6 @@ "Artists": "Artister", "AsManyAsPossible": "Så mange som mulig", "AspectRatio": "Størrelsesforhold", - "AttributeNew": "Ny", "Audio": "Lyd", "Auto": "Automatisk", "BirthDateValue": "Født: {0}", @@ -37,19 +36,12 @@ "ButtonAddScheduledTaskTrigger": "Legg til utløser", "ButtonAddServer": "Legg til server", "ButtonAddUser": "Ny bruker", - "ButtonArrowDown": "Ned", "ButtonArrowLeft": "Venstre", "ButtonArrowRight": "Høyre", - "ButtonArrowUp": "Opp", "ButtonAudioTracks": "Lydspor", "ButtonBack": "Tilbake", "ButtonCancel": "Avbryt", "ButtonChangeServer": "Endre server", - "ButtonConnect": "Koble til", - "ButtonDelete": "Slett", - "ButtonDeleteImage": "Slett bilde", - "ButtonDown": "Ned", - "ButtonDownload": "Last ned", "ButtonEdit": "Rediger", "ButtonEditImages": "Endre bilder", "ButtonEditOtherUserPreferences": "Endre denne brukerens profilbilde og personlige innstillinger.", @@ -61,7 +53,6 @@ "ButtonManualLogin": "Manuell Login", "ButtonMore": "Mer", "ButtonNetwork": "Nettverk", - "ButtonNew": "Ny", "ButtonNextTrack": "Neste Spor", "ButtonOff": "Av", "ButtonOk": "OK", @@ -88,12 +79,10 @@ "ButtonShutdown": "Slå av", "ButtonSignIn": "Logg inn", "ButtonSignOut": "Logg ut", - "ButtonSort": "Sortér", "ButtonStop": "Stopp", "ButtonSubmit": "Send", "ButtonSubtitles": "Undertekster", "ButtonUninstall": "Avinstaller", - "ButtonUp": "Opp", "ButtonWebsite": "Nettsted", "CancelRecording": "Avbryt opptak", "CancelSeries": "Avbryt serie", @@ -195,7 +184,6 @@ "HeaderAddUpdateImage": "Legg Til/Oppdater Bilde", "HeaderAddUser": "Legg til bruker", "HeaderAdditionalParts": "Tilleggsdeler", - "HeaderAlbums": "Albumer", "HeaderAlert": "Varsling", "HeaderAllowMediaDeletionFrom": "Tillat sletting av media fra", "HeaderApiKey": "API-nøkkel", @@ -210,7 +198,6 @@ "HeaderCastAndCrew": "Skuespillere & mannskap", "HeaderCastCrew": "Mannskap", "HeaderChannelAccess": "Kanal-tilgang", - "HeaderChannels": "Kanaler", "HeaderCodecProfile": "Kodekprofil", "HeaderCodecProfileHelp": "Kodekprofiler indikerer begrensningene til en enhet ved avspilling av bestemte kodeker. Hvis en begrensning gjelder, vil media bli omkodet, selv om kodeken er konfigurert for direkteavspilling.", "HeaderConfirmPluginInstallation": "Bekreft installasjon av tillegg", @@ -248,7 +235,6 @@ "HeaderForKids": "For barn", "HeaderForgotPassword": "Glemt passord", "HeaderFrequentlyPlayed": "Ofte avspilt", - "HeaderGenres": "Sjanger", "HeaderGuideProviders": "Leverandører av TV-guide", "HeaderHttpHeaders": "HTTP-hoder", "HeaderIdentification": "Identifisering", @@ -259,7 +245,6 @@ "HeaderImageSettings": "Bildeinnstillinger", "HeaderInstall": "Installer", "HeaderInstantMix": "Miks", - "HeaderItems": "Elementer", "HeaderKeepRecording": "Behold opptak", "HeaderKeepSeries": "Behold serie", "HeaderLatestEpisodes": "Nyeste episoder", @@ -278,7 +263,6 @@ "HeaderMediaInfo": "Mediainformasjon", "HeaderMetadataSettings": "Metadatainnstilinger", "HeaderMoreLikeThis": "Flere som dette", - "HeaderMovies": "Filmer", "HeaderMusicVideos": "Musikkvideoer", "HeaderMyDevice": "Min enhet", "HeaderMyMedia": "Min media", @@ -333,7 +317,6 @@ "HeaderServerSettings": "Serverinnstillinger", "HeaderSettings": "Innstillinger", "HeaderSetupLibrary": "Konfigurer dine mediebibliotek", - "HeaderShutdown": "Skru av", "HeaderSortBy": "Sorter etter", "HeaderSortOrder": "Sorteringsrekkefølge", "HeaderSpecialEpisodeInfo": "Spesialepisodeinfo", @@ -361,7 +344,6 @@ "HeaderXmlDocumentAttributes": "XML-dokumentattributter", "HeaderXmlSettings": "XML-innstillinger", "HeaderYears": "År", - "HeadersFolders": "Mapper", "Help": "Hjelp", "HideWatchedContentFromLatestMedia": "Skjul sett innhold fra nyeste media", "Identify": "Identifiser", @@ -543,7 +525,6 @@ "LabelNewPassword": "Nytt passord:", "LabelNewPasswordConfirm": "Bekreft nytt passord:", "LabelNewsCategories": "Nyhetskategorier:", - "LabelNext": "Neste", "LabelNotificationEnabled": "Aktiver denne varslingen", "LabelNumber": "Nummer:", "LabelNumberOfGuideDays": "Antall dager med TV-guidedata som skal lastes ned:", @@ -568,7 +549,6 @@ "LabelPostProcessorArgumentsHelp": "Bruk {path} som filbanen til opptaksfilen.", "LabelPreferredDisplayLanguage": "Foretrukket visningsspråk:", "LabelPreferredDisplayLanguageHelp": "Oversettelse av Jellyfin er et pågående prosjekt.", - "LabelPrevious": "Forrige", "LabelProfileAudioCodecs": "Lydkodeker:", "LabelProfileCodecs": "Kodeker:", "LabelProfileCodecsHelp": "Separert med komma. Dette feltet kan forbli tomt for å gjelde alle kodeker.", @@ -582,7 +562,6 @@ "LabelPublicHttpPortHelp": "Den eksterne porten som kobles til den lokale HTTP-porten.", "LabelPublicHttpsPort": "Ekstern HTTPS-port:", "LabelPublicHttpsPortHelp": "Den eksterne porten som kobles til den lokale HTTPS-porten.", - "LabelReadHowYouCanContribute": "Lær hvordan du kan bidra.", "LabelRecord": "Opptak:", "LabelRecordingPath": "Standard plassering for opptak:", "LabelRecordingPathHelp": "Angi et egendefinert sted å lagre opptak. Dersom du lar feltet stå tomt vil serverens datamappe bli brukt.", @@ -976,21 +955,14 @@ "TabAccess": "Tilgang", "TabAdvanced": "Avansert", "TabAlbumArtists": "Albumartister", - "TabAlbums": "Album", "TabCatalog": "Katalog", - "TabChannels": "Kanaler", "TabCodecs": "Kodeker", - "TabCollections": "Samlinger", "TabContainers": "Kontainere", "TabDashboard": "Dashbord", - "TabDevices": "Enheter", "TabDirectPlay": "Direkteavspilling", "TabEpisodes": "Episoder", - "TabFavorites": "Favoritter", - "TabGenres": "Sjangre", "TabLatest": "Siste", "TabLogs": "Logger", - "TabMovies": "Filmer", "TabMusic": "Musikk", "TabMusicVideos": "Musikkvideoer", "TabMyPlugins": "Mine programtillegg", @@ -1010,8 +982,6 @@ "TabScheduledTasks": "Planlagte oppgaver", "TabSeries": "Serier", "TabSettings": "Innstillinger", - "TabShows": "Programmer", - "TabSongs": "Sanger", "TabTrailers": "Trailere", "TabUpcoming": "Kommende", "TabUsers": "Brukere", @@ -1076,7 +1046,6 @@ "Channels": "Kanaler", "ButtonTrailer": "Trailer", "ButtonStart": "Start", - "ButtonShuffle": "Tilfeldig rekkefølge", "ButtonSend": "Send", "ButtonPause": "Pause", "ButtonInfo": "Informasjon", @@ -1164,7 +1133,6 @@ "LabelType": "Type:", "Large": "Stor", "DirectStreamHelp1": "Mediet støttes av enheten med tanke på oppløsning og medietype (H.264, AC3, osv), men den støtter ikke filkontaineren (mkv, avi, wmv, osv). Videoen vil ompakkes fortløpende før den sendes til enheten.", - "EnableBackdrops": "Bakgrunner", "EnableThemeVideos": "Temavideoer", "MusicVideo": "Musikkvideo", "Mute": "Demp lyd", @@ -1180,7 +1148,6 @@ "MediaInfoCodecTag": "Kodektagg", "Metadata": "Metadata", "MessageNoPluginConfiguration": "Dette programtillegget har ingen innstillinger å konfigurere.", - "TabGuide": "Guide", "Unmute": "Skru på lyd", "OptionIsHD": "HD", "ButtonAddImage": "Legg til bilde", @@ -1337,7 +1304,6 @@ "MusicAlbum": "Musikkalbum", "MusicArtist": "Musikkartist", "Next": "Neste", - "NoSubtitles": "Ingen", "NoSubtitlesHelp": "Undertekster vil ikke lastes inn som standard. De kan fortsatt aktiveres manuelt under avspilling.", "Normal": "Normal", "OnlyForcedSubtitles": "Kun tvungen", @@ -1449,7 +1415,6 @@ "YadifBob": "YADIF Bob", "Yadif": "YADIF", "Track": "Spor", - "TabDVR": "Opptak", "SyncPlayAccessHelp": "Velg tilgangsnivået denne brukeren skal ha til SyncPlay-funksjonen. SyncPlay muliggjør synkronisert avspilling med andre enheter.", "Filter": "Filter", "New": "Ny", diff --git a/src/strings/nl.json b/src/strings/nl.json index 0401a2f9bf..5dee8dbf47 100644 --- a/src/strings/nl.json +++ b/src/strings/nl.json @@ -34,7 +34,6 @@ "AsManyAsPossible": "Zo veel als mogelijk", "Ascending": "Oplopend", "AspectRatio": "Beeldverhouding", - "AttributeNew": "Nieuw", "Audio": "Geluid", "Auto": "Automatisch", "Backdrop": "Achtergrond", @@ -52,19 +51,12 @@ "ButtonAddScheduledTaskTrigger": "Trigger Toevoegen", "ButtonAddServer": "Voeg server toe", "ButtonAddUser": "Gebruiker toevoegen", - "ButtonArrowDown": "Omlaag", "ButtonArrowLeft": "Links", "ButtonArrowRight": "Rechts", - "ButtonArrowUp": "Omhoog", "ButtonAudioTracks": "Audio track", "ButtonBack": "Terug", "ButtonCancel": "Annuleren", "ButtonChangeServer": "Wijzig server", - "ButtonConnect": "Verbind", - "ButtonDelete": "Verwijderen", - "ButtonDeleteImage": "Verwijder afbeelding", - "ButtonDown": "Omlaag", - "ButtonDownload": "Downloaden", "ButtonEdit": "Bewerken", "ButtonEditImages": "Bewerk afbeeldingen", "ButtonEditOtherUserPreferences": "Wijzig het profiel, afbeelding en persoonlijke voorkeuren van deze gebruiker.", @@ -77,7 +69,6 @@ "ButtonManualLogin": "Handmatige Aanmelding", "ButtonMore": "Meer", "ButtonNetwork": "Netwerk", - "ButtonNew": "Nieuw", "ButtonNextTrack": "Volgende track", "ButtonOff": "Uit", "ButtonOpen": "Openen", @@ -102,14 +93,11 @@ "ButtonSelectView": "Selecteer weergave", "ButtonSend": "Stuur", "ButtonSettings": "Instellingen", - "ButtonShuffle": "Willekeurig", "ButtonShutdown": "Afsluiten", "ButtonSignIn": "Aanmelden", "ButtonSignOut": "Afmelden", - "ButtonSort": "Sorteren", "ButtonSubmit": "Uitvoeren", "ButtonSubtitles": "Ondertiteling", - "ButtonUp": "Omhoog", "CancelRecording": "Opname annuleren", "CancelSeries": "Annuleer series", "Categories": "Categorieën", @@ -180,7 +168,6 @@ "EditImages": "Bewerk afbeeldingen", "EditMetadata": "Metadata wijzigen", "EditSubtitles": "Bewerk ondertiteling", - "EnableBackdrops": "Achtergronden", "EnableBackdropsHelp": "Laat achtergrondafbeeldingen zien tijdens het bladeren door de bibliotheek.", "EnableCinemaMode": "Cinema modus", "EnableColorCodedBackgrounds": "Kleurgecodeerde achtergronden", @@ -273,7 +260,6 @@ "HeaderCancelRecording": "Opname Annuleren", "HeaderCancelSeries": "Annuleren Series", "HeaderChannelAccess": "Kanaal toegang", - "HeaderChannels": "Kanalen", "HeaderChapterImages": "Hoofdstukafbeeldingen", "HeaderCodecProfile": "Codec Profiel", "HeaderCodecProfileHelp": "Codec profielen geven de beperkingen van een apparaat bij het afspelen van bepaalde codecs. Als een beperking geldt dan zal de media getranscodeerd worden, zelfs indien de codec is geconfigureerd voor direct afspelen.", @@ -342,7 +328,6 @@ "HeaderMediaInfo": "Media informatie", "HeaderMetadataSettings": "Metagegevens instellingen", "HeaderMoreLikeThis": "Meer als dit", - "HeaderMovies": "Films", "HeaderMusicQuality": "Muziek Kwaliteit", "HeaderMusicVideos": "Music Video's", "HeaderMyDevice": "Mijn Apparaat", @@ -403,7 +388,6 @@ "HeaderServerSettings": "Server Instellingen", "HeaderSettings": "Instellingen", "HeaderSetupLibrary": "Stel uw mediabibliotheken in", - "HeaderShutdown": "Afsluiten", "HeaderSortBy": "Sorteren op", "HeaderSortOrder": "Sorteer volgorde", "HeaderSpecialEpisodeInfo": "Speciale afleveringsinformatie", @@ -435,7 +419,6 @@ "HeaderXmlDocumentAttributes": "Xml Document Attributen", "HeaderXmlSettings": "Xml Instellingen", "HeaderYears": "Jaren", - "HeadersFolders": "Mappen", "Help": "Hulp", "Hide": "Verbergen", "HideWatchedContentFromLatestMedia": "Verberg gekeken inhoud uit nieuwste media", @@ -641,7 +624,6 @@ "LabelNewPassword": "Nieuw wachtwoord:", "LabelNewPasswordConfirm": "Bevestig nieuw wachtwoord:", "LabelNewsCategories": "Nieuws categorieën:", - "LabelNext": "Volgende", "LabelNotificationEnabled": "Deze melding inschakelen", "LabelNumber": "Nummer:", "LabelNumberOfGuideDays": "Aantal dagen van de gids om te downloaden:", @@ -668,7 +650,6 @@ "LabelPreferredDisplayLanguage": "Voorkeur weergavetaal:", "LabelPreferredDisplayLanguageHelp": "Vertaling van Jellyfin is een voortdurend project.", "LabelPreferredSubtitleLanguage": "Voorkeurstaal ondertiteling:", - "LabelPrevious": "Vorige", "LabelProfileAudioCodecs": "Geluidscodecs:", "LabelProfileCodecsHelp": "Gescheiden door een komma. Dit kan leeg worden gelaten om te laten gelden voor alle codecs.", "LabelProfileContainersHelp": "Gescheiden door een komma. Dit kan leeg worden gelaten om te laten gelden voor alle containers.", @@ -678,7 +659,6 @@ "LabelPublicHttpPortHelp": "Het publieke poortnummer dat moet worden toegewezen aan de lokale HTTP poort.", "LabelPublicHttpsPort": "Publieke HTTPS poort nummer:", "LabelPublicHttpsPortHelp": "Het publieke poortnummer dat moet worden toegewezen aan de lokale HTTPS poort.", - "LabelReadHowYouCanContribute": "Lees meer over hoe u kunt bijdragen.", "LabelReasonForTranscoding": "Reden voor transcoderen:", "LabelRecord": "Opnemen:", "LabelRecordingPath": "Standaard opname pad:", @@ -863,7 +843,6 @@ "MessageNoNextUpItems": "Niets gevonden. Start met kijken!", "MessageNoPluginConfiguration": "Deze plugin heeft geen instellingen te configureren.", "NoSubtitleSearchResultsFound": "Geen resultaten gevonden.", - "NoSubtitles": "Geen ondertiteling", "NoSubtitlesHelp": "Ondertitels worden niet standaard weergegeven. Deze kunnen tijdens het afspelen handmatig worden ingeschakeld.", "None": "Geen", "Normal": "Normaal", @@ -1126,16 +1105,10 @@ "TabAdvanced": "Geavanceerd", "TabAlbumArtists": "Albumartiesten", "TabCatalog": "Catalogus", - "TabChannels": "Kanalen", - "TabCollections": "Collecties", - "TabDevices": "Apparaten", "TabDirectPlay": "Direct Afspelen", "TabEpisodes": "Afleveringen", - "TabFavorites": "Favorieten", - "TabGuide": "Gids", "TabLatest": "Nieuw", "TabLogs": "Logboeken", - "TabMovies": "Films", "TabMusic": "Muziek", "TabMusicVideos": "Muziek Videos", "TabMyPlugins": "Mijn Plugins", @@ -1154,8 +1127,6 @@ "TabScheduledTasks": "Geplande taken", "TabSeries": "Serie", "TabSettings": "Instellingen", - "TabShows": "Series", - "TabSongs": "Titels", "TabUpcoming": "Binnenkort op TV", "TabUsers": "Gebruikers", "Tags": "Labels", @@ -1231,12 +1202,10 @@ "Filters": "Filters", "Genre": "Genre", "Genres": "Genres", - "HeaderAlbums": "Albums", "HeaderCastAndCrew": "Acteurs en medewerkers", "HeaderCastCrew": "Acteurs & medewerkers", "Art": "Afbeeldingen", "HeaderLiveTV": "Live TV", - "HeaderGenres": "Genres", "HeaderHttpHeaders": "HTTP Headers", "HeaderStatus": "Status", "AuthProviderHelp": "Selecteer een authenticatie provider om het wachtwoord van deze gebruiker te verifiëren.", @@ -1248,7 +1217,6 @@ "HeaderFavoriteSongs": "Favoriete nummers", "HeaderFavoriteVideos": "Favoriete Films", "HeaderInstantMix": "Directe Mix", - "HeaderItems": "Items", "HeaderLiveTv": "Live TV", "HeaderMedia": "Media", "HeaderTracks": "Nummers", @@ -1334,8 +1302,6 @@ "PasswordResetProviderHelp": "Kies een wachtwoord reset provider om te gebruiken wanneer deze gebruiker een wachtwoord reset aanvraagt", "Screenshots": "Schermafdruk", "Series": "Series", - "TabAlbums": "Albums", - "TabGenres": "Genres", "TabInfo": "Info", "Trailers": "Trailers", "Uniform": "Uniform", @@ -1456,7 +1422,6 @@ "EnableDetailsBanner": "Details Banner", "MessageSyncPlayNoGroupsAvailable": "Geen groepen beschikbaar. Begin eerst iets te spelen.", "EnableDetailsBannerHelp": "Toon een bannerafbeelding bovenaan de pagina met itemdetails.", - "TabDVR": "DVR", "SyncPlayAccessHelp": "Selecteer het toegangsniveau dat deze gebruiker heeft tot de SyncPlay-functie. SyncPlay maakt het mogelijk om het afspelen met andere gebruikers te synchroniseren.", "Filter": "Filter", "New": "Nieuw", diff --git a/src/strings/pl.json b/src/strings/pl.json index 781993f4fa..d4f88b4b44 100644 --- a/src/strings/pl.json +++ b/src/strings/pl.json @@ -36,7 +36,6 @@ "AsManyAsPossible": "Tak wiele jak to możliwe", "Ascending": "Rosnąco", "AspectRatio": "Proporcje obrazu", - "AttributeNew": "Nowy", "Audio": "Dźwięk", "Auto": "Automatycznie", "Backdrop": "Fototapeta", @@ -57,19 +56,12 @@ "ButtonAddScheduledTaskTrigger": "Dodaj wyzwalacz", "ButtonAddServer": "Dodaj Serwer", "ButtonAddUser": "Dodaj użytkownika", - "ButtonArrowDown": "Dół", "ButtonArrowLeft": "Lewa", "ButtonArrowRight": "Prawa", - "ButtonArrowUp": "Góra", "ButtonAudioTracks": "Ścieżki dźwiękowe", "ButtonBack": "Wstecz", "ButtonCancel": "Anuluj", "ButtonChangeServer": "Zmień Serwer", - "ButtonConnect": "Połacz", - "ButtonDelete": "Usuń", - "ButtonDeleteImage": "Usuń obraz", - "ButtonDown": "Dół", - "ButtonDownload": "Pobierz", "ButtonEdit": "Edytuj", "ButtonEditImages": "Edytuj obrazy", "ButtonEditOtherUserPreferences": "Edytuj profil, obrazy i ustawienia osobiste tego użytkownika.", @@ -84,7 +76,6 @@ "ButtonManualLogin": "Logowanie manualne", "ButtonMore": "Więcej", "ButtonNetwork": "Sieć", - "ButtonNew": "Nowe", "ButtonNextTrack": "Następny utwór", "ButtonOff": "Wyłącz", "ButtonOpen": "Otwórz", @@ -109,17 +100,14 @@ "ButtonSelectView": "Wybierz widok", "ButtonSend": "Wyślij", "ButtonSettings": "Ustawienia", - "ButtonShuffle": "Losowo", "ButtonShutdown": "Zamknij", "ButtonSignIn": "Zaloguj się", "ButtonSignOut": "Wyloguj", - "ButtonSort": "Sortuj", "ButtonStop": "Zatrzymaj", "ButtonSubmit": "Zatwierdź", "ButtonSubtitles": "Napisy", "ButtonTrailer": "Zwiastun", "ButtonUninstall": "Odinstaluj", - "ButtonUp": "Góra", "ButtonWebsite": "Strona WWW", "CancelRecording": "Anuluj nagranie", "CancelSeries": "Anuluj nagrywanie serialu", @@ -193,7 +181,6 @@ "EditImages": "Edytuj obrazy", "EditMetadata": "Edytuj metadane", "EditSubtitles": "Edytuj napisy", - "EnableBackdrops": "Fototapety", "EnableBackdropsHelp": "Wyświetlaj fototapety, w tle niektórych stron, podczas przeglądania biblioteki.", "EnableCinemaMode": "Tryb kinowy", "EnableColorCodedBackgrounds": "Kolorowe tła bazujące na zawartości", @@ -273,7 +260,6 @@ "HeaderAdditionalParts": "Dodatkowe części", "HeaderAdmin": "Administracja", "HeaderAlbumArtists": "Wykonawcy albumów", - "HeaderAlbums": "Albumy", "HeaderAlert": "Alarm", "HeaderAllowMediaDeletionFrom": "Zezwalaj na usuwanie mediów z", "HeaderApiKey": "Klucz API", @@ -291,7 +277,6 @@ "HeaderCastAndCrew": "Obsada i ekipa", "HeaderCastCrew": "Obsada i ekipa", "HeaderChannelAccess": "Dostęp do Kanałów", - "HeaderChannels": "Kanały", "HeaderChapterImages": "Obrazy rozdziałów", "HeaderCodecProfile": "Profil Kodeków", "HeaderCodecProfileHelp": "Profil Kodeków określa ograniczenia urządzenia podczas odtwarzania konkretnych kodeków. Jeśli ograniczenie ma zastosowanie, media będą transkodowane, nawet jeżeli kodek jest skonfigurowany dla odtwarzania bezpośredniego.", @@ -333,7 +318,6 @@ "HeaderForKids": "Dla dzieci", "HeaderForgotPassword": "Zapomniałem hasła", "HeaderFrequentlyPlayed": "Często odtwarzane", - "HeaderGenres": "Gatunki", "HeaderGuideProviders": "Dostawcy danych przewodnika telewizyjnego", "HeaderHttpHeaders": "Nagłówki HTTP", "HeaderIdentification": "Identyfikacja", @@ -344,7 +328,6 @@ "HeaderImageSettings": "Ustawienia obrazów", "HeaderInstall": "Instalacja", "HeaderInstantMix": "Szybki remiks", - "HeaderItems": "Pozycje", "HeaderKeepRecording": "Zachowaj nagranie", "HeaderKeepSeries": "Zachowaj nagranie serialu", "HeaderKodiMetadataHelp": "W celu aktywowania lub dezaktywowania metadanych NFO, należy zmodyfikować ustawienia biblioteki w sekcji menadżerów metadanych.", @@ -367,7 +350,6 @@ "HeaderMediaInfo": "O mediach", "HeaderMetadataSettings": "Ustawienia metadanych", "HeaderMoreLikeThis": "Więcej podobnych", - "HeaderMovies": "Filmy", "HeaderMusicQuality": "Jakość muzyki", "HeaderMusicVideos": "Teledyski", "HeaderMyDevice": "Moje urządzenie", @@ -428,7 +410,6 @@ "HeaderServerSettings": "Ustawienia serwera", "HeaderSettings": "Ustawienia", "HeaderSetupLibrary": "Skonfiguruj swoje biblioteki mediów", - "HeaderShutdown": "Zamknij", "HeaderSortBy": "Sortuj według", "HeaderSortOrder": "Porządek sortowania", "HeaderSpecialEpisodeInfo": "Specjalne informacje o odcinku", @@ -463,7 +444,6 @@ "HeaderXmlDocumentAttributes": "Atrybuty Dokumentu Xml", "HeaderXmlSettings": "Ustawienia Xml", "HeaderYears": "Lata", - "HeadersFolders": "Foldery", "Help": "Pomoc", "Hide": "Ukryj", "HideWatchedContentFromLatestMedia": "Ukrywaj obejrzaną zawartość na listach ostatnio dodanych", @@ -679,7 +659,6 @@ "LabelNewPassword": "Nowe hasło:", "LabelNewPasswordConfirm": "Potwierdź nowe hasło:", "LabelNewsCategories": "Kategorie informacyjne:", - "LabelNext": "Dalej", "LabelNotificationEnabled": "Aktywuj to powiadomienie", "LabelNumber": "Numer:", "LabelNumberOfGuideDays": "Liczba dni pobieranych danych przewodnika:", @@ -706,7 +685,6 @@ "LabelPreferredDisplayLanguage": "Preferowany język interfejsu:", "LabelPreferredDisplayLanguageHelp": "Tłumaczenie Jellyfin to projekt w ciągłym rozwoju.", "LabelPreferredSubtitleLanguage": "Preferowany język napisów:", - "LabelPrevious": "Wstecz", "LabelProfileAudioCodecs": "Kodeki audio:", "LabelProfileCodecs": "Kodeki:", "LabelProfileCodecsHelp": "Oddzielone przecinkiem. Zostaw puste aby zastosować wszystkie kodeki.", @@ -720,7 +698,6 @@ "LabelPublicHttpPortHelp": "Publiczny numer portu na który ma być zmapowany lokalny port HTTP.", "LabelPublicHttpsPort": "Publiczny numer portu HTTPS:", "LabelPublicHttpsPortHelp": "Publiczny numer portu na który ma być zmapowany lokalny port HTTPS.", - "LabelReadHowYouCanContribute": "Dowiedz się jak możesz pomóc.", "LabelReasonForTranscoding": "Powód transkodowania:", "LabelRecord": "Nagraj:", "LabelRecordingPath": "Folder domyślny nagrań:", @@ -925,7 +902,6 @@ "MessageNoNextUpItems": "Nie znaleziono niczego. Zacznij oglądać swoje seriale!", "MessageNoPluginConfiguration": "Ta wtyczka nie ma żadnych ustawień.", "NoSubtitleSearchResultsFound": "Brak wyników wyszukiwania.", - "NoSubtitles": "Brak", "NoSubtitlesHelp": "Domyślnie napisy nie będą wczytywane. Można je ciągle włączyć ręcznie podczas odtwarzania.", "None": "Brak", "Normal": "Normalny", @@ -1206,24 +1182,16 @@ "TabAccess": "Dostęp", "TabAdvanced": "Zaawansowane", "TabAlbumArtists": "Wykonawcy albumów", - "TabAlbums": "Albumy", "TabCatalog": "Katalog", - "TabChannels": "Kanały", "TabCodecs": "Kodeki", - "TabCollections": "Kolekcje", "TabContainers": "Kontenery", "TabDashboard": "Kokpit", - "TabDevices": "Urządzenia", "TabDirectPlay": "Odtwarzanie Bezposrednie", "TabEpisodes": "Odcinki", - "TabFavorites": "Ulubione", - "TabGenres": "Gatunki", - "TabGuide": "Przewodnik", "TabInfo": "Informacje", "TabLatest": "Ostatnio dodane", "TabLiveTV": "Telewizja", "TabLogs": "Dziennik zdarzeń", - "TabMovies": "Filmy", "TabMusic": "Muzyka", "TabMusicVideos": "Teledyski", "TabMyPlugins": "Zainstalowane", @@ -1244,8 +1212,6 @@ "TabSeries": "Seriale", "TabServer": "Serwer", "TabSettings": "Ustawienia", - "TabShows": "Seriale", - "TabSongs": "Utwory", "TabStreaming": "Transmitowanie", "TabTrailers": "Zwiastuny", "TabUpcoming": "Wkrótce", @@ -1457,7 +1423,6 @@ "Writers": "Scenariusz", "ViewAlbumArtist": "Zobacz wykonawcę albumu", "Track": "Utwór", - "TabDVR": "DVR", "TabRepositories": "Repozytoria", "SyncPlayAccessHelp": "Wybierz poziom dostępu do funkcji SyncPlay jaki posiada ten użytkownik. SyncPlay pozwala na synchronizację odtwarzania z innymi urządzeniami.", "Filter": "Filtruj", diff --git a/src/strings/pt-br.json b/src/strings/pt-br.json index 753b554da6..71913399f6 100644 --- a/src/strings/pt-br.json +++ b/src/strings/pt-br.json @@ -35,7 +35,6 @@ "AsManyAsPossible": "Quantos forem possíveis", "Ascending": "Crescente", "AspectRatio": "Proporção da tela", - "AttributeNew": "Novo", "Audio": "Áudio", "Backdrop": "Imagem de Fundo", "Backdrops": "Imagens de Fundo", @@ -53,18 +52,12 @@ "ButtonAddScheduledTaskTrigger": "Adicionar Disparador", "ButtonAddServer": "Adicionar Servidor", "ButtonAddUser": "Adicionar Usuário", - "ButtonArrowDown": "Baixo", "ButtonArrowLeft": "Esquerda", "ButtonArrowRight": "Direita", - "ButtonArrowUp": "Cima", "ButtonAudioTracks": "Faixas de Áudio", "ButtonBack": "Voltar", "ButtonCancel": "Cancelar", "ButtonChangeServer": "Alterar Servidor", - "ButtonConnect": "Conectar", - "ButtonDelete": "Excluir", - "ButtonDeleteImage": "Excluir Imagem", - "ButtonDown": "Baixo", "ButtonEdit": "Editar", "ButtonEditImages": "Editar imagens", "ButtonEditOtherUserPreferences": "Editar este perfil de usuário, imagem e preferências pessoais.", @@ -78,7 +71,6 @@ "ButtonManualLogin": "Login Manual", "ButtonMore": "Mais", "ButtonNetwork": "Rede", - "ButtonNew": "Novo", "ButtonNextTrack": "Próxima faixa", "ButtonOff": "Desligar", "ButtonOk": "OK", @@ -104,17 +96,14 @@ "ButtonSelectView": "Selecionar visualização", "ButtonSend": "Enviar", "ButtonSettings": "Configurações", - "ButtonShuffle": "Aleatório", "ButtonShutdown": "Desligar", "ButtonSignIn": "Entrar", "ButtonSignOut": "Sair", - "ButtonSort": "Ordenar", "ButtonStart": "Iniciar", "ButtonStop": "Parar", "ButtonSubmit": "Enviar", "ButtonSubtitles": "Legendas", "ButtonUninstall": "Desinstalar", - "ButtonUp": "Cima", "CancelRecording": "Cancelar gravação", "CancelSeries": "Cancelar série", "Categories": "Categorias", @@ -183,7 +172,6 @@ "EditImages": "Editar imagens", "EditMetadata": "Editar metadados", "EditSubtitles": "Editar legendas", - "EnableBackdrops": "Imagens de fundo", "EnableBackdropsHelp": "Exibe imagens de fundo de algumas páginas ao navegar pela biblioteca.", "EnableCinemaMode": "Modo cinema", "EnableColorCodedBackgrounds": "Cores de fundo por código", @@ -261,7 +249,6 @@ "HeaderAddUser": "Adicionar Usuário", "HeaderAdditionalParts": "Partes Adicionais", "HeaderAlbumArtists": "Artistas do Álbum", - "HeaderAlbums": "Álbuns", "HeaderAlert": "Alerta", "HeaderAllowMediaDeletionFrom": "Permitir a Exclusão de Mídia de", "HeaderApiKey": "Chave da API", @@ -278,7 +265,6 @@ "HeaderCastAndCrew": "Elenco e Equipe", "HeaderCastCrew": "Elenco e Equipe", "HeaderChannelAccess": "Acesso ao Canal", - "HeaderChannels": "Canais", "HeaderChapterImages": "Imagens do Capítulo", "HeaderCodecProfile": "Perfil do Codec", "HeaderCodecProfileHelp": "Perfis do Codec indicam as limitações de um dispositivo ao reproduzir codecs específicos. Se uma limitação ocorre, a mídia será transcodificada, mesmo se o codec estiver configurado para reprodução direta.", @@ -320,7 +306,6 @@ "HeaderForKids": "Para Crianças", "HeaderForgotPassword": "Esqueci a Senha", "HeaderFrequentlyPlayed": "Reproduzidos Frequentemente", - "HeaderGenres": "Gêneros", "HeaderGuideProviders": "Provedores de Dados do Guia da TV", "HeaderHttpHeaders": "Cabeçalhos de Http", "HeaderIdentification": "Identificação", @@ -331,7 +316,6 @@ "HeaderImageSettings": "Configurações de Imagem", "HeaderInstall": "Instalar", "HeaderInstantMix": "Mix Instantâneo", - "HeaderItems": "Itens", "HeaderKeepRecording": "Continuar Gravando", "HeaderKeepSeries": "Manter Série", "HeaderKodiMetadataHelp": "Para ativar ou desativar metadados NFO, edite uma biblioteca na configuração de Biblioteca do Jellyfin e localize a seção de gravadores de metadados.", @@ -354,7 +338,6 @@ "HeaderMediaInfo": "Informações de Mídia", "HeaderMetadataSettings": "Configurações dos Metadados", "HeaderMoreLikeThis": "Mais Disso", - "HeaderMovies": "Filmes", "HeaderMusicQuality": "Qualidade da Música", "HeaderMusicVideos": "Videoclipes", "HeaderMyDevice": "Meu Dispositivo", @@ -415,7 +398,6 @@ "HeaderServerSettings": "Configurações de Servidor", "HeaderSettings": "Configurações", "HeaderSetupLibrary": "Configurar suas bibliotecas de mídias", - "HeaderShutdown": "Desligar", "HeaderSortBy": "Ordenar Por", "HeaderSortOrder": "Ordem", "HeaderSpecialEpisodeInfo": "Informação do Episódio Especial", @@ -449,7 +431,6 @@ "HeaderXmlDocumentAttributes": "Atributos do Documento Xml", "HeaderXmlSettings": "Configurações Xml", "HeaderYears": "Anos", - "HeadersFolders": "Pastas", "Help": "Ajuda", "Hide": "Ocultar", "HideWatchedContentFromLatestMedia": "Ocultar conteúdo assistido das mídias recentes", @@ -663,7 +644,6 @@ "LabelNewPassword": "Nova senha:", "LabelNewPasswordConfirm": "Confirmar nova senha:", "LabelNewsCategories": "Categorias de notícias:", - "LabelNext": "Próximo", "LabelNotificationEnabled": "Ativar esta notificação", "LabelNumber": "Número:", "LabelNumberOfGuideDays": "Número de dias de dados do guia para baixar:", @@ -690,7 +670,6 @@ "LabelPreferredDisplayLanguage": "Idioma preferido de exibição:", "LabelPreferredDisplayLanguageHelp": "A tradução do Jellyfin é um projeto em andamento.", "LabelPreferredSubtitleLanguage": "Idioma de legendas preferido:", - "LabelPrevious": "Anterior", "LabelProfileAudioCodecs": "Codecs de áudio:", "LabelProfileCodecsHelp": "Separados por vírgula. Deixe em branco para aplicar a todos os codecs.", "LabelProfileContainersHelp": "Separados por vírgula. Deixe em branco para aplicar a todos os formatos.", @@ -702,7 +681,6 @@ "LabelPublicHttpPortHelp": "O número da porta pública que deverá ser mapeada para a porta local de HTTP.", "LabelPublicHttpsPort": "Número da porta pública de HTTPS:", "LabelPublicHttpsPortHelp": "O número da porta pública que deverá ser mapeada para a porta local de HTTPS.", - "LabelReadHowYouCanContribute": "Aprenda como você pode contribuir.", "LabelReasonForTranscoding": "Motivo da transcodificação:", "LabelRecord": "Gravar:", "LabelRecordingPath": "Local de gravação padrão:", @@ -901,7 +879,6 @@ "MessageNoNextUpItems": "Nada encontrado. Comece a assistir suas séries!", "MessageNoPluginConfiguration": "Este plugin não permite alterar configurações.", "NoSubtitleSearchResultsFound": "Nenhum resultado encontrado.", - "NoSubtitles": "Não há legendas", "NoSubtitlesHelp": "Legendas não serão carregadas por padrão. Elas podem ser carregadas manualmente durante a reprodução.", "None": "Nenhum(a)", "NumLocationsValue": "{0} pastas", @@ -1168,20 +1145,12 @@ "TabAccess": "Acesso", "TabAdvanced": "Avançado", "TabAlbumArtists": "Artistas do Álbum", - "TabAlbums": "Álbuns", "TabCatalog": "Catálogo", - "TabChannels": "Canais", - "TabCollections": "Coletâneas", "TabDashboard": "Painel", - "TabDevices": "Dispositivos", "TabDirectPlay": "Reprodução Direta", "TabEpisodes": "Episódios", - "TabFavorites": "Favoritos", - "TabGenres": "Gêneros", - "TabGuide": "Guia", "TabLatest": "Recentes", "TabLiveTV": "TV ao Vivo", - "TabMovies": "Filmes", "TabMusic": "Música", "TabMusicVideos": "Videoclipes", "TabMyPlugins": "Meus Plugins", @@ -1201,8 +1170,6 @@ "TabSeries": "Séries", "TabServer": "Servidor", "TabSettings": "Configurações", - "TabShows": "Séries", - "TabSongs": "Músicas", "TabUpcoming": "A Seguir", "TabUsers": "Usuários", "TellUsAboutYourself": "Conte-nos sobre você", @@ -1268,7 +1235,6 @@ "Auto": "Automático", "Banner": "Cartaz", "Blacklist": "Lista negra", - "ButtonDownload": "Download", "ButtonInfo": "Informações", "ButtonTrailer": "Trailer", "ButtonWebsite": "Site", @@ -1455,7 +1421,6 @@ "New": "Novo", "HeaderFavoritePlaylists": "Playlists Favoritas", "ApiKeysCaption": "Lista de chaves API ativadas no momento", - "TabDVR": "DVR", "SaveChanges": "Salvar mudanças", "LabelRequireHttpsHelp": "Se selecionado, o servidor vai automaticamente redirecionar todas as solicitações HTTP para HTTPS. Isso não terá efeito se o servidor não estiver escutando HTTPS.", "LabelRequireHttps": "Necessita HTTPS", diff --git a/src/strings/pt-pt.json b/src/strings/pt-pt.json index 3d780043aa..2d6890ff6d 100644 --- a/src/strings/pt-pt.json +++ b/src/strings/pt-pt.json @@ -4,7 +4,6 @@ "AddToPlaylist": "Adicionar à lista de reprodução", "AdditionalNotificationServices": "Explore o catálogo de extensões para instalar serviços adicionais de notificação.", "All": "Todos", - "AttributeNew": "Novo", "Audio": "Áudio", "Backdrops": "Imagens de Fundo", "MessageBrowsePluginCatalog": "Procure extensões disponíveis no nosso catálogo.", @@ -12,16 +11,11 @@ "ButtonAddScheduledTaskTrigger": "Adicionar tarefa agendada", "ButtonAddServer": "Adicionar Servidor", "ButtonAddUser": "Adicionar Utilizador", - "ButtonArrowDown": "Baixo", "ButtonArrowLeft": "Esquerda", "ButtonArrowRight": "Direita", - "ButtonArrowUp": "Cima", "ButtonBack": "Voltar", "ButtonCancel": "Cancelar", "ButtonChangeServer": "Alterar Servidor", - "ButtonConnect": "Ligar", - "ButtonDelete": "Remover", - "ButtonDeleteImage": "Apagar imagem", "ButtonEdit": "Editar", "ButtonEditOtherUserPreferences": "Editar este perfil de utilizador, imagem e preferências pessoais.", "ButtonFilter": "Filtro", @@ -32,7 +26,6 @@ "ButtonManualLogin": "Início de Sessão Manual", "ButtonMore": "Mais", "ButtonNetwork": "Rede", - "ButtonNew": "Novo", "ButtonNextTrack": "Faixa seguinte", "ButtonOpen": "Abrir", "ButtonPause": "Pausar", @@ -53,11 +46,9 @@ "ButtonSelectView": "Selecionar visualização", "ButtonSend": "Enviar", "ButtonSettings": "Configurações", - "ButtonShuffle": "Aleatório", "ButtonShutdown": "Encerrar", "ButtonSignIn": "Iniciar Sessão", "ButtonSignOut": "Sair", - "ButtonSort": "Organizar", "ButtonStart": "Iniciar", "ButtonStop": "Parar", "ButtonSubmit": "Enviar", @@ -120,7 +111,6 @@ "HeaderBranding": "Marca", "HeaderCastCrew": "Elenco e Equipa", "HeaderChannelAccess": "Acesso ao Canal", - "HeaderChannels": "Canais", "HeaderCodecProfile": "Perfil do Codec", "HeaderCodecProfileHelp": "Perfis do Codec indicam as limitações de um dispositivo ao reproduzir codecs específicos. Se uma limitação ocorre, o ficheiro multimédia será transcodificado, mesmo se o codec estiver configurado para reprodução direta.", "HeaderConfirmProfileDeletion": "Confirmar Remoção do Perfil", @@ -147,7 +137,6 @@ "HeaderFetchImages": "Procurar Imagens:", "HeaderForgotPassword": "Esqueci-me da palavra-passe", "HeaderFrequentlyPlayed": "Reproduzido Frequentemente", - "HeaderGenres": "Géneros", "HeaderGuideProviders": "Provedores de Programação de TV", "HeaderHttpHeaders": "Cabeçalhos HTTP", "HeaderIdentification": "Identificação", @@ -216,7 +205,6 @@ "HeaderServerSettings": "Configurações do Servidor", "HeaderSettings": "Configurações", "HeaderSetupLibrary": "Configurar Bibliotecas Multimédia", - "HeaderShutdown": "Encerrar", "HeaderSpecialEpisodeInfo": "Informação do Episódio Especial", "HeaderSpecialFeatures": "Extras", "HeaderStatus": "Estado", @@ -238,7 +226,6 @@ "HeaderXmlDocumentAttributes": "Atributos do Documento XML", "HeaderXmlSettings": "Configurações de XML", "HeaderYears": "Anos", - "HeadersFolders": "Pastas", "Help": "Ajuda", "Identify": "Identificar", "Images": "Imagens", @@ -395,7 +382,6 @@ "LabelName": "Nome:", "LabelNewPassword": "Nova palavra-passe:", "LabelNewPasswordConfirm": "Confirmar nova palavra-passe:", - "LabelNext": "Seguinte", "LabelNotificationEnabled": "Ativar esta notificação", "LabelNumberOfGuideDays": "Número de dias de programação de TV para transferir:", "LabelNumberOfGuideDaysHelp": "Transferir mais dias de programação de TV permite agendar com maior antecedência e ver mais listagens, no entanto, irá levar mais tempo a transferir. Se selecionar Automático, será escolhido o período baseado no número de canais.", @@ -411,7 +397,6 @@ "LabelPlayDefaultAudioTrack": "Reproduzir a faixa de áudio padrão independentemente do idioma", "LabelPreferredDisplayLanguage": "Idioma de visualização preferido:", "LabelPreferredDisplayLanguageHelp": "A tradução do Jellyfin é um projeto contínuo.", - "LabelPrevious": "Anterior", "LabelProfileAudioCodecs": "Codecs do áudio:", "LabelProfileCodecsHelp": "Separados por vírgula. Pode ser deixado em branco para usar com todos os codecs.", "LabelProfileContainer": "Contentor:", @@ -424,7 +409,6 @@ "LabelPublicHttpPortHelp": "Número do porto público que deverá ser mapeado para o porto HTTP local.", "LabelPublicHttpsPort": "Número do porto público HTTPS:", "LabelPublicHttpsPortHelp": "Número do porto público que deverá ser mapeado para o porto HTTPS local.", - "LabelReadHowYouCanContribute": "Veja como pode contribuir.", "LabelRecordingPath": "Localização predefinida das gravações:", "LabelReleaseDate": "Data de lançamento:", "LabelRemoteClientBitrateLimit": "Taxa de bits máxima para transmissão para a Internet (Mbps):", @@ -667,21 +651,13 @@ "TabAccess": "Acesso", "TabAdvanced": "Avançado", "TabAlbumArtists": "Artistas do Álbum", - "TabAlbums": "Álbuns", "TabCatalog": "Catálogo", - "TabChannels": "Canais", - "TabCollections": "Coleções", "TabContainers": "Contentores", "TabDashboard": "Painel Principal", - "TabDevices": "Dispositivos", "TabDirectPlay": "Reprodução Direta", "TabEpisodes": "Episódios", - "TabFavorites": "Favoritos", - "TabGenres": "Géneros", - "TabGuide": "Programação", "TabLatest": "Mais recente", "TabLiveTV": "TV em Direto", - "TabMovies": "Filmes", "TabMusic": "Música", "TabMusicVideos": "Videoclips", "TabMyPlugins": "As Minhas Extensões", @@ -701,8 +677,6 @@ "TabSeries": "Séries", "TabServer": "Servidor", "TabSettings": "Configurações", - "TabShows": "Séries", - "TabSongs": "Músicas", "TabUpcoming": "Próximos", "TabUsers": "Utilizadores", "TellUsAboutYourself": "Fale-nos sobre si", @@ -799,7 +773,6 @@ "ButtonGuide": "Programação", "ButtonGotIt": "Entendido", "ButtonEditImages": "Editar imagens", - "ButtonDownload": "Transferir", "ButtonAudioTracks": "Faixas de Áudio", "Browse": "Procurar", "BoxRear": "Caixa (verso)", @@ -812,7 +785,6 @@ "Aired": "Estreou", "HeaderKeepRecording": "Manter Gravação", "HeaderKeepSeries": "Manter Série", - "HeaderItems": "Itens", "HeaderImageOptions": "Opções de Imagem", "HeaderHome": "Início", "HeaderForKids": "Para Crianças", @@ -837,7 +809,6 @@ "HeaderAudioBooks": "Livros de Áudio", "HeaderAllowMediaDeletionFrom": "Permitir remoção de multimédia a partir de", "HeaderAlert": "Alerta", - "HeaderAlbums": "Álbuns", "HeaderAddToPlaylist": "Adicionar à Lista de Reprodução", "HDPrograms": "Programas HD", "EncoderPresetHelp": "Escolha um valor mais rápido para melhorar o desempenho, ou um valor mais lento para melhorar a qualidade.", @@ -951,8 +922,6 @@ "LabelSelectFolderGroups": "Agrupar automaticamente o conteúdo das seguintes pastas em vistas como Filmes, Música e TV:", "HeaderUpcomingOnTV": "A Seguir", "HeaderLiveTvTunerSetup": "Configurar Sintonizador de TV", - "ButtonUp": "Para cima", - "ButtonDown": "Para baixo", "RecordSeries": "Gravar série", "LabelKeepUpTo": "Manter, no máximo:", "AroundTime": "Por volta das {0}", @@ -1042,7 +1011,6 @@ "Sports": "Desporto", "News": "Notícias", "Programs": "Programas", - "HeaderMovies": "Filmes", "Directors": "Realização", "ButtonOff": "Desligado", "ButtonAddImage": "Adicionar Imagem", @@ -1146,7 +1114,6 @@ "DetectingDevices": "A procurar dispositivos", "CopyStreamURL": "Copiar URL da transmissão", "Disc": "Disco", - "EnableBackdrops": "Imagens de Fundo", "LabelLogs": "Registos:", "LabelSortTitle": "Título para ordenação:", "HeaderFavoritePeople": "Pessoas Favoritas", @@ -1287,7 +1254,6 @@ "No": "Não", "OptionRegex": "Expressão Regular", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", - "NoSubtitles": "Sem legendas", "NoSubtitleSearchResultsFound": "Sem resultados.", "NoNewDevicesFound": "Não foi encontrado nenhum dispositivo novo. Para adicionar um novo sintonizador, feche este diálogo e introduza manualmente as informações do dispositivo.", "NextUp": "A Seguir", diff --git a/src/strings/pt.json b/src/strings/pt.json index 9863623dc0..324f08a064 100644 --- a/src/strings/pt.json +++ b/src/strings/pt.json @@ -36,8 +36,6 @@ "TabUsers": "Utilizadores", "TabUpcoming": "Próximos", "TabStreaming": "Transmissão", - "TabSongs": "Músicas", - "TabShows": "Séries", "TabSettings": "Configurações", "TabServer": "Servidor", "TabSeries": "Séries", @@ -57,21 +55,13 @@ "TabMyPlugins": "As Minhas Extensões", "TabMusicVideos": "Videoclips", "TabMusic": "Música", - "TabMovies": "Filmes", "TabLiveTV": "TV em Directo", "TabLatest": "Mais recente", - "TabGuide": "Programação", - "TabGenres": "Géneros", - "TabFavorites": "Favoritos", "TabEpisodes": "Episódios", "TabDirectPlay": "Reprodução Directa", - "TabDevices": "Dispositivos", "TabDashboard": "Painel Principal", "TabContainers": "Contentores", - "TabCollections": "Colecções", - "TabChannels": "Canais", "TabCatalog": "Catálogo", - "TabAlbums": "Álbuns", "TabAlbumArtists": "Artistas do Álbum", "TabAdvanced": "Avançado", "TabAccess": "Acesso", @@ -212,7 +202,6 @@ "LabelRecordingPathHelp": "Especifique a localização por omissão para guardar as gravações. Se for deixado em branco, a pasta base do servidor será utilizada.", "LabelRecordingPath": "Localização predefinida das gravações:", "LabelReasonForTranscoding": "Razão para transcodificação:", - "LabelReadHowYouCanContribute": "Veja como pode contribuir.", "LabelPublicHttpsPortHelp": "Número da porta pública que deverá ser transferida para a porta HTTPS local.", "LabelPublicHttpsPort": "Número da porta HTTPS pública:", "LabelPublicHttpPortHelp": "Número da porta pública que deverá ser transferida para a porta HTTP local.", @@ -226,7 +215,6 @@ "LabelProfileCodecsHelp": "Separados por vírgula. Pode ser deixado em branco para usar com todos os codecs.", "LabelProfileCodecs": "Codecs:", "LabelProfileAudioCodecs": "Codecs do áudio:", - "LabelPrevious": "Anterior", "LabelPreferredSubtitleLanguage": "Idioma de legendas preferido:", "LabelPreferredDisplayLanguageHelp": "A tradução do Jellyfin é um projeto contínuo.", "LabelPreferredDisplayLanguage": "Idioma de visualização preferido:", @@ -253,7 +241,6 @@ "LabelNumberOfGuideDays": "Número de dias de programação de TV para transferir:", "LabelNumber": "Número:", "LabelNotificationEnabled": "Activar esta notificação", - "LabelNext": "Seguinte", "LabelNewsCategories": "Categorias para notícias:", "LabelNewPasswordConfirm": "Confirmar nova palavra-passe:", "LabelNewPassword": "Nova palavra-passe:", @@ -478,7 +465,6 @@ "HideWatchedContentFromLatestMedia": "Ocultar os títulos já vistos do conteúdo recente", "Hide": "Esconder", "Help": "Ajuda", - "HeadersFolders": "Pastas", "HeaderYears": "Anos", "HeaderXmlSettings": "Configurações de XML", "HeaderXmlDocumentAttribute": "Atributo do Documento XML", @@ -510,7 +496,6 @@ "HeaderSpecialEpisodeInfo": "Informação do Episódio Especial", "HeaderSortOrder": "Direcção de Ordenação", "HeaderSortBy": "Ordenar Por", - "HeaderShutdown": "Encerrar", "HeaderSetupLibrary": "Configurar Bibliotecas Multimédia", "HeaderSettings": "Configurações", "HeaderServerSettings": "Configurações do Servidor", @@ -571,7 +556,6 @@ "HeaderMyDevice": "O Meu Dispositivo", "HeaderMusicVideos": "Videoclips", "HeaderMusicQuality": "Qualidade da Música", - "HeaderMovies": "Filmes", "HeaderMoreLikeThis": "Mais Como Este", "HeaderMetadataSettings": "Configurações de Metadados", "HeaderMediaInfo": "Informações Multimédia", @@ -592,7 +576,6 @@ "HeaderLatestEpisodes": "Últimos Episódios", "HeaderKeepSeries": "Manter Série", "HeaderKeepRecording": "Manter Gravação", - "HeaderItems": "Itens", "HeaderInstantMix": "Mistura instantânea", "HeaderInstall": "Instalar", "HeaderImageSettings": "Configurações de Imagem", @@ -604,7 +587,6 @@ "HeaderHttpHeaders": "Cabeçalhos HTTP", "HeaderHome": "Início", "HeaderGuideProviders": "Provedores de Programação de TV", - "HeaderGenres": "Géneros", "HeaderDeleteTaskTrigger": "Excluir Tarefa Agendada", "HeaderBranding": "Marca", "HeaderFrequentlyPlayed": "Reproduzido Frequentemente", @@ -861,7 +843,6 @@ "EnableColorCodedBackgrounds": "Código de cores para o fundo", "EnableCinemaMode": "Modo cinema", "EnableBackdropsHelp": "Mostrar imagens de fundo em algumas páginas durante a navegação pela Biblioteca.", - "EnableBackdrops": "Pano de fundo", "EditSubtitles": "Editar legendas", "EditMetadata": "Editar metadados", "EditImages": "Editar imagens", @@ -935,18 +916,15 @@ "CancelSeries": "Cancelar gravação de série", "CancelRecording": "Cancelar gravação", "ButtonWebsite": "Website", - "ButtonUp": "Para cima", "ButtonUninstall": "Desinstalar", "ButtonTrailer": "Trailer", "ButtonSubtitles": "Legendas", "ButtonSubmit": "Enviar", "ButtonStop": "Parar", "ButtonStart": "Iniciar", - "ButtonSort": "Organizar", "ButtonSignOut": "Sair", "ButtonSignIn": "Iniciar Sessão", "ButtonShutdown": "Encerrar", - "ButtonShuffle": "Aleatório", "ButtonSend": "Enviar", "ButtonSettings": "Configurações", "ButtonSelectView": "Seleccionar visualização", @@ -972,7 +950,6 @@ "ButtonOk": "OK", "ButtonOff": "Desligado", "ButtonNextTrack": "Faixa seguinte", - "ButtonNew": "Novo", "ButtonNetwork": "Rede", "ButtonMore": "Mais", "ButtonManualLogin": "Início de Sessão Manual", @@ -985,17 +962,12 @@ "ButtonEditOtherUserPreferences": "Editar este perfil de utilizador, imagem e preferências pessoais.", "ButtonEditImages": "Editar imagens", "ButtonEdit": "Editar", - "ButtonDownload": "Transferir", - "ButtonDown": "Para baixo", "Auto": "Automático", "AlwaysPlaySubtitles": "Mostrar sempre legendas", "AllowMediaConversionHelp": "Permitir ou negar acesso à funcionalidade de conversão multimédia.", "AllowMediaConversion": "Permitir conversão multimédia", "ButtonGuide": "Programação", "ButtonGotIt": "Entendido", - "ButtonDeleteImage": "Remover imagem", - "ButtonDelete": "Remover", - "ButtonConnect": "Ligar", "ButtonChangeServer": "Alterar Servidor", "ButtonCancel": "Cancelar", "ButtonBack": "Voltar", @@ -1033,10 +1005,8 @@ "LabelBitrate": "Taxa de bits:", "LabelBirthYear": "Ano de nascimento:", "ButtonAudioTracks": "Faixas de Áudio", - "ButtonArrowUp": "Cima", "ButtonArrowRight": "Direita", "ButtonArrowLeft": "Esquerda", - "ButtonArrowDown": "Baixo", "ButtonAddUser": "Adicionar Utilizador", "ButtonAddServer": "Adicionar Servidor", "ButtonAddScheduledTaskTrigger": "Adicionar tarefa agendada", @@ -1058,7 +1028,6 @@ "Backdrop": "Imagem de Fundo", "AuthProviderHelp": "Seleccione um mecanismo de autenticação a ser utilizado para validar as credenciais deste utilizador.", "Audio": "Áudio", - "AttributeNew": "Novo", "AspectRatio": "Proporção da tela", "Ascending": "Crescente", "Art": "Capa", @@ -1113,7 +1082,6 @@ "HeaderCodecProfileHelp": "Os perfis do Codec indicam as limitações de um dispositivo ao reproduzir codecs específicos. Se uma limitação ocorrer, o ficheiro multimédia será transcodificado, mesmo se o codec estiver configurado para reprodução direta.", "HeaderCodecProfile": "Perfil do Codec", "HeaderChapterImages": "Imagens do Capítulo", - "HeaderChannels": "Canais", "HeaderChannelAccess": "Acesso ao Canal", "HeaderCastCrew": "Elenco e Equipa", "HeaderCancelSeries": "Cancelar Gravação de Série", @@ -1128,7 +1096,6 @@ "HeaderApiKey": "Chave da API", "HeaderAllowMediaDeletionFrom": "Permitir remoção de multimédia a partir de", "HeaderAlert": "Alerta", - "HeaderAlbums": "Álbuns", "HeaderAlbumArtists": "Artistas do Álbum", "HeaderAdditionalParts": "Partes Adicionais", "HeaderAddUser": "Adicionar Utilizador", @@ -1203,7 +1170,6 @@ "Normal": "Normal", "None": "Nenhum", "NoSubtitlesHelp": "As legendas não serão carregadas por padrão. Eles ainda podem ser ativados manualmente durante a reprodução.", - "NoSubtitles": "Sem legendas", "NoSubtitleSearchResultsFound": "Nenhum resultado encontrado.", "NoNewDevicesFound": "Não foram encontrados novos dispositivos. Para adicionar um novo sintonizador, feche esta caixa de diálogo e insira as informações do dispositivo manualmente.", "NoCreatedLibraries": "Parece que você ainda não criou nenhuma biblioteca. {0} Deseja criar um agora? {1}", diff --git a/src/strings/ro.json b/src/strings/ro.json index a627be87fb..7fcce88aa2 100644 --- a/src/strings/ro.json +++ b/src/strings/ro.json @@ -3,12 +3,9 @@ "ButtonAddScheduledTaskTrigger": "Adaugă declanșator", "ButtonAddUser": "Adaugă Utilizator", "ButtonCancel": "Anulează", - "ButtonDelete": "Șterge", - "ButtonDeleteImage": "Șterge Imaginea", "ButtonEdit": "Modifică", "ButtonFilter": "Filtru", "ButtonManualLogin": "Conectare manuală", - "ButtonNew": "Nou", "ButtonPlay": "Redă", "ButtonQuickStartGuide": "Ghid rapid de Start", "ButtonRefresh": "Reîmprospătează", @@ -18,7 +15,6 @@ "ButtonSelectDirectory": "Selectați Director", "ButtonSignIn": "Autentificare", "ButtonSignOut": "Delogare", - "ButtonSort": "Sortează", "ChannelAccessHelp": "Selectează canalele pe care vrei să le partajezi cu acest utilizator. Administratorii vor avea posibilitatea să modifice canalele folosind managerul de metadate.", "Continuing": "Continuă", "DefaultMetadataLangaugeDescription": "Acestea sunt setările implicite și pot fi personalizate pentru fiecare bibliotecă în parte.", @@ -35,7 +31,6 @@ "HeaderActiveRecordings": "Înregistrări active", "HeaderAddScheduledTaskTrigger": "Adaugă declanșator", "HeaderAddUser": "Adaugă Utilizator", - "HeaderChannels": "Canale", "HeaderContinueWatching": "Vizionează în continuare", "HeaderDeviceAccess": "Accesul Dispozitivelor", "HeaderEasyPinCode": "Cod Pin Ușor", @@ -82,11 +77,9 @@ "LabelName": "Nume:", "LabelNewPassword": "Parola nouă:", "LabelNewPasswordConfirm": "Confirmă parola nouă:", - "LabelNext": "Următorul", "LabelNumberOfGuideDays": "Numărul de zile de ghid de descărcat:", "LabelNumberOfGuideDaysHelp": "Descărcând mai multe zile de ghid va permite să programați mai în avans și să vizualizați listările mai în viitor, dar descărcarea va dura mai mult. \"Automat\" va alege în funcție de numărul de canale.", "LabelPassword": "Parolă:", - "LabelPrevious": "Anteriorul", "LabelRecordingPath": "Calea implicită pentru înregistrări:", "LabelRecordingPathHelp": "Specificați locația implicită pentru a salva înregistrările. Dacă lasați necompletat, va fi utilizat directorul curent în care ruleză programul serverului.", "LabelSaveLocalMetadata": "Salvează posterele si metadata în dosarele ce conțin fișierele media", @@ -177,15 +170,8 @@ "TabAccess": "Acces", "TabAdvanced": "Avansat", "TabAlbumArtists": "Albume Artiști", - "TabAlbums": "Albume", - "TabChannels": "Canale", - "TabCollections": "Colecții", "TabEpisodes": "Episoade", - "TabFavorites": "Favorite", - "TabGenres": "Genuri", - "TabGuide": "Ghid", "TabLatest": "Cele mai recente", - "TabMovies": "Filme", "TabMusic": "Muzică", "TabMusicVideos": "Videoclipuri muzicale", "TabMyPlugins": "Plugin-urile mele", @@ -198,8 +184,6 @@ "TabRecordings": "Înregistrări", "TabSeries": "Seriale", "TabSettings": "Setări", - "TabShows": "Seriale", - "TabSongs": "Melodii", "TabTrailers": "Trailere", "TabUpcoming": "Urmează să apară", "TellUsAboutYourself": "Spune-ne despre tine", @@ -257,14 +241,12 @@ "Blacklist": "Lista neagră", "Books": "Cărți", "Box": "Cutie", - "AttributeNew": "Nou", "Audio": "Audio", "BoxRear": "Cutie (spate)", "Browse": "Răsfoire", "MessageBrowsePluginCatalog": "Răsfoiți catalogul de pluginuri pentru a vedea ce este disponibil.", "ButtonAddMediaLibrary": "Adaugă Librărie Media", "ButtonAddServer": "Adaugă Server", - "ButtonArrowDown": "Jos", "ButtonArrowLeft": "Stânga", "ButtonArrowRight": "Dreapta", "Disc": "Placă", @@ -298,13 +280,9 @@ "Artists": "Artiști", "BookLibraryHelp": "Cărți audio și text sunt suportate. Verifică {0} ghidul numirii cărților{1}.", "ButtonAddImage": "Adaugă Imagine", - "ButtonArrowUp": "Sus", "ButtonAudioTracks": "Cale Audio", "ButtonBack": "Înapoi", "ButtonChangeServer": "Schimbă Server", - "ButtonConnect": "Conectare", - "ButtonDown": "Jos", - "ButtonDownload": "Descarcă", "ButtonEditImages": "Modifică imaginile", "ButtonEditOtherUserPreferences": "Modifică profilul, imaginea și preferințele personale ale acestui utilizator.", "ButtonForgotPassword": "Parolă uitată", @@ -339,13 +317,11 @@ "ButtonSelectServer": "Selectați Server", "ButtonSelectView": "Selectați perspectivă", "ButtonSend": "Trimite", - "ButtonShuffle": "Amestecă", "ButtonShutdown": "Oprește", "ButtonStart": "Start", "ButtonSubtitles": "Subtitrări", "ButtonTrailer": "Trailer", "ButtonUninstall": "Dezinstalează", - "ButtonUp": "Sus", "ButtonWebsite": "Website", "CancelRecording": "Anulează înregistrarea", "CancelSeries": "Anulează serial", @@ -418,7 +394,6 @@ "HeaderFetcherSettings": "Setări Fetcher", "HeaderForKids": "Pentru Copii", "HeaderForgotPassword": "Am uitat parola", - "HeaderGenres": "Genuri", "HeaderGuideProviders": "Furnizori de date ghid TV", "HeaderHome": "Acasă", "HeaderHttpHeaders": "Anteturi HTTP", @@ -439,7 +414,6 @@ "HeaderMediaInfo": "Informații Media", "HeaderMetadataSettings": "Setări metadate", "HeaderMoreLikeThis": "Mai multe ca acesta", - "HeaderMovies": "Filme", "HeaderMusicQuality": "Calitatea muzicii", "HeaderConfirmRevokeApiKey": "Revocați cheia API", "HeaderMusicVideos": "Videoclipuri Muzicale", @@ -497,7 +471,6 @@ "HeaderAddToPlaylist": "Adauga la lista de redare", "HeaderAddUpdateImage": "Adăugați/Actualizați Imaginea", "HeaderAdditionalParts": "Părți Adiționale", - "HeaderAlbums": "Albume", "HeaderAlert": "Alertă", "HeaderAllowMediaDeletionFrom": "Permite ștergerea media din", "HeaderAppearsOn": "Apare în", @@ -511,7 +484,6 @@ "HeaderDevices": "Dispozitive", "HeaderDirectPlayProfile": "Profil de redare directă", "HeaderDirectPlayProfileHelp": "Adăugați profiluri de redare directă pentru a indica ce formate se pot gestiona în mod nativ.", - "HeaderItems": "Elemente", "HeaderKeepSeries": "Păstrează seriile", "HeaderLatestMedia": "Cele mai recente media", "HeaderLibraryOrder": "Ordinea Bibliotecii", @@ -571,7 +543,6 @@ "DropShadow": "Umbra", "EasyPasswordHelp": "Codul dvs. PIN simplu este utilizat pentru accesul offline la clienții suportați și poate fi folosit și pentru conectarea ușoară în rețea.", "EditSubtitles": "Editează subtitrări", - "EnableBackdrops": "Decoruri", "EnableBackdropsHelp": "Afișați decoruri în fundalul unor pagini în timp ce navigați în bibliotecă.", "EnableColorCodedBackgrounds": "Fundaluri codate color", "EnableDisplayMirroring": "Afișează in oglinda", @@ -609,7 +580,6 @@ "HeaderSeriesStatus": "Starea Serialelor", "HeaderServerSettings": "Setările Serverului", "HeaderSettings": "Setări", - "HeaderShutdown": "Opriți Alimentarea", "HeaderSortBy": "Sortează după", "HeaderSortOrder": "Ordinea de sortare", "LabelTranscodingThreadCount": "Numărul de threaduri ale transcodării:", @@ -671,7 +641,6 @@ "LabelRefreshMode": "Mod reîmprospătare:", "LabelRecord": "Înregistrare:", "LabelReasonForTranscoding": "Motiv pentru transcodare:", - "LabelReadHowYouCanContribute": "Aflați cum puteți contribui.", "LabelPublicHttpsPortHelp": "Numărul de port public care ar trebui mapat în portul HTTPS local.", "LabelPublicHttpsPort": "Portul HTTPS public:", "LabelPublicHttpPortHelp": "Numărul de port public care ar trebui mapat în portul HTTP local.", @@ -913,7 +882,6 @@ "Home": "Acasă", "HideWatchedContentFromLatestMedia": "Ascunde conținutul vizionat din cele mai recente media", "Hide": "Ascunde", - "HeadersFolders": "Dosare", "HeaderYears": "Ani", "HeaderXmlSettings": "XML setări", "HeaderXmlDocumentAttributes": "XML Document Atribute", @@ -980,7 +948,6 @@ "Normal": "Normal", "None": "Nici unul", "NoSubtitlesHelp": "Subtitrările nu vor fi încărcate în mod implicit. Acestea pot fi însă activate manual în timpul redării.", - "NoSubtitles": "Fără", "NoSubtitleSearchResultsFound": "Nici un rezultat găsit.", "MessageNoPluginConfiguration": "Acest plugin nu are setări de configurat.", "NoNewDevicesFound": "Nu s-au găsit dispozitive noi. Pentru a adăuga un nou tuner, închideți acest dialog și introduceți informațiile dispozitivului manual.", @@ -1399,7 +1366,6 @@ "TabLiveTV": "TV în Direct", "TabInfo": "Info", "TabDirectPlay": "Redare directă", - "TabDevices": "Dispozitive", "TabDashboard": "Tablou de bord", "TabContainers": "Containere", "TabCodecs": "Codecuri", @@ -1464,7 +1430,6 @@ "HeaderServerAddressSettings": "Setările adresei serverului", "HeaderRemoteAccessSettings": "Setări pentru aces remote", "HeaderHttpsSettings": "Setări https", - "TabDVR": "DVR", "SaveChanges": "Salvează modificările", "HeaderDVR": "DVR", "SyncPlayAccessHelp": "Selectați nivelul de acces pe care îl are acest utilizator la funcția SyncPlay. SyncPlay permite sincronizarea redării cu alte dispozitive.", diff --git a/src/strings/ru.json b/src/strings/ru.json index a35a15642d..f7ec2e0715 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -36,7 +36,6 @@ "AsManyAsPossible": "Как можно больше", "Ascending": "По возрастанию", "AspectRatio": "Соотношение сторон", - "AttributeNew": "Новинка", "Audio": "Аудио", "Auto": "Авто", "Backdrop": "Фон", @@ -57,19 +56,12 @@ "ButtonAddScheduledTaskTrigger": "Добавить триггер", "ButtonAddServer": "Добавить сервер", "ButtonAddUser": "Добавить пользователя", - "ButtonArrowDown": "Вниз", "ButtonArrowLeft": "Влево", "ButtonArrowRight": "Вправо", - "ButtonArrowUp": "Вверх", "ButtonAudioTracks": "Аудиодорожки", "ButtonBack": "Назад", "ButtonCancel": "Отменить", "ButtonChangeServer": "Сменить сервер", - "ButtonConnect": "Подсоединиться", - "ButtonDelete": "Удалить", - "ButtonDeleteImage": "Удалить изображение", - "ButtonDown": "Вниз", - "ButtonDownload": "Загрузить", "ButtonEdit": "Править", "ButtonEditImages": "Править изображения", "ButtonEditOtherUserPreferences": "Править профиль, изображение и персональные настройки этого пользователя.", @@ -84,7 +76,6 @@ "ButtonManualLogin": "Войти вручную", "ButtonMore": "Ещё", "ButtonNetwork": "Сеть", - "ButtonNew": "Новое", "ButtonNextTrack": "Следующая дорожка", "ButtonOff": "Откл", "ButtonOk": "Ок", @@ -110,11 +101,9 @@ "ButtonSelectView": "Выбрать представление", "ButtonSend": "Передать", "ButtonSettings": "Параметры", - "ButtonShuffle": "Перемешать", "ButtonShutdown": "Завершить работу", "ButtonSignIn": "Вход", "ButtonSignOut": "Выйти", - "ButtonSort": "Сортировать", "ButtonStart": "Запустить", "ButtonStop": "Остановить", "ButtonSubmit": "Подтвердить", @@ -122,7 +111,6 @@ "ButtonTogglePlaylist": "Плей-лист", "ButtonTrailer": "Трейлер", "ButtonUninstall": "Удалить", - "ButtonUp": "Вверх", "ButtonWebsite": "Веб-сайт", "CancelRecording": "Отменить запись", "CancelSeries": "Отменить сериал", @@ -195,7 +183,6 @@ "EditImages": "Править изображения", "EditMetadata": "Править метаданные", "EditSubtitles": "Править субтитры", - "EnableBackdrops": "Фоны", "EnableBackdropsHelp": "Фоны будут отображаются на заднем плане на некоторых страницах при просмотре медиатеки.", "EnableCinemaMode": "Режим кинозала", "EnableColorCodedBackgrounds": "Обозначеннные цветом фоны", @@ -276,7 +263,6 @@ "HeaderAdditionalParts": "Дополнительные части", "HeaderAdmin": "Администрирование", "HeaderAlbumArtists": "Исполнители альбома", - "HeaderAlbums": "Альбомы", "HeaderAlert": "Предупреждение", "HeaderAllowMediaDeletionFrom": "Разрешить удаление медиаданных из", "HeaderApiKey": "API-ключ", @@ -294,7 +280,6 @@ "HeaderCastAndCrew": "Снимались и снимали", "HeaderCastCrew": "Снимались и снимали", "HeaderChannelAccess": "Доступ ко каналам", - "HeaderChannels": "Каналы", "HeaderChapterImages": "Изображения сцен", "HeaderCodecProfile": "Профиль кодеков", "HeaderCodecProfileHelp": "Профили кодеков обозначают ограничения устройства при воспроизведении с определёнными кодеками. Если применяется ограничение, то медиаданные перекодируются, даже если кодек настроен для прямого воспроизведения.", @@ -336,7 +321,6 @@ "HeaderForKids": "Детям", "HeaderForgotPassword": "Забыли пароль", "HeaderFrequentlyPlayed": "Воспроизведённые часто", - "HeaderGenres": "Жанры", "HeaderGuideProviders": "Поставщики данных телегида", "HeaderHttpHeaders": "HTTP-заголовки", "HeaderIdentification": "Распознание", @@ -347,7 +331,6 @@ "HeaderImageSettings": "Настройки изображения", "HeaderInstall": "Установка", "HeaderInstantMix": "Автомикс", - "HeaderItems": "Элементы", "HeaderKeepRecording": "Хранение записи", "HeaderKeepSeries": "Хранение сериала", "HeaderKodiMetadataHelp": "Для включения или отключения NFO-метаданных, правьте медиатеку и найдите раздел хранителей метаданных.", @@ -370,7 +353,6 @@ "HeaderMediaInfo": "О медиаданных", "HeaderMetadataSettings": "Параметры метаданных", "HeaderMoreLikeThis": "Ещё подобное этому", - "HeaderMovies": "Фильмы", "HeaderMusicQuality": "Качество музыки", "HeaderMusicVideos": "Муз. видео", "HeaderMyDevice": "Моё устройство", @@ -431,7 +413,6 @@ "HeaderServerSettings": "Параметры сервера", "HeaderSettings": "Параметры", "HeaderSetupLibrary": "Установка и настройка медиатеки", - "HeaderShutdown": "Завершение работы", "HeaderSortBy": "Сортировка по", "HeaderSortOrder": "Порядок сортировки", "HeaderSpecialEpisodeInfo": "О спецэпизоде", @@ -466,7 +447,6 @@ "HeaderXmlDocumentAttributes": "Атрибуты XML-документа", "HeaderXmlSettings": "Параметры XML", "HeaderYears": "Годы", - "HeadersFolders": "Папки", "Help": "Справка...", "Hide": "Скрыть", "HideWatchedContentFromLatestMedia": "Скрыть просмотренное содержание из Новейших медиаданных", @@ -683,7 +663,6 @@ "LabelNewPassword": "Новый пароль:", "LabelNewPasswordConfirm": "Подтверждение пароля:", "LabelNewsCategories": "Новостные категории:", - "LabelNext": "Следующее", "LabelNotificationEnabled": "Включить данное уведомление", "LabelNumber": "Номер:", "LabelNumberOfGuideDays": "Число дней для загрузки данных телегида:", @@ -710,7 +689,6 @@ "LabelPreferredDisplayLanguage": "Выбор языка отображения:", "LabelPreferredDisplayLanguageHelp": "Перевод Jellyfin ведётся на постоянной основе.", "LabelPreferredSubtitleLanguage": "Выбор языка субтитров:", - "LabelPrevious": "Предыдущее", "LabelProfileAudioCodecs": "Аудиокодеки:", "LabelProfileCodecs": "Кодеки:", "LabelProfileCodecsHelp": "Разделяются запятой. Поле можно оставить незаполненным, чтобы применять для всех кодеков.", @@ -724,7 +702,6 @@ "LabelPublicHttpPortHelp": "Номер публичного порта, который сопоставляется с локальным HTTP-портом.", "LabelPublicHttpsPort": "Номер публичного HTTPS-порта:", "LabelPublicHttpsPortHelp": "Номер публичного порта, который сопоставляется с локальным HTTPS-портом.", - "LabelReadHowYouCanContribute": "Как вносить свой вклад.", "LabelReasonForTranscoding": "Причина перекодирования:", "LabelRecord": "Запись:", "LabelRecordingPath": "Стандартный путь для записей:", @@ -934,7 +911,6 @@ "MessageNoNextUpItems": "Ничего не найдено. Начните смотреть свои ТВ-передачи!", "MessageNoPluginConfiguration": "В данном плагине нет параметров конфигурирования.", "NoSubtitleSearchResultsFound": "Результатов не найдено.", - "NoSubtitles": "Ничего", "NoSubtitlesHelp": "По умолчанию, субтитры не будут загружаться. Они могут быть все ещё включены вручную во время воспроизведения.", "None": "Ничего", "Normal": "Обычный", @@ -1219,24 +1195,16 @@ "TabAccess": "Доступ", "TabAdvanced": "Расширенное", "TabAlbumArtists": "Исполнители альбома", - "TabAlbums": "Альбомы", "TabCatalog": "Каталог", - "TabChannels": "Каналы", "TabCodecs": "Кодеки", - "TabCollections": "Коллекции", "TabContainers": "Контейнеры", "TabDashboard": "Панель", - "TabDevices": "Устройства", "TabDirectPlay": "Прямое воспроизведение", "TabEpisodes": "Эпизоды", - "TabFavorites": "Избранное", - "TabGenres": "Жанры", - "TabGuide": "Телегид", "TabInfo": "Инфо", "TabLatest": "Новейшее", "TabLiveTV": "Эфир", "TabLogs": "Журналы", - "TabMovies": "Фильмы", "TabMusic": "Музыка", "TabMusicVideos": "Муз. видео", "TabMyPlugins": "Мои плагины", @@ -1257,8 +1225,6 @@ "TabSeries": "Сериалы", "TabServer": "Сервер", "TabSettings": "Параметры", - "TabShows": "Сериалы", - "TabSongs": "Треки", "TabStreaming": "Трансляция", "TabTrailers": "Трейлеры", "TabUpcoming": "Ожидаемое", @@ -1457,7 +1423,6 @@ "LabelRequireHttpsHelp": "Если этот флажок установлен, сервер будет автоматически перенаправлять все запросы через HTTP на HTTPS. Это не имеет никакого эффекта, если сервер не слушает HTTPS.", "LabelEnableHttpsHelp": "Прослушивается указанный HTTPS-порт. Чтобы это вступило в силу, также необходимо предоставить действительный сертификат.", "ApiKeysCaption": "Список действующих текущих API-ключей", - "TabDVR": "DVR", "SaveChanges": "Сохранить изменения", "LabelRequireHttps": "Требуется HTTPS", "LabelStable": "Стабильная", diff --git a/src/strings/sk.json b/src/strings/sk.json index fe95801700..d8572ca1b2 100644 --- a/src/strings/sk.json +++ b/src/strings/sk.json @@ -19,7 +19,6 @@ "AsManyAsPossible": "Najviac ako je možné", "Ascending": "Vzostupne", "AspectRatio": "Pomer strán", - "AttributeNew": "Nové", "Backdrops": "Pozadia", "BirthDateValue": "Narodený/á: {0}", "BirthLocation": "Miesto narodenia", @@ -30,19 +29,12 @@ "ButtonAddScheduledTaskTrigger": "Pridať spúšťač", "ButtonAddServer": "Pridať server", "ButtonAddUser": "Pridať používateľa", - "ButtonArrowDown": "Dole", "ButtonArrowLeft": "Vľavo", "ButtonArrowRight": "Vpravo", - "ButtonArrowUp": "Hore", "ButtonAudioTracks": "Audio stopy", "ButtonBack": "Späť", "ButtonCancel": "Zrušiť", "ButtonChangeServer": "Zmeniť server", - "ButtonConnect": "Pripojiť", - "ButtonDelete": "Zmazať", - "ButtonDeleteImage": "Zmazať obrázok", - "ButtonDown": "Dole", - "ButtonDownload": "Stiahnuť", "ButtonEdit": "Upraviť", "ButtonEditImages": "Upraviť obrázky", "ButtonEditOtherUserPreferences": "Upraviť používateľský profil, obrázok a osobné preferencie.", @@ -53,7 +45,6 @@ "ButtonManualLogin": "Manuálne prihlásenie", "ButtonMore": "Viac", "ButtonNetwork": "Sieť", - "ButtonNew": "Nové", "ButtonNextTrack": "Nasledujúca stopa", "ButtonOpen": "Otvoriť", "ButtonParentalControl": "Rodičovská kontrola", @@ -75,16 +66,13 @@ "ButtonSelectServer": "Vybrať server", "ButtonSend": "Odoslať", "ButtonSettings": "Nastavenia", - "ButtonShuffle": "Zamiešať", "ButtonShutdown": "Vypnúť", "ButtonSignIn": "Prihlásiť sa", "ButtonSignOut": "Odhlásiť sa", - "ButtonSort": "Zoradiť", "ButtonSubmit": "Potvrdiť", "ButtonSubtitles": "Titulky", "ButtonTrailer": "Trailer", "ButtonUninstall": "Odinštalovať", - "ButtonUp": "Hore", "ButtonWebsite": "Webové stránky", "Categories": "Kategórie", "ChannelAccessHelp": "Zvoľte kanály zdieľané s týmto používateľom. Administrátori budú schopní upraviť všetky kanály použitím správcu metadát.", @@ -170,14 +158,12 @@ "HeaderAddToCollection": "Pridať do kolekcie", "HeaderAddUpdateImage": "Pridať/aktualizovať obrázok", "HeaderAddUser": "Pridať používateľa", - "HeaderAlbums": "Albumy", "HeaderApiKey": "Kľúč API", "HeaderApiKeys": "Kľúče API", "HeaderAudioBooks": "Audio knihy", "HeaderAudioSettings": "Nastavenia zvuku", "HeaderBooks": "Knihy", "HeaderCastAndCrew": "Obsadenie a štáb", - "HeaderChannels": "Kanály", "HeaderChapterImages": "Obrázky kapitol", "HeaderConfigureRemoteAccess": "Nastaviť vzdialený prístup", "HeaderConfirmPluginInstallation": "Potvrdiť inštaláciu zásuvných modulov", @@ -202,7 +188,6 @@ "HeaderForKids": "Pre deti", "HeaderForgotPassword": "Zabudnuté heslo", "HeaderFrequentlyPlayed": "Často hrané", - "HeaderGenres": "Žánre", "HeaderHttpHeaders": "HTTP hlavičky", "HeaderIdentification": "Identifikácia", "HeaderIdentificationCriteriaHelp": "Zadajte aspoň jedno identifikačné kritérium.", @@ -210,7 +195,6 @@ "HeaderImageSettings": "Nastavenia obrázkov", "HeaderInstall": "Inštalovať", "HeaderInstantMix": "Okamžitý mix", - "HeaderItems": "Položky", "HeaderLatestEpisodes": "Najnovšie epizódy", "HeaderLatestMedia": "Najnovšie médiá", "HeaderLatestMovies": "Najnovšie filmy", @@ -227,7 +211,6 @@ "HeaderMediaInfo": "Informácie o médiu", "HeaderMetadataSettings": "Nastavenia metadát", "HeaderMoreLikeThis": "Podobné položky", - "HeaderMovies": "Filmy", "HeaderMusicQuality": "Kvalita hudby", "HeaderMusicVideos": "Hudobné videá", "HeaderMyDevice": "Moje zariadenie", @@ -267,7 +250,6 @@ "HeaderServerSettings": "Nastavenia servera", "HeaderSettings": "Nastavenia", "HeaderSetupLibrary": "Nastavte Vaše knižnice médií", - "HeaderShutdown": "Vypnúť", "HeaderSortBy": "Zoradiť podľa", "HeaderStartNow": "Začať teraz", "HeaderStopRecording": "Zastaviť nahrávanie", @@ -287,7 +269,6 @@ "HeaderVideos": "Videá", "HeaderXmlSettings": "Nastavenia XML", "HeaderYears": "Roky", - "HeadersFolders": "Priečinky", "Help": "Pomoc", "Hide": "Skryť", "Home": "Domov", @@ -408,7 +389,6 @@ "LabelNewPassword": "Nové heslo:", "LabelNewPasswordConfirm": "Potvrdenie nového hesla:", "LabelNewsCategories": "Kategórie správ:", - "LabelNext": "Ďalej", "LabelNotificationEnabled": "Povoliť toto hlásenie", "LabelNumber": "Číslo:", "LabelOptionalNetworkPath": "Zdieľaný sieťový priečinok:", @@ -425,7 +405,6 @@ "LabelPlayDefaultAudioTrack": "Prehrať predvolenú zvukovú stopu bez ohľadu na jazyk", "LabelPreferredDisplayLanguage": "Preferovaný jazyk:", "LabelPreferredSubtitleLanguage": "Preferovaný jazyk titulkov:", - "LabelPrevious": "Predchádzajúce", "LabelProfileAudioCodecs": "Audio kodeky:", "LabelProfileCodecs": "Kodeky:", "LabelProfileContainer": "Kontajner:", @@ -434,7 +413,6 @@ "LabelProtocolInfo": "Info o protokole:", "LabelPublicHttpPort": "Verejný HTTP port:", "LabelPublicHttpsPort": "Verejný HTTPS port:", - "LabelReadHowYouCanContribute": "Zistite, ako môžete prispieť.", "LabelRecordingPath": "Predvolené umiestnenie nahrávok:", "LabelRecordingPathHelp": "Uveďte predvolené umiestnenie pre ukladanie nahrávok. Ak je ponechané prázdne, použije sa priečinok s programovými dátami servera.", "LabelReleaseDate": "Dátum vydania:", @@ -561,7 +539,6 @@ "MessageNoNextUpItems": "Nič nenájdené. Začnite pozerať vaše seriály!", "MessageNoPluginConfiguration": "Tento zásuvný modul nemá žiadne nastavenia.", "NoSubtitleSearchResultsFound": "Žiadne výsledky.", - "NoSubtitles": "Žiadne", "None": "Žiadne", "Normal": "Normálne", "NumLocationsValue": "{0} priečinkov", @@ -753,21 +730,13 @@ "Sunday": "Nedeľa", "TabAccess": "Prístup", "TabAdvanced": "Pokročilé", - "TabAlbums": "Albumy", "TabCatalog": "Katalóg", - "TabChannels": "Kanály", "TabCodecs": "Kodeky", - "TabCollections": "Kolekcie", "TabContainers": "Kontajnery", "TabDashboard": "Dashboard", - "TabDevices": "Zariadenia", "TabEpisodes": "Epizódy", - "TabFavorites": "Obľúbené", - "TabGenres": "Žánre", - "TabGuide": "Sprievodca", "TabLatest": "Najnovšie", "TabLiveTV": "Živá TV", - "TabMovies": "Filmy", "TabMusic": "Hudba", "TabMusicVideos": "Hudobné videá", "TabMyPlugins": "Moje zásuvné moduly", @@ -786,8 +755,6 @@ "TabScheduledTasks": "Naplánované úlohy", "TabSeries": "Seriály", "TabSettings": "Nastavenia", - "TabShows": "Seriály", - "TabSongs": "Skladby", "TabTrailers": "Trailery", "TabUpcoming": "Nadchádzajúce", "TabUsers": "Užívatelia", @@ -858,7 +825,6 @@ "DirectPlaying": "Priame prehrávanie", "Disabled": "Vypnuté", "Display": "Zobrazenie", - "EnableBackdrops": "Pozadia", "EnableDisplayMirroring": "Zrkadlenie obrazu", "Ended": "Ukončený", "FileReadCancelled": "Čítanie súboru bolo zrušené.", @@ -1457,7 +1423,6 @@ "ApiKeysCaption": "Zoznam v súčasnosti povolených API kľúčov", "LabelStable": "Stabilná", "LabelChromecastVersion": "Chromecast verzia", - "TabDVR": "DVR", "LabelRequireHttpsHelp": "Pokiaľ je zaškrtnutý, server bude automaticky presmerovávať všetky HTTP požiadavky cez HTTPS. Toto nastavenie nemá žiadny efekt, pokiaľ server nepočúva na HTTPS.", "LabelRequireHttps": "Vyžadovať HTTPS", "LabelEnableHttpsHelp": "Počúvanie na nastavenom HTTPS porte. K správnemu fungovaniu je nutné nakonfigurovať aj platný certifikát.", diff --git a/src/strings/sl-si.json b/src/strings/sl-si.json index 6524841c3e..22d0d60317 100644 --- a/src/strings/sl-si.json +++ b/src/strings/sl-si.json @@ -1,6 +1,5 @@ { "ButtonAddUser": "Dodaj Uporabnika", - "ButtonDeleteImage": "Izbrisi sliko", "ButtonQuickStartGuide": "Vodnik za hiter zacetek", "ButtonResetPassword": "Ponastavitev gesla", "ButtonSignOut": "Odjava", @@ -22,8 +21,6 @@ "LabelLanguage": "Jezik:", "LabelNewPassword": "Novo geslo:", "LabelNewPasswordConfirm": "Potrditev novega gesla:", - "LabelNext": "Naprej", - "LabelPrevious": "Nazaj", "LabelSelectUsers": "Izberi uporabnike:", "LabelTimeLimitHours": "Časovna omejitev (ure):", "LabelYoureDone": "Koncano!", @@ -44,7 +41,6 @@ "TabAccess": "Dostop", "TabAlbumArtists": "Izvajalci Albumov", "TabCatalog": "Katalog", - "TabGenres": "Zvrsti", "TabLatest": "Zadnje", "TabMusic": "Glasba", "TabMyPlugins": "Moji dodatki", @@ -52,7 +48,6 @@ "TabPassword": "Geslo", "TabProfile": "Profil", "TabProfiles": "Profili", - "TabShows": "Oddaje", "TabUpcoming": "Prihajajoče", "TellUsAboutYourself": "Povej nam nekaj o sebi", "ThisWizardWillGuideYou": "Čarovnik vas bo vodil skozi postopek namestitve. Za začetek, izberite jezik.", @@ -105,7 +100,6 @@ "AsManyAsPossible": "Kolikor je mogoče", "Ascending": "Naraščajoče", "AspectRatio": "Razmerje stranic", - "AttributeNew": "Novo", "Audio": "Zvok", "Auto": "Samodejno", "Backdrop": "Ozadje", @@ -129,18 +123,12 @@ "ButtonAddMediaLibrary": "Dodaj knjižnico predstavnosti", "ButtonAddScheduledTaskTrigger": "Dodaj sprožilec", "ButtonAddServer": "Dodaj strežnik", - "ButtonArrowDown": "Dol", "ButtonArrowLeft": "Levo", "ButtonArrowRight": "Desno", - "ButtonArrowUp": "Gor", "ButtonAudioTracks": "Zvočna sled", "ButtonBack": "Nazaj", "ButtonCancel": "Prekliči", "ButtonChangeServer": "Spremeni strežnik", - "ButtonConnect": "Poveži", - "ButtonDelete": "Izbriši", - "ButtonDown": "Dol", - "ButtonDownload": "Prenesi", "ButtonEdit": "Uredi", "ButtonEditImages": "Uredi slike", "ButtonEditOtherUserPreferences": "Uredi profil tega uporabnika, slike in osebne nastavitve.", @@ -155,7 +143,6 @@ "ButtonManualLogin": "Ročna prijava", "ButtonMore": "Več", "ButtonNetwork": "Omrežje", - "ButtonNew": "Novo", "ButtonNextTrack": "Naslednja skladba", "ButtonOff": "Izključi", "ButtonOk": "Ok", @@ -179,16 +166,13 @@ "ButtonSelectView": "Izberi pogled", "ButtonSend": "Pošlji", "ButtonSettings": "Nastavitve", - "ButtonShuffle": "Premešaj", "ButtonShutdown": "Ugasni", "ButtonSignIn": "Prijava", - "ButtonSort": "Razvrsti", "ButtonStart": "Začetek", "ButtonStop": "Stop", "ButtonSubtitles": "Podnapisi", "ButtonTrailer": "Napovednik", "ButtonUninstall": "Odstrani", - "ButtonUp": "Gor", "ButtonWebsite": "Spletna stran", "CancelRecording": "Prekini snemanje", "CancelSeries": "Prekini serijo", @@ -313,7 +297,6 @@ "HeaderMyDevice": "Moja naprava", "HeaderMusicVideos": "Videospoti", "HeaderMusicQuality": "Kvaliteta glasbe", - "HeaderMovies": "Filmi", "HeaderMoreLikeThis": "Podobno", "HeaderMetadataSettings": "Nastavitve metapodatkov", "HeaderMediaInfo": "Informacije o predstavnosti", @@ -343,7 +326,6 @@ "HeaderIdentification": "Identifikacija", "HeaderHome": "Domov", "HeaderGuideProviders": "Ponudniki TV vodiča", - "HeaderGenres": "Žanri", "HeaderForgotPassword": "Pozabljeno geslo", "HeaderForKids": "Za otroke", "HeaderFetcherSettings": "Nastavitve pridobivanja", @@ -381,7 +363,6 @@ "HeaderCodecProfileHelp": "Profili kodeka določajo omejitve naprave pri predvajanju specifičnih kodekov. Če je omejitev dosežena bo predstavnost prekodirana, tudi če je kodek nastavljen za neposredno predvajanje.", "HeaderCodecProfile": "Profil kodeka", "HeaderChapterImages": "Slike poglavij", - "HeaderChannels": "Kanali", "HeaderChannelAccess": "Dostop kanalov", "HeaderCastCrew": "Igralci in ekipa", "HeaderCastAndCrew": "Igralci in ekipa", @@ -397,7 +378,6 @@ "HeaderApiKey": "API ključ", "HeaderAllowMediaDeletionFrom": "Dovoli brisanje predstavnosti iz", "HeaderAlert": "Alarm", - "HeaderAlbums": "Albumi", "HeaderAdmin": "Administrator", "HeaderAdditionalParts": "Dodatni deli", "HeaderAddUpdateImage": "Dodaj/posodobi sliko", @@ -473,7 +453,6 @@ "EnableColorCodedBackgrounds": "Barvno usklajena ozadja", "EnableCinemaMode": "Kino način", "EnableBackdropsHelp": "Prikaži ozadja na nekaterih straneh med brskanjem knjižnice.", - "EnableBackdrops": "Ozadja", "EasyPasswordHelp": "Vaša enostavna PIN koda je uporabna za dostop brez povezave na podprtih napravah in za enostavno prijavo v lokalnem omrežju.", "Images": "Slike", "Identify": "Identificiraj", @@ -483,7 +462,6 @@ "HideWatchedContentFromLatestMedia": "Skrij ogledane vsebine iz razdelka Najnovejša predstavnost", "Hide": "Skrij", "Help": "Pomoč", - "HeadersFolders": "Mape", "HeaderYears": "Leta", "HeaderXmlSettings": "Xml nastavitve", "HeaderXmlDocumentAttributes": "Xml lastnosti dokumenta", @@ -520,7 +498,6 @@ "HeaderSpecialEpisodeInfo": "Informacije o posebni epizodi", "HeaderSortOrder": "Vrstni red", "HeaderSortBy": "Razvrsti po", - "HeaderShutdown": "Ugasni", "HeaderSetupLibrary": "Nastavite vaše knjižnjice predstavnosti", "HeaderServerSettings": "Nastavitve strežnika", "HeaderSeriesStatus": "Status serije", @@ -730,7 +707,6 @@ "LabelMoviePrefixHelp": "Če naslovi filmov vsebujejo predpono, jo vnesite tukaj da jo lahko strežnik pravilno obdela.", "LabelNewName": "Novo ime:", "Raised": "Dvignjeni", - "TabCollections": "Zbirke", "Small": "Majhno", "SmartSubtitlesHelp": "Podnapisi, ki se ujemajo z želenim jezikom, bodo naloženi, ko je zvok v tujem jeziku.", "SubtitleAppearanceSettingsDisclaimer": "Te nastavitve ne vplivajo na grafične podnapise (PGS, DVD, itd.) ali ASS/SSA podnapise, ki imajo vdelan svoj lasten slog.", @@ -745,7 +721,6 @@ "LabelDropShadow": "Senca:", "LabelHomeScreenSectionValue": "Razdelek domačega zaslona {0}:", "LabelPreferredSubtitleLanguage": "Prednostni jezik podnapisov:", - "NoSubtitles": "Nič", "OnlyImageFormats": "Samo slikovni formati (VOBSUB, PGS, SUB)", "OnlyForcedSubtitles": "Samo prisiljeni", "OptionAllowAudioPlaybackTranscoding": "Dovoli predvajanje zvoka, ki zahteva prekodiranje", @@ -1077,7 +1052,6 @@ "LabelRecordingPath": "Privzeta pot posnetkov:", "LabelRecord": "Snemaj:", "LabelReasonForTranscoding": "Razlog za prekodiranje:", - "LabelReadHowYouCanContribute": "Naučite se, kako lahko prispevate.", "LabelPublicHttpsPortHelp": "Številka javnih vrat ki bodo povezana na lokalna HTTPS vrata.", "LabelPublicHttpsPort": "Številka javnih HTTPS vrat:", "LabelPublicHttpPortHelp": "Številka javnih vrat ki bodo povezana na lokalna HTTP vrata.", @@ -1230,7 +1204,6 @@ "HeaderRemoteAccessSettings": "Nastavitve oddaljenega dostopa", "HeaderOtherItems": "Ostale vsebine", "HeaderNavigation": "Navigacija", - "HeaderItems": "Vsebine", "EnableDecodingColorDepth10Vp9": "Omogoči strojno dekodiranje za 10-bit VP9", "EnableDecodingColorDepth10Hevc": "Omogoči strojno dekodiranje za 10-bit HEVC", "LabelEnableHttpsHelp": "Poslušaj na nastavljenih HTTPS vratih. Za uveljavitev te možnosti mora biti nastavljen tudi veljaven certifikat.", @@ -1331,19 +1304,14 @@ "LabelLineup": "Postava:", "BoxSet": "Komplet", "TabInfo": "Informacije", - "TabGuide": "Vodič", - "TabFavorites": "Priljubljeni", "TabEpisodes": "Epizode", "TabDirectPlay": "Neposredno predvajanje", - "TabDevices": "Naprave", "TabCodecs": "Kodeki", - "TabChannels": "Programi", "OptionRegex": "Regex", "OptionProtocolHls": "HTTP pretakanje v živo", "OptionProfileVideoAudio": "Video zvok", "ThemeSongs": "Glavne pesmi", "TabStreaming": "Pretakanje", - "TabSongs": "Skladbe", "TabSettings": "Nastavitve", "TabServer": "Strežnik", "TabSeries": "Serije", @@ -1360,7 +1328,6 @@ "TabNotifications": "Obvestila", "TabNfoSettings": "Nastavitve NFO", "TabMusicVideos": "Videospoti", - "TabMovies": "Filmi", "OptionForceRemoteSourceTranscoding": "Vsili prekodiranje oddaljenih virov predstavnosti (na primer TV v živo)", "Off": "Izključeno", "Normal": "Normalno", @@ -1429,6 +1396,5 @@ "SubtitleOffset": "Zamik podnapisev", "Subtitles": "Podnapisi", "Sunday": "Nedelja", - "TabAdvanced": "Napredno", - "TabAlbums": "Albumi" + "TabAdvanced": "Napredno" } diff --git a/src/strings/sr.json b/src/strings/sr.json index 810fa44141..c302c0a580 100644 --- a/src/strings/sr.json +++ b/src/strings/sr.json @@ -36,7 +36,6 @@ "ButtonOk": "Ок", "ButtonOff": "Искључи", "ButtonNextTrack": "Следећа нумера", - "ButtonNew": "Ново", "ButtonNetwork": "Мрежа", "ButtonMore": "Више", "ButtonManualLogin": "Ручни логин", @@ -48,19 +47,12 @@ "ButtonFullscreen": "Пун екран", "ButtonForgotPassword": "Заборављена шифра", "ButtonFilter": "Филтер", - "ButtonDownload": "Преузми", - "ButtonDown": "Доле", - "ButtonDeleteImage": "Обриши слику", - "ButtonDelete": "Обриши", - "ButtonConnect": "Повежи се", "ButtonChangeServer": "Промени Сервер", "ButtonCancel": "Откажи", "ButtonBack": "Назад", "ButtonAudioTracks": "Избор језика звука", - "ButtonArrowUp": "Горе", "ButtonArrowRight": "Десно", "ButtonArrowLeft": "Лево", - "ButtonArrowDown": "Доле", "ButtonAddUser": "Додај корисника", "ButtonAddServer": "Додај сервер", "ButtonAddScheduledTaskTrigger": "Додај прекидач", @@ -75,7 +67,6 @@ "BirthLocation": "Место рођења", "BirthDateValue": "Рођен", "Audio": "Звук", - "AttributeNew": "Ново", "AroundTime": "Около", "AnyLanguage": "Било који језик", "AlwaysPlaySubtitles": "Увек налепи титлове", @@ -124,7 +115,6 @@ "CancelSeries": "Откажи серију", "CancelRecording": "Откажи снимање", "ButtonWebsite": "Веб сајт", - "ButtonUp": "Горе", "ButtonUninstall": "Деинсталирај", "ButtonTrailer": "Трејлер", "ButtonSubtitles": "Титлови", @@ -132,11 +122,9 @@ "ButtonSplit": "Подели", "ButtonStop": "Заустави", "ButtonStart": "Почни", - "ButtonSort": "Сортирај", "ButtonSignOut": "Одјавите се", "ButtonSignIn": "Пријавите се", "ButtonShutdown": "Искључи", - "ButtonShuffle": "Промешај", "ButtonSettings": "Подешавања", "ButtonSend": "Пошаљи", "ButtonSelectView": "Изаберите приказ", diff --git a/src/strings/sv.json b/src/strings/sv.json index 23c68d9e84..604179f9f6 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -30,7 +30,6 @@ "Artists": "Artister", "AsManyAsPossible": "Så många som möjligt", "AspectRatio": "Bildförhållande", - "AttributeNew": "Ny", "Audio": "Ljud", "Backdrop": "Fondbild", "Backdrops": "Fondbilder", @@ -49,19 +48,12 @@ "ButtonAddScheduledTaskTrigger": "Lägg till utlösare", "ButtonAddServer": "Lägg till server", "ButtonAddUser": "Ny användare", - "ButtonArrowDown": "Ned", "ButtonArrowLeft": "Vänster", "ButtonArrowRight": "Höger", - "ButtonArrowUp": "Upp", "ButtonAudioTracks": "Ljudspår", "ButtonBack": "Föregående", "ButtonCancel": "Avbryt", "ButtonChangeServer": "Byt server", - "ButtonConnect": "Anslut", - "ButtonDelete": "Ta bort", - "ButtonDeleteImage": "Ta bort bild", - "ButtonDown": "Ner", - "ButtonDownload": "Ladda ned", "ButtonEdit": "Ändra", "ButtonEditImages": "Ändra bilder", "ButtonEditOtherUserPreferences": "Ändra den här användarens profil, bild och personliga inställningar.", @@ -74,7 +66,6 @@ "ButtonManualLogin": "Manuell inloggning", "ButtonMore": "Mer", "ButtonNetwork": "Nätverk", - "ButtonNew": "Nytillkommet", "ButtonNextTrack": "Nästa spår", "ButtonOff": "Av", "ButtonOk": "OK", @@ -100,16 +91,13 @@ "ButtonSelectView": "Välj vy", "ButtonSend": "Skicka", "ButtonSettings": "Inställningar", - "ButtonShuffle": "Blanda", "ButtonShutdown": "Stäng av", "ButtonSignIn": "Logga in", "ButtonSignOut": "Logga ut", - "ButtonSort": "Sortera", "ButtonStop": "Stopp", "ButtonSubmit": "Bekräfta", "ButtonSubtitles": "Undertexter", "ButtonUninstall": "Avinstallera", - "ButtonUp": "Upp", "ButtonWebsite": "Hemsida", "CancelRecording": "Avbryt inspelning", "CancelSeries": "Avbryt serie", @@ -176,7 +164,6 @@ "EditImages": "Ändra bilder", "EditMetadata": "Redigera metadata", "EditSubtitles": "Ändra undertexter", - "EnableBackdrops": "Fondbilder", "EnableBackdropsHelp": "Visar fondbilder i bakgrunden av vissa sidor vid bläddring i biblioteket.", "EnableCinemaMode": "Bioläge", "EnableColorCodedBackgrounds": "Färgkodade bakgrundsbilder", @@ -246,7 +233,6 @@ "HeaderAddUser": "Lägg till användare", "HeaderAdditionalParts": "Ytterligare delar", "HeaderAlbumArtists": "Albumartister", - "HeaderAlbums": "Album", "HeaderAlert": "Varning", "HeaderAllowMediaDeletionFrom": "Tillåt mediaborttagning från", "HeaderApiKey": "API-nyckel", @@ -261,7 +247,6 @@ "HeaderCastAndCrew": "Medverkande", "HeaderCastCrew": "Rollista & besättning", "HeaderChannelAccess": "Kanalåtkomst", - "HeaderChannels": "Kanaler", "HeaderChapterImages": "Kapitelbilder", "HeaderCodecProfile": "Profil för videokodning", "HeaderCodecProfileHelp": "Avkodarprofiler bestämmer begränsningarna hos en enhet när den spelar upp olika kodningstyper. Om en begränsning är aktuell kommer innehållet att kodas om, även om kodningstypen sig är inställd för direkt avspelning.", @@ -302,7 +287,6 @@ "HeaderForKids": "För barn", "HeaderForgotPassword": "Glömt Lösenord", "HeaderFrequentlyPlayed": "Ofta spelade", - "HeaderGenres": "Genrer", "HeaderGuideProviders": "Källor för programguide", "HeaderHttpHeaders": "HTTP headers", "HeaderIdentification": "Identifiering", @@ -312,7 +296,6 @@ "HeaderImageSettings": "Bildinställningar", "HeaderInstall": "Installera", "HeaderInstantMix": "Direktmix", - "HeaderItems": "Objekt", "HeaderKeepRecording": "Fortsätt spela in", "HeaderKeepSeries": "Behåll serie", "HeaderKodiMetadataHelp": "Jellyfin har stöd för NFO-metadatafiler. För att aktivera eller inaktivera NFO-metadata, använd Metadata-fliken för att konfigurera NFO-stöd för dina mediatyper.", @@ -333,7 +316,6 @@ "HeaderMediaInfo": "Medieinformation", "HeaderMetadataSettings": "Metadatainställningar", "HeaderMoreLikeThis": "Mer som denna", - "HeaderMovies": "Filmer", "HeaderMusicQuality": "Musikkvalitet", "HeaderMusicVideos": "Musikvideor", "HeaderMyDevice": "Min enhet", @@ -393,7 +375,6 @@ "HeaderServerSettings": "Serverinställningar", "HeaderSettings": "Inställningar", "HeaderSetupLibrary": "Sätt upp dina mediabibliotek", - "HeaderShutdown": "Stäng av", "HeaderSortBy": "Sortera efter", "HeaderSortOrder": "Sortering", "HeaderSpecialEpisodeInfo": "Information om specialavsnitt", @@ -424,7 +405,6 @@ "HeaderXmlDocumentAttributes": "XML-dokumentattribut", "HeaderXmlSettings": "XML-inställningar", "HeaderYears": "År", - "HeadersFolders": "Mappar", "Help": "Hjälp", "Hide": "Dölj", "HideWatchedContentFromLatestMedia": "Dölj visat innehåll ifrån senaste media", @@ -635,7 +615,6 @@ "LabelNewPassword": "Nytt lösenord:", "LabelNewPasswordConfirm": "Bekräfta nytt lösenord:", "LabelNewsCategories": "Nyhetskategorier:", - "LabelNext": "Nästa", "LabelNotificationEnabled": "Aktivera denna meddelandetyp", "LabelNumber": "Nr:", "LabelNumberOfGuideDays": "Antal dagars tablå att hämta:", @@ -659,7 +638,6 @@ "LabelPreferredDisplayLanguage": "Föredraget visningsspråk:", "LabelPreferredDisplayLanguageHelp": "Att översätta Jellyfin är ett pågående projekt.", "LabelPreferredSubtitleLanguage": "Önskat språk för undertexter:", - "LabelPrevious": "Föregående", "LabelProfileAudioCodecs": "Kodning av ljud:", "LabelProfileCodecs": "Videokodningar:", "LabelProfileCodecsHelp": "Åtskilda med kommatecken, detta kan lämnas tomt för att gälla för alla kodningsformat.", @@ -673,7 +651,6 @@ "LabelPublicHttpPortHelp": "Det publika portnumret som ska mappas till den lokala porten för HTTP.", "LabelPublicHttpsPort": "Publikt portnummer för HTTPS:", "LabelPublicHttpsPortHelp": "Det publika portnumret som ska mappas till den lokala porten för HTTPS.", - "LabelReadHowYouCanContribute": "Se hur du kan hjälpa till.", "LabelReasonForTranscoding": "Orsak för omkodning:", "LabelRecord": "Spela in:", "LabelRecordingPath": "Standard inspelningssökväg:", @@ -866,7 +843,6 @@ "MessageNoNextUpItems": "Hittade inget. Sätt igång och titta!", "MessageNoPluginConfiguration": "Detta tillägg har inga inställningar att konfigurera.", "NoSubtitleSearchResultsFound": "Inga resultat hittades.", - "NoSubtitles": "Inga", "NoSubtitlesHelp": "Undertexter kommer inte visas per standard. Det kan fortfarande sättas på manuellt under uppspelning.", "None": "Inga", "NumLocationsValue": "{0} mappar", @@ -1128,23 +1104,15 @@ "SystemDlnaProfilesHelp": "Systemprofiler är skrivskyddade. Ändringar av en systemprofil resulterar att en ny anpassad profil skapas.", "TabAdvanced": "Avancerat", "TabAlbumArtists": "Albumartister", - "TabAlbums": "Album", "TabCatalog": "Katalog", - "TabChannels": "Kanaler", "TabCodecs": "Kodningsformat", - "TabCollections": "Samlingar", "TabContainers": "Behållare", "TabDashboard": "Kontrollpanel", - "TabDevices": "Enheter", "TabDirectPlay": "Direktuppspelning", "TabEpisodes": "Avsnitt", - "TabFavorites": "Favoriter", - "TabGenres": "Genrer", - "TabGuide": "TV-guide", "TabLatest": "Nytillkommet", "TabLiveTV": "Live-TV", "TabLogs": "Loggfiler", - "TabMovies": "Filmer", "TabMusic": "Musik", "TabMusicVideos": "Musikvideor", "TabMyPlugins": "Mina tillägg", @@ -1164,8 +1132,6 @@ "TabScheduledTasks": "Schemalagda aktiviteter", "TabSeries": "Serie", "TabSettings": "Inställningar", - "TabShows": "Serier", - "TabSongs": "Låtar", "TabStreaming": "Strömning", "TabUpcoming": "Kommande", "TabUsers": "Användare", @@ -1455,7 +1421,6 @@ "LabelLibraryPageSizeHelp": "Sätter en begränsad sidstorlek i bibliotek. Sätt 0 för att avaktivera begränsad sidstorlek.", "ApiKeysCaption": "Lista av aktiva API-nycklar", "DeinterlaceMethodHelp": "Välj metod för borttagning av inflätning vid konvertering av inflätat inehåll.", - "TabDVR": "PVR", "SaveChanges": "Spara ändringar", "LabelRequireHttps": "Kräv HTTPS", "LabelChromecastVersion": "Chromecast-version", diff --git a/src/strings/tr.json b/src/strings/tr.json index 80098c3222..ba47bd7f6b 100644 --- a/src/strings/tr.json +++ b/src/strings/tr.json @@ -4,20 +4,16 @@ "AllLibraries": "Bütün kütüphaneler", "AllowRemoteAccess": "Bu Jellyfin sunucusuna uzaktan bağlanmaya izin ver.", "AllowRemoteAccessHelp": "Eğer işaretlenmemişse, bütün uzak bağlantılar bloke edilicek.", - "AttributeNew": "Yeni", "MessageBrowsePluginCatalog": "Mevcut eklentileri görebilmek için eklenti katologuna göz atın.", "ButtonAddUser": "Kullanıcı Ekle", "ButtonArrowRight": "Sağ", "ButtonBack": "Geri", "ButtonCancel": "İptal", - "ButtonDelete": "Sil", - "ButtonDeleteImage": "Resmi Sil", "ButtonEdit": "Düzenle", "ButtonFilter": "Filtrele", "ButtonHome": "Anasayfa", "ButtonInfo": "Bilgi", "ButtonManualLogin": "Manuel Giriş", - "ButtonNew": "Yeni", "ButtonOk": "Tamam", "ButtonPause": "Duraklat", "ButtonPlay": "Oynat", @@ -31,7 +27,6 @@ "ButtonSettings": "Ayarlar", "ButtonSignIn": "Giriş Yapın", "ButtonSignOut": "Çıkış Yap", - "ButtonSort": "Sırala", "ButtonStop": "Durdur", "ButtonSubtitles": "Altyazılar", "ChannelAccessHelp": "Bu kullanıcıyla paylaşmak üzere kanalları seç. Yöneticiler bütün kanalları metada yöneticisi ile düzenleyebilecekler.", @@ -54,7 +49,6 @@ "Friday": "Cuma", "HeaderActiveRecordings": "Aktif Kayıtlar", "HeaderAddUser": "Kullanıcı Ekle", - "HeaderChannels": "Kanallar", "HeaderCodecProfile": "Codec Profili", "HeaderContinueWatching": "İzlemeye Devam Et", "HeaderCustomDlnaProfiles": "Özel Profiller", @@ -106,9 +100,7 @@ "LabelName": "İsim:", "LabelNewPassword": "Yeni şifre:", "LabelNewPasswordConfirm": "Yeni şifreyi onayla:", - "LabelNext": "Sonraki", "LabelPassword": "Şifre:", - "LabelPrevious": "Önceki", "LabelProfileAudioCodecs": "Ses Codec:", "LabelProfileCodecs": "Codecler:", "LabelProfileVideoCodecs": "Video Codec:", @@ -201,17 +193,11 @@ "TabAccess": "Erişim", "TabAdvanced": "Gelişmiş", "TabAlbumArtists": "Albüm Sanatçıları", - "TabAlbums": "Albümler", "TabCatalog": "Katalog", - "TabChannels": "Kanallar", "TabCodecs": "Codecler", "TabEpisodes": "Bölümler", - "TabFavorites": "Favoriler", - "TabGenres": "Türler", - "TabGuide": "Kılavuz", "TabInfo": "Bilgi", "TabLatest": "En yeni", - "TabMovies": "Filmler", "TabMusic": "Muzik", "TabMusicVideos": "Klipler", "TabMyPlugins": "Eklentilerim", @@ -224,8 +210,6 @@ "TabSeries": "Seriler", "TabServer": "Sunucu", "TabSettings": "Ayarlar", - "TabShows": "Diziler", - "TabSongs": "Şarkılar", "TabTrailers": "Fragmanlar", "TabUpcoming": "Gelecek", "TellUsAboutYourself": "Kendinizden bahsedin", @@ -277,7 +261,6 @@ "AllowMediaConversion": "Medya dönüşümüne izin ver", "AllowHWTranscodingHelp": "Ayarlayıcının anında akışları dönüştürmesine izin verin. Bu, sunucunun gerektirdiği kodlamanın azaltılmasına yardımcı olabilir.", "ColorSpace": "Renk uzayı", - "ButtonConnect": "Bağlan", "ColorTransfer": "Renk transferi", "ButtonPreviousTrack": "Önceki parça", "ButtonProfile": "Profil", @@ -324,20 +307,15 @@ "ButtonGotIt": "Anlaşıldı", "ButtonMore": "Dahası", "ButtonOpen": "Aç", - "ButtonArrowUp": "Yukarı", "ButtonNetwork": "Ağ", - "ButtonDownload": "İndir", "ButtonNextTrack": "Sonraki parça", "ButtonOff": "Kapalı", "ButtonParentalControl": "Ebeveyn Kontrolü", - "ButtonArrowDown": "Aşağı", "ButtonArrowLeft": "Sol", - "ButtonDown": "Aşağı", "ButtonGuide": "Rehber", "ButtonLibraryAccess": "Kütüphane erişimi", "ButtonScanAllLibraries": "Tüm Kütüphaneleri Tara", "ButtonSelectView": "Görünüm seç", - "ButtonShuffle": "Karıştır", "ButtonShutdown": "Kapat", "ChannelNameOnly": "Yalnızca {0} kanalı", "ConfirmDeleteItems": "Bu öğeleri silmek, onları hem dosya sisteminden hem de medya kitaplığınızdan siler. Devam etmek istediğinize emin misiniz?", @@ -349,7 +327,6 @@ "Display": "Görüntüle", "DisplayInMyMedia": "Ana ekranda görüntüleme", "DisplayInOtherHomeScreenSections": "En son medya gibi ana ekran bölümlerinde görüntüleyin ve izlemeye devam edin", - "EnableBackdrops": "Arka planında", "BurnSubtitlesHelp": "Sunucunun video işlendiği esnada, altyazının görüntüye gömülmesini sağlar. Performansı çok düşürür, zorunda kalmadıkça bu özelliği seçmeyin. Görüntü tabanlı biçimleri (VOBSUB, PGS, SUB / IDX, vb.) Ve bazı ASS / SSA altyazıların görüntüye gömülmesi için Otomatik'i seçin.", "ConfirmDeleteItem": "Bu öğeyi silmek, onu hem dosya sisteminden hem de medya kütüphanenizden siler. Devam etmek istediğinize emin misiniz?", "ValueSpecialEpisodeName": "Özel - {0}", @@ -389,7 +366,6 @@ "CancelRecording": "Kayıttan Vazgeç", "CancelSeries": "Dizileri iptal et", "ButtonUninstall": "Kaldır", - "ButtonUp": "Yukarı", "ButtonWebsite": "Website", "Categories": "Kategoriler", "DrmChannelsNotImported": "DRM'li kanallar içe aktarılmayacak.", @@ -423,7 +399,6 @@ "EnableCinemaMode": "Sinema Modu", "EnableColorCodedBackgrounds": "Renk kodlu arka planlar", "HeaderGuideProviders": "TV Rehberi Veri Sağlayıcıları", - "HeaderGenres": "Türler", "HeaderForgotPassword": "Parolanızı mı unuttunuz", "HeaderForKids": "Çocuklar için", "HeaderFetcherSettings": "Alıcı Ayarları", @@ -479,7 +454,6 @@ "HeaderApiKey": "API Anahtarı", "HeaderAllowMediaDeletionFrom": "Medyadan Silinmeye İzin Ver", "HeaderAlert": "Alarm", - "HeaderAlbums": "Albümler", "HeaderAdmin": "Yönetici", "HeaderAdditionalParts": "İlave parçalar", "HeaderAddUpdateImage": "Resim Ekle / Güncelle", @@ -575,7 +549,6 @@ "HeaderMyMedia": "Benim Medyam", "HeaderMyDevice": "Benim Cihazım", "HeaderMusicQuality": "Müzik Kalitesi", - "HeaderMovies": "Filmler", "HeaderMoreLikeThis": "Buna Benzer Daha Fazla", "HeaderMetadataSettings": "Meta Verisi Ayarları", "HeaderMediaInfo": "Medya Bilgisi", @@ -590,7 +563,6 @@ "HeaderLatestMusic": "Son Müzik", "HeaderKeepSeries": "Seriyi Sakla", "HeaderKeepRecording": "Kaydı Sakla", - "HeaderItems": "Öğeler", "HeaderInstall": "Yükle", "HeaderImageOptions": "Resim Seçenekleri", "HeaderIdentifyItemHelp": "Bir veya daha fazla arama kriteri giriniz. Faha fazla arama sonucu için kriter kaldırın.", @@ -645,7 +617,6 @@ "Identify": "Tanımla", "Horizontal": "Yatay", "Help": "Yardım", - "HeadersFolders": "Klasörler", "HeaderYears": "Yıl", "HeaderXmlSettings": "Xml Ayarları", "HeaderXmlDocumentAttributes": "Xml Döküman Öznitelikleri", @@ -665,7 +636,6 @@ "HeaderSpecialEpisodeInfo": "Özel Bölüm Bilgisi", "HeaderSortOrder": "Sıralama Düzeni", "HeaderSortBy": "Sırala", - "HeaderShutdown": "Kapat", "HeaderSettings": "Ayarlar", "LabelLogs": "Günlük:", "HeaderSelectMetadataPathHelp": "İçinde meta veri depolamak istediğiniz yola göz atın veya bu yolu girin. Klasörün yazılabilir olması gerekir.", diff --git a/src/strings/uk.json b/src/strings/uk.json index a1100e1e69..329f0ca95c 100644 --- a/src/strings/uk.json +++ b/src/strings/uk.json @@ -4,7 +4,6 @@ "ButtonAddUser": "Додати користувача", "ButtonCancel": "Скасувати", "ButtonFilter": "Фільтр", - "ButtonNew": "Нове", "ButtonRename": "Перейменувати", "ButtonResetPassword": "Скинути пароль", "ButtonSignOut": "Вийти", @@ -15,14 +14,12 @@ "FolderTypeMovies": "Фільми", "FolderTypeMusic": "Музика", "FolderTypeTvShows": "ТБ", - "HeaderAlbums": "Альбоми", "HeaderBooks": "Книги", "HeaderDeleteDevice": "Видалить пристрій", "HeaderLatestEpisodes": "Нещодавно переглянуті серії", "HeaderLatestMedia": "Нещодавно переглянуті", "HeaderLatestMovies": "Нещодавні фільми", "HeaderLatestMusic": "Остання музика", - "HeaderMovies": "Фільми", "HeaderSeasons": "Сезони", "HeaderSeries": "Series", "HeaderSettings": "Налаштування", @@ -35,9 +32,7 @@ "LabelDeathDate": "Дата смерті:", "LabelLanguage": "Мова:", "LabelNewPassword": "Новий пароль:", - "LabelNext": "Вперед", "LabelPath": "Шлях:", - "LabelPrevious": "Назад", "Like": "Подобається", "MediaInfoAspectRatio": "Співвідношення сторін", "MediaInfoChannels": "Канали", @@ -62,10 +57,7 @@ "ParentalRating": "Parental Rating", "Save": "Зберігти", "Settings": "Налаштування", - "TabCollections": "Колекції", "TabEpisodes": "Епізоди", - "TabGenres": "Жанри", - "TabMovies": "Фільми", "TabNetworks": "Мережі", "TabNotifications": "Повідомлення", "TabPassword": "Пароль", @@ -143,7 +135,6 @@ "Auto": "Автоматично", "AuthProviderHelp": "Оберіть сервіс аутентифікації, який буде використаний для автентифікації пароля даного користувача.", "Audio": "Аудіо", - "AttributeNew": "Новий", "AspectRatio": "Співвідношення сторін", "AskAdminToCreateLibrary": "Попросіть адміністратора створити медіатеку.", "Ascending": "У порядку зростання", @@ -191,7 +182,6 @@ "CancelSeries": "Скасувати серіал", "CancelRecording": "Скасувати запис", "ButtonWebsite": "Веб-сайт", - "ButtonUp": "Вгору", "ButtonUninstall": "Видалити", "ButtonTrailer": "Трейлер", "ButtonTogglePlaylist": "Плейлист", @@ -200,10 +190,8 @@ "ButtonSplit": "Розділити", "ButtonStop": "Зупинити", "ButtonStart": "Почати", - "ButtonSort": "Сортувати", "ButtonSignIn": "Вхід", "ButtonShutdown": "Завершити роботу", - "ButtonShuffle": "Перемішати", "ButtonSettings": "Налаштування", "ButtonSend": "Надіслати", "ButtonSelectView": "Вибрати вигляд", @@ -240,18 +228,11 @@ "ButtonEditOtherUserPreferences": "Редагувати профіль, зображення та особисті налаштування даного користувача.", "ButtonEditImages": "Редагувати зображення", "ButtonEdit": "Редагувати", - "ButtonDownload": "Завантажити", - "ButtonDown": "Вниз", - "ButtonDeleteImage": "Видалити зображення", - "ButtonDelete": "Видалити", - "ButtonConnect": "Підключитись", "ButtonChangeServer": "Змінити сервер", "ButtonBack": "Назад", "ButtonAudioTracks": "Аудіозаписи", - "ButtonArrowUp": "Вниз", "ButtonArrowRight": "Вправо", "ButtonArrowLeft": "Вліво", - "ButtonArrowDown": "Вниз", "ButtonAddServer": "Додати сервер", "ButtonAddScheduledTaskTrigger": "Додати тригер", "ButtonAddMediaLibrary": "Додати медіатеку", diff --git a/src/strings/vi.json b/src/strings/vi.json index 431644be16..438dfe4632 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -4,13 +4,10 @@ "MessageBrowsePluginCatalog": "Duyệt qua các danh mục plugin của chúng tôi để xem các plugin có sẵn.", "ButtonAddUser": "Thêm người dùng", "ButtonCancel": "Thoát", - "ButtonDeleteImage": "Xóa hình ảnh", - "ButtonNew": "Mới", "ButtonRemove": "Gỡ bỏ", "ButtonResetPassword": "Reset mật khẩu", "ButtonSelectDirectory": "Lựa chọn trực tiếp", "ButtonSignOut": "Sign out", - "ButtonSort": "Phân loại", "Delete": "Xóa", "DeleteImage": "Xóa hình ảnh", "DeleteImageConfirmation": "Bạn có chắc muốn xóa hình ảnh này?", @@ -41,8 +38,6 @@ "LabelName": "Tên:", "LabelNewPassword": "Mật khẩu mới:", "LabelNewPasswordConfirm": "Xác nhận mật khẩu mới:", - "LabelNext": "Tiếp theo", - "LabelPrevious": "Trước", "LabelSaveLocalMetadata": "Lưu các ảnh nghệ thuật và metadata vào trong các thư mục media", "LabelSaveLocalMetadataHelp": "Lưu các ảnh nghệ thuật và metadata vào trong các thư mục media, sẽ đưa chúng vào một nơi bạn có thể chỉnh sửa dễ dàng hơn.", "LabelTime": "Thời gian:", @@ -89,12 +84,9 @@ "SettingsSaved": "Lưu các cài đặt.", "Sunday": "Chủ Nhật", "TabAlbumArtists": "Các Album nghệ sỹ", - "TabAlbums": "Các Album", "TabCatalog": "Danh mục", "TabEpisodes": "Các tập phim", - "TabGenres": "Các thể loại", "TabLatest": "Mới nhất", - "TabMovies": "Các phim", "TabMusicVideos": "Các video âm nhạc", "TabMyPlugins": "Các plugin của tôi", "TabNetworks": "Các mạng", @@ -102,7 +94,6 @@ "TabProfile": "Hồ sơ", "TabProfiles": "Hồ sơ", "TabServer": "Máy chủ", - "TabSongs": "Các ca khúc", "TabUpcoming": "Sắp diễn ra", "TellUsAboutYourself": "Nói cho chúng tôi biết đôi điều về Bạn", "ThisWizardWillGuideYou": "Thủ thuật này sẽ hướng dẫn quá trình cài đặt cho bạn. Để bắt đầu, vui lòng lựa chọn ngôn ngữ bạn ưa thích.", @@ -141,17 +132,11 @@ "ButtonEditOtherUserPreferences": "Chỉnh sửa thông tin, hình ảnh và sở thích cá nhân.", "ButtonEditImages": "Sửa hình ảnh", "ButtonEdit": "Sửa", - "ButtonDownload": "Tải", - "ButtonDown": "Xuống", - "ButtonDelete": "Xoá", - "ButtonConnect": "Kết nối", "ButtonChangeServer": "Đổi máy chủ", "ButtonBack": "Lùi", "ButtonAudioTracks": "Track âm thanh", - "ButtonArrowUp": "Lên", "ButtonArrowRight": "Phải", "ButtonArrowLeft": "Trái", - "ButtonArrowDown": "Xuống", "ButtonAddServer": "Thêm máy chủ", "ButtonAddScheduledTaskTrigger": "Thêm kích hoạt", "ButtonAddMediaLibrary": "Thêm thư viện Media", @@ -170,7 +155,6 @@ "Auto": "Tự động", "AuthProviderHelp": "Chọn Nhà cung cấp xác thực sẽ được sử dụng để xác thực mật khẩu người dùng này.", "Audio": "Âm thanh", - "AttributeNew": "Tạo mới", "AspectRatio": "Tỷ lệ khung hình", "AskAdminToCreateLibrary": "Yêu cầu quản trị viên tạo thư viện.", "Ascending": "Tăng dần", @@ -208,11 +192,9 @@ "ButtonSelectServer": "Chọn máy chủ", "ButtonScanAllLibraries": "Quét tất cả các thư viện", "ButtonOk": "Đồng Ý", - "ButtonShuffle": "Xáo trộn", "Categories": "Phân loại", "CancelRecording": "Ngưng ghi hình", "ButtonWebsite": "Trang web", - "ButtonUp": "Lên", "ButtonUninstall": "Gỡ cài đặt", "ButtonTrailer": "Tóm tắt", "ButtonSubtitles": "Phụ đề", @@ -297,7 +279,6 @@ "DoNotRecord": "Không ghi lại", "EnableCinemaMode": "Chế độ rạp phim", "EnableBackdropsHelp": "Hiển thị phông nền phía sau một số trang khi xem thư viện.", - "EnableBackdrops": "Phông nền", "EditSubtitles": "Chỉnh sửa phụ đề", "EditMetadata": "Chỉnh sửa thông tin", "EditImages": "Chỉnh sửa hình ảnh", @@ -321,7 +302,6 @@ "HeaderConfigureRemoteAccess": "Thiết Lập Truy Cập Từ Xa", "HeaderCodecProfile": "Bộ Giải Mã", "HeaderChapterImages": "Hình Ảnh Phân Đoạn", - "HeaderChannels": "Kênh", "HeaderChannelAccess": "Quyền Truy Cập Kênh", "HeaderCastCrew": "Diễn Viên & Ê-kíp", "HeaderCastAndCrew": "Diễn Viên & Ê-kíp", @@ -339,7 +319,6 @@ "HeaderApiKey": "API Key", "HeaderAllowMediaDeletionFrom": "Cho Phép Xoá Nội Dung", "HeaderAlert": "Thông Báo", - "HeaderAlbums": "Albums", "HeaderAlbumArtists": "Nghệ Sĩ Album", "HeaderAdmin": "Quản Trị", "HeaderAdditionalParts": "Phần Bổ Sung", @@ -443,7 +422,6 @@ "HeaderMyDevice": "Thiết Bị Của Tôi", "HeaderMusicVideos": "Video Âm Nhạc", "HeaderMusicQuality": "Chất Lượng Âm Nhạc", - "HeaderMovies": "Phim", "HeaderMoreLikeThis": "Nội Dung Tương Tự", "HeaderMetadataSettings": "Cài Đặt Dữ Liệu Bổ Trợ", "HeaderMediaInfo": "Thông Tin Nội Dung", @@ -464,7 +442,6 @@ "HeaderKodiMetadataHelp": "Để bật hoặc tắt dữ liệu từ NFO, hãy chỉnh sửa thư viện trong phần cài đặt thư viện của Jellyfin và điều chỉnh phần lưu trữ dữ liệu bổ trợ.", "HeaderKeepSeries": "Lưu Series", "HeaderKeepRecording": "Tiếp Tục Ghi Âm/Ghi Hình", - "HeaderItems": "Mục", "HeaderInstantMix": "Trộn Lẫn Nhanh", "HeaderInstall": "Cài Đặt", "HeaderImageSettings": "Thiết Lập Hình Ảnh", @@ -476,7 +453,6 @@ "HeaderHttpHeaders": "HTTP Headers", "HeaderHome": "Trang Chủ", "HeaderGuideProviders": "Nhà Cung Cấp Lịch Phát Sóng TV", - "HeaderGenres": "Thể Loại", "HeaderForgotPassword": "Quên Mật Khẩu", "HeaderForKids": "Dành Cho Trẻ Em", "HeaderFetcherSettings": "Cài Đặt Chương Trình Tải Xuống", @@ -554,7 +530,6 @@ "HeaderStopRecording": "Ngừng Ghi Hình/Ghi Âm", "HeaderSpecialFeatures": "Những Phần Đặc Biệt Nổi Bật", "HeaderSpecialEpisodeInfo": "Thông Tin Tập Đặc Biệt", - "HeaderShutdown": "Tắt Máy Chủ", "LabelCustomDeviceDisplayNameHelp": "Cung cấp một tên hiển thị riêng hoặc bỏ trống để sử dụng tên có sẵn của thiết bị.", "LabelCustomDeviceDisplayName": "Tên hiển thị:", "LabelCustomCssHelp": "Áp dụng tuỳ chỉnh riêng của bạn vào giao diện trang web.", @@ -630,7 +605,6 @@ "HideWatchedContentFromLatestMedia": "Ẩn những nội dung đã xem khỏi phần nội dung mới nhất", "Hide": "Ẩn", "Help": "Trợ Giúp", - "HeadersFolders": "Thư Mục", "HeaderYears": "Năm", "HeaderXmlSettings": "Cài Đặt XML", "HeaderXmlDocumentAttributes": "Những Thuộc Tính Tài Liệu XML", diff --git a/src/strings/zh-cn.json b/src/strings/zh-cn.json index ec3af3ea13..9de331b018 100644 --- a/src/strings/zh-cn.json +++ b/src/strings/zh-cn.json @@ -32,7 +32,6 @@ "Artists": "艺术家", "AsManyAsPossible": "尽可能多", "Ascending": "升序", - "AttributeNew": "新增", "Audio": "音频", "Auto": "自动", "Backdrop": "背景", @@ -51,19 +50,12 @@ "ButtonAddScheduledTaskTrigger": "添加触发器", "ButtonAddServer": "添加服务器", "ButtonAddUser": "添加用户", - "ButtonArrowDown": "下", "ButtonArrowLeft": "左", "ButtonArrowRight": "右", - "ButtonArrowUp": "上", "ButtonAudioTracks": "音轨", "ButtonBack": "返回", "ButtonCancel": "取消", "ButtonChangeServer": "更改服务器", - "ButtonConnect": "连接", - "ButtonDelete": "删除", - "ButtonDeleteImage": "删除图片", - "ButtonDown": "下", - "ButtonDownload": "下载", "ButtonEdit": "编辑", "ButtonEditImages": "修改图片", "ButtonEditOtherUserPreferences": "编辑这个用户的用户配置,图片和个人参数。", @@ -78,7 +70,6 @@ "ButtonManualLogin": "手动登录", "ButtonMore": "更多", "ButtonNetwork": "网络", - "ButtonNew": "新增", "ButtonNextTrack": "下一音轨", "ButtonOff": "关", "ButtonOk": "确定", @@ -104,18 +95,15 @@ "ButtonSelectView": "选择视图", "ButtonSend": "发送", "ButtonSettings": "设置", - "ButtonShuffle": "随机播放", "ButtonShutdown": "关机", "ButtonSignIn": "登录", "ButtonSignOut": "退出", - "ButtonSort": "排序", "ButtonStart": "开始", "ButtonStop": "停止", "ButtonSubmit": "提交", "ButtonSubtitles": "字幕", "ButtonTrailer": "预告片", "ButtonUninstall": "卸载", - "ButtonUp": "上", "ButtonWebsite": "网站", "CancelRecording": "取消录制", "CancelSeries": "取消系列", @@ -177,7 +165,6 @@ "EditImages": "修改图片", "EditMetadata": "编辑元数据", "EditSubtitles": "修改字幕", - "EnableBackdrops": "背景图", "EnableBackdropsHelp": "当浏览媒体库时背景图将作为一些页面的背景显示。", "EnableCinemaMode": "影院模式", "EnableDisplayMirroring": "显示镜像", @@ -251,7 +238,6 @@ "HeaderAdditionalParts": "附加部分", "HeaderAdmin": "管理", "HeaderAlbumArtists": "专辑作家", - "HeaderAlbums": "专辑", "HeaderAlert": "警报", "HeaderAllowMediaDeletionFrom": "允许从中删除媒体", "HeaderApiKey": "API 密钥", @@ -265,7 +251,6 @@ "HeaderCastAndCrew": "演员表", "HeaderCastCrew": "演职人员", "HeaderChannelAccess": "频道访问", - "HeaderChannels": "频道", "HeaderChapterImages": "剧集图片", "HeaderCodecProfile": "编解码器配置", "HeaderCodecProfileHelp": "编解码器的配置文件标明了设备播放特定编码时的限制。如果在限制之内则媒体将被转码,否则编解码器将被配置为直接播放。", @@ -307,7 +292,6 @@ "HeaderForKids": "给儿童", "HeaderForgotPassword": "忘记密码", "HeaderFrequentlyPlayed": "多次播放", - "HeaderGenres": "风格", "HeaderGuideProviders": "电视指南数据提供方", "HeaderHttpHeaders": "HTTP 头部", "HeaderIdentification": "身份识别", @@ -318,7 +302,6 @@ "HeaderImageSettings": "图片设置", "HeaderInstall": "安装", "HeaderInstantMix": "速成合辑", - "HeaderItems": "项目", "HeaderKodiMetadataHelp": "要启用或禁用 NFO 元数据, 请编辑库, 然后找到“元数据储户”部分。", "HeaderLatestEpisodes": "最新剧集", "HeaderLatestMedia": "最新媒体", @@ -339,7 +322,6 @@ "HeaderMediaInfo": "媒体信息", "HeaderMetadataSettings": "元数据设置", "HeaderMoreLikeThis": "更多类似的", - "HeaderMovies": "电影", "HeaderMusicVideos": "音乐视频", "HeaderMyDevice": "我的设备", "HeaderMyMedia": "我的媒体", @@ -395,7 +377,6 @@ "HeaderServerSettings": "服务器设置", "HeaderSettings": "设置", "HeaderSetupLibrary": "设置你的媒体库", - "HeaderShutdown": "关机", "HeaderSortBy": "排序方式", "HeaderSortOrder": "排序顺序", "HeaderSpecialEpisodeInfo": "特别剧集信息", @@ -428,7 +409,6 @@ "HeaderXmlDocumentAttributes": "XML文档属性", "HeaderXmlSettings": "XML设置", "HeaderYears": "年份", - "HeadersFolders": "文件夹", "Help": "帮助", "Hide": "隐藏", "HideWatchedContentFromLatestMedia": "从最新媒体中隐藏已观看的内容", @@ -644,7 +624,6 @@ "LabelNewPassword": "新密码:", "LabelNewPasswordConfirm": "新密码确认:", "LabelNewsCategories": "新分类:", - "LabelNext": "下一个", "LabelNotificationEnabled": "启用此通知", "LabelNumber": "编号:", "LabelNumberOfGuideDays": "下载几天的节目指南:", @@ -671,7 +650,6 @@ "LabelPreferredDisplayLanguage": "首选显示语言:", "LabelPreferredDisplayLanguageHelp": "Jellyfin的翻译工作是一个不断推进的工程项目。", "LabelPreferredSubtitleLanguage": "字幕语言偏好:", - "LabelPrevious": "上一个", "LabelProfileAudioCodecs": "音频编解码器:", "LabelProfileCodecs": "编解码器:", "LabelProfileCodecsHelp": "以逗号分隔。留空则适用于所有编解码器。", @@ -685,7 +663,6 @@ "LabelPublicHttpPortHelp": "映射到本地 HTTP 端口的公开端口号。", "LabelPublicHttpsPort": "公开 HTTPS 端口号:", "LabelPublicHttpsPortHelp": "映射到本地 HTTPS 端口的公开端口号。", - "LabelReadHowYouCanContribute": "了解如何做出贡献。", "LabelReasonForTranscoding": "转码原因:", "LabelRecord": "录制:", "LabelRecordingPath": "默认录制路径:", @@ -888,7 +865,6 @@ "MessageNoNextUpItems": "没有发现。开始看你的节目!", "MessageNoPluginConfiguration": "此插件没有配置选项。", "NoSubtitleSearchResultsFound": "未找到结果。", - "NoSubtitles": "无字幕", "NoSubtitlesHelp": "字幕将默认不被加载,但你仍然可以在播放时手动打开字幕。", "None": "无", "Normal": "普通", @@ -1156,24 +1132,16 @@ "TabAccess": "访问", "TabAdvanced": "高级", "TabAlbumArtists": "专辑艺术家", - "TabAlbums": "专辑", "TabCatalog": "目录", - "TabChannels": "频道", "TabCodecs": "编解码器", - "TabCollections": "收藏", "TabContainers": "媒体载体", "TabDashboard": "控制台", - "TabDevices": "设备", "TabDirectPlay": "直接播放", "TabEpisodes": "剧集", - "TabFavorites": "我的最爱", - "TabGenres": "风格", - "TabGuide": "指南", "TabInfo": "信息", "TabLatest": "最新", "TabLiveTV": "电视直播", "TabLogs": "日志", - "TabMovies": "电影", "TabMusic": "音乐", "TabMusicVideos": "音乐视频", "TabMyPlugins": "我的插件", @@ -1194,8 +1162,6 @@ "TabSeries": "电视剧", "TabServer": "服务器", "TabSettings": "设置", - "TabShows": "节目", - "TabSongs": "歌曲", "TabStreaming": "流媒体传输", "TabTrailers": "预告片", "TabUpcoming": "即将发布", @@ -1458,7 +1424,6 @@ "HeaderRemoteAccessSettings": "远程访问设置", "HeaderHttpsSettings": "HTTPS 设置", "ApiKeysCaption": "当前启用的 API 密钥", - "TabDVR": "DVR", "SaveChanges": "保存更改", "LabelRequireHttpsHelp": "开启后服务器将自动将所有 HTTP 请求重定向到 HTTPS。如果服务器没有启用 HTTPS 则不生效。", "LabelRequireHttps": "强制 HTTPS", diff --git a/src/strings/zh-hk.json b/src/strings/zh-hk.json index b8f48d474c..454bbea0c2 100644 --- a/src/strings/zh-hk.json +++ b/src/strings/zh-hk.json @@ -3,12 +3,9 @@ "ButtonAddScheduledTaskTrigger": "新增觸發點", "ButtonAddUser": "添加用戶", "ButtonCancel": "取消", - "ButtonDelete": "删除", - "ButtonDeleteImage": "刪除圖像", "ButtonEdit": "編輯", "ButtonFilter": "過濾", "ButtonManualLogin": "手動登入", - "ButtonNew": "新增", "ButtonOk": "確定", "ButtonPlay": "播放", "ButtonQuickStartGuide": "快速入門指南", @@ -21,7 +18,6 @@ "ButtonSelectDirectory": "選擇目錄", "ButtonSignIn": "登入", "ButtonSignOut": "登出", - "ButtonSort": "排序", "ButtonSubmit": "提交", "ButtonSubtitles": "字幕", "ChannelAccessHelp": "選擇此用戶共享頻道。管理員將能夠使用資料管理器而編輯所有文件夾。", @@ -47,7 +43,6 @@ "HeaderBooks": "書籍", "HeaderBranding": "界面", "HeaderCastCrew": "演員陣容", - "HeaderChannels": "頻道", "HeaderCustomDlnaProfiles": "自定配置", "HeaderDeviceAccess": "允許裝置通行", "HeaderDevices": "裝置", @@ -141,19 +136,16 @@ "LabelName": "名稱:", "LabelNewPassword": "新密碼:", "LabelNewPasswordConfirm": "新密碼確認:", - "LabelNext": "下一個", "LabelNumberOfGuideDays": "下載電視指南日數", "LabelNumberOfGuideDaysHelp": "下載更多電視指南資料會提供更好時間表查看能力,但將需要更長的下載時間。自動基於頻道數目來選擇。", "LabelPassword": "密碼:", "LabelPath": "路徑:", "LabelPreferredDisplayLanguage": "首選語言:", "LabelPreferredDisplayLanguageHelp": "翻譯 Jellyfin 是一個進行中的項目。", - "LabelPrevious": "前一個", "LabelPublicHttpPort": "公共 http 連接埠號碼:", "LabelPublicHttpPortHelp": "公共連接埠號碼應映射到本地 http 連接埠。", "LabelPublicHttpsPort": "公共 https 連接埠號碼:", "LabelPublicHttpsPortHelp": "公共連接埠號碼應映射到本地 https 連接埠。", - "LabelReadHowYouCanContribute": "了解如何作出貢獻。", "LabelSaveLocalMetadata": "儲存媒體圖片和資料屬性到媒體所屬的文件夾", "LabelSaveLocalMetadataHelp": "直接儲存媒體圖片和資料到媒體文件夾,讓編輯工作更容易。", "LabelSelectUsers": "選擇用戶:", @@ -276,19 +268,11 @@ "TabAccess": "可以通行", "TabAdvanced": "進階", "TabAlbumArtists": "唱片歌手", - "TabAlbums": "專輯", "TabCatalog": "目錄", - "TabChannels": "頻道", - "TabCollections": "藏品", "TabDashboard": "狀態", - "TabDevices": "裝置", "TabEpisodes": "劇集", - "TabFavorites": "我的最受", - "TabGenres": "風格", - "TabGuide": "指南", "TabInfo": "資訊", "TabLatest": "最新", - "TabMovies": "電影", "TabMusic": "音樂", "TabMusicVideos": "MV", "TabMyPlugins": "我的插件", @@ -302,8 +286,6 @@ "TabSeries": "電視劇", "TabServer": "伺服器", "TabSettings": "設定", - "TabShows": "節目", - "TabSongs": "歌曲", "TabTrailers": "預告", "TabUpcoming": "即將發佈", "TabUsers": "用戶", @@ -357,7 +339,6 @@ "Albums": "專輯", "Absolute": "絕對", "AuthProviderHelp": "選擇用於驗證該用戶密碼的身份驗證提供程序。", - "AttributeNew": "新", "AspectRatio": "長寬比", "AskAdminToCreateLibrary": "要求管理員創建一個庫。", "Ascending": "上升", @@ -449,15 +430,11 @@ "ButtonForgotPassword": "忘記密碼", "ButtonEditOtherUserPreferences": "更改用戶個人檔案,圖片及個人偏好。", "ButtonEditImages": "更改圖片", - "ButtonDownload": "下載", - "ButtonConnect": "連接", "ButtonChangeServer": "更換伺服器", "ButtonBack": "返回", "ButtonAudioTracks": "音軌", - "ButtonArrowUp": "箭咀上", "ButtonArrowRight": "箭咀右", "ButtonArrowLeft": "箭咀左", - "ButtonArrowDown": "箭咀下", "ButtonAddServer": "新增伺服器", "ButtonAddMediaLibrary": "新增媒體櫃", "ButtonAddImage": "新增圖片", @@ -470,13 +447,11 @@ "Backdrop": "背景", "AlwaysPlaySubtitles": "經常播放", "Display": "顯示", - "EnableBackdrops": "背景", "EditImages": "更改圖片", "DownloadsValue": "下載數目 {0}", "Download": "下載", "DisplayInMyMedia": "在主頁顯示", "ButtonSyncPlay": "SyncPlay", - "ButtonDown": "向下", "BurnSubtitlesHelp": "確定若服務器對視頻進行轉碼時是否嵌入字幕。 關閉這功能將使用更少時間。 選擇'自動'可嵌入基於圖像的格式字幕(VOBSUB,PGS,SUB,IDX等)和某些ASS或SSA字幕。", "MessageBrowsePluginCatalog": "瀏覽我們的插件目錄以查看可用的插件。", "BoxRear": "盒裝(背面)", @@ -490,8 +465,6 @@ "ColorPrimaries": "主色調", "CinemaModeConfigurationHelp": "影院模式可在播放主影片前加入預告片及自定引言片段,帶來戲院式體驗。", "ChangingMetadataImageSettingsNewContent": "任何資料變更只適用於新加入到媒體庫的內容。如要更改舊有媒體的內容,請手動刷新資料。", - "ButtonUp": "上", - "ButtonShuffle": "隨機播放", "ButtonSelectView": "選擇介面", "ButtonOff": "關閉", "ButtonLibraryAccess": "媒體庫存取", diff --git a/src/strings/zh-tw.json b/src/strings/zh-tw.json index c937cdb161..f9f9bce7a7 100644 --- a/src/strings/zh-tw.json +++ b/src/strings/zh-tw.json @@ -7,8 +7,6 @@ "ButtonAddServer": "新增伺服器", "ButtonAddUser": "新增使用者", "ButtonCancel": "取消", - "ButtonDelete": "刪除", - "ButtonDeleteImage": "刪除圖像", "ButtonEdit": "編輯", "ButtonEditImages": "編輯圖片", "ButtonFilter": "過濾", @@ -16,7 +14,6 @@ "ButtonGotIt": "我知道了", "ButtonGuide": "節目表", "ButtonHome": "首頁", - "ButtonNew": "建立", "ButtonOk": "確定", "ButtonPlay": "播放", "ButtonQuickStartGuide": "快速入門指南", @@ -28,7 +25,6 @@ "ButtonSelectServer": "選擇伺服器", "ButtonSignIn": "登入", "ButtonSignOut": "登出", - "ButtonSort": "排序", "ConfirmDeleteItem": "刪除此項目時,也會一併從檔案系統及媒體櫃中刪除。確定要刪除嗎?", "ConfirmDeletion": "確定刪除", "Continuing": "繼續", @@ -58,7 +54,6 @@ "HeaderAdditionalParts": "附加部份", "HeaderAdmin": "管理", "HeaderCastCrew": "拍攝人員及演員", - "HeaderChannels": "頻道", "HeaderCustomDlnaProfiles": "自訂設定檔", "HeaderDeleteItem": "刪除項目", "HeaderEasyPinCode": "簡易 PIN 碼", @@ -126,10 +121,8 @@ "LabelName": "名字:", "LabelNewPassword": "新密碼:", "LabelNewPasswordConfirm": "確認新密碼:", - "LabelNext": "下一個", "LabelPassword": "密碼:", "LabelPlaylist": "播放清單:", - "LabelPrevious": "上一個", "LabelRefreshMode": "更新模式:", "LabelSaveLocalMetadata": "將媒體圖像及中繼資料存到媒體所在的資料夾", "LabelSaveLocalMetadataHelp": "直接儲存圖片及中繼資料到媒體所在的資料夾能使編輯更容易。", @@ -248,16 +241,11 @@ "Sunday": "星期天", "TabAdvanced": "進階", "TabAlbumArtists": "專輯歌手", - "TabAlbums": "專輯", "TabCatalog": "目錄", - "TabChannels": "頻道", "TabEpisodes": "單元", - "TabGenres": "類型", - "TabGuide": "節目表", "TabInfo": "資訊", "TabLatest": "最新", "TabLiveTV": "電視", - "TabMovies": "電影", "TabMusic": "音樂", "TabMyPlugins": "我的附加元件", "TabNetworks": "網路", @@ -268,8 +256,6 @@ "TabSeries": "電視劇", "TabServer": "伺服器", "TabSettings": "設定", - "TabShows": "節目", - "TabSongs": "歌曲", "TabTrailers": "預告", "TabUpcoming": "接下來", "TellUsAboutYourself": "介紹一下自己", @@ -309,7 +295,6 @@ "AsManyAsPossible": "越多越好", "Ascending": "遞增", "AspectRatio": "長寬比", - "AttributeNew": "新增", "Audio": "音訊", "Auto": "自動", "Backdrop": "背景", @@ -323,7 +308,6 @@ "ButtonAddMediaLibrary": "新增媒體櫃", "ButtonArrowLeft": "左", "ButtonArrowRight": "右", - "ButtonArrowUp": "上", "ButtonAudioTracks": "音軌", "ButtonBack": "返回", "ButtonChangeServer": "更換伺服器", @@ -339,10 +323,6 @@ "Box": "盒子", "BoxRear": "盒子(背面)", "BurnSubtitlesHelp": "根據字幕格式決定伺服器在影片轉檔時是否燒錄字幕。避免燒錄字幕時消耗過多伺服器資源。選擇「自動」以燒錄圖片格式的字幕(如 VOBSUB、PGS 或 SUB/IDX 等)與複雜的 ASS/SSA 字幕。", - "ButtonArrowDown": "下", - "ButtonConnect": "連結", - "ButtonDown": "下", - "ButtonDownload": "下載", "ButtonEditOtherUserPreferences": "編輯使用者個人檔案、大頭貼和個人設定。", "ButtonFullscreen": "全螢幕", "ButtonInfo": "詳細資料", @@ -366,7 +346,6 @@ "ButtonSelectView": "選擇顯示方式", "ButtonSend": "傳送", "ButtonSettings": "設定", - "ButtonShuffle": "隨機播放", "ButtonShutdown": "關機", "ButtonStart": "開始", "ButtonStop": "停止", @@ -374,7 +353,6 @@ "ButtonSubtitles": "字幕", "ButtonTrailer": "預告片", "ButtonUninstall": "解除安裝", - "ButtonUp": "上", "ButtonWebsite": "網站", "CancelRecording": "取消錄影", "CancelSeries": "取消系列", @@ -436,7 +414,6 @@ "EasyPasswordHelp": "你的簡易 PIN 碼將會用於在支援的 Jellyfin 應用上進行離線存取,同時也可被用於區域網路的登入。", "EditMetadata": "編輯中繼資料", "EditSubtitles": "編輯字幕", - "EnableBackdrops": "背景", "EnableBackdropsHelp": "瀏覽媒體庫時背景圖將作為頁面的背景。", "EnableCinemaMode": "影院模式", "EnableColorCodedBackgrounds": "色彩背景", @@ -501,7 +478,6 @@ "HeaderAddToPlaylist": "加到播放清單", "HeaderAddUpdateImage": "新增/更新圖片", "HeaderAlbumArtists": "專輯演出者", - "HeaderAlbums": "專輯", "HeaderAlert": "通知", "HeaderAllowMediaDeletionFrom": "允許從中刪除媒體", "HeaderApiKey": "API 金鑰", @@ -560,7 +536,6 @@ "HeaderFavoriteVideos": "最愛的影片", "HeaderFetcherSettings": "擷取器設置", "HeaderForKids": "給兒童", - "HeaderGenres": "類型", "HeaderHttpHeaders": "HTTP 標頭", "HeaderIdentification": "身份識別", "HeaderIdentificationCriteriaHelp": "至少輸入一個識別標準。", @@ -568,7 +543,6 @@ "HeaderIdentifyItemHelp": "輸入一個或多個搜索條件。刪除條件可得到更多搜索結果。", "HeaderImageOptions": "圖片選項", "HeaderInstall": "安裝", - "HeaderItems": "項目", "HeaderKeepRecording": "繼續錄製", "HeaderKeepSeries": "保存系列", "HeaderKodiMetadataHelp": "要啟用或停用 NFO 中繼資料,請在設定裡「建立媒體庫」頁面中編輯「中繼資料儲存」部分。", @@ -585,7 +559,6 @@ "HeaderMediaInfo": "媒體資訊", "HeaderMetadataSettings": "中繼資料設定", "HeaderMoreLikeThis": "更多類似的", - "HeaderMovies": "電影", "HeaderMusicQuality": "音質", "HeaderMyDevice": "我的裝置", "HeaderMyMedia": "我的媒體", @@ -625,7 +598,6 @@ "HeaderServerSettings": "伺服器設定", "HeaderSettings": "設定", "HeaderSetupLibrary": "設置你的媒體庫", - "HeaderShutdown": "關機", "HeaderSortBy": "分類", "HeaderSortOrder": "分類順序", "HeaderSpecialEpisodeInfo": "特集資訊", @@ -673,7 +645,6 @@ "HeaderXmlDocumentAttributes": "XML 檔案屬性", "HeaderXmlSettings": "XML 設置", "HeaderYears": "年份", - "HeadersFolders": "資料夾", "Hide": "隱藏", "HideWatchedContentFromLatestMedia": "從最新媒體中隱藏已觀看的內容", "Home": "首頁", @@ -784,7 +755,6 @@ "LabelVersionInstalled": "{0} 已安裝", "DashboardVersionNumber": "版本:{0}", "DashboardServerName": "伺服器:{0}", - "NoSubtitles": "無", "List": "清單", "OptionAllowMediaPlayback": "允許播放媒體", "OneChannel": "單聲道", @@ -795,7 +765,6 @@ "ResumeAt": "從 {0} 繼續播放", "Settings": "設定", "TabAccess": "存取", - "TabDevices": "裝置", "TabDirectPlay": "直接播放", "ThemeSongs": "主題曲", "ThemeVideos": "主題曲影片", @@ -1015,7 +984,6 @@ "TabCodecs": "編碼", "TabContainers": "影片容器", "TabDashboard": "控制台", - "TabFavorites": "最愛", "TabLogs": "日誌", "TabNotifications": "通知", "TabOther": "其他", @@ -1366,7 +1334,6 @@ "LabelProtocolInfoHelp": "當響應來自裝置的 GetProtocolInfo(獲取協議訊息)請求時,該值將被使用。", "LabelPublicHttpPortHelp": "公開連接埠應映射到本地 HTTP 連接埠。", "LabelPublicHttpsPortHelp": "公開連接埠應映射到本地 HTTPS 連接埠。", - "LabelReadHowYouCanContribute": "瞭解如何一同貢獻。", "LabelSelectFolderGroups": "自動將以下資料夾中的內容分組到視圖中,例如電影、音樂和電視:", "LabelStatus": "狀態:", "LiveBroadcasts": "直播", @@ -1377,7 +1344,6 @@ "SaveSubtitlesIntoMediaFoldersHelp": "將字幕存儲在影片檔案旁邊可以讓管理更方便。", "ScanForNewAndUpdatedFiles": "掃描新的和有修改的文件", "Schedule": "排程", - "TabCollections": "收藏", "TabNetworking": "網路", "TitlePlayback": "播放", "ValueConditions": "條件:{0}", @@ -1491,7 +1457,6 @@ "ButtonCast": "投放", "Writers": "作者", "ViewAlbumArtist": "檢視專輯演出者", - "TabDVR": "DVR", "TabRepositories": "儲存庫", "MessageSyncPlayErrorAccessingGroups": "存取群組清單時發生錯誤。", "MessageSyncPlayLibraryAccessDenied": "存取受限。", From 369d7b2f5a1092488260b7959c35bf0a1e2d6833 Mon Sep 17 00:00:00 2001 From: dkanada Date: Thu, 13 Aug 2020 21:56:01 +0900 Subject: [PATCH 034/285] merge weekday strings --- .../accessSchedule/accessSchedule.template.html | 14 +++++++------- .../homeScreenSettings.template.html | 14 +++++++------- src/components/homesections/homesections.js | 4 ++-- .../dashboard/plugins/available/index.js | 2 +- .../dashboard/scheduledtasks/scheduledtask.html | 16 ++++++++-------- src/controllers/dashboard/users/useredit.html | 2 +- .../dashboard/users/userlibraryaccess.html | 2 +- .../dashboard/users/userparentalcontrol.html | 2 +- .../dashboard/users/userpassword.html | 2 +- src/controllers/itemDetails/index.html | 4 ++-- src/controllers/itemDetails/index.js | 4 ++-- src/controllers/livetv.html | 2 +- src/controllers/livetv/livetvsuggested.js | 6 +++--- src/controllers/music/musicrecommended.js | 2 +- src/controllers/shows/tvrecommended.html | 2 +- src/scripts/editorsidebar.js | 2 +- src/scripts/libraryMenu.js | 6 +++--- 17 files changed, 43 insertions(+), 43 deletions(-) diff --git a/src/components/accessSchedule/accessSchedule.template.html b/src/components/accessSchedule/accessSchedule.template.html index e209fbc1ff..c0f83ccec6 100644 --- a/src/components/accessSchedule/accessSchedule.template.html +++ b/src/components/accessSchedule/accessSchedule.template.html @@ -12,13 +12,13 @@
    @@ -38,7 +38,7 @@ - + @@ -51,7 +51,7 @@ - + @@ -64,7 +64,7 @@ - + @@ -77,7 +77,7 @@ - + @@ -90,7 +90,7 @@ - + @@ -103,7 +103,7 @@ - + diff --git a/src/components/homesections/homesections.js b/src/components/homesections/homesections.js index 6198894088..e933cf2c3a 100644 --- a/src/components/homesections/homesections.js +++ b/src/components/homesections/homesections.js @@ -696,12 +696,12 @@ import 'css!./homesections'; serverId: apiClient.serverId() }) + '" class="button-flat button-flat-mini sectionTitleTextButton">'; html += '

    '; - html += globalize.translate('HeaderNextUp'); + html += globalize.translate('NextUp'); html += '

    '; html += ''; html += ''; } else { - html += '

    ' + globalize.translate('HeaderNextUp') + '

    '; + html += '

    ' + globalize.translate('NextUp') + '

    '; } html += '
    '; diff --git a/src/controllers/dashboard/plugins/available/index.js b/src/controllers/dashboard/plugins/available/index.js index 22b28e0f5a..b7c3505aa1 100644 --- a/src/controllers/dashboard/plugins/available/index.js +++ b/src/controllers/dashboard/plugins/available/index.js @@ -28,7 +28,7 @@ function getHeaderText(category) { } else if (category === 'Theme') { category = 'Themes'; } else if (category === 'LiveTV') { - category = 'HeaderLiveTV'; + category = 'LiveTV'; } else if (category === 'ScreenSaver') { category = 'HeaderScreenSavers'; } diff --git a/src/controllers/dashboard/scheduledtasks/scheduledtask.html b/src/controllers/dashboard/scheduledtasks/scheduledtask.html index 4dab484905..dc17d9bf07 100644 --- a/src/controllers/dashboard/scheduledtasks/scheduledtask.html +++ b/src/controllers/dashboard/scheduledtasks/scheduledtask.html @@ -31,18 +31,18 @@ - +
    diff --git a/src/controllers/dashboard/users/useredit.html b/src/controllers/dashboard/users/useredit.html index a097144cc3..400c0c35bf 100644 --- a/src/controllers/dashboard/users/useredit.html +++ b/src/controllers/dashboard/users/useredit.html @@ -14,7 +14,7 @@ ${TabProfile} ${TabAccess} ${TabParentalControl} - ${TabPassword} + ${HeaderPassword}

    ${ButtonEditOtherUserPreferences} diff --git a/src/controllers/dashboard/users/userlibraryaccess.html b/src/controllers/dashboard/users/userlibraryaccess.html index f0a239c6a6..363e52a716 100644 --- a/src/controllers/dashboard/users/userlibraryaccess.html +++ b/src/controllers/dashboard/users/userlibraryaccess.html @@ -14,7 +14,7 @@ ${TabProfile} ${TabAccess} ${TabParentalControl} - ${TabPassword} + ${HeaderPassword}

    diff --git a/src/controllers/dashboard/users/userparentalcontrol.html b/src/controllers/dashboard/users/userparentalcontrol.html index fd763ca26d..ffbd183a29 100644 --- a/src/controllers/dashboard/users/userparentalcontrol.html +++ b/src/controllers/dashboard/users/userparentalcontrol.html @@ -12,7 +12,7 @@ ${TabProfile} ${TabAccess} ${TabParentalControl} - ${TabPassword} + ${HeaderPassword}
    diff --git a/src/controllers/dashboard/users/userpassword.html b/src/controllers/dashboard/users/userpassword.html index 51df2e2cb0..0f6ea2d78e 100644 --- a/src/controllers/dashboard/users/userpassword.html +++ b/src/controllers/dashboard/users/userpassword.html @@ -12,7 +12,7 @@ ${TabProfile} ${TabAccess} ${TabParentalControl} - ${TabPassword} + ${HeaderPassword}
    diff --git a/src/controllers/itemDetails/index.html b/src/controllers/itemDetails/index.html index 8c16daba99..bd0821eebe 100644 --- a/src/controllers/itemDetails/index.html +++ b/src/controllers/itemDetails/index.html @@ -147,14 +147,14 @@
    -

    ${HeaderSchedule}

    +

    ${Schedule}

    -

    ${HeaderNextUp}

    +

    ${NextUp}

    diff --git a/src/controllers/itemDetails/index.js b/src/controllers/itemDetails/index.js index 9d4ba09392..c57190139f 100644 --- a/src/controllers/itemDetails/index.js +++ b/src/controllers/itemDetails/index.js @@ -785,7 +785,7 @@ import 'emby-select'; function setPeopleHeader(page, item) { if (item.MediaType == 'Audio' || item.Type == 'MusicAlbum' || item.MediaType == 'Book' || item.MediaType == 'Photo') { - page.querySelector('#peopleHeader').innerHTML = globalize.translate('HeaderPeople'); + page.querySelector('#peopleHeader').innerHTML = globalize.translate('People'); } else { page.querySelector('#peopleHeader').innerHTML = globalize.translate('HeaderCastAndCrew'); } @@ -1432,7 +1432,7 @@ import 'emby-select'; name: globalize.translate('HeaderVideos'), mediaType: 'Video' }, { - name: globalize.translate('HeaderSeries'), + name: globalize.translate('Series'), type: 'Series' }, { name: globalize.translate('Albums'), diff --git a/src/controllers/livetv.html b/src/controllers/livetv.html index 0e02947c12..753521f40b 100644 --- a/src/controllers/livetv.html +++ b/src/controllers/livetv.html @@ -1,4 +1,4 @@ -
    +
    diff --git a/src/controllers/livetv/livetvsuggested.js b/src/controllers/livetv/livetvsuggested.js index 9fec9a2707..346630012a 100644 --- a/src/controllers/livetv/livetvsuggested.js +++ b/src/controllers/livetv/livetvsuggested.js @@ -172,11 +172,11 @@ function getTabs() { }, { name: globalize.translate('Channels') }, { - name: globalize.translate('TabRecordings') + name: globalize.translate('Recordings') }, { - name: globalize.translate('HeaderSchedule') + name: globalize.translate('Schedule') }, { - name: globalize.translate('TabSeries') + name: globalize.translate('Series') }]; } diff --git a/src/controllers/music/musicrecommended.js b/src/controllers/music/musicrecommended.js index 4a04f9e827..65ecd79f65 100644 --- a/src/controllers/music/musicrecommended.js +++ b/src/controllers/music/musicrecommended.js @@ -185,7 +185,7 @@ import 'flexStyles'; }, { name: globalize.translate('Artists') }, { - name: globalize.translate('TabPlaylists') + name: globalize.translate('Playlists') }, { name: globalize.translate('Songs') }, { diff --git a/src/controllers/shows/tvrecommended.html b/src/controllers/shows/tvrecommended.html index bdc21fdc81..2302279ed7 100644 --- a/src/controllers/shows/tvrecommended.html +++ b/src/controllers/shows/tvrecommended.html @@ -26,7 +26,7 @@
    -

    ${HeaderNextUp}

    +

    ${NextUp}

    diff --git a/src/scripts/editorsidebar.js b/src/scripts/editorsidebar.js index 2489335969..7c15eae221 100644 --- a/src/scripts/editorsidebar.js +++ b/src/scripts/editorsidebar.js @@ -86,7 +86,7 @@ import 'material-icons'; if (result.TotalRecordCount) { nodes.push({ id: 'livetv', - text: globalize.translate('HeaderLiveTV'), + text: globalize.translate('LiveTV'), state: { opened: false }, diff --git a/src/scripts/libraryMenu.js b/src/scripts/libraryMenu.js index 5ee485e815..d237eead9d 100644 --- a/src/scripts/libraryMenu.js +++ b/src/scripts/libraryMenu.js @@ -377,7 +377,7 @@ import 'flexStyles'; pageIds: ['dashboardGeneralPage'], icon: 'settings' }, { - name: globalize.translate('TabUsers'), + name: globalize.translate('HeaderUsers'), href: 'userprofiles.html', pageIds: ['userProfilesPage', 'newUserPage', 'editUserPage', 'userLibraryAccessPage', 'userParentalControlPage', 'userPasswordPage'], icon: 'people' @@ -417,10 +417,10 @@ import 'flexStyles'; }); links.push({ divider: true, - name: globalize.translate('TabLiveTV') + name: globalize.translate('LiveTV') }); links.push({ - name: globalize.translate('TabLiveTV'), + name: globalize.translate('LiveTV'), href: 'livetvstatus.html', pageIds: ['liveTvStatusPage', 'liveTvTunerPage'], icon: 'live_tv' From d1858bd03001c6458d4da45cbe9ffea00c93438f Mon Sep 17 00:00:00 2001 From: dkanada Date: Thu, 13 Aug 2020 22:02:55 +0900 Subject: [PATCH 035/285] remove more unused translations --- src/strings/af.json | 8 +------- src/strings/ar.json | 20 -------------------- src/strings/bg-bg.json | 20 -------------------- src/strings/ca.json | 20 -------------------- src/strings/cs.json | 20 -------------------- src/strings/da.json | 20 -------------------- src/strings/de.json | 20 -------------------- src/strings/el.json | 19 ------------------- src/strings/en-gb.json | 20 -------------------- src/strings/en-us.json | 20 -------------------- src/strings/es-ar.json | 20 -------------------- src/strings/es-mx.json | 20 -------------------- src/strings/es.json | 20 -------------------- src/strings/es_419.json | 20 -------------------- src/strings/fa.json | 20 -------------------- src/strings/fi.json | 20 -------------------- src/strings/fr-ca.json | 3 --- src/strings/fr.json | 20 -------------------- src/strings/gsw.json | 11 ----------- src/strings/he.json | 20 +------------------- src/strings/hr.json | 19 ------------------- src/strings/hu.json | 20 -------------------- src/strings/id.json | 3 --- src/strings/is-is.json | 10 ---------- src/strings/it.json | 20 -------------------- src/strings/ja.json | 19 ------------------- src/strings/kk.json | 20 -------------------- src/strings/ko.json | 20 -------------------- src/strings/lt-lt.json | 17 ----------------- src/strings/lv.json | 20 -------------------- src/strings/ms.json | 3 --- src/strings/nb.json | 20 -------------------- src/strings/nl.json | 20 -------------------- src/strings/pl.json | 20 -------------------- src/strings/pt-br.json | 20 -------------------- src/strings/pt-pt.json | 20 -------------------- src/strings/pt.json | 20 -------------------- src/strings/ro.json | 20 -------------------- src/strings/ru.json | 20 -------------------- src/strings/sk.json | 20 -------------------- src/strings/sl-si.json | 20 -------------------- src/strings/sr.json | 2 -- src/strings/sv.json | 20 -------------------- src/strings/tr.json | 16 ---------------- src/strings/uk.json | 5 ----- src/strings/vi.json | 10 ---------- src/strings/zh-cn.json | 20 -------------------- src/strings/zh-hk.json | 16 ---------------- src/strings/zh-tw.json | 20 -------------------- 49 files changed, 2 insertions(+), 839 deletions(-) diff --git a/src/strings/af.json b/src/strings/af.json index 53b658836e..f18b2fc14b 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -122,21 +122,16 @@ "ThemeVideos": "Tema Videos", "ThemeSongs": "Tema Liedjies", "TellUsAboutYourself": "Vertel ons van jouself", - "TabUsers": "Gebruikers", "TabUpcoming": "Komende", "TabTrailers": "Voorprente", "TabStreaming": "Stroom", "TabSettings": "Instellings", "TabServer": "Bediener", - "TabSeries": "Reekse", "TabScheduledTasks": "Geskeduleerde Take", "TabResumeSettings": "Hervat", "TabResponses": "Reaksies", - "TabRecordings": "Opnames", "TabProfiles": "Profiele", "TabProfile": "Profiel", - "TabPlaylists": "Speel lyste", - "TabPassword": "Wagwoord", "TabParentalControl": "Ouer Beheer", "TabOther": "Ander", "TabNotifications": "Kennisgewings", @@ -145,6 +140,5 @@ "TabNetworks": "Netwerke", "TabMusicVideos": "Musiek Videos", "TabMusic": "Musiek", - "TabLogs": "Logs", - "TabLiveTV": "Lewendige TV" + "TabLogs": "Logs" } diff --git a/src/strings/ar.json b/src/strings/ar.json index 24020ed834..23cb2c9cab 100644 --- a/src/strings/ar.json +++ b/src/strings/ar.json @@ -183,8 +183,6 @@ "HeaderLibraries": "المكتبات", "HeaderLibraryAccess": "صلاحيات المكتبة", "HeaderLibraryFolders": "مجلدات الوسائط", - "HeaderLiveTV": "التلفاز المباشر", - "HeaderLiveTv": "التلفاز المباشر", "HeaderLoginFailure": "فشل في تسجيل الدخول", "HeaderMedia": "الوسائط", "HeaderMediaFolders": "مجلدات الوسائط", @@ -193,13 +191,11 @@ "HeaderMusicVideos": "الفيديوهات الموسيقية", "HeaderMyMedia": "وسائطي", "HeaderNewApiKey": "مفتاح API جديد", - "HeaderNextUp": "التالي", "HeaderOtherItems": "عناصر أخرى", "HeaderParentalRatings": "التصنيف الأبوي", "HeaderPassword": "كلمة السر", "HeaderPasswordReset": "إعادة تهيئة كلمة السر", "HeaderPaths": "مسارات", - "HeaderPeople": "الناس", "HeaderPinCodeReset": "أعد تهيئة الرمز الشخصي", "HeaderPlayAll": "تشغيل الكل", "HeaderPlayback": "تشغيل الوسائط", @@ -220,7 +216,6 @@ "HeaderRevisionHistory": "تاريخ المراجعات", "HeaderRunningTasks": "المهام المشغّلة", "HeaderScenes": "المشاهد", - "HeaderSchedule": "الجدول", "HeaderSeasons": "المواسم", "HeaderSelectCertificatePath": "إختر مسار الشهادة", "HeaderSelectMetadataPath": "إختر مسار واصفات البيانات", @@ -232,7 +227,6 @@ "HeaderSelectTranscodingPath": "إختر المسار المؤقت للتشفير البيني", "HeaderSelectTranscodingPathHelp": "تصفح أو أدخل المسار الذي ترغب أن يُستخدم لملفات التشفير البيني. يجب أن يكون هذا المجلد قابل للكتابة فيه.", "HeaderSendMessage": "أرسل رسالة", - "HeaderSeries": "المسلسلات", "HeaderServerSettings": "إعدادات الخادم", "HeaderSettings": "الإعدادات", "HeaderSetupLibrary": "ضبط مكتبة المحتوى الخاصة بك", @@ -669,7 +663,6 @@ "OptionExternallyDownloaded": "الإنزال من الخارج", "OptionExtractChapterImage": "تفعيل استخلاص صور الأبواب", "OptionFavorite": "المفضلات", - "OptionFriday": "الجمعة", "OptionHasSpecialFeatures": "المحتويات الخاصة", "OptionHasSubtitles": "الترجمة", "OptionHasThemeSong": "أغنية الشارة", @@ -687,10 +680,8 @@ "OptionLikes": "المحببات", "OptionMax": "الحد الأقصى", "OptionMissingEpisode": "حلفة مفقودة", - "OptionMonday": "الأثنين", "OptionNameSort": "الاسم", "OptionNone": "لا شيء", - "OptionOnAppStartup": "بناء على تشغيل الخادم", "OptionOnInterval": "بناء على فترة", "OptionParentalRating": "التصنيف الأبوي", "OptionPlainStorageFolders": "غرض جميع المجلدات كمجلدات تخزين بسيطة", @@ -712,19 +703,14 @@ "OptionResElement": "عناصر res", "OptionResumable": "إمكانية التكملة", "OptionRuntime": "زمن التشغيل", - "OptionSaturday": "السبت", "OptionSaveMetadataAsHidden": "حفظ واصفات البيانات والصور كملفات مخفية", "OptionSaveMetadataAsHiddenHelp": "إن تغيير هذه سيطبق على واصفات البيانات الجديدة من الآن. أما واصفات البيانات الموجودة مسبقاً، فهي ستحدث من قبل الخادم في المرة القادمة التي يتم حفظها.", "OptionSpecialEpisode": "حصريات", - "OptionSunday": "الأحد", - "OptionThursday": "الخميس", "OptionTrackName": "اسم المقطوعة", - "OptionTuesday": "الثلاثاء", "OptionTvdbRating": "تقييم Tvdb", "OptionUnairedEpisode": "حلفة لم تبثّ", "OptionUnplayed": "غير معزوف", "OptionWakeFromSleep": "استيقظ من السبات", - "OptionWednesday": "الأربعاء", "OptionWeekdays": "أيام الأسبوع", "OptionWeekends": "أيام العطلة", "OptionWeekly": "أسبوعي", @@ -772,7 +758,6 @@ "TabEpisodes": "الحلقات", "TabInfo": "معلومات", "TabLatest": "الاخير", - "TabLiveTV": "التلفاز المباشر", "TabLogs": "الكشوفات", "TabMusic": "الموسيقى", "TabMusicVideos": "الفيديوهات الموسيقية", @@ -782,22 +767,17 @@ "TabNotifications": "إشعارات", "TabOther": "أخرى", "TabParentalControl": "التحكم الأبوي", - "TabPassword": "كلمة السر", - "TabPlaylists": "قوائم التشغيل", "TabPlugins": "الملحقات", "TabProfile": "عريضة", "TabProfiles": "الحسابات", - "TabRecordings": "المقاطع المسجلة", "TabResponses": "الردود", "TabResumeSettings": "استئناف الإعدادات", "TabScheduledTasks": "المهام المجدولة", - "TabSeries": "المسلسلات", "TabServer": "الخادم", "TabSettings": "الإعدادات", "TabStreaming": "التشغيل التدفقي", "TabTrailers": "العروض الإعلانية", "TabUpcoming": "القادم", - "TabUsers": "المستخدمون", "TellUsAboutYourself": "اخبرنا عن نفسك", "ThisWizardWillGuideYou": "مرشد الاعدادات سيساعدك خلال خطوات عملية الاعدادات. للبدء، الرجاء اختيار لغتك المفضلة.", "Thursday": "الخميس", diff --git a/src/strings/bg-bg.json b/src/strings/bg-bg.json index 4ab46a6eab..1cc469a9fd 100644 --- a/src/strings/bg-bg.json +++ b/src/strings/bg-bg.json @@ -180,8 +180,6 @@ "HeaderLibraryFolders": "Папки на библиотеката", "HeaderLibraryOrder": "Подредба на библиотеката", "HeaderLibrarySettings": "Настройки на библиотеката", - "HeaderLiveTV": "Телевизия на живо", - "HeaderLiveTv": "Телевизия на живо", "HeaderMedia": "Медия", "HeaderMediaFolders": "Медийни папки", "HeaderMediaInfo": "Сведения", @@ -195,12 +193,10 @@ "HeaderNewApiKey": "Нов ППИ ключ", "HeaderNewDevices": "Нови устройства", "HeaderNextEpisodePlayingInValue": "Следващият епизод ще се пусне след {0}", - "HeaderNextUp": "Следва", "HeaderOnNow": "На живо сега", "HeaderParentalRatings": "Родителска оценка", "HeaderPassword": "Парола", "HeaderPaths": "Пътища", - "HeaderPeople": "Хора", "HeaderPlayAll": "Пускане на всичко", "HeaderPlayOn": "Пускане на", "HeaderPleaseSignIn": "Моля, влезте", @@ -216,12 +212,10 @@ "HeaderRevisionHistory": "Списък с промени", "HeaderRunningTasks": "Изпълняващи се задачи", "HeaderScenes": "Сцени", - "HeaderSchedule": "Разписание", "HeaderSeasons": "Сезони", "HeaderSecondsValue": "{0} секунди", "HeaderSelectPath": "Изберете път", "HeaderSendMessage": "Изпращане на съобщение", - "HeaderSeries": "Сериал", "HeaderServerSettings": "Настройки на сървъра", "HeaderSettings": "Настройки", "HeaderSetupLibrary": "Настройте своите медийни библиотеки", @@ -530,7 +524,6 @@ "OptionEveryday": "Всеки ден", "OptionExternallyDownloaded": "Външно сваляне", "OptionFavorite": "Любими", - "OptionFriday": "Петък", "OptionHasSpecialFeatures": "Специални функции", "OptionHasSubtitles": "Субтитри", "OptionHasThemeSong": "Фонова песен", @@ -544,11 +537,9 @@ "OptionIsSD": "СК", "OptionLikes": "Харесвания", "OptionMissingEpisode": "Липсващи епизоди", - "OptionMonday": "Понеделник", "OptionNameSort": "Име", "OptionNew": "Нов…", "OptionNone": "Нищо", - "OptionOnAppStartup": "Като се стартира приложението", "OptionOnInterval": "През интервал", "OptionParentalRating": "Родителска оценка", "OptionPlainStorageFolders": "Показвай всички папки като папки за обикновено съхранение", @@ -564,16 +555,11 @@ "OptionRequirePerfectSubtitleMatch": "Да се изтеглят само субтитри, които пасват идеално на файловете ми", "OptionResumable": "Възобновляемост", "OptionRuntime": "Времетраене", - "OptionSaturday": "Събота", "OptionSpecialEpisode": "Специални", - "OptionSunday": "Неделя", - "OptionThursday": "Четвъртък", "OptionTrackName": "Име на песента", - "OptionTuesday": "Вторник", "OptionUnairedEpisode": "Неизлъчени епизоди", "OptionUnplayed": "Непускано", "OptionWakeFromSleep": "Събуждане от сън", - "OptionWednesday": "Сряда", "OptionWeekly": "Ежеседмично", "OriginalAirDateValue": "Дата на първоначално излъчване: {0}", "Overview": "Обобщение", @@ -657,7 +643,6 @@ "TabEpisodes": "Епизоди", "TabInfo": "Информация", "TabLatest": "Последни", - "TabLiveTV": "Телевизия на живо", "TabLogs": "Журнали", "TabMusic": "Музика", "TabMusicVideos": "Музикални клипове", @@ -667,22 +652,17 @@ "TabNotifications": "Известия", "TabOther": "Други", "TabParentalControl": "Родителски контрол", - "TabPassword": "Парола", - "TabPlaylists": "Списъци", "TabPlugins": "Приставки", "TabProfile": "Профил", "TabProfiles": "Профили", - "TabRecordings": "Записи", "TabResponses": "Отговори", "TabResumeSettings": "Възобнови", "TabScheduledTasks": "Планирани задачи", - "TabSeries": "Сериали", "TabServer": "Сървър", "TabSettings": "Настройки", "TabStreaming": "Излъчване", "TabTrailers": "Трейлъри", "TabUpcoming": "Предстоящи", - "TabUsers": "Потребители", "Tags": "Етикети", "TagsValue": "Етикети: {0}", "TellUsAboutYourself": "Разкажете за себе си", diff --git a/src/strings/ca.json b/src/strings/ca.json index c5f7f2d6de..413fef4792 100644 --- a/src/strings/ca.json +++ b/src/strings/ca.json @@ -172,8 +172,6 @@ "HeaderLibraryFolders": "Directoris de la Llibreria", "HeaderLibraryOrder": "Ordre de la llibreria", "HeaderLibrarySettings": "Preferències de la Biblioteca", - "HeaderLiveTV": "TV en Directe", - "HeaderLiveTv": "TV en Directe", "HeaderMediaFolders": "Directoris Multimèdia", "HeaderMediaInfo": "Info Multimèdia", "HeaderMetadataSettings": "Preferències de Metadades", @@ -183,14 +181,12 @@ "HeaderMyMediaSmall": "Els meus mitjans (petit)", "HeaderNewApiKey": "Nova Clau Api", "HeaderNextEpisodePlayingInValue": "Reproduint proper episodi en {0}", - "HeaderNextUp": "A continuació", "HeaderNextVideoPlayingInValue": "Reproduint proper vídeo en {0}", "HeaderOnNow": "En Directe Ara", "HeaderParentalRatings": "Classificacions Parentals", "HeaderPassword": "Contrasenya", "HeaderPasswordReset": "Reiniciar Contrasenya", "HeaderPaths": "Directoris", - "HeaderPeople": "Gent", "HeaderPlayAll": "Reprodueix Tot", "HeaderPlaybackError": "Error de Reproducció", "HeaderPleaseSignIn": "Si et plau, inicia sessió", @@ -204,12 +200,10 @@ "HeaderRestart": "Reiniciar", "HeaderRunningTasks": "Tasques Corrent", "HeaderScenes": "Escenes", - "HeaderSchedule": "Horari", "HeaderSeasons": "Temporades", "HeaderSecondsValue": "{0} segons", "HeaderSelectServer": "Seleccionar Servidor", "HeaderSendMessage": "Enviar Missatge", - "HeaderSeries": "Sèries:", "HeaderSeriesOptions": "Opcions de Sèries", "HeaderServerSettings": "Preferències del Servidor", "HeaderSettings": "Preferències", @@ -511,7 +505,6 @@ "OptionEveryday": "Cada dia", "OptionExternallyDownloaded": "Descàrrega externa", "OptionFavorite": "Preferits", - "OptionFriday": "Divendres", "OptionHasSpecialFeatures": "Característiques Especials", "OptionHasSubtitles": "Subtítols", "OptionHasThemeSong": "Cançó Temàtica", @@ -523,11 +516,9 @@ "OptionImdbRating": "Qualificació IMDb", "OptionLikes": "M'agrada", "OptionMissingEpisode": "Episodis Perduts", - "OptionMonday": "Dilluns", "OptionNameSort": "Nom", "OptionNew": "Nou...", "OptionNone": "Cap", - "OptionOnAppStartup": "En arrencar l'aplicació", "OptionOnInterval": "En un interval", "OptionParentalRating": "Classificació Parental", "OptionPlayCount": "Nombre de Reproduccions", @@ -538,18 +529,13 @@ "OptionReleaseDate": "Data de Publicació", "OptionResumable": "Continuable", "OptionRuntime": "Temps d'exec.", - "OptionSaturday": "Dissabte", "OptionSaveMetadataAsHidden": "Desa les metadades i les imatges com a fitxers ocults", "OptionSpecialEpisode": "Especials", "OptionSubstring": "Subcadena", - "OptionSunday": "Diumenge", - "OptionThursday": "Dijous", - "OptionTuesday": "Dimarts", "OptionTvdbRating": "Valoració TVDB", "OptionUnairedEpisode": "Episodis No Emesos", "OptionUnplayed": "No reproduït", "OptionWakeFromSleep": "Despertar", - "OptionWednesday": "Dimecres", "OptionWeekdays": "Entre setmana", "OptionWeekends": "Cap de setmana", "OptionWeekly": "Setmanal", @@ -624,7 +610,6 @@ "TabEpisodes": "Episodis", "TabInfo": "Informació", "TabLatest": "Novetats", - "TabLiveTV": "TV en Directe", "TabMusic": "Música", "TabMusicVideos": "Vídeos musicals", "TabMyPlugins": "Els meus complements", @@ -633,20 +618,15 @@ "TabNotifications": "Notificacions", "TabOther": "Altres", "TabParentalControl": "Control Parental", - "TabPassword": "Contrasenya", - "TabPlaylists": "Llistes de reproducció", "TabPlugins": "Complements", "TabProfile": "Perfil", "TabProfiles": "Perfils", - "TabRecordings": "Enregistraments", "TabResponses": "Respostes", "TabScheduledTasks": "Tasques Programades", - "TabSeries": "Sèries", "TabServer": "Servidor", "TabSettings": "Preferències", "TabTrailers": "Tràilers", "TabUpcoming": "Properament", - "TabUsers": "Usuaris", "Tags": "Etiquetes", "TellUsAboutYourself": "Explica'ns sobre tu", "TheseSettingsAffectSubtitlesOnThisDevice": "Aquestes preferències afecten els subtítols d'aquest dispositiu", diff --git a/src/strings/cs.json b/src/strings/cs.json index daa4573874..d796f36a43 100644 --- a/src/strings/cs.json +++ b/src/strings/cs.json @@ -293,7 +293,6 @@ "HeaderMyMediaSmall": "Moje média (malé)", "HeaderNewApiKey": "Nový klíč API", "HeaderNextEpisodePlayingInValue": "Přehrávání další epizody za {0}", - "HeaderNextUp": "Nadcházející", "HeaderNextVideoPlayingInValue": "Přehrávání dalšího videa za {0}", "HeaderOnNow": "Právě teď", "HeaderOtherItems": "Další položky", @@ -301,7 +300,6 @@ "HeaderPassword": "Heslo", "HeaderPasswordReset": "Obnova hesla", "HeaderPaths": "Cesty", - "HeaderPeople": "Lidé", "HeaderPinCodeReset": "Obnovit Pin kód", "HeaderPlayAll": "Přehrát vše", "HeaderPlayback": "Přehrání média", @@ -323,7 +321,6 @@ "HeaderRevisionHistory": "Historie verzí", "HeaderRunningTasks": "Běžící úlohy", "HeaderScenes": "Scény", - "HeaderSchedule": "Naplánování úlohy", "HeaderSeasons": "Sezóny", "HeaderSecondsValue": "{0} sekund", "HeaderSelectCertificatePath": "Vyber cestu k certifikátu", @@ -336,7 +333,6 @@ "HeaderSelectTranscodingPath": "Zvolte dočasnou složku pro překódovávání médií", "HeaderSelectTranscodingPathHelp": "Vyberte nebo zadejte složku pro soubory překódování. Složka musí být zapisovatelná.", "HeaderSendMessage": "Poslat zprávu", - "HeaderSeries": "Seriál", "HeaderSeriesOptions": "Nastavení seriálu", "HeaderServerSettings": "Nastavení serveru", "HeaderSettings": "Nastavení", @@ -856,7 +852,6 @@ "OptionExternallyDownloaded": "Externí stažení", "OptionExtractChapterImage": "Povolit extrakci obrázků z videa", "OptionFavorite": "Oblíbené", - "OptionFriday": "Pátek", "OptionHasSpecialFeatures": "Speciální funkce", "OptionHasSubtitles": "Titulky", "OptionHasThemeSong": "Tematická hudba", @@ -871,11 +866,9 @@ "OptionImdbRating": "Hodnocení IMDb", "OptionLikes": "Líbí se", "OptionMissingEpisode": "Chybějící episody", - "OptionMonday": "Pondělí", "OptionNameSort": "Název", "OptionNew": "Nový…", "OptionNone": "Žádný", - "OptionOnAppStartup": "Při spuštění aplikace", "OptionOnInterval": "V intervalu", "OptionParentalRating": "Rodičovské hodnocení", "OptionPlainStorageFolders": "Zobrazit všechny složky jako obyčejné složky pro ukládání", @@ -894,20 +887,15 @@ "OptionResElement": "Prvek \"res\"", "OptionResumable": "Pozastavavitelný", "OptionRuntime": "Délka", - "OptionSaturday": "Sobota", "OptionSaveMetadataAsHidden": "Ukládat metadata a obrázky jako skryté soubory", "OptionSaveMetadataAsHiddenHelp": "Změna se projeví u všech nově uložených metadat. Existující soubory metadat se aktualizují při příštím uložení serverem.", "OptionSpecialEpisode": "Speciální", "OptionSubstring": "subřetězec", - "OptionSunday": "Neděle", - "OptionThursday": "Čtvrtek", "OptionTrackName": "Název skladby", - "OptionTuesday": "Úterý", "OptionTvdbRating": "Tvdb hodnocení", "OptionUnairedEpisode": "Neodvysílané epizody", "OptionUnplayed": "Neshlédnuto", "OptionWakeFromSleep": "Probuzení ze spánku", - "OptionWednesday": "Středa", "OptionWeekdays": "Pracovní dny", "OptionWeekends": "Víkendy", "OptionWeekly": "Týdenní", @@ -1042,21 +1030,16 @@ "TabNotifications": "Oznámení", "TabOther": "Další", "TabParentalControl": "Rodičovská kontrola", - "TabPassword": "Heslo", - "TabPlaylists": "Playlisty", "TabPlugins": "Zásuvné moduly", "TabProfile": "Profil", "TabProfiles": "Profily", - "TabRecordings": "Nahrané", "TabResponses": "Odpovědi", "TabResumeSettings": "Obnovit", "TabScheduledTasks": "Naplánované úlohy", - "TabSeries": "Série", "TabSettings": "Nastavení", "TabStreaming": "Streamování", "TabTrailers": "Upoutávky", "TabUpcoming": "Nadcházející", - "TabUsers": "Uživatelé", "Tags": "Tagy", "TellUsAboutYourself": "Řekněte nám něco o sobě", "TheseSettingsAffectSubtitlesOnThisDevice": "Tato nastavení ovlivní titulky na tomto zařízení", @@ -1176,8 +1159,6 @@ "HeaderFetcherSettings": "Nastavení načítání", "HeaderImageOptions": "Volby obrázku", "HeaderKodiMetadataHelp": "Chcete-li povolit nebo zakázat metadata v souborech NFO, upravte nastavení knihovny v sekci ukládání metadat.", - "HeaderLiveTV": "Televize", - "HeaderLiveTv": "Televize", "HeaderLiveTvTunerSetup": "Nastavení televizního tuneru", "HeaderNewDevices": "Nové zařízení", "HeaderPhotoAlbums": "Fotoalba", @@ -1316,7 +1297,6 @@ "TV": "TV", "TabDirectPlay": "Přímé přehrávání", "TabInfo": "Info", - "TabLiveTV": "Televize", "TabServer": "Server", "TagsValue": "Tagy: {0}", "ThemeSongs": "Tematická hudba", diff --git a/src/strings/da.json b/src/strings/da.json index e5c8655645..20e237c7fe 100644 --- a/src/strings/da.json +++ b/src/strings/da.json @@ -261,14 +261,12 @@ "HeaderMyMedia": "Mine medier", "HeaderNewApiKey": "Ny API Nøgle", "HeaderNewDevices": "Nye Enheder", - "HeaderNextUp": "Næste", "HeaderOnNow": "Vises Nu", "HeaderOtherItems": "Andre elementer", "HeaderParentalRatings": "Aldersgrænser", "HeaderPassword": "Adgangskode", "HeaderPasswordReset": "Nulstil adgangskode", "HeaderPaths": "Stier", - "HeaderPeople": "Mennesker", "HeaderPinCodeReset": "Nulstil pinkode", "HeaderPlayAll": "Afspil Alle", "HeaderPlayback": "Medieafspilning", @@ -291,7 +289,6 @@ "HeaderRevisionHistory": "Revisionshistorik", "HeaderRunningTasks": "Kørende opgaver", "HeaderScenes": "Scener", - "HeaderSchedule": "Skema", "HeaderSeasons": "Sæsoner", "HeaderSelectCertificatePath": "Vælg certifikatsti", "HeaderSelectMetadataPath": "Vælg Metadata Path", @@ -303,7 +300,6 @@ "HeaderSelectTranscodingPath": "Vælg \"Transcoding Temporary Path\"", "HeaderSelectTranscodingPathHelp": "Vælg eller indtast stien som skal benyttes til midlertidige transkodningsfiler. Mappen må ikke være skrivebeskyttet.", "HeaderSendMessage": "Send besked", - "HeaderSeries": "Series", "HeaderSeriesOptions": "Serieindstillinger", "HeaderServerSettings": "Serverindstillinger", "HeaderSettings": "Indstillinger", @@ -789,7 +785,6 @@ "OptionExternallyDownloaded": "Ekstern hentning", "OptionExtractChapterImage": "Aktiver udvinding af kapitelbillede", "OptionFavorite": "Favoritter", - "OptionFriday": "Fredag", "OptionHasSpecialFeatures": "Specielle egenskaber", "OptionHasSubtitles": "Undertekster", "OptionHasThemeSong": "Temasang", @@ -803,11 +798,9 @@ "OptionImdbRating": "IMDB bedømmelse", "OptionMax": "Maks", "OptionMissingEpisode": "Manglende episoder", - "OptionMonday": "Mandag", "OptionNameSort": "Navn", "OptionNew": "Ny...", "OptionNone": "Ingen", - "OptionOnAppStartup": "Ved opstart", "OptionOnInterval": "Interval", "OptionParentalRating": "Aldersgrænse", "OptionPlainStorageFolders": "Vis alle mapper som standardmapper", @@ -826,20 +819,15 @@ "OptionRequirePerfectSubtitleMatch": "Download kun undertekster der er perfekte matches for mine videofiler", "OptionResumable": "Kan genoptages", "OptionRuntime": "Varighed", - "OptionSaturday": "Lørdag", "OptionSaveMetadataAsHidden": "Gem metadata og billeder som skjulte filer", "OptionSaveMetadataAsHiddenHelp": "Ændring af dette vil blive anvendt på nyt metadata gemt fremadrettet. Allerede eksisterende metadata-filer opdateres næste gang de gemmes af Jellyfin Server.", "OptionSpecialEpisode": "Særudsendelser", "OptionSubstring": "Delstreng", - "OptionSunday": "Søndag", - "OptionThursday": "Torsdag", "OptionTrackName": "Nummerets navn", - "OptionTuesday": "Tirsdag", "OptionTvdbRating": "TVDB bedømmelse", "OptionUnairedEpisode": "Ikke sendte episoder", "OptionUnplayed": "Ikke afspillet", "OptionWakeFromSleep": "Vågner fra dvale", - "OptionWednesday": "Onsdag", "OptionWeekdays": "Hverdage", "OptionWeekends": "Weekender", "OptionWeekly": "Ugentlig", @@ -958,20 +946,15 @@ "TabNotifications": "Underretninger", "TabOther": "Andet", "TabParentalControl": "Forældrekontrol", - "TabPassword": "Adgangskode", - "TabPlaylists": "Afspilningslister", "TabPlugins": "Tilføjelser", "TabProfile": "Profil", "TabProfiles": "Profiler", - "TabRecordings": "Optagelser", "TabResponses": "Svar", "TabResumeSettings": "Genoptag", "TabScheduledTasks": "Planlagte opgaver", - "TabSeries": "Serier", "TabSettings": "Indstillinger", "TabTrailers": "Trailere", "TabUpcoming": "Kommende", - "TabUsers": "Brugere", "TellUsAboutYourself": "Fortæl os lidt om dig selv", "ThisWizardWillGuideYou": "Denne guide vil hjælpe dig igennem opsætningen. For at begynde, vælg venligst dit fortrukne sprog.", "Thursday": "Torsdag", @@ -1031,7 +1014,6 @@ "AllLanguages": "Alle sprog", "AlwaysPlaySubtitles": "Afspil Altid", "AlwaysPlaySubtitlesHelp": "Undertekster, der matcher dine sprogindstillinger, vil altid blive indlæst uanset lydsprog.", - "HeaderLiveTV": "Live-TV", "Shows": "Serier", "Songs": "Sange", "AnyLanguage": "Hvilken som helst sprog", @@ -1115,7 +1097,6 @@ "HeaderDownloadSync": "Hentning Og Sync", "HeaderFavoritePlaylists": "Favorit Afspilningslister", "HeaderLibraryOrder": "Bibliotektsorden", - "HeaderLiveTv": "Live TV", "HeaderMusicQuality": "Musik Kvalitet", "HeaderMyMediaSmall": "Mine Medier (lille)", "HeaderNavigation": "Navigation", @@ -1280,7 +1261,6 @@ "TV": "TV", "TabCodecs": "Codeks", "TabInfo": "Information", - "TabLiveTV": "Live TV", "TabLogs": "Log", "TabServer": "Server", "TabStreaming": "Streamer", diff --git a/src/strings/de.json b/src/strings/de.json index 2e28c73d2f..84a34bc9cf 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -316,8 +316,6 @@ "HeaderLibraryFolders": "Bibliotheksverzeichnisse", "HeaderLibraryOrder": "Bibliotheksreihenfolge", "HeaderLibrarySettings": "Bibliothekseinstellungen", - "HeaderLiveTV": "Live TV", - "HeaderLiveTv": "Live-TV", "HeaderLiveTvTunerSetup": "TV Tuner Setup", "HeaderLoginFailure": "Login Fehler", "HeaderMedia": "Medien", @@ -333,7 +331,6 @@ "HeaderNewApiKey": "Neuer API-Schlüssel", "HeaderNewDevices": "Neue Geräte", "HeaderNextEpisodePlayingInValue": "Nächste Episode wird abgespielt in {0}", - "HeaderNextUp": "Als Nächstes", "HeaderNextVideoPlayingInValue": "Nächstes Video wird abgespielt in {0}", "HeaderOnNow": "Gerade läuft", "HeaderOtherItems": "Andere Inhalte", @@ -341,7 +338,6 @@ "HeaderPassword": "Passwort", "HeaderPasswordReset": "Passwort zurücksetzen", "HeaderPaths": "Pfade", - "HeaderPeople": "Personen", "HeaderPhotoAlbums": "Fotoalben", "HeaderPinCodeReset": "PIN Code zurücksetzen", "HeaderPlayAll": "Alle abspielen", @@ -365,7 +361,6 @@ "HeaderRevisionHistory": "Versionsverlauf", "HeaderRunningTasks": "Laufende Aufgaben", "HeaderScenes": "Szenen", - "HeaderSchedule": "Zeitplan", "HeaderSeasons": "Staffeln", "HeaderSecondsValue": "{0} Sekunden", "HeaderSelectCertificatePath": "Wählen Sie einen Zertifikat Ordner", @@ -378,7 +373,6 @@ "HeaderSelectTranscodingPath": "Wähle Pfad für temporäre Transkodierdateien", "HeaderSelectTranscodingPathHelp": "Suche oder gib den Pfad für die Speicherung Transkodierdateien an. Das Verzeichnis muss beschreibbar sein.", "HeaderSendMessage": "Nachricht senden", - "HeaderSeries": "Serien", "HeaderSeriesOptions": "Serienoptionen", "HeaderSeriesStatus": "Serienstatus", "HeaderServerSettings": "Server Einstellungen", @@ -926,7 +920,6 @@ "OptionExternallyDownloaded": "Externer Download", "OptionExtractChapterImage": "Aktiviere Kapitelbild-Extrahierung", "OptionFavorite": "Favoriten", - "OptionFriday": "Freitag", "OptionHasSpecialFeatures": "Besonderes Merkmal", "OptionHasSubtitles": "Untertitel", "OptionHasThemeSong": "Titellied", @@ -940,10 +933,8 @@ "OptionImdbRating": "IMDb Bewertung", "OptionLikes": "Mag ich", "OptionMissingEpisode": "Fehlende Episoden", - "OptionMonday": "Montag", "OptionNew": "Neu…", "OptionNone": "Keines", - "OptionOnAppStartup": "Bei Anwendungsstart", "OptionOnInterval": "Nach einem Intervall", "OptionParentalRating": "Altersfreigabe", "OptionPlainStorageFolders": "Zeige alle Verzeichnisse als reine Speicherorte an", @@ -961,17 +952,12 @@ "OptionResElement": "Res Element", "OptionResumable": "Fortsetzen", "OptionRuntime": "Dauer", - "OptionSaturday": "Samstag", "OptionSaveMetadataAsHidden": "Speichere Metadaten und Bilder als versteckte Dateien", "OptionSaveMetadataAsHiddenHelp": "Änderungen werden sich auf neue Metadaten angewendet. Bereits existierende Metadaten werden bei der nächsten Speicherung des Servers auf den neusten Stand gebracht.", - "OptionSunday": "Sonntag", - "OptionThursday": "Donnerstag", - "OptionTuesday": "Dienstag", "OptionTvdbRating": "TVDB Bewertung", "OptionUnairedEpisode": "Nicht ausgestrahlte Episoden", "OptionUnplayed": "Ungesehen", "OptionWakeFromSleep": "Aufwachen nach dem Schlafen", - "OptionWednesday": "Mittwoch", "OptionWeekdays": "Wöchentlich", "OptionWeekends": "An Wochenenden", "OptionWeekly": "Wöchentlich", @@ -1113,7 +1099,6 @@ "TabDirectPlay": "Direktwiedergabe", "TabEpisodes": "Episoden", "TabLatest": "Neueste", - "TabLiveTV": "Live-TV", "TabMusic": "Musik", "TabMusicVideos": "Musikvideos", "TabMyPlugins": "Meine Plugins", @@ -1122,19 +1107,14 @@ "TabNotifications": "Benachrichtigungen", "TabOther": "Andere", "TabParentalControl": "Kindersicherung", - "TabPassword": "Passwort", - "TabPlaylists": "Wiedergabelisten", "TabProfile": "Profil", "TabProfiles": "Profile", - "TabRecordings": "Aufnahmen", "TabResponses": "Antworten", "TabResumeSettings": "Fortsetzen", "TabScheduledTasks": "Geplante Aufgaben", - "TabSeries": "Serie", "TabSettings": "Einstellungen", "TabTrailers": "Trailer", "TabUpcoming": "Bevorstehend", - "TabUsers": "Benutzer", "TellUsAboutYourself": "Sagen Sie uns etwas über sich selbst", "ThemeSongs": "Titelsongs", "ThemeVideos": "Titelvideos", diff --git a/src/strings/el.json b/src/strings/el.json index 1a15e1b994..56d19b0c4a 100644 --- a/src/strings/el.json +++ b/src/strings/el.json @@ -298,8 +298,6 @@ "HeaderLibraryFolders": "Φάκελος βιβλιοθηκών", "HeaderLibraryOrder": "Διάταξη Βιβλιοθήκης", "HeaderLibrarySettings": "Ρυθμίσεις Βιβλιοθήκης", - "HeaderLiveTV": "Ζωντανή Τηλεόραση", - "HeaderLiveTv": "ΖΩΝΤΑΝΗ ΤΗΛΕΩΡΑΣΗ", "HeaderLoginFailure": "Αποτυχία εισόδου", "HeaderMedia": "Πολυμέσα", "HeaderMediaFolders": "Φάκελοι Πολυμέσων", @@ -314,7 +312,6 @@ "HeaderNewApiKey": "Νέο κλειδί API", "HeaderNewDevices": "Νέες Συσκευές", "HeaderNextEpisodePlayingInValue": "Επόμενο επεισόδιο που θα παιχτεί σε {0}", - "HeaderNextUp": "Επόμενο", "HeaderNextVideoPlayingInValue": "Επόμενη αναπαραγωγή βίντεο σε {0}", "HeaderOnNow": "Τώρα", "HeaderOtherItems": "Άλλα Στοιχεία", @@ -343,12 +340,10 @@ "HeaderRevisionHistory": "Ιστορικό αναθεωρήσεων", "HeaderRunningTasks": "Προγραμματισμένες Εργασίες", "HeaderScenes": "Σκηνές", - "HeaderSchedule": "Πρόγραμμα", "HeaderSeasons": "Κύκλοι", "HeaderSecondsValue": "{0} δευτερόλεπτα", "HeaderSelectServer": "Επιλογή Διακομιστή", "HeaderSendMessage": "Αποστολή Μηνύματος", - "HeaderSeries": "Σειρές", "HeaderSeriesOptions": "Επιλογές Σειρών", "HeaderSeriesStatus": "Κατάσταση Σειράς", "HeaderServerSettings": "Ρυθμίσεις διακομιστή", @@ -827,7 +822,6 @@ "OptionEveryday": "Κάθε μέρα", "OptionExternallyDownloaded": "Εξωτερική λήψη", "OptionFavorite": "Αγαπημένα", - "OptionFriday": "Παρασκευή", "OptionHasSpecialFeatures": "Ειδικά Χαρακτηριστικά", "OptionHasSubtitles": "Υπότιτλοι", "OptionHasThemeSong": "Θεματικό Τραγούδι", @@ -840,11 +834,9 @@ "OptionLikes": "Συμπαθεί", "OptionMax": "Μέγιστο", "OptionMissingEpisode": "Ελλειπή Επεισόδια", - "OptionMonday": "Δευτέρα", "OptionNameSort": "Όνομα", "OptionNew": "Νέο...", "OptionNone": "Κανένα", - "OptionOnAppStartup": "Κατά την εκκίνηση της εφαρμογής", "OptionOnInterval": "Σε ένα διάστημα", "OptionParentalRating": "Αξιολόγηση γονέων", "OptionPlainStorageFolders": "Εμφάνιση όλων των φακέλων ως φακέλων απλού χώρου αποθήκευσης", @@ -858,18 +850,13 @@ "OptionProfileVideo": "Βίντεο", "OptionReleaseDate": "Ημερομηνία Προβολής", "OptionResumable": "Αναληπτέος", - "OptionSaturday": "Σάββατο", "OptionSaveMetadataAsHidden": "Αποθηκεύστε τα μεταδεδομένα και τις εικόνες ως κρυφά αρχεία", "OptionSubstring": "Υποσύνολο", - "OptionSunday": "Κυρ", - "OptionThursday": "Πέμπτη", "OptionTrackName": "Όνομα Αρχείου", - "OptionTuesday": "Τρίτη", "OptionTvdbRating": "Tvdb Βαθμολογία", "OptionUnairedEpisode": "Επεισόδια που δεν προβλήθηκαν", "OptionUnplayed": "Δεν παίχθηκε", "OptionWakeFromSleep": "Επανεργοποιήση", - "OptionWednesday": "Τετάρτη", "OptionWeekdays": "Καθημερινές", "OptionWeekends": "Σαββατοκύριακα", "OptionWeekly": "Εβδομαδιαία", @@ -1010,21 +997,16 @@ "TabNotifications": "Ειδοποιήσεις", "TabOther": "Άλλα", "TabParentalControl": "Γονικός έλεγχος", - "TabPassword": "Κωδικός", - "TabPlaylists": "Λίστες αναπαραγωγής", "TabPlugins": "Πρόσθετα", "TabProfile": "Προφίλ", "TabProfiles": "Προφίλ", - "TabRecordings": "Εγγραφές", "TabResponses": "Απαντήσεις", "TabScheduledTasks": "Προγραμματισμένες Εργασίες", - "TabSeries": "Σειρές", "TabServer": "Διακομιστής", "TabSettings": "Ρυθμισεις", "TabStreaming": "Ροή", "TabTrailers": "Τρέιλερς", "TabUpcoming": "Επερχόμενα", - "TabUsers": "Χρήστες", "Tags": "Ετικέτες", "TagsValue": "Ετικέτες: {0}", "TellUsAboutYourself": "Πείτε μας για εσάς", @@ -1098,7 +1080,6 @@ "HeaderSelectMetadataPath": "Επιλέξτε Διαδρομή Μεταδεδομένων", "HeaderSelectCertificatePath": "Επιλέξτε Διαδρομή Πιστοποιητικού", "HeaderRemoveMediaFolder": "Αφαίρεση Φακέλου Μέσων", - "HeaderPeople": "Πρόσωπα", "HeaderIdentification": "Ταυτοποίηση", "HeaderHome": "Αρχική", "HeaderGuideProviders": "Πάροχοι Δεδομένων Προγράμματος Τηλεόρασης", diff --git a/src/strings/en-gb.json b/src/strings/en-gb.json index 2714f21147..023475923e 100644 --- a/src/strings/en-gb.json +++ b/src/strings/en-gb.json @@ -39,8 +39,6 @@ "Genres": "Genres", "HeaderAlbumArtists": "Album Artists", "HeaderContinueWatching": "Continue Watching", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Next Up", "Movies": "Movies", "Photos": "Photos", "Playlists": "Playlists", @@ -382,7 +380,6 @@ "HeaderLibraryFolders": "Library Folders", "HeaderLibraryOrder": "Library Order", "HeaderLibrarySettings": "Library Settings", - "HeaderLiveTv": "Live TV", "HeaderLiveTvTunerSetup": "Live TV Tuner Setup", "HeaderLoginFailure": "Login Failure", "HeaderMedia": "Media", @@ -445,11 +442,9 @@ "TheseSettingsAffectSubtitlesOnThisDevice": "These settings affect subtitles on this device", "TabSettings": "Settings", "TabServer": "Server", - "TabSeries": "Series", "TabScheduledTasks": "Scheduled Tasks", "TabResumeSettings": "Resume", "TabResponses": "Responses", - "TabRecordings": "Recordings", "TabOther": "Other", "TabNotifications": "Notifications", "TabNetworks": "Networks", @@ -570,20 +565,16 @@ "OptionWeekly": "Weekly", "OptionWeekends": "Weekends", "OptionWeekdays": "Weekdays", - "OptionWednesday": "Wednesday", "OptionWakeFromSleep": "Wake from sleep", "OptionUnplayed": "Unplayed", "OptionUnairedEpisode": "Unaired Episodes", "OptionTrackName": "Track Name", "OptionThumbCard": "Thumb card", "OptionThumb": "Thumb", - "OptionThursday": "Thursday", - "OptionSunday": "Sunday", "OptionSubstring": "Substring", "OptionSpecialEpisode": "Specials", "OptionSaveMetadataAsHiddenHelp": "Changing this will apply to new metadata saved going forward. Existing metadata files will be updated the next time they are saved by Jellyfin Server.", "OptionSaveMetadataAsHidden": "Save metadata and images as hidden files", - "OptionSaturday": "Saturday", "OptionRuntime": "Runtime", "OptionResumable": "Resumable", "OptionResElement": "res element", @@ -601,7 +592,6 @@ "OptionPlainStorageFoldersHelp": "If enabled, all folders are represented in DIDL as \"object.container.storageFolder\" instead of a more specific type, such as \"object.container.person.musicArtist\".", "OptionParentalRating": "Parental Rating", "OptionOnInterval": "On an interval", - "OptionOnAppStartup": "On application startup", "OptionNone": "None", "OptionNew": "New…", "OptionMissingEpisode": "Missing Episodes", @@ -885,7 +875,6 @@ "TellUsAboutYourself": "Tell us about yourself", "TagsValue": "Tags: {0}", "Tags": "Tags", - "TabUsers": "Users", "TabUpcoming": "Upcoming", "TabTrailers": "Trailers", "LabelDisplayMode": "Display mode:", @@ -898,10 +887,8 @@ "TabProfiles": "Profiles", "TabProfile": "Profile", "TabPlugins": "Plugins", - "TabPlaylists": "Playlists", "TabNfoSettings": "NFO Settings", "TabNetworking": "Networking", - "TabLiveTV": "Live TV", "TabLatest": "Latest", "TabInfo": "Info", "TabEpisodes": "Episodes", @@ -1217,7 +1204,6 @@ "OptionHasThemeSong": "Theme Song", "OptionHasSubtitles": "Subtitles", "OptionHasSpecialFeatures": "Special Features", - "OptionFriday": "Friday", "OptionExtractChapterImage": "Enable chapter image extraction", "OptionExternallyDownloaded": "External download", "OptionEquals": "Equals", @@ -1269,13 +1255,11 @@ "ValueOneMovie": "1 movie", "ValueOneEpisode": "1 episode", "ValueEpisodeCount": "{0} episodes", - "TabPassword": "Password", "TabParentalControl": "Parental Control", "SkipEpisodesAlreadyInMyLibraryHelp": "Episodes will be compared using season and episode numbers, when available.", "RefreshQueued": "Refresh queued.", "Play": "Play", "PasswordResetProviderHelp": "Choose a Password Reset Provider to be used when this user requests a password reset", - "OptionTuesday": "Tuesday", "OptionReleaseDate": "Release Date", "OptionDisplayFolderViewHelp": "Display folders alongside your other media libraries. This can be useful if you'd like to have a plain folder view.", "OptionDislikes": "Dislikes", @@ -1315,7 +1299,6 @@ "Save": "Save", "People": "People", "OptionNameSort": "Name", - "OptionMonday": "Monday", "MusicAlbum": "Music Album", "MessageNoCollectionsAvailable": "Collections allow you to enjoy personalized groupings of Movies, Series, and Albums. Click the + button to start creating collections.", "ShowTitle": "Show title", @@ -1331,7 +1314,6 @@ "HeaderServerSettings": "Server Settings", "HeaderSeriesStatus": "Series Status", "HeaderSeriesOptions": "Series Options", - "HeaderSeries": "Series", "HeaderSendMessage": "Send Message", "HeaderSelectTranscodingPathHelp": "Browse or enter the path to use for transcoding temporary files. The folder must be writeable.", "HeaderSubtitleDownloads": "Subtitle Downloads", @@ -1345,7 +1327,6 @@ "HeaderSelectCertificatePath": "Select Certificate Path", "HeaderSecondsValue": "{0} Seconds", "HeaderSeasons": "Seasons", - "HeaderSchedule": "Schedule", "HeaderScenes": "Scenes", "HeaderRunningTasks": "Running Tasks", "HeaderRevisionHistory": "Revision History", @@ -1369,7 +1350,6 @@ "HeaderPlayAll": "Play All", "HeaderPinCodeReset": "Reset Pin Code", "HeaderPhotoAlbums": "Photo Albums", - "HeaderPeople": "People", "HeaderHome": "Home", "HeaderFavoritePeople": "Favourite People", "FetchingData": "Fetching additional data", diff --git a/src/strings/en-us.json b/src/strings/en-us.json index 355ef9c96c..0f37014b76 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -379,8 +379,6 @@ "HeaderLibraryFolders": "Library Folders", "HeaderLibraryOrder": "Library Order", "HeaderLibrarySettings": "Library Settings", - "HeaderLiveTV": "Live TV", - "HeaderLiveTv": "Live TV", "HeaderLiveTvTunerSetup": "Live TV Tuner Setup", "HeaderLoginFailure": "Login Failure", "HeaderMedia": "Media", @@ -397,7 +395,6 @@ "HeaderNewApiKey": "New API Key", "HeaderNewDevices": "New Devices", "HeaderNextEpisodePlayingInValue": "Next Episode Playing in {0}", - "HeaderNextUp": "Next Up", "HeaderNextVideoPlayingInValue": "Next Video Playing in {0}", "HeaderOnNow": "On Now", "HeaderOtherItems": "Other Items", @@ -405,7 +402,6 @@ "HeaderPassword": "Password", "HeaderPasswordReset": "Password Reset", "HeaderPaths": "Paths", - "HeaderPeople": "People", "HeaderPhotoAlbums": "Photo Albums", "HeaderPinCodeReset": "Reset Pin Code", "HeaderPlayAll": "Play All", @@ -431,7 +427,6 @@ "HeaderRevisionHistory": "Revision History", "HeaderRunningTasks": "Running Tasks", "HeaderScenes": "Scenes", - "HeaderSchedule": "Schedule", "HeaderSeasons": "Seasons", "HeaderSecondsValue": "{0} Seconds", "HeaderSelectCertificatePath": "Select Certificate Path", @@ -444,7 +439,6 @@ "HeaderSelectTranscodingPath": "Select Transcoding Temporary Path", "HeaderSelectTranscodingPathHelp": "Browse or enter the path to use for transcode files. The folder must be writeable.", "HeaderSendMessage": "Send Message", - "HeaderSeries": "Series", "HeaderSeriesOptions": "Series Options", "HeaderSeriesStatus": "Series Status", "HeaderServerAddressSettings": "Server Address Settings", @@ -1139,7 +1133,6 @@ "OptionExternallyDownloaded": "External download", "OptionExtractChapterImage": "Enable chapter image extraction", "OptionFavorite": "Favorites", - "OptionFriday": "Friday", "OptionHasSpecialFeatures": "Special Features", "OptionHasSubtitles": "Subtitles", "OptionHasThemeSong": "Theme Song", @@ -1160,11 +1153,9 @@ "OptionLoginAttemptsBeforeLockoutHelp": "A value of zero means inheriting the default of three attempts for normal users and five for administrators. Setting this to -1 will disable the feature.", "OptionMax": "Max", "OptionMissingEpisode": "Missing Episodes", - "OptionMonday": "Monday", "OptionNameSort": "Name", "OptionNew": "New…", "OptionNone": "None", - "OptionOnAppStartup": "On application startup", "OptionOnInterval": "On an interval", "OptionParentalRating": "Parental Rating", "OptionPlainStorageFolders": "Display all folders as plain storage folders", @@ -1192,22 +1183,17 @@ "OptionResElement": "res element", "OptionResumable": "Resumable", "OptionRuntime": "Runtime", - "OptionSaturday": "Saturday", "OptionSaveMetadataAsHidden": "Save metadata and images as hidden files", "OptionSaveMetadataAsHiddenHelp": "Changing this will apply to new metadata saved going forward. Existing metadata files will be updated the next time they are saved by the server.", "OptionSpecialEpisode": "Specials", "OptionSubstring": "Substring", - "OptionSunday": "Sunday", - "OptionThursday": "Thursday", "OptionThumb": "Thumb", "OptionThumbCard": "Thumb card", "OptionTrackName": "Track Name", - "OptionTuesday": "Tuesday", "OptionTvdbRating": "TVDB Rating", "OptionUnairedEpisode": "Unaired Episodes", "OptionUnplayed": "Unplayed", "OptionWakeFromSleep": "Wake from sleep", - "OptionWednesday": "Wednesday", "OptionWeekdays": "Weekdays", "OptionWeekends": "Weekends", "OptionWeekly": "Weekly", @@ -1374,7 +1360,6 @@ "TabEpisodes": "Episodes", "TabInfo": "Info", "TabLatest": "Latest", - "TabLiveTV": "Live TV", "TabLogs": "Logs", "TabMusic": "Music", "TabMusicVideos": "Music Videos", @@ -1385,22 +1370,17 @@ "TabNotifications": "Notifications", "TabOther": "Other", "TabParentalControl": "Parental Control", - "TabPassword": "Password", - "TabPlaylists": "Playlists", "TabPlugins": "Plugins", "TabProfile": "Profile", "TabProfiles": "Profiles", - "TabRecordings": "Recordings", "TabResponses": "Responses", "TabResumeSettings": "Resume", "TabScheduledTasks": "Scheduled Tasks", - "TabSeries": "Series", "TabServer": "Server", "TabSettings": "Settings", "TabStreaming": "Streaming", "TabTrailers": "Trailers", "TabUpcoming": "Upcoming", - "TabUsers": "Users", "Tags": "Tags", "TagsValue": "Tags: {0}", "TellUsAboutYourself": "Tell us about yourself", diff --git a/src/strings/es-ar.json b/src/strings/es-ar.json index 0ae3654a9b..3ff15ab72b 100644 --- a/src/strings/es-ar.json +++ b/src/strings/es-ar.json @@ -5,8 +5,6 @@ "FolderTypeTvShows": "TV", "HeaderAddUser": "Agregar Usuario", "HeaderLatestEpisodes": "Últimos capítulos", - "HeaderLiveTV": "TV en vivo", - "HeaderSeries": "Series", "LabelDisplayMissingEpisodesWithinSeasons": "Mostrar capítulos no disponibles en temporadas", "LabelFinish": "Terminar", "LabelYoureDone": "Ha terminado!", @@ -35,7 +33,6 @@ "Genres": "Géneros", "HeaderAlbumArtists": "Artistas de álbum", "HeaderContinueWatching": "Seguir viendo", - "HeaderNextUp": "Siguiente", "Movies": "Películas", "Photos": "Fotos", "Playlists": "Listas de reproducción", @@ -373,7 +370,6 @@ "HeaderMedia": "Medios", "HeaderLoginFailure": "Error al iniciar sesión", "HeaderLiveTvTunerSetup": "Configuración del sintonizador de TV en vivo", - "HeaderLiveTv": "TV en vivo", "HeaderLibrarySettings": "Configuraciones de biblioteca", "HeaderLibraryOrder": "Orden de biblioteca", "HeaderLibraryFolders": "Carpetas de biblioteca", @@ -410,7 +406,6 @@ "HeaderPlayAll": "Reproducir todo", "HeaderPinCodeReset": "Restablecer código PIN", "HeaderPhotoAlbums": "Álbumes de fotos", - "HeaderPeople": "Personas", "HeaderPaths": "Rutas", "HeaderPasswordReset": "Restablecer contraseña", "HeaderPassword": "Contraseña", @@ -493,7 +488,6 @@ "HeaderSelectCertificatePath": "Seleccionar ruta del certificado", "HeaderSecondsValue": "{0} segundos", "HeaderSeasons": "Temporadas", - "HeaderSchedule": "Programación", "HeaderScenes": "Escenas", "HeaderRunningTasks": "Ejecución de tareas", "HeaderRevisionHistory": "Revisión histórica", @@ -1213,21 +1207,16 @@ "OptionWeekly": "Semanal", "OptionWeekends": "Fines de semana", "OptionWeekdays": "Días de la semana", - "OptionWednesday": "Miércoles", "OptionWakeFromSleep": "Despertarse del sueño", "OptionUnplayed": "No reproducido", "OptionTvdbRating": "Calificación de TVDB", - "OptionTuesday": "Martes", "OptionTrackName": "Nombre de la pista", "OptionThumbCard": "Tarjeta del pulgar", "OptionThumb": "Pulgar", - "OptionThursday": "Jueves", - "OptionSunday": "Domingo", "OptionSubstring": "Subcadena", "OptionSpecialEpisode": "Especiales", "OptionSaveMetadataAsHiddenHelp": "Cambiar esto se aplicará a los nuevos metadatos guardados en el futuro. Los archivos de metadatos existentes se actualizarán la próxima vez que el servidor Jellyfin los guarde.", "OptionSaveMetadataAsHidden": "Guardar metadatos e imágenes como archivos ocultos", - "OptionSaturday": "Sábado", "OptionRuntime": "Tiempo de ejecución", "OptionResumable": "Reanudable", "OptionResElement": "elemento res", @@ -1255,11 +1244,9 @@ "OptionPlainStorageFolders": "Mostrar todas las carpetas como carpetas de almacenamiento sin formato", "OptionParentalRating": "Calificación parental", "OptionOnInterval": "En un intervalo", - "OptionOnAppStartup": "En el inicio de la aplicación", "OptionNone": "Ninguno", "OptionNew": "Nuevo…", "OptionNameSort": "Nombre", - "OptionMonday": "Lunes", "OptionMax": "Máx.", "OptionLoginAttemptsBeforeLockoutHelp": "Un valor de cero significa heredar el valor predeterminado de tres intentos para usuarios normales y cinco para administradores. Establecer esto en -1 deshabilitará la función.", "OptionLoginAttemptsBeforeLockout": "Determina cuántos intentos de inicio de sesión incorrectos se pueden realizar antes de que ocurra el bloqueo.", @@ -1279,7 +1266,6 @@ "OptionHasThemeSong": "Tema musical", "OptionHasSubtitles": "Subtítulos", "OptionHasSpecialFeatures": "Características especiales", - "OptionFriday": "Viernes", "OptionFavorite": "Favoritos", "OptionExtractChapterImage": "Habilitar la extracción de imágenes de capítulos", "OptionExternallyDownloaded": "Descarga externa", @@ -1372,7 +1358,6 @@ "ThemeSongs": "Canciones temáticas", "TagsValue": "Etiquetas: {0}", "Tags": "Etiquetas", - "TabUsers": "Usuarios", "TabUpcoming": "Próximamente", "MarkUnplayed": "Marcar no reproducido", "MarkPlayed": "Marcar reproducido", @@ -1382,16 +1367,12 @@ "TabStreaming": "Transmisión", "TabSettings": "Configuraciones", "TabServer": "Servidor", - "TabSeries": "Series", "TabScheduledTasks": "Tareas programadas", "TabResumeSettings": "Continuar", "TabResponses": "Respuestas", - "TabRecordings": "Grabaciones", "TabProfiles": "Perfiles", "TabProfile": "Perfil", "TabPlugins": "Complementos", - "TabPlaylists": "Listas de reproducción", - "TabPassword": "Contraseña", "TabParentalControl": "Control parental", "TabOther": "Otro", "TabNotifications": "Notificaciones", @@ -1402,7 +1383,6 @@ "TabMusicVideos": "Videos musicales", "TabMusic": "Música", "TabLogs": "Registros", - "TabLiveTV": "TV en vivo", "TabLatest": "Último", "TabInfo": "Información", "TabDirectPlay": "Reproducción directa", diff --git a/src/strings/es-mx.json b/src/strings/es-mx.json index e682b2f4cb..c7669c4429 100644 --- a/src/strings/es-mx.json +++ b/src/strings/es-mx.json @@ -332,8 +332,6 @@ "HeaderLibraryFolders": "Carpetas de bibliotecas", "HeaderLibraryOrder": "Orden de las bibliotecas", "HeaderLibrarySettings": "Configuraciones de biblioteca", - "HeaderLiveTV": "TV en vivo", - "HeaderLiveTv": "TV en vivo", "HeaderLiveTvTunerSetup": "Configuración del sintonizador de TV", "HeaderLoginFailure": "Falló el inicio de sesión", "HeaderMedia": "Medios", @@ -349,7 +347,6 @@ "HeaderNewApiKey": "Nueva clave API", "HeaderNewDevices": "Nuevos dispositivos", "HeaderNextEpisodePlayingInValue": "El siguiente episodio se reproducirá en {0}", - "HeaderNextUp": "A continuación", "HeaderNextVideoPlayingInValue": "El siguiente video se reproducirá en {0}", "HeaderOnNow": "Transmitiendo ahora", "HeaderOtherItems": "Otros elementos", @@ -357,7 +354,6 @@ "HeaderPassword": "Contraseña", "HeaderPasswordReset": "Restablecer contraseña", "HeaderPaths": "Rutas", - "HeaderPeople": "Personas", "HeaderPhotoAlbums": "Álbumes de fotos", "HeaderPinCodeReset": "Restablecer código PIN", "HeaderPlayAll": "Reproducir todo", @@ -382,7 +378,6 @@ "HeaderRevisionHistory": "Historial de versiones", "HeaderRunningTasks": "Tareas en ejecución", "HeaderScenes": "Escenas", - "HeaderSchedule": "Programación", "HeaderSeasons": "Temporadas", "HeaderSecondsValue": "{0} segundos", "HeaderSelectCertificatePath": "Selecciona la ruta del certificado", @@ -395,7 +390,6 @@ "HeaderSelectTranscodingPath": "Selecciona la ruta para los archivos temporales de transcodificación", "HeaderSelectTranscodingPathHelp": "Explora o introduce la ruta a utilizar para los archivos temporales de transcodificación. Se debe tener permisos de escritura en dicha carpeta.", "HeaderSendMessage": "Enviar mensaje", - "HeaderSeries": "Series", "HeaderSeriesOptions": "Opciones de serie", "HeaderSeriesStatus": "Estado de la serie", "HeaderServerSettings": "Configuración del servidor", @@ -973,7 +967,6 @@ "OptionExternallyDownloaded": "Descarga externa", "OptionExtractChapterImage": "Habilitar la extracción de imágenes de los capítulos", "OptionFavorite": "Favoritos", - "OptionFriday": "Viernes", "OptionHasSpecialFeatures": "Características especiales", "OptionHasSubtitles": "Subtítulos", "OptionHasThemeSong": "Canción temática", @@ -989,11 +982,9 @@ "OptionLikes": "Me gusta", "OptionMax": "Máximo", "OptionMissingEpisode": "Episodios faltantes", - "OptionMonday": "Lunes", "OptionNameSort": "Nombre", "OptionNew": "Nuevo…", "OptionNone": "Ninguno", - "OptionOnAppStartup": "Al iniciar la aplicación", "OptionOnInterval": "En un intervalo", "OptionParentalRating": "Clasificación parental", "OptionPlainStorageFolders": "Mostrar todas las carpetas como carpetas de almacenamiento simples", @@ -1014,20 +1005,15 @@ "OptionResElement": "Elemento res", "OptionResumable": "Reanudable", "OptionRuntime": "Duración", - "OptionSaturday": "Sábado", "OptionSaveMetadataAsHidden": "Guardar metadatos e imágenes como archivos ocultos", "OptionSaveMetadataAsHiddenHelp": "Cambiar esto se aplicará a los nuevos metadatos guardados en el futuro. Los archivos de metadatos existentes serán actualizados la próxima vez que sean guardados por el servidor Jellyfin.", "OptionSpecialEpisode": "Especiales", "OptionSubstring": "Subcadena", - "OptionSunday": "Domingo", - "OptionThursday": "Jueves", "OptionTrackName": "Nombre de la pista", - "OptionTuesday": "Martes", "OptionTvdbRating": "Calificación de TVDB", "OptionUnairedEpisode": "Episodios no emitidos", "OptionUnplayed": "No reproducido", "OptionWakeFromSleep": "Despertar de la suspensión", - "OptionWednesday": "Miércoles", "OptionWeekdays": "Días de semana", "OptionWeekends": "Fines de semana", "OptionWeekly": "Semanal", @@ -1171,7 +1157,6 @@ "TabDirectPlay": "Reproducción directa", "TabEpisodes": "Episodios", "TabLatest": "Recientes", - "TabLiveTV": "TV en vivo", "TabLogs": "Registros", "TabMusic": "Música", "TabMusicVideos": "Videos musicales", @@ -1181,12 +1166,9 @@ "TabNotifications": "Notificaciones", "TabOther": "Otros", "TabParentalControl": "Control parental", - "TabPassword": "Contraseña", - "TabPlaylists": "Listas de reproducción", "TabPlugins": "Complementos", "TabProfile": "Perfil", "TabProfiles": "Perfiles", - "TabRecordings": "Grabaciones", "TabResponses": "Respuestas", "TabResumeSettings": "Reanudar", "TabScheduledTasks": "Tareas programadas", @@ -1195,7 +1177,6 @@ "TabStreaming": "Transmisión", "TabTrailers": "Trailers", "TabUpcoming": "Próximamente", - "TabUsers": "Usuarios", "Tags": "Etiquetas", "TagsValue": "Etiquetas: {0}", "TellUsAboutYourself": "Háblanos de ti", @@ -1337,7 +1318,6 @@ "TV": "TV", "TabCodecs": "Códecs", "TabInfo": "Información", - "TabSeries": "Series", "ValueMinutes": "{0} min", "ValueSeriesCount": "{0} series", "Vertical": "Vertical", diff --git a/src/strings/es.json b/src/strings/es.json index 3bd59126a9..09e5f5fcf4 100644 --- a/src/strings/es.json +++ b/src/strings/es.json @@ -287,8 +287,6 @@ "HeaderLibraryFolders": "Carpetas de la biblioteca", "HeaderLibraryOrder": "Orden de la biblioteca", "HeaderLibrarySettings": "Ajustes de la biblioteca", - "HeaderLiveTV": "Televisión en directo", - "HeaderLiveTv": "Televisión en directo", "HeaderLiveTvTunerSetup": "Ajustes del sintonizador de televisión", "HeaderLoginFailure": "Fallo de inicio de sesión", "HeaderMedia": "Medios", @@ -303,7 +301,6 @@ "HeaderNewApiKey": "Nueva clave API", "HeaderNewDevices": "Nuevos dispositivos", "HeaderNextEpisodePlayingInValue": "Siguiente episodio empezará en {0}", - "HeaderNextUp": "Siguiente", "HeaderNextVideoPlayingInValue": "Siguiente vídeo empezará en {0}", "HeaderOnNow": "Transmitiendo ahora", "HeaderOtherItems": "Otros elementos", @@ -311,7 +308,6 @@ "HeaderPassword": "Contraseña", "HeaderPasswordReset": "Reestablecer contraseña", "HeaderPaths": "Ruta", - "HeaderPeople": "Gente", "HeaderPinCodeReset": "Restablecer código PIN", "HeaderPlayAll": "Reproducir todo", "HeaderPlayOn": "Reproducir en", @@ -335,7 +331,6 @@ "HeaderRevisionHistory": "Histórico de revisiones", "HeaderRunningTasks": "Tareas en ejecución", "HeaderScenes": "Escenas", - "HeaderSchedule": "Horario", "HeaderSeasons": "Temporadas", "HeaderSecondsValue": "{0} segundos", "HeaderSelectCertificatePath": "Elige la ruta del certificado", @@ -348,7 +343,6 @@ "HeaderSelectTranscodingPath": "Ruta para los archivos temporales de las conversiones", "HeaderSelectTranscodingPathHelp": "Busca o escribe la ruta que se utilizará para guardar los archivos que se generarán mientras se convierten los archivos. Jellyfin debe tener permisos de escritura en la carpeta.", "HeaderSendMessage": "Enviar mensaje", - "HeaderSeries": "Series", "HeaderSeriesOptions": "Opciones de series", "HeaderServerSettings": "Ajustes del servidor", "HeaderSettings": "Ajustes", @@ -895,7 +889,6 @@ "OptionExternallyDownloaded": "Descarga externa", "OptionExtractChapterImage": "Habilitar la extracción de imágenes de los capítulos", "OptionFavorite": "Favoritos", - "OptionFriday": "Viernes", "OptionHasSpecialFeatures": "Características especiales", "OptionHasSubtitles": "Subtítulos", "OptionHasThemeSong": "Banda sonora", @@ -910,11 +903,9 @@ "OptionLikes": "Me gusta", "OptionMax": "Máximo", "OptionMissingEpisode": "Episodios que faltan", - "OptionMonday": "Lunes", "OptionNameSort": "Nombre", "OptionNew": "Nuevo…", "OptionNone": "Nada", - "OptionOnAppStartup": "Al iniciar la aplicación", "OptionOnInterval": "En un intervalo", "OptionParentalRating": "Clasificación parental", "OptionPlainStorageFolders": "Ver todas las carpetas como carpetas de almacenamiento sin formato", @@ -935,19 +926,14 @@ "OptionResElement": "Elemento res", "OptionResumable": "Se puede continuar", "OptionRuntime": "Tiempo", - "OptionSaturday": "Sábado", "OptionSaveMetadataAsHidden": "Guardar las etiquetas e imágenes como archivos ocultos", "OptionSaveMetadataAsHiddenHelp": "La configuración se aplicará a las nuevas etiquetas que se creen. Las etiquetas existentes se actualizarán la próxima vez que sean guardadas por Jellyfin.", "OptionSpecialEpisode": "Especiales", - "OptionSunday": "Domingo", - "OptionThursday": "Jueves", "OptionTrackName": "Nombre de pista", - "OptionTuesday": "Martes", "OptionTvdbRating": "Valoración TVDB", "OptionUnairedEpisode": "Episodios no emitidos", "OptionUnplayed": "No reproducido", "OptionWakeFromSleep": "Despertar", - "OptionWednesday": "Miércoles", "OptionWeekdays": "Días de la semana", "OptionWeekends": "Fines de semana", "OptionWeekly": "Semanal", @@ -1075,7 +1061,6 @@ "TabDirectPlay": "Reproducción directa", "TabEpisodes": "Episodios", "TabLatest": "Novedades", - "TabLiveTV": "Televisión en directo", "TabMusic": "Música", "TabMusicVideos": "Videos musicales", "TabMyPlugins": "Mis extensiones", @@ -1084,11 +1069,8 @@ "TabNotifications": "Notificaciones", "TabOther": "Otros", "TabParentalControl": "Control parental", - "TabPassword": "Contraseña", - "TabPlaylists": "Listas de reproducción", "TabProfile": "Perfil", "TabProfiles": "Perfiles", - "TabRecordings": "Grabaciones", "TabResponses": "Respuestas", "TabResumeSettings": "Reanudación", "TabScheduledTasks": "Tareas programadas", @@ -1096,7 +1078,6 @@ "TabSettings": "Opciones", "TabStreaming": "Transmisión", "TabUpcoming": "Próximos", - "TabUsers": "Usuarios", "Tags": "Etiquetas", "TellUsAboutYourself": "Háblenos acerca de usted", "TheseSettingsAffectSubtitlesOnThisDevice": "Estas opciones afectan a los subtítulos en este dispositivo", @@ -1332,7 +1313,6 @@ "TabInfo": "Info", "TabLogs": "Registros", "TabPlugins": "Extensiones", - "TabSeries": "Series", "TabTrailers": "Tráilers", "TagsValue": "Etiquetas: {0}", "ThemeSongs": "Banda sonora", diff --git a/src/strings/es_419.json b/src/strings/es_419.json index 815018e9c3..326ffd5914 100644 --- a/src/strings/es_419.json +++ b/src/strings/es_419.json @@ -6,8 +6,6 @@ "Playlists": "Listas de reproducción", "Photos": "Fotos", "Movies": "Películas", - "HeaderNextUp": "A continuación", - "HeaderLiveTV": "TV en vivo", "HeaderFavoriteSongs": "Canciones favoritas", "HeaderFavoriteShows": "Programas favoritos", "HeaderFavoriteEpisodes": "Episodios favoritos", @@ -130,21 +128,16 @@ "TellUsAboutYourself": "Háblanos de ti", "TagsValue": "Etiquetas: {0}", "Tags": "Etiquetas", - "TabUsers": "Usuarios", "TabUpcoming": "Próximamente", "TabStreaming": "Transmisión", "TabSettings": "Configuración", "TabServer": "Servidor", - "TabSeries": "Series", "TabScheduledTasks": "Tareas programadas", "TabResumeSettings": "Reanudar", "TabResponses": "Respuestas", - "TabRecordings": "Grabaciones", "TabProfiles": "Perfiles", "TabProfile": "Perfil", "TabPlugins": "Complementos", - "TabPlaylists": "Listas de reproducción", - "TabPassword": "Contraseña", "TabParentalControl": "Control parental", "TabOther": "Otros", "TabNotifications": "Notificaciones", @@ -155,7 +148,6 @@ "TabMusicVideos": "Videos musicales", "TabMusic": "Música", "TabLogs": "Registros", - "TabLiveTV": "TV en vivo", "TabInfo": "Información", "TabEpisodes": "Episodios", "TabDirectPlay": "Reproducción directa", @@ -172,11 +164,9 @@ "OptionPlainStorageFolders": "Mostrar todas las carpetas como carpetas de almacenamiento simples", "OptionParentalRating": "Clasificación parental", "OptionOnInterval": "En un intervalo", - "OptionOnAppStartup": "Al iniciar la aplicación", "OptionNone": "Ninguno", "OptionNew": "Nuevo…", "OptionNameSort": "Nombre", - "OptionMonday": "Lunes", "OptionMissingEpisode": "Episodios faltantes", "OptionMax": "Máximo", "OptionLoginAttemptsBeforeLockoutHelp": "Un valor de cero significa heredar el valor predeterminado de tres intentos para los usuarios normales y cinco para los administradores. Ajustar esto a -1 deshabilitará la función.", @@ -197,7 +187,6 @@ "OptionHasThemeSong": "Canción temática", "OptionHasSubtitles": "Subtítulos", "OptionHasSpecialFeatures": "Características especiales", - "OptionFriday": "Viernes", "OptionFavorite": "Favoritos", "OptionExtractChapterImage": "Habilitar la extracción de imágenes de los capítulos", "OptionExternallyDownloaded": "Descarga externa", @@ -611,21 +600,16 @@ "OptionWeekly": "Semanal", "OptionWeekends": "Fines de semana", "OptionWeekdays": "Días de semana", - "OptionWednesday": "Miércoles", "OptionWakeFromSleep": "Despertar de la suspensión", "OptionUnplayed": "No reproducido", "OptionUnairedEpisode": "Episodios no emitidos", "OptionTvdbRating": "Calificación de TVDB", - "OptionTuesday": "Martes", "OptionTrackName": "Nombre de la pista", "OptionThumb": "Miniatura", - "OptionThursday": "Jueves", - "OptionSunday": "Domingo", "OptionSubstring": "Subcadena", "OptionSpecialEpisode": "Especiales", "OptionSaveMetadataAsHiddenHelp": "Cambiar esto se aplicará a los nuevos metadatos guardados en el futuro. Los archivos de metadatos existentes serán actualizados la próxima vez que sean guardados por el servidor Jellyfin.", "OptionSaveMetadataAsHidden": "Guardar metadatos e imágenes como archivos ocultos", - "OptionSaturday": "Sábado", "OptionRuntime": "Duración", "OptionResumable": "Reanudable", "OptionRequirePerfectSubtitleMatchHelp": "Solicitar una coincidencia perfecta filtrará los subtítulos para incluir solo aquellos que han sido probados y verificados exactamente con tu archivo de video. Desmarcar esta opción incrementará las probabilidades de que se descarguen subtítulos, pero incrementará las posibilidades de obtener subtítulos mal sincronizados o con texto incorrecto.", @@ -1021,7 +1005,6 @@ "HeaderSelectCertificatePath": "Selecciona la ruta del certificado", "HeaderSecondsValue": "{0} segundos", "HeaderSeasons": "Temporadas", - "HeaderSchedule": "Programación", "HeaderScenes": "Escenas", "HeaderRunningTasks": "Tareas en ejecución", "HeaderRevisionHistory": "Historial de versiones", @@ -1047,7 +1030,6 @@ "HeaderPlayAll": "Reproducir todo", "HeaderPinCodeReset": "Restablecer código PIN", "HeaderPhotoAlbums": "Álbumes de fotos", - "HeaderPeople": "Personas", "HeaderPaths": "Rutas", "HeaderPasswordReset": "Restablecer contraseña", "HeaderPassword": "Contraseña", @@ -1071,7 +1053,6 @@ "HeaderMedia": "Medios", "HeaderLoginFailure": "Falló el inicio de sesión", "HeaderLiveTvTunerSetup": "Configuración del sintonizador de TV", - "HeaderLiveTv": "TV en vivo", "HeaderLibrarySettings": "Configuraciones de biblioteca", "HeaderLibraryOrder": "Orden de las bibliotecas", "HeaderLibraryFolders": "Carpetas de bibliotecas", @@ -1336,7 +1317,6 @@ "HeaderServerAddressSettings": "Configuración de la dirección del servidor", "HeaderSeriesStatus": "Estado de la serie", "HeaderSeriesOptions": "Opciones de serie", - "HeaderSeries": "Series", "HeaderSendMessage": "Enviar mensaje", "HeaderSelectTranscodingPathHelp": "Explora o escribe la ruta para los archivos de transcodificación. Se tienen que tener permisos de escritura en esa carpeta.", "HeaderSelectTranscodingPath": "Selecciona la ruta para los archivos temporales de transcodificación", diff --git a/src/strings/fa.json b/src/strings/fa.json index a764f28998..61c2f8f26c 100644 --- a/src/strings/fa.json +++ b/src/strings/fa.json @@ -30,7 +30,6 @@ "HeaderInstantMix": "درهم کردن فوری", "HeaderKodiMetadataHelp": "برای فعال یا غیرفعال سازی ابرداده‌های Nfo ، یک کتابخانه را در صفحه تنظیم کتابخانه Jellyfin ویرایش کرده و قسمت سرورهای ابرداده را مسیردهی کنید.", "HeaderLatestEpisodes": "آخرین قسمت ها", - "HeaderNextUp": "قسمت بعدی", "HeaderPaths": "مسیرها", "HeaderPlayAll": "پخش همه", "HeaderPreferredMetadataLanguage": "زبان مدنظر اطلاعات محتوی", @@ -86,7 +85,6 @@ "TabMusicVideos": "موزیک ویدیوها", "TabNetworks": "شبکه ها", "TabNotifications": "اعلان ها", - "TabPassword": "رمز عبور", "TabProfile": "پروفایل", "TabProfiles": "پروفایل ها", "TabUpcoming": "بزودی", @@ -109,7 +107,6 @@ "HeaderFavoriteAlbums": "آلبوم‌های مورد علاقه", "HeaderFavoriteArtists": "هنرمندان مورد علاقه", "HeaderFavoriteSongs": "آهنگ‌های مورد علاقه", - "HeaderLiveTV": "پخش زنده", "Movies": "فیلم‌ها", "Photos": "عکس‌ها", "Playlists": "لیست‌های پخش", @@ -292,7 +289,6 @@ "HeaderPlayOn": "پخش در", "HeaderPinCodeReset": "بازنشانی پین کد", "HeaderPhotoAlbums": "آلبوم‌های عکس", - "HeaderPeople": "افراد", "HeaderPasswordReset": "بازنشانی گذرواژه", "HeaderPassword": "گذرواژه", "HeaderParentalRatings": "رتبه بندی والدین", @@ -314,7 +310,6 @@ "HeaderMedia": "رسانه", "HeaderLoginFailure": "ورود ناموفق", "HeaderLiveTvTunerSetup": "تنظیم تلویزیون زنده", - "HeaderLiveTv": "تلویزیون زنده", "HeaderLibrarySettings": "تنظیمات کتابخانه", "HeaderLibraryOrder": "ترتیت کتابخانه", "HeaderLibraryFolders": "پوشه‌های کتابخانه", @@ -428,7 +423,6 @@ "TabMyPlugins": "افزونه‌های من", "TabMusic": "موسیقی‌ها", "TabLogs": "واقعه نگار‌ها", - "TabLiveTV": "تلویزیون زنده", "LatestFromLibrary": "جدیدترین‌های {0}", "Large": "بزرگ", "LabelffmpegPath": "مسیر FFmpeg:", @@ -495,7 +489,6 @@ "ThemeSongs": "آهنگ‌های تم", "TagsValue": "برچسب‌ها: {0}", "Tags": "برچسب‌ها", - "TabUsers": "کاربران", "Absolute": "کامل", "Writer": "نویسنده", "Whitelist": "لیست سفید", @@ -566,12 +559,9 @@ "AdditionalNotificationServices": "برای نصب سرویس‌های اعلان اضافی، در فروشگاه افزونه‌ها جستجو کنید.", "OptionThumbCard": "کارت بندانگشتی", "OptionThumb": "بندانگشتی", - "OptionThursday": "پنجشنبه", - "OptionSunday": "یکشنبه", "OptionSubstring": "زیررشته", "OptionSpecialEpisode": "ویژه‌ها", "OptionSaveMetadataAsHidden": "ذخیره فراداده‌ها و عکس‌ها به عنوان فایل‌های پنهان", - "OptionSaturday": "شنبه", "OptionRuntime": "زمان اجرا", "OptionResumable": "قابل از سرگیری", "OptionResElement": "عنصر res", @@ -617,13 +607,10 @@ "TabStreaming": "در حال پخش", "TabSettings": "تنظیمات", "TabServer": "سرور", - "TabSeries": "سریال‌ها", "TabScheduledTasks": "وظایف زمان بندی شده", "TabResumeSettings": "ادامه", "TabResponses": "پاسخ‌ها", - "TabRecordings": "ضبط‌ها", "TabPlugins": "افزونه‌ها", - "TabPlaylists": "لیست‌های پخش", "TabParentalControl": "رتبه بندی والدین", "TabOther": "سایر", "TabNfoSettings": "تنظیمات NFO", @@ -654,11 +641,9 @@ "OptionWeekly": "هفتگی", "OptionWeekends": "آخر هفته ها", "OptionWeekdays": "روز های هفته", - "OptionWednesday": "چهارشنبه", "OptionWakeFromSleep": "از خواب بیدار شدن", "OptionUnairedEpisode": "قسمت های پخش نشده", "OptionTvdbRating": "نمره TVDB", - "OptionTuesday": "سه شنبه", "OptionTrackName": "نام ترک", "OptionRequirePerfectSubtitleMatchHelp": "نتیجه کامل زیرنویس ها را به صورتی فیلتر می کند که فقط مواردی را که دقیقا با فایل تصویری شما آزمایش و تأیید شده اند ،شامل شود. حذف این گزینه احتمال بارگیری زیرنویس ها را افزایش می دهد ، اما شانس متن زیرنویس ناهماهنگ یا غلط نیز افزایش می یابد.", "ServerNameIsShuttingDown": "سرور جلی فین - {0} در حال خاموش شدن می باشد.", @@ -991,7 +976,6 @@ "OptionEveryday": "Every day", "OptionExternallyDownloaded": "External download", "OptionExtractChapterImage": "Enable chapter image extraction", - "OptionFriday": "Friday", "OptionHasSpecialFeatures": "Special Features", "OptionHasSubtitles": "Subtitles", "OptionHasThemeSong": "Theme Song", @@ -1000,7 +984,6 @@ "OptionHideUser": "Hide this user from login screens", "OptionHideUserFromLoginHelp": "Useful for private or hidden administrator accounts. The user will need to sign in manually by entering their username and password.", "HeaderSendMessage": "Send Message", - "HeaderSeries": "Series", "HeaderSeriesOptions": "Series Options", "HeaderSeriesStatus": "Series Status", "HeaderServerAddressSettings": "Server Address Settings", @@ -1089,11 +1072,9 @@ "OptionLoginAttemptsBeforeLockoutHelp": "A value of zero means inheriting the default of three attempts for normal users and five for administrators. Setting this to -1 will disable the feature.", "OptionMax": "Max", "OptionMissingEpisode": "Missing Episodes", - "OptionMonday": "Monday", "OptionNameSort": "Name", "OptionNew": "New…", "OptionNone": "None", - "OptionOnAppStartup": "On application startup", "LabelMaxResumePercentageHelp": "Titles are assumed fully played if stopped after this time.", "LabelMaxScreenshotsPerItem": "Maximum number of screenshots per item:", "LabelMaxStreamingBitrate": "Maximum streaming quality:", @@ -1224,7 +1205,6 @@ "HeaderRevisionHistory": "Revision History", "HeaderRunningTasks": "Running Tasks", "HeaderScenes": "Scenes", - "HeaderSchedule": "Schedule", "HeaderSeasons": "Seasons", "HeaderSecondsValue": "{0} Seconds", "HeaderSelectCertificatePath": "Select Certificate Path", diff --git a/src/strings/fi.json b/src/strings/fi.json index 3b17554efc..7eddf8e17f 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -13,7 +13,6 @@ "FileReadCancelled": "Tiedoston luku on peruutettu.", "FileReadError": "Virhe tiedoston luvun aikana.", "FolderTypeTvShows": "TV-sarjat", - "HeaderSeries": "Sarjat", "LabelAudioLanguagePreference": "Äänen ensisijainen kieli:", "LabelCountry": "Maa:", "LabelCurrentPassword": "Tämän hetkinen salsana:", @@ -36,7 +35,6 @@ "PasswordSaved": "Salasana tallennettu.", "Save": "Tallenna", "SettingsSaved": "Asetukset tallennettu.", - "TabPassword": "Salasana", "TabProfile": "Profiili", "TabProfiles": "Profiilit", "TellUsAboutYourself": "Kerro meille itsestäsi", @@ -217,8 +215,6 @@ "CopyStreamURL": "Kopioi Toiston Osoite", "ButtonAddImage": "Lisää kuva", "Movies": "Elokuvat", - "HeaderNextUp": "Seuraavaksi", - "HeaderLiveTV": "Live-TV", "HeaderFavoriteSongs": "Lempikappaleet", "HeaderFavoriteShows": "Lempisarjat", "HeaderFavoriteEpisodes": "Lempijaksot", @@ -306,10 +302,8 @@ "OptionPoster": "Juliste", "OptionPlayCount": "Toistokerrat", "OptionPlayed": "Toistettu", - "OptionOnAppStartup": "Käynnistyksen yhteydessä", "OptionNew": "Uusi…", "OptionNameSort": "Nimi", - "OptionMonday": "Maanantai", "OptionMissingEpisode": "Puuttuvat jaksot", "OptionMax": "Maksimi", "OptionList": "Lista", @@ -324,7 +318,6 @@ "OptionHasThemeSong": "Tunnuskappale", "OptionHasSubtitles": "Tekstitykset", "OptionHasSpecialFeatures": "Erikoisominaisuudet", - "OptionFriday": "Perjantai", "OptionFavorite": "Suosikit", "OptionExtractChapterImage": "Ota käyttöön kappalekuvien luonti", "OptionExternallyDownloaded": "Ulkoinen lataus", @@ -419,7 +412,6 @@ "HeaderSeriesStatus": "Sarjan status", "HeaderSeriesOptions": "Sarjan asetukset", "HeaderSelectTranscodingPath": "Valitse transkoodauksen väliaikainen polku", - "HeaderSchedule": "Ajastus", "HeaderScenes": "Kohtaukset", "HeaderResponseProfile": "Vastausprofiili", "HeaderRemoveMediaLocation": "Poista mediasijainti", @@ -489,7 +481,6 @@ "HeaderMediaInfo": "Mediainfo", "HeaderMediaFolders": "Mediakansiot", "HeaderMedia": "Media", - "HeaderLiveTv": "Live-TV", "HeaderLibraryFolders": "Kirjaston kansiot", "HeaderLatestMedia": "Uusin media", "HeaderLatestRecordings": "Uusimmat tallenteet", @@ -641,24 +632,19 @@ "ThemeSongs": "Tunnuslaulut", "TagsValue": "Tunnisteet: {0}", "Tags": "Tunnisteet", - "TabUsers": "Käyttäjät", "TabUpcoming": "Tulevat", "TabSettings": "Asetukset", "TabServer": "Palvelin", - "TabSeries": "Sarjat", "TabScheduledTasks": "Ajastetut tehtävät", "TabResumeSettings": "Jatka", "TabResponses": "Vastaukset", - "TabRecordings": "Tallennukset", "TabPlugins": "Liitännäiset", - "TabPlaylists": "Soittolistat", "TabNfoSettings": "NFO-asetukset", "TabNetworks": "Verkot", "TabMyPlugins": "Omat liittännäiseni", "TabMusicVideos": "Musiikkivideot", "TabMusic": "Musiikki", "TabLogs": "Lokit", - "TabLiveTV": "Live-TV", "TabLatest": "Uusimmat", "TabInfo": "Tiedot", "TabEpisodes": "Jaksot", @@ -870,7 +856,6 @@ "HeaderRestart": "Uudelleenkäynnistys", "HeaderProfile": "Profiili", "HeaderPlayAll": "Toista kaikki", - "HeaderPeople": "Ihmiset", "HeaderPassword": "Salasana", "HeaderNewApiKey": "Uusi API-avain", "HeaderNavigation": "Navigaatio", @@ -946,11 +931,6 @@ "LabelContentType": "Sisältötyyppi:", "LabelChannels": "Kanavat:", "LabelCertificatePasswordHelp": "Jos sertifikaattisi vaatii salasanaa, laita se tähän.", - "OptionWednesday": "Keskiviikko", - "OptionTuesday": "Tiistai", - "OptionThursday": "Torstai", - "OptionSunday": "Sunnuntai", - "OptionSaturday": "Lauantai", "LabelRuntimeMinutes": "Pituus (minuutteja):", "LabelReleaseDate": "Julkaisupäivä:", "Genre": "Tyylilaji", diff --git a/src/strings/fr-ca.json b/src/strings/fr-ca.json index e7deac36f9..15973b5f36 100644 --- a/src/strings/fr-ca.json +++ b/src/strings/fr-ca.json @@ -23,9 +23,7 @@ "HeaderDeleteItem": "Supprimer l'élément", "HeaderMyMedia": "Mes Médias", "HeaderMyMediaSmall": "Mes médias (petit)", - "HeaderNextUp": "À Suivre", "HeaderRemoteControl": "Télécommande", - "HeaderSeries": "Series:", "Help": "Aide", "ItemCount": "{0} articles", "LabelFinish": "Terminer", @@ -103,7 +101,6 @@ "Folders": "Dossiers", "Genres": "Genres", "HeaderAlbumArtists": "Artistes de l'album", - "HeaderLiveTV": "TV en direct", "Movies": "Films", "Photos": "Photos", "Playlists": "Listes de lecture", diff --git a/src/strings/fr.json b/src/strings/fr.json index 61710fede0..4bab5a6179 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -331,8 +331,6 @@ "HeaderLibraryFolders": "Dossiers de la médiathèque", "HeaderLibraryOrder": "Ordre de la médiathèque", "HeaderLibrarySettings": "Paramètres de la médiathèque", - "HeaderLiveTV": "TV en direct", - "HeaderLiveTv": "TV en direct", "HeaderLiveTvTunerSetup": "Configuration du Tuner TV en direct", "HeaderLoginFailure": "Échec de la connexion", "HeaderMedia": "Média", @@ -348,7 +346,6 @@ "HeaderNewApiKey": "Nouvelle clé API", "HeaderNewDevices": "Nouveaux appareils", "HeaderNextEpisodePlayingInValue": "Lecture du prochain épisode dans {0}", - "HeaderNextUp": "À suivre", "HeaderNextVideoPlayingInValue": "Lecture de la prochaine vidéo dans {0}", "HeaderOnNow": "En ce moment", "HeaderOtherItems": "Autres éléments", @@ -356,7 +353,6 @@ "HeaderPassword": "Mot de passe", "HeaderPasswordReset": "Mot de passe réinitialisé", "HeaderPaths": "Chemins", - "HeaderPeople": "Personnes", "HeaderPhotoAlbums": "Albums photo", "HeaderPinCodeReset": "Réinitialiser le code PIN", "HeaderPlayAll": "Tout lire", @@ -381,7 +377,6 @@ "HeaderRevisionHistory": "Historique des révisions", "HeaderRunningTasks": "Tâches en cours d'exécution", "HeaderScenes": "Scènes", - "HeaderSchedule": "Planning", "HeaderSeasons": "Saisons", "HeaderSecondsValue": "{0} secondes", "HeaderSelectCertificatePath": "Sélectionnez le chemin du certificat", @@ -394,7 +389,6 @@ "HeaderSelectTranscodingPath": "Sélectionner le chemin d'accès du dossier temporaire de transcodage", "HeaderSelectTranscodingPathHelp": "Parcourir ou saisir le chemin d'accès à utiliser pour les fichiers de transcodage. Le dossier doit être accessible en écriture.", "HeaderSendMessage": "Envoyer un message", - "HeaderSeries": "Séries", "HeaderSeriesOptions": "Options de la série", "HeaderSeriesStatus": "Statut de la série", "HeaderServerSettings": "Paramètres du serveur", @@ -970,7 +964,6 @@ "OptionExternallyDownloaded": "Téléchargement externe", "OptionExtractChapterImage": "Activer l'extraction des images de chapitres", "OptionFavorite": "Favoris", - "OptionFriday": "Vendredi", "OptionHasSpecialFeatures": "Bonus", "OptionHasSubtitles": "Sous-titres", "OptionHasThemeSong": "Chanson thème", @@ -986,11 +979,9 @@ "OptionLikes": "Aimés", "OptionMax": "Maximum", "OptionMissingEpisode": "Épisodes manquantes", - "OptionMonday": "Lundi", "OptionNameSort": "Nom", "OptionNew": "Nouveau…", "OptionNone": "Aucun", - "OptionOnAppStartup": "Au démarrage de l'application", "OptionOnInterval": "Par intervalle", "OptionParentalRating": "Classification parentale", "OptionPlainStorageFolders": "Afficher tous les dossiers en tant que simples dossiers de stockage", @@ -1011,20 +1002,15 @@ "OptionResElement": "Résolution d'élément", "OptionResumable": "Reprise possible", "OptionRuntime": "Durée", - "OptionSaturday": "Samedi", "OptionSaveMetadataAsHidden": "Enregistrer les métadonnées et les images en tant que fichier cachés", "OptionSaveMetadataAsHiddenHelp": "La modification s'appliquera aux nouvelles métadonnées enregistrées à l'avenir. Les fichiers de métadonnées existants seront mis à jour la prochaine fois qu'ils seront enregistrés par le serveur.", "OptionSpecialEpisode": "Spéciaux", "OptionSubstring": "Sous-chaîne", - "OptionSunday": "Dimanche", - "OptionThursday": "Jeudi", "OptionTrackName": "Titre", - "OptionTuesday": "Mardi", "OptionTvdbRating": "Note d'évaluation TVDB", "OptionUnairedEpisode": "Épisodes non diffusés", "OptionUnplayed": "Non lu", "OptionWakeFromSleep": "Sortie de veille", - "OptionWednesday": "Mercredi", "OptionWeekdays": "Jours de la semaine", "OptionWeekends": "Week-ends", "OptionWeekly": "Hebdomadaire", @@ -1164,7 +1150,6 @@ "TabDirectPlay": "Lecture directe", "TabEpisodes": "Épisodes", "TabLatest": "Derniers", - "TabLiveTV": "TV en direct", "TabLogs": "Journaux", "TabMusic": "Musique", "TabMusicVideos": "Vidéos musicales", @@ -1173,20 +1158,15 @@ "TabNfoSettings": "Paramètres NFO", "TabOther": "Autre", "TabParentalControl": "Contrôle Parental", - "TabPassword": "Mot de passe", - "TabPlaylists": "Listes de lecture", "TabProfile": "Profil", "TabProfiles": "Profils", - "TabRecordings": "Enregistrements", "TabResponses": "Réponses", "TabResumeSettings": "Reprise", "TabScheduledTasks": "Tâches planifiées", - "TabSeries": "Séries", "TabServer": "Serveur", "TabSettings": "Paramètres", "TabTrailers": "Bandes-annonces", "TabUpcoming": "À venir", - "TabUsers": "Utilisateurs", "Tags": "Étiquettes", "TagsValue": "Mots clés: {0}", "TellUsAboutYourself": "Parlez-nous de vous", diff --git a/src/strings/gsw.json b/src/strings/gsw.json index 1b23cb29b1..f144e1ca65 100644 --- a/src/strings/gsw.json +++ b/src/strings/gsw.json @@ -21,10 +21,8 @@ "HeaderFrequentlyPlayed": "Vell gspellt", "HeaderLatestEpisodes": "Letschti Episode", "HeaderLatestMovies": "Letschti Film", - "HeaderNextUp": "Als Nächstes", "HeaderPaths": "Pfad", "HeaderRecentlyPlayed": "Erst grad dezue gfüegt", - "HeaderSeries": "Series", "HeaderUsers": "User", "LabelArtists": "Artist:", "LabelArtistsHelp": "Trenn mehreri iisträg dur es ;", @@ -66,10 +64,8 @@ "OptionEnableAccessToAllLibraries": "Aktiviere de Zuegriff zu allne Bibliotheke", "OptionEnded": "Beendent", "OptionFavorite": "Favorite", - "OptionFriday": "Friitig", "OptionHasSubtitles": "Undertitel", "OptionImdbRating": "IMDB Bewertig", - "OptionMonday": "Mäntig", "OptionParentalRating": "Altersfriigab", "OptionPlayCount": "Zähler", "OptionPlayed": "Gspellt", @@ -77,12 +73,7 @@ "OptionReleaseDate": "Release Ziit", "OptionResumable": "Chan fortgsetzt werde", "OptionRuntime": "Laufziit", - "OptionSaturday": "Samstig", - "OptionSunday": "Sonntig", - "OptionThursday": "Donnstig", - "OptionTuesday": "Tsischtig", "OptionUnplayed": "Ungspellt", - "OptionWednesday": "Mittwoch", "ParentalRating": "Parental Rating", "Saturday": "Samstig", "Save": "Speichere", @@ -98,7 +89,6 @@ "TabMyPlugins": "Miini Plugins", "TabNetworks": "Studios", "TabNotifications": "Mitteilige", - "TabPassword": "Passwort", "TabProfile": "Profil", "TabProfiles": "Profil", "TabUpcoming": "Usstehend", @@ -125,7 +115,6 @@ "HeaderFavoriteEpisodes": "Lieblingsepisoden", "HeaderFavoriteShows": "Lieblingsserien", "HeaderFavoriteSongs": "Lieblingslieder", - "HeaderLiveTV": "Live-Fernseh", "Movies": "Film", "Photos": "Fotis", "Playlists": "Wedergabeliste", diff --git a/src/strings/he.json b/src/strings/he.json index d3a6b1ee19..667db59d9e 100644 --- a/src/strings/he.json +++ b/src/strings/he.json @@ -103,12 +103,10 @@ "HeaderLatestMovies": "סרטים אחרונים שהוספו", "HeaderLatestMusic": "מוזיקה אחרונה", "HeaderLatestRecordings": "הקלטות אחרונות", - "HeaderLiveTV": "שידורים חיים", "HeaderMediaFolders": "ספריות מדיה", "HeaderMetadataSettings": "הגדרות מטא-דאטה", "HeaderMusicVideos": "קליפים", "HeaderMyMedia": "המדיה שלי", - "HeaderNextUp": "הבא בתור", "HeaderPaths": "נתיבים", "HeaderPlayAll": "נגן הכל", "HeaderPleaseSignIn": "אנא היכנס", @@ -116,7 +114,6 @@ "HeaderRecordingOptions": "אפשרויות הקלטה", "HeaderRunningTasks": "משימות רצות", "HeaderScenes": "סצנות", - "HeaderSeries": "סדרה", "HeaderSeriesOptions": "אפשרויות סדרה", "HeaderServerSettings": "הגדרות שרת", "HeaderSetupLibrary": "הגדר את ספריית המדיה שלך", @@ -319,7 +316,6 @@ "OptionDvd": "DVD", "OptionEnded": "הסתיים", "OptionFavorite": "מועדפים", - "OptionFriday": "שישי", "OptionHasSpecialFeatures": "מאפיינים מיוחדים", "OptionHasSubtitles": "כתוביות", "OptionHasThemeSong": "שיר נושא", @@ -329,10 +325,8 @@ "OptionImdbRating": "דירוג IMDb", "OptionLikes": "נבחרים", "OptionMissingEpisode": "פרקים חסרים", - "OptionMonday": "שני", "OptionNameSort": "שם", "OptionNew": "חדש…", - "OptionOnAppStartup": "בהפעלת התוכנה", "OptionOnInterval": "כל פרק זמן", "OptionParentalRating": "דירוג בקרת הורים", "OptionPlayCount": "כמות ניגונים", @@ -344,17 +338,12 @@ "OptionProfileVideoAudio": "צליל וידאו", "OptionResumable": "ניתן להמשיך", "OptionRuntime": "זמן ריצה", - "OptionSaturday": "שבת", "OptionSpecialEpisode": "ספיישלים", - "OptionSunday": "ראשון", - "OptionThursday": "חמישי", "OptionTrackName": "שם הרצועה", - "OptionTuesday": "שלישי", "OptionTvdbRating": "דירוג TVDB", "OptionUnairedEpisode": "פרקים שלא שודרו", "OptionUnplayed": "לא נוגן", "OptionWakeFromSleep": "הער ממצב שינה", - "OptionWednesday": "רביעי", "OptionWeekly": "כל שבוע", "OriginalAirDateValue": "תאריך אוויר מקורי: {0}", "Overview": "סקירה כללית", @@ -432,17 +421,13 @@ "TabEpisodes": "פרקים", "TabInfo": "מידע", "TabLatest": "אחרון", - "TabLiveTV": "שידור ישיר", "TabMusic": "מוסיקה", "TabMusicVideos": "קליפים", "TabMyPlugins": "התוספים שלי", "TabNetworks": "רשתות", "TabNotifications": "התראות", - "TabPassword": "סיסמא", "TabProfile": "פרופיל", "TabProfiles": "פרופילים", - "TabRecordings": "הקלטות", - "TabSeries": "סדרות", "TabServer": "שרת", "TabSettings": "הגדרות", "TabTrailers": "טריילרים", @@ -577,7 +562,6 @@ "HeaderPlayOn": "נגן על", "HeaderPinCodeReset": "איפוס קוד סיכה", "HeaderPhotoAlbums": "אלבומי תמונות", - "HeaderPeople": "אנשים", "HeaderPasswordReset": "איפוס סיסמה", "HeaderPassword": "סיסמה", "HeaderOtherItems": "פריטים אחרים", @@ -587,7 +571,6 @@ "HeaderNewApiKey": "‫מפתח API חדש", "HeaderNavigation": "ניווט", "HeaderMyDevice": "המכשיר שלי", - "HeaderLiveTv": "שידורים חיים", "HeaderLibrarySettings": "הגדרות ספרייה", "HeaderLibraryFolders": "תיקיות הספרייה", "HeaderLibraries": "ספריות", @@ -822,6 +805,5 @@ "OptionEnableExternalContentInSuggestions": "הפעל תוכן חיצוני בהמלצות", "OptionEnableAccessToAllLibraries": "אפשר גישה לכל הספריות", "OptionEnableAccessToAllChannels": "אפשר גישה לכל הערוצים", - "HeaderSyncPlaySelectGroup": "הצטרף לקבוצה", - "TabUsers": "משתמשים" + "HeaderSyncPlaySelectGroup": "הצטרף לקבוצה" } diff --git a/src/strings/hr.json b/src/strings/hr.json index cf4aba1e9d..afbdbf2c22 100644 --- a/src/strings/hr.json +++ b/src/strings/hr.json @@ -213,8 +213,6 @@ "HeaderLibraries": "Biblioteke", "HeaderLibraryAccess": "Pristup biblioteci", "HeaderLibraryFolders": "Mape medija", - "HeaderLiveTV": "TV uživo", - "HeaderLiveTv": "TV uživo", "HeaderLoginFailure": "Neuspjela prijava", "HeaderMedia": "Medij", "HeaderMediaFolders": "Medijska mapa", @@ -224,7 +222,6 @@ "HeaderMusicVideos": "Muzički spotovi", "HeaderMyMedia": "Moji mediji", "HeaderNewApiKey": "Novi API ključ", - "HeaderNextUp": "Sljedeće je", "HeaderOtherItems": "Ostale stavke", "HeaderPassword": "Lozinka", "HeaderPasswordReset": "Poništenje lozinke", @@ -248,7 +245,6 @@ "HeaderRevisionHistory": "Povijest revizije", "HeaderRunningTasks": "Zadatci koji se izvode", "HeaderScenes": "Scene", - "HeaderSchedule": "Raspored", "HeaderSeasons": "Sezone", "HeaderSelectCertificatePath": "Odaberi putanju certifikata", "HeaderSelectMetadataPath": "Odaberite putanju meta-podataka", @@ -260,7 +256,6 @@ "HeaderSelectTranscodingPath": "Odaberite privremenu putanju konvertiranja", "HeaderSelectTranscodingPathHelp": "Pregledajte ili unesite putanju za korištenje konvertiranja privremenih datoteka. U mapu se mora moći pisati.", "HeaderSendMessage": "Pošalji poruku", - "HeaderSeries": "Serija", "HeaderSeriesOptions": "Opcije serija", "HeaderServerSettings": "Postavke Servera", "HeaderSettings": "Postavke", @@ -726,7 +721,6 @@ "OptionExternallyDownloaded": "Vanjsko preuzimanje", "OptionExtractChapterImage": "Omogući preuzimanje slika iz poglavlja", "OptionFavorite": "Omiljeni", - "OptionFriday": "Petak", "OptionHasSpecialFeatures": "Specijalne opcije", "OptionHasSubtitles": "Titlovi", "OptionHasThemeSong": "Pjesma teme", @@ -742,11 +736,9 @@ "OptionLikes": "Volim", "OptionMax": "Maksimalno", "OptionMissingEpisode": "Epizode koje nedostaju", - "OptionMonday": "Ponedjeljak", "OptionNameSort": "Nazivu", "OptionNew": "Novo…", "OptionNone": "Ništa", - "OptionOnAppStartup": "Kada se aplikacija pokrene", "OptionOnInterval": "U intervalu", "OptionParentalRating": "Roditeljska ocjena", "OptionPlainStorageFolders": "Prikaži sve mape kako jednostavne mape za skladištenje", @@ -764,20 +756,15 @@ "OptionRequirePerfectSubtitleMatch": "Samo preuzimanje titlova prijevoda koji su savršen izbor za moje video datoteke", "OptionResumable": "Nastavi", "OptionRuntime": "Trajanje", - "OptionSaturday": "Subota", "OptionSaveMetadataAsHidden": "Spremite meta-podatke i slike kao skrivene datoteke", "OptionSaveMetadataAsHiddenHelp": "Promjena ovoga će se primjenjivati na nove meta-podatke spremljene unaprijed. Postojeće datoteke meta-podataka će se ažurirati sljedeći puta kada ih spremi Jellyfin Server.", "OptionSpecialEpisode": "Specijal", "OptionSubstring": "Podniz", - "OptionSunday": "Nedjelja", - "OptionThursday": "Četvrtak", "OptionTrackName": "Nazivu pjesme", - "OptionTuesday": "Utorak", "OptionTvdbRating": "Ocjeni Tvdb", "OptionUnairedEpisode": "Ne emitirane epizode", "OptionUnplayed": "Neizvođeni", "OptionWakeFromSleep": "Pokreni iz stanja mirovanja", - "OptionWednesday": "Srijeda", "OptionWeekdays": "Radni dani", "OptionWeekends": "Vikendi", "OptionWeekly": "Tjedno", @@ -872,7 +859,6 @@ "TabDirectPlay": "Direktna reprodukcija", "TabEpisodes": "Epizode", "TabLatest": "Zadnje", - "TabLiveTV": "TV uživo", "TabLogs": "Dnevnici", "TabMusic": "Glazba", "TabMusicVideos": "Muzički spotovi", @@ -882,21 +868,16 @@ "TabNotifications": "Obavijesti", "TabOther": "Ostalo", "TabParentalControl": "Roditeljska kontrola", - "TabPassword": "Lozinka", - "TabPlaylists": "Popisi", "TabPlugins": "Dodaci", "TabProfile": "Profil", "TabProfiles": "Profili", - "TabRecordings": "Snimke", "TabResponses": "Odazivi", "TabResumeSettings": "Postavke nastavka", "TabScheduledTasks": "Zakazani zadaci", - "TabSeries": "Serije", "TabSettings": "Postavke", "TabStreaming": "Strujanje", "TabTrailers": "Kratki filmovi", "TabUpcoming": "Uskoro", - "TabUsers": "Korisnici", "Tags": "Oznake", "TellUsAboutYourself": "Recite nam nešto o sebi", "ThisWizardWillGuideYou": "Ovaj pomoćnik će Vas voditi kroz proces podešavanja. Za početak, odaberite željeni jezik.", diff --git a/src/strings/hu.json b/src/strings/hu.json index 9baf2220b6..644e7eb746 100644 --- a/src/strings/hu.json +++ b/src/strings/hu.json @@ -150,12 +150,10 @@ "HeaderMyDevice": "Jelenlegi eszköz", "HeaderMyMedia": "Médiatáram", "HeaderMyMediaSmall": "Médiatáram (kicsi)", - "HeaderNextUp": "Következik", "HeaderOnNow": "Most", "HeaderParentalRatings": "Korhatár besorolás", "HeaderPassword": "Jelszó", "HeaderPaths": "Útvonalak", - "HeaderPeople": "Személyek", "HeaderPinCodeReset": "Pin kód visszaállítása", "HeaderPlayAll": "Összes vetítése", "HeaderPlayOn": "Vetítés itt", @@ -174,7 +172,6 @@ "HeaderSelectMetadataPath": "Válaszd ki a metaadat útvonalat", "HeaderSelectServer": "Szerver Kiválasztás", "HeaderSendMessage": "Üzenet küldése", - "HeaderSeries": "Sorozatok", "HeaderSettings": "Beállítások", "HeaderSetupLibrary": "Média könyvtárak beállítása", "HeaderSortBy": "Megjelenítés", @@ -374,7 +371,6 @@ "OptionEnableAccessToAllLibraries": "Hozzáférés engedélyezése minden könyvtárhoz", "OptionExternallyDownloaded": "Külső letöltés", "OptionFavorite": "Kedvencek", - "OptionFriday": "Péntek", "OptionHasSpecialFeatures": "Speciális lehetőségek", "OptionHasSubtitles": "Feliratok", "OptionHasThemeSong": "Főcímdal", @@ -385,7 +381,6 @@ "OptionImdbRating": "IMDb értékelés", "OptionLikes": "Kedveltek", "OptionMissingEpisode": "Hiányzó Epizódok", - "OptionMonday": "Hétfő", "OptionNameSort": "Név", "OptionNew": "Új…", "OptionParentalRating": "Korhatár besorolás", @@ -396,14 +391,9 @@ "OptionReleaseDate": "Megjelenés dátuma", "OptionResumable": "Folytatható", "OptionRuntime": "Játékidő", - "OptionSaturday": "Szombat", - "OptionSunday": "Vasárnap", - "OptionThursday": "Csütörtök", "OptionTrackName": "Sáv Címe", - "OptionTuesday": "Kedd", "OptionUnairedEpisode": "Nem vetített Epizódok", "OptionUnplayed": "Nemjátszott", - "OptionWednesday": "Szerda", "OptionWeekly": "Heti", "OriginalAirDateValue": "Eredeti vetítés dátuma: {0}", "PackageInstallCancelled": "{0} ({1} verzió) telepítése megszakítva.", @@ -480,19 +470,14 @@ "TabNotifications": "Értesítések", "TabOther": "Egyéb", "TabParentalControl": "Szülői Felügyelet", - "TabPassword": "Jelszó", - "TabPlaylists": "Lejátszási listák", "TabPlugins": "Bővítmények", "TabProfile": "Profil", "TabProfiles": "Profilok", - "TabRecordings": "Felvételek", "TabScheduledTasks": "Ütemezett feladatok", - "TabSeries": "Sorozatok", "TabServer": "Szerver", "TabSettings": "Beállítások", "TabTrailers": "Előzetesek", "TabUpcoming": "Hamarosan érkezik", - "TabUsers": "Felhasználók", "Tags": "Címkék", "TellUsAboutYourself": "Mondj valamit magadról", "ThisWizardWillGuideYou": "Ez a varázsló végigvezet a telepítésen. A kezdéshez válasz nyelvet.", @@ -692,8 +677,6 @@ "HeaderKodiMetadataHelp": "Az Nfo metaadatok engedélyezéséhez vagy letiltásához szerkeszd a könyvtárat és keresd meg a metaadat letöltő részt.", "HeaderLatestMusic": "Legújabb Zene", "HeaderLatestRecordings": "Legújabb Felvételek", - "HeaderLiveTV": "Élő TV", - "HeaderLiveTv": "Élő TV", "HeaderLoginFailure": "Bejelentkezési hiba", "HeaderMusicQuality": "Zene minősége", "HeaderNewApiKey": "Új API kulcs", @@ -731,7 +714,6 @@ "EnableThemeVideos": "Videótémák", "EnableThemeVideosHelp": "Videó témájának lejátszása háttérben a könyvtár böngészése közben.", "HeaderBlockItemsWithNoRating": "Blokkolja azokat az elemeket amelyek tiltott, vagy nem felismerhető minősítésűek:", - "HeaderSchedule": "Ütemezés", "HeaderSeriesStatus": "Sorozat állapot", "HeaderSpecialEpisodeInfo": "Speciális epizód információ", "HeaderStartNow": "Indítás most", @@ -1067,7 +1049,6 @@ "OptionIsSD": "SD", "OptionMax": "Max", "OptionNone": "Egyik sem", - "OptionOnAppStartup": "Alkalmazás indításakor", "OptionOnInterval": "Időközönként", "OptionPlainStorageFolders": "Az összes mappa megjelenítése egyszerű tároló mappaként", "OptionPlainVideoItems": "Az összes videó megjelenítése egyszerű videófelvételként", @@ -1156,7 +1137,6 @@ "SystemDlnaProfilesHelp": "A rendszerprofilok csak olvashatóak. A rendszerprofil módosításai egy új egyéni profilba kerülnek.", "TV": "TV", "TabDirectPlay": "Közvetlen lejátszás", - "TabLiveTV": "Élő TV", "TabResponses": "Válaszok", "TabResumeSettings": "Folytatás", "TabStreaming": "Streaming", diff --git a/src/strings/id.json b/src/strings/id.json index a11d411afa..8bf0d7eafd 100644 --- a/src/strings/id.json +++ b/src/strings/id.json @@ -4,7 +4,6 @@ "FolderTypeTvShows": "TV", "HeaderAddUser": "Tambah User", "HeaderEasyPinCode": "Kode Pin Mudah", - "HeaderSeries": "Series", "HeaderSetupLibrary": "Atur pustaka media Anda", "LabelContentType": "Tipe konten:", "LabelCountry": "Negara:", @@ -30,7 +29,6 @@ "WizardCompleted": "Itu semua yang kami butuhkan saat ini. Jellyfin sudah memulai mengkoleksi informasi pustaka media. Lihatlah beberapa aplikasi kami, kemudian klik Selesai untuk menuju ke Dashboard Server", "Collections": "Koleksi", "Folders": "Folder", - "HeaderNextUp": "Selanjutnya", "Albums": "Album", "Books": "Buku", "Favorites": "Favorit", @@ -43,7 +41,6 @@ "HeaderAlbumArtists": "Album Artis", "HeaderContinueWatching": "Masih Melihat", "Artists": "Artis", - "HeaderLiveTV": "TV Live", "AllowMediaConversion": "Izinkan konversi media", "AllEpisodes": "Semua episode", "AllChannels": "Semua saluran", diff --git a/src/strings/is-is.json b/src/strings/is-is.json index 264b341b62..bd1c81c21a 100644 --- a/src/strings/is-is.json +++ b/src/strings/is-is.json @@ -26,7 +26,6 @@ "ShowAdvancedSettings": "Birta ítarlegar stillingar", "TabAccess": "Aðgangur", "TabNotifications": "Tilkynningar", - "TabPassword": "Lykilorð", "WelcomeToProject": "Velkomin/n í Jellyfin!", "Anytime": "Hvenær sem er", "Genres": "Tegundir", @@ -61,12 +60,10 @@ "HeaderFavoriteSongs": "Uppáhalds Lög", "Play": "Spila", "Folders": "Möppur", - "OptionSunday": "Sunnudagur", "OptionSubstring": "Undirstrengur", "OptionSpecialEpisode": "Sérstakt", "OptionTvdbRating": "TVDB einkunn", "OptionWakeFromSleep": "Vekja frá svefni", - "OptionWednesday": "Miðvikudagur", "PackageInstallCancelled": "{0} hætt við uppsetningu.", "AddToPlayQueue": "Bæta í spilunarlista", "AddedOnValue": "Bætti við {0}", @@ -110,8 +107,6 @@ "PerfectMatch": "Passar fullkomlega", "Channels": "Stöðvar", "Collections": "Söfn", - "OptionSaturday": "Laugardagur", - "OptionThursday": "Fimmtudagur", "OptionUnairedEpisode": "Ófrumsýndir þættir", "OptionUnplayed": "Óspilað", "OptionWeekdays": "Vikudagar", @@ -121,8 +116,6 @@ "OptionBluray": "Blu-ray", "Yesterday": "Í gær", "Absolute": "Heildartala", - "HeaderLiveTV": "Sjónvarp í beinni útsendingu", - "HeaderNextUp": "Næst á dagskrá", "OptionCommunityRating": "Einkunn almennings", "OptionCriticRating": "Einkunn gagnrýnenda", "OptionCustomUsers": "Sérsniðið", @@ -152,7 +145,6 @@ "HeaderRestart": "Endurræsa", "HeaderProfileInformation": "Upplýsingar um prófíl", "HeaderProfile": "Prófíll", - "HeaderPeople": "Fólk", "HeaderPassword": "Lykilorð", "HeaderLatestMovies": "Kvikmyndir, nýlega bætt við", "HeaderLatestEpisodes": "Þættir, nýlega bætt við", @@ -294,7 +286,6 @@ "HeaderLatestMusic": "Tónlist, nýlega bætt við", "HeaderMetadataSettings": "Stillingar lýsigagna", "HeaderMedia": "Margmiðlunarsafn", - "HeaderLiveTv": "Sjónvarp í beinni útsendingu", "HeaderLoginFailure": "Innskráning Mistókst", "HeaderMyDevice": "Tækið mitt", "HeaderMusicVideos": "Tónlistarmyndbönd", @@ -408,7 +399,6 @@ "ThemeVideos": "Þemu myndbönd", "ThemeSongs": "Þemu lög", "TellUsAboutYourself": "Segðu okkur frá sjálfum þér", - "TabUsers": "Notendur", "TabUpcoming": "Væntanlegt", "TabTrailers": "Sýnishorn", "TabResumeSettings": "Halda áfram", diff --git a/src/strings/it.json b/src/strings/it.json index af6de16491..758cb25f6e 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -317,8 +317,6 @@ "HeaderLibraryFolders": "Cartelle Libreria", "HeaderLibraryOrder": "Ordine Libreria", "HeaderLibrarySettings": "Impostazioni della Libreria", - "HeaderLiveTV": "Diretta TV", - "HeaderLiveTv": "Diretta TV", "HeaderLiveTvTunerSetup": "Configura Ricevitore TV", "HeaderLoginFailure": "Errore di accesso", "HeaderMediaFolders": "Cartelle dei media", @@ -333,14 +331,12 @@ "HeaderNewApiKey": "Nuova Chiave API", "HeaderNewDevices": "Nuovi Dispositivi", "HeaderNextEpisodePlayingInValue": "Il prossimo Episodio verrà riprodotto in {0}", - "HeaderNextUp": "Prossimo", "HeaderNextVideoPlayingInValue": "Il prossimo Video verrà riprodotto in {0}", "HeaderOnNow": "In onda ora", "HeaderOtherItems": "Altri elmenti", "HeaderParentalRatings": "Valutazioni genitori", "HeaderPasswordReset": "Reset della Password", "HeaderPaths": "Percorsi", - "HeaderPeople": "Persone", "HeaderPhotoAlbums": "Album foto", "HeaderPinCodeReset": "Resetta il codice PIN", "HeaderPlayAll": "Riproduci Tutti", @@ -365,7 +361,6 @@ "HeaderRevisionHistory": "Cronologia delle revisioni", "HeaderRunningTasks": "Operazioni in corso", "HeaderScenes": "Scene", - "HeaderSchedule": "Programmazione", "HeaderSeasons": "Stagioni", "HeaderSecondsValue": "{0} Secondi", "HeaderSelectCertificatePath": "Seleziona il percorso del Certificato", @@ -378,7 +373,6 @@ "HeaderSelectTranscodingPath": "Selezionare Percorso Temporaneo Transcodifica", "HeaderSelectTranscodingPathHelp": "Sfoglia o immettere il percorso da utilizzare per la transcodifica dei file temporanei. La cartella deve essere scrivibile.", "HeaderSendMessage": "Invia un messaggio", - "HeaderSeries": "Serie", "HeaderSeriesOptions": "Impostazioni Serie TV", "HeaderSeriesStatus": "Stato Serie TV", "HeaderServerSettings": "Impostazioni server", @@ -930,7 +924,6 @@ "OptionExternallyDownloaded": "Download Esterno", "OptionExtractChapterImage": "Abilita estrazione dell'immagine dei capitoli", "OptionFavorite": "Preferiti", - "OptionFriday": "Venerdì", "OptionHasSpecialFeatures": "Contenuti speciali", "OptionHasSubtitles": "Sottotitoli", "OptionHasThemeSong": "Sigla", @@ -944,11 +937,9 @@ "OptionImdbRating": "Voto IMDB", "OptionLikes": "Mi piace", "OptionMissingEpisode": "Episodi mancanti", - "OptionMonday": "Lunedì", "OptionNameSort": "Nome", "OptionNew": "Nuovo…", "OptionNone": "Nessuno", - "OptionOnAppStartup": "All'avvio", "OptionOnInterval": "Su intervallo", "OptionParentalRating": "Classificazione per genitori", "OptionPlainStorageFolders": "Visualizzare tutte le cartelle come normali cartelle di archiviazione", @@ -967,20 +958,15 @@ "OptionResElement": "res element", "OptionResumable": "Interrotto", "OptionRuntime": "Durata", - "OptionSaturday": "Sabato", "OptionSaveMetadataAsHidden": "Salvare i metadati e le immagini come file nascosti", "OptionSaveMetadataAsHiddenHelp": "La modifica di questo si applicherà ai nuovi metadati che verranno salvati in avanti. I file di metadati esistenti verranno aggiornati la prossima volta che vengono salvati da Jellyfin Server.", "OptionSpecialEpisode": "Speciali", "OptionSubstring": "Sottostringa", - "OptionSunday": "Domenica", - "OptionThursday": "Giovedì", "OptionTrackName": "Titolo Traccia", - "OptionTuesday": "Martedì", "OptionTvdbRating": "Voto TVDB", "OptionUnairedEpisode": "Episodi mai andati in onda", "OptionUnplayed": "Non visto", "OptionWakeFromSleep": "Risveglio", - "OptionWednesday": "Mercoledì", "OptionWeekdays": "Feriali", "OptionWeekends": "Il Weekend", "OptionWeekly": "Settimanale", @@ -1122,7 +1108,6 @@ "TabDirectPlay": "Riproduzione Diretta", "TabEpisodes": "Episodi", "TabLatest": "Novità", - "TabLiveTV": "Tv in Diretta", "TabMusic": "Musica", "TabMusicVideos": "Video Musicali", "TabMyPlugins": "I miei Plug-in", @@ -1131,18 +1116,14 @@ "TabNotifications": "Notifiche", "TabOther": "Altro", "TabParentalControl": "Controllo Genitore", - "TabPlaylists": "Playlist", "TabProfile": "Profilo", "TabProfiles": "Profili", - "TabRecordings": "Registrazioni", "TabResponses": "Risposte", "TabResumeSettings": "Riprendi", "TabScheduledTasks": "Operazioni Pianificate", - "TabSeries": "Serie TV", "TabSettings": "Impostazioni", "TabTrailers": "Trailer", "TabUpcoming": "In Arrivo", - "TabUsers": "Utenti", "Tags": "Tag", "TellUsAboutYourself": "Parlaci di te", "ThemeSongs": "Temi canzoni", @@ -1362,7 +1343,6 @@ "TabInfo": "Informazioni", "TabLogs": "Log", "TabNetworking": "Rete", - "TabPassword": "Password", "TabPlugins": "Plugin", "TabServer": "Server", "TabStreaming": "Streaming", diff --git a/src/strings/ja.json b/src/strings/ja.json index 31f377875d..b3b97e3c28 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -356,8 +356,6 @@ "HeaderLibraryFolders": "ライブラリフォルダ", "HeaderLibraryOrder": "ライブラリの順番", "HeaderLibrarySettings": "ライブラリ設定", - "HeaderLiveTV": "ライブTV", - "HeaderLiveTv": "ライブTV", "HeaderLiveTvTunerSetup": "ライブTV チューナーのセットアップ", "HeaderLoginFailure": "ログイン失敗", "HeaderMedia": "メディア", @@ -372,7 +370,6 @@ "HeaderNewApiKey": "新規のAPIキー", "HeaderNewDevices": "新規のデバイス", "HeaderNextEpisodePlayingInValue": "次のエピソードの再生まで {0}", - "HeaderNextUp": "次", "HeaderNextVideoPlayingInValue": "次のビデオの再生まで{0}", "HeaderOnNow": "今", "HeaderOtherItems": "その他のアイテム", @@ -380,7 +377,6 @@ "HeaderPassword": "パスワード", "HeaderPasswordReset": "パスワードリセット", "HeaderPaths": "パス", - "HeaderPeople": "人", "HeaderPhotoAlbums": "フォトアルバム", "HeaderPinCodeReset": "PINコードのリセット", "HeaderPlayAll": "すべて再生", @@ -405,7 +401,6 @@ "HeaderRevisionHistory": "更新履歴", "HeaderRunningTasks": "実行中のタスク", "HeaderScenes": "シーン", - "HeaderSchedule": "スケジュール", "HeaderSeasons": "シーズン", "HeaderSecondsValue": "{0} 秒", "HeaderSelectCertificatePath": "証明書のパスを選択", @@ -418,7 +413,6 @@ "HeaderSelectTranscodingPath": "トランスコーディング用の一時パスの選択", "HeaderSelectTranscodingPathHelp": "トランスコードファイルの保存先を参照またはパスを入力してください。 フォルダは書き込み可能でなければなりません。", "HeaderSendMessage": "メッセージの送信", - "HeaderSeries": "シリーズ", "HeaderSeriesOptions": "シリーズオプション", "HeaderSeriesStatus": "シリーズの状態", "HeaderServerSettings": "サーバー設定", @@ -552,7 +546,6 @@ "OptionUnplayed": "未再生", "OptionUnairedEpisode": "未放送のエピソード", "OptionWakeFromSleep": "スリープから起動", - "OptionWednesday": "水曜日", "OptionWeekdays": "平日", "ParentalRating": "個人評価", "PasswordResetConfirmation": "本当にパスワードを再設定しますか?", @@ -572,7 +565,6 @@ "TabDirectPlay": "直接再生", "TabEpisodes": "エピソード", "LabelDefaultUser": "デフォルトユーザー:", - "TabSeries": "シリーズ", "Trailers": "トレーラー", "LabelRecord": "レコード:", "MediaInfoAnamorphic": "アナモフィック", @@ -602,7 +594,6 @@ "SeriesSettings": "シリーズ設計", "SeriesYearToPresent": "{0} - 現在", "SubtitleOffset": "字幕オフセット", - "TabPassword": "パスワード", "ThemeSongs": "テーマ曲", "ThemeVideos": "テーマビデオ", "ValueMusicVideoCount": "{0} ミュージックビデオ", @@ -660,12 +651,8 @@ "MessageImageFileTypeAllowed": "JPEGとPNGファイルのみサポートしています。", "NoSubtitleSearchResultsFound": "何も見つかりません。", "OptionRandom": "ランダム", - "OptionSaturday": "土曜日", "OptionSubstring": "字幕", - "OptionSunday": "日曜日", - "OptionThursday": "木曜日", "OptionTrackName": "トラック名", - "OptionTuesday": "火曜日", "OptionTvdbRating": "TVDB評価", "OptionWeekends": "休日", "Overview": "概要", @@ -727,7 +714,6 @@ "TabDashboard": "ダッシュボード", "TabInfo": "情報", "TabLatest": "最新", - "TabLiveTV": "ライブTV", "TabLogs": "ログ", "TabMusic": "ミュージック", "TabMusicVideos": "ミュージックビデオ", @@ -987,7 +973,6 @@ "OptionEnableExternalContentInSuggestions": "おすすめの欄に外部のコンテンツを使う", "OptionEnableM2tsMode": "M2TSモードを有効化", "OptionFavorite": "お気に入り", - "OptionFriday": "金曜日", "OptionHasSpecialFeatures": "特別な機能", "OptionHasSubtitles": "字幕", "OptionHasThemeSong": "テーマ曲", @@ -996,7 +981,6 @@ "OptionHideUser": "ログインスクリーンからこのユーザーを隠す", "OptionHomeVideos": "フォト", "OptionIsHD": "HD", - "OptionMonday": "月曜日", "OptionProtocolHls": "HTTPライブストリーミング", "MediaInfoDefault": "デフォルト", "OptionSpecialEpisode": "スペシャル", @@ -1010,7 +994,6 @@ "TabNotifications": "通知", "TabOther": "その他", "TabParentalControl": "ペアレンタルコントロール", - "TabPlaylists": "プレイリスト", "TabPlugins": "プラグイン", "TabProfile": "プロフィール", "TabProfiles": "プロフィール", @@ -1020,7 +1003,6 @@ "TabStreaming": "ストリーミング", "TabTrailers": "トレーラー", "MessageContactAdminToResetPassword": "パスワードをリセットするためにシステムの管理者に連絡してください。", - "TabUsers": "ユーザー", "TagsValue": "タグ: {0}", "MessageInvalidUser": "ユーザー名かパスワードが無効です。再試行してください。", "MessageYouHaveVersionInstalled": "バージョン {0} がインストールされています。", @@ -1052,7 +1034,6 @@ "LabelCustomDeviceDisplayNameHelp": "任意の表示名を提供するか、空白のままにしてデバイスネームで報告する。", "LabelArtistsHelp": "複数のアーティストは「;」で分ける。", "Identify": "識別する", - "TabRecordings": "録画", "Recordings": "録画", "RecordingScheduled": "録画をスケジュールしました。", "RecordingCancelled": "録画をキャンセルしました。", diff --git a/src/strings/kk.json b/src/strings/kk.json index ef542a0705..3f20e5ca10 100644 --- a/src/strings/kk.json +++ b/src/strings/kk.json @@ -343,8 +343,6 @@ "HeaderLibraryFolders": "Tasyǵyshhanalyq qaltalar", "HeaderLibraryOrder": "Tasyǵyshhana reti", "HeaderLibrarySettings": "Tasyǵyshhana parametrleri", - "HeaderLiveTV": "Efır", - "HeaderLiveTv": "Efırlik TD", "HeaderLiveTvTunerSetup": "Efırlik TD túnerdi ornatý", "HeaderLoginFailure": "Kirý sátsizdigi", "HeaderMedia": "Tasyǵyshderekter", @@ -360,7 +358,6 @@ "HeaderNewApiKey": "Jańa API-kilt", "HeaderNewDevices": "Jańa qurylǵylar", "HeaderNextEpisodePlayingInValue": "Kelesi bólim {0} ishinde oınatylady", - "HeaderNextUp": "Kezekti", "HeaderNextVideoPlayingInValue": "Kelesi beıne {0} ishinde oınatylady", "HeaderOnNow": "Efırde", "HeaderOtherItems": "Basqa tarmaqtar", @@ -368,7 +365,6 @@ "HeaderPassword": "Paról", "HeaderPasswordReset": "Paróldi ysyrý", "HeaderPaths": "Joldar", - "HeaderPeople": "Adamdar", "HeaderPhotoAlbums": "Fotoálbomdar", "HeaderPinCodeReset": "PIN-kodty ysyrý", "HeaderPlayAll": "Bárin oınatý", @@ -393,7 +389,6 @@ "HeaderRevisionHistory": "Ózgerister tarıhy", "HeaderRunningTasks": "Oryndalyp jatqan tapsyrmalar", "HeaderScenes": "Sahnalar", - "HeaderSchedule": "Is kestesi", "HeaderSeasons": "Maýsymdar", "HeaderSecondsValue": "{0} sekónd", "HeaderSelectCertificatePath": "Kýálik jolyn tańdaý", @@ -406,7 +401,6 @@ "HeaderSelectTranscodingPath": "Qaıta kodtaýdyń ýaqytsha faıldaryeyń jolyn tańdaý", "HeaderSelectTranscodingPathHelp": "Qaıta kodtaýdyń ýaqytsha faıldaryn paıdalaný úshin joldy sholyńyz nemese engizińiz. Osy qalta jazý úshin qol jetimdi bolýy qajet.", "HeaderSendMessage": "Habar jiberý", - "HeaderSeries": "Telehıkaıalar", "HeaderSeriesOptions": "Telehıkaıa opsıalary", "HeaderSeriesStatus": "Telehıkaıa kúıi", "HeaderServerSettings": "Server parametrleri", @@ -994,7 +988,6 @@ "OptionExternallyDownloaded": "Syrttan júktelgen", "OptionExtractChapterImage": "Sahna sýretin bólip alýdy qosý", "OptionFavorite": "Tańdaýlylar", - "OptionFriday": "juma", "OptionHasSpecialFeatures": "Arnaıy múmkindikter", "OptionHasSubtitles": "Sýbtıtrler", "OptionHasThemeSong": "Taqyryptyq áýen", @@ -1010,11 +1003,9 @@ "OptionLikes": "Unatýlar", "OptionMax": "Eń joǵary", "OptionMissingEpisode": "Joq bólimder", - "OptionMonday": "dúısenbi", "OptionNameSort": "Aty", "OptionNew": "Jańa…", "OptionNone": "Eshqandaı", - "OptionOnAppStartup": "Qoldanba iske qosylǵanda", "OptionOnInterval": "Aralyqta", "OptionParentalRating": "Jastas sanat", "OptionPlainStorageFolders": "Barlyq qaltalardy kádimgi saqtama qaltalary retinde beıneleý", @@ -1038,20 +1029,15 @@ "OptionRequirePerfectSubtitleMatchHelp": "Keremet sáıkestik talap etilgende tek qana naqty beıne faılyńyzben synaqtaýdan jáne tekserýden ótken sýbtıtrler súziledi. Belgini alastaý sýbtıtrlerdi júkteý yqtımaldyǵyn arttyrady, biraq qate ýaqyty bar nemese burys bolý sýbtıtrler mátininiń múmkindikterin ósiredi.", "OptionResumable": "Jalǵastyralatyn", "OptionRuntime": "Uzaqtyǵy", - "OptionSaturday": "senbi", "OptionSaveMetadataAsHidden": "Metaderekter men sýretterdi jasyryn faıldar retinde saqtaý", "OptionSaveMetadataAsHiddenHelp": "Osy ózgertý bolashaqta saqtalatyn jańa metaderekter úshin qoldanylady. Bar metaderek faıldar olar Jellyfin serveri arqyly saqtalǵanda kelesi joly jańartylady.", "OptionSpecialEpisode": "Arnaıy bólimder", "OptionSubstring": "Ishki jol", - "OptionSunday": "jeksenbi", - "OptionThursday": "beısenbi", "OptionTrackName": "Jolshyq aty", - "OptionTuesday": "seısenbi", "OptionTvdbRating": "TVDB baǵalaýy", "OptionUnairedEpisode": "Kórsetilmegen bólimder", "OptionUnplayed": "Oınatylmaǵan", "OptionWakeFromSleep": "Uıqydan oıatýda", - "OptionWednesday": "sársenbi", "OptionWeekdays": "Jumys kúnderi", "OptionWeekends": "Demalys kúnderi", "OptionWeekly": "Apta saıyn", @@ -1199,7 +1185,6 @@ "TabEpisodes": "TD-bólimder", "TabInfo": "Profaıl týraly", "TabLatest": "Eń keıingi", - "TabLiveTV": "Efırlik TD", "TabLogs": "Jurnaldar", "TabMusic": "Mýzyka", "TabMusicVideos": "Mýzykalyq beıneler", @@ -1209,22 +1194,17 @@ "TabNotifications": "Habarlandyrýlar", "TabOther": "Basqalar", "TabParentalControl": "Mazmundy basqarý", - "TabPassword": "Paról", - "TabPlaylists": "Oınatý tizimderi", "TabPlugins": "Plagınder", "TabProfile": "Profaıl", "TabProfiles": "Profaıldar", - "TabRecordings": "Jazbalar", "TabResponses": "Ún qatýlar", "TabResumeSettings": "Jalǵastyrý", "TabScheduledTasks": "Josparlaýshy", - "TabSeries": "Telehıkaıalar", "TabServer": "Server", "TabSettings": "Parametrler", "TabStreaming": "Tasymaldaný", "TabTrailers": "Treılerler", "TabUpcoming": "Kútilgen", - "TabUsers": "Paıdalanýshylar", "Tags": "Tegter", "TagsValue": "Tegter: {0}", "TellUsAboutYourself": "Ózińiz týraly aıtyńyz", diff --git a/src/strings/ko.json b/src/strings/ko.json index dcdb1f5a8f..62c924e517 100644 --- a/src/strings/ko.json +++ b/src/strings/ko.json @@ -155,8 +155,6 @@ "HeaderLibraryAccess": "라이브러리 접근", "HeaderLibraryFolders": "라이브러리 폴더", "HeaderLibrarySettings": "라이브러리 설정", - "HeaderLiveTV": "실시간 TV", - "HeaderLiveTv": "실시간 TV", "HeaderLoginFailure": "로그인 실패", "HeaderMedia": "미디어", "HeaderMediaFolders": "미디어 폴더", @@ -166,7 +164,6 @@ "HeaderMyMedia": "내 미디어", "HeaderMyMediaSmall": "내 미디어 (작음)", "HeaderNewApiKey": "새 API 키", - "HeaderNextUp": "다음으로", "HeaderParentalRatings": "자녀 보호 등급", "HeaderPassword": "비밀번호", "HeaderPasswordReset": "비밀번호 재설정", @@ -189,7 +186,6 @@ "HeaderRevisionHistory": "리비전 이력", "HeaderRunningTasks": "실행중인 작업", "HeaderScenes": "장면", - "HeaderSchedule": "일정", "HeaderSeasons": "시즌", "HeaderSelectMetadataPath": "메타데이터 경로 선택", "HeaderSelectMetadataPathHelp": "메타데이터를 보관할 경로를 탐색 또는 입력하세요. 쓰기 가능한 폴더여야 합니다.", @@ -200,7 +196,6 @@ "HeaderSelectTranscodingPath": "트랜스코딩 임시 경로 선택", "HeaderSelectTranscodingPathHelp": "트랜스코딩 임시 파일에 사용할 경로를 탐색 또는 입력하세요. 쓰기 가능한 폴더여야 합니다.", "HeaderSendMessage": "메시지 전송", - "HeaderSeries": "시리즈", "HeaderServerSettings": "서버 설정", "HeaderSettings": "설정", "HeaderSetupLibrary": "미디어 라이브러리 설정", @@ -554,7 +549,6 @@ "OptionEveryday": "매일", "OptionExternallyDownloaded": "외부 다운로드", "OptionFavorite": "즐겨찾기", - "OptionFriday": "금요일", "OptionHasSpecialFeatures": "특별한 기능", "OptionHasSubtitles": "자막", "OptionHasThemeSong": "테마송", @@ -569,10 +563,8 @@ "OptionLikes": "좋아함", "OptionMax": "최대", "OptionMissingEpisode": "누락된 에피소드", - "OptionMonday": "월요일", "OptionNameSort": "제목", "OptionNone": "없음", - "OptionOnAppStartup": "애플리케이션 시작할 때", "OptionOnInterval": "기간", "OptionParentalRating": "등급", "OptionPlainStorageFolders": "모든 폴더를 일반 저장소 폴더로 표시", @@ -591,18 +583,13 @@ "OptionResElement": "res 요소", "OptionResumable": "이어보기", "OptionRuntime": "상영 시간", - "OptionSaturday": "토요일", "OptionSaveMetadataAsHidden": "메타데이터와 이미지를 숨김 파일로 저장", "OptionSpecialEpisode": "스페셜", - "OptionSunday": "일요일", - "OptionThursday": "목요일", "OptionTrackName": "트랙 이름", - "OptionTuesday": "화요일", "OptionTvdbRating": "TVDb 평점", "OptionUnairedEpisode": "방송하지 않은 에피소드", "OptionUnplayed": "재생되지 않음", "OptionWakeFromSleep": "슬립모드에서 깨우기", - "OptionWednesday": "수요일", "OptionWeekdays": "주중", "OptionWeekends": "주말", "OptionWeekly": "주", @@ -665,7 +652,6 @@ "TabEpisodes": "에피소드", "TabInfo": "정보", "TabLatest": "최근", - "TabLiveTV": "실시간 TV", "TabLogs": "로그", "TabMusic": "음악", "TabMusicVideos": "뮤직비디오", @@ -674,21 +660,16 @@ "TabNotifications": "알림", "TabOther": "기타", "TabParentalControl": "자녀 보호", - "TabPassword": "비밀번호", - "TabPlaylists": "재생목록", "TabPlugins": "플러그인", "TabProfile": "프로필", "TabProfiles": "프로필", - "TabRecordings": "녹화", "TabResponses": "반응", "TabScheduledTasks": "예약 작업", - "TabSeries": "시리즈", "TabServer": "서버", "TabSettings": "설정", "TabStreaming": "스트리밍", "TabTrailers": "예고편", "TabUpcoming": "방송 예정", - "TabUsers": "사용자", "Tags": "태그", "TellUsAboutYourself": "자신에 대해 알려주세요", "ThisWizardWillGuideYou": "이 마법사는 설정 과정을 안내합니다. 시작하려면 선호하는 언어를 선택하세요.", @@ -1065,7 +1046,6 @@ "HeaderSortOrder": "정렬 순서", "HeaderSortBy": "정렬 기준", "HeaderRecordingPostProcessing": "녹화 후처리 작업", - "HeaderPeople": "사람들", "HeaderOtherItems": "다른 항목", "HeaderLibraryOrder": "라이브러리 순서", "HeaderDefaultRecordingSettings": "기본 녹화 설정", diff --git a/src/strings/lt-lt.json b/src/strings/lt-lt.json index 39277004a2..0d66a6456a 100644 --- a/src/strings/lt-lt.json +++ b/src/strings/lt-lt.json @@ -115,7 +115,6 @@ "HeaderMetadataSettings": "Metaduomenų nustatymai", "HeaderMoreLikeThis": "Daugiau panašių", "HeaderMusicVideos": "Muzikiniai klipai", - "HeaderNextUp": "Toliau eilėje", "HeaderPaths": "Keliai", "HeaderPleaseSignIn": "Prašau prisijungti", "HeaderPreferredMetadataLanguage": "Pageidaujama metaduomenų kalba", @@ -345,7 +344,6 @@ "OptionEnableAccessToAllLibraries": "Leisti prieigą prie visų bibliotekos", "OptionEnded": "Pasibaigė", "OptionFavorite": "Mėgstami", - "OptionFriday": "Penktadienis", "OptionHasSpecialFeatures": "Ypatingos serijos", "OptionHasSubtitles": "Subtitrai", "OptionHasThemeSong": "Teminė daina", @@ -359,10 +357,8 @@ "OptionIsSD": "SH", "OptionLikes": "Patinka", "OptionMissingEpisode": "Trūkstamos serijos", - "OptionMonday": "Pirmadienis", "OptionNameSort": "Vardas", "OptionNew": "Naujas...", - "OptionOnAppStartup": "Paleidus programą", "OptionOnInterval": "Pasikartojantis", "OptionParentalRating": "Tėvų reitingas", "OptionPlayCount": "Rodymų kiekis", @@ -371,17 +367,12 @@ "OptionReleaseDate": "Išleidimo data", "OptionResumable": "Pratęsiamas", "OptionRuntime": "Trukmė", - "OptionSaturday": "Šeštadienis", "OptionSpecialEpisode": "Ypatingos", - "OptionSunday": "Sekmadienis", - "OptionThursday": "Ketvirtadienis", "OptionTrackName": "Dainos pavadinimas", - "OptionTuesday": "Antradienis", "OptionTvdbRating": "Tvdb vertinimas", "OptionUnairedEpisode": "Nerodytos serijos", "OptionUnplayed": "Nerodyta", "OptionWakeFromSleep": "Žadinti iš miego", - "OptionWednesday": "Trečiadienis", "OptionWeekly": "Savaitinis", "OriginalAirDateValue": "Pirmo eterio data: {0}", "Overview": "Apžvalga", @@ -458,11 +449,8 @@ "TabNetworks": "Tinklai", "TabNotifications": "Pranešimai", "TabOther": "Kita", - "TabPassword": "Slaptažodis", "TabProfile": "Profilis", "TabProfiles": "Profiliai", - "TabRecordings": "Įrašai", - "TabSeries": "Laidos", "TabServer": "Serveris", "TabSettings": "Nustatymai", "TabTrailers": "Anonsai", @@ -657,7 +645,6 @@ "HeaderDeveloperInfo": "Kūrėjo informacija", "HeaderDevices": "Įrenginiai", "HeaderDirectPlayProfile": "Tiesioginio leidimo profilis", - "HeaderLiveTV": "TV gyvai", "ButtonTrailer": "Anonsas", "Depressed": "Spaudžiamas", "DirectPlaying": "Tiesioginis leidimas", @@ -706,7 +693,6 @@ "HeaderSelectTranscodingPath": "Išrinkite kelią į aplanką laikiniems perkodavimo failams", "HeaderSelectTranscodingPathHelp": "Suraskite arba įrašykite kelią serverio į aplanką laikinų perkodavimo failų saugojimui. Aplankalas turi būti su rašymo teise.", "HeaderSendMessage": "Siųsti žinutę", - "HeaderSeries": "Serialai", "HeaderSeriesStatus": "Serialo būsena", "HeaderServerSettings": "Serverio nustatymai", "HeaderSubtitleProfile": "Subtitrų profilis", @@ -846,7 +832,6 @@ "LabelPreferredSubtitleLanguage": "Pageidautina titrų kalba:", "HeaderChannelAccess": "Prieiga prie kanalų", "LabelProfileAudioCodecs": "Garso takelio kodekas:", - "HeaderLiveTv": "TV gyvai", "HeaderLiveTvTunerSetup": "Imtuvo nustatymai", "FetchingData": "Gaunami papildomi duomenys", "FileReadError": "Nuskaitant failą įvyko klaida.", @@ -925,7 +910,6 @@ "HeaderOnNow": "Gyvai dabar", "HeaderOtherItems": "Kiti elementai", "HeaderParentalRatings": "Amžiaus kategorijos", - "HeaderPeople": "Žmonės", "HeaderPhotoAlbums": "Nuotraukų albumai", "HeaderPinCodeReset": "Nustatyti PIN kodą iš naujo", "HeaderPlayAll": "Leisti visus", @@ -935,7 +919,6 @@ "HeaderProfile": "Profilis", "HeaderProfileInformation": "Apie profilį", "HeaderResponseProfileHelp": "Atsakymo profiliai suteikia galimybę pritaikyti prie prietaiso siunčiamą informaciją, kai grojama tam tikros rūšies medijos.", - "HeaderSchedule": "Tvarkaraštis", "HeaderSeasons": "Sezonai", "HeaderSecondsValue": "{0} s", "HeaderSelectMetadataPath": "Metaduomenų kelio išrinkimas", diff --git a/src/strings/lv.json b/src/strings/lv.json index e952b25fa9..ee712f615b 100644 --- a/src/strings/lv.json +++ b/src/strings/lv.json @@ -252,13 +252,11 @@ "HeaderServerSettings": "Servera Iestatījumi", "HeaderSeriesStatus": "Sēriju Status", "HeaderSeriesOptions": "Sēriju Opcijas", - "HeaderSeries": "Sērijas", "HeaderSendMessage": "Sūtīt Ziņojumu", "HeaderSelectServerCachePath": "Izvēlies Servera Keša Ceļu", "HeaderSelectServer": "Izvēlies Serveri", "HeaderSecondsValue": "{0} Sekundes", "HeaderSeasons": "Sezonas", - "HeaderSchedule": "Grafiks", "HeaderRevisionHistory": "Revīziju Vēsture", "HeaderRestart": "Restartēt", "HeaderRemoveMediaLocation": "Noņemt Multvides Atrašanās Vietu", @@ -273,12 +271,10 @@ "HeaderPlayAll": "Atskaņot Visu", "HeaderPinCodeReset": "Atiestatīt Pin Kodu", "HeaderPhotoAlbums": "Foto Albūmi", - "HeaderPeople": "Cilvēki", "HeaderPaths": "Ceļi", "HeaderPasswordReset": "Paroles Nomaiņa", "HeaderPassword": "Parole", "HeaderNextVideoPlayingInValue": "Nākamais Video tiks atskaņots pēc {0}", - "HeaderNextUp": "Nākamais", "HeaderNextEpisodePlayingInValue": "Nākamā Epizode tiks atskaņota pēc: {0}", "HeaderNewDevices": "Jaunas Ierīces", "HeaderNewApiKey": "Jauna API Atslēga", @@ -294,8 +290,6 @@ "HeaderMediaFolders": "Multvides Mapes", "HeaderMedia": "Multvide", "HeaderLiveTvTunerSetup": "Tiešraides TV Tūnera Uzstādīšana", - "HeaderLiveTv": "Tiešraides TV", - "HeaderLiveTV": "Tiešraides TV", "HeaderLibrarySettings": "Bibliotēku Iestatījumi", "HeaderLibraryOrder": "Bibliotēku Kārtojums", "HeaderLibraryFolders": "Bibliotēku Mapes", @@ -670,20 +664,15 @@ "TellUsAboutYourself": "Pastāsti mums par sevi", "TagsValue": "Tagi: {0}", "Tags": "Tagi", - "TabUsers": "Lietotāji", "TabTrailers": "Treileri", "TabStreaming": "Straumēšana", "TabSettings": "Iestatījumi", "TabServer": "Serveris", - "TabSeries": "Sērijas", "TabResumeSettings": "Turpināt", "TabResponses": "Atbildes", - "TabRecordings": "Ieraksti", "TabProfiles": "Profili", "TabProfile": "Profils", "TabPlugins": "Paplašinājumi", - "TabPlaylists": "Atskaņošanas Saraksti", - "TabPassword": "Parole", "TabParentalControl": "Vecāku Pārvaldība", "TabOther": "Cits", "TabNotifications": "Paziņojumi", @@ -694,7 +683,6 @@ "TabMusicVideos": "Mūzikas Video", "TabMusic": "Mūzika", "TabLogs": "Logs", - "TabLiveTV": "Tiešraides TV", "TabLatest": "Jaunākais", "TabInfo": "Info", "TabEpisodes": "Epizodes", @@ -748,14 +736,12 @@ "OptionOnInterval": "Pēc intervāla", "OptionNone": "Neviens", "OptionNew": "Jauns...", - "OptionMonday": "Pirmdien", "OptionList": "Saraksts", "OptionLikes": "Patīk", "OptionIsSD": "SD", "OptionIsHD": "HD", "OptionHasTrailer": "Treileris", "OptionHasSubtitles": "Subtitri", - "OptionFriday": "Piektdien", "OptionFavorite": "Favorīti", "OptionEveryday": "Katru dienu", "OptionEnded": "Beidzies", @@ -1083,16 +1069,11 @@ "OptionWeekly": "Iknedēļu", "OptionWeekends": "Nedēļas nogalēs", "OptionWeekdays": "Darba dienās", - "OptionWednesday": "Trešdiena", "OptionWakeFromSleep": "Modināt no miega", "OptionUnplayed": "Neatskaņots", - "OptionTuesday": "Otrdiena", "OptionTrackName": "Celiņa Nosaukums", "OptionThumb": "Sīktēls", - "OptionThursday": "Ceturtdiena", - "OptionSunday": "Svētdiena", "OptionSaveMetadataAsHidden": "Saglabāt metadatus un attēlus kā paslēptas datnes", - "OptionSaturday": "Sestdiena", "OptionRequirePerfectSubtitleMatch": "Lejupielādēt tikai subtitrus, kas perfekti sakrīt ar manām video datnēm", "OptionRegex": "Regex", "OptionProtocolHls": "HTTP Tiešraides Straumes", @@ -1100,7 +1081,6 @@ "OptionPremiereDate": "Pirmizrādes Datums", "OptionPoster": "Plakāts", "OptionPlayCount": "Atskaņošanas Skaits", - "OptionOnAppStartup": "Lietotnes sāknēšanā", "OptionNameSort": "Nosaukums", "OptionMissingEpisode": "Trūkstošās Epizodes", "OptionMax": "Maksimums", diff --git a/src/strings/ms.json b/src/strings/ms.json index 772cb3e043..786d2b7707 100644 --- a/src/strings/ms.json +++ b/src/strings/ms.json @@ -2,7 +2,6 @@ "ButtonSignOut": "Sign out", "Delete": "Padam", "FolderTypeTvShows": "TV", - "HeaderSeries": "Series", "LabelFinish": "Habis", "LabelYoureDone": "Kamu Selesai!", "ParentalRating": "Parental Rating", @@ -90,8 +89,6 @@ "Channels": "Saluran", "ButtonSyncPlay": "SyncPlay", "Movies": "Filem", - "HeaderNextUp": "Seterusnya", - "HeaderLiveTV": "TV Siaran Langsung", "HeaderFavoriteSongs": "Lagu-lagu Kegemaran", "HeaderFavoriteShows": "Rancangan-rancangan Kegemaran", "HeaderFavoriteEpisodes": "Episod-episod Kegemaran", diff --git a/src/strings/nb.json b/src/strings/nb.json index d9e0b3c8ec..66b383b616 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -269,14 +269,12 @@ "HeaderMyMediaSmall": "Min media (liten)", "HeaderNewApiKey": "Ny API-nøkkel", "HeaderNewDevices": "Nye enheter", - "HeaderNextUp": "Neste", "HeaderOnNow": "Spiller nå", "HeaderOtherItems": "Andre elementer", "HeaderParentalRatings": "Foreldresensur", "HeaderPassword": "Passord", "HeaderPasswordReset": "Tilbakestill passord", "HeaderPaths": "Filbaner", - "HeaderPeople": "Personer", "HeaderPinCodeReset": "Tilbakestill PIN-kode", "HeaderPlayAll": "Spill alle", "HeaderPlayOn": "Forsett avspilling", @@ -300,7 +298,6 @@ "HeaderRevisionHistory": "Revisjonshistorikk", "HeaderRunningTasks": "Kjørende oppgaver", "HeaderScenes": "Kapitler", - "HeaderSchedule": "Timeplan", "HeaderSeasons": "Sesonger", "HeaderSelectCertificatePath": "Velg sertifikatplassering", "HeaderSelectMetadataPath": "Velg metadataplassering", @@ -312,7 +309,6 @@ "HeaderSelectTranscodingPath": "Velg filbane for midlertidig lagring av omkodede filer", "HeaderSelectTranscodingPathHelp": "Bla eller skriv inn filbanen som skal brukes for midlertidig lagring av omkodede filer. Mappen må være skrivbar.", "HeaderSendMessage": "Send melding", - "HeaderSeries": "Serier", "HeaderSeriesOptions": "Serievalg", "HeaderServerSettings": "Serverinnstillinger", "HeaderSettings": "Innstillinger", @@ -792,7 +788,6 @@ "OptionExternallyDownloaded": "Ekstern nedlasting", "OptionExtractChapterImage": "Aktiver uthenting av kapittelbilder", "OptionFavorite": "Favoritter", - "OptionFriday": "Fredag", "OptionHasSpecialFeatures": "Spesialfunksjoner", "OptionHasSubtitles": "Undertekster", "OptionHasThemeSong": "Temasang", @@ -806,11 +801,9 @@ "OptionLikes": "Liker", "OptionMax": "Maks", "OptionMissingEpisode": "Manglende episoder", - "OptionMonday": "Mandag", "OptionNameSort": "Navn", "OptionNew": "Ny…", "OptionNone": "Ingen", - "OptionOnAppStartup": "Ved applikasjonsoppstart", "OptionOnInterval": "Per intervall", "OptionParentalRating": "Aldersgrense", "OptionPlainStorageFolders": "Vis alle mapper som enkle lagringsmapper", @@ -830,20 +823,15 @@ "OptionRequirePerfectSubtitleMatchHelp": "Å kreve en perfekt match vil filtrere bort undertekster slik at kun de som har blitt testet og verifisert mot nøyaktig samme video-fil gjenstår. Dersom du deaktiverer innstillingen øker sannsynligheten for at undertekster lastes ned, men sjansen øker også for at feilsynkronisert eller feilaktig undertekst lastes ned.", "OptionResumable": "Kan gjenopptas", "OptionRuntime": "Spilletid", - "OptionSaturday": "Lørdag", "OptionSaveMetadataAsHidden": "Lagre metadata og bilder som skjulte filer", "OptionSaveMetadataAsHiddenHelp": "Endring av denne innstillingen vil gjelde ny metadata som lagres fra nå av. Eksisterende metadata vil bli oppdatert neste gang de lagres av Jellyfin-serveren.", "OptionSpecialEpisode": "Spesialepisoder", "OptionSubstring": "Deltekst", - "OptionSunday": "Søndag", - "OptionThursday": "Torsdag", "OptionTrackName": "Låtnavn", - "OptionTuesday": "Tirsdag", "OptionTvdbRating": "TVDB-vurdering", "OptionUnairedEpisode": "Kommende episoder", "OptionUnplayed": "Ikke sett", "OptionWakeFromSleep": "Våkne fra dvale", - "OptionWednesday": "Onsdag", "OptionWeekdays": "Ukedager", "OptionWeekends": "Helger", "OptionWeekly": "Ukentlig", @@ -971,20 +959,15 @@ "TabNotifications": "Varslinger", "TabOther": "Annet", "TabParentalControl": "Foreldrekontroll", - "TabPassword": "Passord", - "TabPlaylists": "Spillelister", "TabPlugins": "Programtillegg", "TabProfile": "Profil", "TabProfiles": "Profiler", - "TabRecordings": "Opptak", "TabResponses": "Svar", "TabResumeSettings": "Fortsettelse", "TabScheduledTasks": "Planlagte oppgaver", - "TabSeries": "Serier", "TabSettings": "Innstillinger", "TabTrailers": "Trailere", "TabUpcoming": "Kommende", - "TabUsers": "Brukere", "Tags": "Tagger", "TellUsAboutYourself": "Fortell oss litt om deg selv", "ThisWizardWillGuideYou": "Denne veiviseren vil hjelpe deg gjennom installasjonsprosessen. Velg ønsket språk for å komme i gang.", @@ -1180,7 +1163,6 @@ "LabelAudioCodec": "Lydkodek:", "LabelAudioSampleRate": "Samplingsfrekvens for lyd:", "OptionRegex": "Regulært uttrykk", - "HeaderLiveTV": "Direkte-TV", "HeaderMedia": "Media", "LabelDropImageHere": "Dra og slipp bildet her, eller klikk for å bla igjennom.", "LabelMetadataSavers": "Lagring av metadata:", @@ -1228,7 +1210,6 @@ "HeaderFavoriteArtists": "Favorittartister", "HeaderFavoriteSongs": "Favorittsanger", "HeaderHome": "Hjem", - "HeaderLiveTv": "Direkte-TV", "HeaderNextEpisodePlayingInValue": "Neste episode starter om {0}", "HeaderNextVideoPlayingInValue": "Neste video starter om {0}", "HeaderSeriesStatus": "Seriestatus", @@ -1349,7 +1330,6 @@ "SubtitleOffset": "Forskyvet underteksting", "TV": "TV", "TabInfo": "Informasjon", - "TabLiveTV": "Direkte-TV", "TabNetworking": "Nettverk", "Trailers": "Trailere", "Transcoding": "Omkoding", diff --git a/src/strings/nl.json b/src/strings/nl.json index 5dee8dbf47..8d5e5c78a4 100644 --- a/src/strings/nl.json +++ b/src/strings/nl.json @@ -336,7 +336,6 @@ "HeaderNewApiKey": "Nieuwe API sleutel", "HeaderNewDevices": "Nieuwe Apparaten", "HeaderNextEpisodePlayingInValue": "Volgende Aflevering over {0}", - "HeaderNextUp": "Volgende", "HeaderNextVideoPlayingInValue": "Volgende Afgespeeld over {0}", "HeaderOnNow": "Aan het spelen", "HeaderOtherItems": "Overige Items", @@ -344,7 +343,6 @@ "HeaderPassword": "Wachtwoord", "HeaderPasswordReset": "Wachtwoord resetten", "HeaderPaths": "Paden", - "HeaderPeople": "Personen", "HeaderPhotoAlbums": "Foto-albums", "HeaderPinCodeReset": "Reset Pincode", "HeaderPlayAll": "Alles afspelen", @@ -369,7 +367,6 @@ "HeaderRevisionHistory": "Versie geschiedenis", "HeaderRunningTasks": "Actieve taken", "HeaderScenes": "Hoofdstukken", - "HeaderSchedule": "Schema", "HeaderSeasons": "Seizoenen", "HeaderSecondsValue": "{0} Seconden", "HeaderSelectCertificatePath": "Selecteer Certificaat Pad", @@ -382,7 +379,6 @@ "HeaderSelectTranscodingPath": "Selecteer Tijdelijke Transcodeer Pad", "HeaderSelectTranscodingPathHelp": "Blader of voer het pad in om te gebruiken voor het transcoderen van tijdelijke bestanden. De map moet schrijfbaar zijn.", "HeaderSendMessage": "Stuur bericht", - "HeaderSeries": "Series", "HeaderSeriesOptions": "Series Opties", "HeaderSeriesStatus": "Seriestatus", "HeaderServerSettings": "Server Instellingen", @@ -918,7 +914,6 @@ "OptionExternallyDownloaded": "Externe download", "OptionExtractChapterImage": "Inschakelen uitpakken van hoofdstuk afbeeldingen", "OptionFavorite": "Favorieten", - "OptionFriday": "Vrijdag", "OptionHasSpecialFeatures": "Extra's", "OptionHasSubtitles": "Ondertiteling", "OptionHasThemeSong": "Thema Lied", @@ -932,11 +927,9 @@ "OptionImdbRating": "IMDb Waardering", "OptionLikes": "Leuk", "OptionMissingEpisode": "Ontbrekende Afleveringen", - "OptionMonday": "Maandag", "OptionNameSort": "Naam", "OptionNew": "Nieuw…", "OptionNone": "Geen", - "OptionOnAppStartup": "Op applicatie start", "OptionOnInterval": "Op interval", "OptionParentalRating": "Kijkwijzer classificatie", "OptionPlainStorageFolders": "Alle mappen weergeven als gewone opslagmappen", @@ -956,19 +949,14 @@ "OptionRequirePerfectSubtitleMatchHelp": "Een perfecte match vereisen zal de ondertitels filteren om alleen ondertitels te downloaden die getest en geverifieerd zijn met je exacte videobestand. Dit uitvinken zal de kans om ondertitels te vinden vergroten, maar ook de kans op een niet gesynchroniseerd of foute ondertitel vergroten.", "OptionResumable": "Hervatbaar", "OptionRuntime": "Speelduur", - "OptionSaturday": "Zaterdag", "OptionSaveMetadataAsHidden": "Metagegevens en afbeeldingen opslaan als verborgen bestanden", "OptionSaveMetadataAsHiddenHelp": "Het veranderen van dit zal gelden voor nieuwe metadata die wordt opgeslagen. Bestaande metadata bestanden zullen de volgende keer dat ze worden opgeslagen door Jellyfin Server worden bijgewerkt.", "OptionSubstring": "Subtekenreeks", - "OptionSunday": "Zondag", - "OptionThursday": "Donderdag", "OptionTrackName": "Naam van Nummer", - "OptionTuesday": "Dinsdag", "OptionTvdbRating": "TVDB Waardering", "OptionUnairedEpisode": "Toekomstige Afleveringen", "OptionUnplayed": "Niet afgespeeld", "OptionWakeFromSleep": "Uit slaapstand halen", - "OptionWednesday": "Woensdag", "OptionWeekdays": "Week dagen", "OptionWeekends": "Weekend", "OptionWeekly": "Wekelijks", @@ -1117,18 +1105,13 @@ "TabNotifications": "Meldingen", "TabOther": "Overig", "TabParentalControl": "Ouderlijk toezicht", - "TabPassword": "Wachtwoord", - "TabPlaylists": "Afspeellijst", "TabProfile": "Profiel", "TabProfiles": "Profielen", - "TabRecordings": "Opnamen", "TabResponses": "Reacties", "TabResumeSettings": "Hervatten", "TabScheduledTasks": "Geplande taken", - "TabSeries": "Serie", "TabSettings": "Instellingen", "TabUpcoming": "Binnenkort op TV", - "TabUsers": "Gebruikers", "Tags": "Labels", "TagsValue": "Labels: {0}", "TellUsAboutYourself": "Vertel ons over uzelf", @@ -1205,7 +1188,6 @@ "HeaderCastAndCrew": "Acteurs en medewerkers", "HeaderCastCrew": "Acteurs & medewerkers", "Art": "Afbeeldingen", - "HeaderLiveTV": "Live TV", "HeaderHttpHeaders": "HTTP Headers", "HeaderStatus": "Status", "AuthProviderHelp": "Selecteer een authenticatie provider om het wachtwoord van deze gebruiker te verifiëren.", @@ -1217,7 +1199,6 @@ "HeaderFavoriteSongs": "Favoriete nummers", "HeaderFavoriteVideos": "Favoriete Films", "HeaderInstantMix": "Directe Mix", - "HeaderLiveTv": "Live TV", "HeaderMedia": "Media", "HeaderTracks": "Nummers", "HeaderTuners": "Stemmers", @@ -1243,7 +1224,6 @@ "LabelSize": "Grootte:", "CopyStreamURLSuccess": "URL succesvol gekopieerd.", "CopyStreamURL": "Kopieer Stream URL", - "TabLiveTV": "Live TV", "ValueAlbumCount": "{0} albums", "FetchingData": "Meer data op aan het halen", "HeaderFavoriteBooks": "Favoriete Boeken", diff --git a/src/strings/pl.json b/src/strings/pl.json index d4f88b4b44..cb23cf40e6 100644 --- a/src/strings/pl.json +++ b/src/strings/pl.json @@ -341,8 +341,6 @@ "HeaderLibraryFolders": "Foldery biblioteki", "HeaderLibraryOrder": "Kolejność biblioteki", "HeaderLibrarySettings": "Ustawienia biblioteki", - "HeaderLiveTV": "Telewizja", - "HeaderLiveTv": "Telewizja", "HeaderLiveTvTunerSetup": "Konfiguracja tunera telewizyjnego", "HeaderLoginFailure": "Niepowodzenie logowania", "HeaderMedia": "Multimedia", @@ -358,7 +356,6 @@ "HeaderNewApiKey": "Nowy Klucz API", "HeaderNewDevices": "Nowe urządzenia", "HeaderNextEpisodePlayingInValue": "Następne odcinek za {0}", - "HeaderNextUp": "Do obejrzenia", "HeaderNextVideoPlayingInValue": "Następne wideo za {0}", "HeaderOnNow": "Teraz", "HeaderOtherItems": "Inne pozycje", @@ -366,7 +363,6 @@ "HeaderPassword": "Hasło", "HeaderPasswordReset": "Czyszczenie hasła", "HeaderPaths": "Foldery", - "HeaderPeople": "Osoby", "HeaderPhotoAlbums": "Albumy fotografii", "HeaderPinCodeReset": "Wyczyść kod PIN", "HeaderPlayAll": "Odtwarzaj wszystko", @@ -391,7 +387,6 @@ "HeaderRevisionHistory": "Historia zmian", "HeaderRunningTasks": "Uruchomione zadania", "HeaderScenes": "Sceny", - "HeaderSchedule": "Harmonogram", "HeaderSeasons": "Sezony", "HeaderSecondsValue": "{0} sekund", "HeaderSelectCertificatePath": "Wybierz folder certyfikatu", @@ -404,7 +399,6 @@ "HeaderSelectTranscodingPath": "Wybierz folder tymczasowy transkodowania", "HeaderSelectTranscodingPathHelp": "Przeglądaj lub wprowadź folder plików tymczasowych transkodowania. Folder musi umożliwiać zapis plików.", "HeaderSendMessage": "Wyślij wiadomość", - "HeaderSeries": "Seriale", "HeaderSeriesOptions": "Opcje nagrywania serialu", "HeaderSeriesStatus": "Stan serialu", "HeaderServerSettings": "Ustawienia serwera", @@ -984,7 +978,6 @@ "OptionExternallyDownloaded": "Pobieranie zewnętrzne", "OptionExtractChapterImage": "Wydobywaj obrazy rozdziałów", "OptionFavorite": "Ulubione", - "OptionFriday": "Piątek", "OptionHasSpecialFeatures": "Funkcje Specjalne", "OptionHasSubtitles": "Napisy", "OptionHasThemeSong": "Piosenka Przewodnia", @@ -1000,11 +993,9 @@ "OptionLikes": "Lubie", "OptionMax": "Maksymalny", "OptionMissingEpisode": "Brakujące Odcinki", - "OptionMonday": "Poniedziałek", "OptionNameSort": "Nazwa", "OptionNew": "Nowa…", "OptionNone": "Brak", - "OptionOnAppStartup": "Podczas uruchomienia aplikacji", "OptionOnInterval": "Cyklicznie", "OptionParentalRating": "Kategoria wiekowa", "OptionPlainStorageFolders": "Wyświetlaj wszystkie foldery jako zwyczajne foldery", @@ -1029,20 +1020,15 @@ "OptionResElement": "Element res", "OptionResumable": "Do wznowienia", "OptionRuntime": "Długość filmu", - "OptionSaturday": "Sobota", "OptionSaveMetadataAsHidden": "Zapisuj metadane i obrazy jako pliki ukryte", "OptionSaveMetadataAsHiddenHelp": "Zmiana ta będzie miała zastosowanie do nowych metadanych zapisanych w przyszłości. Istniejące pliki metadanych zostaną zaktualizowane przy następnym zapisie przez serwer.", "OptionSpecialEpisode": "Specjalne", "OptionSubstring": "Podwyrażenie", - "OptionSunday": "Niedziela", - "OptionThursday": "Czwartek", "OptionTrackName": "Nazwa utworu", - "OptionTuesday": "Wtorek", "OptionTvdbRating": "Ocena TVDB", "OptionUnairedEpisode": "Odcinki o planowanej emisji", "OptionUnplayed": "Nieobejrzany", "OptionWakeFromSleep": "Wybudź z uspienia", - "OptionWednesday": "Środa", "OptionWeekdays": "Dni Tygodnia", "OptionWeekends": "Weekendy", "OptionWeekly": "Cotygodniowo", @@ -1190,7 +1176,6 @@ "TabEpisodes": "Odcinki", "TabInfo": "Informacje", "TabLatest": "Ostatnio dodane", - "TabLiveTV": "Telewizja", "TabLogs": "Dziennik zdarzeń", "TabMusic": "Muzyka", "TabMusicVideos": "Teledyski", @@ -1200,22 +1185,17 @@ "TabNotifications": "Powiadomienia", "TabOther": "Inne", "TabParentalControl": "Kontrola rodzicielska", - "TabPassword": "Hasło", - "TabPlaylists": "Listy odtwarzania", "TabPlugins": "Wtyczki", "TabProfile": "Profil", "TabProfiles": "Profile", - "TabRecordings": "Nagrania", "TabResponses": "Odpowiedzi", "TabResumeSettings": "Wznawianie", "TabScheduledTasks": "Harmonogram zadań", - "TabSeries": "Seriale", "TabServer": "Serwer", "TabSettings": "Ustawienia", "TabStreaming": "Transmitowanie", "TabTrailers": "Zwiastuny", "TabUpcoming": "Wkrótce", - "TabUsers": "Użytkownicy", "Tags": "Znaczniki", "TagsValue": "Znaczniki: {0}", "TellUsAboutYourself": "Opowiedz nam o sobie", diff --git a/src/strings/pt-br.json b/src/strings/pt-br.json index 71913399f6..25f6afd31e 100644 --- a/src/strings/pt-br.json +++ b/src/strings/pt-br.json @@ -329,8 +329,6 @@ "HeaderLibraryFolders": "Pastas da Biblioteca", "HeaderLibraryOrder": "Ordem da Biblioteca", "HeaderLibrarySettings": "Configurações da Biblioteca", - "HeaderLiveTV": "TV ao Vivo", - "HeaderLiveTv": "TV ao Vivo", "HeaderLiveTvTunerSetup": "Configuração do Sintonizador da TV ao Vivo", "HeaderLoginFailure": "Falha no Login", "HeaderMedia": "Mídia", @@ -346,7 +344,6 @@ "HeaderNewApiKey": "Nova Chave de API", "HeaderNewDevices": "Novos Dispositivos", "HeaderNextEpisodePlayingInValue": "Reproduzindo Próximo Episódio em {0}", - "HeaderNextUp": "A Seguir", "HeaderNextVideoPlayingInValue": "Reproduzindo Próximo Vídeo em {0}", "HeaderOnNow": "Em Exibição", "HeaderOtherItems": "Outros Itens", @@ -354,7 +351,6 @@ "HeaderPassword": "Senha", "HeaderPasswordReset": "Redefinição de Senha", "HeaderPaths": "Locais", - "HeaderPeople": "Pessoas", "HeaderPhotoAlbums": "Álbuns de Fotos", "HeaderPinCodeReset": "Redefinir Código Pin", "HeaderPlayAll": "Reproduzir Tudo", @@ -379,7 +375,6 @@ "HeaderRevisionHistory": "Histórico de Versões", "HeaderRunningTasks": "Tarefas em Execução", "HeaderScenes": "Cenas", - "HeaderSchedule": "Programação", "HeaderSeasons": "Temporadas", "HeaderSecondsValue": "{0} Segundos", "HeaderSelectCertificatePath": "Selecionar Local do Certificado", @@ -392,7 +387,6 @@ "HeaderSelectTranscodingPath": "Selecionar Local Temporário da Transcodificação", "HeaderSelectTranscodingPathHelp": "Navegue ou digite o local para usar para arquivos temporários de transcodificação. A pasta deve ter permissão de gravação.", "HeaderSendMessage": "Enviar Mensagem", - "HeaderSeries": "Séries", "HeaderSeriesOptions": "Opções da Série", "HeaderSeriesStatus": "Status da Série", "HeaderServerSettings": "Configurações de Servidor", @@ -956,7 +950,6 @@ "OptionExternallyDownloaded": "Download externo", "OptionExtractChapterImage": "Ativar extração de imagens de capítulos", "OptionFavorite": "Favoritos", - "OptionFriday": "Sexta-feira", "OptionHasSpecialFeatures": "Recursos Especiais", "OptionHasSubtitles": "Legendas", "OptionHasThemeSong": "Música-Tema", @@ -971,11 +964,9 @@ "OptionLikes": "Curtidas", "OptionMax": "Máx", "OptionMissingEpisode": "Episódios em Falta", - "OptionMonday": "Segunda-feira", "OptionNameSort": "Nome", "OptionNew": "Novo…", "OptionNone": "Nenhum", - "OptionOnAppStartup": "Ao iniciar a aplicação", "OptionOnInterval": "Em um intervalo", "OptionParentalRating": "Classificação Etária", "OptionPlainStorageFolders": "Exibir todas as pastas como pastas de armazenamento", @@ -997,19 +988,14 @@ "OptionResElement": "elemento res", "OptionResumable": "Retomável", "OptionRuntime": "Duração", - "OptionSaturday": "Sábado", "OptionSaveMetadataAsHidden": "Salvar metadados e imagens como arquivos ocultos", "OptionSaveMetadataAsHiddenHelp": "Isto será aplicado sobre novos metadados salvos. Os arquivos de metadados existentes serão atualizados na próxima vez que forem salvos no Servidor Jellyfin.", "OptionSpecialEpisode": "Especiais", - "OptionSunday": "Domingo", - "OptionThursday": "Quinta-feira", "OptionTrackName": "Nome da Faixa", - "OptionTuesday": "Terça-feira", "OptionTvdbRating": "Avaliação TVDB", "OptionUnairedEpisode": "Episódios a Estrear", "OptionUnplayed": "Não reproduzido", "OptionWakeFromSleep": "Despertar da hibernação", - "OptionWednesday": "Quarta-feira", "OptionWeekdays": "Dias da semana", "OptionWeekends": "Fins de semana", "OptionWeekly": "Semanal", @@ -1150,7 +1136,6 @@ "TabDirectPlay": "Reprodução Direta", "TabEpisodes": "Episódios", "TabLatest": "Recentes", - "TabLiveTV": "TV ao Vivo", "TabMusic": "Música", "TabMusicVideos": "Videoclipes", "TabMyPlugins": "Meus Plugins", @@ -1159,19 +1144,14 @@ "TabNotifications": "Notificações", "TabOther": "Outros", "TabParentalControl": "Controle dos Pais", - "TabPassword": "Senha", - "TabPlaylists": "Listas de Reprodução", "TabProfile": "Perfil", "TabProfiles": "Perfis", - "TabRecordings": "Gravações", "TabResponses": "Respostas", "TabResumeSettings": "Retomar", "TabScheduledTasks": "Tarefas Agendadas", - "TabSeries": "Séries", "TabServer": "Servidor", "TabSettings": "Configurações", "TabUpcoming": "A Seguir", - "TabUsers": "Usuários", "TellUsAboutYourself": "Conte-nos sobre você", "ThemeSongs": "Músicas-tema", "ThemeVideos": "Vídeos-tema", diff --git a/src/strings/pt-pt.json b/src/strings/pt-pt.json index 2d6890ff6d..02fa88aaf6 100644 --- a/src/strings/pt-pt.json +++ b/src/strings/pt-pt.json @@ -155,8 +155,6 @@ "HeaderLibraryAccess": "Acesso à Biblioteca", "HeaderLibraryFolders": "Pastas Multimédia", "HeaderLibrarySettings": "Configurações da Biblioteca", - "HeaderLiveTV": "TV em Direto", - "HeaderLiveTv": "TV em Direto", "HeaderLoginFailure": "Falha no Login", "HeaderMedia": "Multimédia", "HeaderMediaFolders": "Pastas Multimédia", @@ -165,12 +163,10 @@ "HeaderMusicVideos": "Videoclips", "HeaderMyMedia": "O Meu Conteúdo", "HeaderNewApiKey": "Nova Chave da API", - "HeaderNextUp": "A Seguir", "HeaderParentalRatings": "Classificações Parentais", "HeaderPassword": "Palavra-passe", "HeaderPasswordReset": "Redefinição de Palavra-Passe", "HeaderPaths": "Localizações", - "HeaderPeople": "Pessoas", "HeaderPinCodeReset": "Redefinir Código PIN", "HeaderPlayAll": "Reproduzir Todos", "HeaderPlayback": "Reprodução de Multimédia", @@ -190,7 +186,6 @@ "HeaderRevisionHistory": "Histórico de Versões", "HeaderRunningTasks": "Tarefas em Execução", "HeaderScenes": "Cenas", - "HeaderSchedule": "Agendamentos", "HeaderSelectCertificatePath": "Selecione a Localização do Certificado", "HeaderSelectMetadataPath": "Selecione a Localização dos Metadados", "HeaderSelectMetadataPathHelp": "Procure ou introduza a localização da pasta para guardar os metadados. O Servidor Jellyfin deve ter acesso de escrita a essa pasta.", @@ -201,7 +196,6 @@ "HeaderSelectTranscodingPath": "Selecione o Local Temporário da Transcodificação", "HeaderSelectTranscodingPathHelp": "Procure ou introduza a localização da pasta para guardar os ficheiros temporários de transcodificação. O Servidor Jellyfin deve ter acesso de escrita a essa pasta.", "HeaderSendMessage": "Enviar mensagem", - "HeaderSeries": "Série", "HeaderServerSettings": "Configurações do Servidor", "HeaderSettings": "Configurações", "HeaderSetupLibrary": "Configurar Bibliotecas Multimédia", @@ -555,7 +549,6 @@ "OptionEveryday": "Todos os dias", "OptionExternallyDownloaded": "Download Externo", "OptionFavorite": "Favoritos", - "OptionFriday": "Sexta", "OptionHasSpecialFeatures": "Extras", "OptionHasSubtitles": "Legendas", "OptionHasThemeSong": "Música de Tema", @@ -569,11 +562,9 @@ "OptionLikes": "Gostos", "OptionMax": "Máx", "OptionMissingEpisode": "Episódios em Falta", - "OptionMonday": "Segunda", "OptionNameSort": "Nome", "OptionNew": "Nova…", "OptionNone": "Nenhum", - "OptionOnAppStartup": "Ao iniciar a aplicação", "OptionOnInterval": "Num intervalo", "OptionParentalRating": "Classificação Parental", "OptionPlainStorageFolders": "Mostrar todas as pastas como pastas de armazenamento simples", @@ -593,18 +584,13 @@ "OptionResElement": "elemento res", "OptionResumable": "Retomável", "OptionRuntime": "Duração", - "OptionSaturday": "Sábado", "OptionSaveMetadataAsHidden": "Guardar metadados e imagens como ficheiros ocultos", "OptionSpecialEpisode": "Especiais", - "OptionSunday": "Domingo", - "OptionThursday": "Quinta", "OptionTrackName": "Nome da pista", - "OptionTuesday": "Terça", "OptionTvdbRating": "Classificação no TVDB", "OptionUnairedEpisode": "Episódios por Estrear", "OptionUnplayed": "Por reproduzir", "OptionWakeFromSleep": "Retomar da suspensão", - "OptionWednesday": "Quarta", "OptionWeekdays": "Dias da semana", "OptionWeekends": "Fins-de-semana", "OptionWeekly": "Semanalmente", @@ -657,7 +643,6 @@ "TabDirectPlay": "Reprodução Direta", "TabEpisodes": "Episódios", "TabLatest": "Mais recente", - "TabLiveTV": "TV em Direto", "TabMusic": "Música", "TabMusicVideos": "Videoclips", "TabMyPlugins": "As Minhas Extensões", @@ -666,19 +651,14 @@ "TabNotifications": "Notificações", "TabOther": "Outro", "TabParentalControl": "Controlo Parental", - "TabPassword": "Palavra-passe", - "TabPlaylists": "Listas de Reprodução", "TabPlugins": "Extensões", "TabProfile": "Perfil", "TabProfiles": "Perfis", - "TabRecordings": "Gravações", "TabResponses": "Respostas", "TabScheduledTasks": "Tarefas Agendadas", - "TabSeries": "Séries", "TabServer": "Servidor", "TabSettings": "Configurações", "TabUpcoming": "Próximos", - "TabUsers": "Utilizadores", "TellUsAboutYourself": "Fale-nos sobre si", "ThisWizardWillGuideYou": "Este assistente irá ajudá-lo durante o processo de configuração. Para começar, selecione o idioma.", "Thursday": "Quinta", diff --git a/src/strings/pt.json b/src/strings/pt.json index 324f08a064..95842bb22a 100644 --- a/src/strings/pt.json +++ b/src/strings/pt.json @@ -33,20 +33,15 @@ "Thursday": "Quinta", "ThisWizardWillGuideYou": "Este assistente ajudá-lo-á durante o processo de configuração. Para começar, selecione o idioma.", "TellUsAboutYourself": "Fale-nos sobre si", - "TabUsers": "Utilizadores", "TabUpcoming": "Próximos", "TabStreaming": "Transmissão", "TabSettings": "Configurações", "TabServer": "Servidor", - "TabSeries": "Séries", "TabScheduledTasks": "Tarefas Agendadas", "TabResponses": "Respostas", - "TabRecordings": "Gravações", "TabProfiles": "Perfis", "TabProfile": "Perfil", "TabPlugins": "Extensões", - "TabPlaylists": "Listas de Reprodução", - "TabPassword": "Palavra-passe", "TabParentalControl": "Controlo Parental", "TabOther": "Outro", "TabNotifications": "Notificações", @@ -55,7 +50,6 @@ "TabMyPlugins": "As Minhas Extensões", "TabMusicVideos": "Videoclips", "TabMusic": "Música", - "TabLiveTV": "TV em Directo", "TabLatest": "Mais recente", "TabEpisodes": "Episódios", "TabDirectPlay": "Reprodução Directa", @@ -156,19 +150,14 @@ "OptionWeekly": "Semanalmente", "OptionWeekends": "Fins-de-semana", "OptionWeekdays": "Dias da semana", - "OptionWednesday": "Quarta", "OptionWakeFromSleep": "Retomar da suspensão", "OptionUnplayed": "Por reproduzir", "OptionUnairedEpisode": "Episódios por Estrear", "OptionTvdbRating": "Classificação no TVDB", - "OptionTuesday": "Terça", "OptionTrackName": "Nome da pista", - "OptionThursday": "Quinta", - "OptionSunday": "Domingo", "OptionSubstring": "Subcadeia", "OptionSpecialEpisode": "Especiais", "OptionSaveMetadataAsHidden": "Guardar metadados e imagens como ficheiros ocultos", - "OptionSaturday": "Sábado", "OptionRuntime": "Duração", "OptionResumable": "Retomável", "OptionResElement": "elemento res", @@ -190,7 +179,6 @@ "OptionPlainStorageFolders": "Mostrar todas as pastas como simples pastas de armazenamento", "OptionParentalRating": "Classificação Parental", "OptionOnInterval": "Num intervalo", - "OptionOnAppStartup": "Ao iniciar a aplicação", "OptionNone": "Nenhum", "OptionNew": "Nova...", "OptionNameSort": "Nome", @@ -501,7 +489,6 @@ "HeaderServerSettings": "Configurações do Servidor", "HeaderSeriesStatus": "Estado da Série", "HeaderSeriesOptions": "Opções da Série", - "HeaderSeries": "Série", "HeaderSendMessage": "Enviar mensagem", "HeaderSelectTranscodingPathHelp": "Procure ou introduza a localização da pasta para guardar os ficheiros temporários de transcodificação. O Servidor Jellyfin deve ter acesso de escrita a essa pasta.", "HeaderSelectTranscodingPath": "Seleccione o Local Temporário da Transcodificação", @@ -514,7 +501,6 @@ "HeaderSelectCertificatePath": "Seleccione a Localização do Certificado", "HeaderSecondsValue": "{0} Segundos", "HeaderSeasons": "Temporadas", - "HeaderSchedule": "Agendamentos", "HeaderScenes": "Cenas", "HeaderRunningTasks": "Tarefas em Execução", "HeaderRevisionHistory": "Histórico de Versões", @@ -539,7 +525,6 @@ "HeaderPlayAll": "Reproduzir Todos", "HeaderPinCodeReset": "Redefinir Código PIN", "HeaderPhotoAlbums": "Álbuns de Fotografias", - "HeaderPeople": "Pessoas", "HeaderPaths": "Localizações", "HeaderPasswordReset": "Redefinição de Palavra-Passe", "HeaderPassword": "Palavra-passe", @@ -547,7 +532,6 @@ "HeaderOtherItems": "Outros Itens", "HeaderOnNow": "No Ar", "HeaderNextVideoPlayingInValue": "Reprodução do próximo vídeo começa em {0}", - "HeaderNextUp": "A Seguir", "HeaderNextEpisodePlayingInValue": "Reprodução do próximo episódio começa em {0}", "HeaderNewDevices": "Novos Dispositivos", "HeaderNewApiKey": "Nova Chave da API", @@ -562,8 +546,6 @@ "HeaderMediaFolders": "Pastas Multimédia", "HeaderMedia": "Multimédia", "HeaderLiveTvTunerSetup": "Configurar Sintonizador de TV", - "HeaderLiveTv": "TV ao Vivo", - "HeaderLiveTV": "TV em Directo", "HeaderLibrarySettings": "Configurações da Biblioteca", "HeaderLibraryOrder": "Ordenação da Biblioteca", "HeaderLibraryFolders": "Pastas Multimédia", @@ -971,7 +953,6 @@ "ButtonChangeServer": "Alterar Servidor", "ButtonCancel": "Cancelar", "ButtonBack": "Voltar", - "OptionMonday": "Segunda", "OptionMissingEpisode": "Episódios em Falta", "OptionMax": "Máximo", "OptionLikes": "Gostos", @@ -984,7 +965,6 @@ "OptionHasThemeSong": "Música de Tema", "OptionHasSubtitles": "Legendas", "OptionHasSpecialFeatures": "Extras", - "OptionFriday": "Sexta", "OptionFavorite": "Favoritos", "OptionExternallyDownloaded": "Download Externo", "OptionEveryday": "Todos os dias", diff --git a/src/strings/ro.json b/src/strings/ro.json index 7fcce88aa2..6eeeeba01f 100644 --- a/src/strings/ro.json +++ b/src/strings/ro.json @@ -41,13 +41,11 @@ "HeaderLatestEpisodes": "Cele Mai Noi Episoade", "HeaderLatestMovies": "Cele mai noi Filme", "HeaderLatestRecordings": "Cele mai recente înregistrări", - "HeaderNextUp": "Urmează", "HeaderPaths": "Căi", "HeaderPleaseSignIn": "Vă rugăm, autentificați-vă", "HeaderPreferredMetadataLanguage": "Limba preferata pentru metadata", "HeaderRecentlyPlayed": "Rulate Recent", "HeaderRemoteControl": "Control la distanță", - "HeaderSeries": "Seriale", "HeaderSetupLibrary": "Configurați-vă bibliotecile media", "HeaderTaskTriggers": "Declanșatori Sarcini", "HeaderUsers": "Utilizatori", @@ -137,7 +135,6 @@ "OptionEnableAccessToAllLibraries": "Activează accesul la toate bibliotecile", "OptionEnded": "Anulat", "OptionFavorite": "Favorite", - "OptionFriday": "Vineri", "OptionHasSpecialFeatures": "Caracteristici Speciale", "OptionHasSubtitles": "Subtitrări", "OptionHasThemeSong": "Audio de Fundal", @@ -146,7 +143,6 @@ "OptionHideUserFromLoginHelp": "Folositor pentru conturi private sau de administrator ascunse. Utilizatorul va trebui să se conecteze manual prin introducerea numelui de utilizator și a parolei.", "OptionImdbRating": "Rating IMDb", "OptionLikes": "Like-uri", - "OptionMonday": "Luni", "OptionNameSort": "Nume", "OptionParentalRating": "Limită de vârstă", "OptionPlayCount": "Contorizare rulări", @@ -155,13 +151,8 @@ "OptionReleaseDate": "Dată Lansare", "OptionResumable": "Poate fi continuat", "OptionRuntime": "Timp Rulare", - "OptionSaturday": "Sâmbătă", - "OptionSunday": "Duminică", - "OptionThursday": "Joi", "OptionTrackName": "Nume melodie", - "OptionTuesday": "Marți", "OptionUnplayed": "Nerulat", - "OptionWednesday": "Miercuri", "ParentalRating": "Parental Rating", "Saturday": "Sâmbătă", "Save": "Salveaza", @@ -178,11 +169,8 @@ "TabNetworks": "Rețele TV", "TabNotifications": "Notificări", "TabOther": "Altele", - "TabPassword": "Parolă", "TabProfile": "Profil", "TabProfiles": "Profile", - "TabRecordings": "Înregistrări", - "TabSeries": "Seriale", "TabSettings": "Setări", "TabTrailers": "Trailere", "TabUpcoming": "Urmează să apară", @@ -429,7 +417,6 @@ "HeaderParentalRatings": "Evaluări parentale", "HeaderPassword": "Parolă", "HeaderPasswordReset": "Resetare Parolă", - "HeaderPeople": "Persoane", "HeaderPhotoAlbums": "Albume Fotografii", "HeaderPinCodeReset": "Resetare cod PIN", "HeaderPlayAll": "Redare tot", @@ -448,7 +435,6 @@ "HeaderRevisionHistory": "Istoricul reviziilor", "HeaderRunningTasks": "În desfășurare", "HeaderScenes": "Scene", - "HeaderSchedule": "Planificare", "HeaderSeasons": "Sezoane", "HeaderSecondsValue": "{0} Secunde", "HeaderSelectCertificatePath": "Selectați ruta certificatului", @@ -487,7 +473,6 @@ "HeaderKeepSeries": "Păstrează seriile", "HeaderLatestMedia": "Cele mai recente media", "HeaderLibraryOrder": "Ordinea Bibliotecii", - "HeaderLiveTv": "TV în Direct", "HeaderContinueListening": "Continuați să ascultați", "Down": "In jos", "EveryNDays": "La fiecare {0} zile", @@ -505,7 +490,6 @@ "Folders": "Dosare", "HeaderAlbumArtists": "Album Artiști", "HeaderFavoriteSongs": "Melodii Favorite", - "HeaderLiveTV": "TV în Direct", "Movies": "Filme", "Playlists": "Liste redare", "Shows": "Spectacole", @@ -1259,7 +1243,6 @@ "OptionPlainStorageFoldersHelp": "Toate dosarele sunt reprezentate în DIDL ca „object.container.storageFolder” în loc de un tip mai specific, cum ar fi „object.container.person.musicArtist”.", "OptionPlainStorageFolders": "Afișați toate dosarele ca dosare simple de stocare", "OptionOnInterval": "La un interval", - "OptionOnAppStartup": "La pornirea aplicației", "OptionNone": "Nici unul", "OptionNew": "Nou…", "OptionMissingEpisode": "Episoade lipsă", @@ -1351,19 +1334,16 @@ "ThemeSongs": "Melodiile temei", "TagsValue": "Etichete: {0}", "Tags": "Etichete", - "TabUsers": "Utilizatori", "TabStreaming": "Transmitere", "TabServer": "Server", "TabScheduledTasks": "Task-uri programate", "TabResumeSettings": "Continuă", "TabResponses": "Răspunsuri", "TabPlugins": "Pluginuri", - "TabPlaylists": "Liste redare", "TabParentalControl": "Control Parental", "TabNfoSettings": "Setări NFO", "TabNetworking": "Rețele", "TabLogs": "Jurnal", - "TabLiveTV": "TV în Direct", "TabInfo": "Info", "TabDirectPlay": "Redare directă", "TabDashboard": "Tablou de bord", diff --git a/src/strings/ru.json b/src/strings/ru.json index f7ec2e0715..9989a4c47e 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -344,8 +344,6 @@ "HeaderLibraryFolders": "Медиатечные папки", "HeaderLibraryOrder": "Порядок медиатек", "HeaderLibrarySettings": "Параметры медиатеки", - "HeaderLiveTV": "Эфир", - "HeaderLiveTv": "Эфир", "HeaderLiveTvTunerSetup": "Установка и настройка тюнера", "HeaderLoginFailure": "Сбой входа", "HeaderMedia": "Медиаданные", @@ -361,7 +359,6 @@ "HeaderNewApiKey": "Новый API-ключ", "HeaderNewDevices": "Новые устройства", "HeaderNextEpisodePlayingInValue": "Следующий эпизод воспроизводится через {0}", - "HeaderNextUp": "Очередное", "HeaderNextVideoPlayingInValue": "Следующее видео воспроизводится через {0}", "HeaderOnNow": "В эфире", "HeaderOtherItems": "Прочие элементы", @@ -369,7 +366,6 @@ "HeaderPassword": "Пароль", "HeaderPasswordReset": "Сброс пароля", "HeaderPaths": "Пути", - "HeaderPeople": "Люди", "HeaderPhotoAlbums": "Фотоальбомы", "HeaderPinCodeReset": "Сброс PIN-кода", "HeaderPlayAll": "Воспроизвести все", @@ -394,7 +390,6 @@ "HeaderRevisionHistory": "История изменений", "HeaderRunningTasks": "Выполняющиеся задачи", "HeaderScenes": "Сцены", - "HeaderSchedule": "Расписание", "HeaderSeasons": "Сезоны", "HeaderSecondsValue": "{0} с", "HeaderSelectCertificatePath": "Выбор пути к сертификату", @@ -407,7 +402,6 @@ "HeaderSelectTranscodingPath": "Выбор пути для временных файлов перекодировки", "HeaderSelectTranscodingPathHelp": "Найдите или введите путь, чтобы использовать для файлов перекодировки. Папка должна быть доступна для записи.", "HeaderSendMessage": "Передача сообщения", - "HeaderSeries": "Сериалы", "HeaderSeriesOptions": "Опции сериала", "HeaderSeriesStatus": "Статус сериала", "HeaderServerSettings": "Параметры сервера", @@ -996,7 +990,6 @@ "OptionExternallyDownloaded": "Внешние загружаемые", "OptionExtractChapterImage": "Включить извлечение изображений сцен", "OptionFavorite": "Избранное", - "OptionFriday": "пятница", "OptionHasSpecialFeatures": "Доп. материалы", "OptionHasSubtitles": "Субтитры", "OptionHasThemeSong": "Тематическая мелодия", @@ -1012,11 +1005,9 @@ "OptionLikes": "Нравящиеся", "OptionMax": "Макс.", "OptionMissingEpisode": "Отсутствующие эпизоды", - "OptionMonday": "понедельник", "OptionNameSort": "Название", "OptionNew": "Новое…", "OptionNone": "Ничего", - "OptionOnAppStartup": "При запуске приложения", "OptionOnInterval": "В интервале", "OptionParentalRating": "Возрастная категория", "OptionPlainStorageFolders": "Отображать все папки, как обычные папки хранения", @@ -1040,20 +1031,15 @@ "OptionRequirePerfectSubtitleMatchHelp": "Требование полного соответствия, при котором будут отфильтровываться только те субтитры, которые были проверены и подтверждены на соответствие с вашим видеофайлом. Если снять данный флажок, повысится вероятность загрузки субтитров, но увеличатся шансы несовпадения по времени или неверного текста субтитров.", "OptionResumable": "Возможно возобновление", "OptionRuntime": "Длительность", - "OptionSaturday": "суббота", "OptionSaveMetadataAsHidden": "Сохранять метаданные и изображения в виде скрытых файлов", "OptionSaveMetadataAsHiddenHelp": "Это изменение будет применено к новым метаданным сохраняемым в будущем. Существующие файлы метаданных будут обновлены в следующий раз, когда они будут сохраняться на Jellyfin Server.", "OptionSpecialEpisode": "Спецэпизоды", "OptionSubstring": "Подстрока", - "OptionSunday": "воскресенье", - "OptionThursday": "четверг", "OptionTrackName": "Название трека", - "OptionTuesday": "вторник", "OptionTvdbRating": "Оценка TVDB", "OptionUnairedEpisode": "Ожидаемые эпизоды", "OptionUnplayed": "Невоспроизведённое", "OptionWakeFromSleep": "Выход из спящего режима", - "OptionWednesday": "среда", "OptionWeekdays": "В будни", "OptionWeekends": "Выходные", "OptionWeekly": "Еженедельно", @@ -1203,7 +1189,6 @@ "TabEpisodes": "Эпизоды", "TabInfo": "Инфо", "TabLatest": "Новейшее", - "TabLiveTV": "Эфир", "TabLogs": "Журналы", "TabMusic": "Музыка", "TabMusicVideos": "Муз. видео", @@ -1213,22 +1198,17 @@ "TabNotifications": "Уведомления", "TabOther": "Другое", "TabParentalControl": "Управление содержанием", - "TabPassword": "Пароль", - "TabPlaylists": "Плей-листы", "TabPlugins": "Плагины", "TabProfile": "Профиль", "TabProfiles": "Профили", - "TabRecordings": "Записи", "TabResponses": "Отклики", "TabResumeSettings": "Возобновление", "TabScheduledTasks": "Планировщик", - "TabSeries": "Сериалы", "TabServer": "Сервер", "TabSettings": "Параметры", "TabStreaming": "Трансляция", "TabTrailers": "Трейлеры", "TabUpcoming": "Ожидаемое", - "TabUsers": "Пользователи", "Tags": "Теги", "TagsValue": "Теги: {0}", "TellUsAboutYourself": "Расскажите о себе", diff --git a/src/strings/sk.json b/src/strings/sk.json index d8572ca1b2..9968b15c6a 100644 --- a/src/strings/sk.json +++ b/src/strings/sk.json @@ -205,8 +205,6 @@ "HeaderLibraryFolders": "Priečinky knižnice", "HeaderLibraryOrder": "Poradie knižnice", "HeaderLibrarySettings": "Nastavenia knižnice", - "HeaderLiveTV": "Živá TV", - "HeaderLiveTv": "Živá TV", "HeaderMedia": "Médiá", "HeaderMediaInfo": "Informácie o médiu", "HeaderMetadataSettings": "Nastavenia metadát", @@ -219,13 +217,11 @@ "HeaderNewApiKey": "Nový kľúč API", "HeaderNewDevices": "Nové zariadenia", "HeaderNextEpisodePlayingInValue": "Ďalšia epizóda sa spustí o {0}", - "HeaderNextUp": "Nasleduje", "HeaderNextVideoPlayingInValue": "Ďalšie video sa spustí o {0}", "HeaderOtherItems": "Iné položky", "HeaderPassword": "Heslo", "HeaderPasswordReset": "Obnoviť heslo", "HeaderPaths": "Cesty", - "HeaderPeople": "Ľudia", "HeaderPhotoAlbums": "Albumy fotografií", "HeaderPinCodeReset": "Obnoviť PIN kód", "HeaderPlayAll": "Prehrať všetko", @@ -240,13 +236,11 @@ "HeaderRevisionHistory": "História revízií", "HeaderRunningTasks": "Bežiace úlohy", "HeaderScenes": "Scény", - "HeaderSchedule": "Rozvrh", "HeaderSeasons": "Série", "HeaderSecondsValue": "{0} sekúnd", "HeaderSelectPath": "Vybrať priečinok", "HeaderSelectServer": "Vybrať server", "HeaderSendMessage": "Poslať správu", - "HeaderSeries": "Seriál", "HeaderServerSettings": "Nastavenia servera", "HeaderSettings": "Nastavenia", "HeaderSetupLibrary": "Nastavte Vaše knižnice médií", @@ -596,7 +590,6 @@ "OptionEquals": "Sa rovná", "OptionEveryday": "Každý deň", "OptionFavorite": "Obľúbené", - "OptionFriday": "Piatok", "OptionHasSubtitles": "Titulky", "OptionHasThemeSong": "Tématická hudba", "OptionHasThemeVideo": "Tématické video", @@ -606,11 +599,9 @@ "OptionImdbRating": "Hodnotenie IMDb", "OptionLikes": "Páči sa", "OptionMissingEpisode": "Chýbajúce epizódy", - "OptionMonday": "Pondelok", "OptionNameSort": "Názov", "OptionNew": "Nové…", "OptionNone": "Žiadne", - "OptionOnAppStartup": "Pri spustení aplikácie", "OptionParentalRating": "Rodičovské hodnotenie", "OptionPlainVideoItems": "Zobraziť všetky videá ako obyčajné video položky", "OptionPlayCount": "Počet prehraní", @@ -621,17 +612,12 @@ "OptionReleaseDate": "Dátum vydania", "OptionResumable": "Pozastaviteľný", "OptionRuntime": "Dĺžka", - "OptionSaturday": "Sobota", "OptionSaveMetadataAsHidden": "Uložiť metadáta a obrázky ako skryté súbory", - "OptionSunday": "Nedeľa", - "OptionThursday": "Štvrtok", "OptionTrackName": "Názov skladby", - "OptionTuesday": "Utorok", "OptionTvdbRating": "TVDB hodnotenie", "OptionUnairedEpisode": "Nevysielané epizódy", "OptionUnplayed": "Neprehrané", "OptionWakeFromSleep": "Zobudiť zo spánku", - "OptionWednesday": "Streda", "OptionWeekdays": "Pracovné dni", "OptionWeekends": "Víkendy", "OptionWeekly": "Týždenne", @@ -736,7 +722,6 @@ "TabDashboard": "Dashboard", "TabEpisodes": "Epizódy", "TabLatest": "Najnovšie", - "TabLiveTV": "Živá TV", "TabMusic": "Hudba", "TabMusicVideos": "Hudobné videá", "TabMyPlugins": "Moje zásuvné moduly", @@ -745,19 +730,15 @@ "TabNotifications": "Upozornenia", "TabOther": "Iné", "TabParentalControl": "Rodičovská kontrola", - "TabPassword": "Heslo", "TabPlugins": "Zásuvné moduly", "TabProfile": "Profil", "TabProfiles": "Profily", - "TabRecordings": "Nahrávky", "TabResponses": "Odpovede", "TabResumeSettings": "Pokračovať", "TabScheduledTasks": "Naplánované úlohy", - "TabSeries": "Seriály", "TabSettings": "Nastavenia", "TabTrailers": "Trailery", "TabUpcoming": "Nadchádzajúce", - "TabUsers": "Užívatelia", "TellUsAboutYourself": "Povedzte nám niečo o sebe", "ThisWizardWillGuideYou": "Tento sprievodca Vám pomôže prejsť inštalačným procesom. Pre začatie zvoľte preferovaný jazyk.", "Thursday": "Štvrtok", @@ -938,7 +919,6 @@ "SortName": "Zoradiť podľa názvu", "TabDirectPlay": "Priame prehrávanie", "TabLogs": "Záznamy", - "TabPlaylists": "Playlisty", "TabServer": "Server", "TabStreaming": "Streamovanie", "Tags": "Tagy", diff --git a/src/strings/sl-si.json b/src/strings/sl-si.json index 22d0d60317..f9588653ab 100644 --- a/src/strings/sl-si.json +++ b/src/strings/sl-si.json @@ -10,7 +10,6 @@ "HeaderFrequentlyPlayed": "Pogosto Predvajano", "HeaderPaths": "Poti", "HeaderRecentlyPlayed": "Nazadnje Predvajano", - "HeaderSeries": "Serije", "HeaderSettings": "Nastavitve", "HeaderUser": "Uporabnik", "LabelArtists": "Izvajalci:", @@ -45,7 +44,6 @@ "TabMusic": "Glasba", "TabMyPlugins": "Moji dodatki", "TabNetworks": "Omrezja", - "TabPassword": "Geslo", "TabProfile": "Profil", "TabProfiles": "Profili", "TabUpcoming": "Prihajajoče", @@ -87,8 +85,6 @@ "Genres": "Zvrsti", "HeaderAlbumArtists": "Izvajalci albuma", "HeaderContinueWatching": "Nadaljuj gledanje", - "HeaderLiveTV": "TV v živo", - "HeaderNextUp": "Sledi", "Movies": "Filmi", "AllowedRemoteAddressesHelp": "Z vejico ločen seznam IP naslovov ali IP/maska omrežij, ki jim je dovoljen oddaljeni dostop. Če pustite prazno, bodo dovoljeni vsi oddaljeni naslovi.", "AlwaysPlaySubtitles": "Vedno prikaži", @@ -261,7 +257,6 @@ "HeaderSelectCertificatePath": "Izberi pot certifikata", "HeaderSecondsValue": "{0} sekund", "HeaderSeasons": "Sezone", - "HeaderSchedule": "Urnik", "HeaderScenes": "Scene", "HeaderRunningTasks": "Aktivna opravila", "HeaderRestart": "Ponovni zagon", @@ -283,7 +278,6 @@ "HeaderPlayAll": "Predvajaj vse", "HeaderPinCodeReset": "Ponastavi PIN kodo", "HeaderPhotoAlbums": "Foto albumi", - "HeaderPeople": "Osebe", "HeaderPasswordReset": "Ponastavi geslo", "HeaderPassword": "Geslo", "HeaderParentalRatings": "Ocena za starše", @@ -304,7 +298,6 @@ "HeaderMedia": "Predstavnost", "HeaderLoginFailure": "Neuspešna prijava", "HeaderLiveTvTunerSetup": "Nastavitev sprejemnika za TV v živo", - "HeaderLiveTv": "TV v živo", "HeaderLibrarySettings": "Nastavitve knjižnice", "HeaderLibraryOrder": "Vrstni red knjižnic", "HeaderLibraryFolders": "Mape knjižnjice", @@ -762,18 +755,15 @@ "Smart": "Pametno", "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "Te nastavitve veljajo tudi za predvajanja Chromecast, ki jih začne ta naprava.", "TabDashboard": "Nadzorna plošča", - "TabLiveTV": "TV v živo", "PinCodeResetConfirmation": "Ali ste prepričani, da želite ponastaviti PIN kodo?", "PreferEmbeddedTitlesOverFileNames": "Prioritiziraj vdelane naslove pred imeni datotek", "PreferEmbeddedTitlesOverFileNamesHelp": "To vpliva na privzeto prikazan naslov, ko ni na voljo internetnih ali lokalnih metapodatkov.", "Rate": "Oceni", "RecentlyWatched": "Nedavno ogledano", "RecommendationBecauseYouLike": "Ker vam je všeč {0}", - "OptionSunday": "Nedelja", "OptionTvdbRating": "TVDB ocena", "OptionUnairedEpisode": "Nepredvajane epizode", "PleaseEnterNameOrId": "Prosimo vnesite ime ali zunanji ID.", - "OptionWednesday": "Sreda", "OptionWeekends": "Vikendi", "Previous": "Prejšnji", "People": "Ljudje", @@ -802,9 +792,7 @@ "TabNetworking": "Omrežje", "OptionSaveMetadataAsHiddenHelp": "Spreminjanje tega bo veljalo za metapodatke shranjene v prihodnje. Obstoječi metapodatki bodo posodobljeni, ko jih bo strežnik naslednjič spremenil.", "OptionSubstring": "Podniz", - "OptionThursday": "Četrtek", "OptionTrackName": "Ime skladbe", - "OptionTuesday": "Torek", "OptionWakeFromSleep": "Prebudi iz spanja", "OptionWeekdays": "Delovni dnevi", "OptionWeekly": "Tedensko", @@ -833,7 +821,6 @@ "Producer": "Producent", "Premiere": "Premiera", "OptionRuntime": "Trajanje", - "OptionSaturday": "Sobota", "MediaInfoLayout": "Razporeditev", "Like": "Všeč mi je", "LabelPlayDefaultAudioTrack": "Predvajaj privzeti zvočni posnetek ne glede na jezik", @@ -992,9 +979,7 @@ "OptionProfileAudio": "Zvok", "OptionPremiereDate": "Datum premiere", "OptionOnInterval": "V intervalu", - "OptionOnAppStartup": "Ob zagonu aplikacije", "OptionNew": "Novo…", - "OptionMonday": "Ponedeljek", "OptionMissingEpisode": "Manjkajoče epizode", "OptionLoginAttemptsBeforeLockoutHelp": "Vrednost nič (0) pomeni 3 poskuse za običajne uporabnike in 5 za skrbnike. Nastavite na -1 za onemogočanje te funkcije.", "OptionLoginAttemptsBeforeLockout": "Določa število spodletelih poskusov prijave pred zaklenitvijo uporabnika.", @@ -1004,7 +989,6 @@ "OptionHomeVideos": "Slike", "OptionHideUser": "Skrij tega uporabnika z vstopne strani", "OptionHasTrailer": "Napovednik", - "OptionFriday": "Petek", "OptionEveryday": "Vsak dan", "OptionDvd": "DVD", "OptionDownloadMenuImage": "Meni", @@ -1128,7 +1112,6 @@ "Trailers": "Napovedniki", "TitleHardwareAcceleration": "Strojno pospeševanje", "Thursday": "Četrtek", - "TabUsers": "Uporabniki", "TabTrailers": "Napovedniki", "ClientSettings": "Nastavitve odjemalca", "ButtonTogglePlaylist": "Seznam predvajanja", @@ -1314,16 +1297,13 @@ "TabStreaming": "Pretakanje", "TabSettings": "Nastavitve", "TabServer": "Strežnik", - "TabSeries": "Serije", "TabScheduledTasks": "Načrtovana opravila", "TabResumeSettings": "Nadaljuj", "HeaderUninstallPlugin": "Odstrani dodatek", "UninstallPluginConfirmation": "Ali ste prepričan, da želite odstraniti {0}?", "ServerRestartNeededAfterPluginInstall": "Po namestitvi dodatka bo potreben ponoven zagon jellyfin strežnika.", "TabResponses": "Odzivi", - "TabRecordings": "Posnetki", "TabPlugins": "Dodatki", - "TabPlaylists": "Seznami predvajanja", "TabOther": "Ostalo", "TabNotifications": "Obvestila", "TabNfoSettings": "Nastavitve NFO", diff --git a/src/strings/sr.json b/src/strings/sr.json index c302c0a580..22e2343e5e 100644 --- a/src/strings/sr.json +++ b/src/strings/sr.json @@ -6,8 +6,6 @@ "Playlists": "Листе", "Photos": "Фотографије", "Movies": "Филмови", - "HeaderNextUp": "Следеће горе", - "HeaderLiveTV": "ТВ уживо", "HeaderFavoriteSongs": "Омиљене песме", "HeaderFavoriteShows": "Омиљене серије", "HeaderFavoriteEpisodes": "Омиљене епизоде", diff --git a/src/strings/sv.json b/src/strings/sv.json index 604179f9f6..e4a81cfd42 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -309,8 +309,6 @@ "HeaderLibraryFolders": "Biblioteksmappar", "HeaderLibraryOrder": "Biblioteksordning", "HeaderLibrarySettings": "Biblioteksinställningar", - "HeaderLiveTV": "Live-TV", - "HeaderLiveTv": "Live-TV", "HeaderLoginFailure": "Misslyckad inloggning", "HeaderMediaFolders": "Mediamappar", "HeaderMediaInfo": "Medieinformation", @@ -324,14 +322,12 @@ "HeaderNewApiKey": "Ny API-nyckel", "HeaderNewDevices": "Nya enheter", "HeaderNextEpisodePlayingInValue": "Nästa avsnitt börjar om {0}", - "HeaderNextUp": "Nästa", "HeaderNextVideoPlayingInValue": "Nästa video börjar om {0}", "HeaderOnNow": "Visas nu", "HeaderOtherItems": "Övriga objekt", "HeaderPassword": "Lösenord", "HeaderPasswordReset": "Återställning av lösenordet", "HeaderPaths": "Sökvägar", - "HeaderPeople": "Personer", "HeaderPhotoAlbums": "Fotoalbum", "HeaderPinCodeReset": "Återställ pinkod", "HeaderPlayAll": "Spela upp alla", @@ -356,7 +352,6 @@ "HeaderRevisionHistory": "Revisionshistorik", "HeaderRunningTasks": "Pågående aktiviteter", "HeaderScenes": "Kapitel", - "HeaderSchedule": "Schema", "HeaderSeasons": "Säsonger", "HeaderSecondsValue": "{0} sekunder", "HeaderSelectCertificatePath": "Välj sökväg för certifikat", @@ -369,7 +364,6 @@ "HeaderSelectTranscodingPath": "Välj plats för mellanlagring vid omkodning", "HeaderSelectTranscodingPathHelp": "Bläddra fram till eller ange plats för omkodarens mellanlagring. Katalogen måste vara tillgänglig för skrivning.", "HeaderSendMessage": "Skicka meddelande", - "HeaderSeries": "Serier", "HeaderSeriesOptions": "Seriealternativ", "HeaderSeriesStatus": "Seriestatus", "HeaderServerSettings": "Serverinställningar", @@ -922,7 +916,6 @@ "OptionExternallyDownloaded": "Extern nerladdning", "OptionExtractChapterImage": "Aktivera extrahering av kapitelbilder", "OptionFavorite": "Favoriter", - "OptionFriday": "Fredag", "OptionHasSpecialFeatures": "Extramaterial", "OptionHasSubtitles": "Undertexter", "OptionHasThemeSong": "Ledmotiv", @@ -936,11 +929,9 @@ "OptionImdbRating": "Betyg på IMDB", "OptionLikes": "Gillar", "OptionMissingEpisode": "Saknade avsnitt", - "OptionMonday": "Måndag", "OptionNameSort": "Namn", "OptionNew": "Ny…", "OptionNone": "Inga", - "OptionOnAppStartup": "När servern startar", "OptionOnInterval": "Med visst intervall", "OptionParentalRating": "Föräldraklassning", "OptionPlainStorageFolders": "Visa alla mappar som vanliga lagringsmappar", @@ -961,19 +952,14 @@ "OptionRequirePerfectSubtitleMatchHelp": "Att kräva en perfekt matchning filtrerar undertexter till att bara inkludera de som testats och verifierats med din exakta videofil. Stänger du av detta ökas chansen att undertexter laddas ned, men ökar chanserna att de är osynkade eller felaktiga.", "OptionResumable": "Kan återupptas", "OptionRuntime": "Speltid", - "OptionSaturday": "Lördag", "OptionSaveMetadataAsHidden": "Spara metadata och bilder som dolda filer", "OptionSpecialEpisode": "Specialavsnitt", "OptionSubstring": "Delsträng", - "OptionSunday": "Söndag", - "OptionThursday": "Torsdag", "OptionTrackName": "Spårnamn", - "OptionTuesday": "Tisdag", "OptionTvdbRating": "TVDB-betyg", "OptionUnairedEpisode": "Ej sända avsnitt", "OptionUnplayed": "Ej visad", "OptionWakeFromSleep": "Vakna ur energisparläge", - "OptionWednesday": "Onsdag", "OptionWeekdays": "Veckodagar", "OptionWeekends": "Helger", "OptionWeekly": "Varje vecka", @@ -1111,7 +1097,6 @@ "TabDirectPlay": "Direktuppspelning", "TabEpisodes": "Avsnitt", "TabLatest": "Nytillkommet", - "TabLiveTV": "Live-TV", "TabLogs": "Loggfiler", "TabMusic": "Musik", "TabMusicVideos": "Musikvideor", @@ -1121,20 +1106,15 @@ "TabNotifications": "Meddelanden", "TabOther": "Övrigt", "TabParentalControl": "Föräldralås", - "TabPassword": "Lösenord", - "TabPlaylists": "Spellistor", "TabPlugins": "Tillägg", "TabProfile": "Profil", "TabProfiles": "Profiler", - "TabRecordings": "Inspelningar", "TabResponses": "Svar", "TabResumeSettings": "Återuppta", "TabScheduledTasks": "Schemalagda aktiviteter", - "TabSeries": "Serie", "TabSettings": "Inställningar", "TabStreaming": "Strömning", "TabUpcoming": "Kommande", - "TabUsers": "Användare", "Tags": "Etiketter", "TagsValue": "Etiketter: {0}", "TellUsAboutYourself": "Berätta om dig själv", diff --git a/src/strings/tr.json b/src/strings/tr.json index ba47bd7f6b..2bae4757f4 100644 --- a/src/strings/tr.json +++ b/src/strings/tr.json @@ -63,7 +63,6 @@ "HeaderLibraryFolders": "Media Klasörleri", "HeaderMediaFolders": "Media Klasörleri", "HeaderMusicVideos": "Müzik vidyoları", - "HeaderNextUp": "Sonraki hafta", "HeaderPlayAll": "Hepsini oynat", "HeaderPleaseSignIn": "Lütfen Giriş Yapın", "HeaderPreferredMetadataLanguage": "Tercih Edilen Meta Dili", @@ -72,7 +71,6 @@ "HeaderResponseProfile": "Profil Görüntüleme", "HeaderScenes": "Sahneler", "HeaderSendMessage": "Mesaj Gönder", - "HeaderSeries": "Series", "HeaderServerSettings": "Sunucu ayarları", "HeaderSetupLibrary": "Medya kütüphanelerini kur", "HeaderStatus": "Durum", @@ -149,7 +147,6 @@ "OptionEnableAccessToAllLibraries": "Bütün kütüphanelere erişim izni ver", "OptionEnded": "Bitmiş", "OptionFavorite": "Favoriler", - "OptionFriday": "Cuma", "OptionHasSubtitles": "Altyazı", "OptionHasThemeSong": "Tema Şarkısı", "OptionHasThemeVideo": "Tema Videosu", @@ -157,7 +154,6 @@ "OptionHideUser": "Bu kullanıcıyı giriş ekranında gösterme", "OptionImdbRating": "İMDb Reyting", "OptionLikes": "Beğenilenler", - "OptionMonday": "Pazartesi", "OptionNameSort": "İsim", "OptionPlayCount": "Oynatma sayacı", "OptionPlayed": "Çalındı", @@ -168,15 +164,10 @@ "OptionReleaseDate": "Yayınlanma Tarihi", "OptionResumable": "Başlatılabilir", "OptionRuntime": "Süresi", - "OptionSaturday": "Cumartesi", "OptionSpecialEpisode": "Özel", - "OptionSunday": "Pazar", - "OptionThursday": "Perşembe", "OptionTrackName": "Parça İsmi", - "OptionTuesday": "Salı", "OptionTvdbRating": "TVDB Puanı", "OptionUnplayed": "Çalınmayan", - "OptionWednesday": "Çarşamba", "OptionWeekly": "Haftalık", "ParentalRating": "Ebeveyn değeri", "PasswordMatchError": "Parola ve Sifre Eslesmelidir.", @@ -203,11 +194,8 @@ "TabMyPlugins": "Eklentilerim", "TabNetworks": "Ağlar", "TabNotifications": "Bildirimler", - "TabPassword": "Şifre", "TabProfile": "Profil", "TabProfiles": "Profiller", - "TabRecordings": "Kayıtlar", - "TabSeries": "Seriler", "TabServer": "Sunucu", "TabSettings": "Ayarlar", "TabTrailers": "Fragmanlar", @@ -247,7 +235,6 @@ "HeaderFavoriteAlbums": "Favori Albümler", "HeaderFavoriteArtists": "Favori Sanatçılar", "HeaderFavoriteSongs": "Favori Şarkılar", - "HeaderLiveTV": "Canlı TV", "Movies": "Filmler", "Photos": "Fotoğraflar", "Playlists": "Çalma listeleri", @@ -520,7 +507,6 @@ "HeaderSelectCertificatePath": "Sertifika Yolunu Seç", "HeaderSecondsValue": "{0} Saniye", "HeaderSeasons": "Sezonlar", - "HeaderSchedule": "Zamanla", "HeaderRunningTasks": "Çalışan Görevler", "HeaderRevisionHistory": "Revizyon Geçmişi", "HeaderRestart": "Yeniden Başlat", @@ -535,7 +521,6 @@ "HeaderPlayback": "Medya Oynatma", "HeaderPinCodeReset": "Pin Kodunu Sıfırla", "HeaderPhotoAlbums": "Fotoğraf Albümleri", - "HeaderPeople": "Kişiler", "HeaderPasswordReset": "Şifre Sıfırlama", "HeaderPassword": "Şifre", "HeaderParentalRatings": "Ebeveyn Derecelendirmeleri", @@ -555,7 +540,6 @@ "HeaderMedia": "Medya", "HeaderLoginFailure": "Giriş Başarısız", "HeaderLiveTvTunerSetup": "Canlı TV istasyon Kurulumu", - "HeaderLiveTv": "Canlı TV", "HeaderLibrarySettings": "Kütüphane Ayarları", "HeaderLibraryOrder": "Kütüphane Sırası", "HeaderLibraryAccess": "Kütüphane Erişimi", diff --git a/src/strings/uk.json b/src/strings/uk.json index 329f0ca95c..ff69296e07 100644 --- a/src/strings/uk.json +++ b/src/strings/uk.json @@ -21,7 +21,6 @@ "HeaderLatestMovies": "Нещодавні фільми", "HeaderLatestMusic": "Остання музика", "HeaderSeasons": "Сезони", - "HeaderSeries": "Series", "HeaderSettings": "Налаштування", "HeaderTracks": "Доріжки", "HeaderUsers": "Користувачі", @@ -60,12 +59,10 @@ "TabEpisodes": "Епізоди", "TabNetworks": "Мережі", "TabNotifications": "Повідомлення", - "TabPassword": "Пароль", "TabPlugins": "Додатки", "TabProfile": "Профіль", "TabProfiles": "Профілі", "TabTrailers": "Трейлери", - "TabUsers": "Користувачі", "ValueAlbumCount": "{0} альбомів", "ValueDiscNumber": "Диск {0}", "ValueEpisodeCount": "{0} епізодів", @@ -102,7 +99,6 @@ "Movies": "Фільми", "Collections": "Колекції", "Folders": "Каталоги", - "HeaderNextUp": "Наступний", "HeaderAlbumArtists": "Виконавці альбому", "HeaderFavoriteSongs": "Улюблені пісні", "Favorites": "Улюблені", @@ -110,7 +106,6 @@ "Genres": "Жанри", "Books": "Книги", "Artists": "Виконавці", - "HeaderLiveTV": "Ефірне ТБ", "Channels": "Канали", "HeaderFavoriteArtists": "Улюблені виконавці", "HeaderFavoriteShows": "Улюблені шоу", diff --git a/src/strings/vi.json b/src/strings/vi.json index 438dfe4632..48e59ca057 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -23,7 +23,6 @@ "HeaderLatestEpisodes": "Các tập phim mới nhất", "HeaderLatestMovies": "Phim mới nhất", "HeaderRecentlyPlayed": "Phát gần đây", - "HeaderSeries": "Series", "HeaderStatus": "Trạng thái", "HeaderSystemDlnaProfiles": "Hồ sơ hệ thống", "HeaderUsers": "dùng", @@ -67,12 +66,9 @@ "OptionIsHD": "Độ nét cao", "OptionIsSD": "Độ nét tiêu chuẩn", "OptionLikes": "Thích", - "OptionMonday": "Thứ Hai", "OptionNameSort": "Tên", "OptionPlayCount": "Số lần phát", "OptionRuntime": "Thời gian phát", - "OptionSaturday": "Thứ Bảy", - "OptionSunday": "Chủ Nhật", "OptionTrackName": "Tên bài", "ParentalRating": "Parental Rating", "PasswordMatchError": "Mật khẩu và mật khẩu xác nhận cần phải khớp nhau .", @@ -90,7 +86,6 @@ "TabMusicVideos": "Các video âm nhạc", "TabMyPlugins": "Các plugin của tôi", "TabNetworks": "Các mạng", - "TabPassword": "Mật khẩu", "TabProfile": "Hồ sơ", "TabProfiles": "Hồ sơ", "TabServer": "Máy chủ", @@ -404,7 +399,6 @@ "HeaderPlayAll": "Phát Tất Cả", "HeaderPinCodeReset": "Đặt Lại Mã PIN", "HeaderPhotoAlbums": "Album Ảnh", - "HeaderPeople": "Nhân Vật", "HeaderPaths": "Đường Dẫn", "HeaderPasswordReset": "Đặt Lại Mật Khẩu", "HeaderPassword": "Mật Khẩu", @@ -412,7 +406,6 @@ "HeaderOtherItems": "Những Mục Khác", "HeaderOnNow": "Phát Sóng Hiện Tại", "HeaderNextVideoPlayingInValue": "Video Tiếp Theo Sẽ Phát trong {0}", - "HeaderNextUp": "Tiếp Theo", "HeaderNextEpisodePlayingInValue": "Tập Tiếp Theo Sẽ Được Chạy trong {0}", "HeaderNewDevices": "Thiết Bị Mới", "HeaderNewApiKey": "Mã API Mới", @@ -429,8 +422,6 @@ "HeaderMedia": "Nội Dung", "HeaderLoginFailure": "Đăng Nhập Không Thành Công", "HeaderLiveTvTunerSetup": "Cài Đặt Bộ Bắt Sóng TV", - "HeaderLiveTv": "Truyền Hình Trực Tiếp", - "HeaderLiveTV": "Truyền Hình Trực Tiếp", "HeaderLibrarySettings": "Cài Đặt Thư Viện", "HeaderLibraryOrder": "Thứ Tự Thư Viện", "HeaderLibraryFolders": "Thư Mục Của Thư Viện", @@ -504,7 +495,6 @@ "HeaderSelectCertificatePath": "Chọn Đường Dẫn Đến Chứng Chỉ", "HeaderSecondsValue": "{0} Giây", "HeaderSeasons": "Phần", - "HeaderSchedule": "Lịch Phát Sóng", "HeaderScenes": "Phân Cảnh", "HeaderRunningTasks": "Những Tác Vụ Hoạt Động", "HeaderRevisionHistory": "Lịch Sử Chỉnh Sửa", diff --git a/src/strings/zh-cn.json b/src/strings/zh-cn.json index 9de331b018..b14bec8277 100644 --- a/src/strings/zh-cn.json +++ b/src/strings/zh-cn.json @@ -313,8 +313,6 @@ "HeaderLibraryFolders": "媒体文件夹", "HeaderLibraryOrder": "媒体库顺序", "HeaderLibrarySettings": "媒体库设置", - "HeaderLiveTV": "电视直播", - "HeaderLiveTv": "电视直播", "HeaderLiveTvTunerSetup": "电视直播协调器安装", "HeaderLoginFailure": "登录失败", "HeaderMedia": "媒体", @@ -328,14 +326,12 @@ "HeaderMyMediaSmall": "我的媒体 (小)", "HeaderNewApiKey": "新 API 密钥", "HeaderNewDevices": "新设备", - "HeaderNextUp": "接下来", "HeaderOnNow": "现在", "HeaderOtherItems": "其他项目", "HeaderParentalRatings": "家长分级", "HeaderPassword": "密码", "HeaderPasswordReset": "密码重置", "HeaderPaths": "路径", - "HeaderPeople": "人物", "HeaderPhotoAlbums": "相册", "HeaderPinCodeReset": "重置PIN码", "HeaderPlayAll": "全部播放", @@ -359,7 +355,6 @@ "HeaderRevisionHistory": "修订历史", "HeaderRunningTasks": "运行的任务", "HeaderScenes": "场景", - "HeaderSchedule": "计划", "HeaderSeasons": "季", "HeaderSecondsValue": "{0} 秒", "HeaderSelectCertificatePath": "选择证书路径", @@ -372,7 +367,6 @@ "HeaderSelectTranscodingPath": "选择临时解码路径", "HeaderSelectTranscodingPathHelp": "浏览或输入一个路径用于转码文件,此文件夹必须可写。", "HeaderSendMessage": "发送消息", - "HeaderSeries": "电视剧", "HeaderSeriesOptions": "系列选项", "HeaderServerSettings": "服务器设置", "HeaderSettings": "设置", @@ -949,7 +943,6 @@ "OptionExternallyDownloaded": "外部下载", "OptionExtractChapterImage": "开启剧集图片提取", "OptionFavorite": "我的最爱", - "OptionFriday": "星期五", "OptionHasSpecialFeatures": "特殊功能", "OptionHasSubtitles": "字幕", "OptionHasThemeSong": "主题曲", @@ -967,11 +960,9 @@ "OptionLikes": "喜欢", "OptionMax": "最大", "OptionMissingEpisode": "缺少的剧集", - "OptionMonday": "星期一", "OptionNameSort": "名字", "OptionNew": "新建…", "OptionNone": "没有", - "OptionOnAppStartup": "在程序启动时", "OptionOnInterval": "在一个期间", "OptionParentalRating": "家长分级", "OptionPlainStorageFolders": "显示所有文件夹作为一般存储文件夹", @@ -996,20 +987,15 @@ "OptionResElement": "res 元素", "OptionResumable": "可恢复播放", "OptionRuntime": "播放时长", - "OptionSaturday": "星期六", "OptionSaveMetadataAsHidden": "保存媒体资料和图像为隐藏文件", "OptionSaveMetadataAsHiddenHelp": "更改此项将应用于以后保存的元数据。现有元数据文件将在下一次服务器保存它们时被更新。", "OptionSpecialEpisode": "特集", "OptionSubstring": "子串", - "OptionSunday": "星期天", - "OptionThursday": "星期四", "OptionTrackName": "曲目名称", - "OptionTuesday": "星期二", "OptionTvdbRating": "TVDB 评分", "OptionUnairedEpisode": "尚未发布的剧集", "OptionUnplayed": "未播放", "OptionWakeFromSleep": "从睡眠中唤醒", - "OptionWednesday": "星期三", "OptionWeekdays": "工作日", "OptionWeekends": "周末", "OptionWeekly": "每周", @@ -1140,7 +1126,6 @@ "TabEpisodes": "剧集", "TabInfo": "信息", "TabLatest": "最新", - "TabLiveTV": "电视直播", "TabLogs": "日志", "TabMusic": "音乐", "TabMusicVideos": "音乐视频", @@ -1150,22 +1135,17 @@ "TabNotifications": "通知", "TabOther": "其他", "TabParentalControl": "家长控制", - "TabPassword": "密码", - "TabPlaylists": "播放列表", "TabPlugins": "插件", "TabProfile": "个人配置", "TabProfiles": "配置", - "TabRecordings": "录制", "TabResponses": "响应", "TabResumeSettings": "恢复", "TabScheduledTasks": "计划任务", - "TabSeries": "电视剧", "TabServer": "服务器", "TabSettings": "设置", "TabStreaming": "流媒体传输", "TabTrailers": "预告片", "TabUpcoming": "即将发布", - "TabUsers": "用户", "Tags": "标签", "TellUsAboutYourself": "请介绍一下你自己", "ThemeSongs": "主题曲", diff --git a/src/strings/zh-hk.json b/src/strings/zh-hk.json index 454bbea0c2..6cdb6f13a9 100644 --- a/src/strings/zh-hk.json +++ b/src/strings/zh-hk.json @@ -56,9 +56,7 @@ "HeaderLatestRecordings": "最近錄影的節目", "HeaderMediaFolders": "媒體文件夾", "HeaderMusicVideos": "MV", - "HeaderNextUp": "接下來", "HeaderPaths": "路徑", - "HeaderPeople": "人物", "HeaderPleaseSignIn": "請登入", "HeaderRecentlyPlayed": "最近播放", "HeaderRemoteControl": "遙控器", @@ -66,7 +64,6 @@ "HeaderRunningTasks": "運行任務", "HeaderScenes": "場景", "HeaderSeasons": "季度劇集", - "HeaderSeries": "電視劇:", "HeaderSetupLibrary": "建立你的媒體資料庫", "HeaderSpecialFeatures": "特色", "HeaderStatus": "狀態", @@ -216,7 +213,6 @@ "OptionEnableAccessToAllLibraries": "允許所有媒體庫通行", "OptionEnded": "完成", "OptionFavorite": "我的最愛", - "OptionFriday": "星期五", "OptionHasSpecialFeatures": "特色", "OptionHasSubtitles": "字幕", "OptionHasThemeSong": "主題曲", @@ -230,9 +226,7 @@ "OptionIsSD": "標清", "OptionLikes": "正評", "OptionMissingEpisode": "缺少的劇集", - "OptionMonday": "星期一", "OptionNameSort": "名稱", - "OptionOnAppStartup": "在伺服器啟動", "OptionOnInterval": "每個時段", "OptionParentalRating": "家長評級", "OptionPlayCount": "播放次數", @@ -243,17 +237,12 @@ "OptionReleaseDate": "發佈日期", "OptionResumable": "能夠恢復", "OptionRuntime": "運行時間", - "OptionSaturday": "星期六", "OptionSpecialEpisode": "特集", - "OptionSunday": "星期日", - "OptionThursday": "星期四", "OptionTrackName": "曲目名稱", - "OptionTuesday": "星期二", "OptionTvdbRating": "Tvdb 評分", "OptionUnairedEpisode": "尚未播放的劇集", "OptionUnplayed": "未播放", "OptionWakeFromSleep": "從休眠中恢復", - "OptionWednesday": "星期三", "OptionWeekly": "每週", "ParentalRating": "Parental Rating", "Play": "播放", @@ -279,16 +268,12 @@ "TabNetworks": "網絡", "TabNotifications": "通知", "TabOther": "其它", - "TabPassword": "密碼", "TabProfile": "簡介", "TabProfiles": "簡介", - "TabRecordings": "錄影", - "TabSeries": "電視劇", "TabServer": "伺服器", "TabSettings": "設定", "TabTrailers": "預告", "TabUpcoming": "即將發佈", - "TabUsers": "用戶", "TellUsAboutYourself": "介紹一下自己", "ThisWizardWillGuideYou": "此教學協助您完成安裝過程。首先,請選擇您的語言。", "Thursday": "星期四", @@ -322,7 +307,6 @@ "Playlists": "播放清單", "Photos": "相片", "Movies": "電影", - "HeaderLiveTV": "電視直播", "HeaderFavoriteSongs": "最愛的歌曲", "HeaderFavoriteShows": "最愛的節目", "HeaderFavoriteEpisodes": "最愛的劇集", diff --git a/src/strings/zh-tw.json b/src/strings/zh-tw.json index f9f9bce7a7..6361242d4e 100644 --- a/src/strings/zh-tw.json +++ b/src/strings/zh-tw.json @@ -67,11 +67,8 @@ "HeaderLatestEpisodes": "最新劇集", "HeaderLatestMovies": "最新電影", "HeaderLatestRecordings": "最新錄影的節目", - "HeaderLiveTV": "電視直播", - "HeaderLiveTv": "電視", "HeaderMediaFolders": "媒體資料夾", "HeaderMusicVideos": "MV", - "HeaderNextUp": "接下來", "HeaderPaths": "路徑", "HeaderPlayAll": "全部播放", "HeaderPleaseSignIn": "請登入", @@ -80,7 +77,6 @@ "HeaderScenes": "場景", "HeaderSelectServer": "選擇伺服器", "HeaderSelectServerCachePath": "選擇伺服器快取路徑", - "HeaderSeries": "系列", "HeaderSpecialFeatures": "特色", "HeaderStatus": "狀態", "HeaderSystemDlnaProfiles": "系統設定", @@ -179,7 +175,6 @@ "OptionDvd": "DVD", "OptionEnded": "完結", "OptionFavorite": "我的最愛", - "OptionFriday": "星期五", "OptionHasSubtitles": "字幕", "OptionHasThemeSong": "主題曲", "OptionHasThemeVideo": "主題影片", @@ -189,10 +184,8 @@ "OptionIsSD": "標清", "OptionLikes": "喜歡", "OptionMissingEpisode": "缺少了的單元", - "OptionMonday": "星期一", "OptionNameSort": "名字", "OptionNew": "新增…", - "OptionOnAppStartup": "在伺服器啟動", "OptionOnInterval": "每時段", "OptionParentalRating": "家長評級", "OptionPlayCount": "播放次數", @@ -200,17 +193,12 @@ "OptionPremiereDate": "首映日期", "OptionResumable": "可恢復", "OptionRuntime": "播放長度", - "OptionSaturday": "星期六", "OptionSpecialEpisode": "特集", - "OptionSunday": "星期天", - "OptionThursday": "星期四", "OptionTrackName": "曲目名稱", - "OptionTuesday": "星期二", "OptionTvdbRating": "TVDB 評分", "OptionUnairedEpisode": "還未發佈的單元", "OptionUnplayed": "未播放", "OptionWakeFromSleep": "從休眠中回復", - "OptionWednesday": "星期三", "OptionWeekly": "每週", "OriginalAirDateValue": "原始播出日期:{0}", "ParentalRating": "Parental Rating", @@ -245,15 +233,11 @@ "TabEpisodes": "單元", "TabInfo": "資訊", "TabLatest": "最新", - "TabLiveTV": "電視", "TabMusic": "音樂", "TabMyPlugins": "我的附加元件", "TabNetworks": "網路", - "TabPassword": "密碼", "TabProfile": "設定", "TabProfiles": "設定", - "TabRecordings": "錄影", - "TabSeries": "電視劇", "TabServer": "伺服器", "TabSettings": "設定", "TabTrailers": "預告", @@ -572,7 +556,6 @@ "HeaderOtherItems": "其他項目", "HeaderPassword": "密碼", "HeaderPasswordReset": "重設密碼", - "HeaderPeople": "使用者", "HeaderPhotoAlbums": "相簿", "HeaderPinCodeReset": "重設PIN碼", "HeaderPlayOn": "播放在", @@ -622,7 +605,6 @@ "HeaderProfileServerSettingsHelp": "這些數值將控制伺服器如何呈現給設備。", "HeaderResponseProfile": "回覆設定檔", "HeaderResponseProfileHelp": "當播放某些類型的媒體時,回覆設定檔提供一種方法來發送自定訊息到設備。", - "HeaderSchedule": "日程表", "HeaderSelectCertificatePath": "選擇證書路徑", "HeaderSelectMetadataPath": "選擇中繼資料路徑", "HeaderSubtitleProfile": "字幕設定檔", @@ -880,7 +862,6 @@ "RecentlyWatched": "最近觀賞", "RecommendationBecauseYouLike": "因為您喜歡 {0}", "SearchResults": "搜尋結果", - "TabPlaylists": "播放清單", "TabPlugins": "附加元件", "Transcoding": "轉檔", "ValueTimeLimitMultiHour": "時間限制:{0} 小時", @@ -907,7 +888,6 @@ "RepeatMode": "重複模式", "Runtime": "運行時間", "TV": "電視", - "TabUsers": "使用者", "Trailers": "預告", "LabelImageFetchersHelp": "啟用並按優先順序排序您的首選圖片擷取器。", "LabelDownMixAudioScale": "縮混時的音訊增強:", From ce74cb0602132cfbb4cee40df130257230a47943 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Thu, 13 Aug 2020 15:37:09 +0200 Subject: [PATCH 036/285] Fix lint --- src/components/appRouter.js | 1 - 1 file changed, 1 deletion(-) diff --git a/src/components/appRouter.js b/src/components/appRouter.js index 83c93fdaf3..28826c55cc 100644 --- a/src/components/appRouter.js +++ b/src/components/appRouter.js @@ -323,7 +323,6 @@ class AppRouter { } import('text!' + url).then(({default: html}) => { - console.warn(html) this.loadContent(ctx, route, html, request); }); } From d6ab99b59db6c73878758d4d02ed326e4478e8be Mon Sep 17 00:00:00 2001 From: Matjaz Zavski Date: Thu, 13 Aug 2020 21:22:42 +0200 Subject: [PATCH 037/285] Update src/elements/emby-checkbox/emby-checkbox.js Co-authored-by: Dmitry Lyzo <56478732+dmitrylyzo@users.noreply.github.com> --- src/elements/emby-checkbox/emby-checkbox.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/elements/emby-checkbox/emby-checkbox.js b/src/elements/emby-checkbox/emby-checkbox.js index 74a1696298..d44c58ed48 100644 --- a/src/elements/emby-checkbox/emby-checkbox.js +++ b/src/elements/emby-checkbox/emby-checkbox.js @@ -10,7 +10,7 @@ import 'webcomponents'; function onKeyDown(e) { // Don't submit form on enter // Real (non-emulator) Tizen does nothing on Space - if ((e.keyCode === 13 || e.keyCode === 32) && !browser.firefox) { + if (e.keyCode === 13 || (e.keyCode === 32 && browser.tizen)) { e.preventDefault(); this.checked = !this.checked; From ee54714603fb446e1cb7cc48b7f6ea75beda934c Mon Sep 17 00:00:00 2001 From: matjaz321 Date: Thu, 13 Aug 2020 21:25:38 +0200 Subject: [PATCH 038/285] Applied the same fix to the emby-radio.js --- src/elements/emby-radio/emby-radio.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/elements/emby-radio/emby-radio.js b/src/elements/emby-radio/emby-radio.js index 6fd2529085..8bd4f9fb84 100644 --- a/src/elements/emby-radio/emby-radio.js +++ b/src/elements/emby-radio/emby-radio.js @@ -9,7 +9,7 @@ import 'webcomponents'; function onKeyDown(e) { // Don't submit form on enter // Real (non-emulator) Tizen does nothing on Space - if (e.keyCode === 13 || e.keyCode === 32) { + if (e.keyCode === 13 || (e.keyCode === 32 && browser.tizen)) { e.preventDefault(); if (!this.checked) { From ffcc1181dcbca59438d36744991206b48df7f194 Mon Sep 17 00:00:00 2001 From: matjaz321 Date: Thu, 13 Aug 2020 22:41:49 +0200 Subject: [PATCH 039/285] small cr fix --- src/elements/emby-radio/emby-radio.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/elements/emby-radio/emby-radio.js b/src/elements/emby-radio/emby-radio.js index 8bd4f9fb84..7c468a84a6 100644 --- a/src/elements/emby-radio/emby-radio.js +++ b/src/elements/emby-radio/emby-radio.js @@ -1,6 +1,7 @@ import layoutManager from 'layoutManager'; import 'css!./emby-radio'; import 'webcomponents'; +import browser from 'browser'; /* eslint-disable indent */ From 5de2498f12cb4370dae14e3d418e3332dbda8835 Mon Sep 17 00:00:00 2001 From: Cameron Date: Thu, 13 Aug 2020 22:30:00 +0100 Subject: [PATCH 040/285] Update recordingcreator.js --- src/components/recordingcreator/recordingcreator.js | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/components/recordingcreator/recordingcreator.js b/src/components/recordingcreator/recordingcreator.js index 43a91b4992..9cb4e41d2e 100644 --- a/src/components/recordingcreator/recordingcreator.js +++ b/src/components/recordingcreator/recordingcreator.js @@ -184,13 +184,7 @@ function showEditor(itemId, serverId) { init(dlg); - currentRecordingFields = new recordingFields({ - parent: dlg.querySelector('.recordingFields'), - programId: itemId, - serverId: serverId - }); - - events.on(currentRecordingFields, 'recordingchanged', onRecordingChanged); + reload(dlg, itemId, serverId); currentRecordingFields = new recordingFields({ parent: dlg.querySelector('.recordingFields'), From b1c96575f229c62d4b069cc53304f7ad55c6a921 Mon Sep 17 00:00:00 2001 From: Cameron Date: Thu, 13 Aug 2020 22:31:31 +0100 Subject: [PATCH 041/285] remove missed require --- src/components/recordingcreator/recordingeditor.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/components/recordingcreator/recordingeditor.js b/src/components/recordingcreator/recordingeditor.js index 5bd3d73c67..096ea3b62c 100644 --- a/src/components/recordingcreator/recordingeditor.js +++ b/src/components/recordingcreator/recordingeditor.js @@ -2,7 +2,6 @@ import dialogHelper from 'dialogHelper'; import globalize from 'globalize'; import layoutManager from 'layoutManager'; import connectionManager from 'connectionManager'; -import require from 'require'; import loading from 'loading'; import scrollHelper from 'scrollHelper'; import 'scrollStyles'; @@ -91,7 +90,7 @@ function showEditor(itemId, serverId, options) { options = options || {}; currentResolve = resolve; - require(['text!./recordingeditor.template.html'], function (template) { + import('text!./recordingeditor.template.html').then(({default: template}) => { const dialogOptions = { removeOnClose: true, scrollY: false From f333cc3cb7f25a0f3966e9037baa177f12351bf7 Mon Sep 17 00:00:00 2001 From: Marius Lindvall Date: Thu, 13 Aug 2020 21:46:33 +0000 Subject: [PATCH 042/285] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegi?= =?UTF-8?q?an=20Bokm=C3=A5l)=20Translation:=20Jellyfin/Jellyfin=20Web=20Tr?= =?UTF-8?q?anslate-URL:=20https://translate.jellyfin.org/projects/jellyfin?= =?UTF-8?q?/jellyfin-web/nb=5FNO/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/strings/nb.json | 90 +++++++++++++++++++++++---------------------- 1 file changed, 46 insertions(+), 44 deletions(-) diff --git a/src/strings/nb.json b/src/strings/nb.json index 66b383b616..814490cabc 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -17,7 +17,7 @@ "AllowHWTranscodingHelp": "Tillat at tuneren omkoder strømmer fortløpende. Dette kan bidra til å redusere mendgen omkoding som må utføres av serveren.", "AllowMediaConversion": "Tillat konvertering av media", "AllowMediaConversionHelp": "Tillatt eller forby tilgang til å konvertere media.", - "AllowRemoteAccess": "Tillat eksterne tilkoblinger til denne Jellyfin-serveren.", + "AllowRemoteAccess": "Tillat eksterne tilkoblinger til denne serveren.", "AllowRemoteAccessHelp": "Alle tilkoblinger via nettverk vil blokkeres dersom du ikke aktiverer denne innstillingen.", "Anytime": "Når som helst", "AroundTime": "Rundt", @@ -96,7 +96,7 @@ "ColorSpace": "Fargeutvalg", "ColorTransfer": "Overføring av farger", "Composer": "Komponist", - "ConfigureDateAdded": "Konfigurer hvordan \"Dato lagt til\" bestemmes på Jellyfin-serveren sitt dashbord under instillinger for Bibliotek", + "ConfigureDateAdded": "Konfigurer hvordan \"Dato lagt til\" bestemmes på dashbordet under innstillingene for bibliotek", "ConfirmDeleteImage": "Slett bilde?", "ConfirmDeleteItem": "Sletting av elementet vil slette det fra både filsystemet og biblioteket. Er du sikker på at du vil fortsette?", "ConfirmDeleteItems": "Sletting av disse elementene vil slette dem fra både filsystemet og mediebiblioteket. Er du sikker på at du vil fortsette?", @@ -141,7 +141,7 @@ "EndsAtValue": "Slutter klokken {0}", "Episodes": "Episoder", "ErrorAddingListingsToSchedulesDirect": "Det oppstod en feil når du la oppstillingen til Schedules Direct-kontoen din. Schedules Direct tillater kun et begrenset antall oppstillinger per konto. Det kan hende du må logge inn på Schedules Direct-nettstedet og fjerne andre lister fra kontoen din før du fortsetter.", - "ErrorAddingMediaPathToVirtualFolder": "Det oppstod en feil med å legge inn filbane til media. Vennligst sørg for at filbanen er gyldig og at Jellyfin-serverprosessen har tilgang til filbanen.", + "ErrorAddingMediaPathToVirtualFolder": "Det oppstod en feil med å legge inn filbane til media. Vennligst sørg for at filbanen er gyldig og at Jellyfin har tilgang til filbanen.", "ErrorAddingTunerDevice": "Det oppstod en feil når tuneren skulle legges til. Vennligst sørg for at den er tilgjengelig og prøv på nytt.", "ErrorAddingXmlTvFile": "Det oppstod en feil under lesing av XMLTV-filen. Vennligst sørg for at filen finnes og prøv igjen.", "ErrorGettingTvLineups": "Det oppstod en feil under nedlastning av TV-oversikten. Vennligst sørg for at informasjonen er korrekt og prøv igjen.", @@ -188,7 +188,7 @@ "HeaderAllowMediaDeletionFrom": "Tillat sletting av media fra", "HeaderApiKey": "API-nøkkel", "HeaderApiKeys": "API-nøkler", - "HeaderApiKeysHelp": "Eksterne programmer trenger en API-nøkkel for å kunne kommunisere med Jellyfin-serveren. Nøklene utstedes ved å logge på med en Jellyfin-konto, eller ved å manuelt gi programmet en nøkkel.", + "HeaderApiKeysHelp": "Eksterne programmer trenger en API-nøkkel for å kunne kommunisere med serveren. Nøklene utstedes ved å logge på med en vanlig brukerkonto eller gjennom å manuelt gi programmet en nøkkel.", "HeaderAudioBooks": "Lydbøker", "HeaderAudioSettings": "Lydinnstillinger", "HeaderBooks": "Bøker", @@ -285,7 +285,7 @@ "HeaderPreferredMetadataLanguage": "Foretrukket språk for metadata", "HeaderProfile": "Profil", "HeaderProfileInformation": "Profilinformasjon", - "HeaderProfileServerSettingsHelp": "Disse verdiene styrer hvordan Jellyfin-serveren presenterer seg selv for enheten.", + "HeaderProfileServerSettingsHelp": "Disse verdiene styrer hvordan serveren presenterer seg selv for klienter.", "HeaderRecentlyPlayed": "Nylig avspilt", "HeaderRecordingOptions": "Opptaksvalg", "HeaderRecordingPostProcessing": "Etterbehandling av opptak", @@ -307,7 +307,7 @@ "HeaderSelectServerCachePath": "Velg filbane for mellomlagring", "HeaderSelectServerCachePathHelp": "Bla eller skriv inn filbanen som skal brukes for mellomlagring av serverdata. Mappen må være skrivbar.", "HeaderSelectTranscodingPath": "Velg filbane for midlertidig lagring av omkodede filer", - "HeaderSelectTranscodingPathHelp": "Bla eller skriv inn filbanen som skal brukes for midlertidig lagring av omkodede filer. Mappen må være skrivbar.", + "HeaderSelectTranscodingPathHelp": "Bla eller skriv inn filbanen som skal brukes for omkodede filer. Mappen må være skrivbar.", "HeaderSendMessage": "Send melding", "HeaderSeriesOptions": "Serievalg", "HeaderServerSettings": "Serverinnstillinger", @@ -344,8 +344,8 @@ "HideWatchedContentFromLatestMedia": "Skjul sett innhold fra nyeste media", "Identify": "Identifiser", "Images": "Bilder", - "ImportFavoriteChannelsHelp": "Hvis aktivert, vil kun kanaler som er markert som favoritt på tuneren bli importert.", - "ImportMissingEpisodesHelp": "Hvis aktivert, vil informasjon om manglende episoder importeres til Jellyfin-databasen og de vil vises under sesonger og serier. Dette kan føre til at skanning av biblioteket tar betydelig lengre tid.", + "ImportFavoriteChannelsHelp": "Kun kanaler som er markert som favoritt på tuneren bli importert.", + "ImportMissingEpisodesHelp": "Informasjon om manglende episoder vil bli importet til databasen og bli vist under sesonger og serier. Dette kan føre til at skanning av biblioteket tar betydelig lengre tid.", "InstallingPackage": "Installerer {0} (versjon {1})", "InstantMix": "Direktemiks", "ItemCount": "{0} elementer", @@ -369,14 +369,14 @@ "LabelAppName": "Applikasjonsnavn", "LabelAppNameExample": "Eksempel: Sickbeard, Sonarr", "LabelArtists": "Artister:", - "LabelArtistsHelp": "Separer med semikolon ;", + "LabelArtistsHelp": "Separer flere artister med et semikolon.", "LabelAudioLanguagePreference": "Foretrukket språk på lydspor:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Oppdater metadata automatisk fra Internett:", "LabelBindToLocalNetworkAddress": "Bind til lokal nettverksadresse:", - "LabelBindToLocalNetworkAddressHelp": "Valgfritt. Overstyrer den lokale IP-adressen som HTTP-serveren bindes til. Hvis tomt, vil serveren binde seg til alle tilgjengelige adresser. Endringer av denne verdien krever omstart av Jellyfin-serveren.", + "LabelBindToLocalNetworkAddressHelp": "Overstyr den lokale IP-adressen til HTTP-serveren. Hvis tomt, vil serveren binde seg til alle tilgjengelige adresser. Endringer av denne verdien krever en omstart.", "LabelBirthDate": "Fødselsdato:", "LabelBirthYear": "Fødselsår:", - "LabelBlastMessageInterval": "Intervall mellom keepalive-meldinger (sekunder)", + "LabelBlastMessageInterval": "Intervall mellom keepalive-meldinger", "LabelBlastMessageIntervalHelp": "Bestemmer intervallet i sekunder mellom keepalive-meldinger.", "LabelCachePath": "Filbane for mellomlagring:", "LabelCachePathHelp": "Angi en egendefinert plassering for mellomlagrede filer, som f.eks. bilder. La feltet stå tomt for å bruke standardverdi.", @@ -392,7 +392,7 @@ "LabelCurrentPassword": "Nåværende passord:", "LabelCustomCertificatePath": "Egendefinert filbane for SSL-sertifikat:", "LabelCustomCss": "Tilpasset CSS:", - "LabelCustomCssHelp": "Bruk tilpasset CSS-kode for å endre stil på web-grensesnittet.", + "LabelCustomCssHelp": "Bruk tilpassede stiler på web-grensesnittet.", "LabelCustomDeviceDisplayName": "Visningsnavn:", "LabelCustomDeviceDisplayNameHelp": "Oppgi et egendefinert visningsnavn eller la det være tomt for å bruke navnet som enheten rapporterer.", "LabelCustomRating": "Egen aldersgrense:", @@ -421,8 +421,8 @@ "LabelEnableAutomaticPortMapHelp": "Automatisk koble eksterne porter på ruteren til lokale porter på serveren din via UPnP. Dette fungerer ikke med alle rutere eller nettverkskonfigurasjoner. Endringer trer ikke kraft før serveren startes på nytt.", "LabelEnableBlastAliveMessages": "Kringkast keepalive-meldinger", "LabelEnableBlastAliveMessagesHelp": "Aktiver hvis serveren ikke blir konsekvent oppdaget av andre UPnP-enheter på nettverket ditt.", - "LabelEnableDlnaClientDiscoveryInterval": "Oppdateringsintervall for klient (i sekunder)", - "LabelEnableDlnaClientDiscoveryIntervalHelp": "Bestemmer intervallet i sekunder mellom SSDP-søk utført av Jellyfin.", + "LabelEnableDlnaClientDiscoveryInterval": "Oppdateringsintervall for klient", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "Bestemmer intervallet i sekunder mellom SSDP-søk.", "LabelEnableDlnaDebugLogging": "Aktiver DLNA debug-logging", "LabelEnableDlnaDebugLoggingHelp": "Dette vil lage store loggfiler og burde kun benyttes for feilsøking.", "LabelEnableDlnaPlayTo": "Aktiver DLNA Play To", @@ -444,16 +444,16 @@ "LabelFinish": "Fullfør", "LabelForgotPasswordUsernameHelp": "Skriv inn brukernavnet ditt, dersom du husker det.", "LabelFriendlyName": "Egendefinert navn:", - "LabelServerNameHelp": "Dette navnet vil bli brukt for å identifisere denne serveren. Standardverdien er serverens maskinnavn.", + "LabelServerNameHelp": "Dette navnet vil bli brukt for å identifisere denne serveren. Standardverdien er serverens tjenernavn.", "LabelGroupMoviesIntoCollections": "Gruppér filmer i samlinger", - "LabelGroupMoviesIntoCollectionsHelp": "Ved visning av filmlister vil filmer som tilhører en samling bli vist som ett gruppeelement.", + "LabelGroupMoviesIntoCollectionsHelp": "Ved visning av filmlister, vil filmer i en samling bli vist som ett gruppert element.", "LabelH264Crf": "CRF-verdi for H264-koding:", "LabelEncoderPreset": "Forhåndsinnstilling for H264-koding:", "LabelHardwareAccelerationType": "Maskinvareakselerasjon:", "LabelHardwareAccelerationTypeHelp": "Maskinvareakselerasjon krever ytterligere konfigurasjon.", "LabelHomeScreenSectionValue": "Hjemskjermseksjon {0}:", "LabelHttpsPort": "Lokal HTTPS-port:", - "LabelHttpsPortHelp": "TCP-portnummeret som Jellyfin sin HTTPS-server skal benytte.", + "LabelHttpsPortHelp": "TCP-portnummeret for HTTPS-serveren.", "LabelIconMaxHeight": "Makshøyde for ikon:", "LabelIconMaxHeightHelp": "Maks oppløsning for ikoner eksponert via upnp:icon.", "LabelIconMaxWidth": "Maksbredde for ikon:", @@ -477,7 +477,7 @@ "LabelLanguage": "Språk:", "LabelLineup": "Oppstilling:", "LabelLocalHttpServerPortNumber": "Lokal HTTP-port:", - "LabelLocalHttpServerPortNumberHelp": "TCP-portnummeret som Jellyfin sin HTTP-server skal benytte.", + "LabelLocalHttpServerPortNumberHelp": "TCP-portnummeret for HTTP-serveren.", "LabelLockItemToPreventChanges": "Lås dette elementet for å hindre fremtidige endringer", "LabelLoginDisclaimer": "Ansvarsfraskrivelse ved innlogging:", "LabelLoginDisclaimerHelp": "En melding som vises på bunnen av innloggingssiden.", @@ -498,7 +498,7 @@ "LabelMetadataPathHelp": "Spesifiser en egen plassering for nedlastede omslagsbilder og metadata.", "LabelMetadataReaders": "Metadatalesere:", "LabelMetadataReadersHelp": "Ranger dine foretrukne lokale kilder for metadata i prioritert rekkefølge. Den første filen som blir funnet vil leses inn.", - "LabelMetadataSaversHelp": "Velg filformatene metadataen din skal lagres til.", + "LabelMetadataSaversHelp": "Velg filformatene som skal brukes ved lagring av metadata.", "LabelMethod": "Metode:", "LabelMinBackdropDownloadWidth": "Minimum bredde for nedlastede bakgrunner:", "LabelMinResumeDuration": "Minimum fortsettelsesvarighet:", @@ -513,7 +513,7 @@ "LabelMovieCategories": "Filmkategorier:", "LabelMoviePrefix": "Filmprefiks:", "LabelMoviePrefixHelp": "Hvis et prefiks benyttes i filmtitler, skriv det inn her slik at serveren kan håndtere det på riktig måte.", - "LabelMovieRecordingPath": "Filbane for filmopptak (valgfritt):", + "LabelMovieRecordingPath": "Filbane for filmopptak:", "LabelMusicStreamingTranscodingBitrate": "Bithastighet for omkoding av musikk:", "LabelMusicStreamingTranscodingBitrateHelp": "Spesifiser høyeste tillatte bithastighet ved musikkstrømming.", "LabelName": "Navn:", @@ -525,8 +525,8 @@ "LabelNumber": "Nummer:", "LabelNumberOfGuideDays": "Antall dager med TV-guidedata som skal lastes ned:", "LabelNumberOfGuideDaysHelp": "Nedlasting av TV-guide for flere dager gir muligheten for å planlegge lenger i forveien og for å se flere listinger, men vil også føre til at nedlastningen tar lenger tid. Auto vil velge basert på antall kanaler.", - "LabelOptionalNetworkPath": "(Valgfritt) Delt nettverksmappe:", - "LabelOptionalNetworkPathHelp": "Hvis denne mappen er delt på nettverket, vil Jellyfin-apper på andre enheter kunne få tilgang til mediefilene direkte dersom du spesifiserer nettverksbanen her. For eksempel, {0} eller {1}.", + "LabelOptionalNetworkPath": "Delt nettverksmappe:", + "LabelOptionalNetworkPathHelp": "Hvis denne mappen er delt på nettverket, vil klienter på andre enheter kunne få tilgang til mediefilene direkte dersom du spesifiserer nettverksbanen her. For eksempel, {0} eller {1}.", "LabelOriginalAspectRatio": "Originalt sideforhold:", "LabelOriginalTitle": "Original tittel:", "LabelOverview": "Oversikt:", @@ -564,7 +564,7 @@ "LabelRefreshMode": "Oppdateringsmodus:", "LabelReleaseDate": "Utgivelsesdato:", "LabelRemoteClientBitrateLimit": "Maksimal bithastighet for strømming til Internett (Mbps):", - "LabelRuntimeMinutes": "Spilletid (minutter):", + "LabelRuntimeMinutes": "Spilletid:", "LabelSaveLocalMetadata": "Lagre omslagsbilder og metadata i medie-mappene", "LabelSaveLocalMetadataHelp": "Lagring av omslagsbilder og metadata direkte i mediemapper vil legge dem på et sted hvor de lett kan endres på.", "LabelScheduledTaskLastRan": "Sist kjørt {0}, tok {1}.", @@ -575,7 +575,7 @@ "LabelSelectVersionToInstall": "Velg versjon å installere:", "LabelSendNotificationToUsers": "Send varslingen til:", "LabelSerialNumber": "Serienummer", - "LabelSeriesRecordingPath": "Plassering for serieopptak (valgfritt):", + "LabelSeriesRecordingPath": "Plassering for serieopptak:", "LabelServerHost": "Vertsnavn:", "LabelServerHostHelp": "192.168.1.100:8096 eller https://dinserver.no", "LabelSkipIfAudioTrackPresent": "Hopp over dersom standard lydspor matcher nedlastingsspråket", @@ -624,7 +624,7 @@ "LabelYoureDone": "Du er ferdig!", "LabelZipCode": "Postnummer:", "LabelffmpegPath": "Filbane til FFmpeg:", - "LabelffmpegPathHelp": "Filbanen til applikasjonsfilen for FFmpeg, eller mappen som inneholder FFmpeg.", + "LabelffmpegPathHelp": "Filbanen til applikasjonsfilen for FFmpeg eller mappen som inneholder FFmpeg.", "LatestFromLibrary": "Siste {0}", "LibraryAccessHelp": "Velg bibliotekene som skal deles med denne brukren. Administratorer vil ha mulighet til å gjøre endringer i alle mapper ved å bruke metadatabehandleren.", "Like": "Liker", @@ -662,13 +662,13 @@ "MessageConfirmProfileDeletion": "Er du sikker på at du vil slette denne profilen?", "MessageConfirmRecordingCancellation": "Avbryt opptak?", "MessageConfirmRemoveMediaLocation": "Er du sikker på at du vil slette denne plasseringen?", - "MessageConfirmRestart": "Er du sikker på at du vil starte Jellyfin-serveren på nytt?", - "MessageConfirmRevokeApiKey": "Er du sikker på at du vil tilbakekalle denne API-nøkkelen? Applikasjonens tilkobling til Jellyfin-serveren vil bli avbrutt umiddelbart.", + "MessageConfirmRestart": "Er du sikker på at du vil starte Jellyfin på nytt?", + "MessageConfirmRevokeApiKey": "Er du sikker på at du vil tilbakekalle denne API-nøkkelen? Applikasjonens tilkobling til denne serveren vil bli avbrutt umiddelbart.", "MessageConfirmShutdown": "Er du sikker på at du vil avslutte serveren?", "MessageContactAdminToResetPassword": "Vennligst kontakt systemadministratoren for hjelp til å tilbakestille passordet ditt.", "MessageCreateAccountAt": "Opprett en konto hos {0}", "MessageDeleteTaskTrigger": "Er du sikker på at du vil slette denne oppgaveutløseren?", - "MessageDirectoryPickerBSDInstruction": "På BSD-systemer må du kanskje endre lagringsinnstillinger i FreeNAS Jail slik at Jellyfin har tilgang dit.", + "MessageDirectoryPickerBSDInstruction": "På BSD-systemer må du kanskje endre lagringsinnstillinger i FreeNAS Jail slik at Jellyfin har tilgang til mediene dine.", "MessageDirectoryPickerLinuxInstruction": "På Linux-systemer med Arch Linux, CentOS, Debian, Fedora, openSUSE eller Ubuntu må du minimum gi tjenestebrukeren lesetilgang til lagringsplassene dine.", "MessageDownloadQueued": "Nedlasting lagt i kø.", "MessageEnablingOptionLongerScans": "Aktivering av dette alternativet kan føre til at skanning av biblioteket tar betydelig lenger tid.", @@ -690,7 +690,7 @@ "MessagePleaseEnsureInternetMetadata": "Vennligst sørg for at nedlasting av metadata fra internett er slått på.", "MessagePleaseWait": "Vennligst vent. Dette kan ta noe tid.", "MessagePluginConfigurationRequiresLocalAccess": "Logg inn direkte på din lokale server for å konfigurere dette programtillegget.", - "MessagePluginInstallDisclaimer": "Programtillegg utviklet av Jellyfin-samfunnet er en god måte å forbedre opplevelsen din av Jellyfin gjennom ekstra funksjoner og fordeler. Før installasjon bør du være klar over virkningen de kan ha på Jellyfin-serveren, som lengre skanning av bibliotek, ekstra bakgrunnsbehandling og redusert systemstabilitet.", + "MessagePluginInstallDisclaimer": "Programtillegg utviklet av brukersamfunnet er en god måte å forbedre opplevelsen din gjennom ekstra funksjoner og fordeler. Før installasjon bør du være klar over virkningen de kan ha på serveren din, som lengre skanning av bibliotek, ekstra bakgrunnsbehandling og redusert systemstabilitet.", "MessageReenableUser": "Se under for å reaktivere", "MessageSettingsSaved": "Innstillinger lagret.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Følgende medieplassering vil bli fjernet fra biblioteket ditt:", @@ -698,7 +698,7 @@ "MessageUnsetContentHelp": "Innhold vises som enkle mapper. For beste resultat, bruk metadatabehandleren for å sette innholdstypen for undermapper.", "MessageYouHaveVersionInstalled": "Du har for øyeblikket versjon {0} installert.", "MetadataManager": "Metadatabehandler", - "MetadataSettingChangeHelp": "Endring av metadatainnstillinger vil gjelde nytt innhold som legges til fra nå av. For å oppdatere eksisterende innhold, åpne detaljer-menyen og klikk på oppdateringsknappen, eller kjør masseoppdatering ved hjelp av metadatabehandleren.", + "MetadataSettingChangeHelp": "Endring av metadatainnstillinger vil gjelde nytt innhold lagt til fra nå av. For å oppdatere eksisterende innhold, åpne detaljer-menyen og klikk på oppdateringsknappen, eller kjør masseoppdatering ved hjelp av metadatabehandleren.", "MinutesAfter": "minutter etter", "MinutesBefore": "minutter før", "Monday": "Mandag", @@ -742,7 +742,7 @@ "OptionAllowVideoPlaybackTranscoding": "Tillat filmavspilling som krever omkoding", "OptionAscending": "Økende", "OptionAutomaticallyGroupSeries": "Slå sammen serier som er spredt over flere mapper automatisk", - "OptionAutomaticallyGroupSeriesHelp": "Hvis aktivert, vil serier som er spredt over flere mapper innenfor dette biblioteket bli slått sammen automatisk til en enkelt serie.", + "OptionAutomaticallyGroupSeriesHelp": "Serier som er spredt over flere mapper innenfor dette biblioteket bli slått sammen automatisk til en enkelt serie.", "OptionBlockBooks": "Bøker", "OptionBlockChannelContent": "Innhold fra Internettkanal", "OptionBlockLiveTvChannels": "Direkte-TV-kanaler", @@ -761,7 +761,7 @@ "OptionDatePlayed": "Dato avspilt", "OptionDescending": "Fallende", "OptionDisableUser": "Deaktiver denne brukeren", - "OptionDisableUserHelp": "Hvis deaktivert vil ikke serveren godta noen tilkoblinger fra denne brukeren. Eksisterende tilkoblinger vil avsluttes umiddelbart.", + "OptionDisableUserHelp": "Serveren vil ikke godta noen tilkoblinger fra denne brukeren. Eksisterende tilkoblinger vil avsluttes umiddelbart.", "OptionDislikes": "Misliker", "OptionDisplayFolderView": "Vis en mappevisning for å vise enkle mediemapper", "OptionDisplayFolderViewHelp": "Vis mapper ved siden av andre mediebibliotek. Dette kan være nyttig hvis du vil ha en enkel mappevisning.", @@ -796,7 +796,7 @@ "OptionHideUserFromLoginHelp": "Praktisk for private eller skjulte administratorer. Brukeren vil måtte logge inn manuelt ved å skrive inn brukernavn og passord.", "OptionHlsSegmentedSubtitles": "HLS-segmenterte undertekster", "OptionIgnoreTranscodeByteRangeRequests": "Ignorer byte range-forespørsler ved omkoding", - "OptionIgnoreTranscodeByteRangeRequestsHelp": "Hvis aktivert vil disse forespørslene bli besvart, men byte-range-hodet vil ignoreres.", + "OptionIgnoreTranscodeByteRangeRequestsHelp": "Disse forespørslene bli besvart, men byte-range-hodet vil ignoreres.", "OptionImdbRating": "IMDb-vurdering", "OptionLikes": "Liker", "OptionMax": "Maks", @@ -807,9 +807,9 @@ "OptionOnInterval": "Per intervall", "OptionParentalRating": "Aldersgrense", "OptionPlainStorageFolders": "Vis alle mapper som enkle lagringsmapper", - "OptionPlainStorageFoldersHelp": "Hvis aktivert, vil alle mapper bli representert i DIDL som \"object.container.storageFolder\" istedet for en mer spesifikk type, som \"object.container.person.musicArtist\".", + "OptionPlainStorageFoldersHelp": "Alle mapper representeres i DIDL som \"object.container.storageFolder\" istedet for en mer spesifikk type, som \"object.container.person.musicArtist\".", "OptionPlainVideoItems": "Vis alle videoer som enkle videoelementer", - "OptionPlainVideoItemsHelp": "Hvis aktivert, blir alle videoer representert i DIDL som \"object.item.videoItem\" i stedet for en mer bestemt type, for eksempel \"object.item.videoItem.movie\".", + "OptionPlainVideoItemsHelp": "Alle videoer representerer i DIDL som \"object.item.videoItem\" i stedet for en mer bestemt type, for eksempel \"object.item.videoItem.movie\".", "OptionPlayCount": "Antall avspillinger", "OptionPlayed": "Avspilt", "OptionPremiereDate": "Premieredato", @@ -1057,7 +1057,7 @@ "General": "Generelt", "ChangingMetadataImageSettingsNewContent": "Endringer gjort i innstillinger for metadata eller omslagsbilder vil kun gjelde nytt innhold i biblioteket ditt. For å endre eksisterende innhold, må du oppdatere dets metadata manuelt.", "DefaultSubtitlesHelp": "Undertekster lastes inn basert på flaggene \"standard\" og \"tvungen\" i videoens integrerte metadata. Språkpreferanser tas høyde for dersom flere valg er tilgjengelig.", - "DirectStreamHelp2": "Direktestrømming av en fil bruker veldig lite ressurser uten tap av videokvalitet.", + "DirectStreamHelp2": "Direktestrømming bruker veldig lite ressurser med minimalt tap av videokvalitet.", "DisplayInMyMedia": "Vis på hjem-skjermen", "DisplayInOtherHomeScreenSections": "Vis i seksjoner på hjem-skjermen, som f.eks. siste spilte media og fortsett å se", "EnableThemeSongsHelp": "Spill av temamusikk i bakgrunnen mens du blar i biblioteket.", @@ -1139,7 +1139,7 @@ "EnableNextVideoInfoOverlayHelp": "Vis informasjon om den neste videoen i spillelisten ved slutten av en video.", "ExtractChapterImagesHelp": "Uthenting av kapittelbilder vil gjøre det mulig for klienter å vise bilder i menyer for å velge kapitel. Denne prosessen kan være treg, ressurskrevende, og kan kreve flere gigabyte med lagringsplass. Prosessen kjører når videoer oppdages, samt som en daglig planlagt hendelse. Tidsplanen kan endres i innstillinger for planlagte hendelser. Det anbefales ikke at denne prosessen kjøres når det er mange aktive brukere innlogget.", "Extras": "Ekstramateriale", - "HeaderKodiMetadataHelp": "For å aktivere eller deaktivere NFO-metadata, gå til bibliotekoppsettet i Jellyfin og finn valgene for lagring av metadata.", + "HeaderKodiMetadataHelp": "For å aktivere eller deaktivere NFO-metadata, endre biblioteket og finn valgene for lagring av metadata.", "OptionArtist": "Artist", "HeaderPhotoAlbums": "Fotoalbum", "HeaderSecondsValue": "{0} sekunder", @@ -1172,7 +1172,7 @@ "LanNetworksHelp": "Kommaseparert liste over IP-adresser eller IP/nettverksmaske for nettverk som skal regnes som lokalt nettverk når båndbreddebegrensninger skal håndheves. Hvis satt, vil alle andre IP-adresser bli regnet for å være på eksternt nettverk og vil dermed være underlagt båndbreddebegrensningene for eksterne nettverk. Hvis tomt, vil kun serverens subnettverk bli regnet for å være på det lokale nettverket.", "LearnHowYouCanContribute": "Finn ut hvordan du kan bidra.", "SeriesYearToPresent": "{0} - Nå", - "LabelBaseUrlHelp": "Legger til en egendefinert undermappe til serverens nettadresse. For eksempel: http://example.com/<baseurl>", + "LabelBaseUrlHelp": "Legg til en egendefinert undermappe til serverens nettadresse. For eksempel: http://example.com/<baseurl>", "LabelFont": "Skrifttype:", "LabelMatchType": "Matchtype:", "OptionPosterCard": "Plakatkort", @@ -1188,7 +1188,7 @@ "EnableExternalVideoPlayers": "Eksterne videospillere", "EnableExternalVideoPlayersHelp": "En liste over eksterne spillere vil vises når du starter videoavspilling.", "EnableNextVideoInfoOverlay": "Vis informasjon om neste video under avspilling", - "ErrorDeletingItem": "Det oppstod en feil under sletting av elementet fra Jellyfin-serveren. Vennligst sørg for at Jellyfin-serveren har skrivetilgang til mappen og prøv igjen.", + "ErrorDeletingItem": "Det oppstod en feil under sletting av elementet fra serveren. Vennligst sørg for at Jellyfin har skrivetilgang til mappen og prøv igjen.", "ExtraLarge": "Ekstra stor", "FetchingData": "Henter ytterligere data", "Folders": "Mapper", @@ -1290,10 +1290,10 @@ "OnlyForcedSubtitles": "Kun tvungen", "OnlyForcedSubtitlesHelp": "Bare last inn undertekster merket som tvungen.", "OnlyImageFormats": "Bare bildeformater (VOBSUB, PGS, SUB)", - "OptionAllowMediaPlaybackTranscodingHelp": "Begrensning av tilgang til omkoding kan føre til avspillingsfeil i Jellyfin-apper grunnet at medieformater ikke støtes.", + "OptionAllowMediaPlaybackTranscodingHelp": "Begrensning av tilgang til omkoding kan føre til avspillingsfeil hos klienter grunnet at medieformater ikke støttes.", "OptionAllowSyncTranscoding": "Tillat nedlastning og synkronisering av media som krever omkoding", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", - "OptionDownloadImagesInAdvanceHelp": "Som standard vil de fleste bilder kun lastes ned når de blir forespurt av en Jellyfin-app. Aktiver denne innstillingen for å laste ned alle bilder på forhånd når ny media oppdages. Dette kan føre til at skanning av biblioteket tar betydelig lenger tid.", + "OptionDownloadImagesInAdvanceHelp": "Som standard vil de fleste bilder kun lastes ned når de blir forespurt av en klient. Aktiver denne innstillingen for å laste ned alle bilder på forhånd når ny media oppdages. Dette kan føre til at skanning av biblioteket tar betydelig lenger tid.", "OptionDownloadLogoImage": "Logo", "OptionDownloadThumbImage": "Miniatyrbilde", "OptionHasTrailer": "Trailer", @@ -1416,7 +1416,7 @@ "MessageSyncPlayGroupDoesNotExist": "Kunne ikke bli med i gruppen fordi den ikke finnes.", "MessageSyncPlayPlaybackPermissionRequired": "Tillatelse for avspilling kreves.", "MessageSyncPlayNoGroupsAvailable": "Ingen grupper tilgjengelige. Begynn å spill noe først.", - "MessageSyncPlayGroupWait": "{0} bufrer...", + "MessageSyncPlayGroupWait": "{0} bufrer…", "MessageSyncPlayUserLeft": "{0} har forlatt gruppen.", "MessageSyncPlayUserJoined": "{0} har blitt med i gruppen.", "MessageSyncPlayDisabled": "SyncPlay deaktivert.", @@ -1437,7 +1437,7 @@ "LabelRequireHttps": "Krev HTTPS", "LabelStable": "Stabil", "LabelChromecastVersion": "Chromecast-versjon", - "LabelEnableHttpsHelp": "Aktiverer at serveren skal lytte på den valgte HTTPS-porten. Et gyldig sertifikat må også være konfigurert for at dette skal tre i kraft.", + "LabelEnableHttpsHelp": "Lytt på den valgte HTTPS-porten. Et gyldig sertifikat må også være angitt for at dette skal tre i kraft.", "LabelEnableHttps": "Aktiver HTTPS", "HeaderSyncPlayEnabled": "SyncPlay aktivert", "HeaderSyncPlaySelectGroup": "Bli med i en gruppe", @@ -1467,5 +1467,7 @@ "LabelRepositoryNameHelp": "Et egendefinert navn for å skille denne kilden fra andre som er lagt til på serveren din.", "ClearQueue": "Tøm køen", "ViewAlbumArtist": "Vis albumartist", - "StopPlayback": "Stopp avspilling" + "StopPlayback": "Stopp avspilling", + "NextTrack": "Hopp til neste", + "LabelUnstable": "Ustabil" } From cfc28c1b58d06393b449701ddd525600f8108991 Mon Sep 17 00:00:00 2001 From: WontTell Date: Thu, 13 Aug 2020 21:57:28 +0000 Subject: [PATCH 043/285] Translated using Weblate (Spanish (Latin America)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es_419/ --- src/strings/es_419.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/strings/es_419.json b/src/strings/es_419.json index f57a4a17d4..9f0422227a 100644 --- a/src/strings/es_419.json +++ b/src/strings/es_419.json @@ -1414,7 +1414,7 @@ "Backdrops": "Imágenes de fondo", "Backdrop": "Imagen de fondo", "Auto": "Auto", - "AuthProviderHelp": "Selecciona el proveedor de autenticación que se utilizará para autenticar la contraseña de este usuario.", + "AuthProviderHelp": "Selecciona un proveedor de autenticación que se utilizará para autenticar la contraseña de este usuario.", "Audio": "Audio", "AspectRatio": "Relación de aspecto", "AskAdminToCreateLibrary": "Pide a un administrador crear una biblioteca.", @@ -1472,7 +1472,7 @@ "LabelUnstable": "Inestable", "Preview": "Vista previa", "SubtitleVerticalPositionHelp": "Número de línea donde aparece el texto. Números positivos representan de arriba hacia abajo. Números negativos representan de abajo hacia arriba.", - "LabelSubtitleVerticalPosition": "Posición Vertical:", + "LabelSubtitleVerticalPosition": "Posición vertical:", "PreviousTrack": "Saltar al anterior", "MessageGetInstalledPluginsError": "Ocurrió un error buscando la lista de plugins instalados.", "MessagePluginInstallError": "Ocurrió un error instalando el plugin." From 844262e8a00d91bfaf5c6809c5775607a6b257f8 Mon Sep 17 00:00:00 2001 From: Marius Lindvall Date: Thu, 13 Aug 2020 22:00:53 +0000 Subject: [PATCH 044/285] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegi?= =?UTF-8?q?an=20Bokm=C3=A5l)=20Translation:=20Jellyfin/Jellyfin=20Web=20Tr?= =?UTF-8?q?anslate-URL:=20https://translate.jellyfin.org/projects/jellyfin?= =?UTF-8?q?/jellyfin-web/nb=5FNO/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/strings/nb.json | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/src/strings/nb.json b/src/strings/nb.json index 814490cabc..9a31970159 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -824,7 +824,7 @@ "OptionResumable": "Kan gjenopptas", "OptionRuntime": "Spilletid", "OptionSaveMetadataAsHidden": "Lagre metadata og bilder som skjulte filer", - "OptionSaveMetadataAsHiddenHelp": "Endring av denne innstillingen vil gjelde ny metadata som lagres fra nå av. Eksisterende metadata vil bli oppdatert neste gang de lagres av Jellyfin-serveren.", + "OptionSaveMetadataAsHiddenHelp": "Endring av denne innstillingen vil gjelde ny metadata som lagres fra nå av. Eksisterende metadata vil bli oppdatert neste gang de lagres av serveren.", "OptionSpecialEpisode": "Spesialepisoder", "OptionSubstring": "Deltekst", "OptionTrackName": "Låtnavn", @@ -860,9 +860,9 @@ "PleaseAddAtLeastOneFolder": "Vennligst legg til minst en mappe til dette biblioteket ved å trykke på Legg til-knappen.", "PleaseConfirmPluginInstallation": "Klikk på OK for å bekrefte at du har lest ovenfor og ønsker å fortsette med installasjon av programtillegget.", "PleaseEnterNameOrId": "Vennligst skriv et navn eller en ekstern ID.", - "PleaseRestartServerName": "Vennligst start Jellyfin-serveren på nytt - {0}.", + "PleaseRestartServerName": "Vennligst start Jellyfin på nytt på {0}.", "PleaseSelectTwoItems": "Vennligst velg minst to elementer.", - "MessagePluginInstalled": "Programtillegget ble installert. Jellyfin-serveren må startes på nytt for at endringene skal tre i kraft.", + "MessagePluginInstalled": "Programtillegget ble installert. Serveren må startes på nytt for at endringene skal tre i kraft.", "PreferEmbeddedTitlesOverFileNames": "Foretrekk integrerte titler fremfor filnavn", "PreferEmbeddedTitlesOverFileNamesHelp": "Dette avgjør standard visningstittel når det ikke er noen metadata eller lokale metadata tilgjengelige.", "Premieres": "Premierer", @@ -883,7 +883,7 @@ "RecordingScheduled": "Opptak planlagt.", "Recordings": "Opptak", "Refresh": "Oppdater", - "RefreshDialogHelp": "Metadata blir oppdatert basert på innstillinger og internett-tjenester som er aktivert i dashbordet for Jellyfin-serveren.", + "RefreshDialogHelp": "Metadata blir oppdatert basert på innstillinger og internett-tjenester som er aktivert i dashbordet.", "RefreshMetadata": "Oppdater metadata", "RefreshQueued": "Oppdatering satt i kø.", "ReleaseDate": "Utgivelsesdato", @@ -917,10 +917,10 @@ "SeriesDisplayOrderHelp": "Sorter episoder etter sendt dato, DVD-rekkefølge eller absolutt nummerering.", "SeriesRecordingScheduled": "Serieopptak planlagt.", "SeriesSettings": "Serieinnstillinger", - "ServerNameIsRestarting": "Jellyfin-server - {0} starter om.", - "ServerNameIsShuttingDown": "Jellyfin-server - {0} avsluttes.", - "ServerRestartNeededAfterPluginInstall": "Jellyfin-serveren trenger en omstart etter installasjon av et programtillegg.", - "ServerUpdateNeeded": "Denne Jellyfin-serveren må oppdateres. For å laste ned siste versjon, vennligst besøk {0}", + "ServerNameIsRestarting": "Serveren på {0} starter om.", + "ServerNameIsShuttingDown": "Serveren på {0} avsluttes.", + "ServerRestartNeededAfterPluginInstall": "Jellyfin trenger en omstart etter installasjon av et programtillegg.", + "ServerUpdateNeeded": "Denne serveren må oppdateres. For å laste ned siste versjon, vennligst besøk {0}", "Settings": "Innstillinger", "SettingsSaved": "Innstillinger lagret.", "SettingsWarning": "Endring av disse verdiene kan føre til ustabilitet eller tilkoblingsfeil. Hvis du opplever problemer anbefaler vi at du endrer dem tilbake til standardverdiene.", @@ -1304,7 +1304,7 @@ "OptionProfileVideo": "Video", "OptionProtocolHls": "HTTP-direktestrømming", "OptionProtocolHttp": "HTTP", - "PasswordResetProviderHelp": "Velg hvilken metode for tilbakestilling av passord som skal benyttes når denne brukeren ber om å tilbakestille passordet", + "PasswordResetProviderHelp": "Velg hvilken metode for tilbakestilling av passord som skal benyttes når denne brukeren ber om å tilbakestille passordet.", "PerfectMatch": "Perfekt match", "PlaybackData": "Avspillingsdata", "PlayCount": "Antall avspillinger", @@ -1390,7 +1390,7 @@ "LastSeen": "Sist sett {0}", "PersonRole": "som {0}", "ListPaging": "{0}-{1} av {2}", - "WriteAccessRequired": "Jellyfin Server krever skrivetilgang til denne mappen. Vennligst påse at skrivetilgang er gitt og prøv igjen.", + "WriteAccessRequired": "Jellyfin krever skrivetilgang til denne mappen. Vennligst påse at skrivetilgang er gitt og prøv igjen.", "PathNotFound": "Banen ble ikke funnet. Påse at banen er gyldig og prøv igjen.", "YadifBob": "YADIF Bob", "Yadif": "YADIF", @@ -1469,5 +1469,11 @@ "ViewAlbumArtist": "Vis albumartist", "StopPlayback": "Stopp avspilling", "NextTrack": "Hopp til neste", - "LabelUnstable": "Ustabil" + "LabelUnstable": "Ustabil", + "Preview": "Forhåndsvis", + "SubtitleVerticalPositionHelp": "Linjenummer hvor teksten dukker opp. Positive tall indikerer ovenfra og ned. Negative tall indikerer nedenfra og opp.", + "LabelSubtitleVerticalPosition": "Vertikal posisjon:", + "PreviousTrack": "Hopp til forrige", + "MessageGetInstalledPluginsError": "En feil oppstod under henting av listen over installerte tillegg.", + "MessagePluginInstallError": "En feil oppstod under installasjon av tillegget." } From 79215f76b66643bc92b226f66fe5ef9d15ec59e4 Mon Sep 17 00:00:00 2001 From: WontTell Date: Thu, 13 Aug 2020 22:06:42 +0000 Subject: [PATCH 045/285] Translated using Weblate (Spanish (Latin America)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es_419/ --- src/strings/es_419.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/strings/es_419.json b/src/strings/es_419.json index 9f0422227a..c50a878b46 100644 --- a/src/strings/es_419.json +++ b/src/strings/es_419.json @@ -1474,6 +1474,6 @@ "SubtitleVerticalPositionHelp": "Número de línea donde aparece el texto. Números positivos representan de arriba hacia abajo. Números negativos representan de abajo hacia arriba.", "LabelSubtitleVerticalPosition": "Posición vertical:", "PreviousTrack": "Saltar al anterior", - "MessageGetInstalledPluginsError": "Ocurrió un error buscando la lista de plugins instalados.", - "MessagePluginInstallError": "Ocurrió un error instalando el plugin." + "MessageGetInstalledPluginsError": "Ocurrió un error buscando la lista de complementos instalados.", + "MessagePluginInstallError": "Ocurrió un error instalando el complemento." } From c6881e6f311915bc69024f4632bfc18016f67f80 Mon Sep 17 00:00:00 2001 From: WontTell Date: Thu, 13 Aug 2020 22:08:32 +0000 Subject: [PATCH 046/285] Translated using Weblate (Spanish (Latin America)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es_419/ --- src/strings/es_419.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/strings/es_419.json b/src/strings/es_419.json index c50a878b46..34506b0ce7 100644 --- a/src/strings/es_419.json +++ b/src/strings/es_419.json @@ -158,7 +158,7 @@ "OptionPoster": "Póster", "OptionPlayed": "Reproducido", "OptionPlayCount": "Contador de reproducciones", - "OptionPlainVideoItemsHelp": "Todos los videos serán representados en DIDL como «object.item.videoItem» en vez de un tipo más específico, como «object.item.videoItem.movie».", + "OptionPlainVideoItemsHelp": "Todos los videos serán representados en DIDL como «object.item.videoItem» en lugar de un tipo más específico, como «object.item.videoItem.movie».", "OptionPlainVideoItems": "Mostrar todos los videos como elementos de video simples", "OptionPlainStorageFoldersHelp": "Todos las carpetas serán representadas en DIDL como «object.container.storageFolder» en lugar de un tipo más específico, como «object.container.person.musicArtist».", "OptionPlainStorageFolders": "Mostrar todas las carpetas como carpetas de almacenamiento simples", @@ -208,7 +208,7 @@ "OptionDownloadPrimaryImage": "Principal", "OptionDownloadMenuImage": "Menú", "OptionDownloadLogoImage": "Logo", - "OptionDownloadImagesInAdvanceHelp": "Por defecto, la mayoría de las imágenes se descargan cuando son solicitadas por un cliente. Habilita esta opción para descargarlas todas por por adelantado a medida que se agreguen nuevos medios. Esto podría causar que los escaneos de bibliotecas sean significativamente más largos.", + "OptionDownloadImagesInAdvanceHelp": "Por defecto, la mayoría de las imágenes se descargan cuando son solicitadas por un cliente. Habilita esta opción para descargarlas todas por adelantado, a medida que se agreguen nuevos medios. Esto podría causar que los escaneos de bibliotecas sean significativamente más largos.", "OptionDownloadImagesInAdvance": "Descargar las imágenes con antelación", "OptionDownloadDiscImage": "Disco", "OptionDownloadBoxImage": "Caja", @@ -237,7 +237,7 @@ "OptionBlockChannelContent": "Contenido de canales de Internet", "OptionBlockBooks": "Libros", "OptionBanner": "Banner", - "OptionAutomaticallyGroupSeriesHelp": "Series que estén repartidas en múltiples carpetas dentro de esta biblioteca serán fusionadas en una sola serie.", + "OptionAutomaticallyGroupSeriesHelp": "Series que estén repartidas en múltiples carpetas dentro de esta biblioteca serán automáticamente fusionadas en una sola serie.", "OptionAutomaticallyGroupSeries": "Fusionar automáticamente series esparcidas a través de múltiples carpetas", "OptionAutomatic": "Automático", "OptionAuto": "Automático", @@ -250,7 +250,7 @@ "OptionAllowRemoteSharedDevicesHelp": "Los dispositivos DLNA se considerarán compartidos hasta que un usuario comience a controlarlos.", "OptionAllowRemoteSharedDevices": "Permitir control remoto de dispositivos compartidos", "OptionAllowRemoteControlOthers": "Permitir control remoto de otros usuarios", - "OptionAllowMediaPlaybackTranscodingHelp": "Restringir el acceso a la transcodificación podría causar fallas en reproducción en las aplicaciones debido a formatos de medios no soportados.", + "OptionAllowMediaPlaybackTranscodingHelp": "Restringir el acceso a la transcodificación podría causar fallas en la reproducción en los clientes debido a formatos de medios no soportados.", "OptionAllowMediaPlayback": "Permitir reproducción de medios", "OptionAllowManageLiveTv": "Permitir gestión de grabación de TV en vivo", "OptionAllowLinkSharingHelp": "Solo son compartidas páginas web que contienen información sobre los medios. Los archivos de medios nunca son compartidos públicamente. Los compartidos tienen un límite de tiempo y expirarán después de {0} días.", From a15eda7d3f3f94147b7025ce90630c5984fd8eea Mon Sep 17 00:00:00 2001 From: nextlooper42 Date: Thu, 13 Aug 2020 23:29:42 +0000 Subject: [PATCH 047/285] Translated using Weblate (Slovak) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sk/ --- src/strings/sk.json | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/src/strings/sk.json b/src/strings/sk.json index 9968b15c6a..7aef8eb515 100644 --- a/src/strings/sk.json +++ b/src/strings/sk.json @@ -10,7 +10,7 @@ "AllLanguages": "Všetky jazyky", "AllLibraries": "Všetky knižnice", "AllowMediaConversion": "Povoliť konverziu médií", - "AllowRemoteAccess": "Povoliť vzdialené pripojenia k tomuto Jellyfin serveru.", + "AllowRemoteAccess": "Povoliť vzdialené pripojenia k tomuto serveru.", "AllowRemoteAccessHelp": "Nezaškrtnuté znamená, že všetky vzdialené pripojenia budú blokované.", "AlwaysPlaySubtitles": "Vždy prehrať", "AnyLanguage": "Akýkoľvek jazyk", @@ -491,7 +491,7 @@ "MessageConfirmProfileDeletion": "Ste si istý, že chcete zmazať tento profil?", "MessageConfirmRecordingCancellation": "Zrušiť nahrávanie?", "MessageConfirmRemoveMediaLocation": "Ste si istý, že chcete odobrať toto umiestnenie?", - "MessageConfirmRestart": "Ste si istý, že chcete reštartovať Jellyfin Server?", + "MessageConfirmRestart": "Ste si istý, že chcete reštartovať Jellyfin?", "MessageConfirmShutdown": "Ste si istý, že chcete vypnúť server?", "MessageEnablingOptionLongerScans": "Povolenie tejto možnosti môže mať za následok podstatne dlhšie skenovania knižníc.", "MessageFileReadError": "Pri čítaní súboru nastala chyba.", @@ -647,9 +647,9 @@ "Played": "Prehrané", "PleaseAddAtLeastOneFolder": "Pridajte prosím aspoň jeden priečinok do tejto knižnice kliknutím na tlačidlo Pridať.", "PleaseEnterNameOrId": "Prosím, zadajte meno alebo externé ID.", - "PleaseRestartServerName": "Prosím reštartujte Jellyfin Server - {0}.", + "PleaseRestartServerName": "Prosím reštartujte Jellyfin na {0}.", "PleaseSelectTwoItems": "Vyberte prosím aspoň dve položky.", - "MessagePluginInstalled": "Rozšírenie bolo úspešne nainštalované. Je potrebný reštart Jellyfin Server aby sa prejavili zmeny.", + "MessagePluginInstalled": "Rozšírenie bolo úspešne nainštalované. Je potrebný reštart servera aby sa prejavili zmeny.", "Premiere": "Premiéra", "Premieres": "Premiéry", "Previous": "Predchádzajúce", @@ -691,10 +691,10 @@ "SendMessage": "Poslať správu", "Series": "Seriály", "SeriesSettings": "Nastavenia série", - "ServerNameIsRestarting": "Jellyfin Server - {0} sa reštartuje.", - "ServerNameIsShuttingDown": "Jellyfin Server - {0} sa vypína.", - "ServerRestartNeededAfterPluginInstall": "Po inštalácii zásuvného modulu bude potrebný reštart Jellyfin servera.", - "ServerUpdateNeeded": "Tento Jellyfin server treba aktualizovať. Najnovšiu verziu nájdete na {0}", + "ServerNameIsRestarting": "Server {0} sa reštartuje.", + "ServerNameIsShuttingDown": "Server {0} sa vypína.", + "ServerRestartNeededAfterPluginInstall": "Jellyfin bude nutné po inštalácií zásuvného modulu reštartovať.", + "ServerUpdateNeeded": "Tento server je nutné aktualizovať. Pokiaľ chcete stiahnuť najnovšiu verziu, navštívte prosím {0}", "Settings": "Nastavenia", "SettingsSaved": "Nastavenia uložené.", "Share": "Zdieľať", @@ -859,7 +859,7 @@ "EnableCinemaMode": "Kino režim", "EnableNextVideoInfoOverlay": "Zobraziť informácie o nasledujúcom videu počas prehrávania", "EnableNextVideoInfoOverlayHelp": "Na konci videa sa zobrazia informácie o nasledujúcom videu v aktuálnom playliste.", - "ErrorAddingMediaPathToVirtualFolder": "Pri pridávaní cesty k mediám nastala chyba. Uistite sa prosím, že cesta je platná, a že proces Jellyfin servera má prístup k umiestneniu.", + "ErrorAddingMediaPathToVirtualFolder": "Pri pridávaní cesty k mediám nastala chyba. Uistite sa prosím, že cesta je platná, a že Jellyfin má prístup k umiestneniu.", "HeaderAddScheduledTaskTrigger": "Pridať spúšťač", "HeaderAddToPlaylist": "Pridať do playlistu", "HeaderAlert": "Upozornenie", @@ -1063,7 +1063,7 @@ "ErrorSavingTvProvider": "Nastala chyba pri ukladaní sprostredkovateľa TV vysielania. Prosím, uistite sa, že je prístupný a skúste to znova.", "ErrorPleaseSelectLineup": "Prosím, vyberte lineup a skúste to znova. Pokiaľ nie je k dispozícií žiaden lineup, skontrolujte, či je vaše používateľské meno, heslo a PSČ správne.", "ErrorGettingTvLineups": "Nastala chyba pri sťahovaní rozpisov TV programov. Prosím, uistite sa že vaše informácie sú správne a skúste to znova.", - "ErrorDeletingItem": "Nastala chyba pri vymazávaní položky z Jellyfin Servera. Prosím, overte, či Jellyfin Server má práva pre zapisovanie do priečinku s médiami a skúste to znova.", + "ErrorDeletingItem": "Nastala chyba pri vymazávaní položky zo servera. Prosím, overte, či Jellyfin má práva pre zapisovanie do priečinku s médiami a skúste to znova.", "ErrorAddingXmlTvFile": "Nastala chyba pri prístupe k XMLTV súboru. Prosím, uistite sa že súbor existuje a skúste to znova.", "ErrorAddingTunerDevice": "Nastala chyba pri pridávaní tunera. Prosím, uistite sa že je dostupný a skúste to znova.", "EnableThemeVideosHelp": "Prehrať videá úvodných zvučiek na pozadí počas prechádzania knižnice.", @@ -1080,7 +1080,7 @@ "CustomDlnaProfilesHelp": "Vytvorte si vlastný profil pre nové zariadenie alebo pre prepísanie systémového profilu.", "CopyStreamURLSuccess": "URL úspešne skopírovaná.", "CopyStreamURL": "Kopírovať URL adresu streamu", - "ConfigureDateAdded": "Konfigurácia, ako sa pridáva dátum, je definovaná v dashboarde Jellyfin Servera pod nastavením Knižnice", + "ConfigureDateAdded": "Konfigurácia pridávania dátumu je definovaná v dashboarde pod nastavením knižnice", "ColorTransfer": "Farba prenosu", "ColorPrimaries": "Primárna farba", "CinemaModeConfigurationHelp": "Kino režim prináša zážitok ako z kina priamo do vašej obývačky s možnosťou prehrať trailery a vlastné intrá pred hlavným programom.", @@ -1139,11 +1139,11 @@ "PleaseConfirmPluginInstallation": "Prosím, kliknite na OK pre potvrdenie, že ste prečítali text uvedený vyššie a chcete pokračovať v inštalácií zásuvného modulu.", "PlaybackData": "Podrobnosti prehrávania", "PlayAllFromHere": "Prehrať všetko odtiaľto", - "PasswordResetProviderHelp": "Zvoľte poskytovateľa obnovy hesla, ktorý bude použitý, keď používateľ požiada o obnovu hesla", + "PasswordResetProviderHelp": "Zvoľte poskytovateľa obnovy hesla, ktorý bude použitý, keď používateľ požiada o obnovu hesla.", "OptionThumbCard": "Náhľadové kartičky", "OptionSubstring": "Podreťazec", "OptionSpecialEpisode": "Špeciály", - "OptionSaveMetadataAsHiddenHelp": "Zmena bude platiť pre nové metadáta uložené v budúcnosti. Existujúce metadáta budú aktualizované na ďalší raz, akonáhle budú uložené Jellyfin Serverom.", + "OptionSaveMetadataAsHiddenHelp": "Zmena bude platiť pre nové metadáta uložené v budúcnosti. Existujúce metadáta budú aktualizované na ďalší raz, akonáhle budú uložené serverom.", "OptionResElement": "Zdrojový element", "OptionRequirePerfectSubtitleMatchHelp": "Vyžadovanie dokonalej zhody filtruje titulky tak, aby obsahovali iba tie ktoré boli odskúšané a overené pre váš konkrétny video súbor. Zrušenie zaškrtnutia tohoto zvýši pravdepodobnosť sťahovania tituliek, ale zvýši šancu chybného časovania alebo nesprávneho textu tituliek.", "OptionReportByteRangeSeekingWhenTranscodingHelp": "Toto je vyžadované pre niektoré zariadenia, ktoré nevedia moc dobre časovo pretáčať.", @@ -1192,7 +1192,7 @@ "MessageUnsetContentHelp": "Obsah bude zobrazený ako jednoduché priečinky. Pre lepšie výsledky použite manažér metadát na nastavenie typu obsahu podpriečinkov.", "MessageUnableToConnectToServer": "Nie sme schopný sa aktuálne pripojiť k vybranému serveru. Prosím, uistite sa že je spustený a skúste to znovu.", "MessageReenableUser": "Pozrite nižšie pre znovu-povolenie", - "MessagePluginInstallDisclaimer": "Zásuvné moduly vytvorené členmi Jellyfin komunity sú úžasná cesta ako zlepšiť váš Jellyfin zážitok s dodatočnými funkciami a benefitmi. Pred inštaláciou sa prosím oboznámte s efektmi, ktoré môžu mať vplyv na váš Jellyfin Server, ako dlhšie prehľadávanie knižníc, dodatočné procesy na pozadí a zníženie stability systému.", + "MessagePluginInstallDisclaimer": "Zásuvné moduly vytvorené členmi komunity sú úžasná cesta ako zlepšiť váš zážitok s dodatočnými funkciami a benefitmi. Pred inštaláciou sa prosím oboznámte s efektmi, ktoré môžu mať vplyv na váš server, ako dlhšie prehľadávanie knižníc, dodatočné procesy na pozadí a zníženie stability systému.", "MessagePluginConfigurationRequiresLocalAccess": "Pre konfiguráciu tohoto zásuvného modulu sa prihláste priamo na lokálny server.", "MessagePlayAccessRestricted": "Prehrávanie tohoto obsahuje je aktuálne obmedzené. Prosím, kontaktujte svojho administrátora servera pre viac informácií.", "MessagePasswordResetForUsers": "Nasledujúci používatelia si nechali obnoviť heslo. Teraz sa môžu prihlásiť s PIN kódom, ktorý použijú k vykonaniu obnovy hesla.", @@ -1204,11 +1204,11 @@ "MessageForgotPasswordFileCreated": "Nasledujúci súbor bol vytvorený na vašom serveri a obsahuje inštrukcie, ako postupovať:", "MessageDownloadQueued": "Sťahovanie zaradené do fronty.", "MessageDirectoryPickerLinuxInstruction": "Pre Linuxové distribúcie Arch Linux, CentOS, Debian, Fedora, openSUSE alebo Ubuntu, je potrebné udeliť používateľovi služby oprávnenie aspoň na čítanie.", - "MessageDirectoryPickerBSDInstruction": "Pre BSD možno budete potrebovať nakonfigurovať úložisko priamo vo vašom FreeNAS Jail aby k nim mohol pristupovať Jellyfin.", + "MessageDirectoryPickerBSDInstruction": "Pre BSD možno budete potrebovať nakonfigurovať úložisko priamo vo vašom FreeNAS Jail aby mohol Jellyfin pristupovať k vašim médiám.", "MessageDeleteTaskTrigger": "Naozaj chcete vymazať tento trigger úlohy?", "MessageCreateAccountAt": "Vytvoriť účet v {0}", "MessageContactAdminToResetPassword": "Prosím, kontaktujte vášho systémového administrátora k obnoveniu hesla.", - "MessageConfirmRevokeApiKey": "Ste si istý, že chcete odvolať tento API kľúč? Aplikácie pripojené k Jellyfin Serveru budú rázne ukončené.", + "MessageConfirmRevokeApiKey": "Ste si istý, že chcete odvolať tento API kľúč? Aplikácie pripojené k tomuto serveru budú rázne ukončené.", "Menu": "Menu", "MediaIsBeingConverted": "Médium sa konvertuje do formátu, ktorý je kompatibilný so zariadením, kde sa médium prehráva.", "MediaInfoStreamTypeEmbeddedImage": "Vložený obrázok", @@ -1288,7 +1288,7 @@ "LabelPersonRoleHelp": "Príklad: Vodič nákladiaku so zmrzlinou", "LabelPasswordResetProvider": "Poskytovateľ obnovy hesla:", "LabelParentNumber": "Číslo rodiča:", - "LabelOptionalNetworkPathHelp": "Pokiaľ je tento priečinok zdielaný vo vašej sieti, môže poskytovanie cesty k zdielanému priečinku umožniť Jellyfin aplikáciám priamy prístup k mediálnym súborom. Napríklad, {0} alebo {1}.", + "LabelOptionalNetworkPathHelp": "Pokiaľ je tento priečinok zdielaný vo vašej sieti, môže poskytovanie cesty k zdielanému priečinku umožniť klientom priamy prístup k mediálnym súborom. Napríklad, {0} alebo {1}.", "LabelNumberOfGuideDaysHelp": "Stiahnutím viacerých dní umožní sprievodca naplánovať a zobraziť viac vecí do budúcnosti, sťahovanie však môže trvať dlhšie. Auto vyberie možnosť podľa počtu kanálov.", "LabelNumberOfGuideDays": "Počet dní pre stiahnutie dát sprievodcu:", "LabelMusicStreamingTranscodingBitrateHelp": "Špecifikujte maximálny dátový tok pre streamovanie hudby.", @@ -1339,12 +1339,12 @@ "LabelEnableDlnaPlayTo": "Povoliť DLNA prehrávanie", "LabelEnableDlnaDebugLoggingHelp": "Vytvára veľké súbory s logami a mal by sa použiť len v prípade potreby odstraňovania problémov.", "LabelEnableDlnaDebugLogging": "Povoliť loggovanie DLNA debugu", - "LabelEnableDlnaClientDiscoveryIntervalHelp": "Určuje dobu trvania v sekundách medzi SSDP vyhľadávaniami vykonanými Jellyfinom.", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "Určuje dobu trvania v sekundách medzi SSDP vyhľadávaniami.", "LabelEnableDlnaClientDiscoveryInterval": "Interval pre objavenie klienta", "LabelEnableAutomaticPortMapHelp": "Automatické namapovanie vejerného portu na lokálny port serveru cez UPnP. Toto nemusí fungovať so všetkými modelmi routerov alebo sieťových konfigurácií. Zmeny sa vykonajú až po reštarte servera.", "LabelEmbedAlbumArtDidlHelp": "Niektoré zariadenia preferujú túto metódu pre získavanie obrázku albumu. Ostatným môže zlyhať prehrávanie pokiaľ je táto možnosť povolená.", "LabelBlastMessageIntervalHelp": "Určuje dobu v sekundách medzi vysielaniami správ o serveri.", - "LabelBindToLocalNetworkAddressHelp": "Prepísať lokálnu IP adresu http serveru. Pokiaľ zostane prázdna, server sa naviaže na všetky dostupné adresy. Pri zmene tejto hodnoty sa vyžaduje reštart Jellyfin Servera.", + "LabelBindToLocalNetworkAddressHelp": "Prepísať lokálnu IP adresu http serveru. Pokiaľ zostane prázdna, server sa naviaže na všetky dostupné adresy. Pri zmene tejto hodnoty sa vyžaduje reštart.", "LabelAlbumArtPN": "Obrázok albumu PN:", "LabelAlbumArtMaxWidthHelp": "Maximálne rozlíšenie obrázku albumu prostredníctvom upnp:albumArtURI.", "LabelAlbumArtMaxHeightHelp": "Maximálne rozlíšenie obrázku albumu prostredníctvom upnp:albumArtURI.", @@ -1380,7 +1380,7 @@ "LastSeen": "Naposledy videný {0}", "PersonRole": "ako {0}", "ListPaging": "{0}-{1} z {2}", - "WriteAccessRequired": "Jellyfin Server vyžaduje práva na zapisovanie do tohoto priečinku. Prosím, uistite sa že má práva na zapisovanie a skúste to znova.", + "WriteAccessRequired": "Server vyžaduje práva na zapisovanie do tohoto priečinku. Prosím, uistite sa že má práva na zapisovanie a skúste to znova.", "PathNotFound": "Táto cesta nebola nájdená. Prosím, uistite sa že cesta je správna a skúste to znovu.", "YadifBob": "YADIF Bob", "Yadif": "YADIF", @@ -1444,7 +1444,7 @@ "SyncPlayAccessHelp": "Vyberte úroveň prístupu pre tohto používateľa k funkcií SyncPlay. SyncPlay umožňuje zosynchronizovať prehrávanie s ostatnými zariadeniami.", "EnableDetailsBannerHelp": "Zobrazí banner na vrchnej časti detailu položky.", "EnableDetailsBanner": "Detail banneru", - "EnableBlurHashHelp": "Obrázky, ktoré sa stále načítavajú budú zobrazené ako dočasný obrázok s rozmazaným pozadím", + "EnableBlurHashHelp": "Obrázky, ktoré sa stále načítavajú budú zobrazené ako dočasný obrázok s rozmazaným pozadím.", "EnableBlurHash": "Povoliť obrázok s rozmazaným pozadím pre chýbajúce obrázky", "ShowMore": "Zobraziť viac", "ShowLess": "Zobraziť menej", From d544c7cb37cf47fe65b9fc0ddac3d0e8dd7325c6 Mon Sep 17 00:00:00 2001 From: WontTell Date: Thu, 13 Aug 2020 23:29:37 +0000 Subject: [PATCH 048/285] Translated using Weblate (Spanish (Latin America)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es_419/ --- src/strings/es_419.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/strings/es_419.json b/src/strings/es_419.json index 34506b0ce7..4014556e9e 100644 --- a/src/strings/es_419.json +++ b/src/strings/es_419.json @@ -1000,7 +1000,7 @@ "HeaderSelectServerCachePath": "Seleccionar ruta para la caché del servidor", "HeaderSelectServer": "Seleccionar servidor", "HeaderSelectPath": "Seleccionar ruta", - "HeaderSelectMetadataPathHelp": "Explora o escribe la ruta donde deseas guardar los metadatos. Se tienen que tener permisos de escritura en esa carpeta.", + "HeaderSelectMetadataPathHelp": "Explora o introduce la ruta que deseas usar para los metadatos. Se debe tener permisos de escritura en esa carpeta.", "HeaderSelectMetadataPath": "Selecciona la ruta para los metadatos", "HeaderSelectCertificatePath": "Selecciona la ruta del certificado", "HeaderSecondsValue": "{0} segundos", @@ -1283,7 +1283,7 @@ "Disabled": "Desactivado", "Directors": "Directores", "DirectStreaming": "Transmisión directa", - "DirectStreamHelp2": "Transmitir directamente un archivo usa muy poco poder de procesamiento sin ninguna perdida en la calidad de video.", + "DirectStreamHelp2": "Transmitir directamente un archivo usa muy poco poder de procesamiento sin pérdida en la calidad de video.", "DirectStreamHelp1": "El medio es compatible con el dispositivo en cuanto a la resolución y tipo de medio (H.264, AC3, etc.), pero está en un contenedor de archivo incompatible (mkv, avi, wmv, etc.). El video será reempaquetado sobre la marcha antes de ser enviado al dispositivo.", "DirectPlaying": "Reproducción directa", "DeviceAccessHelp": "Esto solo se aplica a los dispositivos que pueden ser identificados de manera única y no impedirá el acceso desde navegadores. Filtrar el acceso a los dispositivos de los usuarios les impedirá usar nuevos dispositivos hasta que hayan sido aprobados aquí.", @@ -1318,7 +1318,7 @@ "HeaderSeriesStatus": "Estado de la serie", "HeaderSeriesOptions": "Opciones de serie", "HeaderSendMessage": "Enviar mensaje", - "HeaderSelectTranscodingPathHelp": "Explora o escribe la ruta para los archivos de transcodificación. Se tienen que tener permisos de escritura en esa carpeta.", + "HeaderSelectTranscodingPathHelp": "Explora o introduce la ruta para los archivos de transcodificación. Se debe tener permisos de escritura en esa carpeta.", "HeaderSelectTranscodingPath": "Selecciona la ruta para los archivos temporales de transcodificación", "ConfirmDeleteItems": "Eliminar estos elementos los eliminará tanto del sistema como de tu biblioteca de medios. ¿Estás seguro de querer continuar?", "ConfirmDeleteItem": "Eliminar este elemento lo eliminará tanto del sistema como de tu biblioteca de medios. ¿Estás seguro de querer continuar?", From 195430ceff8125b80def5b94f0d203980e085b4a Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Fri, 14 Aug 2020 05:48:59 +0200 Subject: [PATCH 049/285] Use ES6 imports for clientUtils --- src/scripts/clientUtils.js | 62 +++++++++++++++++++++----------------- 1 file changed, 34 insertions(+), 28 deletions(-) diff --git a/src/scripts/clientUtils.js b/src/scripts/clientUtils.js index b576f0504e..719d722a2b 100644 --- a/src/scripts/clientUtils.js +++ b/src/scripts/clientUtils.js @@ -1,3 +1,4 @@ + export function getCurrentUser() { return window.ApiClient.getCurrentUser(false); } @@ -5,7 +6,7 @@ export function getCurrentUser() { //TODO: investigate url prefix support for serverAddress function export function serverAddress() { if (AppInfo.isNativeApp) { - var apiClient = window.ApiClient; + const apiClient = window.ApiClient; if (apiClient) { return apiClient.serverAddress(); @@ -14,15 +15,15 @@ export function serverAddress() { return null; } - var urlLower = window.location.href.toLowerCase(); - var index = urlLower.lastIndexOf('/web'); + const urlLower = window.location.href.toLowerCase(); + const index = urlLower.lastIndexOf('/web'); if (index != -1) { return urlLower.substring(0, index); } - var loc = window.location; - var address = loc.protocol + '//' + loc.hostname; + const loc = window.location; + let address = loc.protocol + '//' + loc.hostname; if (loc.port) { address += ':' + loc.port; @@ -32,7 +33,7 @@ export function serverAddress() { } export function getCurrentUserId() { - var apiClient = window.ApiClient; + const apiClient = window.ApiClient; if (apiClient) { return apiClient.getCurrentUserId(); @@ -48,7 +49,7 @@ export function onServerChanged(userId, accessToken, apiClient) { export function logout() { ConnectionManager.logout().then(function () { - var loginPage; + let loginPage; if (AppInfo.isNativeApp) { loginPage = 'selectserver.html'; @@ -80,39 +81,47 @@ export function navigate(url, preserveQueryString) { throw new Error('url cannot be null or empty'); } - var queryString = getWindowLocationSearch(); + const queryString = getWindowLocationSearch(); if (preserveQueryString && queryString) { url += queryString; } return new Promise(function (resolve, reject) { - require(['appRouter'], function (appRouter) { + import('appRouter').then(({default: appRouter}) => { return appRouter.show(url).then(resolve, reject); }); }); } export function processPluginConfigurationUpdateResult() { - require(['loading', 'toast'], function (loading, toast) { - loading.hide(); - toast.default(Globalize.translate('MessageSettingsSaved')); - }); + Promise.all([ + import('loading'), + import('toast') + ]) + .then(([{default: loading}, {default: toast}]) => { + loading.hide(); + toast.default(Globalize.translate('MessageSettingsSaved')); + }); } export function processServerConfigurationUpdateResult(result) { - require(['loading', 'toast'], function (loading, toast) { - loading.hide(); - toast.default(Globalize.translate('MessageSettingsSaved')); - }); + Promise.all([ + import('loading'), + import('toast') + ]) + .then(([{default: loading}, {default: toast}]) => { + loading.hide(); + toast.default(Globalize.translate('MessageSettingsSaved')); + }); } export function processErrorResponse(response) { - require(['loading'], function (loading) { + import('loading').then(({default: loading}) => { loading.hide(); }); - var status = '' + response.status; + let status = '' + response.status; if (response.statusText) { status = response.statusText; @@ -126,14 +135,14 @@ export function processErrorResponse(response) { export function alert(options) { if (typeof options == 'string') { - return void require(['toast'], function (toast) { + return void import('toast').then(({default: toast}) => { toast.default({ text: options }); }); } - require(['alert'], function (alert) { + import('alert').then(({default: alert}) => { alert.default({ title: options.title || Globalize.translate('HeaderAlert'), text: options.message @@ -142,7 +151,7 @@ export function alert(options) { } export function capabilities(appHost) { - var capabilities = { + let capabilities = { PlayableMediaTypes: ['Audio', 'Video'], SupportedCommands: ['MoveUp', 'MoveDown', 'MoveLeft', 'MoveRight', 'PageUp', 'PageDown', 'PreviousLetter', 'NextLetter', 'ToggleOsd', 'ToggleContextMenu', 'Select', 'Back', 'SendKey', 'SendString', 'GoHome', 'GoToSettings', 'VolumeUp', 'VolumeDown', 'Mute', 'Unmute', 'ToggleMute', 'SetVolume', 'SetAudioStreamIndex', 'SetSubtitleStreamIndex', 'DisplayContent', 'GoToSearch', 'DisplayMessage', 'SetRepeatMode', 'SetShuffleQueue', 'ChannelUp', 'ChannelDown', 'PlayMediaSource', 'PlayTrailers'], SupportsPersistentIdentifier: self.appMode === 'cordova' || self.appMode === 'android', @@ -161,22 +170,19 @@ export function selectServer() { } export function hideLoadingMsg() { - 'use strict'; - require(['loading'], function(loading) { + import('loading').then(({default: loading}) => { loading.hide(); }); } export function showLoadingMsg() { - 'use strict'; - require(['loading'], function(loading) { + import('loading').then(({default: loading}) => { loading.show(); }); } export function confirm(message, title, callback) { - 'use strict'; - require(['confirm'], function(confirm) { + import('confirm').then(({default: confirm}) => { confirm(message, title).then(function() { callback(!0); }).catch(function() { From e05efaec4c6491777af4066db38ec638011e85ad Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Fri, 14 Aug 2020 04:45:17 +0000 Subject: [PATCH 050/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 95 +++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 92 insertions(+), 3 deletions(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index 1e594ffd71..8d4076c491 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -1,5 +1,5 @@ { - "AddToPlayQueue": "வரிசையில் விளையாட சேர்க்கவும்", + "AddToPlayQueue": "இசைத்தல் வரிசையில் சேர்", "AddToCollection": "சேகரிப்பில் சேர்க்கவும்", "Add": "சேர்", "Actor": "நடிகர்", @@ -151,7 +151,7 @@ "ButtonNetwork": "வலைப்பின்னல்", "ButtonMore": "மேலும்", "ButtonManualLogin": "கைமுறை புகுபதிகை", - "ButtonLibraryAccess": "நூலக அணுகல்", + "ButtonLibraryAccess": "நூலக அனுமதி", "ButtonInfo": "தகவல்", "ButtonHome": "முகப்பு", "ButtonGuide": "வழிகாட்டி", @@ -164,5 +164,94 @@ "ChannelNumber": "சேனல் எண்", "ChannelNameOnly": "சேனல் {0} மட்டுமே", "ChannelAccessHelp": "இந்த பயனருடன் பகிர சேனல்களைத் தேர்ந்தெடுக்கவும். நிர்வாகிகள் மெட்டாடேட்டா நிர்வாகியைப் பயன்படுத்தி அனைத்து சேனல்களையும் திருத்த முடியும்.", - "ChangingMetadataImageSettingsNewContent": "மெட்டாடேட்டா அல்லது கலைப்படைப்பு பதிவிறக்க அமைப்புகளுக்கான மாற்றங்கள் உங்கள் நூலகத்தில் சேர்க்கப்பட்ட புதிய உள்ளடக்கத்திற்கு மட்டுமே பொருந்தும். இருக்கும் தலைப்புகளில் மாற்றங்களைப் பயன்படுத்த, அவற்றின் மெட்டாடேட்டாவை கைமுறையாக புதுப்பிக்க வேண்டும்." + "ChangingMetadataImageSettingsNewContent": "மெட்டாடேட்டா அல்லது கலைப்படைப்பு பதிவிறக்க அமைப்புகளுக்கான மாற்றங்கள் உங்கள் நூலகத்தில் சேர்க்கப்பட்ட புதிய உள்ளடக்கத்திற்கு மட்டுமே பொருந்தும். இருக்கும் தலைப்புகளில் மாற்றங்களைப் பயன்படுத்த, அவற்றின் மெட்டாடேட்டாவை கைமுறையாக புதுப்பிக்க வேண்டும்.", + "Episode": "அத்தியாயம்", + "EndsAtValue": "{0} இல் முடிகிறது", + "Ended": "முடிந்தது", + "EnableDetailsBannerHelp": "உருப்படி விவரங்கள் பக்கத்தின் மேலே ஒரு பேனர் படத்தைக் காண்பி.", + "EnableDetailsBanner": "விவரங்கள் பேனர்", + "EnableThemeVideosHelp": "நூலகத்தில் உலாவும்போது பின்னணியில் தீம் வீடியோக்களை இயக்குங்கள்.", + "EnableThemeVideos": "தீம் வீடியோக்கள்", + "EnableThemeSongsHelp": "நூலகத்தில் உலாவும்போது பின்னணியில் தீம் பாடல்களை இயக்குங்கள்.", + "EnableThemeSongs": "தீம் பாடல்கள்", + "EnableStreamLoopingHelp": "நேரடி ஸ்ட்ரீம்களில் சில வினாடிகள் மட்டுமே தரவு இருந்தால் தொடர்ந்து இயக்கப்பட வேண்டும். தேவைப்படாதபோது இதை இயக்குவது சிக்கல்களை ஏற்படுத்தக்கூடும்.", + "EnableStreamLooping": "ஆட்டோ-லூப் லைவ் ஸ்ட்ரீம்கள்", + "EnablePhotosHelp": "பிற ஊடக கோப்புகளுடன் படங்கள் கண்டறியப்பட்டு காண்பிக்கப்படும்.", + "EnablePhotos": "புகைப்படங்களைக் காண்பி", + "EnableNextVideoInfoOverlayHelp": "ஒரு வீடியோவின் முடிவில், தற்போதைய பிளேலிஸ்ட்டில் வரும் அடுத்த வீடியோ பற்றிய தகவலைக் காண்பி.", + "EnableNextVideoInfoOverlay": "பிளேபேக்கின் போது அடுத்த வீடியோ தகவலைக் காட்டு", + "EnableHardwareEncoding": "வன்பொருள் குறியாக்கத்தை இயக்கு", + "EnableExternalVideoPlayersHelp": "வீடியோ பிளேபேக்கைத் தொடங்கும்போது வெளிப்புற பிளேயர் மெனு காண்பிக்கப்படும்.", + "EnableExternalVideoPlayers": "வெளிப்புற வீடியோ பிளேயர்கள்", + "EnableDisplayMirroring": "காட்சி பிரதிபலிப்பு", + "EnableDecodingColorDepth10Vp9": "VP9 க்கு 10-பிட் வன்பொருள் டிகோடிங்கை இயக்கவும்", + "EnableDecodingColorDepth10Hevc": "HEVC க்கு 10-பிட் வன்பொருள் டிகோடிங்கை இயக்கவும்", + "EnableColorCodedBackgrounds": "வண்ண குறியிடப்பட்ட பின்னணிகள்", + "EnableCinemaMode": "சினிமா பயன்முறை", + "EnableBackdropsHelp": "நூலகத்தை உலாவும்போது சில பக்கங்களின் பின்னணியில் பின்னணியைக் காண்பி.", + "EditSubtitles": "வசன வரிகள் திருத்து", + "EditMetadata": "மெட்டாடேட்டாவைத் திருத்து", + "EditImages": "படங்களைத் திருத்து", + "Edit": "தொகு", + "EasyPasswordHelp": "உங்கள் எளிதான முள் குறியீடு ஆதரிக்கப்பட்ட கிளையண்ட்களில் ஆஃப்லைன் அணுகலுக்காகப் பயன்படுத்தப்படுகிறது, மேலும் நெட்வொர்க் உள்நுழைவிலும் எளிதாகப் பயன்படுத்தலாம்.", + "DropShadow": "நிழல் விட்டுவிடு", + "DrmChannelsNotImported": "டிஆர்எம் கொண்ட சேனல்கள் இறக்குமதி செய்யப்படாது.", + "DownloadsValue": "{0} பதிவிறக்கங்கள்", + "Download": "பதிவிறக்க", + "Down": "கீழ்", + "DoNotRecord": "பதிவு செய்ய வேண்டாம்", + "DisplayModeHelp": "இடைமுகத்திற்கு நீங்கள் விரும்பும் தளவமைப்பு பாணியைத் தேர்ந்தெடுக்கவும்.", + "DisplayMissingEpisodesWithinSeasonsHelp": "சேவையக உள்ளமைவில் டிவி நூலகங்களுக்கும் இது இயக்கப்பட வேண்டும்.", + "DisplayMissingEpisodesWithinSeasons": "காணாமல் போன அத்தியாயங்களை பருவங்களுக்குள் காண்பி", + "DisplayInOtherHomeScreenSections": "சமீபத்திய மீடியா போன்ற முகப்புத் திரைப் பிரிவுகளில் காண்பிக்கவும், தொடர்ந்து பார்க்கவும்", + "DisplayInMyMedia": "முகப்புத் திரையில் காட்சி", + "Display": "காட்சி", + "Dislike": "விரும்பவில்லை", + "Disconnect": "துண்டிக்கவும்", + "Disc": "வட்டு", + "Disabled": "முடக்கப்பட்டது", + "Directors": "இயக்குநர்கள்", + "Director": "இயக்குனர்", + "DirectStreaming": "நேரடி ஸ்ட்ரீமிங்", + "DirectStreamHelp2": "வீடியோ தரத்தில் குறைந்த இழப்புடன் நேரடி ஸ்ட்ரீம் மிகக் குறைந்த செயலாக்க சக்தியைப் பயன்படுத்துகிறது.", + "DirectStreamHelp1": "தீர்மானம் மற்றும் மீடியா வகை (H.264, AC3, போன்றவை) தொடர்பான சாதனத்துடன் ஊடகங்கள் இணக்கமாக உள்ளன, ஆனால் பொருந்தாத கோப்பு கொள்கலனில் (mkv, avi, wmv, போன்றவை). சாதனத்திற்கு அனுப்பப்படுவதற்கு முன்பு வீடியோ பறக்கையில் மீண்டும் தொகுக்கப்படும்.", + "DirectPlaying": "நேரடி விளையாட்டு", + "DeviceAccessHelp": "இது தனிப்பட்ட முறையில் அடையாளம் காணக்கூடிய சாதனங்களுக்கு மட்டுமே பொருந்தும் மற்றும் உலாவி அணுகலைத் தடுக்காது. பயனர் சாதன அணுகலை வடிகட்டுவது, அவை இங்கு அங்கீகரிக்கப்படும் வரை புதிய சாதனங்களைப் பயன்படுத்துவதைத் தடுக்கும்.", + "DetectingDevices": "சாதனங்களைக் கண்டறிதல்", + "Desktop": "டெஸ்க்டாப்", + "Descending": "இறங்கு வரிசை", + "Depressed": "மனச்சோர்வு", + "DeleteUserConfirmation": "இந்த பயனரை நீக்க விரும்புகிறீர்களா?", + "DeleteUser": "பயனரை நீக்கு", + "DeleteMedia": "மீடியாவை நீக்கு", + "DeleteImageConfirmation": "இந்த படத்தை நீக்க விரும்புகிறீர்களா?", + "DeleteImage": "படத்தை நீக்கு", + "DeleteDeviceConfirmation": "இந்த சாதனத்தை நீக்க விரும்புகிறீர்களா? அடுத்த முறை ஒரு பயனர் உள்நுழையும்போது அது மீண்டும் தோன்றும்.", + "Delete": "அழி", + "DeinterlaceMethodHelp": "ஒன்றோடொன்று உள்ளடக்கத்தை டிரான்ஸ்கோடிங் செய்யும்போது பயன்படுத்த வேண்டிய deinterlacing முறையைத் தேர்ந்தெடுக்கவும்.", + "DefaultSubtitlesHelp": "உட்பொதிக்கப்பட்ட மெட்டாடேட்டாவில் இயல்புநிலை மற்றும் கட்டாயக் கொடிகளின் அடிப்படையில் வசன வரிகள் ஏற்றப்படுகின்றன. பல விருப்பங்கள் கிடைக்கும்போது மொழி விருப்பத்தேர்வுகள் கருதப்படுகின்றன.", + "DefaultMetadataLangaugeDescription": "இவை உங்கள் இயல்புநிலைகள் மற்றும் ஒவ்வொரு நூலக அடிப்படையில் தனிப்பயனாக்கலாம்.", + "ErrorDefault": "கோரிக்கையை செயலாக்குவதில் பிழை ஏற்பட்டது. பின்னர் மீண்டும் முயற்சிக்கவும்.", + "Default": "இயல்புநிலை", + "DeathDateValue": "இறந்தது: {0}", + "DatePlayed": "விளையாடிய தேதி", + "DateAdded": "தேதி சேர்க்கப்பட்டது", + "CustomDlnaProfilesHelp": "புதிய சாதனத்தை குறிவைக்க அல்லது கணினி சுயவிவரத்தை மேலெழுத தனிப்பயன் சுயவிவரத்தை உருவாக்கவும்.", + "CriticRating": "விமர்சன மதிப்பீடு", + "CopyStreamURLSuccess": "URL வெற்றிகரமாக நகலெடுக்கப்பட்டது.", + "CopyStreamURL": "ஸ்ட்ரீம் URL ஐ நகலெடுக்கவும்", + "Continuing": "தொடர்கிறது", + "ContinueWatching": "தொடர்ந்து பார்த்துக் கொள்ளுங்கள்", + "Connect": "இணைக்கவும்", + "ConfirmEndPlayerSession": "ஜெல்லிஃபினை {0} இல் நிறுத்த விரும்புகிறீர்களா?", + "ConfirmDeletion": "நீக்குதலை உறுதிப்படுத்தவும்", + "ConfirmDeleteItems": "இந்த உருப்படிகளை நீக்குவது கோப்பு முறைமை மற்றும் உங்கள் ஊடக நூலகம் இரண்டிலிருந்தும் அவற்றை நீக்கும். நீங்கள் தொடர விரும்புகிறீர்களா?", + "ConfirmDeleteItem": "இந்த உருப்படியை நீக்குவது கோப்பு முறைமை மற்றும் உங்கள் ஊடக நூலகம் இரண்டிலிருந்தும் நீக்கப்படும். நீங்கள் தொடர விரும்புகிறீர்களா?", + "ConfirmDeleteImage": "படத்தை நீக்கவா?", + "ConfigureDateAdded": "நூலக அமைப்புகளின் கீழ் டாஷ்போர்டில் சேர்க்கப்பட்ட தேதி எவ்வாறு தீர்மானிக்கப்படுகிறது என்பதை உள்ளமைக்கவும்", + "Composer": "இசையமைப்பாளர்", + "CommunityRating": "சமூக மதிப்பீடு", + "ColorTransfer": "வண்ண பரிமாற்றம்", + "ColorSpace": "வண்ண இடம்", + "ColorPrimaries": "வண்ண முதன்மைகள்" } From 922623d726d4244a133b3aeb0ccd356dd63a963f Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Fri, 14 Aug 2020 06:37:09 +0000 Subject: [PATCH 051/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index 8d4076c491..d8bfbeff95 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -253,5 +253,16 @@ "CommunityRating": "சமூக மதிப்பீடு", "ColorTransfer": "வண்ண பரிமாற்றம்", "ColorSpace": "வண்ண இடம்", - "ColorPrimaries": "வண்ண முதன்மைகள்" + "ColorPrimaries": "வண்ண முதன்மைகள்", + "EveryNDays": "ஒவ்வொரு {0} நாட்களும்", + "ErrorSavingTvProvider": "டிவி வழங்குநரைச் சேமிப்பதில் பிழை ஏற்பட்டது. அணுகக்கூடியது என்பதை உறுதிசெய்து மீண்டும் முயற்சிக்கவும்.", + "ErrorPleaseSelectLineup": "தயவுசெய்து ஒரு வரிசையைத் தேர்ந்தெடுத்து மீண்டும் முயற்சிக்கவும். வரிசைகள் எதுவும் கிடைக்கவில்லை என்றால், உங்கள் பயனர்பெயர், கடவுச்சொல் மற்றும் அஞ்சல் குறியீடு சரியானதா என்பதை சரிபார்க்கவும்.", + "ErrorStartHourGreaterThanEnd": "இறுதி நேரம் தொடக்க நேரத்தை விட அதிகமாக இருக்க வேண்டும்.", + "ErrorGettingTvLineups": "டிவி வரிசைகளை பதிவிறக்குவதில் பிழை ஏற்பட்டது. உங்கள் தகவல் சரியானது என்பதை உறுதிசெய்து மீண்டும் முயற்சிக்கவும்.", + "ErrorDeletingItem": "சேவையகத்திலிருந்து உருப்படியை நீக்குவதில் பிழை ஏற்பட்டது. ஜெல்லிஃபின் மீடியா கோப்புறையில் எழுத அணுகல் உள்ளதா என்பதை சரிபார்த்து மீண்டும் முயற்சிக்கவும்.", + "ErrorAddingXmlTvFile": "XMLTV கோப்பை அணுகுவதில் பிழை ஏற்பட்டது. கோப்பு இருப்பதை உறுதிசெய்து மீண்டும் முயற்சிக்கவும்.", + "ErrorAddingTunerDevice": "ட்யூனர் சாதனத்தைச் சேர்ப்பதில் பிழை ஏற்பட்டது. அணுகக்கூடியது என்பதை உறுதிசெய்து மீண்டும் முயற்சிக்கவும்.", + "ErrorAddingMediaPathToVirtualFolder": "ஊடக பாதையைச் சேர்ப்பதில் பிழை ஏற்பட்டது. பாதை செல்லுபடியாகும் என்பதை உறுதிப்படுத்தவும், அந்த இடத்திற்கு ஜெல்லிஃபின் அணுகல் உள்ளது.", + "ErrorAddingListingsToSchedulesDirect": "உங்கள் அட்டவணைகள் நேரடி கணக்கில் வரிசையைச் சேர்ப்பதில் பிழை ஏற்பட்டது. அட்டவணைகள் நேரடி ஒரு கணக்கிற்கு ஒரு குறிப்பிட்ட எண்ணிக்கையிலான வரிசைகளை மட்டுமே அனுமதிக்கிறது. தொடர்வதற்கு முன் நீங்கள் அட்டவணைகள் நேரடி இணையதளத்தில் உள்நுழைந்து மற்றவர்களின் பட்டியலை உங்கள் கணக்கிலிருந்து அகற்ற வேண்டும்.", + "Episodes": "அத்தியாயங்கள்" } From f6517bba29fa910abc84a33ebd7811e57d36efa1 Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Fri, 14 Aug 2020 06:57:43 +0000 Subject: [PATCH 052/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 72 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 71 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index d8bfbeff95..d7f135ff02 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -264,5 +264,75 @@ "ErrorAddingTunerDevice": "ட்யூனர் சாதனத்தைச் சேர்ப்பதில் பிழை ஏற்பட்டது. அணுகக்கூடியது என்பதை உறுதிசெய்து மீண்டும் முயற்சிக்கவும்.", "ErrorAddingMediaPathToVirtualFolder": "ஊடக பாதையைச் சேர்ப்பதில் பிழை ஏற்பட்டது. பாதை செல்லுபடியாகும் என்பதை உறுதிப்படுத்தவும், அந்த இடத்திற்கு ஜெல்லிஃபின் அணுகல் உள்ளது.", "ErrorAddingListingsToSchedulesDirect": "உங்கள் அட்டவணைகள் நேரடி கணக்கில் வரிசையைச் சேர்ப்பதில் பிழை ஏற்பட்டது. அட்டவணைகள் நேரடி ஒரு கணக்கிற்கு ஒரு குறிப்பிட்ட எண்ணிக்கையிலான வரிசைகளை மட்டுமே அனுமதிக்கிறது. தொடர்வதற்கு முன் நீங்கள் அட்டவணைகள் நேரடி இணையதளத்தில் உள்நுழைந்து மற்றவர்களின் பட்டியலை உங்கள் கணக்கிலிருந்து அகற்ற வேண்டும்.", - "Episodes": "அத்தியாயங்கள்" + "Episodes": "அத்தியாயங்கள்", + "HeaderConfirmPluginInstallation": "செருகுநிரல் நிறுவலை உறுதிப்படுத்தவும்", + "HeaderConfigureRemoteAccess": "தொலைநிலை அணுகலை உள்ளமைக்கவும்", + "HeaderCodecProfileHelp": "குறிப்பிட்ட கோடெக்குகளை இயக்கும்போது கோடெக் சுயவிவரங்கள் சாதனத்தின் வரம்புகளைக் குறிக்கின்றன. ஒரு வரம்பு பொருந்தினால், கோடெக் நேரடி விளையாட்டிற்காக கட்டமைக்கப்பட்டிருந்தாலும், மீடியா டிரான்ஸ்கோட் செய்யப்படும்.", + "HeaderCodecProfile": "கோடெக் சுயவிவரம்", + "HeaderChapterImages": "பாடம் படங்கள்", + "HeaderChannelAccess": "சேனல் அணுகல்", + "HeaderCastCrew": "நடிகர்கள் & குழு", + "HeaderCastAndCrew": "நடிகர்கள் & குழு", + "HeaderCancelSeries": "தொடரை ரத்துசெய்", + "HeaderCancelRecording": "பதிவை ரத்துசெய்", + "HeaderBranding": "பிராண்டிங்", + "HeaderBooks": "புத்தகங்கள்", + "HeaderBlockItemsWithNoRating": "இல்லை அல்லது அங்கீகரிக்கப்படாத மதிப்பீட்டு தகவல் இல்லாத உருப்படிகளைத் தடு:", + "HeaderAudioSettings": "ஆடியோ அமைப்புகள்", + "HeaderAudioBooks": "ஆடியோ புத்தகங்கள்", + "HeaderAppearsOn": "தோன்றும்", + "HeaderApp": "செயலி", + "ApiKeysCaption": "தற்போது இயக்கப்பட்ட API விசைகளின் பட்டியல்", + "HeaderApiKeysHelp": "சேவையகத்துடன் தொடர்புகொள்வதற்கு வெளிப்புற பயன்பாடுகள் ஏபிஐ விசையை வைத்திருக்க வேண்டும். விசைகள் ஒரு சாதாரண பயனர் கணக்கில் உள்நுழைந்து அல்லது பயன்பாட்டிற்கு ஒரு விசையை கைமுறையாக வழங்குவதன் மூலம் வழங்கப்படுகின்றன.", + "HeaderApiKeys": "API விசைகள்", + "HeaderApiKey": "API விசை", + "HeaderAllowMediaDeletionFrom": "இருந்து மீடியாவை நீக்க அனுமதிக்கவும்", + "HeaderAlert": "எச்சரிக்கை", + "HeaderAdmin": "நிர்வாகம்", + "HeaderAdditionalParts": "கூடுதல் பாகங்கள்", + "HeaderAddUser": "பயனரைச் சேர்க்கவும்", + "HeaderAddUpdateImage": "படத்தைச் சேர்க்கவும் / புதுப்பிக்கவும்", + "HeaderAddToPlaylist": "பட்டியலில் சேர்", + "HeaderAddToCollection": "சேகரிப்பில் சேர்", + "HeaderAddScheduledTaskTrigger": "தூண்டுதலைச் சேர்க்கவும்", + "HeaderActivity": "செயல்பாடு", + "HeaderActiveRecordings": "செயலில் பதிவுகள்", + "HeaderActiveDevices": "செயலில் உள்ள சாதனங்கள்", + "HeaderAccessScheduleHelp": "சில மணிநேரங்களுக்கான அணுகலைக் கட்டுப்படுத்த அணுகல் அட்டவணையை உருவாக்கவும்.", + "HeaderAccessSchedule": "அணுகல் அட்டவணை", + "HardwareAccelerationWarning": "வன்பொருள் முடுக்கம் இயக்குவது சில சூழல்களில் உறுதியற்ற தன்மையை ஏற்படுத்தக்கூடும். உங்கள் இயக்க முறைமை மற்றும் வீடியோ இயக்கிகள் முழுமையாக புதுப்பித்த நிலையில் இருப்பதை உறுதிசெய்க. இதை இயக்கிய பின் வீடியோவை இயக்குவதில் சிக்கல் இருந்தால், நீங்கள் அமைப்பை எதுவும் இல்லை என மாற்ற வேண்டும்.", + "HDPrograms": "HD நிரல்கள்", + "EncoderPresetHelp": "செயல்திறனை மேம்படுத்த வேகமான மதிப்பை அல்லது தரத்தை மேம்படுத்த மெதுவான மதிப்பைத் தேர்வுசெய்க.", + "H264CrfHelp": "நிலையான விகித காரணி (CRF) என்பது x264 குறியாக்கிக்கான இயல்புநிலை தர அமைப்பாகும். நீங்கள் 0 மற்றும் 51 க்கு இடையில் மதிப்புகளை அமைக்கலாம், அங்கு குறைந்த மதிப்புகள் சிறந்த தரத்தை ஏற்படுத்தும் (அதிக கோப்பு அளவுகளின் இழப்பில்). சேன் மதிப்புகள் 18 முதல் 28 வரை உள்ளன. X264 இன் இயல்புநிலை 23 ஆகும், எனவே இதை நீங்கள் ஒரு தொடக்க புள்ளியாக பயன்படுத்தலாம்.", + "GuideProviderSelectListings": "பட்டியல்களைத் தேர்ந்தெடுக்கவும்", + "GuideProviderLogin": "உள்நுழைய", + "Guide": "வழிகாட்டி", + "GuestStar": "விருந்தினர் நட்சத்திரம்", + "GroupVersions": "குழு பதிப்புகள்", + "GroupBySeries": "தொடர் அடிப்படையில் குழு", + "Genre": "வகை", + "General": "பொது", + "Fullscreen": "முழு திரை", + "Friday": "வெள்ளி", + "FormatValue": "வடிவம்: {0}", + "FolderTypeUnset": "கலப்பு உள்ளடக்கம்", + "FolderTypeTvShows": "தொலைக்காட்சி நிகழ்ச்சிகள்", + "FolderTypeMusicVideos": "இசை கானொளி", + "FolderTypeMusic": "இசை", + "FolderTypeMovies": "திரைப்படங்கள்", + "FolderTypeBooks": "புத்தகங்கள்", + "Filters": "வடிப்பான்கள்", + "FileReadError": "கோப்பைப் படிக்கும்போது பிழை ஏற்பட்டது.", + "FileReadCancelled": "படித்த கோப்பு ரத்து செய்யப்பட்டது.", + "FileNotFound": "கோப்பு கிடைக்கவில்லை.", + "File": "கோப்பு", + "FetchingData": "கூடுதல் தரவைப் பெறுகிறது", + "Features": "அம்சங்கள்", + "Favorite": "பிடித்தது", + "FastForward": "வேகமாக முன்னோக்கி", + "FFmpegSavePathNotFound": "நீங்கள் உள்ளிட்ட பாதையைப் பயன்படுத்தி FFmpeg ஐ எங்களால் கண்டுபிடிக்க முடியவில்லை. FFprobe தேவைப்படுகிறது மற்றும் அதே கோப்புறையில் இருக்க வேண்டும். இந்த கூறுகள் பொதுவாக ஒரே பதிவிறக்கத்தில் ஒன்றாக தொகுக்கப்படுகின்றன. பாதையை சரிபார்த்து மீண்டும் முயற்சிக்கவும்.", + "Extras": "கூடுதல்", + "ExtractChapterImagesHelp": "அத்தியாயப் படங்களை பிரித்தெடுப்பது வாடிக்கையாளர்களுக்கு வரைகலை காட்சி தேர்வு மெனுக்களைக் காண்பிக்கும். செயல்முறை மெதுவாகவும், வள தீவிரமாகவும் இருக்கலாம், மேலும் பல ஜிகாபைட் இடம் தேவைப்படலாம். வீடியோக்கள் கண்டுபிடிக்கப்பட்டதும், இரவு திட்டமிடப்பட்ட பணியாகவும் இது இயங்குகிறது. திட்டமிடப்பட்ட பணிகள் பகுதியில் அட்டவணை கட்டமைக்கப்படுகிறது. அதிகபட்ச பயன்பாட்டு நேரங்களில் இந்த பணியை இயக்க பரிந்துரைக்கப்படவில்லை.", + "ExtraLarge": "கூடுதல் பெரியது", + "ExitFullscreen": "முழு திரையில் இருந்து வெளியேறவும்" } From 429cc400fae7cfac1cd053404ee4d3c8091753d6 Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Fri, 14 Aug 2020 07:51:36 +0000 Subject: [PATCH 053/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 38 +++++++++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index d7f135ff02..3e87f8da5f 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -334,5 +334,41 @@ "Extras": "கூடுதல்", "ExtractChapterImagesHelp": "அத்தியாயப் படங்களை பிரித்தெடுப்பது வாடிக்கையாளர்களுக்கு வரைகலை காட்சி தேர்வு மெனுக்களைக் காண்பிக்கும். செயல்முறை மெதுவாகவும், வள தீவிரமாகவும் இருக்கலாம், மேலும் பல ஜிகாபைட் இடம் தேவைப்படலாம். வீடியோக்கள் கண்டுபிடிக்கப்பட்டதும், இரவு திட்டமிடப்பட்ட பணியாகவும் இது இயங்குகிறது. திட்டமிடப்பட்ட பணிகள் பகுதியில் அட்டவணை கட்டமைக்கப்படுகிறது. அதிகபட்ச பயன்பாட்டு நேரங்களில் இந்த பணியை இயக்க பரிந்துரைக்கப்படவில்லை.", "ExtraLarge": "கூடுதல் பெரியது", - "ExitFullscreen": "முழு திரையில் இருந்து வெளியேறவும்" + "ExitFullscreen": "முழு திரையில் இருந்து வெளியேறவும்", + "HeaderFeatureAccess": "அம்ச அணுகல்", + "HeaderFavoritePlaylists": "பிடித்த இசைப்பட்டியல்கள்", + "HeaderFavoriteVideos": "பிடித்த வீடியோக்கள்", + "HeaderFavoritePeople": "பிடித்த மக்கள்", + "HeaderFavoriteMovies": "பிடித்த திரைப்படங்கள்", + "HeaderFavoriteBooks": "பிடித்த புத்தகங்கள்", + "HeaderExternalIds": "வெளி ஐடிகள்:", + "HeaderError": "பிழை", + "HeaderEpisodes": "அத்தியாயங்கள்", + "HeaderEnabledFieldsHelp": "ஒரு புலத்தை பூட்டவும், அதன் தரவு மாற்றப்படுவதைத் தடுக்கவும் தேர்வுநீக்கு.", + "HeaderEnabledFields": "இயக்கப்பட்ட புலங்கள்", + "HeaderEditImages": "படங்களைத் திருத்து", + "HeaderEasyPinCode": "எளிதாக பின் குறியீடு", + "HeaderDVR": "டி.வி.ஆர்", + "HeaderDownloadSync": "பதிவிறக்கம் & ஒத்திசை", + "HeaderDirectPlayProfileHelp": "சாதனம் சொந்த முறையில் கையாளக்கூடிய வடிவமைப்புகளைக் குறிக்க நேரடி ப்ளே சுயவிவரங்களைச் சேர்க்கவும்.", + "HeaderDirectPlayProfile": "நேரடி ப்ளே சுயவிவரம்", + "HeaderDevices": "சாதனங்கள்", + "HeaderDeviceAccess": "சாதன அணுகல்", + "HeaderDeveloperInfo": "உருவாக்குனர் தகவல்", + "HeaderDetectMyDevices": "எனது சாதனங்களைக் கண்டறியவும்", + "HeaderDeleteTaskTrigger": "பணி தூண்டுதலை நீக்கு", + "HeaderDeleteProvider": "வழங்குநரை நீக்கு", + "HeaderDeleteItems": "உருப்படிகளை நீக்கு", + "HeaderDeleteItem": "உருப்படியை நீக்கு", + "HeaderDeleteDevice": "சாதனத்தை நீக்கு", + "HeaderDefaultRecordingSettings": "இயல்புநிலை பதிவு அமைப்புகள்", + "HeaderDateIssued": "வழங்கப்பட்ட தேதி", + "HeaderCustomDlnaProfiles": "தனிப்பயன் சுயவிவரங்கள்", + "HeaderContinueListening": "தொடர்ந்து கேளுங்கள்", + "HeaderContainerProfileHelp": "குறிப்பிட்ட வடிவங்களை இயக்கும்போது கொள்கலன் சுயவிவரங்கள் சாதனத்தின் வரம்புகளைக் குறிக்கின்றன. ஒரு வரம்பு பொருந்தினால், நேரடி விளையாட்டுக்காக வடிவமைப்பு கட்டமைக்கப்பட்டிருந்தாலும், மீடியா டிரான்ஸ்கோட் செய்யப்படும்.", + "HeaderContainerProfile": "கொள்கலன் சுயவிவரம்", + "HeaderConnectionFailure": "இணைப்பு தோல்வி", + "HeaderConnectToServer": "சேவையகத்துடன் இணைக்கவும்", + "HeaderConfirmRevokeApiKey": "API விசையைத் திரும்பப்பெறுக", + "HeaderConfirmProfileDeletion": "சுயவிவர நீக்குதலை உறுதிப்படுத்தவும்" } From de798ebb9f8ff10bce3750d67cd6429fbd4a6f6a Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Fri, 14 Aug 2020 08:12:52 +0000 Subject: [PATCH 054/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 101 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 99 insertions(+), 2 deletions(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index 3e87f8da5f..30f7ea85ba 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -22,7 +22,7 @@ "AllowRemoteAccessHelp": "தேர்வு செய்யப்படாவிட்டால், எல்லா தொலைநிலை இணைப்புகளும் தடுக்கப்படும்.", "AllowRemoteAccess": "இந்த சேவையகத்திற்கு தொலை இணைப்புகளை அனுமதிக்கவும்.", "AllowFfmpegThrottlingHelp": "ஒரு டிரான்ஸ்கோட் அல்லது ரீமக்ஸ் தற்போதைய பின்னணி நிலையிலிருந்து வெகு தொலைவில் இருக்கும்போது, செயல்முறையை இடைநிறுத்துங்கள், இதனால் அது குறைந்த ஆதாரங்களை நுகரும். அடிக்கடி தேடாமல் பார்க்கும்போது இது மிகவும் பயனுள்ளதாக இருக்கும். பின்னணி சிக்கல்களை நீங்கள் சந்தித்தால் இதை அணைக்கவும்.", - "AllowFfmpegThrottling": "த்ரோட்டில் டிரான்ஸ்கோட்கள்", + "AllowFfmpegThrottling": "திராட்டில் ட்ரான்ஸ்கோட்கள்", "AllowOnTheFlySubtitleExtractionHelp": "வீடியோ டிரான்ஸ்கோடிங்கைத் தடுக்க உதவும் வகையில் உட்பொதிக்கப்பட்ட வசனங்களை வீடியோக்களிலிருந்து பிரித்தெடுத்து வாடிக்கையாளர்களுக்கு எளிய உரையில் வழங்கலாம். சில கணினிகளில் இது நீண்ட நேரம் எடுக்கும் மற்றும் பிரித்தெடுக்கும் செயல்பாட்டின் போது வீடியோ பிளேபேக் நிறுத்தப்படும். கிளையன்ட் சாதனத்தால் பூர்வீகமாக ஆதரிக்கப்படாதபோது உட்பொதிக்கப்பட்ட வசன வரிகள் வீடியோ டிரான்ஸ்கோடிங்கில் எரிக்கப்படுவதை முடக்கு.", "AllowOnTheFlySubtitleExtraction": "பறக்கையில் வசன வரிகள் பிரித்தெடுக்க அனுமதிக்கவும்", "AllowMediaConversionHelp": "மாற்றும் ஊடக அம்சத்திற்கான அணுகலை வழங்கவும் அல்லது மறுக்கவும்.", @@ -370,5 +370,102 @@ "HeaderConnectionFailure": "இணைப்பு தோல்வி", "HeaderConnectToServer": "சேவையகத்துடன் இணைக்கவும்", "HeaderConfirmRevokeApiKey": "API விசையைத் திரும்பப்பெறுக", - "HeaderConfirmProfileDeletion": "சுயவிவர நீக்குதலை உறுதிப்படுத்தவும்" + "HeaderConfirmProfileDeletion": "சுயவிவர நீக்குதலை உறுதிப்படுத்தவும்", + "HeaderSortBy": "மூலம் வரிசைப்படுத்து", + "HeaderSetupLibrary": "உங்கள் மீடியா நூலகங்களை அமைக்கவும்", + "HeaderSettings": "அமைப்புகள்", + "HeaderServerSettings": "சேவையக அமைப்புகள்", + "HeaderServerAddressSettings": "சேவையக முகவரி அமைப்புகள்", + "HeaderSeriesStatus": "தொடர் நிலை", + "HeaderSeriesOptions": "தொடர் விருப்பங்கள்", + "HeaderSendMessage": "செய்தியை அனுப்பு", + "HeaderSelectTranscodingPathHelp": "டிரான்ஸ்கோட் கோப்புகளுக்கு பயன்படுத்த பாதையை உலாவவும் அல்லது உள்ளிடவும். கோப்புறை எழுதக்கூடியதாக இருக்க வேண்டும்.", + "HeaderSelectTranscodingPath": "டிரான்ஸ்கோடிங் தற்காலிக பாதையைத் தேர்ந்தெடுக்கவும்", + "HeaderSelectServerCachePathHelp": "சேவையக தேக்கக கோப்புகளுக்கு பயன்படுத்த பாதையை உலாவவும் அல்லது உள்ளிடவும். கோப்புறை எழுதக்கூடியதாக இருக்க வேண்டும்.", + "HeaderSelectServerCachePath": "சேவையக தேக்கக பாதையைத் தேர்ந்தெடுக்கவும்", + "HeaderSelectServer": "சேவையகத்தைத் தேர்ந்தெடுக்கவும்", + "HeaderSelectPath": "பாதையைத் தேர்ந்தெடுக்கவும்", + "HeaderSelectMetadataPathHelp": "மெட்டாடேட்டாவிற்கு நீங்கள் பயன்படுத்த விரும்பும் பாதையை உலாவவும் அல்லது உள்ளிடவும். கோப்புறை எழுதக்கூடியதாக இருக்க வேண்டும்.", + "HeaderSelectMetadataPath": "மெட்டாடேட்டா பாதையைத் தேர்ந்தெடுக்கவும்", + "HeaderSelectCertificatePath": "சான்றிதழ் பாதையைத் தேர்ந்தெடுக்கவும்", + "HeaderSecondsValue": "{0} விநாடிகள்", + "HeaderSeasons": "பருவங்கள்", + "HeaderScenes": "காட்சிகள்", + "HeaderRunningTasks": "இயங்கும் பணிகள்", + "HeaderRevisionHistory": "திருத்த வரலாறு", + "HeaderRestart": "மறுதொடக்கம்", + "HeaderResponseProfileHelp": "சில வகையான மீடியாக்களை இயக்கும்போது சாதனத்திற்கு அனுப்பப்பட்ட தகவல்களைத் தனிப்பயனாக்க பதில் சுயவிவரங்கள் ஒரு வழியை வழங்குகின்றன.", + "HeaderResponseProfile": "பதில் சுயவிவரம்", + "HeaderRemoveMediaLocation": "மீடியா இருப்பிடத்தை அகற்று", + "HeaderRemoveMediaFolder": "மீடியா கோப்புறையை அகற்று", + "HeaderRemoteControl": "தொலையியக்கி", + "HeaderRemoteAccessSettings": "தொலைநிலை அணுகல் அமைப்புகள்", + "HeaderRecordingPostProcessing": "பதிவு செயலாக்கம் பதிவு செய்தல்", + "HeaderRecordingOptions": "பதிவு செய்தல் விருப்பங்கள்", + "HeaderRecentlyPlayed": "சமீபத்தில் இசையப்பட்டுள்ளது", + "HeaderProfileServerSettingsHelp": "இந்த மதிப்புகள் சேவையகம் எவ்வாறு வாடிக்கையாளர்களுக்கு முன்வைக்கும் என்பதைக் கட்டுப்படுத்துகிறது.", + "HeaderProfileInformation": "சுயவிவர தகவல்", + "HeaderProfile": "சுயவிவரம்", + "HeaderPreferredMetadataLanguage": "விருப்பமான மெட்டாடேட்டா மொழி", + "HeaderPluginInstallation": "செருகுநிரல் நிறுவல்", + "HeaderPleaseSignIn": "உள்நுழைக", + "HeaderPlaybackError": "பின்னணி பிழை", + "HeaderPlayback": "மீடியா பிளேபேக்", + "HeaderPlayOn": "இயக்கு", + "HeaderPlayAll": "அனைத்தும் இயக்கு", + "HeaderPinCodeReset": "பின் குறியீட்டை மீட்டமை", + "HeaderPhotoAlbums": "புகைப்பட ஆல்பங்கள்", + "HeaderPaths": "பாதைகள்", + "HeaderPasswordReset": "கடவுச்சொல் மீட்டமைப்பு", + "HeaderPassword": "கடவுச்சொல்", + "HeaderParentalRatings": "பெற்றோர் மதிப்பீடுகள்", + "HeaderOtherItems": "பிற உருப்படிகள்", + "HeaderOnNow": "இப்போது", + "HeaderNextVideoPlayingInValue": "அடுத்த வீடியோ {0} இல் இயங்குகிறது", + "HeaderNextEpisodePlayingInValue": "அடுத்த எபிசோட் {0} இல் விளையாடுகிறது", + "HeaderNewDevices": "புதிய சாதனங்கள்", + "HeaderNewApiKey": "புதிய API விசை", + "HeaderNavigation": "வழிசெலுத்தல்", + "HeaderMyMediaSmall": "எனது மீடியா (சிறியது)", + "HeaderMyMedia": "எனது மீடியா", + "HeaderMyDevice": "என் உபகரணம்", + "HeaderMusicVideos": "இசை கானொளி", + "HeaderMusicQuality": "இசை தரம்", + "HeaderMoreLikeThis": "இது போன்றது", + "HeaderMetadataSettings": "மெட்டாடேட்டா அமைப்புகள்", + "HeaderMediaInfo": "மீடியா தகவல்", + "HeaderMediaFolders": "மீடியா கோப்புறைகள்", + "HeaderMedia": "மீடியா", + "HeaderLoginFailure": "உள்நுழைவு தோல்வி", + "HeaderLiveTvTunerSetup": "லைவ் டிவி ட்யூனர் அமைப்பு", + "HeaderLibrarySettings": "நூலக அமைப்புகள்", + "HeaderLibraryOrder": "நூலக ஆணை", + "HeaderLibraryFolders": "நூலக கோப்புறைகள்", + "HeaderLibraryAccess": "நூலக அணுகல்", + "HeaderLibraries": "நூலகங்கள்", + "HeaderLatestRecordings": "சமீபத்திய பதிவுகள்", + "HeaderLatestMusic": "சமீபத்திய இசை", + "HeaderLatestMovies": "சமீபத்திய திரைப்படங்கள்", + "HeaderLatestMedia": "சமீபத்திய மீடியா", + "HeaderLatestEpisodes": "சமீபத்திய அத்தியாயங்கள்", + "HeaderKodiMetadataHelp": "NFO மெட்டாடேட்டாவை இயக்க அல்லது முடக்க, ஒரு நூலகத்தைத் திருத்தி மெட்டாடேட்டா சேவர்ஸ் பகுதியைக் கண்டறியவும்.", + "HeaderKeepSeries": "தொடரை வைத்திருங்கள்", + "HeaderKeepRecording": "பதிவுசெய்து கொள்ளுங்கள்", + "HeaderInstantMix": "உடனடி கலவை", + "HeaderInstall": "நிறுவு", + "HeaderImageSettings": "பட அமைப்புகள்", + "HeaderImageOptions": "பட விருப்பங்கள்", + "HeaderIdentifyItemHelp": "ஒன்று அல்லது அதற்கு மேற்பட்ட தேடல் அளவுகோல்களை உள்ளிடவும். தேடல் முடிவுகளை அதிகரிக்க அளவுகோல்களை அகற்று.", + "HeaderIdentificationHeader": "அடையாள தலைப்பு", + "HeaderIdentificationCriteriaHelp": "குறைந்தது ஒரு அடையாள அளவுகோல்களை உள்ளிடவும்.", + "HeaderIdentification": "அடையாளம்", + "HeaderHttpsSettings": "HTTPS அமைப்புகள்", + "HeaderHttpHeaders": "HTTP தலைப்புகள்", + "HeaderHome": "முகப்பு", + "HeaderGuideProviders": "டிவி வழிகாட்டி தரவு வழங்குநர்கள்", + "HeaderFrequentlyPlayed": "அடிக்கடி இசைக்கும்", + "HeaderForgotPassword": "கடவுச்சொல்லை மறந்துவிட்டீர்களா", + "HeaderForKids": "குழந்தைகளுக்காக", + "HeaderFetcherSettings": "பெறுதல் அமைப்புகள்", + "HeaderFetchImages": "படங்களை பெறுங்கள்:" } From 06689b91aec063a46ec87ff13bb8c3c4b5057d46 Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Fri, 14 Aug 2020 09:53:35 +0000 Subject: [PATCH 055/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 41 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 40 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index 30f7ea85ba..e3bd7a66af 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -467,5 +467,44 @@ "HeaderForgotPassword": "கடவுச்சொல்லை மறந்துவிட்டீர்களா", "HeaderForKids": "குழந்தைகளுக்காக", "HeaderFetcherSettings": "பெறுதல் அமைப்புகள்", - "HeaderFetchImages": "படங்களை பெறுங்கள்:" + "HeaderFetchImages": "படங்களை பெறுங்கள்:", + "Home": "முகப்பு", + "HideWatchedContentFromLatestMedia": "சமீபத்திய மீடியாவிலிருந்து பார்த்த உள்ளடக்கத்தை மறை", + "Hide": "மறை", + "Help": "உதவி", + "HeaderYears": "ஆண்டுகள்", + "HeaderXmlSettings": "XML அமைப்புகள்", + "HeaderXmlDocumentAttributes": "XML ஆவண பண்புக்கூறுகள்", + "HeaderXmlDocumentAttribute": "XML ஆவண பண்புக்கூறு", + "HeaderVideos": "வீடியோக்கள்", + "HeaderVideoTypes": "வீடியோ வகைகள்", + "HeaderVideoType": "வீடியோ வகை", + "HeaderVideoQuality": "வீடியோ தரம்", + "HeaderUsers": "பயனர்கள்", + "HeaderUser": "பயனர்", + "HeaderUploadImage": "படத்தை பதிவேற்றம் செய்யவும்", + "HeaderUpcomingOnTV": "தொலைக்காட்சியில் வரவிருக்கும்", + "HeaderTypeText": "உரையை உள்ளிடவும்", + "HeaderTypeImageFetchers": "{0} படத்தை எடுப்பவர்கள்", + "HeaderTuners": "ட்யூனர்கள்", + "HeaderTunerDevices": "ட்யூனர் சாதனங்கள்", + "HeaderTranscodingProfileHelp": "டிரான்ஸ்கோடிங் தேவைப்படும்போது எந்த வடிவங்களைப் பயன்படுத்த வேண்டும் என்பதைக் குறிக்க டிரான்ஸ்கோடிங் சுயவிவரங்களைச் சேர்க்கவும்.", + "HeaderTranscodingProfile": "டிரான்ஸ்கோடிங் சுயவிவரம்", + "HeaderTracks": "தடங்கள்", + "HeaderThisUserIsCurrentlyDisabled": "இந்த பயனர் தற்போது முடக்கப்பட்டுள்ளது", + "HeaderTaskTriggers": "பணி தூண்டுதல்கள்", + "HeaderSystemDlnaProfiles": "கணினி சுயவிவரங்கள்", + "HeaderSyncPlayEnabled": "ஒத்திசைவு இயக்கப்பட்டது", + "HeaderSyncPlaySelectGroup": "ஒரு குழுவில் சேர", + "HeaderSubtitleProfilesHelp": "சாதனம் ஆதரிக்கும் வசன வடிவங்களை வசன சுயவிவரங்கள் விவரிக்கின்றன.", + "HeaderSubtitleProfiles": "வசன சுயவிவரங்கள்", + "HeaderSubtitleProfile": "வசன சுயவிவரம்", + "HeaderSubtitleDownloads": "வசன பதிவிறக்கங்கள்", + "HeaderSubtitleAppearance": "வசனத் தோற்றம்", + "HeaderStopRecording": "பதிவு செய்வதை நிறுத்து", + "HeaderStatus": "நிலை", + "HeaderStartNow": "இப்போதே துவக்கு", + "HeaderSpecialFeatures": "சிறப்பு அம்சங்கள்", + "HeaderSpecialEpisodeInfo": "சிறப்பு எபிசோட் தகவல்", + "HeaderSortOrder": "வரிசைப்படுத்து வரிசை" } From 01c2ec079345f2d1ef7ebd7370cd48e4f93a656c Mon Sep 17 00:00:00 2001 From: Yangjin Cho Date: Fri, 14 Aug 2020 11:53:58 +0000 Subject: [PATCH 056/285] Translated using Weblate (Korean) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ko/ --- src/strings/ko.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/ko.json b/src/strings/ko.json index 62c924e517..79153c0962 100644 --- a/src/strings/ko.json +++ b/src/strings/ko.json @@ -740,7 +740,7 @@ "AllowMediaConversion": "미디어 변환 허용", "AllowOnTheFlySubtitleExtraction": "실시간 자막 추출 허용", "AllowOnTheFlySubtitleExtractionHelp": "비디오 트랜스코딩을 방지하기 위해 내장된 자막을 비디오에서 추출하여 텍스트로 클라이언트에 전송할 수 있습니다. 다만, 일부 시스템에서 추출 과정은 긴 시간이 걸리고 비디오 재생을 멈출 수 있습니다. 클라이언트에서 트랜스코딩을 사용할 수 없는 경우 이 기능을 비활성화하여 트랜스코딩 시 자막을 영상에 삽입하십시오.", - "AllowRemoteAccess": "이 Jellyfin 서버에 원격 접속을 허용합니다.", + "AllowRemoteAccess": "이 서버에 원격 접속을 허용합니다.", "AllowRemoteAccessHelp": "비 활성화할 시, 모든 외부 접속은 차단됩니다.", "AllowedRemoteAddressesHelp": "외부 접속을 허용할 IP 혹은 IP 넷마스크를 반점(,)으로 구분하여 입력하십시오. 공란일시, 모든 외부 접속이 허용됩니다.", "AlwaysPlaySubtitles": "항상 표시", From 31dd08030123017e461cba5509314b27f101c2db Mon Sep 17 00:00:00 2001 From: nothing nowhere Date: Fri, 14 Aug 2020 14:41:00 +0000 Subject: [PATCH 057/285] Added translation using Weblate (Bengali (Bangladesh)) --- src/strings/bn_BD.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 src/strings/bn_BD.json diff --git a/src/strings/bn_BD.json b/src/strings/bn_BD.json new file mode 100644 index 0000000000..0967ef424b --- /dev/null +++ b/src/strings/bn_BD.json @@ -0,0 +1 @@ +{} From efa11cfe03c449d258ea436cb2570de7f9acc60b Mon Sep 17 00:00:00 2001 From: nothing nowhere Date: Fri, 14 Aug 2020 14:45:48 +0000 Subject: [PATCH 058/285] Translated using Weblate (Bengali (Bangladesh)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/bn_BD/ --- src/strings/bn_BD.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/strings/bn_BD.json b/src/strings/bn_BD.json index 0967ef424b..9d0d42982f 100644 --- a/src/strings/bn_BD.json +++ b/src/strings/bn_BD.json @@ -1 +1,4 @@ -{} +{ + "Actor": "অভিনেতা", + "AccessRestrictedTryAgainLater": "অ্যাক্সেস বর্তমানে সীমাবদ্ধ। অনুগ্রহ করে একটু পরে আবার চেষ্টা করুন." +} From 58c49ab85a9eb8c80a9321c7e8949a82f1472087 Mon Sep 17 00:00:00 2001 From: Julien Machiels Date: Fri, 14 Aug 2020 17:10:13 +0200 Subject: [PATCH 059/285] Update src/scripts/clientUtils.js Co-authored-by: Cameron --- src/scripts/clientUtils.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/scripts/clientUtils.js b/src/scripts/clientUtils.js index 719d722a2b..fa9f232439 100644 --- a/src/scripts/clientUtils.js +++ b/src/scripts/clientUtils.js @@ -143,7 +143,7 @@ export function alert(options) { } import('alert').then(({default: alert}) => { - alert.default({ + alert({ title: options.title || Globalize.translate('HeaderAlert'), text: options.message }).then(options.callback || function () {}); From 5b0018850e8689cb9411f45f3724316e560d5351 Mon Sep 17 00:00:00 2001 From: Julien Machiels Date: Fri, 14 Aug 2020 17:10:20 +0200 Subject: [PATCH 060/285] Update src/scripts/clientUtils.js Co-authored-by: Cameron --- src/scripts/clientUtils.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/scripts/clientUtils.js b/src/scripts/clientUtils.js index fa9f232439..d94a08e56e 100644 --- a/src/scripts/clientUtils.js +++ b/src/scripts/clientUtils.js @@ -112,7 +112,7 @@ export function processServerConfigurationUpdateResult(result) { ]) .then(([{default: loading}, {default: toast}]) => { loading.hide(); - toast.default(Globalize.translate('MessageSettingsSaved')); + toast.(Globalize.translate('MessageSettingsSaved')); }); } From 7f9f3cf206950baae1ad2591b4a302546a42d717 Mon Sep 17 00:00:00 2001 From: Julien Machiels Date: Fri, 14 Aug 2020 17:10:27 +0200 Subject: [PATCH 061/285] Update src/scripts/clientUtils.js Co-authored-by: Cameron --- src/scripts/clientUtils.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/scripts/clientUtils.js b/src/scripts/clientUtils.js index d94a08e56e..eb3105a0a2 100644 --- a/src/scripts/clientUtils.js +++ b/src/scripts/clientUtils.js @@ -136,7 +136,7 @@ export function processErrorResponse(response) { export function alert(options) { if (typeof options == 'string') { return void import('toast').then(({default: toast}) => { - toast.default({ + toast({ text: options }); }); From 6cad03ec5346461b916f7bd7f20ccdb3a3362f86 Mon Sep 17 00:00:00 2001 From: DecentM Date: Fri, 14 Aug 2020 15:18:23 +0000 Subject: [PATCH 062/285] Translated using Weblate (Hungarian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/hu/ --- src/strings/hu.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/hu.json b/src/strings/hu.json index 644e7eb746..9a409e920f 100644 --- a/src/strings/hu.json +++ b/src/strings/hu.json @@ -1471,7 +1471,7 @@ "PreviousTrack": "Ugrás az előzőhöz", "NextTrack": "Ugrás a következőre", "LabelUnstable": "Instabil", - "SubtitleVerticalPositionHelp": "Annak a sornak a száma, ahol a szöveg megjelenik. A pozitív számok fentről lefelé mutatnak. A negatív számok alulról felfelé mutatnak.", + "SubtitleVerticalPositionHelp": "Annak a sornak a száma, ahol a szöveg megjelenik. Pozitív számok fentről lefele számolnak, negatív számok pedig lentről felfelé.", "Preview": "Előnézet", "LabelSubtitleVerticalPosition": "Függőleges pozíció:", "MessageGetInstalledPluginsError": "Hiba történt a jelenleg telepített bővítmények lekérdezése során.", From c88e6a30ae6664606ad254dd51bcfa73d44a6d4a Mon Sep 17 00:00:00 2001 From: nothing nowhere Date: Fri, 14 Aug 2020 14:53:02 +0000 Subject: [PATCH 063/285] Translated using Weblate (Bengali (Bangladesh)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/bn_BD/ --- src/strings/bn_BD.json | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/strings/bn_BD.json b/src/strings/bn_BD.json index 9d0d42982f..7166a05f05 100644 --- a/src/strings/bn_BD.json +++ b/src/strings/bn_BD.json @@ -1,4 +1,20 @@ { "Actor": "অভিনেতা", - "AccessRestrictedTryAgainLater": "অ্যাক্সেস বর্তমানে সীমাবদ্ধ। অনুগ্রহ করে একটু পরে আবার চেষ্টা করুন." + "AccessRestrictedTryAgainLater": "অ্যাক্সেস বর্তমানে সীমাবদ্ধ। অনুগ্রহ করে একটু পরে আবার চেষ্টা করুন.", + "AllLibraries": "সব লাইব্রেরি", + "AllLanguages": "সব ভাষা", + "AllEpisodes": "সব এপিসোড", + "AllComplexFormats": "সমস্ত জটিল ফর্ম্যাট", + "AllChannels": "সব চ্যানেল", + "All": "সবগুলি", + "Alerts": "এলার্টস", + "Albums": "অ্যালবাম সমূহ", + "AlbumArtist": "অ্যালবাম আর্টিস্ট", + "Album": "অ্যালবাম", + "AirDate": "উন্মুক্তের তারিখ", + "AdditionalNotificationServices": "আরো নোটিফিকেশন সার্ভিস ইনস্টল করতে প্লাগিন ক্যাটালগে ব্রাউস করুন।", + "AddedOnValue": "এডেড {০}", + "AddToPlaylist": "প্লেলিস্টে অ্যাড করুন", + "AddToPlayQueue": "প্লে কিউ তে অ্যাড করুন", + "AddToCollection": "কালেকশন এ অ্যাড করুন" } From 395d12e01cb0def13f90db05314dca3b00856002 Mon Sep 17 00:00:00 2001 From: nothing things Date: Fri, 14 Aug 2020 15:58:42 +0000 Subject: [PATCH 064/285] Translated using Weblate (Bengali (Bangladesh)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/bn_BD/ --- src/strings/bn_BD.json | 67 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 66 insertions(+), 1 deletion(-) diff --git a/src/strings/bn_BD.json b/src/strings/bn_BD.json index 7166a05f05..e56b7b2723 100644 --- a/src/strings/bn_BD.json +++ b/src/strings/bn_BD.json @@ -16,5 +16,70 @@ "AddedOnValue": "এডেড {০}", "AddToPlaylist": "প্লেলিস্টে অ্যাড করুন", "AddToPlayQueue": "প্লে কিউ তে অ্যাড করুন", - "AddToCollection": "কালেকশন এ অ্যাড করুন" + "AddToCollection": "কালেকশন এ অ্যাড করুন", + "ButtonPlay": "চালান", + "ButtonPause": "বিরতি", + "ButtonParentalControl": "অভিভাবকীয় নিয়ন্ত্রণ", + "ButtonOpen": "খুলুন", + "ButtonOk": "আচ্ছা", + "ButtonOff": "বন্ধ", + "ButtonNextTrack": "পরবর্তী ট্র্যাক", + "ButtonNetwork": "নেটওয়ার্ক", + "ButtonMore": "আরও", + "ButtonLibraryAccess": "লাইব্রেরি অ্যাক্সেস", + "ButtonInfo": "তথ্য", + "ButtonHome": "হোম", + "ButtonGuide": "গাইড", + "ButtonGotIt": "বুঝেছি", + "ButtonFullscreen": "ফুলস্ক্রিন", + "ButtonForgotPassword": "পাসওয়ার্ড ভুলে গেছি", + "ButtonFilter": "ফিলটার", + "ButtonEditOtherUserPreferences": "এই ব্যবহারকারীর প্রোফাইল, ছবি এবং ব্যক্তিগত পছন্দগুলি এডিট করুন।", + "ButtonEditImages": "ছবিগুলি এডিট করুন", + "ButtonEdit": "এডিট করুন", + "ButtonChangeServer": "সার্ভার পরিবর্তন করুন", + "ButtonCancel": "বাতিল", + "ButtonBack": "অনগ্রসর", + "ButtonAudioTracks": "অডিও ট্র্যাকস", + "ButtonArrowRight": "ডান", + "ButtonArrowLeft": "বাম", + "ButtonAddUser": "ব্যবহারকারী যুক্ত করুন", + "ButtonAddServer": "সার্ভার যোগ করুন", + "ButtonAddScheduledTaskTrigger": "ট্রিগার যুক্ত করুন", + "ButtonAddMediaLibrary": "মিডিয়া লাইব্রেরি যুক্ত করুন", + "ButtonAddImage": "ছবি", + "MessageBrowsePluginCatalog": "এভিলেবল প্লাগইনগুলি দেখতে আমাদের প্লাগইন ক্যাটালগ ব্রাউজ করুন।", + "Browse": "ব্রাউজ", + "BoxRear": "বক্স (পিছন)", + "BoxSet": "বক্স সেট", + "Box": "বক্স", + "Books": "বই", + "BookLibraryHelp": "অডিও এবং পাঠ্য বই সমর্থিত। {0} বইয়ের নামকরণ গাইড {1} পর্যালোচনা করুন।", + "Blacklist": "নিষিদ্ধ তালিকা", + "BirthPlaceValue": "জন্ম স্থান: {0}", + "BirthLocation": "জন্মের অবস্থান", + "BirthDateValue": "জন্ম: {0}", + "Banner": "ব্যানার", + "Backdrop": "ব্যাকড্রপ", + "Auto": "অটো", + "Audio": "অডিও", + "AskAdminToCreateLibrary": "একজন প্রশাসককে একটি লাইব্রেরি তৈরি করতে বলুন।", + "Ascending": "ঊর্ধ্বগামী", + "AsManyAsPossible": "যতটা সম্ভব", + "Artists": "শিল্পীবৃন্দ", + "Artist": "শিল্পী", + "Art": "শিল্প", + "AroundTime": "কাছাকাছি", + "Anytime": "যে কোনো সময়", + "AnyLanguage": "যেকোনো ভাষা", + "AlwaysPlaySubtitlesHelp": "ভাষার পছন্দের সাথে মিলিয়ে সাবটাইটেলগুলি লোড করা হবে।", + "AlwaysPlaySubtitles": "সর্বদা চালান", + "AllowRemoteAccessHelp": "যদি টিক না দেয়া হয়, সব রিমোট সংযোগ ব্লক করা হবে।", + "AllowRemoteAccess": "এই সার্ভারে দূরবর্তী সংযোগের অনুমতি দিন।", + "AllowFfmpegThrottling": "থ্রটল ট্রান্সকোড", + "AllowOnTheFlySubtitleExtraction": "অনদাফ্লাই সাবটাইটেল বেরকরার অনুমতি", + "AllowMediaConversion": "মিডিয়া কনভার্টের অনুমতি দিন", + "AllowHWTranscodingHelp": "টিউনার কে স্ট্রিম ট্রান্সকোড করার সুযোগ দিন। এটি সার্ভার ট্রান্সকোডিং কমাতে সাহায্য করতে পারে।", + "Aired": "উন্মুক্ত করন", + "Add": "যোগ" } From 0c84585275e4662781871e8f7a0fbec98bba5dd5 Mon Sep 17 00:00:00 2001 From: nothing things Date: Fri, 14 Aug 2020 16:43:11 +0000 Subject: [PATCH 065/285] Translated using Weblate (Bengali (Bangladesh)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/bn_BD/ --- src/strings/bn_BD.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/bn_BD.json b/src/strings/bn_BD.json index e56b7b2723..66f80428cb 100644 --- a/src/strings/bn_BD.json +++ b/src/strings/bn_BD.json @@ -81,5 +81,6 @@ "AllowMediaConversion": "মিডিয়া কনভার্টের অনুমতি দিন", "AllowHWTranscodingHelp": "টিউনার কে স্ট্রিম ট্রান্সকোড করার সুযোগ দিন। এটি সার্ভার ট্রান্সকোডিং কমাতে সাহায্য করতে পারে।", "Aired": "উন্মুক্ত করন", - "Add": "যোগ" + "Add": "যোগ", + "ButtonPreviousTrack": "পূর্ববর্তী ট্র্যাক" } From 4a6492cf11d952fc14625977958b5dbc130ba7c0 Mon Sep 17 00:00:00 2001 From: nothing things Date: Fri, 14 Aug 2020 16:43:21 +0000 Subject: [PATCH 066/285] Translated using Weblate (Bengali (Bangladesh)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/bn_BD/ --- src/strings/bn_BD.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/bn_BD.json b/src/strings/bn_BD.json index 66f80428cb..a100ff2890 100644 --- a/src/strings/bn_BD.json +++ b/src/strings/bn_BD.json @@ -82,5 +82,6 @@ "AllowHWTranscodingHelp": "টিউনার কে স্ট্রিম ট্রান্সকোড করার সুযোগ দিন। এটি সার্ভার ট্রান্সকোডিং কমাতে সাহায্য করতে পারে।", "Aired": "উন্মুক্ত করন", "Add": "যোগ", - "ButtonPreviousTrack": "পূর্ববর্তী ট্র্যাক" + "ButtonPreviousTrack": "পূর্ববর্তী ট্র্যাক", + "ButtonProfile": "প্রোফাইল" } From 2710cbe43bd09242d82314b957ae33a0630f0b39 Mon Sep 17 00:00:00 2001 From: nothing things Date: Fri, 14 Aug 2020 16:43:33 +0000 Subject: [PATCH 067/285] Translated using Weblate (Bengali (Bangladesh)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/bn_BD/ --- src/strings/bn_BD.json | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/strings/bn_BD.json b/src/strings/bn_BD.json index a100ff2890..b9d652688c 100644 --- a/src/strings/bn_BD.json +++ b/src/strings/bn_BD.json @@ -83,5 +83,14 @@ "Aired": "উন্মুক্ত করন", "Add": "যোগ", "ButtonPreviousTrack": "পূর্ববর্তী ট্র্যাক", - "ButtonProfile": "প্রোফাইল" + "ButtonProfile": "প্রোফাইল", + "ButtonResume": "রিসিউম", + "ButtonRestart": "রিস্টার্ট", + "ButtonResetPassword": "পাসওয়ার্ড রিসেট করুন", + "ButtonResetEasyPassword": "সহজ পিন কোডটি রিসেট করুন", + "ButtonRename": "নামান্তর", + "ButtonRemove": "সরান", + "ButtonRefreshGuideData": "গাইড ডেটা রিফ্রেশ করুন", + "ButtonRefresh": "রিফ্রেশ", + "ButtonQuickStartGuide": "দ্রুত শুরু করার নির্দেশাবলী" } From 4600d09402ee42257702795addcf5f57e59a8339 Mon Sep 17 00:00:00 2001 From: nothing things Date: Fri, 14 Aug 2020 17:10:47 +0000 Subject: [PATCH 068/285] Translated using Weblate (Bengali (Bangladesh)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/bn_BD/ --- src/strings/bn_BD.json | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/strings/bn_BD.json b/src/strings/bn_BD.json index b9d652688c..f6082e7268 100644 --- a/src/strings/bn_BD.json +++ b/src/strings/bn_BD.json @@ -92,5 +92,14 @@ "ButtonRemove": "সরান", "ButtonRefreshGuideData": "গাইড ডেটা রিফ্রেশ করুন", "ButtonRefresh": "রিফ্রেশ", - "ButtonQuickStartGuide": "দ্রুত শুরু করার নির্দেশাবলী" + "ButtonQuickStartGuide": "দ্রুত শুরু করার নির্দেশাবলী", + "CopyStreamURL": "স্ট্রিম ইউআরএল কপি", + "ContinueWatching": "দেখা অব্যাহত রাখুন", + "Connect": "কানেক্ট", + "ConfirmEndPlayerSession": "আপনি কি জেলিফিনকে {0} এ বন্ধ করতে চান?", + "ConfirmDeletion": "মোছার বিষয়টি নিশ্চিত করুন", + "ConfirmDeleteItems": "এই আইটেমগুলি মোছা ফাইল ফাইল এবং আপনার মিডিয়া লাইব্রেরি উভয় থেকে মুছে ফেলা হবে। আপনি কি তাই চান?", + "ConfirmDeleteItem": "এই আইটেমটি মোছার ফলে এটি ফাইল সিস্টেম এবং আপনার মিডিয়া লাইব্রেরি উভয় থেকে মুছে যাবে। আপনি কি তাই চান?", + "ConfirmDeleteImage": "ছবি মুছবেন?", + "Absolute": "গুণাতীত" } From 4a72b02601207ccc487d83c14a7bb3a0541ea383 Mon Sep 17 00:00:00 2001 From: nothing things Date: Fri, 14 Aug 2020 17:19:42 +0000 Subject: [PATCH 069/285] Translated using Weblate (Bengali (Bangladesh)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/bn_BD/ --- src/strings/bn_BD.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/bn_BD.json b/src/strings/bn_BD.json index f6082e7268..8d76889291 100644 --- a/src/strings/bn_BD.json +++ b/src/strings/bn_BD.json @@ -101,5 +101,6 @@ "ConfirmDeleteItems": "এই আইটেমগুলি মোছা ফাইল ফাইল এবং আপনার মিডিয়া লাইব্রেরি উভয় থেকে মুছে ফেলা হবে। আপনি কি তাই চান?", "ConfirmDeleteItem": "এই আইটেমটি মোছার ফলে এটি ফাইল সিস্টেম এবং আপনার মিডিয়া লাইব্রেরি উভয় থেকে মুছে যাবে। আপনি কি তাই চান?", "ConfirmDeleteImage": "ছবি মুছবেন?", - "Absolute": "গুণাতীত" + "Absolute": "গুণাতীত", + "CriticRating": "ক্রিটিক রেটিং" } From 9726ec8079a35b75974c48004191c74f154a1f06 Mon Sep 17 00:00:00 2001 From: nothing things Date: Fri, 14 Aug 2020 17:25:03 +0000 Subject: [PATCH 070/285] Translated using Weblate (Bengali (Bangladesh)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/bn_BD/ --- src/strings/bn_BD.json | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/strings/bn_BD.json b/src/strings/bn_BD.json index 8d76889291..b35c836efd 100644 --- a/src/strings/bn_BD.json +++ b/src/strings/bn_BD.json @@ -102,5 +102,12 @@ "ConfirmDeleteItem": "এই আইটেমটি মোছার ফলে এটি ফাইল সিস্টেম এবং আপনার মিডিয়া লাইব্রেরি উভয় থেকে মুছে যাবে। আপনি কি তাই চান?", "ConfirmDeleteImage": "ছবি মুছবেন?", "Absolute": "গুণাতীত", - "CriticRating": "ক্রিটিক রেটিং" + "CriticRating": "ক্রিটিক রেটিং", + "DefaultMetadataLangaugeDescription": "এগুলি আপনার প্রত্যাশিত এবং প্রতি লাইব্রেরির ভিত্তিতে কাস্টমাইজ করা যায়।", + "ErrorDefault": "অনুরোধটি প্রক্রিয়াতে একটি সমস্যা হয়েছে । অনুগ্রহ করে একটু পরে আবার চেষ্টা করুন।", + "Default": "প্রত্যাশিত", + "DeathDateValue": "মৃত: {0}", + "DatePlayed": "তারিখে চলেছে", + "DateAdded": "তারিখে এসেছে", + "CustomDlnaProfilesHelp": "নতুন ডিভাইসের সিস্টেম প্রোফাইল ওভাররাইড করতে একটি কাস্টম প্রোফাইল তৈরি করুন।" } From 157fa25b1d932c3e8f61cb402daef0c639944cd8 Mon Sep 17 00:00:00 2001 From: nothing things Date: Fri, 14 Aug 2020 17:32:56 +0000 Subject: [PATCH 071/285] Translated using Weblate (Bengali (Bangladesh)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/bn_BD/ --- src/strings/bn_BD.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/strings/bn_BD.json b/src/strings/bn_BD.json index b35c836efd..2c32123975 100644 --- a/src/strings/bn_BD.json +++ b/src/strings/bn_BD.json @@ -109,5 +109,11 @@ "DeathDateValue": "মৃত: {0}", "DatePlayed": "তারিখে চলেছে", "DateAdded": "তারিখে এসেছে", - "CustomDlnaProfilesHelp": "নতুন ডিভাইসের সিস্টেম প্রোফাইল ওভাররাইড করতে একটি কাস্টম প্রোফাইল তৈরি করুন।" + "CustomDlnaProfilesHelp": "নতুন ডিভাইসের সিস্টেম প্রোফাইল ওভাররাইড করতে একটি কাস্টম প্রোফাইল তৈরি করুন।", + "DeleteImageConfirmation": "আপনি কি নিশ্চিত যে আপনি এই চিত্রটি মুছতে চান?", + "DeleteImage": "ছবি মুছুন", + "DeleteDeviceConfirmation": "আপনি কি নিশ্চিত যে আপনি এই ডিভাইসটি মুছতে চান? এটি পরবর্তীতে ব্যবহারকারীর সাইন ইন করার পর ব্যবহারকারীর সাথে এটি আবার প্রদর্শিত হবে।", + "Delete": "মুছে ফেলুন", + "DeinterlaceMethodHelp": "ইন্টারলেসড কন্টেন্ট ট্রান্সকোড করার সময় ব্যবহারের জন্য ডিএনটারলেসিং পদ্ধতিটি নির্বাচন করুন।", + "DefaultSubtitlesHelp": "এম্বেড থাকা মেটাডেটাতে ডিফল্ট এবং জোর করে দেওয়া ফ্ল্যাগের উপর ভিত্তি করে সাবটাইটেলগুলি লোড করা হয়। ভাষা পছন্দগুলি বিবেচনা করা হয় যখন একাধিক বিকল্প থাকে।" } From dc682bce172f79badedbdeb97440921ff9eca024 Mon Sep 17 00:00:00 2001 From: nothing things Date: Fri, 14 Aug 2020 17:36:50 +0000 Subject: [PATCH 072/285] Translated using Weblate (Bengali (Bangladesh)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/bn_BD/ --- src/strings/bn_BD.json | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/src/strings/bn_BD.json b/src/strings/bn_BD.json index 2c32123975..e13514fda4 100644 --- a/src/strings/bn_BD.json +++ b/src/strings/bn_BD.json @@ -115,5 +115,32 @@ "DeleteDeviceConfirmation": "আপনি কি নিশ্চিত যে আপনি এই ডিভাইসটি মুছতে চান? এটি পরবর্তীতে ব্যবহারকারীর সাইন ইন করার পর ব্যবহারকারীর সাথে এটি আবার প্রদর্শিত হবে।", "Delete": "মুছে ফেলুন", "DeinterlaceMethodHelp": "ইন্টারলেসড কন্টেন্ট ট্রান্সকোড করার সময় ব্যবহারের জন্য ডিএনটারলেসিং পদ্ধতিটি নির্বাচন করুন।", - "DefaultSubtitlesHelp": "এম্বেড থাকা মেটাডেটাতে ডিফল্ট এবং জোর করে দেওয়া ফ্ল্যাগের উপর ভিত্তি করে সাবটাইটেলগুলি লোড করা হয়। ভাষা পছন্দগুলি বিবেচনা করা হয় যখন একাধিক বিকল্প থাকে।" + "DefaultSubtitlesHelp": "এম্বেড থাকা মেটাডেটাতে ডিফল্ট এবং জোর করে দেওয়া ফ্ল্যাগের উপর ভিত্তি করে সাবটাইটেলগুলি লোড করা হয়। ভাষা পছন্দগুলি বিবেচনা করা হয় যখন একাধিক বিকল্প থাকে।", + "EditSubtitles": "সাবটাইটেল এডিট করুন", + "EditMetadata": "মেটাডেটা এডিট করুন", + "EditImages": "ছবিগুলি এডিট করুন", + "Edit": "এডিট", + "EasyPasswordHelp": "আপনার সহজ পিন কোড সমর্থিত ক্লায়েন্ট অফলাইন অ্যাকসেসের জন্য ব্যবহার করা হয় এছাড়াও সহজ-নেটওয়ার্কে ব্যবহার করা যেতে পারে।", + "DrmChannelsNotImported": "ডিআরএম সহ চ্যানেলগুলি ইম্পোর্ট করা হবে না।", + "DownloadsValue": "{0} ডাউনলোড সমূহ", + "Download": "ডাউনলোড", + "Down": "নিচে", + "DoNotRecord": "রেকর্ড করবেন না", + "DisplayMissingEpisodesWithinSeasonsHelp": "এটি অবশ্যই সার্ভার কনফিগারেশনে টিভি লাইব্রেরির জন্য ইনেবল করতে হবে।", + "DisplayInOtherHomeScreenSections": "সর্বশেষ মিডিয়া হিসাবে হোম স্ক্রিন বিভাগে প্রদর্শন করুন এবং দেখা চালিয়ে যান", + "DisplayInMyMedia": "হোম স্ক্রিনে প্রদর্শন করুন", + "Display": "ডিসপ্লে", + "Dislike": "ডিসলাইক", + "Disconnect": "ডিসকানেক্ট", + "Disc": "ডিস্ক", + "Directors": "পরিচালকবৃন্দ", + "Director": "পরিচালক", + "DirectPlaying": "ডাইরেক্ট প্লেয়িং", + "DetectingDevices": "ডিভাইস সনাক্ত করা হচ্ছে", + "Desktop": "ডেস্কটপ", + "Descending": "ডিসেন্ডিং", + "Depressed": "অবনমিত", + "DeleteUserConfirmation": "আপনি কি নিশ্চিত যে আপনি এই ব্যবহারকারীকে মুছতে চান?", + "DeleteUser": "ব্যবহারকারী মুছুন", + "DeleteMedia": "মিডিয়া মুছুন" } From c91a6195d75af7e78f9479afc72e9cee816a9551 Mon Sep 17 00:00:00 2001 From: Julien Machiels Date: Fri, 14 Aug 2020 20:00:46 +0200 Subject: [PATCH 073/285] Update src/scripts/clientUtils.js Co-authored-by: Cameron --- src/scripts/clientUtils.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/scripts/clientUtils.js b/src/scripts/clientUtils.js index eb3105a0a2..b8ed8c038b 100644 --- a/src/scripts/clientUtils.js +++ b/src/scripts/clientUtils.js @@ -112,7 +112,7 @@ export function processServerConfigurationUpdateResult(result) { ]) .then(([{default: loading}, {default: toast}]) => { loading.hide(); - toast.(Globalize.translate('MessageSettingsSaved')); + toast(Globalize.translate('MessageSettingsSaved')); }); } From e606681872e86d56c9b06da272f4ca184c956b8b Mon Sep 17 00:00:00 2001 From: Julien Machiels Date: Fri, 14 Aug 2020 20:00:57 +0200 Subject: [PATCH 074/285] Update src/scripts/clientUtils.js Co-authored-by: Cameron --- src/scripts/clientUtils.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/scripts/clientUtils.js b/src/scripts/clientUtils.js index b8ed8c038b..bf61bb1dd3 100644 --- a/src/scripts/clientUtils.js +++ b/src/scripts/clientUtils.js @@ -101,7 +101,7 @@ export function processPluginConfigurationUpdateResult() { ]) .then(([{default: loading}, {default: toast}]) => { loading.hide(); - toast.default(Globalize.translate('MessageSettingsSaved')); + toast(Globalize.translate('MessageSettingsSaved')); }); } From afa56c18af901acf49fccb96db3ad58c7cc82daa Mon Sep 17 00:00:00 2001 From: Jeff Sharkey Date: Fri, 22 May 2020 22:23:18 -0600 Subject: [PATCH 075/285] Support for faster playback rates. The HTML5 video element already has a well-supported "playbackRate" attribute which can be used to increase playback rate. This change wires up that control to be displayed in the Jellyfish web player. The playback rates offered are between 0.5x and 2x in 0.25x increments, which matches the YouTube player. This change also wires up the ">" and "<" key events to increase and decrease the playback rate, which mirrors the keyboard shortcuts supported by YouTube. --- src/components/playback/playbackmanager.js | 49 +++++++++++++++++++ src/components/playback/playersettingsmenu.js | 35 +++++++++++++ src/controllers/playback/video/index.js | 6 +++ src/plugins/htmlVideoPlayer/plugin.js | 25 ++++++++++ src/scripts/inputManager.js | 6 +++ src/strings/en-us.json | 1 + 6 files changed, 122 insertions(+) diff --git a/src/components/playback/playbackmanager.js b/src/components/playback/playbackmanager.js index 8502b551af..96268a51d9 100644 --- a/src/components/playback/playbackmanager.js +++ b/src/components/playback/playbackmanager.js @@ -1112,6 +1112,52 @@ class PlaybackManager { } }; + self.increasePlaybackRate = function (player) { + player = player || self._currentPlayer; + if (player) { + let current = self.getPlaybackRate(player); + let supported = self.getSupportedPlaybackRates(player); + + let index = -1; + for (let i = 0, length = supported.length; i < length; i++) { + if (supported[i].id === current) { + index = i; + break; + } + } + + index = Math.min(index + 1, supported.length - 1); + self.setPlaybackRate(supported[index].id, player); + } + }; + + self.decreasePlaybackRate = function (player) { + player = player || self._currentPlayer; + if (player) { + let current = self.getPlaybackRate(player); + let supported = self.getSupportedPlaybackRates(player); + + let index = -1; + for (let i = 0, length = supported.length; i < length; i++) { + if (supported[i].id === current) { + index = i; + break; + } + } + + index = Math.max(index - 1, 0); + self.setPlaybackRate(supported[index].id, player); + } + }; + + self.getSupportedPlaybackRates = function (player) { + player = player || self._currentPlayer; + if (player && player.getSupportedPlaybackRates) { + return player.getSupportedPlaybackRates(); + } + return []; + }; + let brightnessOsdLoaded; self.setBrightness = function (val, player) { player = player || self._currentPlayer; @@ -3697,6 +3743,9 @@ class PlaybackManager { case 'SetAspectRatio': this.setAspectRatio(cmd.Arguments.AspectRatio, player); break; + case 'PlaybackRate': + this.setPlaybackRate(cmd.Arguments.PlaybackRate, player); + break; case 'SetBrightness': this.setBrightness(cmd.Arguments.Brightness, player); break; diff --git a/src/components/playback/playersettingsmenu.js b/src/components/playback/playersettingsmenu.js index 71dd7a86ff..cd227afcb4 100644 --- a/src/components/playback/playersettingsmenu.js +++ b/src/components/playback/playersettingsmenu.js @@ -149,6 +149,28 @@ function showAspectRatioMenu(player, btn) { }); } +function showPlaybackRateMenu(player, btn) { + // each has a name and id + const currentId = playbackManager.getPlaybackRate(player); + const menuItems = playbackManager.getSupportedPlaybackRates(player).map(i => ({ + id: i.id, + name: i.name, + selected: i.id === currentId + })); + + return actionsheet.show({ + items: menuItems, + positionTo: btn + }).then(function (id) { + if (id) { + playbackManager.setPlaybackRate(id, player); + return Promise.resolve(); + } + + return Promise.reject(); + }); +} + function showWithUser(options, player, user) { var supportedCommands = playbackManager.getSupportedCommands(player); @@ -166,6 +188,17 @@ function showWithUser(options, player, user) { }); } + if (supportedCommands.indexOf('PlaybackRate') !== -1) { + const currentPlaybackRateId = playbackManager.getPlaybackRate(player); + const currentPlaybackRate = playbackManager.getSupportedPlaybackRates(player).filter(i => i.id === currentPlaybackRateId)[0]; + + menuItems.push({ + name: globalize.translate('PlaybackRate'), + id: 'playbackrate', + asideText: currentPlaybackRate ? currentPlaybackRate.name : null + }); + } + if (user && user.Policy.EnableVideoPlaybackTranscoding) { var secondaryQualityText = getQualitySecondaryText(player); @@ -230,6 +263,8 @@ function handleSelectedOption(id, options, player) { return showQualityMenu(player, options.positionTo); case 'aspectratio': return showAspectRatioMenu(player, options.positionTo); + case 'playbackrate': + return showPlaybackRateMenu(player, options.positionTo); case 'repeatmode': return showRepeatModeMenu(player, options.positionTo); case 'stats': diff --git a/src/controllers/playback/video/index.js b/src/controllers/playback/video/index.js index 73540cd636..ea84b9c3f5 100644 --- a/src/controllers/playback/video/index.js +++ b/src/controllers/playback/video/index.js @@ -1243,6 +1243,12 @@ import 'css!assets/css/videoosd'; } break; } + case '>': + playbackManager.increasePlaybackRate(currentPlayer); + break; + case '<': + playbackManager.decreasePlaybackRate(currentPlayer); + break; } } diff --git a/src/plugins/htmlVideoPlayer/plugin.js b/src/plugins/htmlVideoPlayer/plugin.js index ba497729bb..33f15a741f 100644 --- a/src/plugins/htmlVideoPlayer/plugin.js +++ b/src/plugins/htmlVideoPlayer/plugin.js @@ -1634,6 +1634,31 @@ function tryRemoveElement(elem) { return null; } + getSupportedPlaybackRates() { + return [{ + name: '0.5x', + id: 0.5 + }, { + name: '0.75x', + id: 0.75 + }, { + name: '1x', + id: 1.0 + }, { + name: '1.25x', + id: 1.25 + }, { + name: '1.5x', + id: 1.5 + }, { + name: '1.75x', + id: 1.75 + }, { + name: '2x', + id: 2.0 + }]; + } + setVolume(val) { const mediaElement = this.#mediaElement; if (mediaElement) { diff --git a/src/scripts/inputManager.js b/src/scripts/inputManager.js index 077af39bf7..baa3deb0aa 100644 --- a/src/scripts/inputManager.js +++ b/src/scripts/inputManager.js @@ -185,6 +185,12 @@ import appHost from 'apphost'; 'changezoom': () => { playbackManager.toggleAspectRatio(); }, + 'increaseplaybackrate': () => { + playbackManager.increasePlaybackRate(); + }, + 'decreaseplaybackrate': () => { + playbackManager.decreasePlaybackRate(); + }, 'changeaudiotrack': () => { playbackManager.changeAudioStream(); }, diff --git a/src/strings/en-us.json b/src/strings/en-us.json index 0f37014b76..38b79613e2 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -1220,6 +1220,7 @@ "Play": "Play", "PlayAllFromHere": "Play all from here", "PlaybackData": "Playback Data", + "PlaybackRate": "Playback Rate", "PlayCount": "Play count", "PlayFromBeginning": "Play from beginning", "PlayNext": "Play next", From 7c211e68e63c327439bc759d96d0a0220cd8530f Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Sat, 15 Aug 2020 01:15:43 +0000 Subject: [PATCH 076/285] Bump eslint from 7.6.0 to 7.7.0 Bumps [eslint](https://github.com/eslint/eslint) from 7.6.0 to 7.7.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v7.6.0...v7.7.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 20 +++++--------------- 2 files changed, 6 insertions(+), 16 deletions(-) diff --git a/package.json b/package.json index 27508faa1b..fb3c2dbd30 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "css-loader": "^4.2.1", "cssnano": "^4.1.10", "del": "^5.1.0", - "eslint": "^7.6.0", + "eslint": "^7.7.0", "eslint-plugin-compat": "^3.5.1", "eslint-plugin-eslint-comments": "^3.2.0", "eslint-plugin-import": "^2.21.2", diff --git a/yarn.lock b/yarn.lock index 269b3b93cd..b507238470 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1293,17 +1293,7 @@ ajv-keywords@^3.1.0, ajv-keywords@^3.4.1: resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.4.1.tgz#ef916e271c64ac12171fd8384eaae6b2345854da" integrity sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ== -ajv@^6.1.0, ajv@^6.12.2, ajv@^6.5.5: - version "6.12.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.2.tgz#c629c5eced17baf314437918d2da88c99d5958cd" - integrity sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ== - dependencies: - fast-deep-equal "^3.1.1" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.4.1" - uri-js "^4.2.2" - -ajv@^6.10.0, ajv@^6.10.2: +ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.5.5: version "6.12.3" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.3.tgz#18c5af38a111ddeb4f2697bd78d68abc1cabd706" integrity sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA== @@ -4044,10 +4034,10 @@ eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== -eslint@^7.6.0: - version "7.6.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.6.0.tgz#522d67cfaea09724d96949c70e7a0550614d64d6" - integrity sha512-QlAManNtqr7sozWm5TF4wIH9gmUm2hE3vNRUvyoYAa4y1l5/jxD/PQStEjBMQtCqZmSep8UxrcecI60hOpe61w== +eslint@^7.7.0: + version "7.7.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.7.0.tgz#18beba51411927c4b64da0a8ceadefe4030d6073" + integrity sha512-1KUxLzos0ZVsyL81PnRN335nDtQ8/vZUD6uMtWbF+5zDtjKcsklIi78XoE0MVL93QvWTu+E5y44VyyCsOMBrIg== dependencies: "@babel/code-frame" "^7.0.0" ajv "^6.10.0" From de3a1646b0c5e6ceb6a70473ad7ede709fe2f0ee Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 15 Aug 2020 07:27:09 +0000 Subject: [PATCH 077/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index e3bd7a66af..c07bf68bbc 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -506,5 +506,21 @@ "HeaderStartNow": "இப்போதே துவக்கு", "HeaderSpecialFeatures": "சிறப்பு அம்சங்கள்", "HeaderSpecialEpisodeInfo": "சிறப்பு எபிசோட் தகவல்", - "HeaderSortOrder": "வரிசைப்படுத்து வரிசை" + "HeaderSortOrder": "வரிசைப்படுத்து வரிசை", + "LabelAccessStart": "ஆரம்பிக்கும் நேரம்:", + "LabelAccessEnd": "இறுதி நேரம்:", + "LabelAccessDay": "வாரத்தின் நாள்:", + "LabelAbortedByServerShutdown": "(சேவையக பணிநிறுத்தத்தால் கைவிடப்பட்டது)", + "Label3DFormat": "3D வடிவம்:", + "Kids": "குழந்தைகள்", + "Items": "உருப்படிகள்", + "ItemCount": "{0} உருப்படிகள்", + "InstantMix": "உடனடி கலவை", + "InstallingPackage": "{0} (பதிப்பு {1}) ஐ நிறுவுகிறது", + "ImportMissingEpisodesHelp": "காணாமல் போன அத்தியாயங்கள் பற்றிய தகவல்கள் உங்கள் தரவுத்தளத்தில் இறக்குமதி செய்யப்பட்டு பருவங்கள் மற்றும் தொடர்களில் காண்பிக்கப்படும். இது கணிசமாக நீண்ட நூலக ஸ்கேன்களை ஏற்படுத்தக்கூடும்.", + "ImportFavoriteChannelsHelp": "ட்யூனர் சாதனத்தில் பிடித்ததாகக் குறிக்கப்பட்ட சேனல்கள் மட்டுமே இறக்குமதி செய்யப்படும்.", + "Images": "படங்கள்", + "Identify": "அடையாளம் காணவும்", + "HttpsRequiresCert": "பாதுகாப்பான இணைப்புகளை இயக்க, நீங்கள் மறைகுறியாக்கம் போன்ற நம்பகமான SSL சான்றிதழை வழங்க வேண்டும். தயவுசெய்து ஒரு சான்றிதழை வழங்கவும் அல்லது பாதுகாப்பான இணைப்புகளை முடக்கவும்.", + "Horizontal": "கிடைமட்ட" } From b408ff53314c3084f59b579af25ba678b176e96c Mon Sep 17 00:00:00 2001 From: millallo Date: Sat, 15 Aug 2020 07:49:10 +0000 Subject: [PATCH 078/285] Translated using Weblate (Italian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/it/ --- src/strings/it.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/strings/it.json b/src/strings/it.json index 758cb25f6e..cb73ea2cdb 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -20,7 +20,7 @@ "AllowHWTranscodingHelp": "Abilita il sintonizzatore per codificare i flussi al volo. Ciò potrebbe contribuire a ridurre la transcodifica richiesta dal server.", "AllowOnTheFlySubtitleExtraction": "Consenti l'estrazione sottotitoli al volo", "AllowOnTheFlySubtitleExtractionHelp": "I sottotitoli incorporati possono essere estratti dai video e consegnati ai client in testo semplice per evitare la transcodifica dei video. In alcuni sistemi questo può richiedere molto tempo e causare un rallentamento della riproduzione video durante il processo di estrazione. Disattivare questa opzione per avere i sottotitoli incorporati con la transcodifica video quando non sono supportati nativamente dal dispositivo client.", - "AllowRemoteAccess": "Abilita connessioni remote a questo Server Jellyfin.", + "AllowRemoteAccess": "Abilita connessioni remote a questo server.", "AllowRemoteAccessHelp": "Se deselezionato, tutte le connessioni remote saranno bloccate.", "AllowedRemoteAddressesHelp": "Elenco separato da virgola di indirizzi IP o voci IP / maschera di rete per reti che potranno connettersi da remoto. Se lasciato vuoto, saranno consentiti tutti gli indirizzi remoti.", "AlwaysPlaySubtitles": "Riproduci sempre", @@ -110,7 +110,7 @@ "ColorTransfer": "Trasferimento Colore", "CommunityRating": "Voto del pubblico", "Composer": "Compositore", - "ConfigureDateAdded": "Scegli come determinare la data di aggiunta dal pannello di controllo del Server Jellyfin, nelle impostazioni della Libreria", + "ConfigureDateAdded": "Scegli come determinare la data di aggiunta dal pannello di controllo nelle impostazioni della libreria", "ConfirmDeleteImage": "Elimina immagine?", "ConfirmDeleteItem": "L'eliminazione di questo elemento lo cancellerà sia dal disco che dalla libreria multimediale. Sei sicuro di voler continuare?", "ConfirmDeleteItems": "L'eliminazione di questi elementi li cancellerà sia dal disco che dalla tua libreria multimediale. Sei sicuro di voler continuare?", @@ -187,7 +187,7 @@ "EndsAtValue": "Finirà alle {0}", "Episodes": "Episodi", "ErrorAddingListingsToSchedulesDirect": "C'è stato un errore nell'aggiunta della tua lista all'account Schedules Direct.\nSchedules Direct permette solo un numero limitato di selezioni per account. Potresti aver bisogno di accedere al sito Schedules Direct e rimuoverne alcune prima di procedere.", - "ErrorAddingMediaPathToVirtualFolder": "C'è stato un errore durante l'aggiunta del percorso. Per favore controlla che il percorso sia valido, e che Jellyfin Server abbia l'accesso alla posizione indicata.", + "ErrorAddingMediaPathToVirtualFolder": "C'è stato un errore durante l'aggiunta del percorso. Per favore controlla che il percorso sia valido, e che Jellyfin abbia l'accesso alla posizione indicata.", "ErrorAddingTunerDevice": "Si è verificato un errore durante l'aggiunta del sintonizzatore. Si prega di assicurarsi che sia accessibile e riprovare.", "ErrorAddingXmlTvFile": "Si è verificato un errore durante l'accesso al file XMLTV. Si prega di assicurarsi che il file esista e riprovare.", "ErrorDeletingItem": "Si è verificato un errore durante l'eliminazione dell'elemento da Jellyfin Server. Verifica che Jellyfin Server abbia accesso in scrittura sulla cartella multimediale e riprova.", From 882ede13bd5b3f7f21de168bdf8e32e6e99259f3 Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 15 Aug 2020 08:05:45 +0000 Subject: [PATCH 079/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 39 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index c07bf68bbc..1e490e6969 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -522,5 +522,42 @@ "Images": "படங்கள்", "Identify": "அடையாளம் காணவும்", "HttpsRequiresCert": "பாதுகாப்பான இணைப்புகளை இயக்க, நீங்கள் மறைகுறியாக்கம் போன்ற நம்பகமான SSL சான்றிதழை வழங்க வேண்டும். தயவுசெய்து ஒரு சான்றிதழை வழங்கவும் அல்லது பாதுகாப்பான இணைப்புகளை முடக்கவும்.", - "Horizontal": "கிடைமட்ட" + "Horizontal": "கிடைமட்ட", + "LabelBlockContentWithTags": "குறிச்சொற்களைக் கொண்ட உருப்படிகளைத் தடு:", + "LabelBlastMessageIntervalHelp": "உயிருள்ள செய்திகளுக்கு இடையில் வினாடிகளில் கால அளவை தீர்மானிக்கிறது.", + "LabelBlastMessageInterval": "உயிருள்ள செய்தி இடைவெளி", + "LabelBitrate": "பிட்ரேட்:", + "LabelBirthYear": "பிறந்த வருடம்:", + "LabelBirthDate": "பிறந்த தேதி:", + "LabelBindToLocalNetworkAddressHelp": "HTTP சேவையகத்திற்கான உள்ளூர் ஐபி முகவரியை மேலெழுதவும். காலியாக இருந்தால், கிடைக்கக்கூடிய எல்லா முகவரிகளுடனும் சேவையகம் பிணைக்கப்படும். இந்த மதிப்பை மாற்ற மறுதொடக்கம் தேவை.", + "LabelBindToLocalNetworkAddress": "உள்ளூர் பிணைய முகவரியுடன் பிணைக்கவும்:", + "LabelAutomaticallyRefreshInternetMetadataEvery": "இணையத்திலிருந்து மெட்டாடேட்டாவை தானாக புதுப்பிக்கவும்:", + "LabelAuthProvider": "அங்கீகார வழங்குநர்:", + "LabelAudioSampleRate": "ஆடியோ மாதிரி வீதம்:", + "LabelAudioLanguagePreference": "விருப்பமான ஆடியோ மொழி:", + "LabelAudioCodec": "ஆடியோ கோடெக்:", + "LabelAudioChannels": "ஆடியோ சேனல்கள்:", + "LabelAudioBitrate": "ஆடியோ பிட்ரேட்:", + "LabelAudioBitDepth": "ஆடியோ பிட் ஆழம்:", + "LabelAudio": "ஆடியோ", + "LabelArtistsHelp": "அரைக்காற்புள்ளியுடன் பல கலைஞர்களைப் பிரிக்கவும்.", + "LabelArtists": "கலைஞர்கள்:", + "LabelAppNameExample": "எடுத்துக்காட்டு: Sickbeard, Sonarr", + "LabelAppName": "பயன்பாட்டின் பெயர்", + "LabelAllowedRemoteAddressesMode": "தொலை ஐபி முகவரி வடிகட்டி பயன்முறை:", + "LabelAllowedRemoteAddresses": "தொலை ஐபி முகவரி வடிப்பான்:", + "LabelAllowHWTranscoding": "வன்பொருள் டிரான்ஸ்கோடிங்கை அனுமதிக்கவும்", + "LabelAlbumArtists": "ஆல்பம் கலைஞர்கள்:", + "LabelAlbumArtPN": "ஆல்பம் படம் PN:", + "LabelAlbumArtMaxWidthHelp": "ஆல்பம் படத்தின் அதிகபட்ச தெளிவுத்திறன் upnp வழியாக வெளிப்படுத்தப்படுகிறது: albumArtURI.", + "LabelAlbumArtMaxWidth": "ஆல்பம் படம் அதிகபட்ச அகலம்:", + "LabelAlbumArtMaxHeightHelp": "ஆல்பம் படத்தின் அதிகபட்ச தெளிவுத்திறன் upnp வழியாக வெளிப்படுத்தப்படுகிறது: albumArtURI.", + "LabelAlbumArtMaxHeight": "ஆல்பம் படம் அதிகபட்ச உயரம்:", + "LabelAlbumArtHelp": "ஆல்பம் கலைக்கு PN பயன்படுத்தப்படுகிறது, dlna: profileID பண்புக்கூறு upnp: albumArtURI. சில சாதனங்களுக்கு படத்தின் அளவைப் பொருட்படுத்தாமல் ஒரு குறிப்பிட்ட மதிப்பு தேவைப்படுகிறது.", + "LabelAlbum": "ஆல்பம்:", + "LabelAirsBeforeSeason": "பருவத்திற்கு முன் ஒளிபரப்பாகிறது:", + "LabelAirsBeforeEpisode": "அத்தியாயத்திற்கு முன் ஒளிபரப்பாகிறது:", + "LabelAirsAfterSeason": "பருவத்திற்குப் பிறகு ஒளிபரப்பாகிறது:", + "LabelAirTime": "ஒளிபரப்பப்பட்ட நேரம்:", + "LabelAirDays": "ஒளிபரப்பப்பட்ட நாட்கள்:" } From 78e64420fef7e1f1bc28da505acf514ec2028ab1 Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 15 Aug 2020 08:39:24 +0000 Subject: [PATCH 080/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 57 ++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 54 insertions(+), 3 deletions(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index 1e490e6969..36eb028372 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -24,10 +24,10 @@ "AllowFfmpegThrottlingHelp": "ஒரு டிரான்ஸ்கோட் அல்லது ரீமக்ஸ் தற்போதைய பின்னணி நிலையிலிருந்து வெகு தொலைவில் இருக்கும்போது, செயல்முறையை இடைநிறுத்துங்கள், இதனால் அது குறைந்த ஆதாரங்களை நுகரும். அடிக்கடி தேடாமல் பார்க்கும்போது இது மிகவும் பயனுள்ளதாக இருக்கும். பின்னணி சிக்கல்களை நீங்கள் சந்தித்தால் இதை அணைக்கவும்.", "AllowFfmpegThrottling": "திராட்டில் ட்ரான்ஸ்கோட்கள்", "AllowOnTheFlySubtitleExtractionHelp": "வீடியோ டிரான்ஸ்கோடிங்கைத் தடுக்க உதவும் வகையில் உட்பொதிக்கப்பட்ட வசனங்களை வீடியோக்களிலிருந்து பிரித்தெடுத்து வாடிக்கையாளர்களுக்கு எளிய உரையில் வழங்கலாம். சில கணினிகளில் இது நீண்ட நேரம் எடுக்கும் மற்றும் பிரித்தெடுக்கும் செயல்பாட்டின் போது வீடியோ பிளேபேக் நிறுத்தப்படும். கிளையன்ட் சாதனத்தால் பூர்வீகமாக ஆதரிக்கப்படாதபோது உட்பொதிக்கப்பட்ட வசன வரிகள் வீடியோ டிரான்ஸ்கோடிங்கில் எரிக்கப்படுவதை முடக்கு.", - "AllowOnTheFlySubtitleExtraction": "பறக்கையில் வசன வரிகள் பிரித்தெடுக்க அனுமதிக்கவும்", + "AllowOnTheFlySubtitleExtraction": "வசன வரிகள் பிரித்தெடுக்க அனுமதிக்கவும்", "AllowMediaConversionHelp": "மாற்றும் ஊடக அம்சத்திற்கான அணுகலை வழங்கவும் அல்லது மறுக்கவும்.", "AllowMediaConversion": "ஊடக மாற்றத்தை அனுமதிக்கவும்", - "AllowHWTranscodingHelp": "ட்யூனரை பறக்கும்போது ஸ்ட்ரீம்களை டிரான்ஸ்கோட் செய்ய அனுமதிக்கவும். இது சேவையகத்திற்கு தேவையான டிரான்ஸ்கோடிங்கைக் குறைக்க உதவும்.", + "AllowHWTranscodingHelp": "ட்யூனரை பயன்படுத்தும்போது ஸ்ட்ரீம்களை டிரான்ஸ்கோட் செய்ய அனுமதிக்கவும். இது சேவையகத்திற்கு தேவையான டிரான்ஸ்கோடிங்கைக் குறைக்க உதவும்.", "AllLibraries": "அனைத்து நூலகங்களும்", "AllLanguages": "அனைத்து மொழிகளையும்", "AllEpisodes": "எல்லா அத்தியாயங்களும்", @@ -559,5 +559,56 @@ "LabelAirsBeforeEpisode": "அத்தியாயத்திற்கு முன் ஒளிபரப்பாகிறது:", "LabelAirsAfterSeason": "பருவத்திற்குப் பிறகு ஒளிபரப்பாகிறது:", "LabelAirTime": "ஒளிபரப்பப்பட்ட நேரம்:", - "LabelAirDays": "ஒளிபரப்பப்பட்ட நாட்கள்:" + "LabelAirDays": "ஒளிபரப்பப்பட்ட நாட்கள்:", + "LabelEmbedAlbumArtDidl": "Didlல் ஆல்பம் கலையை உட்பொதிக்கவும்", + "LabelEasyPinCode": "எளிதாக பின் குறியீடு:", + "LabelDynamicExternalId": "{0} ஐடி:", + "LabelDropShadow": "வீழ்நிழல்:", + "LabelDroppedFrames": "கைவிடப்பட்ட பிரேம்கள்:", + "LabelDropImageHere": "படத்தை இங்கே இணைக்கவும் அல்லது உலவ கிளிக் செய்யவும்.", + "LabelDownloadLanguages": "மொழிகளைப் பதிவிறக்குங்கள்:", + "LabelDownMixAudioScaleHelp": "குறைக்கும் போது ஆடியோவை அதிகரிக்கவும். ஒன்றின் மதிப்பு அசல் ஒலி அளவை பாதுகாக்கும்.", + "LabelDownMixAudioScale": "குறைக்கும் போது ஆடியோ ஏற்றம்:", + "LabelDisplaySpecialsWithinSeasons": "அவர்கள் ஒளிபரப்பிய பருவங்களுக்குள் சிறப்புகளைக் காண்பி", + "LabelDisplayOrder": "காட்சி வரிசை:", + "LabelDisplayName": "காட்சி பெயர்:", + "LabelDisplayMode": "காட்சி முறை:", + "LabelDisplayMissingEpisodesWithinSeasons": "காணாமல் போன அத்தியாயங்களை பருவங்களுக்குள் காண்பி", + "LabelDisplayLanguageHelp": "ஜெல்லிஃபின் மொழிபெயர்ப்பது ஒரு தொடர்ச்சியான திட்டம்.", + "LabelDisplayLanguage": "காட்சி மொழி:", + "LabelDiscNumber": "வட்டு எண்:", + "LabelDidlMode": "DIDL பயன்முறை:", + "LabelDeviceDescription": "சாதன விளக்கம்", + "LabelDeinterlaceMethod": "நீக்குதல் முறை:", + "LabelDefaultUserHelp": "இணைக்கப்பட்ட சாதனங்களில் எந்த பயனர் நூலகம் காட்டப்பட வேண்டும் என்பதை தீர்மானிக்கிறது. சுயவிவரங்களைப் பயன்படுத்தி ஒவ்வொரு சாதனத்திற்கும் இது மேலெழுதப்படலாம்.", + "LabelDefaultUser": "இயல்புநிலை பயனர்:", + "LabelDefaultScreen": "இயல்புநிலை திரை:", + "LabelDeathDate": "இறப்பு தேதி:", + "LabelDay": "நாள்:", + "LabelDateTimeLocale": "தேதி நேர இடம்:", + "LabelDateAddedBehaviorHelp": "ஒரு மெட்டாடேட்டா மதிப்பு இருந்தால், இந்த விருப்பங்களில் ஒன்றுக்கு முன்பே இது எப்போதும் பயன்படுத்தப்படும்.", + "LabelDateAddedBehavior": "புதிய உள்ளடக்கத்திற்கான தேதி சேர்க்கப்பட்ட நடத்தை:", + "LabelDateAdded": "சேர்க்கப்பட்ட தேதி:", + "LabelCustomRating": "தனிப்பயன் மதிப்பீடு:", + "LabelCustomDeviceDisplayNameHelp": "தனிப்பயன் காட்சி பெயரை வழங்கவும் அல்லது சாதனத்தால் புகாரளிக்கப்பட்ட பெயரைப் பயன்படுத்த காலியாக விடவும்.", + "LabelCustomDeviceDisplayName": "காட்சி பெயர்:", + "LabelCustomCssHelp": "வலை இடைமுகத்தில் உங்கள் சொந்த தனிப்பயன் பாணிகளைப் பயன்படுத்துங்கள்.", + "LabelCustomCss": "தனிப்பயன் CSS:", + "LabelCustomCertificatePathHelp": "தனிப்பயன் களத்தில் TLS ஆதரவை இயக்க சான்றிதழ் மற்றும் தனிப்பட்ட விசையைக் கொண்ட PKCS # 12 கோப்பிற்கான பாதை.", + "LabelCustomCertificatePath": "தனிப்பயன் SSL சான்றிதழ் பாதை:", + "LabelCurrentPassword": "தற்போதைய கடவுச்சொல்:", + "LabelCriticRating": "விமர்சன மதிப்பீடு:", + "LabelCountry": "நாடு:", + "LabelCorruptedFrames": "சிதைந்த பிரேம்கள்:", + "LabelContentType": "உள்ளடக்க வகை:", + "LabelCommunityRating": "சமூக மதிப்பீடு:", + "LabelCollection": "தொகுப்பு:", + "LabelChannels": "சேனல்கள்:", + "LabelCertificatePasswordHelp": "உங்கள் சான்றிதழுக்கு கடவுச்சொல் தேவைப்பட்டால், அதை இங்கே உள்ளிடவும்.", + "LabelCertificatePassword": "சான்றிதழ் கடவுச்சொல்:", + "LabelCancelled": "ரத்து செய்யப்பட்டது", + "LabelCachePathHelp": "படங்கள் போன்ற சேவையக தற்காலிக சேமிப்பு கோப்புகளுக்கான தனிப்பயன் இருப்பிடத்தைக் குறிப்பிடவும். சேவையக இயல்புநிலையைப் பயன்படுத்த காலியாக விடவும்.", + "LabelCachePath": "தற்காலிக சேமிப்பு பாதை:", + "LabelCache": "தற்காலிக சேமிப்பு:", + "LabelBurnSubtitles": "வசன வரிகள் பதிக்க:" } From 1e35883943b3805727a9c2a7f4a12525d81da8eb Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 15 Aug 2020 09:02:57 +0000 Subject: [PATCH 081/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 156 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 155 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index 36eb028372..48c82a6eee 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -610,5 +610,159 @@ "LabelCachePathHelp": "படங்கள் போன்ற சேவையக தற்காலிக சேமிப்பு கோப்புகளுக்கான தனிப்பயன் இருப்பிடத்தைக் குறிப்பிடவும். சேவையக இயல்புநிலையைப் பயன்படுத்த காலியாக விடவும்.", "LabelCachePath": "தற்காலிக சேமிப்பு பாதை:", "LabelCache": "தற்காலிக சேமிப்பு:", - "LabelBurnSubtitles": "வசன வரிகள் பதிக்க:" + "LabelBurnSubtitles": "வசன வரிகள் பதிக்க:", + "LabelPleaseRestart": "வலை கிளையண்டை கைமுறையாக மீண்டும் ஏற்றிய பிறகு மாற்றங்கள் நடைமுறைக்கு வரும்.", + "LabelPlayMethod": "விளையாட்டு முறை:", + "LabelPlaylist": "பிளேலிஸ்ட்:", + "LabelPlayerDimensions": "பிளேயர் பரிமாணங்கள்:", + "LabelPlayer": "பிளேயர்:", + "LabelPlayDefaultAudioTrack": "மொழியைப் பொருட்படுத்தாமல் இயல்புநிலை ஆடியோ டிராக்கை இயக்கு", + "LabelPlaceOfBirth": "பிறந்த இடம்:", + "LabelPersonRoleHelp": "எடுத்துக்காட்டு: ஐஸ்கிரீம் டிரக் டிரைவர்", + "LabelPersonRole": "பங்கு:", + "LabelPath": "பாதை:", + "LabelPasswordRecoveryPinCode": "அஞ்சல் குறியீடு:", + "LabelPasswordResetProvider": "கடவுச்சொல் மீட்டமை வழங்குநர்:", + "LabelPasswordConfirm": "கடவுச்சொல் (உறுதிப்படுத்து):", + "LabelPassword": "கடவுச்சொல்:", + "LabelParentalRating": "பெற்றோர் மதிப்பீடு:", + "LabelParentNumber": "பெற்றோர் எண்:", + "LabelOverview": "கண்ணோட்டம்:", + "LabelOriginalTitle": "அசல் தலைப்பு:", + "LabelOriginalAspectRatio": "அசல் விகித விகிதம்:", + "LabelOptionalNetworkPathHelp": "இந்த கோப்புறை உங்கள் பிணையத்தில் பகிரப்பட்டால், பிணைய பகிர்வு பாதையை வழங்குவது பிற சாதனங்களில் உள்ள வாடிக்கையாளர்களுக்கு மீடியா கோப்புகளை நேரடியாக அணுக அனுமதிக்கும். எடுத்துக்காட்டாக, {0} அல்லது {1}.", + "LabelOptionalNetworkPath": "பகிரப்பட்ட பிணைய கோப்புறை:", + "LabelNumberOfGuideDaysHelp": "வழிகாட்டி தரவின் அதிக நாட்கள் பதிவிறக்குவது முன்கூட்டியே திட்டமிடவும் மேலும் பட்டியல்களைக் காணவும் திறனை வழங்குகிறது, ஆனால் பதிவிறக்குவதற்கு அதிக நேரம் எடுக்கும். சேனல்களின் எண்ணிக்கையின் அடிப்படையில் ஆட்டோ தேர்வு செய்யும்.", + "LabelNumberOfGuideDays": "பதிவிறக்க வழிகாட்டி தரவின் நாட்களின் எண்ணிக்கை:", + "LabelNumber": "எண்:", + "LabelNotificationEnabled": "இந்த அறிவிப்பை இயக்கவும்", + "LabelNewsCategories": "செய்தி பிரிவுகள்:", + "LabelNewPasswordConfirm": "புதிய கடவு சொல்லை உறுதி செய்:", + "LabelNewPassword": "புதிய கடவுச்சொல்:", + "LabelNewName": "புதிய பெயர்:", + "LabelUnstable": "நிலையற்றது", + "LabelStable": "நிலையானது", + "LabelChromecastVersion": "Chromecast பதிப்பு", + "LabelName": "பெயர்:", + "LabelMusicStreamingTranscodingBitrateHelp": "இசையை ஸ்ட்ரீமிங் செய்யும் போது அதிகபட்ச பிட்ரேட்டைக் குறிப்பிடவும்.", + "LabelMusicStreamingTranscodingBitrate": "இசை டிரான்ஸ்கோடிங் பிட்ரேட்:", + "LabelMovieRecordingPath": "திரைப்பட பதிவு பாதை:", + "LabelMoviePrefixHelp": "திரைப்பட தலைப்புகளுக்கு ஒரு முன்னொட்டு பயன்படுத்தப்பட்டால், அதை இங்கே உள்ளிடவும், இதனால் சேவையகம் அதை சரியாக கையாள முடியும்.", + "LabelMoviePrefix": "திரைப்பட முன்னொட்டு:", + "LabelMovieCategories": "திரைப்பட பிரிவுகள்:", + "LabelMonitorUsers": "இதிலிருந்து செயல்பாட்டைக் கண்காணிக்கவும்:", + "LabelModelUrl": "மாதிரி URL", + "LabelModelNumber": "மாதிரி எண்", + "LabelModelName": "மாதிரி பெயர்", + "LabelModelDescription": "மாதிரி விளக்கம்", + "LabelMinScreenshotDownloadWidth": "குறைந்தபட்ச ஸ்கிரீன்ஷாட் பதிவிறக்க அகலம்:", + "LabelMinResumePercentageHelp": "இந்த நேரத்திற்கு முன் நிறுத்தப்பட்டால் தலைப்புகள் காட்டப்படாது என்று கருதப்படுகிறது.", + "LabelMinResumePercentage": "குறைந்தபட்ச மறுதொடக்கம் சதவீதம்:", + "LabelMinResumeDurationHelp": "பின்னணி இருப்பிடத்தைச் சேமிக்கும் மற்றும் மீண்டும் தொடங்க அனுமதிக்கும் வினாடிகளில் மிகக் குறுகிய வீடியோ நீளம்.", + "LabelMinResumeDuration": "குறைந்தபட்ச மறுதொடக்கம் காலம்:", + "LabelMinBackdropDownloadWidth": "குறைந்தபட்ச பின்னணி பதிவிறக்க அகலம்:", + "LabelMethod": "முறை:", + "LabelMetadataSaversHelp": "உங்கள் மெட்டாடேட்டாவைச் சேமிக்கும்போது பயன்படுத்த கோப்பு வடிவங்களைத் தேர்வுசெய்க.", + "LabelMetadataSavers": "மெட்டாடேட்டா சேமிப்பாளர்கள்:", + "LabelMetadataReadersHelp": "உங்கள் விருப்பமான உள்ளூர் மெட்டாடேட்டா ஆதாரங்களை முன்னுரிமையின் அடிப்படையில் வரிசைப்படுத்தவும். கண்டுபிடிக்கப்பட்ட முதல் கோப்பு படிக்கப்படும்.", + "LabelMetadataReaders": "மெட்டாடேட்டா வாசகர்கள்:", + "LabelMetadataPathHelp": "பதிவிறக்கம் செய்யப்பட்ட கலைப்படைப்பு மற்றும் மெட்டாடேட்டாவிற்கான தனிப்பயன் இருப்பிடத்தைக் குறிப்பிடவும்.", + "LabelMetadataPath": "மெட்டாடேட்டா பாதை:", + "LabelMetadataDownloadersHelp": "முன்னுரிமைக்கு ஏற்ப உங்களுக்கு விருப்பமான மெட்டாடேட்டா பதிவிறக்கிகளை இயக்கவும் தரவரிசைப்படுத்தவும். காணாமல் போன தகவல்களை நிரப்ப மட்டுமே குறைந்த முன்னுரிமை பதிவிறக்கிகள் பயன்படுத்தப்படும்.", + "LabelMetadataDownloadLanguage": "விருப்பமான பதிவிறக்க மொழி:", + "LabelMetadata": "மெட்டாடேட்டா:", + "LabelMessageTitle": "செய்தி தலைப்பு:", + "LabelMessageText": "செய்தி உரை:", + "LabelMaxStreamingBitrateHelp": "ஸ்ட்ரீமிங் செய்யும் போது அதிகபட்ச பிட்ரேட்டைக் குறிப்பிடவும்.", + "LabelMaxStreamingBitrate": "அதிகபட்ச ஸ்ட்ரீமிங் தரம்:", + "LabelMaxScreenshotsPerItem": "ஒரு உருப்படிக்கு அதிகபட்ச ஸ்கிரீன் ஷாட்கள்:", + "LabelMaxResumePercentageHelp": "இந்த நேரத்திற்குப் பிறகு நிறுத்தப்பட்டால் தலைப்புகள் முழுமையாக விளையாடப்படும் என்று கருதப்படுகிறது.", + "LabelMaxResumePercentage": "அதிகபட்ச மறுதொடக்கம் சதவீதம்:", + "LabelMaxParentalRating": "அனுமதிக்கப்பட்ட அதிகபட்ச பெற்றோர் மதிப்பீடு:", + "LabelMaxChromecastBitrate": "Chromecast ஸ்ட்ரீமிங் தரம்:", + "LabelMaxBackdropsPerItem": "ஒரு உருப்படிக்கு அதிகபட்ச பின்னணி எண்ணிக்கை:", + "LabelMatchType": "பொருந்தும் வகை:", + "LabelManufacturerUrl": "உற்பத்தியாளர் URL", + "LabelManufacturer": "உற்பத்தியாளர்:", + "LabelLogs": "பதிவுகள்:", + "LabelLoginDisclaimerHelp": "உள்நுழைவு பக்கத்தின் கீழே காண்பிக்கப்படும் செய்தி.", + "LabelLoginDisclaimer": "உள்நுழைவு மறுப்பு:", + "LabelLockItemToPreventChanges": "எதிர்கால மாற்றங்களைத் தடுக்க இந்த உருப்படியைப் பூட்டவும்", + "LabelLocalHttpServerPortNumberHelp": "HTTP சேவையகத்திற்கான TCP போர்ட் எண்.", + "LabelLocalHttpServerPortNumber": "உள்ளூர் HTTP போர்ட் எண்:", + "LabelLineup": "வரிசை:", + "LabelLibraryPageSizeHelp": "நூலகப் பக்கத்தில் காண்பிக்க வேண்டிய பொருட்களின் அளவை அமைக்கிறது. பேஜிங்கை முடக்க 0 என அமைக்கவும்.", + "LabelLibraryPageSize": "நூலக பக்க அளவு:", + "LabelLanguage": "மொழி:", + "LabelLanNetworks": "LAN நெட்வொர்க்குகள்:", + "LabelKodiMetadataUserHelp": "பிற பயன்பாடுகளைப் பயன்படுத்த வாட்ச் தரவை NFO கோப்புகளில் சேமிக்கவும்.", + "LabelKodiMetadataUser": "இதற்காக பயனர் கண்காணிப்பு தரவை NFO கோப்புகளில் சேமிக்கவும்:", + "LabelKodiMetadataSaveImagePathsHelp": "Kodi வழிகாட்டுதல்களுக்கு இணங்காத படக் கோப்பு பெயர்கள் உங்களிடம் இருந்தால் இது பரிந்துரைக்கப்படுகிறது.", + "LabelKodiMetadataSaveImagePaths": "பட வழிகளை nfo கோப்புகளுக்குள் சேமிக்கவும்", + "LabelKodiMetadataEnablePathSubstitutionHelp": "சேவையகத்தின் பாதை மாற்று அமைப்புகளைப் பயன்படுத்தி பட பாதைகளின் பாதை மாற்றீட்டை இயக்குகிறது.", + "LabelKodiMetadataEnablePathSubstitution": "பாதை மாற்றீட்டை இயக்கு", + "LabelKodiMetadataEnableExtraThumbsHelp": "படங்களை பதிவிறக்கும் போது அவை அதிகபட்ச கோடி தோல் பொருந்தக்கூடிய தன்மைக்காக எக்ஸ்ட்ராஃபனார்ட் மற்றும் எக்ஸ்ட்ராஹம்ப்ஸில் சேமிக்கப்படும்.", + "LabelKodiMetadataEnableExtraThumbs": "extrafanart-ஐ extrathumbs புலத்திற்கு நகலெடுக்கவும்", + "LabelKodiMetadataDateFormatHelp": "NFO கோப்புகளில் உள்ள அனைத்து தேதிகளும் இந்த வடிவமைப்பைப் பயன்படுத்தி பாகுபடுத்தப்படும்.", + "LabelKodiMetadataDateFormat": "வெளியீட்டு தேதி வடிவம்:", + "LabelKidsCategories": "குழந்தைகள் பிரிவுகள்:", + "LabelKeepUpTo": "தொடர்ந்து இருங்கள்:", + "LabelInternetQuality": "இணைய தரம்:", + "LabelInNetworkSignInWithEasyPasswordHelp": "உங்கள் உள்ளூர் நெட்வொர்க்கில் உள்ள வாடிக்கையாளர்களுக்கு உள்நுழைய எளிதான முள் குறியீட்டைப் பயன்படுத்தவும். உங்கள் வழக்கமான கடவுச்சொல் வீட்டிலிருந்து மட்டுமே தேவைப்படும். முள் குறியீடு காலியாக இருந்தால், உங்கள் வீட்டு நெட்வொர்க்கில் கடவுச்சொல் தேவையில்லை.", + "LabelInNetworkSignInWithEasyPassword": "எனது எளிதான முள் குறியீட்டைக் கொண்டு பிணைய உள்நுழைவை இயக்கவும்", + "LabelImportOnlyFavoriteChannels": "பிடித்ததாகக் குறிக்கப்பட்ட சேனல்களுக்கு கட்டுப்படுத்தவும்", + "LabelImageType": "பட வகை:", + "LabelImageFetchersHelp": "முன்னுரிமைக்கு ஏற்ப உங்களுக்கு விருப்பமான பட பெறுபவர்களை இயக்கவும் தரவரிசைப்படுத்தவும்.", + "LabelIdentificationFieldHelp": "ஒரு வழக்கு-உணர்வற்ற அடி மூலக்கூறு அல்லது ரீஜெக்ஸ் வெளிப்பாடு.", + "LabelIconMaxWidthHelp": "Upnp: ஐகான் வழியாக வெளிப்படும் ஐகான்களின் அதிகபட்ச தீர்மானம்.", + "LabelIconMaxWidth": "ஐகான் அதிகபட்ச அகலம்:", + "LabelIconMaxHeightHelp": "Upnp: ஐகான் வழியாக வெளிப்படும் ஐகான்களின் அதிகபட்ச தீர்மானம்.", + "LabelIconMaxHeight": "ஐகான் அதிகபட்ச உயரம்:", + "LabelHttpsPortHelp": "HTTPS சேவையகத்திற்கான TCP போர்ட் எண்.", + "LabelHttpsPort": "உள்ளூர் HTTPS போர்ட் எண்:", + "LabelHomeScreenSectionValue": "முகப்புத் திரை பிரிவு {0}:", + "LabelHomeNetworkQuality": "முகப்பு நெட்வொர்க் தரம்:", + "LabelHardwareAccelerationTypeHelp": "வன்பொருள் முடுக்கம் கூடுதல் உள்ளமைவு தேவை.", + "LabelHardwareAccelerationType": "வன்பொருள் முடுக்கம்:", + "LabelEncoderPreset": "H264 மற்றும் H265 குறியாக்க முன்னமைவு:", + "LabelH264Crf": "H264 குறியாக்கம் CRF:", + "LabelGroupMoviesIntoCollectionsHelp": "மூவி பட்டியல்களைக் காண்பிக்கும் போது, ஒரு தொகுப்பில் உள்ள திரைப்படங்கள் ஒரு குழுவாகக் காட்டப்படும்.", + "LabelGroupMoviesIntoCollections": "திரைப்படங்களை தொகுப்பாக குழு செய்யவும்", + "LabelServerNameHelp": "சேவையகத்தை அடையாளம் காண இந்த பெயர் பயன்படுத்தப்படும் மற்றும் சேவையகத்தின் ஹோஸ்ட்பெயருக்கு இயல்புநிலையாக இருக்கும்.", + "LabelFriendlyName": "நட்பு பெயர்:", + "LabelFormat": "வடிவம்:", + "LabelForgotPasswordUsernameHelp": "உங்கள் பயனர்பெயரை நினைவில் வைத்திருந்தால் உள்ளிடவும்.", + "LabelFont": "எழுத்துரு:", + "LabelFolder": "கோப்புறை:", + "LabelFinish": "முடி", + "LabelFileOrUrl": "கோப்பு அல்லது URL:", + "LabelFailed": "தோல்வி", + "LabelExtractChaptersDuringLibraryScanHelp": "நூலக ஸ்கேன் போது வீடியோக்கள் இறக்குமதி செய்யப்படும்போது அத்தியாய படங்களை உருவாக்கவும். இல்லையெனில், வழக்கமான பட ஸ்கேன் வேகமாக முடிக்க அனுமதிக்கும் அத்தியாயப் படங்கள் திட்டமிடப்பட்ட பணியின் போது அவை பிரித்தெடுக்கப்படும்.", + "LabelExtractChaptersDuringLibraryScan": "நூலக ஸ்கேன் போது அத்தியாய படங்களை பிரித்தெடுக்கவும்", + "LabelBaseUrlHelp": "சேவையக URL இல் தனிப்பயன் துணை அடைவைச் சேர்க்கவும். உதாரணத்திற்கு: http://example.com/<baseurl>", + "LabelBaseUrl": "அடிப்படை URL:", + "LabelEveryXMinutes": "ஒவ்வொரு:", + "LabelEvent": "நிகழ்வு:", + "LabelEpisodeNumber": "அத்தியாயம் எண்:", + "LabelEndDate": "கடைசி தேதி:", + "LabelEnableSingleImageInDidlLimitHelp": "Didlக்குள் பல படங்கள் பதிக்கப்பட்டிருந்தால் சில சாதனங்கள் சரியாக வழங்கப்படாது.", + "LabelEnableSingleImageInDidlLimit": "ஒற்றை உட்பொதிக்கப்பட்ட படத்திற்கு வரம்பு", + "LabelEnableRealtimeMonitorHelp": "கோப்புகளுக்கான மாற்றங்கள் ஆதரிக்கப்பட்ட கோப்பு முறைமைகளில் உடனடியாக செயல்படுத்தப்படும்.", + "LabelEnableRealtimeMonitor": "நிகழ்நேர கண்காணிப்பை இயக்கு", + "LabelEnableHttpsHelp": "கட்டமைக்கப்பட்ட HTTPS போர்ட்டில் கேளுங்கள். இது நடைமுறைக்கு வர செல்லுபடியாகும் சான்றிதழும் வழங்கப்பட வேண்டும்.", + "LabelEnableHttps": "HTTPS ஐ இயக்கு", + "LabelEnableHardwareDecodingFor": "இதற்கான வன்பொருள் டிகோடிங்கை இயக்கவும்:", + "LabelEnableDlnaServerHelp": "உள்ளடக்கத்தை உலவ மற்றும் இயக்க உங்கள் பிணையத்தில் உள்ள UPnP சாதனங்களை அனுமதிக்கிறது.", + "LabelEnableDlnaServer": "DLNA சேவையகத்தை இயக்கு", + "LabelEnableDlnaPlayToHelp": "உங்கள் நெட்வொர்க்கில் உள்ள சாதனங்களைக் கண்டறிந்து அவற்றை தொலைவிலிருந்து கட்டுப்படுத்தும் திறனை வழங்குகின்றன.", + "LabelEnableDlnaPlayTo": "DLNA Play To ஐ இயக்கு", + "LabelEnableDlnaDebugLoggingHelp": "பெரிய பதிவுக் கோப்புகளை உருவாக்கவும், சரிசெய்தல் நோக்கங்களுக்காக மட்டுமே பயன்படுத்தப்பட வேண்டும்.", + "LabelEnableDlnaDebugLogging": "DLNA பிழைத்திருத்த பதிவை இயக்கு", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "SSDP தேடல்களுக்கு இடையில் வினாடிகளில் கால அளவை தீர்மானிக்கிறது.", + "LabelEnableDlnaClientDiscoveryInterval": "கிளையண்ட் கண்டுபிடிப்பு இடைவெளி", + "LabelEnableBlastAliveMessagesHelp": "உங்கள் பிணையத்தில் உள்ள பிற UPnP சாதனங்களால் சேவையகம் நம்பகத்தன்மையுடன் கண்டறியப்படாவிட்டால் இதை இயக்கவும்.", + "LabelEnableBlastAliveMessages": "உயிருள்ள செய்திகளை வழங்கவும்", + "LabelEnableAutomaticPortMapHelp": "உங்கள் திசைவியின் பொது துறைமுகங்களை உங்கள் சேவையகத்தில் உள்ள உள்ளூர் துறைமுகங்களுக்கு UPnP வழியாக தானாக அனுப்பவும். இது சில திசைவி மாதிரிகள் அல்லது பிணைய உள்ளமைவுகளுடன் இயங்காது. சேவையகம் மறுதொடக்கம் செய்யப்படும் வரை மாற்றங்கள் பொருந்தாது.", + "LabelEnableAutomaticPortMap": "தானியங்கி போர்ட் மேப்பிங்கை இயக்கு", + "LabelEmbedAlbumArtDidlHelp": "ஆல்பம் படம் பெறுவதற்கு சில சாதனங்கள் இந்த முறையை விரும்புகின்றன. இயக்கப்பட்ட இந்த விருப்பத்துடன் மற்றவர்கள் விளையாடத் தவறலாம்." } From 18211bec86dceead2725ede379668d84178b7dcd Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 15 Aug 2020 10:27:15 +0000 Subject: [PATCH 082/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 161 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 159 insertions(+), 2 deletions(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index 48c82a6eee..b8d89d701e 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -612,7 +612,7 @@ "LabelCache": "தற்காலிக சேமிப்பு:", "LabelBurnSubtitles": "வசன வரிகள் பதிக்க:", "LabelPleaseRestart": "வலை கிளையண்டை கைமுறையாக மீண்டும் ஏற்றிய பிறகு மாற்றங்கள் நடைமுறைக்கு வரும்.", - "LabelPlayMethod": "விளையாட்டு முறை:", + "LabelPlayMethod": "பிளே முறை:", "LabelPlaylist": "பிளேலிஸ்ட்:", "LabelPlayerDimensions": "பிளேயர் பரிமாணங்கள்:", "LabelPlayer": "பிளேயர்:", @@ -764,5 +764,162 @@ "LabelEnableBlastAliveMessages": "உயிருள்ள செய்திகளை வழங்கவும்", "LabelEnableAutomaticPortMapHelp": "உங்கள் திசைவியின் பொது துறைமுகங்களை உங்கள் சேவையகத்தில் உள்ள உள்ளூர் துறைமுகங்களுக்கு UPnP வழியாக தானாக அனுப்பவும். இது சில திசைவி மாதிரிகள் அல்லது பிணைய உள்ளமைவுகளுடன் இயங்காது. சேவையகம் மறுதொடக்கம் செய்யப்படும் வரை மாற்றங்கள் பொருந்தாது.", "LabelEnableAutomaticPortMap": "தானியங்கி போர்ட் மேப்பிங்கை இயக்கு", - "LabelEmbedAlbumArtDidlHelp": "ஆல்பம் படம் பெறுவதற்கு சில சாதனங்கள் இந்த முறையை விரும்புகின்றன. இயக்கப்பட்ட இந்த விருப்பத்துடன் மற்றவர்கள் விளையாடத் தவறலாம்." + "LabelEmbedAlbumArtDidlHelp": "ஆல்பம் படம் பெறுவதற்கு சில சாதனங்கள் இந்த முறையை விரும்புகின்றன. இயக்கப்பட்ட இந்த விருப்பத்துடன் மற்றவர்கள் விளையாடத் தவறலாம்.", + "ManageRecording": "பதிவை நிர்வகிக்கவும்", + "ManageLibrary": "நூலகத்தை நிர்வகிக்கவும்", + "Logo": "லோகோ", + "LiveTV": "நேரடி தொலைக்காட்சி", + "LiveBroadcasts": "நேரடி ஒளிபரப்பு", + "Live": "நேரலை", + "List": "பட்டியல்", + "Like": "விருப்பம்", + "LibraryAccessHelp": "இந்த பயனருடன் பகிர நூலகங்களைத் தேர்ந்தெடுக்கவும். நிர்வாகிகள் மெட்டாடேட்டா நிர்வாகியைப் பயன்படுத்தி அனைத்து கோப்புறைகளையும் திருத்த முடியும்.", + "LeaveBlankToNotSetAPassword": "கடவுச்சொல் எதுவும் அமைக்க இந்த புலத்தை காலியாக விடலாம்.", + "LearnHowYouCanContribute": "நீங்கள் எவ்வாறு பங்களிக்க முடியும் என்பதை அறிக.", + "LatestFromLibrary": "சமீபத்திய {0}", + "Large": "பெரியது", + "LanNetworksHelp": "அலைவரிசை கட்டுப்பாடுகளைச் செயல்படுத்தும்போது உள்ளூர் பிணையத்தில் பரிசீலிக்கப்படும் நெட்வொர்க்குகளுக்கான ஐபி முகவரிகள் அல்லது ஐபி / நெட்மாஸ்க் உள்ளீடுகளின் கமாவால் பிரிக்கப்பட்ட பட்டியல். அமைக்கப்பட்டால், மற்ற அனைத்து ஐபி முகவரிகளும் வெளிப்புற நெட்வொர்க்கில் இருப்பதாகக் கருதப்படும் மற்றும் வெளிப்புற அலைவரிசை கட்டுப்பாடுகளுக்கு உட்பட்டதாக இருக்கும். காலியாக இருந்தால், சேவையகத்தின் சப்நெட் மட்டுமே உள்ளூர் பிணையத்தில் கருதப்படுகிறது.", + "LabelffmpegPathHelp": "Ffmpeg பயன்பாட்டுக் கோப்பு அல்லது ffmpeg கொண்ட கோப்புறையின் பாதை.", + "LabelffmpegPath": "FFmpeg பாதை:", + "LabelZipCode": "அஞ்சல் குறியீடு:", + "LabelYoureDone": "நீங்கள் முடித்துவிட்டீர்கள்!", + "LabelYear": "ஆண்டு:", + "LabelXDlnaDocHelp": "X_DLNADOC உறுப்பின் உள்ளடக்கத்தை urn: schemas-dlna-org: device-1-0 பெயர்வெளியில் தீர்மானிக்கிறது.", + "LabelXDlnaDoc": "X-DLNA ஆவணம்:", + "LabelXDlnaCapHelp": "X_DLNACAP உறுப்பின் உள்ளடக்கத்தை urn: schemas-dlna-org: device-1-0 பெயர்வெளியில் தீர்மானிக்கிறது.", + "LabelXDlnaCap": "X-DLNA திறன்:", + "LabelWeb": "வலை:", + "LabelVideoResolution": "வீடியோ தெளிவுத்திறன்:", + "LabelVideoCodec": "வீடியோ கோடெக்:", + "LabelVideoBitrate": "வீடியோ பிட்ரேட்:", + "LabelVideo": "வீடியோ", + "DashboardArchitecture": "கட்டமைப்பு: {0}", + "DashboardOperatingSystem": "இயக்க முறைமை: {0}", + "DashboardServerName": "சேவையகம்: {0}", + "DashboardVersionNumber": "பதிப்பு: {0}", + "LabelVersionInstalled": "{0} நிறுவப்பட்டது", + "LabelVersion": "பதிப்பு:", + "LabelValue": "மதிப்பு:", + "LabelVaapiDeviceHelp": "வன்பொருள் முடுக்கத்திற்கு பயன்படுத்தப்படும் ரெண்டர் முனை இது.", + "LabelVaapiDevice": "VA API சாதனம்:", + "LabelUsername": "பயனர்பெயர்:", + "LabelUserRemoteClientBitrateLimitHelp": "சேவையக பின்னணி அமைப்புகளில் அமைக்கப்பட்ட இயல்புநிலை உலகளாவிய மதிப்பை மேலெழுதவும்.", + "LabelUserLoginAttemptsBeforeLockout": "பயனர் பூட்டப்படுவதற்கு முன்பு தோல்வியுற்ற உள்நுழைவு முயற்சிகள்:", + "LabelUserLibraryHelp": "சாதனத்தில் காண்பிக்க வேண்டிய பயனர் நூலகத்தைத் தேர்ந்தெடுக்கவும். இயல்புநிலை அமைப்பைப் பெறுவதற்கு காலியாக விடவும்.", + "LabelUserLibrary": "பயனர் நூலகம்:", + "LabelUserAgent": "பயனர் முகவர்:", + "LabelUser": "பயனர்:", + "LabelUseNotificationServices": "பின்வரும் சேவைகளைப் பயன்படுத்தவும்:", + "LabelTypeText": "உரை", + "LabelTypeMetadataDownloaders": "{0} மெட்டாடேட்டா பதிவிறக்கிகள்:", + "LabelType": "வகை:", + "LabelTunerType": "ட்யூனர் வகை:", + "LabelTunerIpAddress": "ட்யூனர் ஐபி முகவரி:", + "LabelTriggerType": "தூண்டுதல் வகை:", + "LabelTranscodingVideoCodec": "வீடியோ கோடெக்:", + "LabelTranscodingThreadCountHelp": "டிரான்ஸ்கோடிங் செய்யும்போது பயன்படுத்த வேண்டிய அதிகபட்ச நூல்களைத் தேர்ந்தெடுக்கவும். நூல் எண்ணிக்கையைக் குறைப்பது CPU பயன்பாட்டைக் குறைக்கும், ஆனால் மென்மையான பின்னணி அனுபவத்திற்கு போதுமானதாக மாற்றாது.", + "LabelTranscodingThreadCount": "டிரான்ஸ்கோடிங் நூல் எண்ணிக்கை:", + "LabelTranscodingProgress": "டிரான்ஸ்கோடிங் முன்னேற்றம்:", + "LabelTranscodingFramerate": "டிரான்ஸ்கோடிங் ஃப்ரேம்ரேட்:", + "LabelTranscodes": "டிரான்ஸ்கோட்கள்:", + "LabelTranscodingTempPathHelp": "வாடிக்கையாளர்களுக்கு வழங்கப்பட்ட டிரான்ஸ்கோட் கோப்புகளுக்கான தனிப்பயன் பாதையை குறிப்பிடவும். சேவையக இயல்புநிலையைப் பயன்படுத்த காலியாக விடவும்.", + "LabelTranscodePath": "டிரான்ஸ்கோட் பாதை:", + "LabelTranscodingContainer": "கொள்கலன்:", + "LabelTranscodingAudioCodec": "ஆடியோ கோடெக்:", + "LabelTrackNumber": "ட்ராக் எண்:", + "LabelTitle": "தலைப்பு:", + "LabelTimeLimitHours": "கால எல்லை (மணிநேரம்):", + "LabelTime": "நேரம்:", + "LabelTheme": "தீம்:", + "LabelTextSize": "உரை அளவு:", + "LabelTextColor": "உரை நிறம்:", + "LabelTextBackgroundColor": "உரை பின்னணி நிறம்:", + "LabelTagline": "கோஷம்:", + "LabelTag": "குறிச்சொல்:", + "LabelTVHomeScreen": "டிவி பயன்முறை முகப்புத் திரை:", + "LabelSyncPlayAccess": "ஒத்திசைவு அணுகல்", + "LabelSyncPlayAccessNone": "இந்த பயனருக்கு முடக்கப்பட்டது", + "LabelSyncPlayAccessJoinGroups": "குழுக்களில் சேர பயனரை அனுமதிக்கவும்", + "LabelSyncPlayAccessCreateAndJoinGroups": "குழுக்களை உருவாக்க மற்றும் சேர பயனரை அனுமதிக்கவும்", + "LabelSyncPlayLeaveGroupDescription": "ஒத்திசைவை முடக்கு", + "LabelSyncPlayLeaveGroup": "குழுவிலிருந்து விலகு", + "LabelSyncPlayNewGroupDescription": "புதிய குழுவை உருவாக்கவும்", + "LabelSyncPlayNewGroup": "புதிய குழு", + "LabelSyncPlaySyncMethod": "ஒத்திசைவு முறை:", + "LabelSyncPlayPlaybackDiff": "பின்னணி நேர வேறுபாடு:", + "MillisecondsUnit": "ms", + "LabelSyncPlayTimeOffset": "சேவையகத்துடன் நேரம் ஈடுசெய்யப்பட்டது:", + "LabelSupportedMediaTypes": "ஆதரிக்கப்படும் ஊடக வகைகள்:", + "LabelSubtitles": "வசன வரிகள்", + "LabelSubtitlePlaybackMode": "வசன முறை:", + "LabelSubtitleFormatHelp": "எடுத்துக்காட்டு: srt", + "LabelSubtitleDownloaders": "வசன பதிவிறக்கிகள்:", + "LabelStreamType": "ஸ்ட்ரீம் வகை:", + "LabelStopping": "நிறுத்துகிறது", + "LabelStopWhenPossible": "சாத்தியமான வகையில் நிறுத்து:", + "LabelStatus": "நிலை:", + "LabelStartWhenPossible": "முடிந்தவரை தொடங்குங்கள்:", + "LabelSportsCategories": "விளையாட்டு பிரிவுகள்:", + "LabelSpecialSeasonsDisplayName": "சிறப்பு பருவ காட்சி பெயர்:", + "LabelSource": "மூலம்:", + "LabelSortTitle": "வரிசை தலைப்பு:", + "LabelSortOrder": "வரிசை வகை:", + "LabelSortBy": "வரிசைப்படுத்து:", + "LabelSonyAggregationFlagsHelp": "திரட்டலில் திரட்டல் ஃப்ளாக்ஸ் உறுப்பு உள்ளடக்கத்தை தீர்மானிக்கிறது: schemas-sonycom: av பெயர்வெளி.", + "LabelSonyAggregationFlags": "Sony திரட்டல் கொடிகள்:", + "LabelSkipIfGraphicalSubsPresentHelp": "வசன வரிகள் உரை பதிப்புகளை வைத்திருப்பது மிகவும் திறமையான விநியோகத்திற்கு வழிவகுக்கும் மற்றும் வீடியோ டிரான்ஸ்கோடிங்கின் சாத்தியத்தை குறைக்கும்.", + "LabelSkipIfGraphicalSubsPresent": "வீடியோவில் ஏற்கனவே உட்பொதிக்கப்பட்ட வசன வரிகள் இருந்தால் தவிர்க்கவும்", + "LabelSkipIfAudioTrackPresentHelp": "ஆடியோ மொழியைப் பொருட்படுத்தாமல் எல்லா வீடியோக்களுக்கும் வசன வரிகள் இருப்பதை உறுதிப்படுத்த இதைத் தேர்வுநீக்கவும்.", + "LabelSkipIfAudioTrackPresent": "இயல்புநிலை ஆடியோ டிராக் பதிவிறக்க மொழியுடன் பொருந்தினால் தவிர்க்கவும்", + "LabelSkipForwardLength": "முன்னோக்கி நீளத்தைத் தவிர்:", + "LabelSkipBackLength": "பின் நீளத்தைத் தவிர்:", + "LabelSize": "அளவு:", + "LabelSimultaneousConnectionLimit": "ஒரே நேரத்தில் ஸ்ட்ரீம் வரம்பு:", + "LabelServerName": "சேவையக பெயர்:", + "LabelServerHostHelp": "192.168.1.100:8096 or https://myserver.com", + "LabelServerHost": "தொகுப்பாளர்:", + "LabelSeriesRecordingPath": "தொடர் பதிவு பாதை:", + "LabelSerialNumber": "வரிசை எண்", + "LabelSendNotificationToUsers": "அறிவிப்பை இதற்கு அனுப்பவும்:", + "LabelSelectVersionToInstall": "நிறுவ பதிப்பைத் தேர்ந்தெடுக்கவும்:", + "LabelSelectUsers": "பயனர்களைத் தேர்ந்தெடுக்கவும்:", + "LabelSelectFolderGroupsHelp": "தேர்வு செய்யப்படாத கோப்புறைகள் தங்களது சொந்த பார்வையில் காண்பிக்கப்படும்.", + "LabelSelectFolderGroups": "திரைப்படங்கள், இசை மற்றும் டிவி போன்ற காட்சிகளில் பின்வரும் கோப்புறைகளிலிருந்து உள்ளடக்கத்தை தானாக தொகுக்கவும்:", + "LabelSeasonNumber": "பருவ எண்:", + "EnableFasterAnimationsHelp": "வேகமான அனிமேஷன்கள் மற்றும் மாற்றங்களைப் பயன்படுத்தவும்", + "EnableFasterAnimations": "வேகமான அனிமேஷன்கள்", + "LabelScreensaver": "ஸ்கிரீன்சேவர்:", + "LabelScheduledTaskLastRan": "கடைசியாக ஓடியது {0}, எடுத்துக் கொண்டது {1}.", + "LabelSaveLocalMetadataHelp": "கலைப்படைப்புகளை மீடியா கோப்புறைகளில் சேமிப்பது அவற்றை எளிதில் திருத்தக்கூடிய இடத்தில் வைக்கும்.", + "LabelSaveLocalMetadata": "கலைப்படைப்புகளை மீடியா கோப்புறைகளில் சேமிக்கவும்", + "LabelRuntimeMinutes": "இயக்க நேரம்:", + "LabelRequireHttpsHelp": "சரிபார்க்கப்பட்டால், சேவையகம் தானாகவே HTTP வழியாக அனைத்து கோரிக்கைகளையும் HTTPS க்கு திருப்பிவிடும். HTTPS இல் சேவையகம் கேட்கவில்லை என்றால் இது எந்த விளைவையும் ஏற்படுத்தாது.", + "LabelRequireHttps": "HTTPS தேவை", + "LabelRemoteClientBitrateLimitHelp": "நெட்வொர்க் சாதனங்களுக்கு வெளியே ஒரு விருப்பமான ஸ்ட்ரீம் பிட்ரேட் வரம்பு. உங்கள் இணைய இணைப்பு கையாளக்கூடியதை விட சாதனங்களை அதிக பிட்ரேட்டைக் கோருவதைத் தடுக்க இது பயனுள்ளதாக இருக்கும். பறக்கும்போது வீடியோக்களை குறைந்த பிட்ரேட்டுக்கு டிரான்ஸ்கோட் செய்வதற்காக இது உங்கள் சேவையகத்தில் CPU சுமை அதிகரிக்கும்.", + "LabelRemoteClientBitrateLimit": "இணைய ஸ்ட்ரீமிங் பிட்ரேட் வரம்பு (Mbps):", + "LabelReleaseDate": "வெளிவரும் தேதி:", + "LabelRefreshMode": "புதுப்பிப்பு பயன்முறை:", + "LabelRecordingPathHelp": "பதிவுகளைச் சேமிக்க இயல்புநிலை இருப்பிடத்தைக் குறிப்பிடவும். காலியாக இருந்தால், சேவையகத்தின் நிரல் தரவு கோப்புறை பயன்படுத்தப்படும்.", + "LabelRecordingPath": "இயல்புநிலை பதிவு பாதை:", + "LabelRecord": "பதிவு:", + "LabelReasonForTranscoding": "டிரான்ஸ்கோடிங்கிற்கான காரணம்:", + "LabelPublicHttpsPortHelp": "உள்ளூர் HTTPS துறைமுகத்துடன் பொருத்தப்பட வேண்டிய பொது துறைமுக எண்.", + "LabelPublicHttpsPort": "பொது HTTPS போர்ட் எண்:", + "LabelPublicHttpPortHelp": "உள்ளூர் HTTP துறைமுகத்துடன் பொருத்தப்பட வேண்டிய பொது போர்ட் எண்.", + "LabelPublicHttpPort": "பொது HTTP போர்ட் எண்:", + "LabelProtocolInfoHelp": "சாதனத்திலிருந்து GetProtocolInfo கோரிக்கைகளுக்கு பதிலளிக்கும் போது பயன்படுத்தப்படும் மதிப்பு.", + "LabelProtocolInfo": "நெறிமுறை தகவல்:", + "LabelProtocol": "நெறிமுறை:", + "LabelProfileVideoCodecs": "வீடியோ கோடெக்குகள்:", + "LabelProfileContainersHelp": "கமாவால் பிரிக்கப்பட்டது. எல்லா கொள்கலன்களுக்கும் விண்ணப்பிக்க இதை காலியாக விடலாம்.", + "LabelProfileContainer": "கொள்கலன்:", + "LabelProfileCodecsHelp": "கமாவால் பிரிக்கப்பட்டது. எல்லா கோடெக்குகளுக்கும் விண்ணப்பிக்க இதை காலியாக விடலாம்.", + "LabelProfileCodecs": "கோடெக்குகள்:", + "LabelProfileAudioCodecs": "ஆடியோ கோடெக்குகள்:", + "LabelPreferredSubtitleLanguage": "விருப்பமான வசன மொழி:", + "LabelPreferredDisplayLanguageHelp": "ஜெல்லிஃபின் மொழிபெயர்ப்பது ஒரு தொடர்ச்சியான திட்டம்.", + "LabelPreferredDisplayLanguage": "விருப்பமான காட்சி மொழி:", + "LabelPostProcessorArgumentsHelp": "பதிவு கோப்புக்கான பாதையாக {path} ஐப் பயன்படுத்தவும்.", + "LabelPostProcessorArguments": "பிந்தைய செயலி கட்டளை வரி வாதங்கள்:", + "LabelPostProcessor": "செயலாக்கத்திற்கு பிந்தைய பயன்பாடு:" } From 4e0a7c33078537b7cc926acfb1c6f178e2d72805 Mon Sep 17 00:00:00 2001 From: Kunio Date: Sat, 15 Aug 2020 12:09:52 +0000 Subject: [PATCH 083/285] Translated using Weblate (Swedish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sv/ --- src/strings/sv.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/sv.json b/src/strings/sv.json index b1fb42537a..50ad99be59 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -138,7 +138,7 @@ "DetectingDevices": "Söker efter enheter", "DeviceAccessHelp": "Detta tillämpas endast för enheter som kan bli unikt identifierade och som inte förhindrar åtkomst till browsern. Filtering av användarenheter kommer att blockera dom från att använda nya enheter tills dom har blivit godkända här.", "DirectPlaying": "Direktuppspelning", - "DirectStreamHelp1": "Innehållet är kompatibelt med enheten vad gäller upplösning och medietyp (H.264, AC3 osv.) men är i ett inkompatibelt filformat (mkv, avi, wmv osv.). Videofilen kommer att packas om i realtid innan den strömmas till enheten.", + "DirectStreamHelp1": "Innehållet har en kompatibel upplösning och mediatyp (H.264, AC3, osv.) för enheten, men är i en inkompatibel filbehållare (mkv, avi, wmv, osv.). Videofilen kommer att packas om i realtid innan den strömmas till enheten.", "DirectStreamHelp2": "Direktströmning av en fil använder väldigt lite resurser av CPU'n utan att bildkvaliten försämras.", "DirectStreaming": "Direktströmning", "Director": "Regissör", From 134b6b7c3c56541339961766ad6154e258734391 Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 15 Aug 2020 12:17:38 +0000 Subject: [PATCH 084/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index b8d89d701e..5914a3bdd5 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -921,5 +921,6 @@ "LabelPreferredDisplayLanguage": "விருப்பமான காட்சி மொழி:", "LabelPostProcessorArgumentsHelp": "பதிவு கோப்புக்கான பாதையாக {path} ஐப் பயன்படுத்தவும்.", "LabelPostProcessorArguments": "பிந்தைய செயலி கட்டளை வரி வாதங்கள்:", - "LabelPostProcessor": "செயலாக்கத்திற்கு பிந்தைய பயன்பாடு:" + "LabelPostProcessor": "செயலாக்கத்திற்கு பிந்தைய பயன்பாடு:", + "MapChannels": "சேனல் மேப்பிங்" } From e7578a9b9c63e175f42bc812ee4199860f46351e Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 15 Aug 2020 12:46:01 +0000 Subject: [PATCH 085/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 118 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 117 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index 5914a3bdd5..b3aaad1a7b 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -922,5 +922,121 @@ "LabelPostProcessorArgumentsHelp": "பதிவு கோப்புக்கான பாதையாக {path} ஐப் பயன்படுத்தவும்.", "LabelPostProcessorArguments": "பிந்தைய செயலி கட்டளை வரி வாதங்கள்:", "LabelPostProcessor": "செயலாக்கத்திற்கு பிந்தைய பயன்பாடு:", - "MapChannels": "சேனல் மேப்பிங்" + "MapChannels": "சேனல் மேப்பிங்", + "MoveLeft": "இடதுபுறமாக நகர்த்தவும்", + "MoreMediaInfo": "மீடியா தகவல்", + "MoreUsersCanBeAddedLater": "டாஷ்போர்டுக்குள் இருந்து அதிகமான பயனர்களை பின்னர் சேர்க்கலாம்.", + "MoreFromValue": "{0} இலிருந்து மேலும்", + "Monday": "திங்கட்கிழமை", + "Mobile": "கைபேசி", + "MinutesBefore": "நிமிடங்களுக்கு முன்", + "MinutesAfter": "நிமிடங்கள் கழித்து", + "MetadataSettingChangeHelp": "மெட்டாடேட்டா அமைப்புகளை மாற்றுவது புதிய உள்ளடக்கத்தை முன்னோக்கி செல்லும். இருக்கும் உள்ளடக்கத்தைப் புதுப்பிக்க, விவரம் திரையைத் திறந்து புதுப்பிப்பு பொத்தானைக் கிளிக் செய்க, அல்லது மெட்டாடேட்டா நிர்வாகியைப் பயன்படுத்தி மொத்தமாக புதுப்பிப்புகளைச் செய்யுங்கள்.", + "MetadataManager": "மெட்டாடேட்டா மேலாளர்", + "Metadata": "மெட்டாடேட்டா", + "MessageSyncPlayErrorMedia": "ஒத்திசைவை இயக்குவதில் தோல்வி! மீடியா பிழை.", + "MessageSyncPlayErrorMissingSession": "ஒத்திசைவை இயக்குவதில் தோல்வி! அமர்வு இல்லை.", + "MessageSyncPlayErrorNoActivePlayer": "செயலில் உள்ள எந்த பிளேயரும் கிடைக்கவில்லை. ஒத்திசைவு முடக்கப்பட்டுள்ளது.", + "MessageSyncPlayErrorAccessingGroups": "குழுக்கள் பட்டியலை அணுகும்போது பிழை ஏற்பட்டது.", + "MessageSyncPlayLibraryAccessDenied": "இந்த உள்ளடக்கத்திற்கான அணுகல் தடைசெய்யப்பட்டுள்ளது.", + "MessageSyncPlayJoinGroupDenied": "ஒத்திசைவைப் பயன்படுத்த அனுமதி தேவை.", + "MessageSyncPlayCreateGroupDenied": "ஒரு குழுவை உருவாக்க அனுமதி தேவை.", + "MessageSyncPlayGroupDoesNotExist": "குழு இல்லாததால் குழுவில் சேர முடியவில்லை.", + "MessageSyncPlayPlaybackPermissionRequired": "பின்னணி அனுமதி தேவை.", + "MessageSyncPlayNoGroupsAvailable": "குழுக்கள் எதுவும் கிடைக்கவில்லை. முதலில் ஏதாவது வாசிக்க தொடங்குங்கள்.", + "MessageSyncPlayGroupWait": "{0} இடையகப்படுத்துகிறது…", + "MessageSyncPlayUserLeft": "{0} குழுவிலிருந்து வெளியேறினார்.", + "MessageSyncPlayUserJoined": "{0} குழுவில் சேர்ந்துள்ளார்.", + "MessageSyncPlayDisabled": "ஒத்திசைவு முடக்கப்பட்டது.", + "MessageSyncPlayEnabled": "ஒத்திசைவு இயக்கப்பட்டது.", + "MessageYouHaveVersionInstalled": "நீங்கள் தற்போது {0} பதிப்பை நிறுவியுள்ளீர்கள்.", + "MessageUnsetContentHelp": "உள்ளடக்கம் எளிய கோப்புறைகளாக காண்பிக்கப்படும். சிறந்த முடிவுகளுக்கு துணை கோப்புறைகளின் உள்ளடக்க வகைகளை அமைக்க மெட்டாடேட்டா நிர்வாகியைப் பயன்படுத்தவும்.", + "MessageUnableToConnectToServer": "தேர்ந்தெடுக்கப்பட்ட சேவையகத்துடன் இப்போது எங்களால் இணைக்க முடியவில்லை. இது இயங்குவதை உறுதிசெய்து மீண்டும் முயற்சிக்கவும்.", + "MessageTheFollowingLocationWillBeRemovedFromLibrary": "உங்கள் நூலகத்திலிருந்து பின்வரும் ஊடக இருப்பிடங்கள் அகற்றப்படும்:", + "MessageSettingsSaved": "அமைப்புகள் சேமிக்கப்பட்டன.", + "MessageReenableUser": "மீண்டும் இயக்க கீழே காண்க", + "MessagePluginInstallDisclaimer": "கூடுதல் அம்சங்கள் மற்றும் நன்மைகளுடன் உங்கள் அனுபவத்தை மேம்படுத்த சமூக உறுப்பினர்களால் உருவாக்கப்பட்ட செருகுநிரல்கள் சிறந்த வழியாகும். நிறுவுவதற்கு முன், உங்கள் சேவையகத்தில் அவை நீண்ட நூலக ஸ்கேன், கூடுதல் பின்னணி செயலாக்கம் மற்றும் கணினி நிலைத்தன்மை குறைதல் போன்ற விளைவுகளைப் பற்றி எச்சரிக்கையாக இருங்கள்.", + "MessagePluginConfigurationRequiresLocalAccess": "இந்த சொருகி கட்டமைக்க உங்கள் உள்ளூர் சேவையகத்தில் நேரடியாக உள்நுழைக.", + "MessagePleaseWait": "தயவுசெய்து காத்திருங்கள். இதற்கு ஒரு நிமிடம் ஆகலாம்.", + "MessagePleaseEnsureInternetMetadata": "இணைய மெட்டாடேட்டாவைப் பதிவிறக்குவது இயக்கப்பட்டிருப்பதை உறுதிசெய்க.", + "MessagePlayAccessRestricted": "இந்த உள்ளடக்கத்தின் பின்னணி தற்போது தடைசெய்யப்பட்டுள்ளது. மேலும் தகவலுக்கு உங்கள் சேவையக நிர்வாகியைத் தொடர்பு கொள்ளவும்.", + "MessagePasswordResetForUsers": "பின்வரும் பயனர்கள் தங்கள் கடவுச்சொற்களை மீட்டமைத்துள்ளனர். மீட்டமைப்பைச் செய்யப் பயன்படுத்தப்பட்ட முள் குறியீடுகளுடன் அவர்கள் இப்போது உள்நுழையலாம்.", + "MessageNothingHere": "இங்கு எதுவுமில்லை.", + "MessageNoTrailersFound": "இணைய டிரெய்லர்களின் நூலகத்தைச் சேர்ப்பதன் மூலம் உங்கள் திரைப்பட அனுபவத்தை மேம்படுத்த டிரெய்லர்கள் சேனலை நிறுவவும்.", + "MessageNoServersAvailable": "தானியங்கி சேவையக கண்டுபிடிப்பைப் பயன்படுத்தி சேவையகங்கள் எதுவும் கண்டுபிடிக்கப்படவில்லை.", + "MessageNoPluginsInstalled": "உங்களிடம் செருகுநிரல்கள் எதுவும் நிறுவப்படவில்லை.", + "MessageNoMovieSuggestionsAvailable": "திரைப்பட பரிந்துரைகள் எதுவும் தற்போது கிடைக்கவில்லை. உங்கள் திரைப்படங்களைப் பார்க்கவும் மதிப்பீடு செய்யவும் தொடங்கவும், பின்னர் உங்கள் பரிந்துரைகளைக் காண மீண்டும் வாருங்கள்.", + "MessageNoGenresAvailable": "இணையத்திலிருந்து வகைகளை இழுக்க சில மெட்டாடேட்டா வழங்குநர்களை இயக்கவும்.", + "MessageNoCollectionsAvailable": "திரைப்படங்கள், தொடர் மற்றும் ஆல்பங்களின் தனிப்பயனாக்கப்பட்ட குழுக்களை அனுபவிக்க தொகுப்புகள் உங்களை அனுமதிக்கின்றன. தொகுப்புகளை உருவாக்கத் தொடங்க + பொத்தானைக் கிளிக் செய்க.", + "MessageAddRepository": "நீங்கள் ஒரு களஞ்சியத்தைச் சேர்க்க விரும்பினால், தலைப்புக்கு அடுத்துள்ள பொத்தானைக் கிளிக் செய்து கோரப்பட்ட தகவலை நிரப்பவும்.", + "LabelRepositoryNameHelp": "உங்கள் சேவையகத்தில் சேர்க்கப்பட்ட மற்றவர்களிடமிருந்து இந்த களஞ்சியத்தை வேறுபடுத்துவதற்கான தனிப்பயன் பெயர்.", + "LabelRepositoryName": "களஞ்சிய பெயர்", + "LabelRepositoryUrlHelp": "நீங்கள் சேர்க்க விரும்பும் களஞ்சிய மேனிஃபெஸ்டின் இடம்.", + "LabelRepositoryUrl": "களஞ்சிய URL", + "HeaderNewRepository": "புதிய களஞ்சியம்", + "MessageNoRepositories": "களஞ்சியங்கள் இல்லை.", + "MessageNoAvailablePlugins": "கிடைக்கக்கூடிய செருகுநிரல்கள் இல்லை.", + "MessageLeaveEmptyToInherit": "பெற்றோர் உருப்படி அல்லது உலகளாவிய இயல்புநிலை மதிப்பிலிருந்து அமைப்புகளைப் பெறுவதற்கு காலியாக விடவும்.", + "MessageItemsAdded": "உருப்படிகள் சேர்க்கப்பட்டன.", + "MessageItemSaved": "உருப்படி சேமிக்கப்பட்டது.", + "MessageInvalidUser": "தவறான பயனர்பெயர் அல்லது கடவுச்சொல். தயவுசெய்து மீண்டும் முயற்சி செய்க.", + "MessageInvalidForgotPasswordPin": "தவறான அல்லது காலாவதியான முள் குறியீடு உள்ளிடப்பட்டது. தயவுசெய்து மீண்டும் முயற்சி செய்க.", + "MessageImageTypeNotSelected": "கீழ்தோன்றும் மெனுவிலிருந்து பட வகையைத் தேர்ந்தெடுக்கவும்.", + "MessageImageFileTypeAllowed": "JPEG மற்றும் PNG கோப்புகள் மட்டுமே ஆதரிக்கப்படுகின்றன.", + "MessageForgotPasswordInNetworkRequired": "கடவுச்சொல் மீட்டமைப்பு செயல்முறையைத் தொடங்க உங்கள் வீட்டு நெட்வொர்க்கில் மீண்டும் முயற்சிக்கவும்.", + "MessageForgotPasswordFileCreated": "பின்வரும் கோப்பு உங்கள் சேவையகத்தில் உருவாக்கப்பட்டது மற்றும் எவ்வாறு தொடரலாம் என்பதற்கான வழிமுறைகளைக் கொண்டுள்ளது:", + "MessageFileReadError": "கோப்பைப் படிப்பதில் பிழை ஏற்பட்டது. தயவுசெய்து மீண்டும் முயற்சி செய்க.", + "MessageEnablingOptionLongerScans": "இந்த விருப்பத்தை இயக்குவது கணிசமாக நீண்ட நூலக ஸ்கேன்களுக்கு வழிவகுக்கும்.", + "MessageDownloadQueued": "பதிவிறக்கம் வரிசைப்படுத்தப்பட்டுள்ளது.", + "MessageDirectoryPickerLinuxInstruction": "Arch Linux, CentOS, Debian, Fedora, openSUSE அல்லது Ubuntu ஆகியவற்றில் லினக்ஸைப் பொறுத்தவரை, சேவை பயனருக்கு உங்கள் சேமிப்பிட இருப்பிடங்களுக்கு குறைந்தபட்சம் படிக்க அணுகலை வழங்க வேண்டும்.", + "MessageDirectoryPickerBSDInstruction": "BSD ஐப் பொறுத்தவரை, உங்கள் FreeNAS சிறைக்குள் சேமிப்பிடத்தை உள்ளமைக்க வேண்டியிருக்கலாம், எனவே ஜெல்லிஃபின் உங்கள் மீடியாவை அணுக முடியும்.", + "MessageDeleteTaskTrigger": "இந்த பணி தூண்டுதலை நீக்க விரும்புகிறீர்களா?", + "MessageCreateAccountAt": "{0} இல் ஒரு கணக்கை உருவாக்கவும்", + "MessageContactAdminToResetPassword": "உங்கள் கடவுச்சொல்லை மீட்டமைக்க உங்கள் கணினி நிர்வாகியைத் தொடர்பு கொள்ளவும்.", + "MessageConfirmShutdown": "சேவையகத்தை நிறுத்த விரும்புகிறீர்களா?", + "MessageConfirmRevokeApiKey": "இந்த API விசையை திரும்பப் பெற விரும்புகிறீர்களா? இந்த சேவையகத்திற்கான பயன்பாட்டின் இணைப்பு திடீரென நிறுத்தப்படும்.", + "MessageConfirmRestart": "ஜெல்லிஃபின் மறுதொடக்கம் செய்ய விரும்புகிறீர்களா?", + "MessageConfirmRemoveMediaLocation": "இந்த இருப்பிடத்தை அகற்ற விரும்புகிறீர்களா?", + "MessageConfirmRecordingCancellation": "பதிவை ரத்து செய்யவா?", + "MessageConfirmProfileDeletion": "இந்த சுயவிவரத்தை நீக்க விரும்புகிறீர்களா?", + "MessageConfirmDeleteTunerDevice": "இந்த சாதனத்தை நீக்க விரும்புகிறீர்களா?", + "MessageConfirmDeleteGuideProvider": "இந்த வழிகாட்டி வழங்குநரை நீக்க விரும்புகிறீர்களா?", + "MessageConfirmAppExit": "நீங்கள் வெளியேற விரும்புகிறீர்களா?", + "MessageAreYouSureYouWishToRemoveMediaFolder": "இந்த மீடியா கோப்புறையை அகற்ற விரும்புகிறீர்களா?", + "MessageAreYouSureDeleteSubtitles": "இந்த வசன கோப்பை நீக்க விரும்புகிறீர்களா?", + "MessageAlreadyInstalled": "இந்த பதிப்பு ஏற்கனவே நிறுவப்பட்டுள்ளது.", + "Menu": "பட்டியல்", + "MediaIsBeingConverted": "மீடியா இயங்கும் சாதனத்துடன் பொருந்தக்கூடிய வடிவமாக ஊடகங்கள் மாற்றப்படுகின்றன.", + "MediaInfoStreamTypeVideo": "காணொளி", + "MediaInfoStreamTypeSubtitle": "வசன வரிகள்", + "MediaInfoStreamTypeEmbeddedImage": "உட்பொதிக்கப்பட்ட படம்", + "MediaInfoStreamTypeData": "தகவல்", + "MediaInfoStreamTypeAudio": "ஆடியோ", + "MediaInfoTimestamp": "நேர முத்திரை", + "MediaInfoSize": "அளவு", + "MediaInfoSampleRate": "மாதிரி விகிதம்", + "MediaInfoResolution": "தெளிவுத்திறன்", + "MediaInfoRefFrames": "குறிப்பு கட்டமைப்பு", + "MediaInfoProfile": "சுயவிவரம்", + "MediaInfoPixelFormat": "பிக்சல் வடிவம்", + "MediaInfoPath": "பாதை", + "MediaInfoLevel": "நிலை", + "MediaInfoLayout": "தளவமைப்பு", + "MediaInfoLanguage": "மொழி", + "MediaInfoInterlaced": "ஒன்றோடொன்று", + "MediaInfoFramerate": "ஃப்ரேமரேட்", + "MediaInfoForced": "கட்டாயப்படுத்தப்பட்டது", + "MediaInfoExternal": "வெளிப்புறம்", + "MediaInfoDefault": "இயல்புநிலை", + "MediaInfoContainer": "கொள்கலன்", + "MediaInfoCodecTag": "கோடெக் குறிச்சொல்", + "MediaInfoCodec": "கோடெக்", + "MediaInfoChannels": "சேனல்கள்", + "MediaInfoBitrate": "பிட்ரேட்", + "MediaInfoBitDepth": "பிட் ஆழம்", + "MediaInfoAspectRatio": "விகித விகிதம்", + "MediaInfoAnamorphic": "அனமார்பிக்", + "MaxParentalRatingHelp": "அதிக மதிப்பீட்டைக் கொண்ட உள்ளடக்கம் இந்த பயனரிடமிருந்து மறைக்கப்படும்.", + "MarkUnplayed": "வாசிக்கப்படாதது குறி இடு", + "MarkPlayed": "வாசிக்கப்பட்டது குறி இடு" } From 54ae6b543b651991118a2cb1f8358eebbd4665dc Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 15 Aug 2020 13:49:57 +0000 Subject: [PATCH 086/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 114 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 113 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index b3aaad1a7b..bd031a66ff 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -1038,5 +1038,117 @@ "MediaInfoAnamorphic": "அனமார்பிக்", "MaxParentalRatingHelp": "அதிக மதிப்பீட்டைக் கொண்ட உள்ளடக்கம் இந்த பயனரிடமிருந்து மறைக்கப்படும்.", "MarkUnplayed": "வாசிக்கப்படாதது குறி இடு", - "MarkPlayed": "வாசிக்கப்பட்டது குறி இடு" + "MarkPlayed": "வாசிக்கப்பட்டது குறி இடு", + "OptionEveryday": "தினமும்", + "OptionEstimateContentLength": "டிரான்ஸ்கோடிங் செய்யும் போது உள்ளடக்க நீளத்தை மதிப்பிடுங்கள்", + "OptionEquals": "சமம்", + "OptionEnded": "முடிந்தது", + "OptionEnableM2tsModeHelp": "Mpegts க்கு குறியாக்கம் செய்யும் போது m2ts பயன்முறையை இயக்கவும்.", + "OptionEnableM2tsMode": "M2ts பயன்முறையை இயக்கு", + "OptionEnableForAllTuners": "அனைத்து ட்யூனர் சாதனங்களுக்கும் இயக்கு", + "OptionEnableExternalContentInSuggestionsHelp": "பரிந்துரைக்கப்பட்ட உள்ளடக்கத்தில் இணைய டிரெய்லர்கள் மற்றும் நேரடி தொலைக்காட்சி நிரல்களை சேர்க்க அனுமதிக்கவும்.", + "OptionEnableExternalContentInSuggestions": "பரிந்துரைகளில் வெளிப்புற உள்ளடக்கத்தை இயக்கவும்", + "OptionEnableAccessToAllLibraries": "எல்லா நூலகங்களுக்கும் அணுகலை இயக்கவும்", + "OptionEnableAccessToAllChannels": "எல்லா சேனல்களுக்கும் அணுகலை இயக்கவும்", + "OptionEnableAccessFromAllDevices": "எல்லா சாதனங்களிலிருந்தும் அணுகலை இயக்கவும்", + "OptionEmbedSubtitles": "கொள்கலனுக்குள் உட்பொதிக்கவும்", + "OptionDvd": "டிவிடி", + "OptionDownloadThumbImage": "சிறுபடம்", + "OptionDownloadPrimaryImage": "முதன்மை", + "OptionDownloadMenuImage": "பட்டியல்", + "OptionDownloadLogoImage": "லோகோ", + "OptionDownloadImagesInAdvanceHelp": "இயல்பாக, பெரும்பாலான படங்கள் கிளையன்ட் கோரியபோது மட்டுமே பதிவிறக்கப்படும். புதிய மீடியா இறக்குமதி செய்யப்படுவதால், எல்லா படங்களையும் முன்கூட்டியே பதிவிறக்க இந்த விருப்பத்தை இயக்கவும். இது கணிசமாக நீண்ட நூலக ஸ்கேன்களை ஏற்படுத்தக்கூடும்.", + "OptionDownloadImagesInAdvance": "படங்களை முன்கூட்டியே பதிவிறக்கவும்", + "OptionDownloadDiscImage": "வட்டு", + "OptionDownloadBoxImage": "பெட்டி", + "OptionDownloadBannerImage": "பதாகை", + "OptionDownloadBackImage": "பின்னால்", + "OptionDownloadArtImage": "கலை", + "OptionDisplayFolderViewHelp": "உங்கள் பிற ஊடக நூலகங்களுடன் கோப்புறைகளைக் காண்பி. நீங்கள் ஒரு எளிய கோப்புறை காட்சியைப் பெற விரும்பினால் இது பயனுள்ளதாக இருக்கும்.", + "OptionDisplayFolderView": "எளிய மீடியா கோப்புறைகளைக் காட்ட கோப்புறை காட்சியைக் காண்பி", + "OptionDislikes": "வெறுப்புகள்", + "OptionDisableUserHelp": "இந்த பயனரிடமிருந்து எந்த இணைப்பையும் சேவையகம் அனுமதிக்காது. தற்போதுள்ள இணைப்புகள் திடீரென நிறுத்தப்படும்.", + "OptionDisableUser": "இந்த பயனரை முடக்கு", + "OptionDescending": "இறங்கு", + "OptionDatePlayed": "உடன் தேதி", + "OptionDateAddedImportTime": "நூலகத்தில் ஸ்கேன் செய்யப்பட்ட தேதியைப் பயன்படுத்தவும்", + "OptionDateAddedFileTime": "கோப்பு உருவாக்கும் தேதியைப் பயன்படுத்தவும்", + "OptionDateAdded": "சேர்த்த தேதி", + "OptionDaily": "தினசரி", + "OptionCustomUsers": "தனிப்பயன்", + "OptionCriticRating": "விமர்சன மதிப்பீடு", + "OptionContinuing": "தொடர்கிறது", + "OptionCommunityRating": "சமூக மதிப்பீடு", + "OptionCaptionInfoExSamsung": "CaptionInfoEx (சாம்சங்)", + "OptionBluray": "ப்ளூ-ரே", + "OptionBlockTvShows": "தொலைக்காட்சி நிகழ்ச்சிகள்", + "OptionBlockTrailers": "டிரெய்லர்கள்", + "OptionBlockMusic": "இசை", + "OptionBlockMovies": "திரைப்படங்கள்", + "OptionBlockLiveTvChannels": "நேரடி தொலைக்காட்சி சேனல்கள்", + "OptionBlockChannelContent": "இணைய சேனல் உள்ளடக்கம்", + "OptionBlockBooks": "புத்தகங்கள்", + "OptionBanner": "பதாகை", + "OptionAutomaticallyGroupSeriesHelp": "இந்த நூலகத்திற்குள் பல கோப்புறைகளில் பரவியிருக்கும் தொடர்கள் தானாக ஒரு தொடராக ஒன்றிணைக்கப்படும்.", + "OptionAutomaticallyGroupSeries": "பல கோப்புறைகளில் பரவியிருக்கும் தொடர்களை தானாக இணைக்கவும்", + "OptionAutomatic": "தானாக", + "OptionAuto": "தானாக", + "OptionAscending": "ஏறுதல்", + "OptionArtist": "கலைஞர்", + "OptionAllowVideoPlaybackTranscoding": "டிரான்ஸ்கோடிங் தேவைப்படும் வீடியோ பிளேபேக்கை அனுமதிக்கவும்", + "OptionAllowVideoPlaybackRemuxing": "மறு குறியாக்கம் இல்லாமல் மாற்றம் தேவைப்படும் வீடியோ பிளேபேக்கை அனுமதிக்கவும்", + "OptionAllowUserToManageServer": "சேவையகத்தை நிர்வகிக்க இந்த பயனரை அனுமதிக்கவும்", + "OptionAllowSyncTranscoding": "டிரான்ஸ்கோடிங் தேவைப்படும் மீடியா பதிவிறக்கம் மற்றும் ஒத்திசைவை அனுமதிக்கவும்", + "OptionAllowRemoteSharedDevicesHelp": "ஒரு பயனர் அவற்றைக் கட்டுப்படுத்தத் தொடங்கும் வரை DLNA சாதனங்கள் பகிரப்பட்டதாகக் கருதப்படுகின்றன.", + "OptionAllowRemoteSharedDevices": "பகிரப்பட்ட சாதனங்களின் தொலைநிலைக் கட்டுப்பாட்டை அனுமதிக்கவும்", + "OptionAllowRemoteControlOthers": "பிற பயனர்களின் ரிமோட் கண்ட்ரோலை அனுமதிக்கவும்", + "OptionAllowMediaPlaybackTranscodingHelp": "டிரான்ஸ்கோடிங்கிற்கான அணுகலைக் கட்டுப்படுத்துவது ஆதரிக்கப்படாத ஊடக வடிவங்கள் காரணமாக வாடிக்கையாளர்களுக்கு பின்னணி தோல்விகளை ஏற்படுத்தக்கூடும்.", + "OptionAllowMediaPlayback": "மீடியா பிளேபேக்கை அனுமதிக்கவும்", + "OptionAllowManageLiveTv": "லைவ் டிவி பதிவு நிர்வாகத்தை அனுமதிக்கவும்", + "OptionAllowLinkSharingHelp": "ஊடகத் தகவல்களைக் கொண்ட வலைப்பக்கங்கள் மட்டுமே பகிரப்படுகின்றன. மீடியா கோப்புகள் ஒருபோதும் பகிரங்கமாக பகிரப்படுவதில்லை. பங்குகள் நேர வரம்புக்குட்பட்டவை மற்றும் {0} நாட்களுக்குப் பிறகு காலாவதியாகும்.", + "OptionAllowLinkSharing": "சமூக ஊடக பகிர்வை அனுமதிக்கவும்", + "OptionAllowContentDownloading": "மீடியா பதிவிறக்க மற்றும் ஒத்திசைக்க அனுமதிக்கவும்", + "OptionAllowBrowsingLiveTv": "நேரடி தொலைக்காட்சி அணுகலை அனுமதிக்கவும்", + "OptionForceRemoteSourceTranscoding": "தொலைநிலை ஊடக மூலங்களின் டிரான்ஸ்கோடிங்கை கட்டாயப்படுத்தவும் (லைடிவி போன்றவை)", + "OptionAllowAudioPlaybackTranscoding": "டிரான்ஸ்கோடிங் தேவைப்படும் ஆடியோ பிளேபேக்கை அனுமதிக்கவும்", + "OptionAllUsers": "அனைத்து பயனாளர்கள்", + "OptionAlbumArtist": "ஆல்பம் கலைஞர்", + "OptionAlbum": "ஆல்பம்", + "OptionAdminUsers": "நிர்வாகிகள்", + "OnlyImageFormats": "பட வடிவங்கள் மட்டுமே (VOBSUB, PGS, SUB)", + "Option3D": "3D", + "OnlyForcedSubtitlesHelp": "கட்டாயமாக குறிக்கப்பட்ட வசன வரிகள் மட்டுமே ஏற்றப்படும்.", + "OnlyForcedSubtitles": "கட்டாயப்படுத்தப்பட்டது மட்டுமே", + "OneChannel": "ஒரு சேனல்", + "Off": "முடக்கு", + "NumLocationsValue": "{0} கோப்புறைகள்", + "Normal": "இயல்பானது", + "None": "எதுவுமில்லை", + "NoSubtitlesHelp": "முன்னிருப்பாக வசன வரிகள் ஏற்றப்படாது. பிளேபேக்கின் போது அவற்றை கைமுறையாக இயக்கலாம்.", + "NoSubtitleSearchResultsFound": "முடிவுகள் எதுவும் இல்லை.", + "MessageNoPluginConfiguration": "இந்த சொருகி கட்டமைக்க எந்த அமைப்புகளும் இல்லை.", + "MessageNoNextUpItems": "எதுவும் கிடைக்கவில்லை. உங்கள் நிகழ்ச்சிகளைப் பார்க்கத் தொடங்குங்கள்!", + "NoNewDevicesFound": "புதிய சாதனங்கள் எதுவும் கிடைக்கவில்லை. புதிய ட்யூனரைச் சேர்க்க, இந்த உரையாடலை மூடி சாதனத் தகவலை கைமுறையாக உள்ளிடவும்.", + "NoCreatedLibraries": "நீங்கள் இதுவரை எந்த நூலகங்களையும் உருவாக்கவில்லை என்று தெரிகிறது. {0} இப்போது ஒன்றை உருவாக்க விரும்புகிறீர்களா? {1}", + "No": "இல்லை", + "NextUp": "அடுத்தது", + "NextTrack": "அடுத்ததுக்குச் செல்க", + "Next": "அடுத்தது", + "News": "செய்தி", + "NewEpisodesOnly": "புதிய அத்தியாயங்கள் மட்டுமே", + "NewEpisodes": "புதிய அத்தியாயங்கள்", + "NewCollectionNameExample": "எடுத்துக்காட்டு: Star Wars Collection", + "NewCollectionHelp": "திரைப்படங்கள் மற்றும் பிற நூலக உள்ளடக்கங்களின் தனிப்பயனாக்கப்பட்ட குழுக்களை உருவாக்க தொகுப்புகள் உங்களை அனுமதிக்கின்றன.", + "NewCollection": "புதிய தொகுப்பு", + "Never": "ஒருபோதும்", + "Name": "பெயர்", + "MySubtitles": "எனது வசன வரிகள்", + "Mute": "முடக்கு", + "MusicVideo": "இசை கானொளி", + "MusicLibraryHelp": "{0} இசை பெயரிடும் வழிகாட்டியை {1} மதிப்பாய்வு செய்யவும்.", + "MusicArtist": "இசைக் கலைஞர்", + "MusicAlbum": "இசை ஆல்பம்", + "Movie": "திரைப்படம்", + "MovieLibraryHelp": "{0} மூவி பெயரிடும் வழிகாட்டியை {1} மதிப்பாய்வு செய்யவும்.", + "MoveRight": "வலதுபுறம் நகர்த்தவும்" } From 9b1ed7ce4f837b8e0209cf18aefe60fe2a4f0679 Mon Sep 17 00:00:00 2001 From: Ian Walton Date: Sat, 15 Aug 2020 11:30:36 -0400 Subject: [PATCH 087/285] Change all instances of currentTime to be in ms. --- src/components/nowPlayingBar/nowPlayingBar.js | 2 +- src/components/playback/playbackmanager.js | 14 +++----------- src/components/remotecontrol/remotecontrol.js | 2 +- src/components/syncPlay/syncPlayManager.js | 2 +- src/components/upnextdialog/upnextdialog.js | 2 +- src/controllers/playback/video/index.js | 2 +- src/plugins/chromecastPlayer/plugin.js | 4 ++-- src/plugins/sessionPlayer/plugin.js | 4 ++-- 8 files changed, 12 insertions(+), 20 deletions(-) diff --git a/src/components/nowPlayingBar/nowPlayingBar.js b/src/components/nowPlayingBar/nowPlayingBar.js index 7aa8c623b3..d2de2f60f2 100644 --- a/src/components/nowPlayingBar/nowPlayingBar.js +++ b/src/components/nowPlayingBar/nowPlayingBar.js @@ -701,7 +701,7 @@ import 'emby-ratingbutton'; const player = this; currentRuntimeTicks = playbackManager.duration(player); - updateTimeDisplay(playbackManager.currentTime(player), currentRuntimeTicks, playbackManager.getBufferedRanges(player)); + updateTimeDisplay(playbackManager.currentTime(player) * 10000, currentRuntimeTicks, playbackManager.getBufferedRanges(player)); } function releaseCurrentPlayer() { diff --git a/src/components/playback/playbackmanager.js b/src/components/playback/playbackmanager.js index 8502b551af..a5951e2784 100644 --- a/src/components/playback/playbackmanager.js +++ b/src/components/playback/playbackmanager.js @@ -1572,11 +1572,7 @@ class PlaybackManager { player = player || self._currentPlayer; if (player && !enableLocalPlaylistManagement(player)) { - if (player.isLocalPlayer) { - return player.seek((ticks || 0) / 10000); - } else { - return player.seek(ticks); - } + return player.seek(ticks); } changeStream(player, ticks); @@ -1585,11 +1581,7 @@ class PlaybackManager { self.seekRelative = function (offsetTicks, player) { player = player || self._currentPlayer; if (player && !enableLocalPlaylistManagement(player) && player.seekRelative) { - if (player.isLocalPlayer) { - return player.seekRelative((ticks || 0) / 10000); - } else { - return player.seekRelative(ticks); - } + return player.seekRelative(ticks); } const ticks = getCurrentTicks(player) + offsetTicks; @@ -3173,7 +3165,7 @@ class PlaybackManager { return player.currentTime(); } - return this.getCurrentTicks(player); + return this.getCurrentTicks(player) / 10000; } nextItem(player = this._currentPlayer) { diff --git a/src/components/remotecontrol/remotecontrol.js b/src/components/remotecontrol/remotecontrol.js index 6048c918c7..ee02cfd45a 100644 --- a/src/components/remotecontrol/remotecontrol.js +++ b/src/components/remotecontrol/remotecontrol.js @@ -615,7 +615,7 @@ export default function () { lastUpdateTime = now; const player = this; currentRuntimeTicks = playbackManager.duration(player); - updateTimeDisplay(playbackManager.currentTime(player), currentRuntimeTicks); + updateTimeDisplay(playbackManager.currentTime(player) * 10000, currentRuntimeTicks); } } diff --git a/src/components/syncPlay/syncPlayManager.js b/src/components/syncPlay/syncPlayManager.js index 2366172a79..26d6cdbad1 100644 --- a/src/components/syncPlay/syncPlayManager.js +++ b/src/components/syncPlay/syncPlayManager.js @@ -741,7 +741,7 @@ class SyncPlayManager { const playAtTime = this.lastCommand.When; - const currentPositionTicks = playbackManager.currentTime(); + const currentPositionTicks = playbackManager.currentTime() * 10000; // Estimate PositionTicks on server const serverPositionTicks = this.lastCommand.PositionTicks + ((currentTime - playAtTime) + this.timeOffsetWithServer) * 10000; // Measure delay that needs to be recovered diff --git a/src/components/upnextdialog/upnextdialog.js b/src/components/upnextdialog/upnextdialog.js index e28bb03abe..69cc6512fe 100644 --- a/src/components/upnextdialog/upnextdialog.js +++ b/src/components/upnextdialog/upnextdialog.js @@ -256,7 +256,7 @@ import 'flexStyles'; const runtimeTicks = playbackManager.duration(options.player); if (runtimeTicks) { - const timeRemainingTicks = runtimeTicks - playbackManager.currentTime(options.player); + const timeRemainingTicks = runtimeTicks - playbackManager.currentTime(options.player) * 10000; return Math.round(timeRemainingTicks / 10000); } diff --git a/src/controllers/playback/video/index.js b/src/controllers/playback/video/index.js index 73540cd636..c8d385b6d8 100644 --- a/src/controllers/playback/video/index.js +++ b/src/controllers/playback/video/index.js @@ -693,7 +693,7 @@ import 'css!assets/css/videoosd'; lastUpdateTime = now; const player = this; currentRuntimeTicks = playbackManager.duration(player); - const currentTime = playbackManager.currentTime(player); + const currentTime = playbackManager.currentTime(player) * 10000; updateTimeDisplay(currentTime, currentRuntimeTicks, playbackManager.playbackStartTime(player), playbackManager.getBufferedRanges(player)); const item = currentItem; refreshProgramInfoIfNeeded(player, item); diff --git a/src/plugins/chromecastPlayer/plugin.js b/src/plugins/chromecastPlayer/plugin.js index b7e6d05969..d3faea2ce8 100644 --- a/src/plugins/chromecastPlayer/plugin.js +++ b/src/plugins/chromecastPlayer/plugin.js @@ -950,12 +950,12 @@ class ChromecastPlayer { currentTime(val) { if (val != null) { - return this.seek(val); + return this.seek(val * 10000); } let state = this.lastPlayerData || {}; state = state.PlayState || {}; - return state.PositionTicks; + return state.PositionTicks / 10000; } duration() { diff --git a/src/plugins/sessionPlayer/plugin.js b/src/plugins/sessionPlayer/plugin.js index c68e0d7a4a..fc795c2a6d 100644 --- a/src/plugins/sessionPlayer/plugin.js +++ b/src/plugins/sessionPlayer/plugin.js @@ -324,12 +324,12 @@ define(['playbackManager', 'events', 'serverNotifications', 'connectionManager'] SessionPlayer.prototype.currentTime = function (val) { if (val != null) { - return this.seek(val); + return this.seek(val * 10000); } var state = this.lastPlayerData || {}; state = state.PlayState || {}; - return state.PositionTicks; + return state.PositionTicks / 10000; }; SessionPlayer.prototype.duration = function () { From 4095776ab3744930d6313b6e2825745672b5222a Mon Sep 17 00:00:00 2001 From: Ian Walton Date: Sat, 15 Aug 2020 11:41:54 -0400 Subject: [PATCH 088/285] Fix syncplay menu. --- src/scripts/libraryMenu.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/scripts/libraryMenu.js b/src/scripts/libraryMenu.js index d237eead9d..d67250d5cb 100644 --- a/src/scripts/libraryMenu.js +++ b/src/scripts/libraryMenu.js @@ -8,7 +8,7 @@ import appRouter from 'appRouter'; import appHost from 'apphost'; import playbackManager from 'playbackManager'; import syncPlayManager from 'syncPlayManager'; -import groupSelectionMenu from 'groupSelectionMenu'; +import { show as showGroupSelectionMenu } from 'groupSelectionMenu'; import browser from 'browser'; import globalize from 'globalize'; import imageHelper from 'scripts/imagehelper'; @@ -208,7 +208,7 @@ import 'flexStyles'; function onSyncButtonClicked() { const btn = this; - groupSelectionMenu.show(btn); + showGroupSelectionMenu(btn); } function onSyncPlayEnabled(event, enabled) { From 8796cd246fffde1b2646a8d40546c9ab5eb6a5f6 Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 15 Aug 2020 15:19:29 +0000 Subject: [PATCH 089/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 90 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 89 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index bd031a66ff..7201ea80b4 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -1150,5 +1150,93 @@ "MusicAlbum": "இசை ஆல்பம்", "Movie": "திரைப்படம்", "MovieLibraryHelp": "{0} மூவி பெயரிடும் வழிகாட்டியை {1} மதிப்பாய்வு செய்யவும்.", - "MoveRight": "வலதுபுறம் நகர்த்தவும்" + "MoveRight": "வலதுபுறம் நகர்த்தவும்", + "PlayAllFromHere": "அனைத்தையும் இங்கிருந்து வாசிக்கவும்", + "Play": "வாசிக்கவும்", + "PlaceFavoriteChannelsAtBeginning": "பிடித்த சேனல்களை ஆரம்பத்தில் வைக்கவும்", + "PinCodeResetConfirmation": "பின் குறியீட்டை மீட்டமைக்க விரும்புகிறீர்களா?", + "PinCodeResetComplete": "முள் குறியீடு மீட்டமைக்கப்பட்டது.", + "PictureInPicture": "படத்தினுள் படம்", + "Person": "நபர்", + "PerfectMatch": "சரியான பொருத்தம்", + "People": "மக்கள்", + "PasswordSaved": "கடவுச்சொல் சேமிக்கப்பட்டது.", + "PasswordResetProviderHelp": "இந்த பயனர் கடவுச்சொல் மீட்டமைப்பைக் கோரும்போது பயன்படுத்த கடவுச்சொல் மீட்டமைப்பு வழங்குநரைத் தேர்வுசெய்க.", + "HeaderResetPassword": "கடவுச்சொல்லை மீட்டமைக்க", + "PasswordResetConfirmation": "கடவுச்சொல்லை மீட்டமைக்க நிச்சயமாக விரும்புகிறீர்களா?", + "PasswordResetComplete": "கடவுச்சொல் மீட்டமைக்கப்பட்டது.", + "PasswordMatchError": "கடவுச்சொல் மற்றும் கடவுச்சொல் உறுதிப்படுத்தல் பொருந்த வேண்டும்.", + "ParentalRating": "பெற்றோர் மதிப்பீடு", + "PackageInstallFailed": "{0} (பதிப்பு {1}) நிறுவல் தோல்வியடைந்தது.", + "PackageInstallCompleted": "{0} (பதிப்பு {1}) நிறுவல் முடிந்தது.", + "PackageInstallCancelled": "{0} (பதிப்பு {1}) நிறுவல் ரத்து செய்யப்பட்டது.", + "Overview": "கண்ணோட்டம்", + "OriginalAirDateValue": "அசல் ஒளிபரப்பப்பட்ட தேதி: {0}", + "OptionWeekly": "வாராந்திர", + "OptionWeekends": "வார இறுதி நாட்கள்", + "OptionWeekdays": "வார நாட்கள்", + "OptionWakeFromSleep": "தூக்கத்திலிருந்து விழிப்பதற்கு", + "OptionUnplayed": "காட்டப்படாதது", + "OptionUnairedEpisode": "ஒளிபரப்பப்படாத அத்தியாயங்கள்", + "OptionTvdbRating": "TVDB மதிப்பீடு", + "OptionTrackName": "ட்ராக் பெயர்", + "OptionThumbCard": "சிறுபட அட்டை", + "OptionThumb": "சிறுபடம்", + "OptionSubstring": "மூலக்கூறு", + "OptionSpecialEpisode": "சிறப்பு", + "OptionSaveMetadataAsHiddenHelp": "இதை மாற்றுவது முன்னோக்கிச் செல்லும் புதிய மெட்டாடேட்டாவுக்கு பொருந்தும். தற்போதுள்ள மெட்டாடேட்டா கோப்புகள் அடுத்த முறை சேவையகத்தால் சேமிக்கப்படும் போது அவை புதுப்பிக்கப்படும்.", + "OptionSaveMetadataAsHidden": "மெட்டாடேட்டா மற்றும் படங்களை மறைக்கப்பட்ட கோப்புகளாக சேமிக்கவும்", + "OptionRuntime": "இயக்க நேரம்", + "OptionResumable": "மீண்டும் தொடங்கக்கூடியது", + "OptionResElement": "res கூறு", + "OptionRequirePerfectSubtitleMatchHelp": "சரியான பொருத்தம் தேவைப்பட்டால், உங்கள் சரியான வீடியோ கோப்புடன் சோதிக்கப்பட்ட மற்றும் சரிபார்க்கப்பட்டவற்றை மட்டுமே சேர்க்க வசன வரிகள் வடிகட்டப்படும். இதைத் தேர்வுசெய்வது வசன வரிகள் பதிவிறக்கம் செய்யப்படுவதற்கான வாய்ப்பை அதிகரிக்கும், ஆனால் தவறான அல்லது தவறான வசன உரைக்கான வாய்ப்புகளை அதிகரிக்கும்.", + "OptionRequirePerfectSubtitleMatch": "எனது வீடியோ கோப்புகளுக்கு சரியான பொருத்தமாக இருக்கும் வசன வரிகள் மட்டுமே பதிவிறக்கவும்", + "OptionReportByteRangeSeekingWhenTranscodingHelp": "நேரம் நன்றாகத் தேடாத சில சாதனங்களுக்கு இது தேவைப்படுகிறது.", + "OptionReportByteRangeSeekingWhenTranscoding": "டிரான்ஸ்கோடிங் செய்யும் போது பைட் தேடுவதை சேவையகம் ஆதரிக்கிறது என்று புகாரளிக்கவும்", + "OptionReleaseDate": "வெளியீட்டு தேதி", + "OptionRegex": "ரீஜெக்ஸ்", + "OptionRandom": "சீரற்ற", + "OptionProtocolHttp": "HTTP", + "OptionProtocolHls": "HTTP நேரடி ஒளிபரப்பு", + "OptionProfileVideoAudio": "வீடியோ ஆடியோ", + "OptionProfileVideo": "காணொளி", + "OptionProfilePhoto": "புகைப்படம்", + "OptionProfileAudio": "ஆடியோ", + "OptionPremiereDate": "பிரீமியர் தேதி", + "OptionPosterCard": "சுவரொட்டி அட்டை", + "OptionPoster": "சுவரொட்டி", + "OptionPlayed": "வாசிக்கப்பட்டது", + "OptionPlayCount": "ப்ளே கவுண்ட்", + "OptionPlainVideoItemsHelp": "எல்லா வீடியோக்களும் டிஐடிஎல்லில் \"object.item.videoItem\" என குறிப்பிடப்படுகின்றன, அதாவது \"object.item.videoItem.movie\" போன்ற ஒரு குறிப்பிட்ட வகைக்கு பதிலாக.", + "OptionPlainVideoItems": "எல்லா வீடியோக்களையும் எளிய வீடியோ உருப்படிகளாகக் காண்பி", + "OptionPlainStorageFoldersHelp": "அனைத்து கோப்புறைகளும் டிஐடிஎல்லில் \"object.container.storageFolder\" என குறிப்பிடப்படுகின்றன, அதாவது \"object.container.person.musicArtist\" போன்ற ஒரு குறிப்பிட்ட வகைக்கு பதிலாக.", + "OptionPlainStorageFolders": "எல்லா கோப்புறைகளையும் வெற்று சேமிப்பக கோப்புறைகளாகக் காண்பி", + "OptionParentalRating": "பெற்றோர் மதிப்பீடு", + "OptionOnInterval": "ஒரு இடைவெளியில்", + "OptionNone": "எதுவுமில்லை", + "OptionNew": "புதிய…", + "OptionNameSort": "பெயர்", + "OptionMissingEpisode": "தவறிய பாகங்கள்", + "OptionMax": "அதிகபட்சம்", + "OptionLoginAttemptsBeforeLockoutHelp": "பூஜ்ஜியத்தின் மதிப்பு என்பது சாதாரண பயனர்களுக்கான மூன்று முயற்சிகளின் இயல்புநிலையையும், நிர்வாகிகளுக்கு ஐந்து முயற்சிகளையும் பெறுவதாகும். இதை -1 ஆக அமைப்பது அம்சத்தை முடக்கும்.", + "OptionLoginAttemptsBeforeLockout": "கதவடைப்பு ஏற்படுவதற்கு முன்பு எத்தனை தவறான உள்நுழைவு முயற்சிகள் செய்யப்படலாம் என்பதை தீர்மானிக்கிறது.", + "OptionList": "பட்டியல்", + "OptionLikes": "விருப்பங்கள்", + "OptionIsSD": "எஸ்டி", + "OptionIsHD": "எச்டி", + "OptionImdbRating": "IMDb மதிப்பீடு", + "OptionIgnoreTranscodeByteRangeRequestsHelp": "இந்த கோரிக்கைகள் மதிக்கப்படும், ஆனால் பைட் வரம்பு தலைப்பை புறக்கணிக்கும்.", + "OptionIgnoreTranscodeByteRangeRequests": "டிரான்ஸ்கோட் பைட் வரம்பு கோரிக்கைகளை புறக்கணிக்கவும்", + "OptionHomeVideos": "புகைப்படங்கள்", + "OptionHlsSegmentedSubtitles": "HLS பிரிக்கப்பட்ட வசன வரிகள்", + "OptionHideUserFromLoginHelp": "தனிப்பட்ட அல்லது மறைக்கப்பட்ட நிர்வாகி கணக்குகளுக்கு பயனுள்ளதாக இருக்கும். பயனர் தங்கள் பயனர்பெயர் மற்றும் கடவுச்சொல்லை உள்ளிட்டு கைமுறையாக உள்நுழைய வேண்டும்.", + "OptionHideUser": "உள்நுழைவு திரைகளிலிருந்து இந்த பயனரை மறைக்கவும்", + "OptionHasTrailer": "டிரெய்லர்", + "OptionHasThemeVideo": "தீம் வீடியோ", + "OptionHasThemeSong": "தீம் பாடல்", + "OptionHasSubtitles": "வசன வரிகள்", + "OptionHasSpecialFeatures": "சிறப்பு அம்சங்கள்", + "OptionFavorite": "பிடித்தவை", + "OptionExtractChapterImage": "அத்தியாயம் படத்தை பிரித்தெடுப்பதை இயக்கு", + "OptionExternallyDownloaded": "வெளிப்புற பதிவிறக்க" } From 00cb7e0ca835a3d8bf86ef43f4556cc55c979203 Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 15 Aug 2020 15:47:31 +0000 Subject: [PATCH 090/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index 7201ea80b4..fddfbfdf1c 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -1238,5 +1238,6 @@ "OptionHasSpecialFeatures": "சிறப்பு அம்சங்கள்", "OptionFavorite": "பிடித்தவை", "OptionExtractChapterImage": "அத்தியாயம் படத்தை பிரித்தெடுப்பதை இயக்கு", - "OptionExternallyDownloaded": "வெளிப்புற பதிவிறக்க" + "OptionExternallyDownloaded": "வெளிப்புற பதிவிறக்க", + "PlaybackData": "பின்னணி தரவு" } From 50e4a179ebd88e7d05c58847254c4f9c4544e1fa Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 15 Aug 2020 15:48:02 +0000 Subject: [PATCH 091/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index fddfbfdf1c..90d6c05dbd 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -1239,5 +1239,7 @@ "OptionFavorite": "பிடித்தவை", "OptionExtractChapterImage": "அத்தியாயம் படத்தை பிரித்தெடுப்பதை இயக்கு", "OptionExternallyDownloaded": "வெளிப்புற பதிவிறக்க", - "PlaybackData": "பின்னணி தரவு" + "PlaybackData": "பின்னணி தரவு", + "PlayFromBeginning": "ஆரம்பத்தில் இருந்து வாசிக்கவும்", + "PlayCount": "வாசிப்பு எண்ணிக்கை" } From ef4caf2eb4369040b8b09634086cb127ea0d7cde Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 15 Aug 2020 15:50:00 +0000 Subject: [PATCH 092/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 113 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 112 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index 90d6c05dbd..edb5806508 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -1241,5 +1241,116 @@ "OptionExternallyDownloaded": "வெளிப்புற பதிவிறக்க", "PlaybackData": "பின்னணி தரவு", "PlayFromBeginning": "ஆரம்பத்தில் இருந்து வாசிக்கவும்", - "PlayCount": "வாசிப்பு எண்ணிக்கை" + "PlayCount": "வாசிப்பு எண்ணிக்கை", + "StopRecording": "பதிவு செய்வதை நிறுத்துங்கள்", + "Sports": "விளையாட்டு", + "SortName": "பெயரை வரிசைப்படுத்து", + "SortChannelsBy": "சேனல்களை வரிசைப்படுத்து:", + "SortByValue": "{0} மூலம் வரிசைப்படுத்து", + "Sort": "வரிசைப்படுத்து", + "SmartSubtitlesHelp": "ஆடியோ வெளிநாட்டு மொழியில் இருக்கும்போது மொழி விருப்பத்துடன் பொருந்தக்கூடிய வசனங்கள் ஏற்றப்படும்.", + "Smart": "ஸ்மார்ட்", + "Smaller": "மிக சிறிய", + "SmallCaps": "சிறிய எழுத்துக்கள்", + "Small": "சிறிய", + "SkipEpisodesAlreadyInMyLibraryHelp": "எபிசோடுகள் கிடைக்கும்போது, சீசன் மற்றும் எபிசோட் எண்களைப் பயன்படுத்தி ஒப்பிடப்படும்.", + "SkipEpisodesAlreadyInMyLibrary": "எனது நூலகத்தில் ஏற்கனவே இருக்கும் அத்தியாயங்களை பதிவு செய்ய வேண்டாம்", + "SimultaneousConnectionLimitHelp": "அனுமதிக்கப்பட்ட ஒரே நேரத்தில் நீரோடைகளின் அதிகபட்ச எண்ணிக்கை. வரம்பில்லாமல் 0 ஐ உள்ளிடவும்.", + "Filter": "வடிகட்டு", + "New": "புதிய", + "Shuffle": "கலக்கு", + "ShowYear": "ஆண்டு காட்டு", + "ShowTitle": "தலைப்பைக் காட்டு", + "ShowMore": "மேலும் காட்ட", + "ShowLess": "குறைவாகக் காட்டு", + "ShowIndicatorsFor": "இதற்கான குறிகாட்டிகளைக் காட்டு:", + "ShowAdvancedSettings": "மேம்பட்ட அமைப்புகளைக் காட்டு", + "Share": "பகிர்", + "SettingsWarning": "இந்த மதிப்புகளை மாற்றுவது உறுதியற்ற தன்மை அல்லது இணைப்பு தோல்விகளை ஏற்படுத்தக்கூடும். உங்களுக்கு ஏதேனும் சிக்கல்கள் ஏற்பட்டால், அவற்றை இயல்புநிலைக்கு மாற்ற பரிந்துரைக்கிறோம்.", + "SettingsSaved": "அமைப்புகள் சேமிக்கப்பட்டன.", + "Settings": "அமைப்புகள்", + "ServerUpdateNeeded": "இந்த சேவையகத்தை புதுப்பிக்க வேண்டும். சமீபத்திய பதிப்பைப் பதிவிறக்க, தயவுசெய்து {0} ஐ பார்வையிடவும்", + "ServerRestartNeededAfterPluginInstall": "செருகுநிரலை நிறுவிய பின் ஜெல்லிஃபின் மறுதொடக்கம் செய்யப்பட வேண்டும்.", + "ServerNameIsShuttingDown": "{0} இல் உள்ள சேவையகம் மூடப்படும்.", + "ServerNameIsRestarting": "{0} இல் உள்ள சேவையகம் மறுதொடக்கம் செய்யப்படுகிறது.", + "SeriesYearToPresent": "{0} - தற்போது", + "SeriesSettings": "தொடர் அமைப்புகள்", + "SeriesRecordingScheduled": "தொடர் பதிவு திட்டமிடப்பட்டுள்ளது.", + "SeriesDisplayOrderHelp": "எபிசோட்களை ஒளிபரப்பப்பட்ட தேதி, டிவிடி ஆர்டர் அல்லது முழுமையான எண்ணால் வரிசைப்படுத்தவும்.", + "SeriesCancelled": "தொடர் ரத்து செய்யப்பட்டது.", + "Series": "தொடர்", + "SendMessage": "செய்தி அனுப்ப", + "SelectAdminUsername": "நிர்வாகி கணக்கிற்கான பயனர்பெயரைத் தேர்ந்தெடுக்கவும்.", + "Season": "பருவம்", + "SearchResults": "தேடல் முடிவுகள்", + "SearchForSubtitles": "வசன வரிகள் தேடுங்கள்", + "SearchForMissingMetadata": "காணாமல் போன மெட்டாடேட்டாவைத் தேடுங்கள்", + "SearchForCollectionInternetMetadata": "கலைப்படைப்பு மற்றும் மெட்டாடேட்டாவிற்கு இணையத்தில் தேடுங்கள்", + "Search": "தேடு", + "Screenshots": "ஸ்கிரீன்ஷாட்கள்", + "Screenshot": "ஸ்கிரீன்ஷாட்", + "Schedule": "அட்டவணை", + "ScanLibrary": "ஸ்கேன் நூலகம்", + "ScanForNewAndUpdatedFiles": "புதிய மற்றும் புதுப்பிக்கப்பட்ட கோப்புகளை ஸ்கேன் செய்யுங்கள்", + "SaveSubtitlesIntoMediaFoldersHelp": "வீடியோ கோப்புகளுக்கு அடுத்ததாக வசன வரிகள் சேமிப்பது அவற்றை எளிதாக நிர்வகிக்க அனுமதிக்கும்.", + "SaveSubtitlesIntoMediaFolders": "மீடியா கோப்புறைகளில் வசன வரிகளைச் சேமிக்கவும்", + "SaveChanges": "மாற்றங்களை சேமியுங்கள்", + "Save": "சேமியுங்கள்", + "Saturday": "சனிக்கிழமை", + "Runtime": "இயக்க நேரம்", + "Rewind": "முன்னோக்கிச்செலுத்து", + "ResumeAt": "{0} இலிருந்து மீண்டும் தொடங்குங்கள்", + "ReplaceExistingImages": "இருக்கும் படங்களை மாற்றவும்", + "ReplaceAllMetadata": "எல்லா மெட்டாடேட்டாவையும் மாற்றவும்", + "RepeatOne": "மீண்டும் ஒருமுறை", + "RepeatMode": "பயன்முறையை மீண்டும் செய்யவும்", + "RepeatEpisodes": "அத்தியாயங்களை மீண்டும் செய்யவும்", + "RepeatAll": "அனைத்தையும் மீண்டும் செய்யவும்", + "Repeat": "மீண்டும்", + "RemoveFromPlaylist": "பிளேலிஸ்ட்டில் இருந்து அகற்று", + "RemoveFromCollection": "சேகரிப்பிலிருந்து அகற்று", + "RememberMe": "என்னை நினைவிற்கொள்ளவும்", + "ReleaseDate": "வெளியீட்டு தேதி", + "RefreshQueued": "புதுப்பிப்பு வரிசைப்படுத்தப்பட்டுள்ளது.", + "RefreshMetadata": "மெட்டாடேட்டாவைப் புதுப்பிக்கவும்", + "RefreshDialogHelp": "டாஷ்போர்டில் இயக்கப்பட்ட அமைப்புகள் மற்றும் இணைய சேவைகளின் அடிப்படையில் மெட்டாடேட்டா புதுப்பிக்கப்படுகிறது.", + "Refresh": "புதுப்பிப்பு", + "Recordings": "பதிவுகள்", + "RecordingScheduled": "பதிவு திட்டமிடப்பட்டுள்ளது.", + "MessageChangeRecordingPath": "உங்கள் ரெக்கார்டிங் கோப்புறையை மாற்றுவது ஏற்கனவே இருக்கும் பதிவுகளை பழைய இடத்திலிருந்து புதிய இடத்திற்கு மாற்றாது. விரும்பினால் அவற்றை கைமுறையாக நகர்த்த வேண்டும்.", + "RecordingCancelled": "பதிவு ரத்து செய்யப்பட்டது.", + "RecordSeries": "தொடரை பதிவு செய்", + "Record": "பதிவு செய்", + "RecommendationStarring": "{0} நடித்த", + "RecommendationDirectedBy": "{0} ஐ இயக்கியது", + "RecommendationBecauseYouWatched": "நீங்கள் {0} பார்த்ததால்", + "RecommendationBecauseYouLike": "நீங்கள் {0} ஐ விரும்புவதால்", + "RecentlyWatched": "சமீபத்தில் பார்த்தது", + "Rate": "மதிப்பிடுங்கள்", + "Raised": "எழுப்பப்பட்ட", + "Quality": "தரம்", + "Programs": "நிகழ்ச்சிகள்", + "ProductionLocations": "தயாரிப்பு தளம்", + "Producer": "தயாரிப்பாளர்", + "Primary": "முதன்மை", + "PreviousTrack": "முந்தையதைத் தவிர்", + "Previous": "முந்தையது", + "Premieres": "பிரீமியர்ஸ்", + "Premiere": "பிரீமியர்", + "PreferEmbeddedEpisodeInfosOverFileNames": "கோப்பு பெயர்களில் உட்பொதிக்கப்பட்ட எபிசோட் தகவலை விரும்புங்கள்", + "PreferEmbeddedEpisodeInfosOverFileNamesHelp": "இது உட்பொதிக்கப்பட்ட மெட்டாடேட்டாவிலிருந்து எபிசோட் தகவலைப் பெற்றால் பயன்படுத்துகிறது.", + "PreferEmbeddedTitlesOverFileNamesHelp": "இணைய மெட்டாடேட்டா அல்லது உள்ளூர் மெட்டாடேட்டா கிடைக்காதபோது இயல்புநிலை காட்சி தலைப்பை இது தீர்மானிக்கிறது.", + "PreferEmbeddedTitlesOverFileNames": "கோப்பு பெயர்களில் உட்பொதிக்கப்பட்ட தலைப்புகளை விரும்புங்கள்", + "MessageGetInstalledPluginsError": "தற்போது நிறுவப்பட்ட செருகுநிரல்களின் பட்டியலைப் பெறும்போது பிழை ஏற்பட்டது.", + "MessagePluginInstallError": "சொருகி நிறுவும் போது பிழை ஏற்பட்டது.", + "MessagePluginInstalled": "சொருகி வெற்றிகரமாக நிறுவப்பட்டுள்ளது. மாற்றங்கள் நடைமுறைக்கு வர சேவையகத்தை மறுதொடக்கம் செய்ய வேண்டும்.", + "PleaseSelectTwoItems": "குறைந்தது இரண்டு உருப்படிகளைத் தேர்ந்தெடுக்கவும்.", + "PleaseRestartServerName": "ஜெல்லிஃபினை {0} இல் மறுதொடக்கம் செய்யுங்கள்.", + "PleaseEnterNameOrId": "ஒரு பெயர் அல்லது வெளிப்புற ஐடியை உள்ளிடவும்.", + "PleaseConfirmPluginInstallation": "மேலே உள்ளதைப் படித்திருப்பதை உறுதிப்படுத்த சரி என்பதைக் கிளிக் செய்து, சொருகி நிறுவலைத் தொடர விரும்புகிறீர்கள்.", + "PleaseAddAtLeastOneFolder": "சேர் பொத்தானைக் கிளிக் செய்வதன் மூலம் இந்த நூலகத்தில் குறைந்தது ஒரு கோப்புறையாவது சேர்க்கவும்.", + "Played": "வாசிக்கப்பட்டது", + "PlaybackErrorNoCompatibleStream": "இந்த கிளையன்ட் ஊடகத்துடன் பொருந்தாது மற்றும் சேவையகம் இணக்கமான ஊடக வடிவமைப்பை அனுப்பவில்லை.", + "PlayNextEpisodeAutomatically": "அடுத்த அத்தியாயத்தை தானாக இயக்கு", + "PlayNext": "அடுத்ததை வாசிக்கவும்" } From 318ade8bbe0f8fd736ff57e886fdb1a453b35ee7 Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 15 Aug 2020 16:33:27 +0000 Subject: [PATCH 093/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 117 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 116 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index edb5806508..20d99250fb 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -1352,5 +1352,120 @@ "Played": "வாசிக்கப்பட்டது", "PlaybackErrorNoCompatibleStream": "இந்த கிளையன்ட் ஊடகத்துடன் பொருந்தாது மற்றும் சேவையகம் இணக்கமான ஊடக வடிவமைப்பை அனுப்பவில்லை.", "PlayNextEpisodeAutomatically": "அடுத்த அத்தியாயத்தை தானாக இயக்கு", - "PlayNext": "அடுத்ததை வாசிக்கவும்" + "PlayNext": "அடுத்ததை வாசிக்கவும்", + "Yesterday": "நேற்று", + "Yes": "ஆம்", + "YadifBob": "யடிஃப் பாப்", + "Yadif": "யடிஃப்", + "XmlTvSportsCategoriesHelp": "இந்த வகைகளைக் கொண்ட நிகழ்ச்சிகள் விளையாட்டுத் திட்டங்களாகக் காட்டப்படும். '|' உடன் பலவற்றைப் பிரிக்கவும்.", + "XmlTvPathHelp": "XMLTV கோப்புக்கான பாதை. ஜெல்லிஃபின் இந்த கோப்பைப் படித்து புதுப்பிப்புகளுக்கு அவ்வப்போது சரிபார்க்கும். கோப்பை உருவாக்கி புதுப்பிக்க நீங்கள் பொறுப்பு.", + "XmlTvNewsCategoriesHelp": "இந்த வகைகளைக் கொண்ட நிகழ்ச்சிகள் செய்தித் திட்டங்களாகக் காட்டப்படும். '|' உடன் பலவற்றைப் பிரிக்கவும்.", + "XmlTvMovieCategoriesHelp": "இந்த வகைகளைக் கொண்ட நிகழ்ச்சிகள் திரைப்படங்களாக காண்பிக்கப்படும். '|' உடன் பலவற்றைப் பிரிக்கவும்.", + "XmlTvKidsCategoriesHelp": "இந்த வகைகளைக் கொண்ட நிகழ்ச்சிகள் குழந்தைகளுக்கான நிரல்களாக காண்பிக்கப்படும். '|' உடன் பலவற்றைப் பிரிக்கவும்.", + "XmlDocumentAttributeListHelp": "இந்த பண்புக்கூறுகள் ஒவ்வொரு XML பதிலின் மூல உறுப்புக்கும் பயன்படுத்தப்படுகின்றன.", + "Writers": "எழுத்தாளர்கள்", + "Writer": "எழுத்தாளர்", + "WizardCompleted": "இப்போது நமக்குத் தேவை அவ்வளவுதான். ஜெல்லிஃபின் உங்கள் ஊடக நூலகம் பற்றிய தகவல்களை சேகரிக்கத் தொடங்கியுள்ளார். எங்கள் சில பயன்பாடுகளைப் பாருங்கள், பின்னர் டாஷ்போர்டு ஐக் காண பினிஷ் என்பதைக் கிளிக் செய்க.", + "Whitelist": "அனுமதிப்பட்டியல்", + "WelcomeToProject": "ஜெல்லிஃபினுக்கு வருக!", + "Wednesday": "புதன்கிழமை", + "Watched": "ஏற்கனவே பார்த்தேன்", + "ViewPlaybackInfo": "பின்னணி தகவலைக் காண்க", + "ViewAlbumArtist": "ஆல்பம் கலைஞரைக் காண்க", + "ViewAlbum": "ஆல்பத்தைக் காண்க", + "Vertical": "செங்குத்தாக", + "ValueVideoCodec": "வீடியோ கோடெக்: {0}", + "ValueTimeLimitSingleHour": "கால எல்லை: 1 மணி நேரம்", + "ValueTimeLimitMultiHour": "கால எல்லை: {0} மணி", + "ValueSongCount": "{0} பாடல்கள்", + "ValueSeriesCount": "{0} தொடர்", + "ValueSeconds": "{0} விநாடிகள்", + "ValueOneSong": "1 பாடல்", + "ValueOneSeries": "1 தொடர்", + "ValueOneMusicVideo": "1 இசை வீடியோ", + "ValueOneMovie": "1 திரைப்படம்", + "ValueOneEpisode": "1 அத்தியாயம்", + "ValueOneAlbum": "1 ஆல்பம்", + "ValueMusicVideoCount": "{0} இசை வீடியோக்கள்", + "ValueMovieCount": "{0} திரைப்படங்கள்", + "ValueMinutes": "{0} நிமிடம்", + "ValueEpisodeCount": "{0} அத்தியாயங்கள்", + "ValueDiscNumber": "வட்டு {0}", + "ValueContainer": "கொள்கலன்: {0}", + "ValueConditions": "நிபந்தனைகள்: {0}", + "ValueCodec": "கோடெக்: {0}", + "ValueAudioCodec": "ஆடியோ கோடெக்: {0}", + "ValueAlbumCount": "{0} ஆல்பங்கள்", + "UserProfilesIntro": "சிறுமணி காட்சி அமைப்புகள், விளையாட்டு நிலை மற்றும் பெற்றோரின் கட்டுப்பாடுகள் ஆகியவற்றைக் கொண்ட பயனர் சுயவிவரங்களுக்கான ஆதரவை ஜெல்லிஃபின் கொண்டுள்ளது.", + "UserAgentHelp": "தனிப்பயன் பயனர் முகவர் HTTP தலைப்பை வழங்கவும்.", + "Upload": "பதிவேற்றவும்", + "Up": "மேலே", + "Unrated": "மதிப்பிடப்படாதது", + "Unplayed": "காட்டப்படாதது", + "Unmute": "முடக்கு நீக்கம்", + "HeaderUninstallPlugin": "செருகுநிரலை நிறுவல் நீக்கு", + "UninstallPluginConfirmation": "{0} ஐ நிறுவல் நீக்க விரும்புகிறீர்களா?", + "Uniform": "சீராக", + "TvLibraryHelp": "{0} டிவி பெயரிடும் வழிகாட்டியை {1} மதிப்பாய்வு செய்யவும்.", + "Tuesday": "செவ்வாய்", + "Transcoding": "டிரான்ஸ்கோடிங்", + "Trailers": "டிரெய்லர்கள்", + "TrackCount": "{0} தடங்கள்", + "Track": "தடம்", + "TitlePlayback": "பின்னணி", + "TitleHostingSettings": "ஹோஸ்டிங் அமைப்புகள்", + "TitleHardwareAcceleration": "வன்பொருள் முடுக்கம்", + "Thursday": "வியாழக்கிழமை", + "Thumb": "சிறுபடம்", + "ThisWizardWillGuideYou": "இந்த வழிகாட்டி அமைவு செயல்முறை மூலம் உங்களுக்கு வழிகாட்ட உதவும். தொடங்க, நீங்கள் விரும்பும் மொழியைத் தேர்ந்தெடுக்கவும்.", + "TheseSettingsAffectSubtitlesOnThisDevice": "இந்த அமைப்புகள் இந்த சாதனத்தில் வசன வரிகள் பாதிக்கின்றன", + "ThemeVideos": "தீம் வீடியோக்கள்", + "ThemeSongs": "தீம் பாடல்கள்", + "TellUsAboutYourself": "உங்களைப் பற்றி சொல்லுங்கள்", + "TagsValue": "குறிச்சொற்கள்: {0}", + "Tags": "குறிச்சொற்கள்", + "TabUpcoming": "வரவிருக்கும்", + "TabTrailers": "டிரெய்லர்கள்", + "TabStreaming": "ஸ்ட்ரீமிங்", + "TabSettings": "அமைப்புகள்", + "TabServer": "சேவையகம்", + "TabScheduledTasks": "திட்டமிடப்பட்ட பணிகள்", + "TabResumeSettings": "மீண்டும் தொடர்", + "TabResponses": "பதில்கள்", + "TabProfiles": "சுயவிவரங்கள்", + "TabProfile": "சுயவிவரம்", + "TabPlugins": "செருகுநிரல்கள்", + "TabParentalControl": "பெற்றோர் கட்டுப்பாடு", + "TabOther": "மற்றவை", + "TabNotifications": "அறிவிப்புகள்", + "TabNfoSettings": "NFO அமைப்புகள்", + "TabNetworking": "நெட்வொர்க்கிங்", + "TabNetworks": "நெட்வொர்க்குகள்", + "TabMyPlugins": "எனது செருகுநிரல்கள்", + "TabMusicVideos": "இசை கானொளி", + "TabMusic": "இசை", + "TabLogs": "பதிவுகள்", + "TabLatest": "அண்மை", + "TabInfo": "தகவல்", + "TabEpisodes": "அத்தியாயங்கள்", + "TabDirectPlay": "நேரடி நாடகம்", + "TabDashboard": "டாஷ்போர்டு", + "TabContainers": "கொள்கலன்கள்", + "TabCodecs": "கோடெக்குகள்", + "TabRepositories": "களஞ்சியங்கள்", + "TabCatalog": "அட்டவணை", + "TabAlbumArtists": "ஆல்பம் கலைஞர்கள்", + "TabAdvanced": "மேம்படுத்தபட்ட", + "TabAccess": "அணுகல்", + "TV": "தொலைக்காட்சி", + "SystemDlnaProfilesHelp": "கணினி சுயவிவரங்கள் படிக்க மட்டுமே. கணினி சுயவிவரத்திற்கான மாற்றங்கள் புதிய தனிப்பயன் சுயவிவரத்தில் சேமிக்கப்படும்.", + "SyncPlayAccessHelp": "இந்த பயனர் ஒத்திசைவு அம்சத்திற்கு அணுகல் அளவைத் தேர்ந்தெடுக்கவும். ஒத்திசைவு பிளேபேக்கை பிற சாதனங்களுடன் ஒத்திசைக்க உதவுகிறது.", + "Sunday": "ஞாயிற்றுக்கிழமை", + "Suggestions": "பரிந்துரைகள்", + "Subtitles": "வசன வரிகள்", + "SubtitleOffset": "வசன ஆஃப்செட்", + "SubtitleDownloadersHelp": "முன்னுரிமைக்கு ஏற்ப உங்களுக்கு விருப்பமான வசன பதிவிறக்கிகளை இயக்கவும் தரவரிசைப்படுத்தவும்.", + "SubtitleAppearanceSettingsDisclaimer": "இந்த அமைப்புகள் வரைகலை வசன வரிகள் (PGD, DVD போன்றவை) அல்லது அவற்றின் சொந்த பாணியை உட்பொதிக்கும் ASS/SSA வசன வரிகள் பொருந்தாது.", + "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "இந்தச் சாதனத்தால் தொடங்கப்பட்ட எந்த Chromecast இயக்கத்திற்கும் இந்த அமைப்புகள் பொருந்தும்.", + "Studios": "ஸ்டுடியோக்கள்" } From a00aba31d6375ca07574e9b514aedd712a610003 Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 15 Aug 2020 17:06:51 +0000 Subject: [PATCH 094/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index 20d99250fb..35c4f265b7 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -1467,5 +1467,6 @@ "SubtitleDownloadersHelp": "முன்னுரிமைக்கு ஏற்ப உங்களுக்கு விருப்பமான வசன பதிவிறக்கிகளை இயக்கவும் தரவரிசைப்படுத்தவும்.", "SubtitleAppearanceSettingsDisclaimer": "இந்த அமைப்புகள் வரைகலை வசன வரிகள் (PGD, DVD போன்றவை) அல்லது அவற்றின் சொந்த பாணியை உட்பொதிக்கும் ASS/SSA வசன வரிகள் பொருந்தாது.", "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "இந்தச் சாதனத்தால் தொடங்கப்பட்ட எந்த Chromecast இயக்கத்திற்கும் இந்த அமைப்புகள் பொருந்தும்.", - "Studios": "ஸ்டுடியோக்கள்" + "Studios": "ஸ்டுடியோக்கள்", + "PathNotFound": "பாதை கண்டுபிடிக்க முடியவில்லை. பாதை செல்லுபடியாகும் என்பதை உறுதிசெய்து மீண்டும் முயற்சிக்கவும்." } From bce3f7f408a61a890c7443ad2a05ecdd6453e35b Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Sat, 15 Aug 2020 17:07:03 +0000 Subject: [PATCH 095/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index 35c4f265b7..d31fb8872e 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -1468,5 +1468,26 @@ "SubtitleAppearanceSettingsDisclaimer": "இந்த அமைப்புகள் வரைகலை வசன வரிகள் (PGD, DVD போன்றவை) அல்லது அவற்றின் சொந்த பாணியை உட்பொதிக்கும் ASS/SSA வசன வரிகள் பொருந்தாது.", "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "இந்தச் சாதனத்தால் தொடங்கப்பட்ட எந்த Chromecast இயக்கத்திற்கும் இந்த அமைப்புகள் பொருந்தும்.", "Studios": "ஸ்டுடியோக்கள்", - "PathNotFound": "பாதை கண்டுபிடிக்க முடியவில்லை. பாதை செல்லுபடியாகும் என்பதை உறுதிசெய்து மீண்டும் முயற்சிக்கவும்." + "PathNotFound": "பாதை கண்டுபிடிக்க முடியவில்லை. பாதை செல்லுபடியாகும் என்பதை உறுதிசெய்து மீண்டும் முயற்சிக்கவும்.", + "SubtitleVerticalPositionHelp": "உரை தோன்றும் வரி எண். நேர்மறை எண்கள் மேல் கீழே குறிக்கின்றன. எதிர்மறை எண்கள் கீழே மேலே குறிக்கின்றன.", + "LabelSubtitleVerticalPosition": "செங்குத்து நிலை:", + "ClearQueue": "வரிசையை அழிக்கவும்", + "StopPlayback": "பிளேபேக்கை நிறுத்துங்கள்", + "ButtonPlayer": "பிளேயர்", + "ButtonCast": "நடிகர்கள்", + "ButtonSyncPlay": "ஒத்திசைவு", + "EnableBlurHashHelp": "இன்னும் ஏற்றப்படும் படங்கள் தனித்துவமான ஒதுக்கிடத்துடன் காண்பிக்கப்படும்.", + "EnableBlurHash": "படங்களுக்கு மங்கலான ஒதுக்கிடங்களை இயக்கவும்", + "UnsupportedPlayback": "DRM ஆல் பாதுகாக்கப்பட்ட உள்ளடக்கத்தை ஜெல்லிஃபின் டிக்ரிப்ட் செய்ய முடியாது, ஆனால் பாதுகாக்கப்பட்ட தலைப்புகள் உட்பட எல்லா உள்ளடக்கமும் பொருட்படுத்தாமல் முயற்சிக்கப்படும். குறியாக்கம் அல்லது ஊடாடும் தலைப்புகள் போன்ற பிற ஆதரிக்கப்படாத அம்சங்கள் காரணமாக சில கோப்புகள் முற்றிலும் கருப்பு நிறத்தில் தோன்றக்கூடும்.", + "OnApplicationStartup": "பயன்பாட்டு தொடக்கத்தில்", + "EveryXHours": "ஒவ்வொரு {0} மணி நேரமும்", + "EveryHour": "ஒவ்வொரு மணி நேரமும்", + "EveryXMinutes": "ஒவ்வொரு {0} நிமிடங்களும்", + "OnWakeFromSleep": "தூக்கத்திலிருந்து எழுந்தவுடன்", + "WeeklyAt": "{1} இல் {0}", + "DailyAt": "தினசரி {0}", + "LastSeen": "கடைசியாக பார்த்தது {0}", + "PersonRole": "{0} என", + "ListPaging": "{0} - {2} இன் {1}", + "WriteAccessRequired": "ஜெல்லிஃபினுக்கு இந்த கோப்புறையில் எழுத அணுகல் தேவை. எழுதும் அணுகலை உறுதிசெய்து மீண்டும் முயற்சிக்கவும்." } From 7952b75ca24aaffeaac8834f24880e502f5e344e Mon Sep 17 00:00:00 2001 From: Ian Walton Date: Sat, 15 Aug 2020 14:33:31 -0400 Subject: [PATCH 096/285] Show seek buttons when playing video on mobile. --- src/components/remotecontrol/remotecontrol.css | 15 ++++----------- src/components/remotecontrol/remotecontrol.js | 10 ++++++++-- 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/src/components/remotecontrol/remotecontrol.css b/src/components/remotecontrol/remotecontrol.css index c260799585..1c31b4382b 100644 --- a/src/components/remotecontrol/remotecontrol.css +++ b/src/components/remotecontrol/remotecontrol.css @@ -222,18 +222,10 @@ margin: 0; } -.layout-mobile .nowPlayingSecondaryButtons .btnShuffleQueue { - display: none; -} - .layout-mobile .nowPlayingSecondaryButtons .volumecontrol { display: none; } -.layout-mobile .nowPlayingSecondaryButtons .btnRepeat { - display: none; -} - .layout-desktop .nowPlayingInfoButtons .btnRepeat, .layout-tv .nowPlayingInfoButtons .btnRepeat { display: none; @@ -362,7 +354,8 @@ border-radius: 0; } - .nowPlayingInfoButtons .btnRepeat { + .nowPlayingInfoButtons .btnRepeat, + .nowPlayingInfoButtons .btnRewind { position: absolute; left: 0; margin-left: 0; @@ -370,7 +363,8 @@ font-size: smaller; } - .nowPlayingInfoButtons .btnShuffleQueue { + .nowPlayingInfoButtons .btnShuffleQueue, + .nowPlayingInfoButtons .btnFastForward { position: absolute; right: 0; margin-right: 0; @@ -468,7 +462,6 @@ } @media all and (max-width: 63em) { - .nowPlayingSecondaryButtons .repeatToggleButton, .nowPlayingInfoButtons .playlist .listItemMediaInfo, .nowPlayingInfoButtons .btnStop { display: none !important; diff --git a/src/components/remotecontrol/remotecontrol.js b/src/components/remotecontrol/remotecontrol.js index 6048c918c7..6a1355047c 100644 --- a/src/components/remotecontrol/remotecontrol.js +++ b/src/components/remotecontrol/remotecontrol.js @@ -332,8 +332,14 @@ export default function () { buttonVisible(context.querySelector('.btnNextTrack'), item != null); buttonVisible(context.querySelector('.btnPreviousTrack'), item != null); if (layoutManager.mobile) { - buttonVisible(context.querySelector('.btnRewind'), false); - buttonVisible(context.querySelector('.btnFastForward'), false); + const playingVideo = playbackManager.isPlayingVideo() && item != null; + const playingAudio = !playbackManager.isPlayingVideo() && item != null; + buttonVisible(context.querySelector('.btnRepeat'), playingAudio); + buttonVisible(context.querySelector('.btnShuffleQueue'), playingAudio); + buttonVisible(context.querySelector('.btnRewind'), playingVideo); + buttonVisible(context.querySelector('.btnFastForward'), playingVideo); + buttonVisible(context.querySelector('.nowPlayingSecondaryButtons .btnShuffleQueue'), playingVideo); + buttonVisible(context.querySelector('.nowPlayingSecondaryButtons .btnRepeat'), playingVideo); } else { buttonVisible(context.querySelector('.btnRewind'), item != null); buttonVisible(context.querySelector('.btnFastForward'), item != null); From 5e87c87c023f3befc0ae19819ef1bd3e31a5f278 Mon Sep 17 00:00:00 2001 From: Cameron Date: Sun, 16 Aug 2020 12:17:37 +0100 Subject: [PATCH 097/285] Update plugin.js --- src/plugins/sessionPlayer/plugin.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/plugins/sessionPlayer/plugin.js b/src/plugins/sessionPlayer/plugin.js index d4cbb8345f..cbeb6f34b4 100644 --- a/src/plugins/sessionPlayer/plugin.js +++ b/src/plugins/sessionPlayer/plugin.js @@ -450,6 +450,9 @@ class SessionPlayer { }); } + getRepeatMode() { + } + setQueueShuffleMode(mode) { sendCommandByName(this, 'SetShuffleQueue', { ShuffleMode: mode @@ -484,6 +487,9 @@ class SessionPlayer { return Promise.resolve([]); } + getCurrentPlaylistItemId() { + } + setCurrentPlaylistItem(playlistItemId) { return Promise.resolve(); } From f62014a2d4bca871afd8e9c916cb934ec8276933 Mon Sep 17 00:00:00 2001 From: Cameron Date: Sun, 16 Aug 2020 12:19:38 +0100 Subject: [PATCH 098/285] Update plugin.js --- src/plugins/experimentalWarnings/plugin.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/plugins/experimentalWarnings/plugin.js b/src/plugins/experimentalWarnings/plugin.js index 7450040541..bc301f01af 100644 --- a/src/plugins/experimentalWarnings/plugin.js +++ b/src/plugins/experimentalWarnings/plugin.js @@ -2,8 +2,6 @@ import globalize from 'globalize'; import * as userSettings from 'userSettings'; import appHost from 'apphost'; -/*eslint prefer-const: "error"*/ - // TODO: Replace with date-fns // https://stackoverflow.com/questions/6117814/get-week-of-year-in-javascript-like-in-php function getWeek(date) { From bc8303aabc2ff6cf6d58e4418bd3c941f54bfc4c Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Sun, 16 Aug 2020 12:23:07 +0000 Subject: [PATCH 099/285] Translated using Weblate (Russian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ru/ --- src/strings/ru.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/ru.json b/src/strings/ru.json index 9989a4c47e..14fb04f16f 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -23,7 +23,7 @@ "AllowMediaConversionHelp": "Предоставить или запретить доступ к компоненте преобразования медиаданных.", "AllowOnTheFlySubtitleExtraction": "Разрешить динамическое извлечение субтитров", "AllowOnTheFlySubtitleExtractionHelp": "Встроенные субтитры могут быть извлечены из видео и доставлены клиентам в виде обычного текста, в целях предотвращения перекодировки видео. На некоторых системах это может занять продолжительное время и вызвать задержки воспроизведения видео в процессе извлечения. Отключите этот параметр, чтобы встроенные субтитры записывались при перекодировании видео, если они изначально не поддерживаются клиентским устройством.", - "AllowRemoteAccess": "Разрешить удалённый доступ к данному серверу Jellyfin Server.", + "AllowRemoteAccess": "Разрешить удалённый доступ к данному серверу.", "AllowRemoteAccessHelp": "Если флажок снят, то все удалённые подключения будут заблокированы.", "AllowedRemoteAddressesHelp": "Список разделённых запятыми IP-адресов или записей IP/netmask сетей, которым разрешено удалённое соединение. Если оставить это поле пустым, то будут разрешены все удаленные адреса.", "AlwaysPlaySubtitles": "Воспроизводить всегда", From e7a4cc28c7ff7c51c6cfaf41b71f67ce6e886430 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sun, 16 Aug 2020 15:07:47 +0200 Subject: [PATCH 100/285] Remove chromecastHelper definition --- src/scripts/site.js | 1 - 1 file changed, 1 deletion(-) diff --git a/src/scripts/site.js b/src/scripts/site.js index 14f9851adc..3f97826743 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -655,7 +655,6 @@ function initClient() { pluginManager: componentsPath + '/pluginManager', packageManager: componentsPath + '/packageManager', screensaverManager: componentsPath + '/screensavermanager', - chromecastHelper: 'plugins/chromecastPlayer/chromecastHelpers', appRouter: 'components/appRouter' }; From db3773dbc37f79a0e20646d3643b792d150c0a67 Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Sun, 16 Aug 2020 12:45:23 +0000 Subject: [PATCH 101/285] Translated using Weblate (Russian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ru/ --- src/strings/ru.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/strings/ru.json b/src/strings/ru.json index 14fb04f16f..a3aabd93c3 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -204,7 +204,7 @@ "EndsAtValue": "Конец в {0}", "Episodes": "Эпизоды", "ErrorAddingListingsToSchedulesDirect": "Произошла ошибка добавления списка сопоставления в учётную запись Schedules Direct. В Schedules Direct разрешено только ограниченное число таких списков на каждую учётную запись. Вам может понадобится войти на сайт Schedules Direct, и изъять иные перечни из своей учётной записи, прежде чем приступить.", - "ErrorAddingMediaPathToVirtualFolder": "Произошла ошибка при добавлении пути к медиаданным. Убедитесь, что путь является действительным, а процесс Jellyfin Server имеет доступ к этому расположению.", + "ErrorAddingMediaPathToVirtualFolder": "Произошла ошибка при добавлении пути к медиаданным. Убедитесь, что путь действителен и Jellyfin имеет доступ к этому расположению.", "ErrorAddingTunerDevice": "Произошла ошибка при добавлении тюнерного устройства. Убедитесь, что оно доступно и повторите попытку.", "ErrorAddingXmlTvFile": "Произошла ошибка при доступе к XMLTV-файлу. Убедитесь, что файл существует и повторите попытку.", "ErrorDeletingItem": "Произошла ошибка при удалении элемента с Jellyfin Server. Проверьте, что у Jellyfin Server имеется доступ на запись в медиапапку и повторите попытку.", @@ -1473,5 +1473,7 @@ "LabelUnstable": "Нестабильная", "LabelSubtitleVerticalPosition": "Вертикальная позиция:", "SubtitleVerticalPositionHelp": "Номер строки, где появляется текст. Положительные числа означают сверху вниз. Отрицательные числа означают снизу вверх.", - "Preview": "Предварительный просмотр" + "Preview": "Предварительный просмотр", + "MessageGetInstalledPluginsError": "Произошла ошибка при получении списка установленных плагинов.", + "MessagePluginInstallError": "Во время установки плагина произошла ошибка." } From 7756b3164b3808660341ab2021061381ddace931 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sun, 16 Aug 2020 15:46:29 +0200 Subject: [PATCH 102/285] Fix suggestions --- src/components/packageManager.js | 4 ++-- src/components/pluginManager.js | 2 -- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/components/packageManager.js b/src/components/packageManager.js index c20f6c5d3e..2a15a14f34 100644 --- a/src/components/packageManager.js +++ b/src/components/packageManager.js @@ -73,11 +73,11 @@ import pluginManager from 'pluginManager'; } addPackage(pkg) { - this.packagesList = this.packagesList.filter((p) => { + this.#packagesList = this.#packagesList.filter((p) => { return p.name !== pkg.name; }); - this.packagesList.push(pkg); + this.#packagesList.push(pkg); } removeUrl(url) { diff --git a/src/components/pluginManager.js b/src/components/pluginManager.js index b662cca836..55a5c230ff 100644 --- a/src/components/pluginManager.js +++ b/src/components/pluginManager.js @@ -135,8 +135,6 @@ import globalize from 'globalize'; })[0]; } - console.dir(plugin); - var url = plugin.baseUrl + '/' + path; if (addCacheParam) { From 667576e0567eb64f1470a83686b96b9ba578d367 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sun, 16 Aug 2020 16:12:33 +0200 Subject: [PATCH 103/285] Fix suggestions --- src/components/scrollManager.js | 4 +--- src/plugins/chromecastPlayer/chromecastHelper.js | 2 +- src/scripts/site.js | 2 -- 3 files changed, 2 insertions(+), 6 deletions(-) diff --git a/src/components/scrollManager.js b/src/components/scrollManager.js index 4ee31a6275..c2cbfb7587 100644 --- a/src/components/scrollManager.js +++ b/src/components/scrollManager.js @@ -532,9 +532,7 @@ import layoutManager from 'layoutManager'; if (isEnabled()) { dom.addEventListener(window, 'focusin', function(e) { - setTimeout(function() { - scrollToElement(e.target, useSmoothScroll()); - }, 0); + scrollToElement(e.target, useSmoothScroll()); }, {capture: true}); } diff --git a/src/plugins/chromecastPlayer/chromecastHelper.js b/src/plugins/chromecastPlayer/chromecastHelper.js index 5893a5fe20..7aac76c544 100644 --- a/src/plugins/chromecastPlayer/chromecastHelper.js +++ b/src/plugins/chromecastPlayer/chromecastHelper.js @@ -170,7 +170,7 @@ function isLocalIpAddress(address) { return false; } -function getServerAddress(apiClient) { +export function getServerAddress(apiClient) { const serverAddress = apiClient.serverAddress(); if (isValidIpAddress(serverAddress) && !isLocalIpAddress(serverAddress)) { diff --git a/src/scripts/site.js b/src/scripts/site.js index bf0fa75efa..08e75cfd1a 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -425,7 +425,6 @@ function initClient() { keyboardnavigation.enable(); }); require(['mouseManager']); - require(['focusPreventScroll']); require(['autoFocuser'], function(autoFocuser) { autoFocuser.enable(); }); @@ -819,7 +818,6 @@ function initClient() { return viewManager; }); define('slideshow', [componentsPath + '/slideshow/slideshow'], returnFirstDependency); - define('focusPreventScroll', ['legacy/focusPreventScroll'], returnFirstDependency); define('userdataButtons', [componentsPath + '/userdatabuttons/userdatabuttons'], returnFirstDependency); define('listView', [componentsPath + '/listview/listview'], returnFirstDependency); define('indicators', [componentsPath + '/indicators/indicators'], returnFirstDependency); From ea41aeaa2bfff1de4dff23cb6104306a68a0ec0d Mon Sep 17 00:00:00 2001 From: Ian Walton Date: Sun, 16 Aug 2020 13:37:25 -0400 Subject: [PATCH 104/285] Fix syncplay menu. (Single line fix.) --- src/scripts/libraryMenu.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/scripts/libraryMenu.js b/src/scripts/libraryMenu.js index d67250d5cb..700fb52ad9 100644 --- a/src/scripts/libraryMenu.js +++ b/src/scripts/libraryMenu.js @@ -8,7 +8,7 @@ import appRouter from 'appRouter'; import appHost from 'apphost'; import playbackManager from 'playbackManager'; import syncPlayManager from 'syncPlayManager'; -import { show as showGroupSelectionMenu } from 'groupSelectionMenu'; +import * as groupSelectionMenu from 'groupSelectionMenu'; import browser from 'browser'; import globalize from 'globalize'; import imageHelper from 'scripts/imagehelper'; @@ -208,7 +208,7 @@ import 'flexStyles'; function onSyncButtonClicked() { const btn = this; - showGroupSelectionMenu(btn); + groupSelectionMenu.show(btn); } function onSyncPlayEnabled(event, enabled) { From 458587475cd619a05f7b9f592d873310e09c37be Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sun, 16 Aug 2020 21:07:49 +0200 Subject: [PATCH 105/285] Add timeouts to focus --- src/components/scrollManager.js | 4 +++- src/elements/emby-scroller/emby-scroller.js | 10 ++++++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/components/scrollManager.js b/src/components/scrollManager.js index c2cbfb7587..4ee31a6275 100644 --- a/src/components/scrollManager.js +++ b/src/components/scrollManager.js @@ -532,7 +532,9 @@ import layoutManager from 'layoutManager'; if (isEnabled()) { dom.addEventListener(window, 'focusin', function(e) { - scrollToElement(e.target, useSmoothScroll()); + setTimeout(function() { + scrollToElement(e.target, useSmoothScroll()); + }, 0); }, {capture: true}); } diff --git a/src/elements/emby-scroller/emby-scroller.js b/src/elements/emby-scroller/emby-scroller.js index fb903d839c..9812ce3cc7 100644 --- a/src/elements/emby-scroller/emby-scroller.js +++ b/src/elements/emby-scroller/emby-scroller.js @@ -17,10 +17,12 @@ import 'css!./emby-scroller'; function initCenterFocus(elem, scrollerInstance) { dom.addEventListener(elem, 'focus', function (e) { - const focused = focusManager.focusableParent(e.target); - if (focused) { - scrollerInstance.toCenter(focused); - } + setTimeout(function() { + const focused = focusManager.focusableParent(e.target); + if (focused) { + scrollerInstance.toCenter(focused); + } + }, 0); }, { capture: true, passive: true From bc6a1d5734c3b5a688d12d20387b1670c71814cd Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sun, 16 Aug 2020 21:14:18 +0200 Subject: [PATCH 106/285] Fix linting issue --- src/components/appRouter.js | 33 --------------------------------- 1 file changed, 33 deletions(-) diff --git a/src/components/appRouter.js b/src/components/appRouter.js index 9734925657..28826c55cc 100644 --- a/src/components/appRouter.js +++ b/src/components/appRouter.js @@ -692,18 +692,12 @@ class AppRouter { return 'dashboard.html'; } -<<<<<<< HEAD - function show(path, options) { - if (path.indexOf('/') !== 0 && path.indexOf('://') === -1) { - path = '/' + path; -======= if (item === 'recordedtv') { return 'livetv.html?tab=3&serverId=' + options.serverId; } if (item === 'nextup') { return 'list.html?type=nextup&serverId=' + options.serverId; ->>>>>>> upstream/master } if (item === 'list') { @@ -851,31 +845,4 @@ class AppRouter { } } -<<<<<<< HEAD - appRouter.addRoute = addRoute; - appRouter.param = param; - appRouter.back = back; - appRouter.show = show; - appRouter.start = start; - appRouter.baseUrl = baseUrl; - appRouter.canGoBack = canGoBack; - appRouter.current = current; - appRouter.beginConnectionWizard = beginConnectionWizard; - appRouter.invokeShortcut = invokeShortcut; - appRouter.showItem = showItem; - appRouter.setTransparency = setTransparency; - appRouter.getRoutes = getRoutes; - appRouter.pushState = pushState; - appRouter.enableNativeHistory = enableNativeHistory; - appRouter.handleAnchorClick = page.clickHandler; - appRouter.TransparencyLevel = { - None: 0, - Backdrop: 1, - Full: 2 - }; - - return appRouter; -}); -======= export default new AppRouter(); ->>>>>>> upstream/master From 92531427df800276b473442793c94294f6ca4d90 Mon Sep 17 00:00:00 2001 From: Professor Vogelbloem Date: Sun, 16 Aug 2020 21:01:29 +0000 Subject: [PATCH 107/285] Translated using Weblate (Dutch) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/nl/ --- src/strings/nl.json | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/strings/nl.json b/src/strings/nl.json index 8d5e5c78a4..81a74fcb2c 100644 --- a/src/strings/nl.json +++ b/src/strings/nl.json @@ -22,7 +22,7 @@ "AllowMediaConversionHelp": "Toegang verlenen of weigeren tot de mediaconversie functie.", "AllowOnTheFlySubtitleExtraction": "Directe ondertitel extractie toestaan", "AllowOnTheFlySubtitleExtractionHelp": "Ingebakken ondertitels kunnen uit de video's gehaald worden en als tekst bezorgd worden aan de clients om transcodering te helpen voorkomen. Op sommige systemen kan dit een lange tijd duren en dit er voor zorgen dat het afspelen van video stopt tijdens de extractie. Schakel dit uit om ingebakken ondertiteling in de video te laten branden met transcodering als deze niet standaard ondersteund worden door het afspeelapparaat.", - "AllowRemoteAccess": "Externe verbindingen met deze Jellyfin Server toestaan.", + "AllowRemoteAccess": "Externe verbindingen met deze server toestaan.", "AllowRemoteAccessHelp": "Indien niet aangevinkt worden alle externe verbindingen geblokkeerd.", "AllowedRemoteAddressesHelp": "Komma-gescheiden lijst van IP-adressen of IP/netmask adressen voor netwerken die op afstand verbinding mogen maken. Indien blanco, worden alle externe adressen toegestaan.", "AlwaysPlaySubtitles": "Altijd afspelen", @@ -189,10 +189,10 @@ "EndsAtValue": "Eindigt om {0}", "Episodes": "Afleveringen", "ErrorAddingListingsToSchedulesDirect": "Er ging iets mis bij het toevoegen van de lineup aan uw Schedules Direct account. Schedules Direct staat maar een beperkt aantal lineups per account toe. Het kan nodig zijn dat u zich aan moet melden op de Schedules Direct website en andere lineups moet verwijderen voordat u verder kunt.", - "ErrorAddingMediaPathToVirtualFolder": "Er ging iets mis bij het toevoegen van het media pad. Controleer of het pad klopt en of het Jellyfin server process toegang heeft tot het pad.", + "ErrorAddingMediaPathToVirtualFolder": "Er ging iets mis bij het toevoegen van het media pad. Controleer of het pad klopt en of Jellyfin toegang heeft tot de locatie.", "ErrorAddingTunerDevice": "Er was een fout bij het toevoegen van de tuner. Controleer of deze toegankelijk is en probeer het opnieuw.", "ErrorAddingXmlTvFile": "Er is een fout opgetreden met de toegang tot XMLTV bestand. Zorg ervoor dat het bestand bestaat en probeer het opnieuw.", - "ErrorDeletingItem": "Er was een probleem bij het verwijderen van het item in Jellyfin Server. Controleer dat Jellyfin Server schrijfrechten op de map heeft en probeer het opnieuw.", + "ErrorDeletingItem": "Er was een probleem bij het verwijderen van het item in de server. Controleer of Jellyfin schrijfrechten op de map heeft en probeer het opnieuw.", "ErrorGettingTvLineups": "Er was een fout bij het downloaden van de TV lineup. Controleer of uw gegevens correct zijn en probeer het opnieuw.", "ErrorStartHourGreaterThanEnd": "Eind tijd moet na de start tijd liggen.", "ErrorPleaseSelectLineup": "Selecteer een lineup en probeer het opnieuw. Als er geen lineups beschibaar zijn, controleer dan of uw gebruikersnaam, wachtwoord en postcode correct zijn.", @@ -424,7 +424,7 @@ "Identify": "Identificeer", "Images": "Afbeeldingen", "ImportFavoriteChannelsHelp": "Alleen kanalen die als favoriet aangemerkt zijn op de tuner zullen geïmporteerd worden.", - "ImportMissingEpisodesHelp": "Indien ingeschakeld, wordt informatie over ontbrekende afleveringen in uw Jellyfin de database geïmporteerd en weergegeven in de seizoenen en series. Dit kan aanzienlijk langere bibliotheekscans veroorzaken.", + "ImportMissingEpisodesHelp": "Informatie over ontbrekende afleveringen zal in uw database worden geïmporteerd en weergegeven in seizoenen en series. Dit kan aanzienlijk langere bibliotheekscans veroorzaken.", "InstallingPackage": "Installeren van {0} (versie {1})", "Kids": "Kinderen", "Label3DFormat": "3D formaat:", @@ -454,7 +454,7 @@ "LabelAudioLanguagePreference": "Voorkeurs audiotaal:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Vernieuw metagegevens automatisch van het internet:", "LabelBindToLocalNetworkAddress": "Binden aan het lokale netwerk adres:", - "LabelBindToLocalNetworkAddressHelp": "Optioneel. Overrule het lokale IP-adres om aan de http-server te binden. Indien leeg gelaten, zal de server binden aan alle beschikbare adressen. Het veranderen van deze waarde vereist herstarten van Jellyfin Server.", + "LabelBindToLocalNetworkAddressHelp": "Overschrijf het lokale IP-adres voor de HTTP server. Indien leeg gelaten, zal de server binden aan alle beschikbare adressen. Het veranderen van deze waarde vereist een herstart.", "LabelBirthDate": "Geboortedatum:", "LabelBirthYear": "Geboorte jaar:", "LabelBlastMessageInterval": "Alive bericht interval", @@ -511,7 +511,7 @@ "LabelEnableBlastAliveMessages": "Alive berichten zenden", "LabelEnableBlastAliveMessagesHelp": "Zet dit aan als de server niet betrouwbaar door andere UPnP-apparaten op uw netwerk wordt gedetecteerd.", "LabelEnableDlnaClientDiscoveryInterval": "Interval voor het zoeken naar clients", - "LabelEnableDlnaClientDiscoveryIntervalHelp": "Bepaalt de duur in seconden tussen SSDP zoekopdrachten uitgevoerd door Jellyfin.", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "Bepaalt de duur in seconden tussen SSDP zoekopdrachten.", "LabelEnableDlnaDebugLogging": "DLNA foutopsporings logboek inschakelen", "LabelEnableDlnaDebugLoggingHelp": "Genereer grote logboekbestanden en is alleen bedoeld voor het troubleshooting doeleinden.", "LabelEnableDlnaPlayTo": "DLNA \"Play To\" inschakelen", @@ -625,7 +625,7 @@ "LabelNumberOfGuideDays": "Aantal dagen van de gids om te downloaden:", "LabelNumberOfGuideDaysHelp": "Het downloaden van meer dagen van de gids gegevens biedt de mogelijkheid verder vooruit te plannen en een beter overzicht geven, maar het zal ook langer duren om te downloaden. Auto kiest op basis van het aantal kanalen.", "LabelOptionalNetworkPath": "Gedeelde netwerkmap:", - "LabelOptionalNetworkPathHelp": "Als deze map wordt gedeeld op uw netwerk, kunnen middels het netwerkpad Jellyfin apps op andere apparaten rechtstreeks toegang tot mediabestanden krijgen. Bijvoorbeeld {0} or {1}.", + "LabelOptionalNetworkPathHelp": "Als deze map wordt gedeeld op uw netwerk, kunnen middels het netwerkpad clients op andere apparaten rechtstreeks toegang tot mediabestanden krijgen. Bijvoorbeeld {0} of {1}.", "LabelOriginalAspectRatio": "Originele aspect ratio:", "LabelOriginalTitle": "Orginele titel:", "LabelOverview": "Overzicht:", @@ -776,13 +776,13 @@ "MessageConfirmProfileDeletion": "Weet u zeker dat u dit profiel wilt verwijderen?", "MessageConfirmRecordingCancellation": "Opname annuleren?", "MessageConfirmRemoveMediaLocation": "Weet u zeker dat u deze locatie wilt verwijderen?", - "MessageConfirmRestart": "Weet u zeker dat u Jellyfin Server wilt herstarten?", - "MessageConfirmRevokeApiKey": "Weet u zeker dat u deze api sleutel in wilt trekken? De verbinding met Jellyfin Server zal direct verbroken worden.", + "MessageConfirmRestart": "Weet u zeker dat u Jellyfin wilt herstarten?", + "MessageConfirmRevokeApiKey": "Weet u zeker dat u deze API sleutel in wilt trekken? De verbinding van de applicatie met deze server zal plotseling verbroken worden.", "MessageConfirmShutdown": "Weet u zeker dat u de server wilt afsluiten?", "MessageContactAdminToResetPassword": "Neem contact op met de server beheerder om uw wachtwoord te resetten.", "MessageCreateAccountAt": "Maak een account bij {0}", "MessageDeleteTaskTrigger": "Weet u zeker dat u deze signaal taak wilt verwijderen?", - "MessageDirectoryPickerBSDInstruction": "Voor BSD kan het noodzakelijk zijn opslag op uw FreeNAS Jail te configureren voordat Jellyfin het kan benaderen.", + "MessageDirectoryPickerBSDInstruction": "Voor BSD moet u mogelijk de opslag in uw FreeNAS Jail configureren, zodat Jellyfin toegang heeft tot uw media.", "MessageDirectoryPickerLinuxInstruction": "Voor Linux op Arch Linux, CentOS, Debian, Fedora, openSUSE, of Ubuntu, moet u de service-gebruiker ten minste leestoegang tot uw opslaglocaties verlenen.", "MessageDownloadQueued": "Download in de wachtrij geplaatst.", "MessageEnablingOptionLongerScans": "Het inschakelen van deze optie kan leiden tot langere doorlooptijd van bibliotheek scans.", From cb45b4e8ad8ba0c172ac2b5e2e58ebfa8145a487 Mon Sep 17 00:00:00 2001 From: WWWesten Date: Sun, 16 Aug 2020 17:35:22 +0000 Subject: [PATCH 108/285] Translated using Weblate (Russian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ru/ --- src/strings/ru.json | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/src/strings/ru.json b/src/strings/ru.json index a3aabd93c3..8982b7f187 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -126,7 +126,7 @@ "ColorTransfer": "Цветопередача", "CommunityRating": "Общественная оценка", "Composer": "Композитор", - "ConfigureDateAdded": "Как конфигурировать дату добавления определяется в Панели Jellyfin Server в параметрах Медиатеки", + "ConfigureDateAdded": "Как конфигурировать дату добавления определяется в Панели в параметрах Медиатеки", "ConfirmDeleteImage": "Удалить изображение?", "ConfirmDeleteItem": "При удалении данного элемента, он удалится и из файловой системы, и из медиатеки. Вы действительно хотите продолжить?", "ConfirmDeleteItems": "При удалении данных элементов, он удалится и из файловой системы, и из медиатеки. Вы действительно хотите продолжить?", @@ -207,7 +207,7 @@ "ErrorAddingMediaPathToVirtualFolder": "Произошла ошибка при добавлении пути к медиаданным. Убедитесь, что путь действителен и Jellyfin имеет доступ к этому расположению.", "ErrorAddingTunerDevice": "Произошла ошибка при добавлении тюнерного устройства. Убедитесь, что оно доступно и повторите попытку.", "ErrorAddingXmlTvFile": "Произошла ошибка при доступе к XMLTV-файлу. Убедитесь, что файл существует и повторите попытку.", - "ErrorDeletingItem": "Произошла ошибка при удалении элемента с Jellyfin Server. Проверьте, что у Jellyfin Server имеется доступ на запись в медиапапку и повторите попытку.", + "ErrorDeletingItem": "Произошла ошибка при удалении элемента с сервера. Проверьте, что у Jellyfinr имеется доступ на запись в медиапапку и повторите попытку.", "ErrorGettingTvLineups": "Произошла ошибка при загрузке списков сопоставления. Убедитесь, что ваши данные правильны и повторите попытку.", "ErrorStartHourGreaterThanEnd": "Конечное время должно быть позже, чем начальное время.", "ErrorPleaseSelectLineup": "Выделите список сопоставления и повторите попытку. Если списков сопоставления не имеется, то проверьте, что ваше имя пользователя, пароль и почтовый код являются верными.", @@ -480,12 +480,12 @@ "LabelAppName": "Название приложения", "LabelAppNameExample": "Пример: Sickbeard, Sonarr", "LabelArtists": "Исполнители:", - "LabelArtistsHelp": "Для разделения исполнителей используйте точку с запятой ;", + "LabelArtistsHelp": "Для разделения исполнителей используйте ; (точку с запятой).", "LabelAudio": "Аудио", "LabelAudioLanguagePreference": "Выбор языка аудио:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Автоматически обновлять метаданные из Интернета:", "LabelBindToLocalNetworkAddress": "Привязка к адресу в локальной сети:", - "LabelBindToLocalNetworkAddressHelp": "Переопределяется локальный IP-адрес для HTTP-сервера. Если поле пусто, то привязка сервера будет ко всем доступным адресам. При изменении данного значения потребуется перезапуск Jellyfin Server.", + "LabelBindToLocalNetworkAddressHelp": "Переопределяется локальный IP-адрес для HTTP-сервера. Если поле пусто, то привязка сервера будет ко всем доступным адресам. При изменении данного значения потребуется перезапуск.", "LabelBirthDate": "Дата рождения:", "LabelBirthYear": "Год рождения:", "LabelBlastMessageInterval": "Интервал сообщений проверки активности", @@ -544,7 +544,7 @@ "LabelEnableBlastAliveMessages": "Бомбардировать сообщениями проверки активности", "LabelEnableBlastAliveMessagesHelp": "Включите, если сервер надёжно не обнаруживается иными UPnP устройствами в своей сети.", "LabelEnableDlnaClientDiscoveryInterval": "Интервал обнаружения клиентов", - "LabelEnableDlnaClientDiscoveryIntervalHelp": "Определяется длительность в секундах между SSDP-запросами от Jellyfin.", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "Определяется длительность в секундах между SSDP-запросами.", "LabelEnableDlnaDebugLogging": "Включить журналирование отладки DLNA", "LabelEnableDlnaDebugLoggingHelp": "Создаются большие файлы Журнала, рекомендуется использовать только для поиска неполадок.", "LabelEnableDlnaPlayTo": "Включить DLNA-функцию Воспроизвести На", @@ -662,7 +662,7 @@ "LabelNumberOfGuideDays": "Число дней для загрузки данных телегида:", "LabelNumberOfGuideDaysHelp": "Больше дней загрузки данных телегида обеспечивает возможность заблаговременно назначать расписание и просматривать больше перечней, однако это займёт больше времени для загрузки. При значении «Авто» выбор определяется числом каналов.", "LabelOptionalNetworkPath": "Общедоступная сетевая папка:", - "LabelOptionalNetworkPathHelp": "Если данная папка является общей в сети, указание пути к сетевой папке может позволить Jellyfin-приложениям на других устройствах иметь прямой доступ к медиафайлам. Например, {0} или {1}.", + "LabelOptionalNetworkPathHelp": "Если данная папка является общей в сети, указание пути к сетевой папке может позволить клиентам на других устройствах иметь прямой доступ к медиафайлам. Например, {0} или {1}.", "LabelOriginalAspectRatio": "Исходное соотношение сторон:", "LabelOriginalTitle": "Оригинальное название:", "LabelOverview": "Обзор:", @@ -840,13 +840,13 @@ "MessageConfirmProfileDeletion": "Вы действительно хотите удалить данный профиль?", "MessageConfirmRecordingCancellation": "Отменить запись?", "MessageConfirmRemoveMediaLocation": "Вы действительно хотите изъять это расположение?", - "MessageConfirmRestart": "Вы действительно хотите перезапустить Jellyfin Server?", - "MessageConfirmRevokeApiKey": "Вы действительно хотите отозвать данный API-ключ? Подключение приложения к Jellyfin Server будет резко прекращено.", + "MessageConfirmRestart": "Вы действительно хотите перезапустить Jellyfin?", + "MessageConfirmRevokeApiKey": "Вы действительно хотите отозвать данный API-ключ? Подключение приложения к этому серверу будет резко прекращено.", "MessageConfirmShutdown": "Вы действительно хотите завершить работу сервера?", "MessageContactAdminToResetPassword": "Обратитесь к своему системному администратору, чтобы сбросить ваш пароль.", "MessageCreateAccountAt": "Создайте учётную запись на {0}", "MessageDeleteTaskTrigger": "Вы действительно хотите удалить данный триггер задачи?", - "MessageDirectoryPickerBSDInstruction": "Касаемо BSD, возможно, потребуется конфигурировать хранилище в вашем FreeNAS Jail для того, чтобы разрешить Jellyfin получить к нему доступ.", + "MessageDirectoryPickerBSDInstruction": "Касаемо BSD, возможно, потребуется конфигурировать хранилище в вашем FreeNAS Jail, чтобы Jellyfin мог получить доступ к медиаданным.", "MessageDirectoryPickerLinuxInstruction": "Для Linux на Arch Linux, CentOS, Debian, Fedora, openSUSE или Ubuntu, вы должны предоставить пользователю службы, по крайней мере, доступ для чтения к расположениям хранилища.", "MessageDownloadQueued": "Загрузка в очереди.", "MessageEnablingOptionLongerScans": "Включение этой опции может привести к значительному увеличению времени сканирования медиатеки.", @@ -868,7 +868,7 @@ "MessagePleaseEnsureInternetMetadata": "Убедитесь, что включена загрузка метаданных из Интернета.", "MessagePleaseWait": "Подождите. Это может занять минуту.", "MessagePluginConfigurationRequiresLocalAccess": "Чтобы конфигурировать данный плагин войдите непосредственно в свой локальный сервер.", - "MessagePluginInstallDisclaimer": "Плагины, созданные членами сообщества Jellyfin являются отличным способом повышения эффективности Jellyfin с помощью дополнительных функций и компонентов. Перед установкой примите во внимание влияние, которое они могут оказать на Jellyfin Server, например, длительные сканирования медиатеки, дополнительную фоновую обработку и снижение системной стабильности.", + "MessagePluginInstallDisclaimer": "Плагины, созданные членами сообщества являются отличным способом повышения эффективности с помощью дополнительных функций и компонентов. Перед установкой примите во внимание влияние, которое они могут оказать на сервер, например, длительные сканирования медиатеки, дополнительную фоновую обработку и снижение системной стабильности.", "MessageReenableUser": "См. ниже для разблокировки", "MessageSettingsSaved": "Параметры сохранены.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Из вашей медиатеки будут изъяты следующие расположения медиаданных:", @@ -1032,7 +1032,7 @@ "OptionResumable": "Возможно возобновление", "OptionRuntime": "Длительность", "OptionSaveMetadataAsHidden": "Сохранять метаданные и изображения в виде скрытых файлов", - "OptionSaveMetadataAsHiddenHelp": "Это изменение будет применено к новым метаданным сохраняемым в будущем. Существующие файлы метаданных будут обновлены в следующий раз, когда они будут сохраняться на Jellyfin Server.", + "OptionSaveMetadataAsHiddenHelp": "Это изменение будет применено к новым метаданным сохраняемым в будущем. Существующие файлы метаданных будут обновлены в следующий раз, когда они будут сохраняться на сервере.", "OptionSpecialEpisode": "Спецэпизоды", "OptionSubstring": "Подстрока", "OptionTrackName": "Название трека", @@ -1072,9 +1072,9 @@ "PleaseAddAtLeastOneFolder": "Добавьте, по крайней мере, одну папку к данной медиатеке, нажав кнопку Добавить.", "PleaseConfirmPluginInstallation": "Нажмите кнопку ОК, чтобы подтвердить, что вы прочитали вышеизложенное и хотите приступить к установке плагина.", "PleaseEnterNameOrId": "Введите название или внешний ID.", - "PleaseRestartServerName": "Перезапустите Jellyfin Server - {0}.", + "PleaseRestartServerName": "Перезапустите Jellyfin на {0}.", "PleaseSelectTwoItems": "Выберите хотя бы два элемента.", - "MessagePluginInstalled": "Плагин установлен успешно. Чтобы изменения вступили в силу, будет необходимо перезапустить Jellyfin Server.", + "MessagePluginInstalled": "Плагин установлен успешно. Чтобы изменения вступили в силу, будет необходимо перезапустить сервер.", "PreferEmbeddedTitlesOverFileNames": "Предпочитать внедрённые названия, чем имена файлов", "PreferEmbeddedTitlesOverFileNamesHelp": "Этим определяется отображаемое название по умолчанию, когда нет метаданных с интернета или локальные метаданные недоступны.", "Premiere": "Премьера", @@ -1137,10 +1137,10 @@ "SeriesRecordingScheduled": "Запись сериала назначена.", "SeriesSettings": "Параметры сериала", "SeriesYearToPresent": "{0} - Н/В", - "ServerNameIsRestarting": "Jellyfin Server - {0} перезапускается.", - "ServerNameIsShuttingDown": "Jellyfin Server - {0} завершает работу.", - "ServerRestartNeededAfterPluginInstall": "После установки плагина будет необходимо перезапустить Jellyfin Server.", - "ServerUpdateNeeded": "Данный Jellyfin Server нуждается в обновлении. Чтобы загрузить свежую версию, посетите {0}", + "ServerNameIsRestarting": "Сервер перезапускается в {0}.", + "ServerNameIsShuttingDown": "Сервер завершает работу в {0}.", + "ServerRestartNeededAfterPluginInstall": "После установки плагина будет необходимо перезапустить Jellyfin.", + "ServerUpdateNeeded": "Данный сервер нуждается в обновлении. Чтобы загрузить свежую версию, посетите {0}", "Settings": "Параметры", "SettingsSaved": "Параметры сохранены.", "SettingsWarning": "Изменение данных значений может привести к нестабильности или сбоям возможности подключения. Если вы испытываете любые проблемы, мы рекомендуем изменить их обратно к стандартным.", @@ -1324,7 +1324,7 @@ "OptionPosterCard": "Постер-карта", "OptionThumb": "Эскиз", "OptionThumbCard": "Эскиз-карта", - "PasswordResetProviderHelp": "Выберите поставщика сброса пароля, который использовуется при запросе пользователем сброса пароля", + "PasswordResetProviderHelp": "Выберите поставщика сброса пароля, который использовуется при запросе пользователем сброса пароля.", "PlaybackData": "Данные воспроизведения", "SubtitleOffset": "Сдвиг субтитров", "TabNetworking": "Работа в сети", @@ -1391,7 +1391,7 @@ "AlbumArtist": "Исполнитель альбома", "Album": "Альбом", "LastSeen": "Последний раз был {0}", - "WriteAccessRequired": "Jellyfin Server требуются права на запись в эту папку. Обеспечьте доступ для записи и попробуйте снова.", + "WriteAccessRequired": "Jellyfin требуются права на запись в эту папку. Обеспечьте доступ для записи и попробуйте снова.", "PathNotFound": "Путь не может быть найден. Убедитесь, что путь правильный и попробуйте снова.", "PreferEmbeddedEpisodeInfosOverFileNames": "Предпочитать встроенную информацию эпизода вместо имён файлов", "PreferEmbeddedEpisodeInfosOverFileNamesHelp": "Используется информация об эпизоде из встроенных метаданных, если они доступны.", @@ -1446,7 +1446,7 @@ "MessageSyncPlayErrorNoActivePlayer": "Активный проигрыватель не найден. SyncPlay был отключен.", "ShowMore": "Показать больше", "ShowLess": "Показать меньше", - "EnableBlurHashHelp": "Рисунки, которые всё ещё загружаются, будут отображаться с размытым заполнением", + "EnableBlurHashHelp": "Рисунки, которые всё ещё загружаются, будут отображаться с уникальным заполнением.", "EnableBlurHash": "Включить размытые заполнители для изображений", "ButtonSyncPlay": "SyncPlay", "ButtonCast": "Транслировать", From 39b55a4f8d160678efcf401ac69643d059c1c723 Mon Sep 17 00:00:00 2001 From: Konctantin Date: Sun, 16 Aug 2020 21:00:31 +0000 Subject: [PATCH 109/285] Translated using Weblate (Ukrainian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/uk/ --- src/strings/uk.json | 38 +++++++++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/src/strings/uk.json b/src/strings/uk.json index ff69296e07..764f520524 100644 --- a/src/strings/uk.json +++ b/src/strings/uk.json @@ -243,5 +243,41 @@ "Backdrop": "Фон", "AroundTime": "Приблизно", "AlwaysPlaySubtitlesHelp": "Субтитри, що відповідають мовним параметрам, завантажуватимуться незалежно від мови звуку.", - "AllowFfmpegThrottlingHelp": "Коли перекодування або перепакування досить далеко випереджає поточну позицію відтворення, процес призупиняється, щоб зекономити ресурси. Це найкорисніше при перегляді, коли рідко міняється позиція відтворення. Вимкніть це, якщо виникнуть проблеми з відтворенням." + "AllowFfmpegThrottlingHelp": "Коли перекодування або перепакування досить далеко випереджає поточну позицію відтворення, процес призупиняється, щоб зекономити ресурси. Це найкорисніше при перегляді, коли рідко міняється позиція відтворення. Вимкніть це, якщо виникнуть проблеми з відтворенням.", + "ExitFullscreen": "Вийти з повноекранного режиму", + "Episodes": "Серії", + "Episode": "Серія", + "Ended": "Закінчилось", + "EnableThemeVideos": "Тематичні відео", + "EnableThemeSongs": "Тематичні пісні", + "EnablePhotos": "Показувати фото", + "EnableHardwareEncoding": "Ввімкнути апаратне кодування", + "EnableExternalVideoPlayers": "Зовнішні відеоплеєри", + "EnableCinemaMode": "Режим кіно", + "EditSubtitles": "Редагувати субтитри", + "EditMetadata": "Редагувати метадані", + "EditImages": "Редагувати зображення", + "Edit": "Редагувати", + "DownloadsValue": "{0} завантажень", + "Download": "Завантажити", + "Down": "Вниз", + "DoNotRecord": "Не записувати", + "Depressed": "Подавлений", + "ErrorDefault": "Виникла помилка при обробці запиту. Будь-ласка повторіть пізніше.", + "DatePlayed": "Дата програвання", + "DateAdded": "Дата додана", + "Default": "За замовчуванням", + "Delete": "Видалити", + "DeleteImage": "Видалити зображення", + "DeleteMedia": "Видалити медіа", + "DeleteUser": "Видалити користувача", + "Desktop": "Робочий стіл", + "DetectingDevices": "Виявлення пристроїв", + "DirectStreaming": "Пряме мовлення", + "Director": "Режисер", + "Directors": "Режисери", + "Disabled": "Відключено", + "Disc": "Диск", + "Display": "Дисплей", + "Disconnect": "Відключити" } From c2f946d96e79539b343f46ed76566914759e1219 Mon Sep 17 00:00:00 2001 From: Professor Vogelbloem Date: Sun, 16 Aug 2020 21:50:14 +0000 Subject: [PATCH 110/285] Translated using Weblate (Dutch) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/nl/ --- src/strings/nl.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/strings/nl.json b/src/strings/nl.json index 81a74fcb2c..963adee2c0 100644 --- a/src/strings/nl.json +++ b/src/strings/nl.json @@ -804,14 +804,14 @@ "MessagePleaseEnsureInternetMetadata": "Zorg ervoor dat het downloaden van internet-metadata is ingeschakeld.", "MessagePleaseWait": "Even geduld. Dit kan even duren.", "MessagePluginConfigurationRequiresLocalAccess": "Om deze plugin te configuren moet u zich aanmelden direct op de lokale server.", - "MessagePluginInstallDisclaimer": "Plugins ontwikkeld door leden van de Jellyfin gemeenschap zijn een geweldige manier om uw Jellyfin ervaring met extra functies en voordelen te verbeteren. Alvorens te installeren, dient u zich bewust te zijn van de gevolgen die zij kunnen hebben op uw Jellyfin Server, zoals langere bibliotheek scans, extra achtergrondinformatie verwerking, en een verminderde stabiliteit van het systeem.", + "MessagePluginInstallDisclaimer": "Plugins ontwikkeld door leden van de gemeenschap zijn een geweldige manier om uw ervaring met extra functies en voordelen te verbeteren. Wees voor het installeren bewust van de effecten die zij op uw server kunnen hebben, zoals langere bibliotheek scans, extra achtergrondinformatie verwerking, en een verminderde stabiliteit van het systeem.", "MessageReenableUser": "Zie hieronder hoe opnieuw in te schakelen", "MessageSettingsSaved": "Instellingen opgeslagen.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "De volgende media locaties worden verwijderd uit de bibliotheek:", "MessageUnableToConnectToServer": "Het is momenteel niet mogelijk met de geselecteerde server te verbinden. Controleer dat deze draait en probeer het opnieuw.", "MessageUnsetContentHelp": "Inhoud zal als gewone folders worden getoond. Gebruik voor het beste resultaat de Metadata Manager om de inhoud types voor subfolders in te stellen.", "MessageYouHaveVersionInstalled": "Op dit moment is versie {0} geïnstalleerd.", - "MetadataSettingChangeHelp": "Veranderen van metadata instellingen zal nieuwe content die wordt toegevoegd beïnvloeden. Om de bestaande inhoud te vernieuwen, opent u het detail scherm en klik op de knop Vernieuwen, of doe een bulk vernieuwing met behulp van de metadata manager.", + "MetadataSettingChangeHelp": "Het veranderen van metadata instellingen zal nieuwe toegevoegd content beïnvloeden. Om de bestaande content te vernieuwen, opent u het detail scherm en klik op de vernieuw knop, of voer een bulk vernieuwing uit met behulp van de metadata manager.", "MinutesAfter": "minuten na", "MinutesBefore": "minuten voor", "Mobile": "Mobiel", @@ -895,7 +895,7 @@ "OptionDownloadBackImage": "Terug", "OptionDownloadDiscImage": "Schijf", "OptionDownloadImagesInAdvance": "Download afbeeldingen van tevoren", - "OptionDownloadImagesInAdvanceHelp": "Standaard worden de meeste afbeeldingen gedownload wanneer ze opgevraagd worden door een Jellyfin app. Activeer deze optie om alle afbeeldingen op voorhand te downloaden bij het importeren van nieuwe media. Dit kan aanzienlijk langere bibliotheekscans veroorzaken.", + "OptionDownloadImagesInAdvanceHelp": "Standaard worden de meeste afbeeldingen alleen gedownload wanneer ze opgevraagd worden door een client. Activeer deze optie om alle afbeeldingen van tevoren te downloaden bij het importeren van nieuwe media. Dit kan aanzienlijk langere bibliotheekscans veroorzaken.", "OptionDownloadPrimaryImage": "Primair", "OptionDownloadThumbImage": "Miniatuur", "OptionEmbedSubtitles": "Insluiten in container", From 4f87f6807b6e55f662f1a07fb75ccf370d5341e9 Mon Sep 17 00:00:00 2001 From: Franco Castillo Date: Mon, 17 Aug 2020 00:56:49 +0000 Subject: [PATCH 111/285] Translated using Weblate (Spanish (Argentina)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es_AR/ --- src/strings/es-ar.json | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/strings/es-ar.json b/src/strings/es-ar.json index 3ff15ab72b..74eb87e842 100644 --- a/src/strings/es-ar.json +++ b/src/strings/es-ar.json @@ -1467,5 +1467,13 @@ "Writers": "Escritores", "ClearQueue": "Eliminar cola", "StopPlayback": "Detener reproducción", - "ViewAlbumArtist": "Ver artista del álbum" + "ViewAlbumArtist": "Ver artista del álbum", + "Preview": "Avance", + "SubtitleVerticalPositionHelp": "Número de línea donde aparece el texto. Los números positivos indican de arriba hacia abajo. Los números negativos indican de abajo hacia arriba.", + "LabelSubtitleVerticalPosition": "Posición vertical:", + "PreviousTrack": "Pasar al anterior", + "MessageGetInstalledPluginsError": "Se produjo un error al obtener la lista de complementos instalados actualmente.", + "MessagePluginInstallError": "Ocurrió un error al instalar el complemento.", + "NextTrack": "Pasar al siguiente", + "LabelUnstable": "Inestable" } From 15010b142611aa05e3fe849873c809e1e8907ccd Mon Sep 17 00:00:00 2001 From: Julien Machiels Date: Mon, 17 Aug 2020 04:26:38 +0200 Subject: [PATCH 112/285] Update src/scripts/clientUtils.js Co-authored-by: Dmitry Lyzo <56478732+dmitrylyzo@users.noreply.github.com> --- src/scripts/clientUtils.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/scripts/clientUtils.js b/src/scripts/clientUtils.js index bf61bb1dd3..564f5784b0 100644 --- a/src/scripts/clientUtils.js +++ b/src/scripts/clientUtils.js @@ -157,8 +157,7 @@ export function capabilities(appHost) { SupportsPersistentIdentifier: self.appMode === 'cordova' || self.appMode === 'android', SupportsMediaControl: true }; - appHost.getPushTokenInfo(); - return capabilities = Object.assign(capabilities, appHost.getPushTokenInfo()); + return Object.assign(capabilities, appHost.getPushTokenInfo()); } export function selectServer() { From 99686db96d65bd21285d8d5804a2a06e4fe9b2ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Kucharczyk?= Date: Mon, 17 Aug 2020 08:12:34 +0000 Subject: [PATCH 113/285] Translated using Weblate (Czech) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/cs/ --- src/strings/cs.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/cs.json b/src/strings/cs.json index d796f36a43..3156bf36bc 100644 --- a/src/strings/cs.json +++ b/src/strings/cs.json @@ -1475,5 +1475,6 @@ "SubtitleVerticalPositionHelp": "Číslo řádku, na kterém se zobrazí text. Kladná čísla znamenají směr shora dolů. Záporná čísla zdola nahoru.", "LabelSubtitleVerticalPosition": "Svislé umístění:", "MessageGetInstalledPluginsError": "Při načítání seznamu nainstalovaných zásuvných modulů došlo k chybě.", - "MessagePluginInstallError": "Při instalaci zásuvného modulu došlo k chybě." + "MessagePluginInstallError": "Při instalaci zásuvného modulu došlo k chybě.", + "PlaybackRate": "Rychlost přehrávání" } From 65e4ffe7b07559ac2e43ba7e7f0dd131478cba14 Mon Sep 17 00:00:00 2001 From: dkanada Date: Sun, 16 Aug 2020 20:34:39 +0900 Subject: [PATCH 114/285] remove some duplicate strings --- src/components/directorybrowser/directorybrowser.js | 2 +- .../displaySettings/displaySettings.template.html | 4 ++-- .../homeScreenSettings.template.html | 2 +- .../itemMediaInfo/itemMediaInfo.template.html | 2 +- .../libraryoptionseditor.template.html | 2 +- src/components/remotecontrol/remotecontrol.js | 2 +- src/controllers/dashboard/devices/device.html | 2 +- src/controllers/dashboard/dlna/profile.html | 10 +++++----- src/controllers/dashboard/encodingsettings.js | 2 +- src/controllers/dashboard/general.html | 2 +- src/controllers/dashboard/library.js | 2 +- src/controllers/dashboard/playback.html | 2 +- src/controllers/dashboard/playback.js | 2 +- .../dashboard/scheduledtasks/scheduledtask.html | 2 +- src/controllers/dashboard/streaming.js | 2 +- src/controllers/dashboard/users/usernew.html | 2 +- src/controllers/dashboard/users/userpasswordpage.js | 2 +- src/controllers/itemDetails/index.html | 4 ++-- src/controllers/itemDetails/index.js | 8 ++++---- src/controllers/livetv.html | 2 +- src/controllers/livetvsettings.html | 2 +- src/controllers/livetvstatus.js | 2 +- src/controllers/movies/movies.html | 4 ++-- src/controllers/movies/moviesrecommended.js | 2 +- src/controllers/music/music.html | 8 ++++---- src/controllers/music/musicrecommended.js | 2 +- src/controllers/playback/queue/index.html | 4 ++-- src/controllers/playback/video/index.js | 2 +- src/controllers/session/forgotPassword/index.html | 2 +- src/controllers/session/forgotPassword/index.js | 6 +++--- src/controllers/shows/tvrecommended.html | 4 ++-- src/controllers/shows/tvrecommended.js | 2 +- src/controllers/user/home/index.html | 2 +- src/controllers/user/menu/index.html | 2 +- src/scripts/itembynamedetailpage.js | 6 +++--- src/scripts/libraryBrowser.js | 2 +- src/scripts/libraryMenu.js | 2 +- 37 files changed, 56 insertions(+), 56 deletions(-) diff --git a/src/components/directorybrowser/directorybrowser.js b/src/components/directorybrowser/directorybrowser.js index 5c44db3b15..4205e04a4f 100644 --- a/src/components/directorybrowser/directorybrowser.js +++ b/src/components/directorybrowser/directorybrowser.js @@ -125,7 +125,7 @@ import 'emby-button'; html += ``; html += '
    '; if (!readOnlyAttribute) { - html += ``; + html += ``; } html += '
    '; if (!readOnlyAttribute) { diff --git a/src/components/displaySettings/displaySettings.template.html b/src/components/displaySettings/displaySettings.template.html index e751ce56c4..1b9bf00376 100644 --- a/src/components/displaySettings/displaySettings.template.html +++ b/src/components/displaySettings/displaySettings.template.html @@ -170,7 +170,7 @@
    ${EnableThemeSongsHelp}
    @@ -178,7 +178,7 @@
    ${EnableThemeVideosHelp}
    diff --git a/src/components/homeScreenSettings/homeScreenSettings.template.html b/src/components/homeScreenSettings/homeScreenSettings.template.html index 19f79ea5da..615598a1a6 100644 --- a/src/components/homeScreenSettings/homeScreenSettings.template.html +++ b/src/components/homeScreenSettings/homeScreenSettings.template.html @@ -1,6 +1,6 @@
    -

    ${HeaderHome}

    +

    ${Home}

    - ${LabelDisplayMissingEpisodesWithinSeasons} + ${DisplayMissingEpisodesWithinSeasons}
    ${ImportMissingEpisodesHelp}
    diff --git a/src/components/remotecontrol/remotecontrol.js b/src/components/remotecontrol/remotecontrol.js index 6048c918c7..3216241e7a 100644 --- a/src/components/remotecontrol/remotecontrol.js +++ b/src/components/remotecontrol/remotecontrol.js @@ -66,7 +66,7 @@ function showSubtitleMenu(context, player, button, item) { }); menuItems.unshift({ id: -1, - name: globalize.translate('ButtonOff'), + name: globalize.translate('Off'), selected: currentIndex == null }); diff --git a/src/controllers/dashboard/devices/device.html b/src/controllers/dashboard/devices/device.html index 4d8fb86537..aec73db008 100644 --- a/src/controllers/dashboard/devices/device.html +++ b/src/controllers/dashboard/devices/device.html @@ -9,7 +9,7 @@
    - +
    ${LabelCustomDeviceDisplayNameHelp}
    diff --git a/src/controllers/dashboard/dlna/profile.html b/src/controllers/dashboard/dlna/profile.html index 22c7ce73ef..3ac3a71c6c 100644 --- a/src/controllers/dashboard/dlna/profile.html +++ b/src/controllers/dashboard/dlna/profile.html @@ -8,7 +8,7 @@
    - ${TabInfo} + ${ButtonInfo} ${TabDirectPlay} ${Transcoding} ${TabContainers} @@ -319,7 +319,7 @@
    - +
    @@ -341,16 +341,16 @@
    - +
    - +
    - +
    diff --git a/src/controllers/dashboard/encodingsettings.js b/src/controllers/dashboard/encodingsettings.js index 320a679b37..dfad07618c 100644 --- a/src/controllers/dashboard/encodingsettings.js +++ b/src/controllers/dashboard/encodingsettings.js @@ -128,7 +128,7 @@ import libraryMenu from 'libraryMenu'; name: globalize.translate('Transcoding') }, { href: 'playbackconfiguration.html', - name: globalize.translate('TabResumeSettings') + name: globalize.translate('ButtonResume') }, { href: 'streamingsettings.html', name: globalize.translate('TabStreaming') diff --git a/src/controllers/dashboard/general.html b/src/controllers/dashboard/general.html index 078d9d6055..e3a1769c24 100644 --- a/src/controllers/dashboard/general.html +++ b/src/controllers/dashboard/general.html @@ -17,7 +17,7 @@
    -
    ${LabelPreferredDisplayLanguageHelp}
    +
    ${LabelDisplayLanguageHelp}
    diff --git a/src/controllers/dashboard/library.js b/src/controllers/dashboard/library.js index 0400df7570..85d9a4b1b2 100644 --- a/src/controllers/dashboard/library.js +++ b/src/controllers/dashboard/library.js @@ -93,7 +93,7 @@ import 'emby-itemrefreshindicator'; const virtualFolder = virtualFolders[index]; const menuItems = []; menuItems.push({ - name: globalize.translate('ButtonEditImages'), + name: globalize.translate('EditImages'), id: 'editimages', icon: 'photo' }); diff --git a/src/controllers/dashboard/playback.html b/src/controllers/dashboard/playback.html index 47ae22c21c..e5f392ead4 100644 --- a/src/controllers/dashboard/playback.html +++ b/src/controllers/dashboard/playback.html @@ -3,7 +3,7 @@
    -

    ${TabResumeSettings}

    +

    ${ButtonResume}

    diff --git a/src/controllers/dashboard/playback.js b/src/controllers/dashboard/playback.js index 0406c21926..101c3ac0a2 100644 --- a/src/controllers/dashboard/playback.js +++ b/src/controllers/dashboard/playback.js @@ -32,7 +32,7 @@ import globalize from 'globalize'; name: globalize.translate('Transcoding') }, { href: 'playbackconfiguration.html', - name: globalize.translate('TabResumeSettings') + name: globalize.translate('ButtonResume') }, { href: 'streamingsettings.html', name: globalize.translate('TabStreaming') diff --git a/src/controllers/dashboard/scheduledtasks/scheduledtask.html b/src/controllers/dashboard/scheduledtasks/scheduledtask.html index dc17d9bf07..8d0b2e24e0 100644 --- a/src/controllers/dashboard/scheduledtasks/scheduledtask.html +++ b/src/controllers/dashboard/scheduledtasks/scheduledtask.html @@ -23,7 +23,7 @@
    -

    ${HeaderAddScheduledTaskTrigger}

    +

    ${ButtonAddScheduledTaskTrigger}

    diff --git a/src/controllers/dashboard/streaming.js b/src/controllers/dashboard/streaming.js index c54fbea472..5db888dfc1 100644 --- a/src/controllers/dashboard/streaming.js +++ b/src/controllers/dashboard/streaming.js @@ -27,7 +27,7 @@ import globalize from 'globalize'; name: globalize.translate('Transcoding') }, { href: 'playbackconfiguration.html', - name: globalize.translate('TabResumeSettings') + name: globalize.translate('ButtonResume') }, { href: 'streamingsettings.html', name: globalize.translate('TabStreaming') diff --git a/src/controllers/dashboard/users/usernew.html b/src/controllers/dashboard/users/usernew.html index 26142c9ca2..67f1f61ebc 100644 --- a/src/controllers/dashboard/users/usernew.html +++ b/src/controllers/dashboard/users/usernew.html @@ -4,7 +4,7 @@
    -

    ${HeaderAddUser}

    +

    ${ButtonAddUser}

    ${Help}
    diff --git a/src/controllers/dashboard/users/userpasswordpage.js b/src/controllers/dashboard/users/userpasswordpage.js index d399804d3e..9a3f7dfaac 100644 --- a/src/controllers/dashboard/users/userpasswordpage.js +++ b/src/controllers/dashboard/users/userpasswordpage.js @@ -83,7 +83,7 @@ import 'emby-button'; loading.hide(); import('toast').then(({default: toast}) => { - toast(globalize.translate('MessageSettingsSaved')); + toast(globalize.translate('SettingsSaved')); }); loadUser(view, params); diff --git a/src/controllers/itemDetails/index.html b/src/controllers/itemDetails/index.html index bd0821eebe..a69d917874 100644 --- a/src/controllers/itemDetails/index.html +++ b/src/controllers/itemDetails/index.html @@ -18,7 +18,7 @@
    -
    -

    ${HeaderCastCrew}

    +

    ${HeaderCastAndCrew}

    diff --git a/src/controllers/itemDetails/index.js b/src/controllers/itemDetails/index.js index c57190139f..bd28c68c30 100644 --- a/src/controllers/itemDetails/index.js +++ b/src/controllers/itemDetails/index.js @@ -242,7 +242,7 @@ import 'emby-select'; return m.Type === 'Audio'; }); const select = page.querySelector('.selectAudio'); - select.setLabel(globalize.translate('LabelAudio')); + select.setLabel(globalize.translate('Audio')); const selectedId = mediaSource.DefaultAudioStreamIndex; select.innerHTML = tracks.map(function (v) { const selected = v.Index === selectedId ? ' selected' : ''; @@ -271,7 +271,7 @@ import 'emby-select'; return m.Type === 'Subtitle'; }); const select = page.querySelector('.selectSubtitles'); - select.setLabel(globalize.translate('LabelSubtitles')); + select.setLabel(globalize.translate('Subtitles')); const selectedId = mediaSource.DefaultSubtitleStreamIndex == null ? -1 : mediaSource.DefaultSubtitleStreamIndex; const videoTracks = mediaSource.MediaStreams.filter(function (m) { @@ -1438,7 +1438,7 @@ import 'emby-select'; name: globalize.translate('Albums'), type: 'MusicAlbum' }, { - name: globalize.translate('HeaderBooks'), + name: globalize.translate('Books'), type: 'Book' }]; renderCollectionItems(page, item, collectionItemTypes, result.Items); @@ -1446,7 +1446,7 @@ import 'emby-select'; }); if (item.Type == 'Season') { - page.querySelector('#childrenTitle').innerHTML = globalize.translate('HeaderEpisodes'); + page.querySelector('#childrenTitle').innerHTML = globalize.translate('Episodes'); } else if (item.Type == 'Series') { page.querySelector('#childrenTitle').innerHTML = globalize.translate('HeaderSeasons'); } else if (item.Type == 'MusicAlbum') { diff --git a/src/controllers/livetv.html b/src/controllers/livetv.html index 753521f40b..fa6c3125d5 100644 --- a/src/controllers/livetv.html +++ b/src/controllers/livetv.html @@ -63,7 +63,7 @@
    - +
    diff --git a/src/controllers/livetvsettings.html b/src/controllers/livetvsettings.html index 3f93e0a7fa..ad3a9de7af 100644 --- a/src/controllers/livetvsettings.html +++ b/src/controllers/livetvsettings.html @@ -11,7 +11,7 @@
    diff --git a/src/controllers/session/forgotPassword/index.js b/src/controllers/session/forgotPassword/index.js index 45e05409da..0f2464e2d8 100644 --- a/src/controllers/session/forgotPassword/index.js +++ b/src/controllers/session/forgotPassword/index.js @@ -6,14 +6,14 @@ import globalize from 'globalize'; if (result.Action == 'ContactAdmin') { return void Dashboard.alert({ message: globalize.translate('MessageContactAdminToResetPassword'), - title: globalize.translate('HeaderForgotPassword') + title: globalize.translate('ButtonForgotPassword') }); } if (result.Action == 'InNetworkRequired') { return void Dashboard.alert({ message: globalize.translate('MessageForgotPasswordInNetworkRequired'), - title: globalize.translate('HeaderForgotPassword') + title: globalize.translate('ButtonForgotPassword') }); } @@ -27,7 +27,7 @@ import globalize from 'globalize'; msg += '
    '; return void Dashboard.alert({ message: msg, - title: globalize.translate('HeaderForgotPassword'), + title: globalize.translate('ButtonForgotPassword'), callback: function () { Dashboard.navigate('forgotpasswordpin.html'); } diff --git a/src/controllers/shows/tvrecommended.html b/src/controllers/shows/tvrecommended.html index 2302279ed7..b5b54a5eb5 100644 --- a/src/controllers/shows/tvrecommended.html +++ b/src/controllers/shows/tvrecommended.html @@ -5,7 +5,7 @@
    - +
    @@ -61,7 +61,7 @@
    - +
    diff --git a/src/controllers/shows/tvrecommended.js b/src/controllers/shows/tvrecommended.js index ea95e99386..c58a2faad3 100644 --- a/src/controllers/shows/tvrecommended.js +++ b/src/controllers/shows/tvrecommended.js @@ -29,7 +29,7 @@ import 'emby-button'; }, { name: globalize.translate('TabNetworks') }, { - name: globalize.translate('TabEpisodes') + name: globalize.translate('Episodes') }]; } diff --git a/src/controllers/user/home/index.html b/src/controllers/user/home/index.html index 79c5ccc4bd..f98f373cb0 100644 --- a/src/controllers/user/home/index.html +++ b/src/controllers/user/home/index.html @@ -1,4 +1,4 @@ -
    +
    diff --git a/src/controllers/user/menu/index.html b/src/controllers/user/menu/index.html index 851a817203..4d91f1206f 100644 --- a/src/controllers/user/menu/index.html +++ b/src/controllers/user/menu/index.html @@ -25,7 +25,7 @@
    -
    ${HeaderHome}
    +
    ${Home}
    diff --git a/src/scripts/itembynamedetailpage.js b/src/scripts/itembynamedetailpage.js index 60be838448..f77bb73652 100644 --- a/src/scripts/itembynamedetailpage.js +++ b/src/scripts/itembynamedetailpage.js @@ -39,14 +39,14 @@ function renderItems(page, item) { if (item.EpisodeCount) { sections.push({ - name: globalize.translate('TabEpisodes'), + name: globalize.translate('Episodes'), type: 'Episode' }); } if (item.TrailerCount) { sections.push({ - name: globalize.translate('TabTrailers'), + name: globalize.translate('Trailers'), type: 'Trailer' }); } @@ -60,7 +60,7 @@ function renderItems(page, item) { if (item.MusicVideoCount) { sections.push({ - name: globalize.translate('TabMusicVideos'), + name: globalize.translate('HeaderMusicVideos'), type: 'MusicVideo' }); } diff --git a/src/scripts/libraryBrowser.js b/src/scripts/libraryBrowser.js index debae200c0..5b5a1aad80 100644 --- a/src/scripts/libraryBrowser.js +++ b/src/scripts/libraryBrowser.js @@ -109,7 +109,7 @@ export function getQueryPagingHtml (options) { } if (options.filterButton) { - html += ''; + html += ''; } html += '
    '; diff --git a/src/scripts/libraryMenu.js b/src/scripts/libraryMenu.js index d237eead9d..50061f412e 100644 --- a/src/scripts/libraryMenu.js +++ b/src/scripts/libraryMenu.js @@ -270,7 +270,7 @@ import 'flexStyles'; function refreshLibraryInfoInDrawer(user, drawer) { let html = ''; html += '
    '; - html += '' + globalize.translate('ButtonHome') + ''; + html += '' + globalize.translate('Home') + ''; // libraries are added here html += '
    '; From b5ba7db44129e95cf49f7ea36b654e2dea666c24 Mon Sep 17 00:00:00 2001 From: dkanada Date: Sun, 16 Aug 2020 20:35:48 +0900 Subject: [PATCH 115/285] update translation files --- src/strings/af.json | 5 ----- src/strings/ar.json | 33 --------------------------------- src/strings/be-by.json | 1 - src/strings/bg-bg.json | 34 ---------------------------------- src/strings/bn_BD.json | 7 ------- src/strings/ca.json | 25 ------------------------- src/strings/cs.json | 34 ---------------------------------- src/strings/da.json | 34 ---------------------------------- src/strings/de.json | 34 ---------------------------------- src/strings/el.json | 30 ------------------------------ src/strings/en-gb.json | 34 ---------------------------------- src/strings/en-us.json | 34 ---------------------------------- src/strings/es-ar.json | 34 ---------------------------------- src/strings/es-mx.json | 34 ---------------------------------- src/strings/es.json | 34 ---------------------------------- src/strings/es_419.json | 34 ---------------------------------- src/strings/fa.json | 34 ---------------------------------- src/strings/fi.json | 33 --------------------------------- src/strings/fr-ca.json | 7 ------- src/strings/fr.json | 34 ---------------------------------- src/strings/gsw.json | 5 ----- src/strings/he.json | 27 --------------------------- src/strings/hi-in.json | 6 ------ src/strings/hr.json | 31 ------------------------------- src/strings/hu.json | 34 ---------------------------------- src/strings/id.json | 8 -------- src/strings/is-is.json | 21 --------------------- src/strings/it.json | 34 ---------------------------------- src/strings/ja.json | 31 ------------------------------- src/strings/kk.json | 34 ---------------------------------- src/strings/ko.json | 34 ---------------------------------- src/strings/lt-lt.json | 27 --------------------------- src/strings/lv.json | 33 --------------------------------- src/strings/mr.json | 5 ----- src/strings/ms.json | 4 ---- src/strings/nb.json | 34 ---------------------------------- src/strings/nl.json | 34 ---------------------------------- src/strings/pl.json | 34 ---------------------------------- src/strings/pr.json | 4 ---- src/strings/pt-br.json | 34 ---------------------------------- src/strings/pt-pt.json | 34 ---------------------------------- src/strings/pt.json | 31 ------------------------------- src/strings/ro.json | 34 ---------------------------------- src/strings/ru.json | 36 +----------------------------------- src/strings/sk.json | 34 ---------------------------------- src/strings/sl-si.json | 34 ---------------------------------- src/strings/sr.json | 8 -------- src/strings/sv.json | 34 ---------------------------------- src/strings/ta.json | 34 ---------------------------------- src/strings/tr.json | 27 --------------------------- src/strings/uk.json | 11 ----------- src/strings/vi.json | 25 ------------------------- src/strings/zh-cn.json | 34 ---------------------------------- src/strings/zh-hk.json | 20 -------------------- src/strings/zh-tw.json | 34 ---------------------------------- 55 files changed, 1 insertion(+), 1452 deletions(-) diff --git a/src/strings/af.json b/src/strings/af.json index f18b2fc14b..df3ca17f3f 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -41,8 +41,6 @@ "Absolute": "Absoluut", "AlbumArtist": "Album Kunstenaar", "TabLatest": "Nuutste", - "TabInfo": "Inligting", - "TabEpisodes": "Episodes", "TabDirectPlay": "Speel Direk", "TabDashboard": "Paneelbord", "TabContainers": "Houers", @@ -123,12 +121,10 @@ "ThemeSongs": "Tema Liedjies", "TellUsAboutYourself": "Vertel ons van jouself", "TabUpcoming": "Komende", - "TabTrailers": "Voorprente", "TabStreaming": "Stroom", "TabSettings": "Instellings", "TabServer": "Bediener", "TabScheduledTasks": "Geskeduleerde Take", - "TabResumeSettings": "Hervat", "TabResponses": "Reaksies", "TabProfiles": "Profiele", "TabProfile": "Profiel", @@ -138,7 +134,6 @@ "TabNfoSettings": "NFO Instellings", "TabNetworking": "Netwerking", "TabNetworks": "Netwerke", - "TabMusicVideos": "Musiek Videos", "TabMusic": "Musiek", "TabLogs": "Logs" } diff --git a/src/strings/ar.json b/src/strings/ar.json index 23cb2c9cab..ba172b57ae 100644 --- a/src/strings/ar.json +++ b/src/strings/ar.json @@ -21,30 +21,23 @@ "ButtonBack": "خلف", "ButtonCancel": "الغاء", "ButtonChangeServer": "غير الخادم", - "ButtonEdit": "تعديل", - "ButtonEditImages": "تعديل الصور", "ButtonEditOtherUserPreferences": "اضبط إعدادات حساب المستخدم هذا، وصورته وتفضيلاته الشخصية.", - "ButtonFilter": "مرشِّح", "ButtonForgotPassword": "نسيت كلمة السر", "ButtonFullscreen": "ملء الشاشة", "ButtonGuide": "الدليل", - "ButtonHome": "الرئيسية", "ButtonInfo": "معلومات", "ButtonLibraryAccess": "صلاحيات المكتبة", "ButtonManualLogin": "الدخول اليدوي", "ButtonMore": "المزيد", "ButtonNetwork": "الشبكة", "ButtonNextTrack": "المقطوعة التالية", - "ButtonOff": "إيقاف التشغيل", "ButtonOk": "موافق", "ButtonOpen": "إفتح", "ButtonParentalControl": "التحكم الأبوي", "ButtonPause": "توقف مؤقت", - "ButtonPlay": "تشغيل", "ButtonPreviousTrack": "المقطوعة السابقة", "ButtonProfile": "حساب", "ButtonQuickStartGuide": "دليل بدء الاستخدام السريع", - "ButtonRefresh": "إعادة تنشيط", "ButtonRefreshGuideData": "إعادة تنشيط بيانات الدليل", "ButtonRemove": "إزالة", "ButtonRename": "إعادة التسمية", @@ -64,7 +57,6 @@ "ButtonStart": "إبدأ", "ButtonStop": "إيقاف", "ButtonSubmit": "تسليم", - "ButtonSubtitles": "ترجمات", "ButtonTrailer": "العرض الإعلاني", "ButtonUninstall": "إزالة التثبيت", "ButtonWebsite": "موقع إلكتروني", @@ -119,9 +111,7 @@ "HeaderActiveDevices": "الأجهزة المفعّلة", "HeaderActiveRecordings": "التسجيلات المفعلة", "HeaderActivity": "الأنشطة", - "HeaderAddScheduledTaskTrigger": "إضافة زناد", "HeaderAddUpdateImage": "إضافة/تحديث صورة", - "HeaderAddUser": "إضافة مستخدم", "HeaderAdditionalParts": "أدوار إضافية", "HeaderAdmin": "المدير", "HeaderAlert": "تنبيه", @@ -131,10 +121,8 @@ "HeaderApiKeysHelp": "التطبيقات الخارجية تحتاج أن تمتلك مفتاح api لكي تتصل بالخادم. هذه المفاتيح تُصدر عن طريق تسجيل الدخول بمستخدم عادي، أو عن طريق منح التطبيق مفتاحاً أصدر يدوياً.", "HeaderApp": "التطبيق", "HeaderAudioSettings": "إعدادات الصوت", - "HeaderBooks": "الكتب", "HeaderBranding": "وسومات البرنامج", "HeaderCastAndCrew": "الممثلين وطاقم العمل", - "HeaderCastCrew": "الممثلين والطاقم", "HeaderChannelAccess": "صلاحيات القنوات", "HeaderCodecProfile": "عريضة الكودك", "HeaderCodecProfileHelp": "عرائض الكودك تشير إلى محدودية جهاز ما عند تشغيل وسيطة مشفر بكودك معيّن. إن كان هناك أي محدودية مذكورة فستحال الوسيطة إلى التشغير البيني، حتى لو كانت الصيغة مضبوطة للعمل بتلقائية.", @@ -159,12 +147,10 @@ "HeaderDirectPlayProfile": "عريضة التشغيل المباشر", "HeaderDirectPlayProfileHelp": "أضف مباشرةً عريضة تشغيل للإشارة لأي صيغة يتمكن الجهاز من التعامل معه بتلقائية.", "HeaderEasyPinCode": "الرمز الشخصي الميسر", - "HeaderEpisodes": "الحلقات", "HeaderError": "حدث خطأ", "HeaderFeatureAccess": "صلاحية الخاصية", "HeaderFetchImages": "إطهار الصور:", "HeaderForKids": "للأطفال", - "HeaderForgotPassword": "نسيت كلمة السر", "HeaderFrequentlyPlayed": "تم تشغيله مراراً", "HeaderGuideProviders": "مزودو الأدلة", "HeaderHttpHeaders": "رؤوس HTTP", @@ -186,7 +172,6 @@ "HeaderLoginFailure": "فشل في تسجيل الدخول", "HeaderMedia": "الوسائط", "HeaderMediaFolders": "مجلدات الوسائط", - "HeaderMediaInfo": "معلومات الوسيطة", "HeaderMoreLikeThis": "المزيد من الروابط لهذا", "HeaderMusicVideos": "الفيديوهات الموسيقية", "HeaderMyMedia": "وسائطي", @@ -297,7 +282,6 @@ "LabelCustomCertificatePathHelp": "مسار ملف PKCS # 12 يحتوي على شهادة ومفتاح خاص لتمكين دعم TLS على مجال مخصص.", "LabelCustomCss": "تنيسق CSS مخصص:", "LabelCustomCssHelp": "طبق تنسيقك css المخصص لواجهة الويب.", - "LabelCustomDeviceDisplayName": "اسم العرض:", "LabelCustomDeviceDisplayNameHelp": "أذكر اسم عرض مخصوص أو أتركه فارغاً لاستخدام الاسم المبلغ من الجهاز.", "LabelDateAddedBehavior": "كيف يتصرف المحتوى الجديد نحو \"تاريخ الإضافة\" الخاص به:", "LabelDateAddedBehaviorHelp": "إذا اخذت واصفات البيانات قيمة، فإنها سوف تستخدم قبل أن تستخدم أي من هذه الخيارات.", @@ -307,7 +291,6 @@ "LabelDefaultUserHelp": "لتحديد مكتبة المستخدم التي تظهر على الأجهزة المتصلة. بإمكان الامتطاء على هذه القيمة لكل جهاز عن طريق عرائض الأجهزة.", "LabelDeviceDescription": "وصف الجهاز", "LabelDidlMode": "طور DIDL:", - "LabelDisplayMissingEpisodesWithinSeasons": "أظهر الحلقات المفقودة في مجلدات المواسم", "LabelDisplayName": "الاسم المعروض:", "LabelDisplaySpecialsWithinSeasons": "أظهر الحلقات الخاصة في المواسم التي بثت فيها", "LabelDownMixAudioScale": "تعزيز الصوت عند تقليل توزيع قنوات الصوت:", @@ -436,7 +419,6 @@ "LabelPostProcessorArguments": "معطيات سطر الأوامر لتطبيق ما بعد المعالجة", "LabelPostProcessorArgumentsHelp": "استخدم المسار: {path} كمسار لملف التسجيل.", "LabelPreferredDisplayLanguage": "لغة الواجهة المفضلة:", - "LabelPreferredDisplayLanguageHelp": "إن ترجمة أمبي هو مشروع جاري التنفيذ.", "LabelProfileAudioCodecs": "كودك تشفير الصوت", "LabelProfileCodecs": "الكودكات:", "LabelProfileCodecsHelp": "يجب فصل العناصر بفواصل (,). يمكن أن تترك هذه فارغة إذا أريد تطبيقها على كل الكودكات.", @@ -484,12 +466,9 @@ "LabelTag": "البطاقة:", "LabelTime": "الوقت:", "LabelTimeLimitHours": "الوقت المحدد (بالساعة):", - "LabelTranscodingAudioCodec": "كودك تشفير الصوت:", - "LabelTranscodingContainer": "الحاوية:", "LabelTranscodingTempPathHelp": "هذا المجلد يحتوي على ملفات قيد الاستعمال من قبل المشفر البيني. حدد مساراً مخصوصاً او اتركه فارغاً لاستعمال القيمة الافتراضية في مجلد بيانات الخادم.", "LabelTranscodingThreadCount": "عدد مسارات التشفير البيني", "LabelTranscodingThreadCountHelp": "إختر الحد الأقصى المسموح به من مسارات التشفير البيني. إن تقليل عدد المسارات سيقلل من نسبة استخدام المعالج لكنه قد لا يحوّل الوسيطة بالسرعة المطلوبة لتشغيل سلس.", - "LabelTranscodingVideoCodec": "كودك تشفير الفيديو:", "LabelTriggerType": "نوع الزناد:", "LabelTunerIpAddress": "عنوان آي بي المولف:", "LabelTunerType": "نوع المولف:", @@ -573,7 +552,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "لضبط", "MessagePluginInstallDisclaimer": "إن الملحقات التي بناها أعضاء مجتمع أمبي لهي طريقة رائعة لتحسين متعة استخدام أمبي وذلك بإضافة المزايا والخدمات الجديدة. قبل تثبيت الملحقات، نرجو أخذ العلم بالآثار التي قد تلحقها بخادم أمبي الخاص بك، مثل أوقات أطولة لتمشيط مكتبتك، والعمليات الخلفية الإضافية وتقليل استقرار نظامك.", "MessageReenableUser": "أنظر أدناه لإعادة التفعيل", - "MessageSettingsSaved": "تم حفظ الإعدادات.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "مكان الوسائط التالي سيزال من مكتبة أمبي الخاصة بك:", "MessageUnableToConnectToServer": "لم نستطع الاتصال إلى الخادم المختار في الوقت الحالي. الرجاء التأكد من أنه يعمل ثم المحاولة مرة أخرى.", "MessageUnsetContentHelp": "المحتوى سيعرض كمجدات اعتيادية. لأفضل النتائج استخدم مدير واصفات البيانات لإعداد نوع محتوى المجلدات الفرعية.", @@ -611,7 +589,6 @@ "OptionArtist": "الفنان", "OptionAscending": "تصاعدي", "OptionAuto": "آلي", - "OptionAutomatic": "الآلي", "OptionAutomaticallyGroupSeries": "إدمج الحلقات الموزعة بين عدة مجلدات إلى مجلد واحد تلقائياً.", "OptionAutomaticallyGroupSeriesHelp": "في حال التفعيل فإن الحلقات الموزعة بين عدة مجلدات ستدمج تلقائياً في مجلد مسلسل واحد.", "OptionBlockBooks": "الكتب", @@ -749,18 +726,14 @@ "SystemDlnaProfilesHelp": "عرائض النظام تكون مقفلة للقراءة-فقط. وأي تغيير على عريضة من عرائض النظام ستحفظ إلى عريضة مخصوصة جديدة.", "TabAccess": "الدخول", "TabAdvanced": "متقدم", - "TabAlbumArtists": "فنانو الألبومات", "TabCatalog": "الكتالوج", "TabCodecs": "الكودكات", "TabContainers": "الحاويات", "TabDashboard": "لوحة العدادات", "TabDirectPlay": "تشغيل مباشر", - "TabEpisodes": "الحلقات", - "TabInfo": "معلومات", "TabLatest": "الاخير", "TabLogs": "الكشوفات", "TabMusic": "الموسيقى", - "TabMusicVideos": "الفيديوهات الموسيقية", "TabMyPlugins": "ملحقاتي", "TabNetworks": "الشبكات", "TabNfoSettings": "أعدادات Nfo", @@ -771,12 +744,10 @@ "TabProfile": "عريضة", "TabProfiles": "الحسابات", "TabResponses": "الردود", - "TabResumeSettings": "استئناف الإعدادات", "TabScheduledTasks": "المهام المجدولة", "TabServer": "الخادم", "TabSettings": "الإعدادات", "TabStreaming": "التشغيل التدفقي", - "TabTrailers": "العروض الإعلانية", "TabUpcoming": "القادم", "TellUsAboutYourself": "اخبرنا عن نفسك", "ThisWizardWillGuideYou": "مرشد الاعدادات سيساعدك خلال خطوات عملية الاعدادات. للبدء، الرجاء اختيار لغتك المفضلة.", @@ -1001,7 +972,6 @@ "HeaderKeepRecording": "استمر في التسجيل", "HeaderIdentifyItemHelp": "أدخل معيار بحث واحد أو أكثر. إزالة المعايير لزيادة نتائج البحث.", "HeaderHttpsSettings": "إعدادات HTTPS", - "HeaderHome": "الصفحة الرئيسية", "HeaderFetcherSettings": "إعدادات الجلب", "HeaderFavoritePlaylists": "قوائم التشغيل المفضلة", "HeaderFavoriteVideos": "مقاطع الفيديو المفضلة", @@ -1044,9 +1014,7 @@ "ErrorDeletingItem": "حدث خطأ في حذف العنصر من سيرفر Jellyfin. يرجى التحقق من أن سيرفر Jellyfin لديه حق الوصول للكتابة إلى مجلد الوسائط وحاول مرة أخرى.", "Episode": "حلقة", "EnableThemeVideosHelp": "قم بتشغيل الفيديوهات الرئيسية في الخلفية أثناء تصفح المكتبة.", - "EnableThemeVideos": "الفيديوهات الرئيسية", "EnableThemeSongsHelp": "قم بتشغيل اللحن الرئيسي في الخلفية أثناء تصفح المكتبة.", - "EnableThemeSongs": "اللحن الرئيسي", "EnableStreamLoopingHelp": "قم بتمكين هذا إذا كانت عمليات البث المباشر تحتوي فقط على بضع ثوان من البيانات وتحتاج إلى إعادة طلب مستمر. قد يؤدي تمكين هذا عندما لا تكون هناك حاجة إلى مشاكل.", "EnableStreamLooping": "تكرار البث المباشر", "EnableHardwareEncoding": "تمكين تشفير الأجهزة", @@ -1099,7 +1067,6 @@ "LabelAudioChannels": "قنوات الصوت:", "LabelAudioBitrate": "معدل بث الصوت:", "LabelAudioBitDepth": "عمق بث الصوت:", - "LabelAudio": "الصوت", "LabelAllowedRemoteAddressesMode": "وضع مرشح عنوان المضيف IP البعيد:", "LabelAllowedRemoteAddresses": "مرشح عنوان المضيف IP البعيد:", "LabelAirsBeforeSeason": "عروض بث قبل الموسم:", diff --git a/src/strings/be-by.json b/src/strings/be-by.json index 8bd6d2aa31..adaa0e43e1 100644 --- a/src/strings/be-by.json +++ b/src/strings/be-by.json @@ -3,7 +3,6 @@ "ButtonOk": "ОК", "ButtonQuickStartGuide": "Кіраўніцтва па запуску", "ButtonSignOut": "Sign out", - "HeaderAddUser": "Даданне карыстальніка", "HeaderEasyPinCode": "Просты PIN-код", "HeaderPaths": "Шляхі", "HeaderTaskTriggers": "Трыгеры задачы", diff --git a/src/strings/bg-bg.json b/src/strings/bg-bg.json index 1cc469a9fd..a79650546c 100644 --- a/src/strings/bg-bg.json +++ b/src/strings/bg-bg.json @@ -28,28 +28,21 @@ "ButtonAudioTracks": "Звукови пътеки", "ButtonBack": "Назад", "ButtonCancel": "Отмяна", - "ButtonEdit": "Редактиране", - "ButtonEditImages": "Редактиране на изображенията", - "ButtonFilter": "Филтър", "ButtonForgotPassword": "Забравена парола", "ButtonGotIt": "Добре", "ButtonGuide": "Справочник", - "ButtonHome": "Начало", "ButtonInfo": "Сведения", "ButtonLibraryAccess": "Достъп до библиотеката", "ButtonManualLogin": "Вход с име и парола", "ButtonMore": "Още", "ButtonNextTrack": "Следваща пътека", - "ButtonOff": "Изключено", "ButtonOk": "Добре", "ButtonOpen": "Отваряне", "ButtonParentalControl": "Родителски контрол", "ButtonPause": "Пауза", - "ButtonPlay": "Пускане", "ButtonPreviousTrack": "Предишна пътека", "ButtonProfile": "Профил", "ButtonQuickStartGuide": "Първи стъпки", - "ButtonRefresh": "Опресняване", "ButtonRefreshGuideData": "Обновяване на данните в справочника", "ButtonRemove": "Премахване", "ButtonRename": "Преименуване", @@ -65,7 +58,6 @@ "ButtonSignOut": "Отписване", "ButtonStop": "Спиране", "ButtonSubmit": "Подаване", - "ButtonSubtitles": "Субтитри", "ButtonUninstall": "Деинсталиране", "ButtonWebsite": "Сайт", "ChannelAccessHelp": "Изберете каналите, които да споделите с потребителя. Администраторите ще могат да редактират всички канали, използвайки управлението на метаданни.", @@ -98,7 +90,6 @@ "EditMetadata": "Редактиране на метаданните", "EditSubtitles": "Редактиране на субтитрите", "EnableCinemaMode": "Режим \"Киносалон\"", - "EnableThemeSongs": "Тематични песни", "Ended": "Приключило", "EndsAtValue": "Свършва на {0}", "Episodes": "Епизоди", @@ -130,11 +121,9 @@ "HeaderActiveDevices": "Активни устройства", "HeaderActiveRecordings": "Активни записи", "HeaderActivity": "Дейност", - "HeaderAddScheduledTaskTrigger": "Добавяне на спусък", "HeaderAddToCollection": "Добавяне към колекция", "HeaderAddToPlaylist": "Добавяне към списък", "HeaderAddUpdateImage": "Добавяне/редактиране на изображение", - "HeaderAddUser": "+ Потребител", "HeaderAdditionalParts": "Допълнителни части", "HeaderAdmin": "Администриране", "HeaderAlbumArtists": "Изпълнители на албуми", @@ -142,9 +131,7 @@ "HeaderApiKeys": "ППИ ключове", "HeaderApp": "Програма", "HeaderAudioSettings": "Настройки на звука", - "HeaderBooks": "Книги", "HeaderCastAndCrew": "Артисти и изпълнители", - "HeaderCastCrew": "Артисти и изпълнители", "HeaderCodecProfile": "Профил на кодека", "HeaderContainerProfile": "Профил на контейнера", "HeaderContinueListening": "Продължаване на слушането", @@ -163,7 +150,6 @@ "HeaderFeatureAccess": "Достъп до функции", "HeaderFetchImages": "Свали изображения:", "HeaderForKids": "Детски", - "HeaderForgotPassword": "Забравена парола", "HeaderFrequentlyPlayed": "Често пускани", "HeaderGuideProviders": "Доставчици на справочници", "HeaderIdentification": "Идентификация", @@ -182,7 +168,6 @@ "HeaderLibrarySettings": "Настройки на библиотеката", "HeaderMedia": "Медия", "HeaderMediaFolders": "Медийни папки", - "HeaderMediaInfo": "Сведения", "HeaderMetadataSettings": "Настройки на метаданните", "HeaderMoreLikeThis": "Подобни", "HeaderMusicQuality": "Качество на музиката", @@ -271,7 +256,6 @@ "LabelCustomCertificatePathHelp": "Път до файл с шифровъчен стандарт №12 (PKCS #12), съдържащ сертификат и частен ключ за поддръжка на протокол TLS на собствен домейн.", "LabelCustomCss": "CSS по избор:", "LabelCustomCssHelp": "Добавете собствен стил към уеб-интерфейса.", - "LabelCustomDeviceDisplayName": "Показвано име:", "LabelCustomRating": "Оценка по избор:", "LabelDateAdded": "Дата на добавяне:", "LabelDateTimeLocale": "Местоположение за дата и час:", @@ -279,7 +263,6 @@ "LabelDeviceDescription": "Описание на устройството", "LabelDisplayLanguage": "Език на показване:", "LabelDisplayLanguageHelp": "Превеждането на Емби е текущ проект.", - "LabelDisplayMissingEpisodesWithinSeasons": "Показване на липсващите епизоди в сезоните", "LabelDisplayMode": "Режим на показване:", "LabelDisplayName": "Показвано име:", "LabelDisplayOrder": "Ред на показване:", @@ -361,7 +344,6 @@ "LabelPlayDefaultAudioTrack": "Да се пуска първоначалната звукова пътечка независимо от езика", "LabelPlaylist": "Списък:", "LabelPreferredDisplayLanguage": "Предпочитан език на показване:", - "LabelPreferredDisplayLanguageHelp": "Превеждането на Емби е текущ проект.", "LabelPreferredSubtitleLanguage": "Предпочитан език на субтитрите:", "LabelProfileAudioCodecs": "Звукови кодеци:", "LabelProfileCodecs": "Кодеци:", @@ -394,7 +376,6 @@ "LabelStatus": "Състояние:", "LabelStopWhenPossible": "Спирай, когато е възможно:", "LabelSubtitlePlaybackMode": "Режим на субтитрите:", - "LabelSubtitles": "Субтитри", "LabelSupportedMediaTypes": "Поддържани типове медия:", "LabelTag": "Етикет:", "LabelTextColor": "Цвят на текста:", @@ -403,9 +384,7 @@ "LabelTime": "Време:", "LabelTimeLimitHours": "Времево ограничение (часове):", "LabelTitle": "Заглавие:", - "LabelTranscodingAudioCodec": "Звуков кодек:", "LabelTranscodingTempPathHelp": "Посочете персонализиран път за файлове,които е необходимо да бъдат транскодирани и доставени на клиентите. Оставете празно ,за да се използва мястото по подразбиране.", - "LabelTranscodingVideoCodec": "Видеокодек:", "LabelTriggerType": "Тип на спусъка:", "LabelType": "Вид:", "LabelTypeText": "Текст", @@ -448,7 +427,6 @@ "MessageNoPluginsInstalled": "Нямате инсталирани приставки.", "MessageNothingHere": "Тук няма нищо.", "MessagePleaseEnsureInternetMetadata": "Моля, уверете се че свалянето на метаданни от интернет е разрешено.", - "MessageSettingsSaved": "Настройките са запазени.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Следните местоположения ще бъдат премахнати от библиотеката ви:", "MessageYouHaveVersionInstalled": "В момента имате инсталирана версия {0}.", "MetadataManager": "Управление на метаданните", @@ -490,7 +468,6 @@ "OptionArtist": "Изпълнител", "OptionAscending": "Възходящо", "OptionAuto": "Автоматично", - "OptionAutomatic": "Автоматично", "OptionBlockBooks": "Книги", "OptionBlockMovies": "Филми", "OptionBlockTvShows": "Телевизионни сериали", @@ -634,18 +611,14 @@ "TV": "Телевизор", "TabAccess": "Достъп", "TabAdvanced": "Допълнителни", - "TabAlbumArtists": "Изпълнители на албуми", "TabCatalog": "Каталог", "TabCodecs": "Кодеци", "TabContainers": "Контейнери", "TabDashboard": "Табло", "TabDirectPlay": "Директно пускане", - "TabEpisodes": "Епизоди", - "TabInfo": "Информация", "TabLatest": "Последни", "TabLogs": "Журнали", "TabMusic": "Музика", - "TabMusicVideos": "Музикални клипове", "TabMyPlugins": "Моите приставки", "TabNetworks": "Мрежи", "TabNfoSettings": "Формат за метаданни NFO", @@ -656,12 +629,10 @@ "TabProfile": "Профил", "TabProfiles": "Профили", "TabResponses": "Отговори", - "TabResumeSettings": "Възобнови", "TabScheduledTasks": "Планирани задачи", "TabServer": "Сървър", "TabSettings": "Настройки", "TabStreaming": "Излъчване", - "TabTrailers": "Трейлъри", "TabUpcoming": "Предстоящи", "Tags": "Етикети", "TagsValue": "Етикети: {0}", @@ -833,7 +804,6 @@ "EnableDetailsBannerHelp": "Покажи картинка с банер в горната част на страницата с детайли.", "EnableDetailsBanner": "Банер с подробности", "EnableThemeVideosHelp": "Пускай тематични видеа на заден план ,докато се разглежда библиотеката.", - "EnableThemeVideos": "Тематични видеа", "EnableThemeSongsHelp": "Пускай тематична музика ,докато се разглежда библиотеката.", "EnableStreamLoopingHelp": "Включи това ,ако поточното видео се предава на кратки интервали и е необходимо да се изпращат заявки постоянно.Включването на тази опция без нужда може да породи проблеми.", "EnableStreamLooping": "Автоматично повторение на поточни видеа", @@ -871,7 +841,6 @@ "HeaderFavoriteMovies": "Любими филми", "HeaderFavoriteBooks": "Любими книги", "HeaderExternalIds": "Външни идентификатори:", - "HeaderEpisodes": "Епизоди", "HeaderEnabledFieldsHelp": "Махни отметката ,за да го заключиш и да предотвратиш неговата промяна.", "HeaderDVR": "DVR (Цифрово записващо устройство)", "HeaderDirectPlayProfileHelp": "Добави профили за директно възпроизвеждане ,за да се укаже кои формати може да възпроизвежда устройството.", @@ -970,7 +939,6 @@ "HeaderIdentificationCriteriaHelp": "Въведете пони един критерии.", "HeaderHttpsSettings": "HTTPS настройки", "HeaderHttpHeaders": "HTTP Хедъри", - "HeaderHome": "Главна", "HeaderFetcherSettings": "Настройки на програмата за изтегляне", "HeaderFavoritePlaylists": "Любими списъци", "LabelDeathDate": "Дата на смърт:", @@ -996,7 +964,6 @@ "LabelAudioChannels": "Аудио канали:", "LabelAudioBitrate": "Скорост на предаване на аудиото:", "LabelAudioBitDepth": "Битова дълбочина на аудиото:", - "LabelAudio": "Аудио", "LabelAppNameExample": "Примерно: Sickbeard, Sonarr", "LabelAllowedRemoteAddressesMode": "Режим на филтъра за външни ИП адреси:", "LabelAllowedRemoteAddresses": "Филтър за външни ИП адреси:", @@ -1176,7 +1143,6 @@ "LabelTranscodingFramerate": "Честота на кадрите при транскодиране:", "LabelTranscodes": "Транскодирания:", "LabelTranscodePath": "Път за транскодиране:", - "LabelTranscodingContainer": "Контейнер:", "LabelTrackNumber": "Номер на песен:", "LabelTextBackgroundColor": "Цвят на фона на текста:", "LabelTagline": "Ключова фраза:", diff --git a/src/strings/bn_BD.json b/src/strings/bn_BD.json index e13514fda4..3f11b4f050 100644 --- a/src/strings/bn_BD.json +++ b/src/strings/bn_BD.json @@ -17,26 +17,20 @@ "AddToPlaylist": "প্লেলিস্টে অ্যাড করুন", "AddToPlayQueue": "প্লে কিউ তে অ্যাড করুন", "AddToCollection": "কালেকশন এ অ্যাড করুন", - "ButtonPlay": "চালান", "ButtonPause": "বিরতি", "ButtonParentalControl": "অভিভাবকীয় নিয়ন্ত্রণ", "ButtonOpen": "খুলুন", "ButtonOk": "আচ্ছা", - "ButtonOff": "বন্ধ", "ButtonNextTrack": "পরবর্তী ট্র্যাক", "ButtonNetwork": "নেটওয়ার্ক", "ButtonMore": "আরও", "ButtonLibraryAccess": "লাইব্রেরি অ্যাক্সেস", "ButtonInfo": "তথ্য", - "ButtonHome": "হোম", "ButtonGuide": "গাইড", "ButtonGotIt": "বুঝেছি", "ButtonFullscreen": "ফুলস্ক্রিন", "ButtonForgotPassword": "পাসওয়ার্ড ভুলে গেছি", - "ButtonFilter": "ফিলটার", "ButtonEditOtherUserPreferences": "এই ব্যবহারকারীর প্রোফাইল, ছবি এবং ব্যক্তিগত পছন্দগুলি এডিট করুন।", - "ButtonEditImages": "ছবিগুলি এডিট করুন", - "ButtonEdit": "এডিট করুন", "ButtonChangeServer": "সার্ভার পরিবর্তন করুন", "ButtonCancel": "বাতিল", "ButtonBack": "অনগ্রসর", @@ -91,7 +85,6 @@ "ButtonRename": "নামান্তর", "ButtonRemove": "সরান", "ButtonRefreshGuideData": "গাইড ডেটা রিফ্রেশ করুন", - "ButtonRefresh": "রিফ্রেশ", "ButtonQuickStartGuide": "দ্রুত শুরু করার নির্দেশাবলী", "CopyStreamURL": "স্ট্রিম ইউআরএল কপি", "ContinueWatching": "দেখা অব্যাহত রাখুন", diff --git a/src/strings/ca.json b/src/strings/ca.json index 413fef4792..c199cb2cbe 100644 --- a/src/strings/ca.json +++ b/src/strings/ca.json @@ -23,14 +23,10 @@ "ButtonBack": "Darrera", "ButtonCancel": "Cancel·la", "ButtonChangeServer": "Canvia Servidor", - "ButtonEdit": "Edita", - "ButtonEditImages": "Edita les imatges", "ButtonEditOtherUserPreferences": "Edita el perfil, la imatge i les preferències d'aquest usuari.", - "ButtonFilter": "Filtra", "ButtonForgotPassword": "He oblidat la contrasenya", "ButtonGotIt": "Entesos", "ButtonGuide": "Guia", - "ButtonHome": "Inici", "ButtonLibraryAccess": "Accés a la biblioteca", "ButtonManualLogin": "Inici de sessió manual", "ButtonMore": "Més", @@ -39,11 +35,9 @@ "ButtonOpen": "Obre", "ButtonParentalControl": "Control parental", "ButtonPause": "Pausa", - "ButtonPlay": "Reprodueix", "ButtonPreviousTrack": "Pista anterior", "ButtonProfile": "Perfil", "ButtonQuickStartGuide": "Guia d'inici ràpid", - "ButtonRefresh": "Refresca", "ButtonRefreshGuideData": "Refresca les Dades de la Guia", "ButtonRemove": "Elimina", "ButtonResetEasyPassword": "Reinicia el codi pin senzill", @@ -59,7 +53,6 @@ "ButtonSignOut": "Tanca sessió", "ButtonStop": "Atura", "ButtonSubmit": "Envia", - "ButtonSubtitles": "Subtítols", "ButtonTrailer": "Tràiler", "CancelRecording": "Cancel·la enregistrament", "CancelSeries": "Cancel·la sèrie", @@ -113,22 +106,18 @@ "HeaderActiveDevices": "Dispositius Actius", "HeaderActiveRecordings": "Enregistraments Actius", "HeaderActivity": "Activitat", - "HeaderAddScheduledTaskTrigger": "Afegir Disparador", "HeaderAddToCollection": "Afegir a Col·lecció", "HeaderAddToPlaylist": "Afegir a la llista de reproducció", "HeaderAddUpdateImage": "Afegir/Actualitzar Imatge", - "HeaderAddUser": "Afegir Usuari", "HeaderAdditionalParts": "Parts addicionals", "HeaderApiKey": "Clau Api", "HeaderApiKeys": "Claus Api", "HeaderApiKeysHelp": "Les aplicacions externes requereixen una Api key pere tal de poder-se comunicar amb el Servidor d'Jellyfin. Les claus són emeses iniciant sessió amb un compte d'Jellyfin, o concedint manualment una clau a l'aplicació.", "HeaderAudioSettings": "Preferències d'Àudio", - "HeaderBooks": "Llibres", "HeaderBranding": "Aparença", "HeaderCancelRecording": "Cancel·lar Enregistrament", "HeaderCancelSeries": "Cancel·lar Sèries", "HeaderCastAndCrew": "Repartiment i Equip", - "HeaderCastCrew": "Repartiment i Equip", "HeaderCodecProfile": "Perfil de Còdec", "HeaderConfirmProfileDeletion": "Confirmar Supressió de Perfil", "HeaderConnectToServer": "Connectar al Servidor", @@ -151,7 +140,6 @@ "HeaderExternalIds": "Identificadors externs:", "HeaderFeatureAccess": "Accés a Funcions", "HeaderFetchImages": "Obtingues Imatges:", - "HeaderForgotPassword": "He oblidat la contrasenya", "HeaderFrequentlyPlayed": "Reproduït Freqüentment", "HeaderHttpHeaders": "Capçaleres Http", "HeaderIdentification": "Identificació", @@ -173,7 +161,6 @@ "HeaderLibraryOrder": "Ordre de la llibreria", "HeaderLibrarySettings": "Preferències de la Biblioteca", "HeaderMediaFolders": "Directoris Multimèdia", - "HeaderMediaInfo": "Info Multimèdia", "HeaderMetadataSettings": "Preferències de Metadades", "HeaderMusicVideos": "Vídeos Musicals", "HeaderMyDevice": "El meu dispositiu", @@ -260,7 +247,6 @@ "LabelCurrentPassword": "Contrasenya actual:", "LabelCustomCss": "CSS propi:", "LabelCustomCssHelp": "Aplica el teu propi css a la interfície web.", - "LabelCustomDeviceDisplayName": "Nom a mostrar:", "LabelDateAdded": "Data afegit:", "LabelDay": "Dia:", "LabelDeathDate": "Data de defunció:", @@ -269,7 +255,6 @@ "LabelDeviceDescription": "Descripció del dispositiu", "LabelDiscNumber": "Disc:", "LabelDisplayLanguage": "Idioma de visualització:", - "LabelDisplayMissingEpisodesWithinSeasons": "Mostra els episodis que manquen dins les temporades", "LabelDisplayName": "Nom a mostrar:", "LabelDisplayOrder": "Ordre de visualització:", "LabelDisplaySpecialsWithinSeasons": "Mostra els especials dins les temporades en que van ser emesos", @@ -354,7 +339,6 @@ "LabelPlayDefaultAudioTrack": "Reprodueix la pista d'àudio per defecte independentment de l'idioma", "LabelPlaylist": "Llista de rep.:", "LabelPreferredDisplayLanguage": "Idioma de visualització preferit:", - "LabelPreferredDisplayLanguageHelp": "La traducció d'Jellyfin és un projecte en curs.", "LabelPreferredSubtitleLanguage": "Idioma preferit de subtítols:", "LabelProfileAudioCodecs": "Còdecs d'àudio:", "LabelProfileCodecs": "Còdecs:", @@ -390,10 +374,7 @@ "LabelTimeLimitHours": "Temps límit (en hores):", "LabelTitle": "Títol:", "LabelTrackNumber": "Pista:", - "LabelTranscodingAudioCodec": "Còdec d'àudio", - "LabelTranscodingContainer": "Contenidor:", "LabelTranscodingTempPathHelp": "Aquest directori conté fitxers emprats pel transcodificador. Especifica un directori personalitzat o deixa-ho en blanc per emprar el per defecte dins el directori de dades del servidor.", - "LabelTranscodingVideoCodec": "Còdec de vídeo:", "LabelTriggerType": "Tipus de Disparador:", "LabelType": "Tipus:", "LabelUseNotificationServices": "Empra els següents serveis:", @@ -433,7 +414,6 @@ "MessageNoTrailersFound": "No s'han trobat tràilers. Instal·la el canal Trailer per millorar la teva experiència amb les pel·lícules afegint una llibreria de tràilers d'internet.", "MessageNothingHere": "Res aquí.", "MessagePleaseEnsureInternetMetadata": "Si et plau, assegura't que la descàrrega de metadades d'internet està habilitada.", - "MessageSettingsSaved": "Preferències desades.", "MessageYouHaveVersionInstalled": "Actualment tens la versió {0} instal·lada.", "MetadataManager": "Gestor de Metadades", "MinutesAfter": "minuts després", @@ -607,11 +587,8 @@ "TabContainers": "Contenidors", "TabDashboard": "Tauler de Control", "TabDirectPlay": "Reproducció Directa", - "TabEpisodes": "Episodis", - "TabInfo": "Informació", "TabLatest": "Novetats", "TabMusic": "Música", - "TabMusicVideos": "Vídeos musicals", "TabMyPlugins": "Els meus complements", "TabNetworks": "Cadenes", "TabNfoSettings": "Preferències d'Nfo", @@ -625,7 +602,6 @@ "TabScheduledTasks": "Tasques Programades", "TabServer": "Servidor", "TabSettings": "Preferències", - "TabTrailers": "Tràilers", "TabUpcoming": "Properament", "Tags": "Etiquetes", "TellUsAboutYourself": "Explica'ns sobre tu", @@ -721,7 +697,6 @@ "ChannelNameOnly": "Número de canal", "ChangingMetadataImageSettingsNewContent": "Els canvis als paràmetres de descàrrega de metadades o d'obra d'art només s'apliquen al contingut nou afegit a la biblioteca. Per aplicar els canvis als títols existents, haureu de refrescar les metadades manualment.", "ButtonTogglePlaylist": "Llista de reproducció", - "ButtonOff": "Apagar", "BurnSubtitlesHelp": "Determina si el servidor hauria de gravar els subtítols en transcodificar vídeos. Evitar això millorarà molt el rendiment. Seleccioneu Automàtica per gravar formats basats en imatges (VOBSUB, PGS, SUB, IDX) i certs subtítols ASS o SSA.", "Browse": "Navega", "BoxRear": "Caixa (posterior)", diff --git a/src/strings/cs.json b/src/strings/cs.json index 3156bf36bc..cf7b3cf2e9 100644 --- a/src/strings/cs.json +++ b/src/strings/cs.json @@ -43,29 +43,22 @@ "ButtonBack": "Zpět", "ButtonCancel": "Zrušit", "ButtonChangeServer": "Změna serveru", - "ButtonEdit": "Upravit", - "ButtonEditImages": "Editovat obrázky", "ButtonEditOtherUserPreferences": "Editace uživatelského profilu, avataru a osobních preferencí.", - "ButtonFilter": "Filtr", "ButtonForgotPassword": "Zapomenuté heslo", "ButtonFullscreen": "Celá obrazovka", "ButtonGotIt": "Mám to", "ButtonGuide": "Programový průvodce", - "ButtonHome": "Domů", "ButtonLibraryAccess": "Přístup ke knihovně", "ButtonManualLogin": "Manuální přihlášení", "ButtonMore": "Více", "ButtonNetwork": "Síť", "ButtonNextTrack": "Následující stopa", - "ButtonOff": "Vypnout", "ButtonOpen": "Otevřít", "ButtonParentalControl": "Rodičovská kontrola", "ButtonPause": "Pozastavit", - "ButtonPlay": "Přehrát", "ButtonPreviousTrack": "Předchozí stopa", "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Rychlý průvodce", - "ButtonRefresh": "Obnovit", "ButtonRefreshGuideData": "Obnovit data programového průvodce", "ButtonRemove": "Odstranit", "ButtonRename": "Přejmenovat", @@ -83,7 +76,6 @@ "ButtonSignOut": "Odhlásit se", "ButtonStop": "Zastavit", "ButtonSubmit": "Potvrdit", - "ButtonSubtitles": "Titulky", "ButtonTrailer": "Upoutávka", "ButtonUninstall": "Odinstalovat", "ButtonWebsite": "Webové stránky", @@ -151,9 +143,7 @@ "EnableNextVideoInfoOverlay": "Zobrazit informaci o následujícím videu během přehrávání", "EnablePhotos": "Zobrazit fotky", "EnablePhotosHelp": "Obrázky budou detekovány a zobrazeny spolu s dalšími multimediálními soubory.", - "EnableThemeSongs": "Tématická hudba na pozadí", "EnableThemeSongsHelp": "Přehrát tématickou hudbu na pozadí při procházení knihovny.", - "EnableThemeVideos": "Tématická videa", "EnableThemeVideosHelp": "Přehrát tématické video na pozadí při procházení knihovny.", "Ended": "Ukončeno", "EndsAtValue": "Končí v {0}", @@ -202,11 +192,9 @@ "HeaderActiveDevices": "Aktivní zařízení", "HeaderActiveRecordings": "Aktivní nahrávání", "HeaderActivity": "Aktivita", - "HeaderAddScheduledTaskTrigger": "Přidat Spouštěč", "HeaderAddToCollection": "Přidat do Kolekce", "HeaderAddToPlaylist": "Přidat do playlistu", "HeaderAddUpdateImage": "Přidat/aktualizovat obrázek", - "HeaderAddUser": "Přidat uživatele", "HeaderAdditionalParts": "Další součásti", "HeaderAdmin": "Administrátor", "HeaderAlbumArtists": "Umělci alba", @@ -217,12 +205,10 @@ "HeaderApp": "Aplikace", "HeaderAudioBooks": "Audio knihy", "HeaderAudioSettings": "Nastavení zvuku", - "HeaderBooks": "Knihy", "HeaderBranding": "Branding", "HeaderCancelRecording": "Zrušit nahrávání", "HeaderCancelSeries": "Ukončit Seriál", "HeaderCastAndCrew": "Herci a obsazení", - "HeaderCastCrew": "Herci a obsazení", "HeaderChannelAccess": "Přístup ke kanálu", "HeaderCodecProfile": "Profil kodeků", "HeaderCodecProfileHelp": "Kodek profily označují omezení daného zařízení pro přehrávání pomocí specifických kodeků. Jestliže je omezení aplikováno, média budou překódovany i v případě, že kodek je nakonfigurován pro přímé přehrávání.", @@ -252,12 +238,10 @@ "HeaderEditImages": "Editovat obrázky", "HeaderEnabledFields": "Povolené pole", "HeaderEnabledFieldsHelp": "Zrušte zaškrtnutí, abyste zabránily změnám dat.", - "HeaderEpisodes": "Epizody", "HeaderError": "Chyba", "HeaderFeatureAccess": "Přístup k funkcím", "HeaderFetchImages": "Načíst obrázky:", "HeaderForKids": "Pro děti", - "HeaderForgotPassword": "Zapomenuté heslo", "HeaderFrequentlyPlayed": "Nejčastěji přehráváno", "HeaderGuideProviders": "Poskytovatelé programových průvodců", "HeaderHttpHeaders": "Http hlavičky", @@ -283,7 +267,6 @@ "HeaderLoginFailure": "Přihlášení selhalo", "HeaderMedia": "Média", "HeaderMediaFolders": "Složky médií", - "HeaderMediaInfo": "Informace o médiu", "HeaderMetadataSettings": "Nastavení metadat", "HeaderMoreLikeThis": "Podobné položky", "HeaderMusicQuality": "Kvalita hudby", @@ -402,7 +385,6 @@ "LabelAppNameExample": "Příklad: Sickbeard, Sonarr", "LabelArtists": "Umělci:", "LabelArtistsHelp": "Více interpretů se odděluje pomocí středníku.", - "LabelAudio": "Zvuk", "LabelAudioLanguagePreference": "Preferovaný jazyk zvuku:", "LabelBindToLocalNetworkAddress": "Vázat na místní síťovou adresu:", "LabelBindToLocalNetworkAddressHelp": "Změní místní IP adresu serveru HTTP. Pokud je ponecháno prázdné, server bude svázán se všemi dostupnými adresami. Změna této hodnoty vyžaduje restartování.", @@ -422,7 +404,6 @@ "LabelCurrentPassword": "Aktuální heslo:", "LabelCustomCss": "Vlastní CSS:", "LabelCustomCssHelp": "Aplikovat vaše vlastní styly webového rozhraní.", - "LabelCustomDeviceDisplayName": "Jméno pro zobrazení:", "LabelCustomDeviceDisplayNameHelp": "Nahradit vlastním názvem zobrazení nebo ponechte prázdné, aby název byl určen zařízením.", "LabelCustomRating": "Vlastní hodnocení:", "LabelDateAdded": "Datum přidání:", @@ -437,7 +418,6 @@ "LabelDiscNumber": "Číslo disku:", "LabelDisplayLanguage": "Jazyk rozhraní:", "LabelDisplayLanguageHelp": "Překlad projektu Jellyfin se neustále vyvíjí.", - "LabelDisplayMissingEpisodesWithinSeasons": "Zobrazit chybějící epizody", "LabelDisplayMode": "Režim zobrazení:", "LabelDisplayName": "Zobrazované jméno:", "LabelDisplayOrder": "Pořadí zobrazení:", @@ -580,7 +560,6 @@ "LabelPostProcessorArguments": "Argumenty příkazové řádky pro následné zpracování:", "LabelPostProcessorArgumentsHelp": "Použij {path} jako cestu k nahrávanému souboru.", "LabelPreferredDisplayLanguage": "Preferovaný jazyk zobrazení:", - "LabelPreferredDisplayLanguageHelp": "Překlad projektu Jellyfin se neustále vyvíjí.", "LabelPreferredSubtitleLanguage": "Preferovaný jazyk titulků:", "LabelProfileAudioCodecs": "Audio kodeky:", "LabelProfileCodecs": "Kodeky:", @@ -632,7 +611,6 @@ "LabelStopping": "Zastavování", "LabelSubtitleFormatHelp": "Příklad: srt", "LabelSubtitlePlaybackMode": "Mód titulků:", - "LabelSubtitles": "Titulky", "LabelSupportedMediaTypes": "Podporované typy médií:", "LabelTagline": "Slogan:", "LabelTextBackgroundColor": "Barva pozadí textu:", @@ -643,12 +621,9 @@ "LabelTimeLimitHours": "Časový limit (v hodinách):", "LabelTitle": "Název:", "LabelTrackNumber": "Číslo stopy:", - "LabelTranscodingAudioCodec": "Audio kodek:", - "LabelTranscodingContainer": "Obal:", "LabelTranscodingTempPathHelp": "Určete vlastní cestu pro překódované soubory odesílané klientům. Chcete-li použít výchozí nastavení serveru, ponechte pole prázdné.", "LabelTranscodingThreadCount": "Počet vláken pro překódování:", "LabelTranscodingThreadCountHelp": "Zadejte maximální počet vláken pro překódování. Snížením počtu vláken se sníží využití procesoru, ale převod nemusí být dostatečně rychlý pro plynulé přehrávání.", - "LabelTranscodingVideoCodec": "Video kodek:", "LabelTriggerType": "Typ úkolu:", "LabelTunerIpAddress": "IP adresa tuneru:", "LabelTunerType": "Typ tuneru:", @@ -745,7 +720,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "Pro konfiguraci zásuvného modulu se přihlaste přímo na lokální server.", "MessagePluginInstallDisclaimer": "Zásuvné moduly vytvořené členy komunity jsou skvělým způsobem, jak si zlepšit prožitek pomocí dalších funkcí. Před instalací se prosím seznamte se všemi dopady, které mohou doplňky na server mít, např.: pomalejší skenování knihovny, delší zpracování na pozadí nebo snížená stabilita systému.", "MessageReenableUser": "Viz níže pro znovuzapnutí", - "MessageSettingsSaved": "Nastavení uloženo.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Z vaší knihovny budou odstraněny následující zdroje médií:", "MessageUnableToConnectToServer": "Nejsme schopni se připojit k vybranému serveru právě teď. Prosím, ujistěte se, že je spuštěn a zkuste to znovu.", "MessageUnsetContentHelp": "Obsah je zobrazen pomocí prostých složek. Pro dosažení nejlepších výsledků pomocí správce metadat nastavte typy obsahu pod-složek.", @@ -802,7 +776,6 @@ "OptionArtist": "Umělec", "OptionAscending": "Vzestupně", "OptionAuto": "Automaticky", - "OptionAutomatic": "Automaticky", "OptionAutomaticallyGroupSeries": "Automatické sloučení k seriálu, které jsou ve více složkách", "OptionAutomaticallyGroupSeriesHelp": "Seriály uložené ve více složkách v této knihovně budou automaticky sloučeny do jednoho seriálu.", "OptionBlockBooks": "Knihy", @@ -1014,16 +987,13 @@ "SystemDlnaProfilesHelp": "Systémové profily jsou jen pro čtení. Chcete-li přepsat profil systému, vytvořit vlastní profil zaměřený na stejné zařízení.", "TabAccess": "Přístup", "TabAdvanced": "Pokročilé", - "TabAlbumArtists": "Umělci alba", "TabCatalog": "Katalog", "TabCodecs": "Kodeky", "TabContainers": "Obaly", "TabDashboard": "Nástěnka", - "TabEpisodes": "Epizody", "TabLatest": "Nejnovější", "TabLogs": "Záznamy", "TabMusic": "Hudba", - "TabMusicVideos": "Hudební videa", "TabMyPlugins": "Moje zásuvné moduly", "TabNetworks": "Stanice", "TabNfoSettings": "NFO nastavení", @@ -1034,11 +1004,9 @@ "TabProfile": "Profil", "TabProfiles": "Profily", "TabResponses": "Odpovědi", - "TabResumeSettings": "Obnovit", "TabScheduledTasks": "Naplánované úlohy", "TabSettings": "Nastavení", "TabStreaming": "Streamování", - "TabTrailers": "Upoutávky", "TabUpcoming": "Nadcházející", "Tags": "Tagy", "TellUsAboutYourself": "Řekněte nám něco o sobě", @@ -1296,7 +1264,6 @@ "SubtitleDownloadersHelp": "Povolte a zařaďte preferované stahovače titulků v pořadí podle priority.", "TV": "TV", "TabDirectPlay": "Přímé přehrávání", - "TabInfo": "Info", "TabServer": "Server", "TagsValue": "Tagy: {0}", "ThemeSongs": "Tematická hudba", @@ -1312,7 +1279,6 @@ "Vertical": "Svisle", "ViewPlaybackInfo": "Zobrazení informací o přehrávání", "Whitelist": "Povolit vše kromě výjimek", - "HeaderHome": "Domů", "DashboardOperatingSystem": "Operační systém: {0}", "DashboardArchitecture": "Architektura: {0}", "MessageNoServersAvailable": "Pomocí automatického zjišťování nebyly nalezeny žádné servery.", diff --git a/src/strings/da.json b/src/strings/da.json index 20e237c7fe..e097d93dd2 100644 --- a/src/strings/da.json +++ b/src/strings/da.json @@ -40,26 +40,20 @@ "ButtonBack": "Tilbage", "ButtonCancel": "Annuller", "ButtonChangeServer": "Skift server", - "ButtonEdit": "Rediger", - "ButtonEditImages": "Rediger billeder", "ButtonEditOtherUserPreferences": "Rediger denne brugers profil, billede og personlige indstillinger.", "ButtonForgotPassword": "Glemt Adgangskode", "ButtonFullscreen": "Fuld skærm", "ButtonGotIt": "Forstået", - "ButtonHome": "Hjem", "ButtonLibraryAccess": "Biblioteksadgang", "ButtonManualLogin": "Manuel Login", "ButtonMore": "Mere", "ButtonNetwork": "Netværk", "ButtonNextTrack": "Næste spor", - "ButtonOff": "Fra", "ButtonOpen": "Åben", "ButtonParentalControl": "Forældrekontrol", - "ButtonPlay": "Afspil", "ButtonPreviousTrack": "Forrige spor", "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Hurtig-start guide", - "ButtonRefresh": "Opdater", "ButtonRefreshGuideData": "Opdater Guide data", "ButtonRemove": "Fjern", "ButtonRename": "Omdøb", @@ -77,7 +71,6 @@ "ButtonSignIn": "Log Ind", "ButtonSignOut": "Log ud", "ButtonSubmit": "Indsend", - "ButtonSubtitles": "Undertekster", "ButtonUninstall": "Afinstaller", "ButtonWebsite": "Hjemmeside", "CancelRecording": "Annuller optagelse", @@ -169,11 +162,9 @@ "HeaderActiveDevices": "Aktive enheder", "HeaderActiveRecordings": "Aktive optagelser", "HeaderActivity": "Aktivitet", - "HeaderAddScheduledTaskTrigger": "Tilføj udløser", "HeaderAddToCollection": "Tilføj til samling", "HeaderAddToPlaylist": "Tilføj til afspilningsliste", "HeaderAddUpdateImage": "Tilføj/opdater billede", - "HeaderAddUser": "Tilføj bruger", "HeaderAdditionalParts": "Andre stier", "HeaderAlert": "Advarsel", "HeaderAllowMediaDeletionFrom": "Tillad Media Sletning Fra", @@ -182,11 +173,9 @@ "HeaderApiKeysHelp": "Eksterne applikationer skal have en API-nøgle for at kunne kommunikere med Jellyfin. Nøgler udstedes ved at logge ind med en Jellyfin konto, eller ved manuelt at tildele applikationen en nøgle.", "HeaderAudioSettings": "Lydindstillinger", "HeaderBlockItemsWithNoRating": "Klokér titler uden eller med ukendt bedømmelses information:", - "HeaderBooks": "Bøger", "HeaderCancelRecording": "Annuller Optagelse", "HeaderCancelSeries": "Annuller Serie", "HeaderCastAndCrew": "Medvirkende", - "HeaderCastCrew": "Medvirkende", "HeaderChannelAccess": "Adgang til kanaler", "HeaderChapterImages": "Kapitel Billeder", "HeaderCodecProfile": "Codec profil", @@ -218,14 +207,12 @@ "HeaderEditImages": "Rediger billeder", "HeaderEnabledFields": "Aktivér Felter", "HeaderEnabledFieldsHelp": "Fjern fluebenet fra et felt for at låse det og forhindre dets data fra at blive ændret.", - "HeaderEpisodes": "Episoder", "HeaderError": "Fejl", "HeaderExternalIds": "Eksterne ID'er:", "HeaderFeatureAccess": "Adgang til funktioner", "HeaderFetchImages": "Hent billeder:", "HeaderFetcherSettings": "Henter indstillinger", "HeaderForKids": "For Børn", - "HeaderForgotPassword": "Glemt adgangskode", "HeaderFrequentlyPlayed": "Ofte afspillet", "HeaderGuideProviders": "Guide Udbydere", "HeaderHttpHeaders": "HTTP Headers", @@ -253,7 +240,6 @@ "HeaderLoginFailure": "Login fejl", "HeaderMedia": "Medier", "HeaderMediaFolders": "Mediemapper", - "HeaderMediaInfo": "Medieinformation", "HeaderMetadataSettings": "Indstillinger for metadata", "HeaderMoreLikeThis": "Mere Som Denne", "HeaderMusicVideos": "Musikvideoer", @@ -388,7 +374,6 @@ "LabelCustomCertificatePathHelp": "Sti til PKCS #12 fil indeholdende et certifikat og privat nøgle for at aktivere TLS understøttelse på et brugerdefineret domæne.", "LabelCustomCss": "Brugerdefineret CSS:", "LabelCustomCssHelp": "Anvend din egen stil til webinterfacet.", - "LabelCustomDeviceDisplayName": "Visningsnavn:", "LabelCustomDeviceDisplayNameHelp": "Angiv en brugerdefineret navn. hvis der ikke angives et navn, bruges det navn enheden sender.", "LabelCustomRating": "Brugerdefineret bedømmelse:", "LabelDateAdded": "Dato for tilføjelse:", @@ -401,7 +386,6 @@ "LabelDeviceDescription": "Beskrivelse af enhed", "LabelDidlMode": "DIDL tilstand:", "LabelDiscNumber": "Disk-nummer:", - "LabelDisplayMissingEpisodesWithinSeasons": "Vis manglende episoder i sæsoner", "LabelDisplayName": "Visningsnavn:", "LabelDisplayOrder": "Visningsorden:", "LabelDisplaySpecialsWithinSeasons": "Vis specialepisoder sammen med den sæson de blev sent i", @@ -543,7 +527,6 @@ "LabelPostProcessorArguments": "Kommandolinjeargumenter til efterbehandler:", "LabelPostProcessorArgumentsHelp": "Benyt {path} som stien til optagelsesfilen.", "LabelPreferredDisplayLanguage": "Foretrukket sprog til visning:", - "LabelPreferredDisplayLanguageHelp": "Oversættelse af Jellyfin er et løbende projekt.", "LabelProfileAudioCodecs": "Lyd codecs:", "LabelProfileCodecsHelp": "Adskil med komma. Kan efterlades tom for at gælde for alle codecs.", "LabelProfileContainersHelp": "Adskil med komma. Kan efterlades tom for at gælde for alle containere.", @@ -595,7 +578,6 @@ "LabelTimeLimitHours": "Tidsgrænse (timer):", "LabelTitle": "Titel:", "LabelTrackNumber": "Spor nummer:", - "LabelTranscodingAudioCodec": "Lyd codec:", "LabelTranscodingTempPathHelp": "Definér en bugerdefineret sti til transkodede filer til klienter. Lad den stå tom for at bruge standardmappen i serverens datamappe.", "LabelTranscodingThreadCount": "Antal af omkodningstråde:", "LabelTranscodingThreadCountHelp": "Vælg det maksimale antal af tråde der bruges under transcoding. Reduktion af antallet af tråde sænker CPU-forbrug, men resulterer muligvis i at konverteringer ikke foregår hurtigt nok til en jævn afspilning.", @@ -684,7 +666,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "For at konfigurerer dette plugin log da venligst direkte ind på din lokale server.", "MessagePluginInstallDisclaimer": "Plugins fremstillet af medlemmer fra Jellyfin-fællesskabet er en alle tiders måde at forbedre din oplevelse af Jellyfin med yderligere features og fordele. Før installation, bedes du venligst være opmærksom på de effekter de kan have på din Jellyfin Server; så som lange scantider på biblioteker, yderligere baggrundsbehandling og forringet systemstabilitet.", "MessageReenableUser": "Se nedenfor om genaktivering", - "MessageSettingsSaved": "Indstillinger er gemt.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Følgende medieplaceringer fjernes fra dit bibliotek:", "MessageUnableToConnectToServer": "Vi kan ikke forbinde til den valgte server på nuværende tidspunkt. Sikrer dig venligst at serveren kører og prøv igen.", "MessageUnsetContentHelp": "Indhold vil blive vist som almindelige mapper. For det bedste resultat benyt metadata manageren til at vælge indholdstypen i undermapper.", @@ -931,15 +912,12 @@ "SystemDlnaProfilesHelp": "Systemprofiler kan ikke overskrives. Ændringer i en systemprofil vil blive gemt i en ny brugerdefineret profil.", "TabAccess": "Adgang", "TabAdvanced": "Avanceret", - "TabAlbumArtists": "Album-artister", "TabCatalog": "Katalog", "TabContainers": "Containere", "TabDashboard": "Betjeningspanel", "TabDirectPlay": "Direkte afspilning", - "TabEpisodes": "Episoder", "TabLatest": "Seneste", "TabMusic": "Musik", - "TabMusicVideos": "Musikvideoer", "TabMyPlugins": "Mine tilføjelser", "TabNetworks": "Netværk", "TabNfoSettings": "NFO Indstillinger", @@ -950,10 +928,8 @@ "TabProfile": "Profil", "TabProfiles": "Profiler", "TabResponses": "Svar", - "TabResumeSettings": "Genoptag", "TabScheduledTasks": "Planlagte opgaver", "TabSettings": "Indstillinger", - "TabTrailers": "Trailere", "TabUpcoming": "Kommende", "TellUsAboutYourself": "Fortæl os lidt om dig selv", "ThisWizardWillGuideYou": "Denne guide vil hjælpe dig igennem opsætningen. For at begynde, vælg venligst dit fortrukne sprog.", @@ -1027,7 +1003,6 @@ "Box": "Boks", "BoxRear": "Boks (bagside)", "BurnSubtitlesHelp": "Bestemmer om serveren skal brænde undertekster, når der afspilles transcoding videoer. Undgå dette vil forbedre ydelsen meget. Vælg Auto for at brænde billedbaserede formater (VOBSUB, PGS, SUB, IDX) og bestemte ASS- eller SSA-undertekster.", - "ButtonFilter": "Filter", "ButtonGuide": "Vejledning", "ButtonInfo": "Information", "ButtonOk": "Ok", @@ -1073,9 +1048,7 @@ "EnableExternalVideoPlayersHelp": "En ekstern afspiller menu vil blive vist når video afspilning starter.", "EnableNextVideoInfoOverlay": "Vis næste video information mens der afspilles", "EnableNextVideoInfoOverlayHelp": "I slutningen af en video, vis information om den næste video i nuværende afspilningsliste.", - "EnableThemeSongs": "Tema sange", "EnableThemeSongsHelp": "Afspil tema sange i baggrunden mens man gennemser biblioteket.", - "EnableThemeVideos": "Tema videoer", "EnableThemeVideosHelp": "Afspil tema videoer i baggrunden mens man gennemser biblioteket.", "Episodes": "Afsnit", "ErrorDeletingItem": "Der skete en fejl ved sletningen af mediet fra Jellyfin Server. Tjek venligst at Jellyfin Server har skrive adgang til mediemappen og prøv igen.", @@ -1118,7 +1091,6 @@ "Horizontal": "Horisontalt", "Label3DFormat": "3D format:", "LabelAlbum": "Album:", - "LabelAudio": "Lyd", "LabelBlockContentWithTags": "Blokér filer med etiketter:", "LabelBurnSubtitles": "Brænd undertekster:", "LabelCache": "Cache:", @@ -1155,15 +1127,12 @@ "LabelSortBy": "Sortér efter:", "LabelSortOrder": "Sorteringsorden:", "LabelStatus": "Status:", - "LabelSubtitles": "Undertekster", "LabelTVHomeScreen": "TV modus hjemmeskærm:", "LabelTag": "Mærke:", "LabelTagline": "Taglinje:", "LabelTextBackgroundColor": "Tekst baggrundsfarve:", "LabelTextColor": "Tekstfarve:", "LabelTextSize": "Tekststørrelse:", - "LabelTranscodingContainer": "Beholder:", - "LabelTranscodingVideoCodec": "Video codec:", "LabelType": "Type:", "LabelVersion": "Version:", "LabelVideo": "Video", @@ -1209,7 +1178,6 @@ "OptionAlbum": "Album", "OptionArtist": "Kunstner", "OptionAuto": "Automatisk", - "OptionAutomatic": "Automatisk", "OptionBanner": "Banner", "OptionBluray": "Blu-Ray", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", @@ -1260,7 +1228,6 @@ "Suggestions": "Forslag", "TV": "TV", "TabCodecs": "Codeks", - "TabInfo": "Information", "TabLogs": "Log", "TabServer": "Server", "TabStreaming": "Streamer", @@ -1294,7 +1261,6 @@ "HeaderFavoriteArtists": "Favoritkunstnere", "HeaderFavoriteSongs": "Favoritsange", "HeaderFavoriteVideos": "Favoritvideoer", - "HeaderHome": "Hjem", "LabelServerName": "Server navn:", "LabelUserLoginAttemptsBeforeLockout": "Fejlede loginforsøg før bruger lukkes ude:", "ButtonAddImage": "Tilføj billede", diff --git a/src/strings/de.json b/src/strings/de.json index 84a34bc9cf..896830849c 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -55,8 +55,6 @@ "ButtonBack": "Zurück", "ButtonCancel": "Abbrechen", "ButtonChangeServer": "Wechsel Server", - "ButtonEdit": "Bearbeiten", - "ButtonEditImages": "Bearbeite Bilder", "ButtonEditOtherUserPreferences": "Bearbeite dieses Benutzerprofil, das Benutzerbild und die persönlichen Einstellungen.", "ButtonForgotPassword": "Passwort vergessen", "ButtonFullscreen": "Vollbild", @@ -67,14 +65,11 @@ "ButtonMore": "Mehr", "ButtonNetwork": "Netzwerk", "ButtonNextTrack": "Nächstes Stück", - "ButtonOff": "Ausschalten", "ButtonOpen": "Öffnen", "ButtonParentalControl": "Kindersicherung", - "ButtonPlay": "Abspielen", "ButtonPreviousTrack": "Vorheriges Stück", "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Schnellstart Anleitung", - "ButtonRefresh": "Aktualisieren", "ButtonRefreshGuideData": "Aktualisiere TV-Programmdaten", "ButtonRemove": "Entfernen", "ButtonRename": "Umbenennen", @@ -94,7 +89,6 @@ "ButtonSignOut": "Abmelden", "ButtonStop": "Stopp", "ButtonSubmit": "Bestätigen", - "ButtonSubtitles": "Untertitel", "ButtonUninstall": "Deinstallieren", "CancelRecording": "Aufnahme abbrechen", "CancelSeries": "Serien abbrechen", @@ -176,9 +170,7 @@ "EnablePhotosHelp": "Bilder werden erkannt und neben anderen Mediendateien angezeigt.", "EnableStreamLooping": "Auto-Schleife Live Streams", "EnableStreamLoopingHelp": "Aktivieren, wenn Live Streams nur ein paar Sekunden Daten enthalten und ständig angefragt werden müssen. Kann zu Problemen führen wenn aktiviert, obwohl nicht nötig.", - "EnableThemeSongs": "Titelmelodien", "EnableThemeSongsHelp": "Titelmusik wird während des Blätterns durch die Bibliothek im Hintergrund abgespielt.", - "EnableThemeVideos": "Titelvideos", "EnableThemeVideosHelp": "Titelvideos werden während des Blätterns durch die Bibliothek im Hintergrund abgespielt.", "Ended": "Beendent", "EndsAtValue": "Endet um {0}", @@ -230,11 +222,9 @@ "HeaderActiveDevices": "Aktive Geräte", "HeaderActiveRecordings": "Aktive Aufnahmen", "HeaderActivity": "Aktivitäten", - "HeaderAddScheduledTaskTrigger": "Auslöser hinzufügen", "HeaderAddToCollection": "Zu Sammlung hinzufügen", "HeaderAddToPlaylist": "Zur Wiedergabeliste hinzufügen", "HeaderAddUpdateImage": "Bild hinzufügen/aktualisieren", - "HeaderAddUser": "Benutzer anlegen", "HeaderAdditionalParts": "Zusätzliche Teile", "HeaderAlbumArtists": "Album-Interpreten", "HeaderAlert": "Alarm", @@ -246,12 +236,10 @@ "HeaderAudioBooks": "Hörbücher", "HeaderAudioSettings": "Audioeinstellungen", "HeaderBlockItemsWithNoRating": "Blockiere Inhalte mit keiner oder nicht erkannter Altersfreigabe:", - "HeaderBooks": "Bücher", "HeaderBranding": "Branding / CSS", "HeaderCancelRecording": "Aufnahme abbrechen", "HeaderCancelSeries": "Serie abbrechen", "HeaderCastAndCrew": "Besetzung & Mitwirkende", - "HeaderCastCrew": "Besetzung & Crew", "HeaderChannelAccess": "Channelzugriff", "HeaderChapterImages": "Kapitel Bilder", "HeaderCodecProfile": "Codec Profil", @@ -285,14 +273,12 @@ "HeaderEditImages": "Bilder bearbeiten", "HeaderEnabledFields": "Aktiviere Felder", "HeaderEnabledFieldsHelp": "Wähle Felder ab um das Ändern von Daten zu verhindern.", - "HeaderEpisodes": "Episoden", "HeaderError": "Fehler", "HeaderExternalIds": "Externe IDs:", "HeaderFeatureAccess": "Funktionszugriff", "HeaderFetchImages": "Bilder abrufen:", "HeaderFetcherSettings": "Fetcher Einstellungen", "HeaderForKids": "Für Kinder", - "HeaderForgotPassword": "Passwort vergessen", "HeaderFrequentlyPlayed": "Oft gesehen", "HeaderGuideProviders": "Fernsehprogramm Quellen", "HeaderIdentification": "Identifizierung", @@ -320,7 +306,6 @@ "HeaderLoginFailure": "Login Fehler", "HeaderMedia": "Medien", "HeaderMediaFolders": "Medienverzeichnisse", - "HeaderMediaInfo": "Medieninformation", "HeaderMetadataSettings": "Metadaten Einstellungen", "HeaderMoreLikeThis": "Mehr wie dieses", "HeaderMusicQuality": "Musikqualität", @@ -472,7 +457,6 @@ "LabelCustomCertificatePathHelp": "Pfad zu einer PKCS #12 Datei die ein Zertifikat und einen privaten Schlüssel enthält, um TLS Unterstützung für eine eigene Domain zu aktivieren.", "LabelCustomCss": "Benutzerdefiniertes CSS:", "LabelCustomCssHelp": "Wende deine eigenen benutzerdefinierte Styles auf die Weboberfläche an.", - "LabelCustomDeviceDisplayName": "Angezeigter Name:", "LabelCustomDeviceDisplayNameHelp": "Lege einen individuellen Anzeigenamen fest oder lasse das Feld leer, um den vom gerät übermittelten Namen zu nutzen.", "LabelCustomRating": "Eigene Bewertung:", "LabelDateAdded": "Hinzugefügt am:", @@ -489,7 +473,6 @@ "LabelDiscNumber": "Discnummer:", "LabelDisplayLanguage": "Anzeigesprache:", "LabelDisplayLanguageHelp": "Die Übersetzung von Jellyfin ist ein laufendes Projekt.", - "LabelDisplayMissingEpisodesWithinSeasons": "Zeige fehlende Episoden innerhalb von Staffeln", "LabelDisplayMode": "Bildschirmmodus:", "LabelDisplayName": "Anzeige Name:", "LabelDisplayOrder": "Anzeigereihenfolge:", @@ -640,7 +623,6 @@ "LabelPostProcessorArguments": "Nachbearbeitung Kommandozeilen-Argumente:", "LabelPostProcessorArgumentsHelp": "Verwende {path} als das Verzeichnis für Aufnahmen.", "LabelPreferredDisplayLanguage": "Bevorzugte Anzeigesprache:", - "LabelPreferredDisplayLanguageHelp": "Die Übersetzung von Jellyfin ist ein laufendes Projekt.", "LabelPreferredSubtitleLanguage": "Bevorzugte Untertitelsprache:", "LabelProfileAudioCodecs": "Audio Codecs:", "LabelProfileCodecsHelp": "Getrennt durch Komma. Leerlassen, um auf alle Codecs anzuwenden.", @@ -697,7 +679,6 @@ "LabelSubtitleDownloaders": "Untertitel Downloader:", "LabelSubtitleFormatHelp": "Beispiel: srt", "LabelSubtitlePlaybackMode": "Untertitelmodus:", - "LabelSubtitles": "Untertitel", "LabelSupportedMediaTypes": "Unterstüzte Medientypen:", "LabelTVHomeScreen": "TV-Mode Startseite:", "LabelTextBackgroundColor": "Hintergrundfarbe des Textes:", @@ -708,11 +689,9 @@ "LabelTimeLimitHours": "Zeitlimit (Stunden):", "LabelTitle": "Titel:", "LabelTrackNumber": "Stück Nummer:", - "LabelTranscodingAudioCodec": "Audio Codec:", "LabelTranscodingTempPathHelp": "Wähle einen eigenen Pfad für transkodierte Dateien. Lasse das Feld frei, um den Standardspeicherort zu nutzen.", "LabelTranscodingThreadCount": "Anzahl Transkodierungs-Threads:", "LabelTranscodingThreadCountHelp": "Legen Sie die maximale Anzahl von Transkodierungs-Threads fest. Das Reduzieren der Thread-Anzahl verringert die CPU Auslastung, wird aber möglicherweise die Transkodierung nicht schnell genug für eine störungsfrei Wiedergabe ermöglichen.", - "LabelTranscodingVideoCodec": "Video Codec:", "LabelTriggerType": "Auslöser Typ:", "LabelTunerIpAddress": "Tuner IP Adresse:", "LabelTunerType": "Tuner Typ:", @@ -810,7 +789,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "Melde dich bitte direkt an deinem lokalen Server an, um dieses Plugin konfigurieren zu können.", "MessagePluginInstallDisclaimer": "Plugins aus der Community sind eine gute Möglichkeit um dein Erlebnis mit weiteren Funktionen und Vorteilen aufzuwerten. Bevor du diese installierst, sei dir den daraus resultierenden möglichen Umständen für deinen Server bewusst. Dies können z.B. längere Bibliotheken Scans, weiterführende Verarbeitung von Daten im Hintergrund sowie Systeminstabilität sein.", "MessageReenableUser": "Für Reaktivierung schauen Sie unten", - "MessageSettingsSaved": "Einstellungen gespeichert.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Die folgenden Medienverzeichnisse werden aus der Bibliothek entfernt:", "MessageUnableToConnectToServer": "Wir können gerade keine Verbindung zum gewählten Server herstellen. Bitte stellen Sie sicher das dieser läuft und versuchen Sie es erneut.", "MessageUnsetContentHelp": "Inhalte werden als Verzeichnisse dargestellt. Für eine besser Anzeige nutzen Sie nach Möglichkeit den Meta-Data Manager und wählen Sie einen Medien-Typen für Unterverzeichnisse.", @@ -1092,15 +1070,12 @@ "SystemDlnaProfilesHelp": "Systemprofile sind schreibgeschützt. Änderungen an einem Systemprofil werden als neues benutzerdefiniertes Profil gespeichert.", "TabAccess": "Zugang", "TabAdvanced": "Erweitert", - "TabAlbumArtists": "Album-Interpreten", "TabCatalog": "Katalog", "TabContainers": "Container", "TabDashboard": "Übersicht", "TabDirectPlay": "Direktwiedergabe", - "TabEpisodes": "Episoden", "TabLatest": "Neueste", "TabMusic": "Musik", - "TabMusicVideos": "Musikvideos", "TabMyPlugins": "Meine Plugins", "TabNetworks": "Sendergruppen", "TabNfoSettings": "NFO Einstellungen", @@ -1110,10 +1085,8 @@ "TabProfile": "Profil", "TabProfiles": "Profile", "TabResponses": "Antworten", - "TabResumeSettings": "Fortsetzen", "TabScheduledTasks": "Geplante Aufgaben", "TabSettings": "Einstellungen", - "TabTrailers": "Trailer", "TabUpcoming": "Bevorstehend", "TellUsAboutYourself": "Sagen Sie uns etwas über sich selbst", "ThemeSongs": "Titelsongs", @@ -1176,8 +1149,6 @@ "Auto": "Auto", "Banner": "Banner", "Blacklist": "Sperrliste", - "ButtonFilter": "Filter", - "ButtonHome": "Startseite", "ButtonOk": "Ok", "ButtonPause": "Pause", "ButtonStart": "Start", @@ -1202,7 +1173,6 @@ "Home": "Startseite", "Horizontal": "Horizontal", "LabelAlbum": "Album:", - "LabelAudio": "Audio", "LabelCache": "Cache:", "LabelFormat": "Format:", "LabelH264Crf": "H264 Encodierungs-CRF:", @@ -1226,7 +1196,6 @@ "Normal": "Normal", "LabelDynamicExternalId": "{0} Id:", "LabelStatus": "Status:", - "LabelTranscodingContainer": "Container:", "Live": "Live", "LiveTV": "Live-TV", "Logo": "Logo", @@ -1238,7 +1207,6 @@ "Option3D": "3D", "OptionAlbum": "Album", "OptionAuto": "Auto", - "OptionAutomatic": "Auto", "OptionBluray": "Blu-ray", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", "OptionDownloadBannerImage": "Banner", @@ -1259,7 +1227,6 @@ "Studios": "Studios", "TV": "TV", "TabCodecs": "Codecs", - "TabInfo": "Info", "TabLogs": "Protokoll", "TabPlugins": "Plugins", "TabServer": "Server", @@ -1311,7 +1278,6 @@ "OptionLoginAttemptsBeforeLockoutHelp": "Null (0) bedeutet den Standardwert von drei Versuchen für normale, sowie fünf für Administrator-Benutzer zu übernehmen. Ein Wert von -1 deaktiviert die Funktion.", "PasswordResetProviderHelp": "Wählen Sie einen Password Reset Provider, der verwendet werden soll, wenn dieser Benutzer ein Passwort zurücksetzen möchte.", "Box": "Box", - "HeaderHome": "Startseite", "LabelAudioCodec": "Audiocodec:", "LabelAudioChannels": "Audiokanäle:", "HeaderTypeImageFetchers": "{0} Bildquellen", diff --git a/src/strings/el.json b/src/strings/el.json index 56d19b0c4a..7ee61d2b62 100644 --- a/src/strings/el.json +++ b/src/strings/el.json @@ -53,15 +53,11 @@ "ButtonBack": "Πίσω", "ButtonCancel": "Ακύρωση", "ButtonChangeServer": "Αλλαγή Διακομιστή", - "ButtonEdit": "Επεξεργασία", - "ButtonEditImages": "Επεξεργασία εικόνων", "ButtonEditOtherUserPreferences": "Επεξεργαστείτε το προφίλ, την εικόνα και τις προσωπικές προτιμήσεις αυτού του χρήστη.", - "ButtonFilter": "Φίλτρο", "ButtonForgotPassword": "Ξέχασα τον κωδικό", "ButtonFullscreen": "Πλήρης οθόνη", "ButtonGotIt": "Το κατάλαβα", "ButtonGuide": "Οδηγός", - "ButtonHome": "Αρχική", "ButtonInfo": "Πληροφορία", "ButtonLibraryAccess": "Πρόσβαση στη βιβλιοθήκη", "ButtonManualLogin": "Χειροκίνητη Είσοδος", @@ -70,11 +66,9 @@ "ButtonOpen": "Άνοιγμα", "ButtonParentalControl": "Γονικός έλεγχος", "ButtonPause": "Παύση", - "ButtonPlay": "Αναπαραγωγή", "ButtonPreviousTrack": "Προηγουμενο", "ButtonProfile": "Προφίλ", "ButtonQuickStartGuide": "Οδηγός Γρήγορης Εκκίνησης", - "ButtonRefresh": "Ανανέωση", "ButtonRefreshGuideData": "Ανανέωση Δεδομένων Οδηγού", "ButtonRemove": "Κατάργηση", "ButtonRename": "Μετονομασία", @@ -95,7 +89,6 @@ "ButtonStart": "Έναρξη", "ButtonStop": "Διακοπή", "ButtonSubmit": "υποβολή", - "ButtonSubtitles": "Υπότιτλοι", "ButtonTrailer": "Τρέϊλερ", "ButtonUninstall": "Απεγκατάσταση", "ButtonWebsite": "Ιστοσελίδα", @@ -177,9 +170,7 @@ "EnableHardwareEncoding": "Ενεργοποίηση αποκωδικοποίησης υλικού", "EnableNextVideoInfoOverlay": "Ενεργοποιήστε τις επόμενες πληροφορίες βίντεο κατά την αναπαραγωγή", "EnableNextVideoInfoOverlayHelp": "Στο τέλος ενός βίντεο, εμφανίστε πληροφορίες σχετικά με το επόμενο βίντεο που εμφανίζεται στην τρέχουσα λίστα αναπαραγωγής.", - "EnableThemeSongs": "Ενεργοποίηση Θεματικών Τραγουδιών", "EnableThemeSongsHelp": "Αν είναι ενεργοποιημένη, τα τραγούδια θεμάτων θα αναπαραχθούν στο παρασκήνιο κατά την περιήγηση στη βιβλιοθήκη.", - "EnableThemeVideos": "Ενεργοποίηση βίντεο θέματος", "EnableThemeVideosHelp": "Αν είναι ενεργοποιημένη, τα βίντεο θεμάτων θα αναπαραχθούν στο παρασκήνιο κατά την περιήγηση στη βιβλιοθήκη.", "Ended": "Τέλος", "EndsAtValue": "Τελειώνει σε {0}", @@ -224,11 +215,9 @@ "HeaderActiveDevices": "Ενεργές Συσκευές", "HeaderActiveRecordings": "Ενεργές εγγραφές", "HeaderActivity": "Δραστηριότητα", - "HeaderAddScheduledTaskTrigger": "Προσθήκη διακόπτη", "HeaderAddToCollection": "Πρόσθεσε στη Συλλογή", "HeaderAddToPlaylist": "Πρόσθεσε σε Λίστα", "HeaderAddUpdateImage": "Προσθήκη / Ενημέρωση εικόνας", - "HeaderAddUser": "Προσθήκη Χρήστη", "HeaderAdditionalParts": "Πρόσθετα Μέρη", "HeaderAdmin": "Διαχειριστής", "HeaderAlbumArtists": "Καλλιτέχνες του Άλμπουμ", @@ -241,11 +230,9 @@ "HeaderAudioBooks": "Μουσικά Βιβλία", "HeaderAudioSettings": "Ρυθμίσεις Ήχου", "HeaderBlockItemsWithNoRating": "Αποκλεισμός στοιχείων χωρίς ή μη αναγνωρισμένων πληροφοριών αξιολόγησης:", - "HeaderBooks": "Βιβλία", "HeaderCancelRecording": "Ακύρωση Εγγραφής", "HeaderCancelSeries": "Ακύρωση Σειράς", "HeaderCastAndCrew": "Ηθοποιοί και Συνεργείο", - "HeaderCastCrew": "Ηθοποιοί και συνεργείο", "HeaderCodecProfileHelp": "Τα προφίλ κωδικοποιητή υποδεικνύουν τους περιορισμούς μιας συσκευής κατά την αναπαραγωγή συγκεκριμένων κωδικοποιητών. Εάν ισχύει περιορισμός, τότε τα μέσα θα κωδικοποιηθούν, ακόμα και αν ο κωδικοποιητής έχει ρυθμιστεί για άμεση αναπαραγωγή.", "HeaderConfigureRemoteAccess": "Ρύθμιση απομακρυσμένης πρόσβασης", "HeaderConfirmPluginInstallation": "Επιβεβαιώστε την εγκατάσταση της προσθήκης", @@ -271,13 +258,11 @@ "HeaderEditImages": "Επεξεργασία εικόνων", "HeaderEnabledFields": "Ενεργά Πεδία", "HeaderEnabledFieldsHelp": "Καταργήστε την επιλογή ενός πεδίου για να το κλειδώσετε και να αποτρέψετε την αλλαγή των δεδομένων του.", - "HeaderEpisodes": "Επεισόδια", "HeaderError": "Σφάλμα", "HeaderExternalIds": "Εξωτερικά ID:", "HeaderFeatureAccess": "Πρόσβαση χαρακτηριστικών", "HeaderFetchImages": "Λήψη εικόνων:", "HeaderForKids": "Για τα Παιδιά", - "HeaderForgotPassword": "Ξέχασα τον κωδικό", "HeaderFrequentlyPlayed": "Συχνά έπαιξε", "HeaderIdentificationCriteriaHelp": "Καταχωρήστε τουλάχιστον ένα κριτήριο αναγνώρισης.", "HeaderIdentificationHeader": "Αναγνωριστικό Header", @@ -301,7 +286,6 @@ "HeaderLoginFailure": "Αποτυχία εισόδου", "HeaderMedia": "Πολυμέσα", "HeaderMediaFolders": "Φάκελοι Πολυμέσων", - "HeaderMediaInfo": "Πληροφορίες πολυμέσων", "HeaderMetadataSettings": "Ρυθμίσεις μεταδεδομένων", "HeaderMoreLikeThis": "Περισσότερα Σαν Αυτό", "HeaderMusicQuality": "Ποιότητα Μουσικής", @@ -410,7 +394,6 @@ "LabelAppNameExample": "Παράδειγμα: Sickbeard, NzbDrone", "LabelArtists": "Καλλιτέχνες:", "LabelArtistsHelp": "Ξεχωρίστε πολλαπλά χρησιμοποιώντας;", - "LabelAudio": "Ήχος", "LabelAudioLanguagePreference": "Προτιμώμενη γλώσσα ήχου:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Αυτόματη ανανέωση μεταδεδομένων από το internet:", "LabelBirthDate": "Ημερομηνία Γενεθλίων:", @@ -433,7 +416,6 @@ "LabelCustomCertificatePathHelp": "Προσθέστε το δικό σας αρχείο .pfx πιστοποιητικού ssl.", "LabelCustomCss": "Προσαρμοσμένο css:", "LabelCustomCssHelp": "Εφαρμόστε το δικό σας προσαρμοσμένο css στην διεπαφή ιστού.", - "LabelCustomDeviceDisplayName": "Εμφάνιση ονόματος:", "LabelCustomRating": "Προσαρμοσμένη αξιολόγηση:", "LabelDateAdded": "Ημερνία προσθήκης:", "LabelDateTimeLocale": "Ημερομηνία τοπική ώρα:", @@ -446,7 +428,6 @@ "LabelDiscNumber": "Αριθμός Δίσκου:", "LabelDisplayLanguage": "Γλώσσα Εμφάνισης:", "LabelDisplayLanguageHelp": "Η μετάφραση του Jellyfin είναι ένα συνεχιζόμενο έργο.", - "LabelDisplayMissingEpisodesWithinSeasons": "Εμφάνιση επεισοδίων που λείπουν από την σαιζόν", "LabelDisplayMode": "Λειτουργία προβολής:", "LabelDisplayName": "Εμφάνιση ονόματος:", "LabelDisplayOrder": "Σειρά εμφάνισης:", @@ -573,7 +554,6 @@ "LabelPlayDefaultAudioTrack": "Αναπαραγωγή προεπιλεγμένου κομματιού ήχου ανεξάρτητα από τη γλώσσα", "LabelPlaylist": "Λίστα:", "LabelPreferredDisplayLanguage": "Προτιμώμενη γλώσσα εμφάνισης:", - "LabelPreferredDisplayLanguageHelp": "Η μετάφραση του Jellyfin είναι ένα συνεχιζόμενο έργο.", "LabelPreferredSubtitleLanguage": "Προτεινόμενη Γλώσσα υποτίτλων:", "LabelProfileCodecsHelp": "Διαχωρίζονται με κόμμα. Αυτό μπορεί να μείνει κενό για να εφαρμοστεί σε όλα τα codecs.", "LabelProfileContainersHelp": "Διαχωρίζονται με κόμμα. Αυτό μπορεί να μείνει κενό για να εφαρμοστεί σε όλα τα containers.", @@ -619,7 +599,6 @@ "LabelStopWhenPossible": "Διακοπή όταν είναι δυνατόν:", "LabelSubtitleFormatHelp": "Παράδειγμα: srt", "LabelSubtitlePlaybackMode": "Λειτουργία υποτίτλων:", - "LabelSubtitles": "Υπότιτλοι", "LabelSupportedMediaTypes": "Υποστηριζόμενοι τύποι μέσων:", "LabelTVHomeScreen": "Αρχική οθόνη λειτουργίας τηλεόρασης:", "LabelTag": "Ετικέτα:", @@ -719,7 +698,6 @@ "MessagePleaseWait": "Παρακαλώ περιμένετε. Αυτό μπορεί να πάρει ένα λεπτό.", "MessagePluginConfigurationRequiresLocalAccess": "Για να ρυθμίσετε αυτό το πρόσθετο παρακαλώ συνδεθείτε στον τοπικό διακομιστή σας άμεσα.", "MessageReenableUser": "Δες παρακάτω για ενεργοποιήση", - "MessageSettingsSaved": "Οι ρυθμίσεις αποθηκεύτηκαν.", "MessageUnableToConnectToServer": "Δεν είναι δυνατή η σύνδεση με τον επιλεγμένο διακομιστή αυτή τη στιγμή. Βεβαιωθείτε ότι εκτελείται και προσπαθήστε ξανά.", "MessageYouHaveVersionInstalled": "Αυτήν τη στιγμή έχετε εγκατεστημένη την έκδοση {0}.", "Metadata": "Μεταδεδομένα", @@ -781,7 +759,6 @@ "OptionArtist": "Καλλιτέχνες", "OptionAscending": "Αύξουσα", "OptionAuto": "Αυτόματο", - "OptionAutomatic": "Αυτόματο", "OptionBlockBooks": "Βιβλία", "OptionBlockChannelContent": "Περιεχόμενο Διαδικτυακών Καναλιών", "OptionBlockLiveTvChannels": "ΚΑΝΑΛΙΑ ΖΩΝΤΑΝΗΣ ΤΗΛΕΟΡΑΣΗΣ", @@ -982,15 +959,11 @@ "TV": "Τηλεόραση", "TabAccess": "Πρόσβαση", "TabAdvanced": "Για προχωρημένους", - "TabAlbumArtists": "Άλμπουμ Καλλιτέχνες", "TabCatalog": "Κατάλογος", "TabDashboard": "Πίνακας Ελέγχου", "TabDirectPlay": "Άμεση Αναπαραγωγή", - "TabEpisodes": "Επεισόδια", - "TabInfo": "Πληροφορία", "TabLatest": "Τελευταία", "TabMusic": "Μουσική", - "TabMusicVideos": "Μουσικά βίντεο", "TabMyPlugins": "Τα πρόσθετα μου", "TabNetworks": "Δίκτυα", "TabNfoSettings": "Ρυθμίσεις NFO", @@ -1005,7 +978,6 @@ "TabServer": "Διακομιστής", "TabSettings": "Ρυθμισεις", "TabStreaming": "Ροή", - "TabTrailers": "Τρέιλερς", "TabUpcoming": "Επερχόμενα", "Tags": "Ετικέτες", "TagsValue": "Ετικέτες: {0}", @@ -1081,7 +1053,6 @@ "HeaderSelectCertificatePath": "Επιλέξτε Διαδρομή Πιστοποιητικού", "HeaderRemoveMediaFolder": "Αφαίρεση Φακέλου Μέσων", "HeaderIdentification": "Ταυτοποίηση", - "HeaderHome": "Αρχική", "HeaderGuideProviders": "Πάροχοι Δεδομένων Προγράμματος Τηλεόρασης", "HeaderFavoriteVideos": "Αγαπημένα Βίντεο", "HeaderFavoriteMovies": "Αγαπημένες Ταινίες", @@ -1111,7 +1082,6 @@ "EnablePhotos": "Εμφάνιση φωτογραφιών", "DrmChannelsNotImported": "Κανάλια με DRM δεν θα εισαχθούν.", "ButtonOk": "Οκ", - "ButtonOff": "Απενεργοποίηση", "ButtonNetwork": "Δίκτυο", "AllowOnTheFlySubtitleExtractionHelp": "Οι ενσωματωμένοι υπότιτλοι μπορούν να εξαχθούν από βίντεο και να σταλούν στις συσκευές σε απλό κείμενο για να αποφευχθούν μετατροπές βίντεο. Σε μερικά συστήματα αυτό μπορεί να πάρει πολύ ώρα και να κάνει το βίντεο να κολλάει κατά την διάρκεια της εξαγωγής. Απενεργοποιήστε το για να έχετε ενσωματωμένους υπότιτλους πάνω στο βίντεο όταν αυτοί δεν υποστηρίζονται από την συσκευή.", "AllowOnTheFlySubtitleExtraction": "Επίτρεψε την εξαγωγή υποτίτλων σε πραγματικό χρόνο", diff --git a/src/strings/en-gb.json b/src/strings/en-gb.json index 023475923e..d44183a4a8 100644 --- a/src/strings/en-gb.json +++ b/src/strings/en-gb.json @@ -105,31 +105,24 @@ "ButtonBack": "Back", "ButtonCancel": "Cancel", "ButtonChangeServer": "Change Server", - "ButtonEdit": "Edit", - "ButtonEditImages": "Edit images", "ButtonEditOtherUserPreferences": "Edit this user's profile, image and personal preferences.", - "ButtonFilter": "Filter", "ButtonForgotPassword": "Forgot Password", "ButtonFullscreen": "Fullscreen", "ButtonGotIt": "Got It", "ButtonGuide": "Guide", - "ButtonHome": "Home", "ButtonInfo": "Info", "ButtonLibraryAccess": "Library access", "ButtonManualLogin": "Manual Login", "ButtonMore": "More", "ButtonNetwork": "Network", "ButtonNextTrack": "Next track", - "ButtonOff": "Off", "ButtonOk": "OK", "ButtonOpen": "Open", "ButtonParentalControl": "Parental control", "ButtonPause": "Pause", - "ButtonPlay": "Play", "ButtonPreviousTrack": "Previous track", "ButtonProfile": "Profile", "ButtonQuickStartGuide": "Quick Start Guide", - "ButtonRefresh": "Refresh", "ButtonRefreshGuideData": "Refresh Guide Data", "ButtonRemove": "Remove", "ButtonRename": "Rename", @@ -150,7 +143,6 @@ "ButtonStart": "Start", "ButtonStop": "Stop", "ButtonSubmit": "Submit", - "ButtonSubtitles": "Subtitles", "ButtonTrailer": "Trailer", "ButtonUninstall": "Uninstall", "ButtonWebsite": "Website", @@ -231,9 +223,7 @@ "EnablePhotosHelp": "Images will be detected and displayed alongside other media files.", "EnableStreamLooping": "Auto-loop live streams", "EnableStreamLoopingHelp": "Enable this if live streams only contain a few seconds of data and need to be continuously requested. Enabling this when not needed may cause problems.", - "EnableThemeSongs": "Theme songs", "EnableThemeSongsHelp": "Play theme songs in the background while browsing the library.", - "EnableThemeVideos": "Theme videos", "EnableThemeVideosHelp": "Play theme videos in the background while browsing the library.", "Ended": "Ended", "EndsAtValue": "Ends at {0}", @@ -285,11 +275,9 @@ "HeaderActiveDevices": "Active Devices", "HeaderActiveRecordings": "Active Recordings", "HeaderActivity": "Activity", - "HeaderAddScheduledTaskTrigger": "Add Trigger", "HeaderAddToCollection": "Add to Collection", "HeaderAddToPlaylist": "Add to Playlist", "HeaderAddUpdateImage": "Add/Update Image", - "HeaderAddUser": "Add User", "HeaderAdditionalParts": "Additional Parts", "HeaderAdmin": "Admin", "HeaderAlert": "Alert", @@ -301,12 +289,10 @@ "HeaderAppearsOn": "Appears On", "HeaderAudioBooks": "Audio Books", "HeaderAudioSettings": "Audio Settings", - "HeaderBooks": "Books", "HeaderBranding": "Branding", "HeaderCancelRecording": "Cancel Recording", "HeaderCancelSeries": "Cancel Series", "HeaderCastAndCrew": "Cast & Crew", - "HeaderCastCrew": "Cast & Crew", "HeaderChannelAccess": "Channel Access", "HeaderChapterImages": "Chapter Images", "HeaderCodecProfile": "Codec Profile", @@ -339,7 +325,6 @@ "HeaderEditImages": "Edit Images", "HeaderEnabledFields": "Enabled Fields", "HeaderEnabledFieldsHelp": "Uncheck a field to lock it and prevent its data from being changed.", - "HeaderEpisodes": "Episodes", "HeaderError": "Error", "HeaderExternalIds": "External IDs:", "HeaderFavoriteBooks": "Favourite Books", @@ -355,7 +340,6 @@ "HeaderFetchImages": "Fetch Images:", "HeaderFetcherSettings": "Fetcher Settings", "HeaderForKids": "For Kids", - "HeaderForgotPassword": "Forgot Password", "HeaderFrequentlyPlayed": "Frequently Played", "HeaderGuideProviders": "TV Guide Data Providers", "HeaderHttpHeaders": "HTTP Headers", @@ -384,7 +368,6 @@ "HeaderLoginFailure": "Login Failure", "HeaderMedia": "Media", "HeaderMediaFolders": "Media Folders", - "HeaderMediaInfo": "Media Info", "HeaderMetadataSettings": "Metadata Settings", "HeaderMoreLikeThis": "More Like This", "HeaderMusicQuality": "Music Quality", @@ -443,17 +426,14 @@ "TabSettings": "Settings", "TabServer": "Server", "TabScheduledTasks": "Scheduled Tasks", - "TabResumeSettings": "Resume", "TabResponses": "Responses", "TabOther": "Other", "TabNotifications": "Notifications", "TabNetworks": "Networks", "TabMyPlugins": "My Plugins", - "TabMusicVideos": "Music Videos", "TabMusic": "Music", "TabLogs": "Logs", "TabDirectPlay": "Direct Play", - "TabAlbumArtists": "Album Artists", "TabAdvanced": "Advanced", "TabAccess": "Access", "TV": "TV", @@ -723,22 +703,18 @@ "LabelTypeText": "Text", "LabelTunerIpAddress": "Tuner IP Address:", "LabelTriggerType": "Trigger Type:", - "LabelTranscodingVideoCodec": "Video codec:", "LabelTranscodingThreadCountHelp": "Select the maximum number of threads to use when transcoding. Reducing the thread count will lower CPU usage but may not convert fast enough for a smooth playback experience.", "LabelTranscodingThreadCount": "Transcoding thread count:", "LabelTranscodingFramerate": "Transcoding framerate:", "LabelTranscodes": "Transcodes:", "LabelTranscodingTempPathHelp": "Specify a custom path for the transcode files served to clients. Leave blank to use the server default.", "LabelTranscodePath": "Transcode path:", - "LabelTranscodingContainer": "Container:", - "LabelTranscodingAudioCodec": "Audio codec:", "LabelTrackNumber": "Track number:", "LabelTitle": "Title:", "LabelTagline": "Tagline:", "LabelTag": "Tag:", "LabelTVHomeScreen": "TV mode home screen:", "LabelSupportedMediaTypes": "Supported Media Types:", - "LabelSubtitles": "Subtitles", "LabelSubtitlePlaybackMode": "Subtitle mode:", "LabelSubtitleFormatHelp": "Example: srt", "LabelSubtitleDownloaders": "Subtitle downloaders:", @@ -778,7 +754,6 @@ "LabelPublicHttpPortHelp": "The public port number that should be mapped to the local HTTP port.", "LabelPublicHttpPort": "Public HTTP port number:", "LabelMetadataDownloadersHelp": "Enable and rank your preferred metadata downloaders in order of priority. Lower priority downloaders will only be used to fill in missing information.", - "LabelDisplayMissingEpisodesWithinSeasons": "Display missing episodes within seasons", "LabelDidlMode": "DIDL mode:", "LabelDefaultUser": "Default user:", "LabelDefaultScreen": "Default screen:", @@ -876,7 +851,6 @@ "TagsValue": "Tags: {0}", "Tags": "Tags", "TabUpcoming": "Upcoming", - "TabTrailers": "Trailers", "LabelDisplayMode": "Display mode:", "LabelDisplayLanguageHelp": "Translating Jellyfin is an ongoing project.", "LabelDisplayLanguage": "Display language:", @@ -890,8 +864,6 @@ "TabNfoSettings": "NFO Settings", "TabNetworking": "Networking", "TabLatest": "Latest", - "TabInfo": "Info", - "TabEpisodes": "Episodes", "TabDashboard": "Dashboard", "TabContainers": "Containers", "TabCodecs": "Codecs", @@ -956,7 +928,6 @@ "LabelProfileCodecsHelp": "Separated by comma. This can be left empty to apply to all codecs.", "LabelProfileAudioCodecs": "Audio codecs:", "LabelPreferredSubtitleLanguage": "Preferred subtitle language:", - "LabelPreferredDisplayLanguageHelp": "Translating Jellyfin is an ongoing project.", "LabelPreferredDisplayLanguage": "Preferred display language:", "LabelPostProcessor": "Post-processing application:", "LabelPlayer": "Player:", @@ -1058,7 +1029,6 @@ "LabelDisplayOrder": "Display order:", "LabelDisplayName": "Display name:", "LabelDateAddedBehaviorHelp": "If a metadata value is present it will always be used before either of these options.", - "LabelCustomDeviceDisplayName": "Display name:", "LabelCustomCss": "Custom CSS:", "LabelCustomCertificatePathHelp": "Path to a PKCS #12 file containing a certificate and private key to enable TLS support on a custom domain.", "LabelCurrentPassword": "Current password:", @@ -1083,7 +1053,6 @@ "LabelAudioChannels": "Audio channels:", "LabelAudioBitrate": "Audio bitrate:", "LabelAudioBitDepth": "Audio bit depth:", - "LabelAudio": "Audio", "LabelArtistsHelp": "Separate multiple using ;", "LabelArtists": "Artists:", "LabelAppName": "App name", @@ -1274,7 +1243,6 @@ "OptionBlockMusic": "Music", "OptionBlockLiveTvChannels": "Live TV Channels", "OptionBlockBooks": "Books", - "OptionAutomatic": "Auto", "OptionAuto": "Auto", "OptionAscending": "Ascending", "OptionAdminUsers": "Administrators", @@ -1286,7 +1254,6 @@ "MessageYouHaveVersionInstalled": "You currently have version {0} installed.", "MessageUnableToConnectToServer": "We're unable to connect to the selected server right now. Please ensure it is running and try again.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "The following media locations will be removed from your library:", - "MessageSettingsSaved": "Settings saved.", "MessageReenableUser": "See below to reenable", "MessageLeaveEmptyToInherit": "Leave empty to inherit settings from a parent item or the global default value.", "MessageItemsAdded": "Items added.", @@ -1350,7 +1317,6 @@ "HeaderPlayAll": "Play All", "HeaderPinCodeReset": "Reset Pin Code", "HeaderPhotoAlbums": "Photo Albums", - "HeaderHome": "Home", "HeaderFavoritePeople": "Favourite People", "FetchingData": "Fetching additional data", "ButtonAddImage": "Add Image", diff --git a/src/strings/en-us.json b/src/strings/en-us.json index 38b79613e2..f87c1a326e 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -71,31 +71,24 @@ "ButtonBack": "Back", "ButtonCancel": "Cancel", "ButtonChangeServer": "Change Server", - "ButtonEdit": "Edit", - "ButtonEditImages": "Edit images", "ButtonEditOtherUserPreferences": "Edit this user's profile, image and personal preferences.", - "ButtonFilter": "Filter", "ButtonForgotPassword": "Forgot Password", "ButtonFullscreen": "Fullscreen", "ButtonGotIt": "Got It", "ButtonGuide": "Guide", - "ButtonHome": "Home", "ButtonInfo": "Info", "ButtonLibraryAccess": "Library access", "ButtonManualLogin": "Manual Login", "ButtonMore": "More", "ButtonNetwork": "Network", "ButtonNextTrack": "Next track", - "ButtonOff": "Off", "ButtonOk": "Ok", "ButtonOpen": "Open", "ButtonParentalControl": "Parental control", "ButtonPause": "Pause", - "ButtonPlay": "Play", "ButtonPreviousTrack": "Previous track", "ButtonProfile": "Profile", "ButtonQuickStartGuide": "Quick Start Guide", - "ButtonRefresh": "Refresh", "ButtonRefreshGuideData": "Refresh Guide Data", "ButtonRemove": "Remove", "ButtonRename": "Rename", @@ -117,7 +110,6 @@ "ButtonStop": "Stop", "ButtonSplit": "Split", "ButtonSubmit": "Submit", - "ButtonSubtitles": "Subtitles", "ButtonTogglePlaylist": "Playlist", "ButtonTrailer": "Trailer", "ButtonUninstall": "Uninstall", @@ -213,9 +205,7 @@ "EnablePhotosHelp": "Images will be detected and displayed alongside other media files.", "EnableStreamLooping": "Auto-loop live streams", "EnableStreamLoopingHelp": "Enable this if live streams only contain a few seconds of data and need to be continuously requested. Enabling this when not needed may cause problems.", - "EnableThemeSongs": "Theme songs", "EnableThemeSongsHelp": "Play theme songs in the background while browsing the library.", - "EnableThemeVideos": "Theme videos", "EnableThemeVideosHelp": "Play theme videos in the background while browsing the library.", "EnableDetailsBanner": "Details Banner", "EnableDetailsBannerHelp": "Display a banner image at the top of the item details page.", @@ -276,11 +266,9 @@ "HeaderActiveDevices": "Active Devices", "HeaderActiveRecordings": "Active Recordings", "HeaderActivity": "Activity", - "HeaderAddScheduledTaskTrigger": "Add Trigger", "HeaderAddToCollection": "Add to Collection", "HeaderAddToPlaylist": "Add to Playlist", "HeaderAddUpdateImage": "Add/Update Image", - "HeaderAddUser": "Add User", "HeaderAdditionalParts": "Additional Parts", "HeaderAdmin": "Admin", "HeaderAlbumArtists": "Album Artists", @@ -295,12 +283,10 @@ "HeaderAudioBooks": "Audio Books", "HeaderAudioSettings": "Audio Settings", "HeaderBlockItemsWithNoRating": "Block items with no or unrecognized rating information:", - "HeaderBooks": "Books", "HeaderBranding": "Branding", "HeaderCancelRecording": "Cancel Recording", "HeaderCancelSeries": "Cancel Series", "HeaderCastAndCrew": "Cast & Crew", - "HeaderCastCrew": "Cast & Crew", "HeaderChannelAccess": "Channel Access", "HeaderChapterImages": "Chapter Images", "HeaderCodecProfile": "Codec Profile", @@ -335,7 +321,6 @@ "HeaderEditImages": "Edit Images", "HeaderEnabledFields": "Enabled Fields", "HeaderEnabledFieldsHelp": "Uncheck a field to lock it and prevent its data from being changed.", - "HeaderEpisodes": "Episodes", "HeaderError": "Error", "HeaderExternalIds": "External IDs:", "HeaderFavoriteBooks": "Favorite Books", @@ -352,10 +337,8 @@ "HeaderFetchImages": "Fetch Images:", "HeaderFetcherSettings": "Fetcher Settings", "HeaderForKids": "For Kids", - "HeaderForgotPassword": "Forgot Password", "HeaderFrequentlyPlayed": "Frequently Played", "HeaderGuideProviders": "TV Guide Data Providers", - "HeaderHome": "Home", "HeaderHttpHeaders": "HTTP Headers", "HeaderHttpsSettings": "HTTPS Settings", "HeaderIdentification": "Identification", @@ -383,7 +366,6 @@ "HeaderLoginFailure": "Login Failure", "HeaderMedia": "Media", "HeaderMediaFolders": "Media Folders", - "HeaderMediaInfo": "Media Info", "HeaderMetadataSettings": "Metadata Settings", "HeaderMoreLikeThis": "More Like This", "HeaderMusicQuality": "Music Quality", @@ -521,7 +503,6 @@ "LabelAppNameExample": "Example: Sickbeard, Sonarr", "LabelArtists": "Artists:", "LabelArtistsHelp": "Separate multiple artists with a semicolon.", - "LabelAudio": "Audio", "LabelAudioBitDepth": "Audio bit depth:", "LabelAudioBitrate": "Audio bitrate:", "LabelAudioChannels": "Audio channels:", @@ -557,7 +538,6 @@ "LabelCustomCertificatePathHelp": "Path to a PKCS #12 file containing a certificate and private key to enable TLS support on a custom domain.", "LabelCustomCss": "Custom CSS:", "LabelCustomCssHelp": "Apply your own custom styles on the web interface.", - "LabelCustomDeviceDisplayName": "Display name:", "LabelCustomDeviceDisplayNameHelp": "Supply a custom display name or leave empty to use the name reported by the device.", "LabelCustomRating": "Custom rating:", "LabelDateAdded": "Date added:", @@ -575,7 +555,6 @@ "LabelDiscNumber": "Disc number:", "LabelDisplayLanguage": "Display language:", "LabelDisplayLanguageHelp": "Translating Jellyfin is an ongoing project.", - "LabelDisplayMissingEpisodesWithinSeasons": "Display missing episodes within seasons", "LabelDisplayMode": "Display mode:", "LabelDisplayName": "Display name:", "LabelDisplayOrder": "Display order:", @@ -747,7 +726,6 @@ "LabelPostProcessorArguments": "Post-processor command line arguments:", "LabelPostProcessorArgumentsHelp": "Use {path} as the path to the recording file.", "LabelPreferredDisplayLanguage": "Preferred display language:", - "LabelPreferredDisplayLanguageHelp": "Translating Jellyfin is an ongoing project.", "LabelPreferredSubtitleLanguage": "Preferred subtitle language:", "LabelProfileAudioCodecs": "Audio codecs:", "LabelProfileCodecs": "Codecs:", @@ -814,7 +792,6 @@ "LabelSubtitleDownloaders": "Subtitle downloaders:", "LabelSubtitleFormatHelp": "Example: srt", "LabelSubtitlePlaybackMode": "Subtitle mode:", - "LabelSubtitles": "Subtitles", "LabelSupportedMediaTypes": "Supported Media Types:", "LabelSyncPlayTimeOffset": "Time offset with the server:", "MillisecondsUnit": "ms", @@ -839,8 +816,6 @@ "LabelTimeLimitHours": "Time limit (hours):", "LabelTitle": "Title:", "LabelTrackNumber": "Track number:", - "LabelTranscodingAudioCodec": "Audio codec:", - "LabelTranscodingContainer": "Container:", "LabelTranscodePath": "Transcode path:", "LabelTranscodingTempPathHelp": "Specify a custom path for the transcode files served to clients. Leave blank to use the server default.", "LabelTranscodes": "Transcodes:", @@ -848,7 +823,6 @@ "LabelTranscodingProgress": "Transcoding progress:", "LabelTranscodingThreadCount": "Transcoding thread count:", "LabelTranscodingThreadCountHelp": "Select the maximum number of threads to use when transcoding. Reducing the thread count will lower CPU usage but may not convert fast enough for a smooth playback experience.", - "LabelTranscodingVideoCodec": "Video codec:", "LabelTriggerType": "Trigger Type:", "LabelTunerIpAddress": "Tuner IP Address:", "LabelTunerType": "Tuner type:", @@ -986,7 +960,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "To configure this plugin please sign in to your local server directly.", "MessagePluginInstallDisclaimer": "Plugins built by community members are a great way to enhance your experience with additional features and benefits. Before installing, please be aware of the effects they may have on your server, such as longer library scans, additional background processing, and decreased system stability.", "MessageReenableUser": "See below to reenable", - "MessageSettingsSaved": "Settings saved.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "The following media locations will be removed from your library:", "MessageUnableToConnectToServer": "We're unable to connect to the selected server right now. Please ensure it is running and try again.", "MessageUnsetContentHelp": "Content will be displayed as plain folders. For best results use the metadata manager to set the content types of sub-folders.", @@ -1077,7 +1050,6 @@ "OptionArtist": "Artist", "OptionAscending": "Ascending", "OptionAuto": "Auto", - "OptionAutomatic": "Auto", "OptionAutomaticallyGroupSeries": "Automatically merge series that are spread across multiple folders", "OptionAutomaticallyGroupSeriesHelp": "Series that are spread across multiple folders within this library will be automatically merged into a single series.", "OptionBanner": "Banner", @@ -1351,19 +1323,15 @@ "TV": "TV", "TabAccess": "Access", "TabAdvanced": "Advanced", - "TabAlbumArtists": "Album Artists", "TabCatalog": "Catalog", "TabRepositories": "Repositories", "TabCodecs": "Codecs", "TabContainers": "Containers", "TabDashboard": "Dashboard", "TabDirectPlay": "Direct Play", - "TabEpisodes": "Episodes", - "TabInfo": "Info", "TabLatest": "Latest", "TabLogs": "Logs", "TabMusic": "Music", - "TabMusicVideos": "Music Videos", "TabMyPlugins": "My Plugins", "TabNetworks": "Networks", "TabNetworking": "Networking", @@ -1375,12 +1343,10 @@ "TabProfile": "Profile", "TabProfiles": "Profiles", "TabResponses": "Responses", - "TabResumeSettings": "Resume", "TabScheduledTasks": "Scheduled Tasks", "TabServer": "Server", "TabSettings": "Settings", "TabStreaming": "Streaming", - "TabTrailers": "Trailers", "TabUpcoming": "Upcoming", "Tags": "Tags", "TagsValue": "Tags: {0}", diff --git a/src/strings/es-ar.json b/src/strings/es-ar.json index 74eb87e842..a031af20ff 100644 --- a/src/strings/es-ar.json +++ b/src/strings/es-ar.json @@ -3,9 +3,7 @@ "ButtonSignOut": "Cerrar sesión", "EnableHardwareEncoding": "Habilitar la codificación de hardware", "FolderTypeTvShows": "TV", - "HeaderAddUser": "Agregar Usuario", "HeaderLatestEpisodes": "Últimos capítulos", - "LabelDisplayMissingEpisodesWithinSeasons": "Mostrar capítulos no disponibles en temporadas", "LabelFinish": "Terminar", "LabelYoureDone": "Ha terminado!", "MoreUsersCanBeAddedLater": "Se pueden agregar más usuarios más tarde desde el tablero.", @@ -13,7 +11,6 @@ "OptionMissingEpisode": "Capítulos faltantes", "OptionUnairedEpisode": "Capítulos no emitidos", "ParentalRating": "Parental Rating", - "TabEpisodes": "Capítulos", "TellUsAboutYourself": "Contanos acerca de vos", "ThisWizardWillGuideYou": "Este asistente le ayudará a guiarlo durante el proceso de configuración. Para comenzar, seleccione su idioma preferido.", "UserProfilesIntro": "Jellyfin incluye soporte para perfiles de usuario con configuraciones de visualización granulares, estado de reproducción y controles parentales.", @@ -99,30 +96,23 @@ "ButtonBack": "Atrás", "ButtonCancel": "Cancelar", "ButtonChangeServer": "Cambiar servidor", - "ButtonEdit": "Editar", - "ButtonEditImages": "Editar imágenes", "ButtonEditOtherUserPreferences": "Editar perfil, imagen y preferencias personales del usuario.", - "ButtonFilter": "Filtrar", "ButtonForgotPassword": "Olvidé mi contraseña", "ButtonFullscreen": "Pantalla completa", "ButtonGotIt": "Lo entendí", "ButtonGuide": "Guía", - "ButtonHome": "Inicio", "ButtonInfo": "Información", "ButtonLibraryAccess": "Acceso a la biblioteca", "ButtonManualLogin": "Inicio de sesión manual", "ButtonMore": "Más", "ButtonNetwork": "Red", "ButtonNextTrack": "Pista siguiente", - "ButtonOff": "Desactivado", "ButtonOk": "Aceptar", "ButtonOpen": "Abrir", "ButtonParentalControl": "Control parental", "ButtonPause": "Pausar", - "ButtonPlay": "Reproducir", "ButtonPreviousTrack": "Pista anterior", "ButtonProfile": "Perfil", - "ButtonRefresh": "Actualizar", "ButtonRefreshGuideData": "Actualizar datos de la guía", "ButtonRemove": "Quitar", "ButtonRename": "Renombrar", @@ -142,7 +132,6 @@ "ButtonStart": "Iniciar", "ButtonStop": "Detener", "ButtonSubmit": "Enviar", - "ButtonSubtitles": "Subtítulos", "ButtonTrailer": "Avance", "ButtonUninstall": "Desinstalar", "ButtonWebsite": "Sitio web", @@ -229,9 +218,7 @@ "EnablePhotosHelp": "Las imágenes serán detectadas y mostradas junto con otros archivos multimedia.", "EnableStreamLooping": "Repetir automáticamente transmisiones en vivo", "EnableStreamLoopingHelp": "Habilita esto sí las transmisiones en vivo sólo contienen unos cuantos segundos y es necesario solicitarlos continuamente. Habilitar esto cuando no es necesario puede causar problemas.", - "EnableThemeSongs": "Canciones temáticas", "EnableThemeSongsHelp": "Reproducir canciones temáticas en el fondo mientras se navega por la biblioteca.", - "EnableThemeVideos": "Videos temáticos", "EnableThemeVideosHelp": "Al habilitarse, los vídeos de tema se reproducirán de fondo mientras navegues por la biblioteca.", "Ended": "Finalizado", "EndsAtValue": "Termina en {0}", @@ -290,7 +277,6 @@ "AllowFfmpegThrottling": "Transcodificación Throttle", "HeaderCancelRecording": "Cancelar Grabación", "HeaderBranding": "Marca", - "HeaderBooks": "Libros", "HeaderBlockItemsWithNoRating": "Bloquear elementos con rating de información vacía o no reconocible:", "HeaderAudioSettings": "Configuraciones de audio", "HeaderAudioBooks": "Audiolibros", @@ -306,7 +292,6 @@ "HeaderAddUpdateImage": "Agregar/Actualizar imagen", "HeaderAddToPlaylist": "Agregar a la lista de reproducción", "HeaderAddToCollection": "Agregar a la Colección", - "HeaderAddScheduledTaskTrigger": "Agregar disparador", "HeaderActivity": "Actividad", "HeaderActiveRecordings": "Grabaciones activas", "HeaderActiveDevices": "Dispositivos activos", @@ -338,7 +323,6 @@ "HeaderCodecProfile": "Perfil del códec", "HeaderChapterImages": "Imágenes del capitulo", "HeaderChannelAccess": "Acceso al canal", - "HeaderCastCrew": "Reparto", "HeaderCastAndCrew": "Reparto", "HeaderCancelSeries": "Cancelar serie", "H264CrfHelp": "El Factor de velocidad constante (CRF) es la configuración de calidad predeterminada para el codificador x264. Puede establecer los valores entre 0 y 51, donde valores más bajos resultarían en una mejor calidad (a expensas de tamaños de archivo más altos). Los valores correctos están entre 18 y 28. El valor predeterminado para x264 es 23, por lo que puede usar esto como punto de partida.", @@ -349,7 +333,6 @@ "HeaderFavoriteBooks": "Libros favoritos", "HeaderExternalIds": "IDs externos:", "HeaderError": "Error", - "HeaderEpisodes": "Capítulos", "HeaderEnabledFields": "Campos habilitados", "HeaderEditImages": "Editar imágenes", "HeaderEasyPinCode": "Código PIN fácil", @@ -390,10 +373,8 @@ "HeaderIdentificationCriteriaHelp": "Ingrese al menos un criterio de identificación.", "HeaderIdentification": "Identificación", "HeaderHttpHeaders": "Encabezados HTTP", - "HeaderHome": "Inicio", "HeaderGuideProviders": "Proveedores de datos de guías de TV", "HeaderFrequentlyPlayed": "Reproducido con frecuencia", - "HeaderForgotPassword": "Olvidé la contraseña", "HeaderForKids": "Para niños", "HeaderFetcherSettings": "Configuración del recuperador", "HeaderFetchImages": "Obtener imágenes:", @@ -510,7 +491,6 @@ "HeaderNextEpisodePlayingInValue": "Reproducción del siguiente capítulo en {0}", "HeaderMoreLikeThis": "Más como esto", "HeaderMetadataSettings": "Configuraciones de metadatos", - "HeaderMediaInfo": "Información de medios", "HeaderHttpsSettings": "Configuraciones HTTPS", "HeaderEnabledFieldsHelp": "Desmarque un campo para bloquearlo y evitar que se modifiquen sus datos.", "HeaderDirectPlayProfileHelp": "Agregue perfiles de reproducción directa para indicar qué formatos puede manejar el dispositivo de forma nativa.", @@ -539,7 +519,6 @@ "LabelAudioCodec": "Códec de audio:", "LabelAudioChannels": "Canales de audio:", "LabelAudioBitrate": "Velocidad de bits de audio:", - "LabelAudio": "Audio", "LabelAllowedRemoteAddresses": "Filtro de dirección IP remota:", "LabelAllowHWTranscoding": "Permitir transcodificación con hardware", "LabelAlbumArtists": "Artistas del álbum:", @@ -639,7 +618,6 @@ "LabelDateAdded": "Fecha agregada:", "LabelCustomRating": "Calificación personalizada:", "LabelCustomDeviceDisplayNameHelp": "Proporcione un nombre personalizado para mostrar o déjelo vacío para usar el nombre informado por el dispositivo.", - "LabelCustomDeviceDisplayName": "Nombre para mostrar:", "LabelCustomCssHelp": "Aplique su propio estilo personalizado a la interfaz web.", "LabelCustomCss": "CSS personalizado:", "LabelCustomCertificatePathHelp": "Ruta a un archivo PKCS #12 que contiene un certificado y una clave privada para habilitar el soporte TLS en un dominio personalizado.", @@ -679,7 +657,6 @@ "MillisecondsUnit": "ms", "LabelSyncPlayTimeOffset": "Compensación horaria con el servidor:", "LabelSupportedMediaTypes": "Tipos de medios soportados:", - "LabelSubtitles": "Subtítulos", "LabelSubtitlePlaybackMode": "Modo de subtítulos:", "LabelSubtitleFormatHelp": "Ejemplo: srt", "LabelSubtitleDownloaders": "Descargadores de subtítulos:", @@ -741,7 +718,6 @@ "LabelProfileCodecs": "Códecs:", "LabelProfileAudioCodecs": "Códecs de audio:", "LabelPreferredSubtitleLanguage": "Idioma de subtítulos preferido:", - "LabelPreferredDisplayLanguageHelp": "La traducción de Jellyfin es un proyecto en curso.", "LabelPreferredDisplayLanguage": "Idioma de visualización preferido:", "LabelPostProcessorArgumentsHelp": "Use {ruta} como la ruta al archivo de grabación.", "LabelPostProcessorArguments": "Argumentos de la línea de comando del post-procesador:", @@ -829,7 +805,6 @@ "OptionBanner": "Pancarta", "OptionAutomaticallyGroupSeriesHelp": "Si está habilitado, las series que se distribuyen en varias carpetas dentro de esta biblioteca se fusionarán automáticamente en una sola serie.", "OptionAutomaticallyGroupSeries": "Combinar automáticamente series que se extienden a través de múltiples carpetas", - "OptionAutomatic": "Auto", "OptionAuto": "Auto", "OptionAscending": "Ascendente", "OptionArtist": "Artista", @@ -914,7 +889,6 @@ "MessageUnsetContentHelp": "El contenido se mostrará como carpetas simples. Para obtener mejores resultados, use el administrador de metadatos para configurar los tipos de contenido de las subcarpetas.", "MessageUnableToConnectToServer": "No podemos conectarnos al servidor seleccionado en este momento. Asegúrese de que se esté ejecutando e intente nuevamente.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Las siguientes ubicaciones de medios se eliminarán de su biblioteca:", - "MessageSettingsSaved": "Configuraciones guardadas.", "MessageReenableUser": "Ver abajo para volver a habilitar", "MessagePluginInstallDisclaimer": "Los complementos creados por miembros de la comunidad Jellyfin son una excelente manera de mejorar su experiencia Jellyfin con características y beneficios adicionales. Antes de la instalación, tenga en cuenta los efectos que pueden tener en su servidor Jellyfin, como escaneos de bibliotecas más largos, procesamiento en segundo plano adicional y disminución de la estabilidad del sistema.", "MessagePluginConfigurationRequiresLocalAccess": "Para configurar este complemento, inicie sesión directamente en su servidor local.", @@ -1042,7 +1016,6 @@ "LabelTunerType": "Tipo de sintonizador:", "LabelTunerIpAddress": "Dirección IP del sintonizador:", "LabelTriggerType": "Tipo de disparador:", - "LabelTranscodingVideoCodec": "Códec de vídeo:", "LabelTranscodingThreadCountHelp": "Elija el número máximo de hilos para usar al transcodificar. Reducir el recuento de hilos disminuirá el uso de la CPU, pero es posible que no se convierta lo suficientemente rápido para una experiencia de reproducción fluida.", "LabelTranscodingThreadCount": "Conteo de hilos de transcodificación:", "LabelTranscodingProgress": "Progreso de transcodificación:", @@ -1050,8 +1023,6 @@ "LabelTranscodes": "Transcodificaciones:", "LabelTranscodingTempPathHelp": "Especifique una ruta personalizada para los archivos de transcodificación servidos a los clientes. Déjelo en blanco para usar el servidor predeterminado.", "LabelTranscodePath": "Ruta para las transcodificaciones:", - "LabelTranscodingContainer": "Contenedor:", - "LabelTranscodingAudioCodec": "Códec de audio:", "LabelTrackNumber": "Número de pista:", "LabelTitle": "Título:", "LabelTimeLimitHours": "Límite de tiempo (horas):", @@ -1363,12 +1334,10 @@ "MarkPlayed": "Marcar reproducido", "LabelSkipForwardLength": "Saltar hacia adelante longitud:", "Trailers": "Avances", - "TabTrailers": "Avances", "TabStreaming": "Transmisión", "TabSettings": "Configuraciones", "TabServer": "Servidor", "TabScheduledTasks": "Tareas programadas", - "TabResumeSettings": "Continuar", "TabResponses": "Respuestas", "TabProfiles": "Perfiles", "TabProfile": "Perfil", @@ -1380,18 +1349,15 @@ "TabNetworking": "Redes", "TabNetworks": "Redes", "TabMyPlugins": "Mis complementos", - "TabMusicVideos": "Videos musicales", "TabMusic": "Música", "TabLogs": "Registros", "TabLatest": "Último", - "TabInfo": "Información", "TabDirectPlay": "Reproducción directa", "TabDashboard": "Tablero", "TabContainers": "Contenedores", "TabCodecs": "Códecs", "TabRepositories": "Repositorios", "TabCatalog": "Catálogo", - "TabAlbumArtists": "Artistas del álbum", "TabAdvanced": "Avanzado", "TabAccess": "Acceso", "TV": "TV", diff --git a/src/strings/es-mx.json b/src/strings/es-mx.json index c7669c4429..7c392f04b6 100644 --- a/src/strings/es-mx.json +++ b/src/strings/es-mx.json @@ -59,29 +59,22 @@ "ButtonBack": "Atrás", "ButtonCancel": "Cancelar", "ButtonChangeServer": "Cambiar servidor", - "ButtonEdit": "Editar", - "ButtonEditImages": "Editar imágenes", "ButtonEditOtherUserPreferences": "Editar el perfil, la imagen y las preferencias personales de este usuario.", - "ButtonFilter": "Filtro", "ButtonForgotPassword": "Olvidé mi contraseña", "ButtonFullscreen": "Pantalla completa", "ButtonGotIt": "Hecho", "ButtonGuide": "Guía", - "ButtonHome": "Inicio", "ButtonLibraryAccess": "Acceso a biblioteca(s)", "ButtonManualLogin": "Inicio de sesión manual", "ButtonMore": "Más", "ButtonNetwork": "Red", "ButtonNextTrack": "Pista siguiente", - "ButtonOff": "Apagar", "ButtonOpen": "Abrir", "ButtonParentalControl": "Control parental", "ButtonPause": "Pausar", - "ButtonPlay": "Reproducir", "ButtonPreviousTrack": "Pista anterior", "ButtonProfile": "Perfil", "ButtonQuickStartGuide": "Guía de inicio rápido", - "ButtonRefresh": "Actualizar", "ButtonRefreshGuideData": "Actualizar datos de la guía", "ButtonRemove": "Remover", "ButtonRename": "Renombrar", @@ -102,7 +95,6 @@ "ButtonStart": "Iniciar", "ButtonStop": "Detener", "ButtonSubmit": "Enviar", - "ButtonSubtitles": "Subtítulos", "ButtonUninstall": "Desinstalar", "ButtonWebsite": "Sitio web", "CancelRecording": "Cancelar grabación", @@ -189,9 +181,7 @@ "EnablePhotosHelp": "Las imágenes serán detectadas y mostradas junto con otros archivos multimedia.", "EnableStreamLooping": "Repetir automáticamente las transmisiones en vivo", "EnableStreamLoopingHelp": "Habilita esta opción si las transmisiones en vivo contienen solo unos pocos segundos de datos y necesitan ser solicitadas continuamente. Habilitar esto cuando no es requerido puede causar problemas.", - "EnableThemeSongs": "Canciones temáticas", "EnableThemeSongsHelp": "Reproducir canciones temáticas en el fondo mientras se navega por la biblioteca.", - "EnableThemeVideos": "Videos temáticos", "EnableThemeVideosHelp": "Reproducir videos temáticos en el fondo mientras se navega por la biblioteca.", "Ended": "Finalizado", "EndsAtValue": "Termina a las {0}", @@ -246,11 +236,9 @@ "HeaderActiveDevices": "Dispositivos activos", "HeaderActiveRecordings": "Grabaciones activas", "HeaderActivity": "Actividad", - "HeaderAddScheduledTaskTrigger": "Agregar disparador", "HeaderAddToCollection": "Agregar a colección", "HeaderAddToPlaylist": "Agregar a lista de reproducción", "HeaderAddUpdateImage": "Agregar/Actualizar Imagen", - "HeaderAddUser": "Agregar usuario", "HeaderAdditionalParts": "Partes adicionales", "HeaderAlbumArtists": "Artistas del álbum", "HeaderAlert": "Alerta", @@ -262,12 +250,10 @@ "HeaderAudioBooks": "Audiolibros", "HeaderAudioSettings": "Configuración de audio", "HeaderBlockItemsWithNoRating": "Bloquear elementos sin clasificación o con información de clasificación desconocida:", - "HeaderBooks": "Libros", "HeaderBranding": "Establecer marca", "HeaderCancelRecording": "Cancelar grabación", "HeaderCancelSeries": "Cancelar serie", "HeaderCastAndCrew": "Reparto y equipo", - "HeaderCastCrew": "Reparto y equipo", "HeaderChannelAccess": "Acceso a los canales", "HeaderChapterImages": "Imágenes de los capítulos", "HeaderCodecProfile": "Perfil de códec", @@ -301,13 +287,11 @@ "HeaderEditImages": "Editar imágenes", "HeaderEnabledFields": "Campos habilitados", "HeaderEnabledFieldsHelp": "Desmarca un campo para bloquearlo y prevenir que sus datos sean cambiados.", - "HeaderEpisodes": "Episodios", "HeaderExternalIds": "IDs externos:", "HeaderFeatureAccess": "Acceso a características", "HeaderFetchImages": "Obtener imágenes:", "HeaderFetcherSettings": "Configuración del recolector", "HeaderForKids": "Para niños", - "HeaderForgotPassword": "Olvidé mi contraseña", "HeaderFrequentlyPlayed": "Reproducido frecuentemente", "HeaderGuideProviders": "Proveedores de Guías de TV", "HeaderHttpHeaders": "Encabezados HTTP", @@ -336,7 +320,6 @@ "HeaderLoginFailure": "Falló el inicio de sesión", "HeaderMedia": "Medios", "HeaderMediaFolders": "Carpetas de medios", - "HeaderMediaInfo": "Info del medio", "HeaderMetadataSettings": "Configuración de metadatos", "HeaderMoreLikeThis": "Más como esto", "HeaderMusicQuality": "Calidad de la música", @@ -494,7 +477,6 @@ "LabelCustomCertificatePathHelp": "Ruta a un archivo PKCS #12 que contiene un certificado y una clave privada para habilitar el soporte TLS en un dominio personalizado.", "LabelCustomCss": "CSS personalizado:", "LabelCustomCssHelp": "Aplica tu propio estilo personalizado a la interfaz web.", - "LabelCustomDeviceDisplayName": "Nombre a mostrar:", "LabelCustomDeviceDisplayNameHelp": "Proporcione un nombre personalizado para mostrar o déjalo vacío para usar el nombre reportado por el dispositivo.", "LabelCustomRating": "Calificación personalizada:", "LabelDateAdded": "Fecha de adición:", @@ -511,7 +493,6 @@ "LabelDiscNumber": "Número de disco:", "LabelDisplayLanguage": "Idioma de pantalla:", "LabelDisplayLanguageHelp": "La traducción de Jellyfin es un proyecto en curso.", - "LabelDisplayMissingEpisodesWithinSeasons": "Mostrar episodios faltantes en las temporadas", "LabelDisplayMode": "Modo de pantalla:", "LabelDisplayName": "Nombre a mostrar:", "LabelDisplayOrder": "Orden para mostrar:", @@ -666,7 +647,6 @@ "LabelPostProcessorArguments": "Argumentos de la línea de comandos del post-procesador:", "LabelPostProcessorArgumentsHelp": "Usar {path} como la ruta del archivo grabado.", "LabelPreferredDisplayLanguage": "Idioma de pantalla preferido:", - "LabelPreferredDisplayLanguageHelp": "La traducción de Jellyfin es un proyecto en curso.", "LabelPreferredSubtitleLanguage": "Idioma preferido para los subtítulos:", "LabelProfileAudioCodecs": "Códecs de audio:", "LabelProfileCodecsHelp": "Separados por comas. Puede dejarse vacío para aplicarlo a todos los códecs.", @@ -725,7 +705,6 @@ "LabelSubtitleDownloaders": "Recolectores de subtítulos:", "LabelSubtitleFormatHelp": "Ejemplo: srt", "LabelSubtitlePlaybackMode": "Modo de subtítulo:", - "LabelSubtitles": "Subtítulos", "LabelSupportedMediaTypes": "Tipos de medios soportados:", "LabelTVHomeScreen": "Modo de pantalla de TV:", "LabelTag": "Etiqueta:", @@ -738,12 +717,9 @@ "LabelTimeLimitHours": "Límite de tiempo (horas):", "LabelTitle": "Título:", "LabelTrackNumber": "Número de pista:", - "LabelTranscodingAudioCodec": "Códec de audio:", - "LabelTranscodingContainer": "Contenedor:", "LabelTranscodingTempPathHelp": "Especifica una ruta personalizada para los archivos de transcodificación servidos a los clientes. Deja en blanco para utilizar el predeterminado del servidor.", "LabelTranscodingThreadCount": "Conteo de hilos de la transcodificación:", "LabelTranscodingThreadCountHelp": "Selecciona el número máximo de hilos a utilizar al transcodificar. Reducir el número de hilos reducirá el uso de la CPU, pero es posible que no se convierta lo suficientemente rápido como para que la experiencia de reproducción sea fluida.", - "LabelTranscodingVideoCodec": "Códec de video:", "LabelTriggerType": "Tipo de disparador:", "LabelTunerIpAddress": "Dirección IP del sintonizador:", "LabelTunerType": "Tipo de sintonizador:", @@ -851,7 +827,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "Para configurar este complemento por favor, inicia sesión en tu servidor local directamente.", "MessagePluginInstallDisclaimer": "Los complementos desarrollados por miembros de la comunidad Jellyfin son una gran forma de mejorar tu experiencia con Jellyfin con características y beneficios adicionales. Antes de instalar, por favor, conoce el impacto que pueden ocasionar en tu servidor Jellyfin, tales como escaneo más largo de bibliotecas, procesamiento en segundo plano adicional y reducción de la estabilidad del sistema.", "MessageReenableUser": "Ver abajo para volver a habilitar", - "MessageSettingsSaved": "Configuraciones guardadas.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Las siguientes ubicaciones de medios se removerán de tu biblioteca:", "MessageUnableToConnectToServer": "No podemos conectarnos al servidor seleccionado en este momento. Por favor, asegúrate de que está funcionando e inténtalo de nuevo.", "MessageUnsetContentHelp": "El contenido será mostrado como carpetas simples. Para mejores resultados utiliza el administrador de metadatos para establecer los tipos de contenido para las subcarpetas.", @@ -915,7 +890,6 @@ "OptionArtist": "Artista", "OptionAscending": "Ascendente", "OptionAuto": "Automático", - "OptionAutomatic": "Automático", "OptionAutomaticallyGroupSeries": "Fusionar automáticamente series esparcidas a través de múltiples carpetas", "OptionAutomaticallyGroupSeriesHelp": "Si se habilita, las series que se reparten a través de múltiples carpetas dentro de esta biblioteca serán fusionadas en una sola serie.", "OptionBlockBooks": "Libros", @@ -1150,16 +1124,13 @@ "SystemDlnaProfilesHelp": "Los perfiles del sistema son de solo lectura. Los cambios a un perfil del sistema serán guardados en un nuevo perfil personalizado.", "TabAccess": "Acceso", "TabAdvanced": "Avanzado", - "TabAlbumArtists": "Artistas del álbum", "TabCatalog": "Catálogo", "TabContainers": "Contenedores", "TabDashboard": "Panel de control", "TabDirectPlay": "Reproducción directa", - "TabEpisodes": "Episodios", "TabLatest": "Recientes", "TabLogs": "Registros", "TabMusic": "Música", - "TabMusicVideos": "Videos musicales", "TabMyPlugins": "Mis complementos", "TabNetworks": "Cadenas", "TabNfoSettings": "Configuración de NFO", @@ -1170,12 +1141,10 @@ "TabProfile": "Perfil", "TabProfiles": "Perfiles", "TabResponses": "Respuestas", - "TabResumeSettings": "Reanudar", "TabScheduledTasks": "Tareas programadas", "TabServer": "Servidor", "TabSettings": "Configuración", "TabStreaming": "Transmisión", - "TabTrailers": "Trailers", "TabUpcoming": "Próximamente", "Tags": "Etiquetas", "TagsValue": "Etiquetas: {0}", @@ -1261,10 +1230,8 @@ "HeaderFavoriteArtists": "Artistas favoritos", "HeaderFavoriteSongs": "Canciones favoritas", "HeaderFavoriteVideos": "Videos favoritos", - "HeaderHome": "Inicio", "HeaderVideos": "Videos", "Horizontal": "Horizontal", - "LabelAudio": "Audio", "LabelAuthProvider": "Proveedor de autenticación:", "LabelDynamicExternalId": "{0} Id:", "LabelPasswordResetProvider": "Proveedor de restablecimiento de contraseña:", @@ -1317,7 +1284,6 @@ "SubtitleOffset": "Desplazamiento de subtítulos", "TV": "TV", "TabCodecs": "Códecs", - "TabInfo": "Información", "ValueMinutes": "{0} min", "ValueSeriesCount": "{0} series", "Vertical": "Vertical", diff --git a/src/strings/es.json b/src/strings/es.json index 09e5f5fcf4..c56c61e16c 100644 --- a/src/strings/es.json +++ b/src/strings/es.json @@ -49,30 +49,23 @@ "ButtonBack": "Atrás", "ButtonCancel": "Cancelar", "ButtonChangeServer": "Cambiar servidor", - "ButtonEdit": "Editar", - "ButtonEditImages": "Editar imágenes", "ButtonEditOtherUserPreferences": "Editar este perfil, la imagen y los ajustes personales.", - "ButtonFilter": "Filtro", "ButtonForgotPassword": "Contraseña olvidada", "ButtonFullscreen": "Pantalla completa", "ButtonGotIt": "Entendido", "ButtonGuide": "Guía", - "ButtonHome": "Inicio", "ButtonLibraryAccess": "Acceso a la biblioteca", "ButtonManualLogin": "Acceder manualmente", "ButtonMore": "Más", "ButtonNetwork": "Red", "ButtonNextTrack": "Pista siguiente", - "ButtonOff": "Apagado", "ButtonOk": "OK", "ButtonOpen": "Abrir", "ButtonParentalControl": "Control parental", "ButtonPause": "Pausa", - "ButtonPlay": "Reproducir", "ButtonPreviousTrack": "Pista anterior", "ButtonProfile": "Perfil", "ButtonQuickStartGuide": "Guía de inicio rápido", - "ButtonRefresh": "Refrescar", "ButtonRefreshGuideData": "Actualizar datos de la guía", "ButtonRemove": "Quitar", "ButtonRename": "Renombrar", @@ -93,7 +86,6 @@ "ButtonStart": "Inicio", "ButtonStop": "Detener", "ButtonSubmit": "Enviar", - "ButtonSubtitles": "Subtítulos", "ButtonTrailer": "Tráiler", "ButtonUninstall": "Desinstalar", "ButtonWebsite": "Sitio web", @@ -156,7 +148,6 @@ "EnablePhotosHelp": "Las imágenes se detectarán y se mostrarán junto con otros archivos multimedia.", "EnableStreamLooping": "Bucle automático de las emisiones en directo", "EnableStreamLoopingHelp": "Habilite esto si las emisiones en directo sólo contienen unos pocos segundos de datos y necesitan ser solicitados continuamente.", - "EnableThemeVideos": "Vídeos temáticos", "Ended": "Finalizado", "EndsAtValue": "Termina a las {0}", "Episodes": "Episodios", @@ -203,11 +194,9 @@ "HeaderActiveDevices": "Dispositivos activos", "HeaderActiveRecordings": "Grabaciones activas", "HeaderActivity": "Actividad", - "HeaderAddScheduledTaskTrigger": "Agregar Activador", "HeaderAddToCollection": "Agregar a la colección", "HeaderAddToPlaylist": "Añadir a la lista de reproducción", "HeaderAddUpdateImage": "Añadir/Actualizar imagen", - "HeaderAddUser": "Agregar usuario", "HeaderAdditionalParts": "Partes adicionales", "HeaderAdmin": "Administrador", "HeaderAlert": "Alerta", @@ -218,11 +207,9 @@ "HeaderAudioBooks": "Audiolibros", "HeaderAudioSettings": "Ajustes de audio", "HeaderBlockItemsWithNoRating": "Bloquear artículos sin valoraciones o si son desconocidas:", - "HeaderBooks": "Libros", "HeaderCancelRecording": "Cancelar grabación", "HeaderCancelSeries": "Cancelar series", "HeaderCastAndCrew": "Reparto y equipo", - "HeaderCastCrew": "Reparto y equipo técnico", "HeaderChannelAccess": "Acceso a los canales", "HeaderChapterImages": "Imágenes de capítulos", "HeaderCodecProfile": "Perfil de códec", @@ -256,13 +243,11 @@ "HeaderEditImages": "Editar imágenes", "HeaderEnabledFields": "Campos activados", "HeaderEnabledFieldsHelp": "Desmarca un campo para bloquearlo y evitar que se cambie su contenido.", - "HeaderEpisodes": "Episodios", "HeaderExternalIds": "IDs externos:", "HeaderFeatureAccess": "Permisos de acceso", "HeaderFetchImages": "Buscar imágenes:", "HeaderFetcherSettings": "Ajustes del capturador", "HeaderForKids": "Para niños", - "HeaderForgotPassword": "Contraseña olvidada", "HeaderFrequentlyPlayed": "Reproducido frecuentemente", "HeaderGuideProviders": "Proveedores de guías", "HeaderHttpHeaders": "Cabeceras HTTP", @@ -291,7 +276,6 @@ "HeaderLoginFailure": "Fallo de inicio de sesión", "HeaderMedia": "Medios", "HeaderMediaFolders": "Carpetas de medios", - "HeaderMediaInfo": "Información multimedia", "HeaderMetadataSettings": "Ajustes de etiquetas", "HeaderMoreLikeThis": "Más como este", "HeaderMusicVideos": "Vídeos musicales", @@ -442,7 +426,6 @@ "LabelCustomCertificatePathHelp": "Ruta a un archivo PKCS # 12 que contiene un certificado y una clave privada para habilitar el soporte de TLS en un dominio personalizado.", "LabelCustomCss": "CSS personalizado:", "LabelCustomCssHelp": "Aplicar su propio CSS personalizado a la interfaz de la web.", - "LabelCustomDeviceDisplayName": "Nombre para mostrar:", "LabelCustomDeviceDisplayNameHelp": "Proporcione un nombre para mostrar o déjelo vacío para usar el nombre proporcionado por el dispositivo.", "LabelCustomRating": "Valoración pesonalizada:", "LabelDateAdded": "Fecha de añadido:", @@ -455,7 +438,6 @@ "LabelDeviceDescription": "Descripción del dispositivo", "LabelDidlMode": "Modo DIDL:", "LabelDiscNumber": "Número de disco:", - "LabelDisplayMissingEpisodesWithinSeasons": "Mostar episodios no disponibles en temporadas", "LabelDisplayMode": "Modo de visualización:", "LabelDisplayName": "Mostrar nombre:", "LabelDisplayOrder": "Mostrar orden:", @@ -607,7 +589,6 @@ "LabelPostProcessorArguments": "Argumentos de línea de comandos posprocesador:", "LabelPostProcessorArgumentsHelp": "Utilice {path} como ruta del archivo de grabación.", "LabelPreferredDisplayLanguage": "Idioma preferido visualizado:", - "LabelPreferredDisplayLanguageHelp": "La traducción de Jellyfin es un proyecto en marcha.", "LabelPreferredSubtitleLanguage": "Idioma de subtítulos preferido:", "LabelProfileAudioCodecs": "Códecs de audio:", "LabelProfileCodecs": "Códecs:", @@ -673,12 +654,9 @@ "LabelTimeLimitHours": "Límite de tiempo (horas):", "LabelTitle": "Título:", "LabelTrackNumber": "Número de pista:", - "LabelTranscodingAudioCodec": "Códec de audio:", - "LabelTranscodingContainer": "Contenedor:", "LabelTranscodingTempPathHelp": "Establece la carpeta que se usará para almacenar los archivos temporales de las conversiones. Déjalo en blanco para usar la ruta por defecto.", "LabelTranscodingThreadCount": "Núcleos a utilizar durante la conversión:", "LabelTranscodingThreadCountHelp": "Selecciona el número de núcleos a utilizar para la conversión. A menos núcleos, menor será el uso del procesador, pero puede que la conversión no vaya lo suficientemente rápido para una reproducción fluida.", - "LabelTranscodingVideoCodec": "Códec de video:", "LabelTriggerType": "Tipo de evento:", "LabelTunerIpAddress": "IP del sintonizador:", "LabelTunerType": "Tipo de sintonizador:", @@ -779,7 +757,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "Para configurar este complemento inicia sesión en tu servidor local directamente.", "MessagePluginInstallDisclaimer": "Las extensiones creadas por los miembros de la comunidad de Jellyfin son una buena forma de mejorar tu experiencia con características adicionales y otros beneficios. Antes de instalarlos considera los efectos que pueden tener en tu servidor Jellyfin, como escaneos de la biblioteca más largos, procesado en segundo plano adicional y una reducción de la estabilidad del sistema.", "MessageReenableUser": "Mira abajo para reactivarlo", - "MessageSettingsSaved": "Ajustes guardados.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Se eliminarán las siguientes ubicaciones de medios de tu biblioteca:", "MessageUnableToConnectToServer": "No podemos conectar con el servidor seleccionado ahora mismo. Por favor, asegúrate de que esta funcionando e inténtalo otra vez.", "MessageUnsetContentHelp": "El contenido se mostrará como carpetas planas. Para tener mejores resultados utiliza el gestor de metadatos para establecer los tipos de contenidos de las sub-carpetas.", @@ -1053,16 +1030,13 @@ "SystemDlnaProfilesHelp": "El perfil del sistema es solo lectura. Cambios al perfil del sistema seran guardados en un perfil nuevo modificado.", "TabAccess": "Acceso", "TabAdvanced": "Avanzado", - "TabAlbumArtists": "Artistas de los álbumes", "TabCatalog": "Catálogo", "TabCodecs": "Códecs", "TabContainers": "Contenedores", "TabDashboard": "Panel de control", "TabDirectPlay": "Reproducción directa", - "TabEpisodes": "Episodios", "TabLatest": "Novedades", "TabMusic": "Música", - "TabMusicVideos": "Videos musicales", "TabMyPlugins": "Mis extensiones", "TabNetworks": "Cadenas", "TabNfoSettings": "Ajustes de NFO", @@ -1072,7 +1046,6 @@ "TabProfile": "Perfil", "TabProfiles": "Perfiles", "TabResponses": "Respuestas", - "TabResumeSettings": "Reanudación", "TabScheduledTasks": "Tareas programadas", "TabServer": "Servidor", "TabSettings": "Opciones", @@ -1175,7 +1148,6 @@ "EnableColorCodedBackgrounds": "Fondos con código de colores", "EnableExternalVideoPlayersHelp": "Se mostrará un menú para reproductor externo cuando comience la reproducción del vídeo.", "EnableNextVideoInfoOverlayHelp": "Al finalizar un vídeo, mostrar información sobre el siguiente de la lista de reproducción actual.", - "EnableThemeSongs": "Canciones temáticas", "EnableThemeSongsHelp": "Reproducir las canciones temáticas de fondo mientras se explora la biblioteca.", "EnableThemeVideosHelp": "Reproducir vídeos temáticos de fondo mientras se explora la biblioteca.", "ErrorDeletingItem": "Se ha producido un error eliminando el elemento del servidor Jellyfin. Por favor, comprueba que el servidor Jellyfin tiene permisos de escritura y prueba de nuevo.", @@ -1200,7 +1172,6 @@ "HeaderVideoType": "Tipo de vídeo", "Home": "Inicio", "Horizontal": "Horizontal", - "LabelAudio": "Audio", "LabelBurnSubtitles": "Incrustar subtítulos:", "LabelDateTimeLocale": "Fecha y hora local:", "LabelDefaultScreen": "Pantalla por defecto:", @@ -1215,7 +1186,6 @@ "LabelSkipForwardLength": "Tiempo de avance:", "LabelSortBy": "Ordenar por:", "LabelSortOrder": "Orden:", - "LabelSubtitles": "Subtítulos", "LabelTVHomeScreen": "Modo televisión en pantalla de inicio:", "LabelVersion": "Versión:", "LabelVideo": "Vídeo", @@ -1238,7 +1208,6 @@ "Off": "Apagado", "Option3D": "3D", "OptionAuto": "Automático", - "OptionAutomatic": "Automático", "OptionBanner": "Cabecera", "OptionBlockTrailers": "Tráilers", "OptionBluray": "Blu-ray", @@ -1255,7 +1224,6 @@ "HeaderFavoriteArtists": "Artistas favoritos", "HeaderFavoriteSongs": "Canciones favoritas", "HeaderFavoriteVideos": "Vídeos favoritos", - "HeaderHome": "Inicio", "LabelAuthProvider": "Proveedor de autenticación:", "LabelPasswordResetProvider": "Proveedor de restablecimiento de contraseña:", "LabelServerName": "Nombre del servidor:", @@ -1310,10 +1278,8 @@ "SubtitleAppearanceSettingsDisclaimer": "Estos ajustes no se aplicarán a los subtítulos gráficos (PGS, DVD, etc.), ni a ASS/SSA que tengan incluidos sus propios estilos.", "SubtitleOffset": "Desplazamiento de subtítulos", "TV": "Televisión", - "TabInfo": "Info", "TabLogs": "Registros", "TabPlugins": "Extensiones", - "TabTrailers": "Tráilers", "TagsValue": "Etiquetas: {0}", "ThemeSongs": "Banda sonora", "Trailers": "Tráilers", diff --git a/src/strings/es_419.json b/src/strings/es_419.json index 4014556e9e..5197f3d813 100644 --- a/src/strings/es_419.json +++ b/src/strings/es_419.json @@ -38,7 +38,6 @@ "Absolute": "Absoluto", "YadifBob": "YADIF Bob", "Trailers": "Trailers", - "TabTrailers": "Trailers", "OptionThumbCard": "Miniatura de imagen", "OptionResElement": "elemento reanudable", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", @@ -133,7 +132,6 @@ "TabSettings": "Configuración", "TabServer": "Servidor", "TabScheduledTasks": "Tareas programadas", - "TabResumeSettings": "Reanudar", "TabResponses": "Respuestas", "TabProfiles": "Perfiles", "TabProfile": "Perfil", @@ -145,11 +143,8 @@ "TabNetworking": "Redes", "TabNetworks": "Cadenas", "TabMyPlugins": "Mis complementos", - "TabMusicVideos": "Videos musicales", "TabMusic": "Música", "TabLogs": "Registros", - "TabInfo": "Información", - "TabEpisodes": "Episodios", "TabDirectPlay": "Reproducción directa", "TabDashboard": "Panel de control", "TabContainers": "Contenedores", @@ -239,7 +234,6 @@ "OptionBanner": "Banner", "OptionAutomaticallyGroupSeriesHelp": "Series que estén repartidas en múltiples carpetas dentro de esta biblioteca serán automáticamente fusionadas en una sola serie.", "OptionAutomaticallyGroupSeries": "Fusionar automáticamente series esparcidas a través de múltiples carpetas", - "OptionAutomatic": "Automático", "OptionAuto": "Automático", "OptionAscending": "Ascendente", "OptionArtist": "Artista", @@ -328,7 +322,6 @@ "MessageUnsetContentHelp": "El contenido será mostrado como carpetas simples. Para mejores resultados utiliza el administrador de metadatos para establecer los tipos de contenido para las subcarpetas.", "MessageUnableToConnectToServer": "No podemos conectarnos al servidor seleccionado en este momento. Por favor, asegúrate de que está funcionando e inténtalo de nuevo.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Las siguientes ubicaciones de medios se removerán de tu biblioteca:", - "MessageSettingsSaved": "Configuraciones guardadas.", "MessageReenableUser": "Ver abajo para volver a habilitar", "MessagePluginInstallDisclaimer": "Los complementos desarrollados por miembros de la comunidad son una gran forma de mejorar tu experiencia con características y beneficios adicionales. Antes de instalar, por favor, conoce el impacto que pueden ocasionar en tu servidor, tales como escaneo más largo de bibliotecas, procesamiento en segundo plano adicional y reducción de la estabilidad del sistema.", "MessagePluginConfigurationRequiresLocalAccess": "Para configurar este complemento por favor, inicia sesión en tu servidor local directamente.", @@ -402,7 +395,6 @@ "LabelTunerType": "Tipo de sintonizador:", "LabelTunerIpAddress": "Dirección IP del sintonizador:", "LabelTriggerType": "Tipo de disparador:", - "LabelTranscodingVideoCodec": "Códec de video:", "LabelTranscodingThreadCountHelp": "Selecciona el número máximo de hilos a utilizar al transcodificar. Reducir el número de hilos reducirá el uso de la CPU, pero es posible que no se convierta lo suficientemente rápido como para que la experiencia de reproducción sea fluida.", "LabelTranscodingThreadCount": "Conteo de hilos de la transcodificación:", "LabelTranscodingProgress": "Progreso de la transcodificación:", @@ -410,8 +402,6 @@ "LabelTranscodes": "Transcodificaciones:", "LabelTranscodingTempPathHelp": "Especifica una ruta personalizada para los archivos de transcodificación servidos a los clientes. Deja en blanco para utilizar el predeterminado del servidor.", "LabelTranscodePath": "Ruta de transcodificación:", - "LabelTranscodingContainer": "Contenedor:", - "LabelTranscodingAudioCodec": "Códec de audio:", "LabelTrackNumber": "Número de pista:", "LabelTitle": "Título:", "LabelTimeLimitHours": "Límite de tiempo (horas):", @@ -436,7 +426,6 @@ "MillisecondsUnit": "ms", "LabelSyncPlayTimeOffset": "Tiempo compensado respecto al servidor:", "LabelSupportedMediaTypes": "Tipos de medios soportados:", - "LabelSubtitles": "Subtítulos", "LabelSubtitlePlaybackMode": "Modo de subtítulo:", "LabelSubtitleFormatHelp": "Ejemplo: srt", "LabelSubtitleDownloaders": "Recolectores de subtítulos:", @@ -669,7 +658,6 @@ "LabelProfileCodecs": "Códecs:", "LabelProfileAudioCodecs": "Códecs de audio:", "LabelPreferredSubtitleLanguage": "Idioma preferido para los subtítulos:", - "LabelPreferredDisplayLanguageHelp": "La traducción de Jellyfin es un proyecto en curso.", "LabelPreferredDisplayLanguage": "Idioma de pantalla preferido:", "LabelPostProcessorArgumentsHelp": "Usar {path} como la ruta del archivo grabado.", "LabelPostProcessorArguments": "Argumentos de la línea de comandos del post-procesador:", @@ -802,7 +790,6 @@ "LabelDisplayOrder": "Orden para mostrar:", "LabelDisplayName": "Nombre a mostrar:", "LabelDisplayMode": "Modo de pantalla:", - "LabelDisplayMissingEpisodesWithinSeasons": "Mostrar episodios faltantes en las temporadas", "LabelDisplayLanguageHelp": "La traducción de Jellyfin es un proyecto en curso.", "LabelDisplayLanguage": "Idioma de pantalla:", "LabelDiscNumber": "Número de disco:", @@ -820,7 +807,6 @@ "LabelDateAdded": "Fecha de adición:", "LabelCustomRating": "Calificación personalizada:", "LabelCustomDeviceDisplayNameHelp": "Proporcione un nombre personalizado para mostrar o déjalo vacío para usar el nombre reportado por el dispositivo.", - "LabelCustomDeviceDisplayName": "Nombre a mostrar:", "LabelCustomCssHelp": "Aplica tu propio estilo personalizado a la interfaz web.", "LabelCustomCss": "CSS personalizado:", "LabelCustomCertificatePathHelp": "Ruta a un archivo PKCS #12 que contiene un certificado y una clave privada para habilitar el soporte TLS en un dominio personalizado.", @@ -835,7 +821,6 @@ "LabelChannels": "Canales:", "LabelCertificatePasswordHelp": "Si tu certificado requiere una contraseña, por favor, introdúcela aquí.", "LabelCertificatePassword": "Contraseña del certificado:", - "TabAlbumArtists": "Artistas del álbum", "TabAdvanced": "Avanzado", "TabAccess": "Acceso", "TV": "TV", @@ -918,7 +903,6 @@ "LabelAudioChannels": "Canales de audio:", "LabelAudioBitrate": "Velocidad de bits de audio:", "LabelAudioBitDepth": "Profundidad de bits de audio:", - "LabelAudio": "Audio", "LabelArtistsHelp": "Separar múltiples artistas por punto y coma.", "LabelArtists": "Artistas:", "LabelAppNameExample": "Ejemplo: Sickbeard, Sonarr", @@ -1048,7 +1032,6 @@ "HeaderMusicQuality": "Calidad de la música", "HeaderMoreLikeThis": "Más como esto", "HeaderMetadataSettings": "Configuración de metadatos", - "HeaderMediaInfo": "Info del medio", "HeaderMediaFolders": "Carpetas de medios", "HeaderMedia": "Medios", "HeaderLoginFailure": "Falló el inicio de sesión", @@ -1076,10 +1059,8 @@ "HeaderIdentification": "Identificación", "HeaderHttpsSettings": "Opciones HTTPS", "HeaderHttpHeaders": "Encabezados HTTP", - "HeaderHome": "Inicio", "HeaderGuideProviders": "Proveedores de Guías de TV", "HeaderFrequentlyPlayed": "Reproducido frecuentemente", - "HeaderForgotPassword": "Olvidé mi contraseña", "HeaderForKids": "Para niños", "HeaderFetcherSettings": "Configuración del recolector", "HeaderFetchImages": "Obtener imágenes:", @@ -1129,7 +1110,6 @@ "HeaderFavoriteBooks": "Libros favoritos", "HeaderExternalIds": "IDs externos:", "HeaderError": "Error", - "HeaderEpisodes": "Episodios", "HeaderEnabledFieldsHelp": "Desmarca un campo para bloquearlo y prevenir que sus datos sean cambiados.", "HeaderEnabledFields": "Campos habilitados", "HeaderEditImages": "Editar imágenes", @@ -1163,12 +1143,10 @@ "HeaderCodecProfile": "Perfil de códec", "HeaderChapterImages": "Imágenes de los capítulos", "HeaderChannelAccess": "Acceso a los canales", - "HeaderCastCrew": "Reparto y equipo", "HeaderCastAndCrew": "Reparto y equipo", "HeaderCancelSeries": "Cancelar serie", "HeaderCancelRecording": "Cancelar grabación", "HeaderBranding": "Establecer marca", - "HeaderBooks": "Libros", "HeaderBlockItemsWithNoRating": "Bloquear elementos sin clasificación o con información de clasificación desconocida:", "HeaderAudioSettings": "Configuración de audio", "HeaderAudioBooks": "Audiolibros", @@ -1182,11 +1160,9 @@ "HeaderAlert": "Alerta", "HeaderAdmin": "Administrador", "HeaderAdditionalParts": "Partes adicionales", - "HeaderAddUser": "Agregar usuario", "HeaderAddUpdateImage": "Agregar/Actualizar Imagen", "HeaderAddToPlaylist": "Agregar a lista de reproducción", "HeaderAddToCollection": "Agregar a colección", - "HeaderAddScheduledTaskTrigger": "Agregar disparador", "HeaderActivity": "Actividad", "HeaderActiveRecordings": "Grabaciones activas", "HeaderActiveDevices": "Dispositivos activos", @@ -1244,9 +1220,7 @@ "EnableDetailsBannerHelp": "Mostrar una imagen banner en la parte superior de la página de detalles del elemento.", "EnableDetailsBanner": "Banner de detalles", "EnableThemeVideosHelp": "Reproducir videos temáticos en el fondo mientras se navega por la biblioteca.", - "EnableThemeVideos": "Videos temáticos", "EnableThemeSongsHelp": "Reproducir canciones temáticas en el fondo mientras se navega por la biblioteca.", - "EnableThemeSongs": "Canciones temáticas", "EnableStreamLoopingHelp": "Habilita esta opción si las transmisiones en vivo contienen solo unos pocos segundos de datos y necesitan ser solicitadas continuamente. Habilitar esto cuando no es requerido puede causar problemas.", "EnableStreamLooping": "Repetir automáticamente las transmisiones en vivo", "EnablePhotosHelp": "Las imágenes serán detectadas y mostradas junto con otros archivos multimedia.", @@ -1342,7 +1316,6 @@ "ButtonUninstall": "Desinstalar", "ButtonTrailer": "Trailer", "ButtonTogglePlaylist": "Lista de reproducción", - "ButtonSubtitles": "Subtítulos", "ButtonSubmit": "Enviar", "ButtonSplit": "Dividir", "ButtonStop": "Detener", @@ -1364,31 +1337,24 @@ "ButtonRename": "Renombrar", "ButtonRemove": "Remover", "ButtonRefreshGuideData": "Actualizar datos de la guía", - "ButtonRefresh": "Actualizar", "ButtonQuickStartGuide": "Guía de inicio rápido", "ButtonProfile": "Perfil", "ButtonPreviousTrack": "Pista anterior", - "ButtonPlay": "Reproducir", "ButtonPause": "Pausar", "ButtonParentalControl": "Control parental", "ButtonOpen": "Abrir", "ButtonOk": "OK", - "ButtonOff": "Apagar", "ButtonNextTrack": "Pista siguiente", "ButtonNetwork": "Red", "ButtonMore": "Más", "ButtonManualLogin": "Inicio de sesión manual", "ButtonLibraryAccess": "Acceso a biblioteca(s)", "ButtonInfo": "Info", - "ButtonHome": "Inicio", "ButtonGuide": "Guía", "ButtonGotIt": "Hecho", "ButtonFullscreen": "Pantalla completa", "ButtonForgotPassword": "Olvidé mi contraseña", - "ButtonFilter": "Filtro", "ButtonEditOtherUserPreferences": "Editar el perfil, la imagen y las preferencias personales de este usuario.", - "ButtonEditImages": "Editar imágenes", - "ButtonEdit": "Editar", "ButtonChangeServer": "Cambiar servidor", "ButtonCancel": "Cancelar", "ButtonBack": "Atrás", diff --git a/src/strings/fa.json b/src/strings/fa.json index 61c2f8f26c..c68bab1124 100644 --- a/src/strings/fa.json +++ b/src/strings/fa.json @@ -7,9 +7,7 @@ "Browse": "مرور کردن", "ButtonAddUser": "افزودن کاربر", "ButtonCancel": "لغو کردن", - "ButtonFilter": "فیلتر", "ButtonOk": "خوب", - "ButtonPlay": "پخش", "ButtonQuickStartGuide": "راهنمای شروع سریع", "ButtonResetPassword": "تنظیم مجدد رمز", "ButtonSignOut": "Sign out", @@ -20,7 +18,6 @@ "FolderTypeMusic": "موسیقی‌ها", "FolderTypeMusicVideos": "موزیک ویدیوها", "FolderTypeTvShows": "سریال‌های تلویزیونی", - "HeaderAddUser": "اضافه کردن کاربر", "HeaderContinueWatching": "ادامه تماشا", "HeaderCustomDlnaProfiles": "پروفایل های سفارشی", "HeaderDeviceAccess": "دسترسی دستگاه", @@ -44,7 +41,6 @@ "LabelCurrentPassword": "رمز فعلی:", "LabelCustomCertificatePath": "مسیر اختصاصی گواهینامه SSL:", "LabelCustomCertificatePathHelp": "پچ به فایل PKCS #12 حاوی یک گواهینامه و کلید خصوصی است تا پشتیبانی از TLS را در یک دامنه شخصی فعال کند.", - "LabelDisplayMissingEpisodesWithinSeasons": "نمایش قسمت های ناموجود در بین فصل ها", "LabelFinish": "پایان", "LabelLanguage": "زبان:", "LabelMaxParentalRating": "حداکثر امتیاز سنی مجاز والدین:", @@ -79,10 +75,7 @@ "ShowAdvancedSettings": "نمایش تنظیمات پیشرفته", "TabAccess": "دسترسی", "TabAdvanced": "پیشرفته", - "TabAlbumArtists": "هنرمندان آلبوم", - "TabEpisodes": "قسمت ها", "TabLatest": "جدیدترین‌ها", - "TabMusicVideos": "موزیک ویدیوها", "TabNetworks": "شبکه ها", "TabNotifications": "اعلان ها", "TabProfile": "پروفایل", @@ -134,26 +127,21 @@ "ButtonRename": "تغییر نام", "ButtonRemove": "حذف", "ButtonRefreshGuideData": "به‌روز‌رسانی داده‌ی راهنما", - "ButtonRefresh": "به‌روز‌رسانی", "ButtonProfile": "نمایه", "ButtonNextTrack": "ترانه پسین", "ButtonPreviousTrack": "ترانه پیشین", "ButtonPause": "مکث", "ButtonParentalControl": "رتبه بندی والدین", "ButtonOpen": "باز", - "ButtonOff": "خاموش", "ButtonNetwork": "شبکه", "ButtonMore": "بیشتر", "ButtonManualLogin": "ورود دستی", "ButtonLibraryAccess": "دسترسی به کتابخانه", "ButtonInfo": "اطلاعات", - "ButtonHome": "خانه", "ButtonGuide": "راهنما", "ButtonGotIt": "متوجه شدم", "ButtonFullscreen": "تمام صفحه", "ButtonForgotPassword": "فراموشی گذرواژه", - "ButtonEditImages": "ویرایش عکس‌ها", - "ButtonEdit": "ویرایش", "ButtonChangeServer": "تغییر سرور", "ButtonBack": "بازگشت", "ButtonArrowRight": "راست", @@ -196,8 +184,6 @@ "Episodes": "قسمت‌ها", "EndsAtValue": "تمام شده در {0}", "Ended": "تمام شده", - "EnableThemeVideos": "تم فیلم‌ها", - "EnableThemeSongs": "آهنگ‌های تم", "EnableStreamLooping": "چرخش خودکار پخش‌های زنده", "EnablePhotos": "نمایش عکس‌ها", "EnableNextVideoInfoOverlay": "نمایش اطلاعات ودیوی بعدی حین پخش ویدیو", @@ -266,7 +252,6 @@ "ButtonWebsite": "وبسایت", "ButtonUninstall": "حذف نصب", "ButtonTrailer": "تریلر", - "ButtonSubtitles": "زیرنویس‌ها", "ButtonSubmit": "تایید", "ButtonSplit": "جدا کردن", "ButtonStop": "توقف", @@ -305,7 +290,6 @@ "HeaderMusicQuality": "کیفیت آهنگ", "HeaderMoreLikeThis": "موارد مشابه با این", "HeaderMetadataSettings": "تنظیمات ابرداده", - "HeaderMediaInfo": "اطلاعات رسانه", "HeaderMediaFolders": "پوشه‌های رسانه", "HeaderMedia": "رسانه", "HeaderLoginFailure": "ورود ناموفق", @@ -328,10 +312,8 @@ "HeaderIdentificationCriteriaHelp": "حداقل یک مورد تعیین هویت وارد کنید.", "HeaderIdentification": "تعیین هویت", "HeaderHttpHeaders": "سرفصل‌های HTTP", - "HeaderHome": "خانه", "HeaderGuideProviders": "ارائه دهنده داده راهنمای تلویزیونی", "HeaderFrequentlyPlayed": "اغلب پخش شده", - "HeaderForgotPassword": "فراموشی گذرواژه", "HeaderForKids": "برای کودکان", "HeaderFetchImages": "دریافت عکس‌ها:", "HeaderFeatureAccess": "دسترسی‌های برجسته", @@ -341,7 +323,6 @@ "HeaderFavoriteBooks": "کتاب‌های مورد علاقه", "HeaderExternalIds": "ID های خارجی:", "HeaderError": "خطا", - "HeaderEpisodes": "قسمت‌ها", "HeaderEnabledFieldsHelp": "یک فیلد را برای جلوگیری از تغییر در داده‌ی آن علامت بزنید تا قفل بشود.", "HeaderEnabledFields": "فیلد‌های فعال شده", "HeaderEditImages": "ویرایش عکس‌ها", @@ -362,11 +343,9 @@ "HeaderCodecProfile": "نمایه کدک", "HeaderChapterImages": "عکس‌های سکانس", "HeaderChannelAccess": "دسترسی به کانال", - "HeaderCastCrew": "بازیگران و کارکنان", "HeaderCastAndCrew": "بازیگران و کارکنان", "HeaderCancelSeries": "لغو سریال", "HeaderCancelRecording": "لغو ضبط", - "HeaderBooks": "کتاب‌ها", "HeaderBlockItemsWithNoRating": "موارد مسدود شده با نقص یا عدم وجود اطلاعات امتیاز:", "LabelSkipIfAudioTrackPresentHelp": "این گزینه را عدم انتخاب کنید تا اطمینان حاصل کنید که همه ویدیوها فارغ از زبان صوت، زیرنویس دارند.", "LabelSkipIfAudioTrackPresent": "اگر صدای پیش‌فرض با زبان دانلودی یکسان است پرش کن", @@ -387,7 +366,6 @@ "ButtonAudioTracks": "آهنگ‌ها", "AlbumArtist": "هنرمند آلبوم", "Album": "آلبوم", - "HeaderAddScheduledTaskTrigger": "افزودن فعال‌ساز", "HeaderActivity": "فعالیت‌ها", "HeaderActiveRecordings": "ضبط‌های فعال", "HeaderActiveDevices": "دستگاه‌های فعال", @@ -517,7 +495,6 @@ "LabelImportOnlyFavoriteChannels": "محدود کردن کانال‌هایی که به عنوان مورد علاقه انتخاب شده‌اند", "LabelDateAdded": "تاریخ اضافه شده:", "LabelCustomRating": "امتیازدهی سفارشی:", - "LabelCustomDeviceDisplayName": "نام نمایشی:", "LabelCustomCssHelp": "ظاهر سفارشی مورد نظر خود را در رابط وب اعمال کنید.", "LabelCustomCss": "CSS سفارشی:", "LabelCriticRating": "امتیاز منتقدان:", @@ -529,7 +506,6 @@ "LabelHomeNetworkQuality": "کیفیت شبکه خانگی:", "LabelHardwareAccelerationTypeHelp": "تسریع کننده سخت افزاری نیاز به پیکربندی اضافی دارد.", "LabelSupportedMediaTypes": "نوع‌ رسانه‌های پشتیبانی شده:", - "LabelSubtitles": "زیرنویس‌ها", "LabelSubtitlePlaybackMode": "حالت زیرنویس:", "LabelSubtitleFormatHelp": "مثال: srt", "LabelSubtitleDownloaders": "دانلود کننده زیرنویس:", @@ -582,14 +558,12 @@ "OptionParentalRating": "رتبه بندی والدین", "OptionOnInterval": "در یک فاصله", "BookLibraryHelp": "کتاب‌های صوتی و متنی پشتیبانی می‌شوند. {0} راهنمای نامگذاری کتاب {1} را مرور کنید.", - "TabInfo": "اطلاعات", "TabDirectPlay": "پخش مستقیم", "TabDashboard": "داشبورد", "TabCodecs": "کدک‌ها", "TabCatalog": "فهرست", "TV": "تلویزیون", "Sunday": "یکشنبه", - "TabTrailers": "تریلرها", "Suggestions": "پیشنهادها", "Subtitles": "زیرنویس‌ها", "Studios": "استودیو‌ها", @@ -608,7 +582,6 @@ "TabSettings": "تنظیمات", "TabServer": "سرور", "TabScheduledTasks": "وظایف زمان بندی شده", - "TabResumeSettings": "ادامه", "TabResponses": "پاسخ‌ها", "TabPlugins": "افزونه‌ها", "TabParentalControl": "رتبه بندی والدین", @@ -768,7 +741,6 @@ "HeaderSelectTranscodingPath": "Select Transcoding Temporary Path", "HeaderSelectTranscodingPathHelp": "Browse or enter the path to use for transcoding temporary files. The folder must be writeable.", "LabelArtistsHelp": "Separate multiple using ;", - "LabelAudio": "Audio", "LabelAudioBitDepth": "Audio bit depth:", "LabelAudioBitrate": "Audio bitrate:", "LabelAudioChannels": "Audio channels:", @@ -926,7 +898,6 @@ "OptionAllowVideoPlaybackTranscoding": "Allow video playback that requires transcoding", "OptionArtist": "Artist", "OptionAuto": "Auto", - "OptionAutomatic": "Auto", "OptionAutomaticallyGroupSeries": "Automatically merge series that are spread across multiple folders", "OptionAutomaticallyGroupSeriesHelp": "If enabled, series that are spread across multiple folders within this library will be automatically merged into a single series.", "OptionBanner": "Banner", @@ -1142,7 +1113,6 @@ "LabelPostProcessorArguments": "Post-processor command line arguments:", "LabelPostProcessorArgumentsHelp": "Use {path} as the path to the recording file.", "LabelPreferredDisplayLanguage": "Preferred display language:", - "LabelPreferredDisplayLanguageHelp": "Translating Jellyfin is an ongoing project.", "LabelPreferredSubtitleLanguage": "Preferred subtitle language:", "LabelProfileAudioCodecs": "Audio codecs:", "LabelProfileCodecs": "Codecs:", @@ -1227,8 +1197,6 @@ "LabelTime": "Time:", "LabelTitle": "Title:", "LabelTrackNumber": "Track number:", - "LabelTranscodingAudioCodec": "Audio codec:", - "LabelTranscodingContainer": "Container:", "LabelTranscodePath": "Transcode path:", "LabelTranscodingTempPathHelp": "Specify a custom path for the transcode files served to clients. Leave blank to use the server default.", "LabelTranscodes": "Transcodes:", @@ -1236,7 +1204,6 @@ "LabelTranscodingProgress": "Transcoding progress:", "LabelTranscodingThreadCount": "Transcoding thread count:", "LabelTranscodingThreadCountHelp": "Select the maximum number of threads to use when transcoding. Reducing the thread count will lower CPU usage but may not convert fast enough for a smooth playback experience.", - "LabelTranscodingVideoCodec": "Video codec:", "LabelTriggerType": "Trigger Type:", "LabelTunerIpAddress": "Tuner IP Address:", "LabelTunerType": "Tuner type:", @@ -1326,7 +1293,6 @@ "MessagePlayAccessRestricted": "Playback of this content is currently restricted. Please contact your server administrator for more information.", "MessagePluginInstallDisclaimer": "Plugins built by Jellyfin community members are a great way to enhance your Jellyfin experience with additional features and benefits. Before installing, please be aware of the effects they may have on your Jellyfin Server, such as longer library scans, additional background processing, and decreased system stability.", "MessageReenableUser": "See below to reenable", - "MessageSettingsSaved": "Settings saved.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "The following media locations will be removed from your library:", "MessageUnableToConnectToServer": "We're unable to connect to the selected server right now. Please ensure it is running and try again.", "MessageUnsetContentHelp": "Content will be displayed as plain folders. For best results use the metadata manager to set the content types of sub-folders.", diff --git a/src/strings/fi.json b/src/strings/fi.json index 7eddf8e17f..9481f59b4f 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -16,7 +16,6 @@ "LabelAudioLanguagePreference": "Äänen ensisijainen kieli:", "LabelCountry": "Maa:", "LabelCurrentPassword": "Tämän hetkinen salsana:", - "LabelDisplayMissingEpisodesWithinSeasons": "Näytä puuttuvat jaksot kausien sisällä", "LabelFinish": "Valmis", "LabelLanguage": "Kieli:", "LabelMaxParentalRating": "Suurin sallittu ikäraja:", @@ -101,32 +100,25 @@ "ButtonAudioTracks": "Ääniraidat", "ButtonBack": "Takaisin", "ButtonChangeServer": "Vaihda Palvelinta", - "ButtonEdit": "Muokkaa", - "ButtonEditImages": "Muokkaa kuvia", "ButtonEditOtherUserPreferences": "Muokkaa tämän käyttäjän profiilia, kuvaa ja henkilökohtaisia asetuksia.", - "ButtonFilter": "Suodata", "ButtonForgotPassword": "Unohtuiko salasana", "ButtonFullscreen": "Kokonäyttötila", "ButtonGotIt": "Selvä", "ButtonGuide": "Opas", - "ButtonHome": "Koti", "ButtonInfo": "Tiedot", "ButtonLibraryAccess": "Kiraston pääsy", "ButtonManualLogin": "Manuaalinen kirjautuminen", "ButtonMore": "Lisää", "ButtonNetwork": "Verkko", "ButtonNextTrack": "Seuraava raita", - "ButtonOff": "Pois päältä", "ButtonOk": "Ok", "ButtonOpen": "Avaa", "BurnSubtitlesHelp": "Määrittää mikäli palvelimen pitäisi polttaa tekstitykset suoraan videoon muunnoksen aikana riippuen tekstitysten formaatista. Tekstitysten polttamisen välttäminen parantaa palvelimen suorituskykyä. Valitse Automaattinen polttaaksesi sekä kuva- (esim. VOBSUB, PGS, SUB/IDX, jne.) että tekstipohjaiset (ASS/SSA) formaatit.", "ButtonParentalControl": "Lapsilukko", "ButtonPause": "Tauko", - "ButtonPlay": "Toista", "ButtonPreviousTrack": "Edellinen raita", "ButtonProfile": "Profiili", "ButtonQuickStartGuide": "Pikaopas", - "ButtonRefresh": "Päivitä", "ButtonRefreshGuideData": "Päivitä oppaan tiedot", "ButtonRemove": "Poista", "ButtonRename": "Nimeä uudelleen", @@ -145,7 +137,6 @@ "ButtonStart": "Käynnistä", "ButtonStop": "Pysäytä", "ButtonSubmit": "Lähetä", - "ButtonSubtitles": "Tekstitykset", "ButtonTrailer": "Traileri", "ButtonUninstall": "Poista asennus", "ButtonWebsite": "Nettisivusto", @@ -240,7 +231,6 @@ "EndsAtValue": "Päättyy {0}", "Ended": "Päättynyt", "EnableThemeSongsHelp": "Soita tunnussäveliä taustalla selatessasi kirjastoa.", - "EnableThemeSongs": "Tunnuslaulut", "EnableStreamLoopingHelp": "Laita tämä päälle, jos suoratoistot sisältävät vain muutaman sekuntin verran dataa jota tarvitsee pyytää jatkuvasti. Tämän päälle laittaminen ilman toiminnon tarvetta voi aiheuttaa ongelmia.", "EnablePhotosHelp": "Kuvat tunnistetaan ja näytetään muiden media-tiedostojen ohessa.", "EnablePhotos": "Näytä valokuvat", @@ -264,7 +254,6 @@ "ErrorAddingXmlTvFile": "XMLTV-tiedostoa käyttäessä tapahtui virhe. Varmista, että tiedosto on olemassa ja kokeile uudestaan.", "ErrorAddingTunerDevice": "Viritintä lisätessä ilmeni ongelma. Varmista, että se on kytketty oikein ja kokeile uudestaan.", "EnableThemeVideosHelp": "Soita tunnusvideoita taustalla, selatessasi kirjastoa.", - "EnableThemeVideos": "Tunnusvideot", "AlbumArtist": "Albumin Artisti", "Album": "Albumi", "Played": "Toistetut", @@ -382,10 +371,8 @@ "LabelDisplayMode": "Näyttötila:", "LabelDateTimeLocale": "Päivämäärä ja aika:", "LabelCustomRating": "Mukautettu luokitus:", - "LabelCustomDeviceDisplayName": "Näyttönimi:", "LabelCustomCss": "Mukautettu CSS:", "LabelCertificatePassword": "Sertifikaatin salasana:", - "LabelAudio": "Audio", "LabelArtistsHelp": "Erota useita käyttämällä ;", "LabelAppNameExample": "Esimerkiksi: Sickbeard, Sonarr", "LabelAppName": "Sovelluksen nimi", @@ -470,7 +457,6 @@ "OptionDateAdded": "Lisäyspäivä", "OptionDaily": "Päivittäinen", "OptionBluray": "Blu-ray", - "TabTrailers": "Trailerit", "OptionBlockTvShows": "TV-sarjat", "OptionBlockTrailers": "Trailerit", "OptionBlockMusic": "Musiikki", @@ -478,7 +464,6 @@ "HeaderMoreLikeThis": "Lisää tällaista", "HeaderMetadataSettings": "Metadata-asetukset", "MoreMediaInfo": "Mediainfo", - "HeaderMediaInfo": "Mediainfo", "HeaderMediaFolders": "Mediakansiot", "HeaderMedia": "Media", "HeaderLibraryFolders": "Kirjaston kansiot", @@ -564,7 +549,6 @@ "LabelTextBackgroundColor": "Tekstin taustaväri:", "LabelSupportedMediaTypes": "Tuetut mediatyypit:", "LabelTag": "Tunniste:", - "LabelSubtitles": "Tekstitykset", "LabelSubtitleFormatHelp": "Esimerkki: srt", "LabelStatus": "Status:", "LabelSource": "Lähde:", @@ -580,7 +564,6 @@ "LabelProtocolInfo": "Protokollan info:", "LabelProtocol": "Protokolla:", "LabelPreferredSubtitleLanguage": "Ensisijainen tekstityksen kieli:", - "LabelPreferredDisplayLanguageHelp": "Jellyfinin kääntäminen on käynnissä oleva projekti.", "LabelPlayerDimensions": "Soittimen mitat:", "LabelPlayer": "Soitin:", "LabelPlaylist": "Soittolista:", @@ -636,22 +619,17 @@ "TabSettings": "Asetukset", "TabServer": "Palvelin", "TabScheduledTasks": "Ajastetut tehtävät", - "TabResumeSettings": "Jatka", "TabResponses": "Vastaukset", "TabPlugins": "Liitännäiset", "TabNfoSettings": "NFO-asetukset", "TabNetworks": "Verkot", "TabMyPlugins": "Omat liittännäiseni", - "TabMusicVideos": "Musiikkivideot", "TabMusic": "Musiikki", "TabLogs": "Lokit", "TabLatest": "Uusimmat", - "TabInfo": "Tiedot", - "TabEpisodes": "Jaksot", "TabDirectPlay": "Suoratoisto", "TabDashboard": "Päänäkymä", "TabCatalog": "Luettelo", - "TabAlbumArtists": "Albumin artistit", "TabAdvanced": "Edistynyt", "TV": "TV", "Sunday": "Sunnuntai", @@ -703,7 +681,6 @@ "RecordingCancelled": "Tallennus peruttu.", "RecordSeries": "Tallenna sarja", "Record": "Tallenna", - "OptionAutomatic": "Auto", "OptionAuto": "Auto", "OptionAscending": "Nousevassa järjestyksessä", "OptionArtist": "Artisti", @@ -784,7 +761,6 @@ "MetadataManager": "Metadatan hallintatyökalu", "Metadata": "Metadata", "MessageYouHaveVersionInstalled": "Sinulla on versio {0} asennettuna.", - "MessageSettingsSaved": "Asetukset tallennettu.", "MessagePleaseWait": "Ole hyvä ja odota. Tämä voi kestää hetken.", "MessageNothingHere": "Täällä ei ole mitään.", "MessageNoPluginsInstalled": "Sinulla ei ole asennettuna yhtään liitännäistä.", @@ -863,10 +839,8 @@ "HeaderMusicQuality": "Musiikin laatu", "HeaderLibraries": "Kirjastot", "HeaderIdentification": "Tunnistautuminen", - "HeaderForgotPassword": "Unohtuiko salasana", "HeaderForKids": "Lapsille", "HeaderError": "Virhe", - "HeaderEpisodes": "Jaksot", "HeaderEditImages": "Muokkaa kuvia", "HeaderDevices": "Laitteet", "HeaderDeleteItems": "Poista valitut", @@ -878,12 +852,10 @@ "HeaderAudioSettings": "Ääniasetukset", "GroupBySeries": "Ryhmitä sarjan perusteella", "Fullscreen": "Kokonäyttötila", - "HeaderBooks": "Kirjat", "HeaderAudioBooks": "Äänikirjat", "HeaderApiKeys": "API-avaimet", "HeaderApiKey": "API-avain", "HeaderAdmin": "Ylläpitäjä", - "HeaderAddUser": "Lisää käyttäjä", "HeaderAddUpdateImage": "Lisää/Päivitä kuva", "HeaderAddToPlaylist": "Lisää soittolistaan", "HeaderAddToCollection": "Lisää kokoelmaan", @@ -1012,7 +984,6 @@ "LabelVideoBitrate": "Videon bitrate:", "LabelWeb": "Web:", "LabelVideoCodec": "Videon codec:", - "LabelTranscodingVideoCodec": "Video codec:", "LabelSkipIfGraphicalSubsPresent": "Ohita, jos video sisältää upotetut tekstitykset", "LabelInternetQuality": "Verkkoyhteyden laatu:", "LabelEmbedAlbumArtDidl": "Upota albumin kuvamateriaali Didl:iin", @@ -1066,8 +1037,6 @@ "LabelAudioChannels": "Audiokanavia:", "LabelAudioBitrate": "Audion bitrate:", "LabelAudioCodec": "Audio codec:", - "LabelTranscodingContainer": "Säiliö:", - "LabelTranscodingAudioCodec": "Audio codec:", "LabelSubtitleDownloaders": "Tekstitysten lataajat:", "LabelSpecialSeasonsDisplayName": "Erikoiskauden näyttönimi:", "LabelSortTitle": "Lajitteluotsikko:", @@ -1151,7 +1120,6 @@ "ErrorAddingListingsToSchedulesDirect": "Lineuppia Schedules Direct -käyttäjätunnuksellesi lisättäessä ilmeni virhe. Schedules Direct sallii vain rajallisen määrän lineuppeja yhdelle käyttäjätunnukselle. Mikäli haluat jatkaa, voit esimerkiksi kirjautua Schedules Direct -sivustolle ja poistaa muita listauksia käyttäjätunnukseltasi.", "EnableDecodingColorDepth10Vp9": "Salli 10-bittinen hardware dekoodaus (VP9)", "EnableDecodingColorDepth10Hevc": "Salli 10-bittinen hardware dekoodaus (HEVC)", - "HeaderCastCrew": "Näyttelijät ja henkilökunta", "HeaderCastAndCrew": "Näyttelijät ja henkilökunta", "HeaderCancelSeries": "Peruuta sarja", "HeaderCancelRecording": "Peruuta tallennus", @@ -1161,6 +1129,5 @@ "ApiKeysCaption": "Lista aktiivisista API-avaimista", "HeaderApiKeysHelp": "Ulkoiset sovellukset tarvitsevat API-avaimen voidakseen toimia Jellyfin -palvelimen kanssa. Avaimet myönnetään joko kirjautumalla sisään Jellyfin -käyttäjätunnuksella tai myöntämällä sellainen sovellukselle manuaalisesti.", "HeaderAdditionalParts": "Muut osat", - "HeaderAddScheduledTaskTrigger": "Lisää laukaisin", "HeaderActiveRecordings": "Käynnissä olevat nauhoitukset" } diff --git a/src/strings/fr-ca.json b/src/strings/fr-ca.json index 15973b5f36..09585df2bd 100644 --- a/src/strings/fr-ca.json +++ b/src/strings/fr-ca.json @@ -141,14 +141,10 @@ "ButtonAudioTracks": "Pistes Audio", "ButtonBack": "Retour arrière", "ButtonChangeServer": "Changer de serveur", - "ButtonEdit": "Modifier", - "ButtonEditImages": "Modifier les images", "ButtonEditOtherUserPreferences": "Modifier ce profil utilisateur, son avatar et ses préférences personnelles.", - "ButtonFilter": "Filtre", "ButtonForgotPassword": "Mot de passe oublié", "ButtonFullscreen": "Plein écran", "ButtonGuide": "Guide", - "ButtonHome": "Accueil", "ButtonInfo": "Informations", "ButtonLibraryAccess": "Accès à la médiathèque", "ButtonManualLogin": "Connexion manuelle", @@ -191,7 +187,6 @@ "ButtonWebsite": "Site web", "ButtonUninstall": "Désinstaller", "ButtonTogglePlaylist": "Liste de lecture", - "ButtonSubtitles": "Sous-titres", "ButtonSubmit": "Soumettre", "ButtonStop": "Arrêt", "ButtonStart": "Démarrer", @@ -209,10 +204,8 @@ "ButtonRename": "Renommer", "ButtonRemove": "Enlever", "ButtonRefreshGuideData": "Rafraîchir les données de guide", - "ButtonRefresh": "Rafraîchir", "ButtonProfile": "Profil", "ButtonPreviousTrack": "Piste précédente", - "ButtonPlay": "Lecture", "ButtonPause": "Pause", "ButtonParentalControl": "Contrôle parentale", "ButtonOpen": "Ouvrir", diff --git a/src/strings/fr.json b/src/strings/fr.json index 4bab5a6179..84f882d280 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -58,29 +58,22 @@ "ButtonBack": "Retour arrière", "ButtonCancel": "Annuler", "ButtonChangeServer": "Changer de serveur", - "ButtonEdit": "Modifier", - "ButtonEditImages": "Modifier les images", "ButtonEditOtherUserPreferences": "Modifier ce profil utilisateur, son avatar et ses préférences personnelles.", - "ButtonFilter": "Filtre", "ButtonForgotPassword": "Mot de passe oublié", "ButtonFullscreen": "Plein écran", "ButtonGotIt": "Compris", - "ButtonHome": "Accueil", "ButtonInfo": "Informations", "ButtonLibraryAccess": "Accès à la médiathèque", "ButtonManualLogin": "Connexion manuelle", "ButtonMore": "Plus", "ButtonNetwork": "Réseau", "ButtonNextTrack": "Piste suivante", - "ButtonOff": "Arrêt", "ButtonOk": "OK", "ButtonOpen": "Ouvrir", "ButtonParentalControl": "Contrôle parental", - "ButtonPlay": "Lire", "ButtonPreviousTrack": "Piste précédente", "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Guide de démarrage rapide", - "ButtonRefresh": "Actualiser", "ButtonRefreshGuideData": "Actualiser les données du guide", "ButtonRemove": "Supprimer", "ButtonRename": "Renommer", @@ -101,7 +94,6 @@ "ButtonStart": "Commencer", "ButtonStop": "Arrêter", "ButtonSubmit": "Soumettre", - "ButtonSubtitles": "Sous-titres", "ButtonTrailer": "Bande-annonce", "ButtonUninstall": "Désinstaller", "ButtonWebsite": "Site Web", @@ -189,9 +181,7 @@ "EnablePhotosHelp": "Les images seront détectées et affichées avec les autres fichiers multimédia.", "EnableStreamLooping": "Reboucler les streaming en direct", "EnableStreamLoopingHelp": "Activez cette option si les streaming en direct ne contiennent que quelques secondes de données et doivent être redemandés continuellement. N'activez pas cette option sans raison car elle peut causer des problèmes.", - "EnableThemeSongs": "Thèmes musicaux", "EnableThemeSongsHelp": "Lire les thèmes musicaux en arrière-plan pendant la navigation dans la médiathèque.", - "EnableThemeVideos": "Thèmes vidéos", "EnableThemeVideosHelp": "Lire les thèmes vidéos en arrière-plan tout en parcourant la médiathèque.", "Ended": "Terminé", "EndsAtValue": "Se termine à {0}", @@ -243,11 +233,9 @@ "HeaderActiveDevices": "Appareils actifs", "HeaderActiveRecordings": "Enregistrements actifs", "HeaderActivity": "Activité", - "HeaderAddScheduledTaskTrigger": "Ajouter un déclencheur", "HeaderAddToCollection": "Ajouter à la collection", "HeaderAddToPlaylist": "Ajouter à la liste de lecture", "HeaderAddUpdateImage": "Ajouter/Mettre à jour une image", - "HeaderAddUser": "Ajouter un utilisateur", "HeaderAdditionalParts": "Parties additionelles", "HeaderAdmin": "Administrateur", "HeaderAlbumArtists": "Artistes", @@ -261,12 +249,10 @@ "HeaderAudioBooks": "Livres audios", "HeaderAudioSettings": "Réglages audio", "HeaderBlockItemsWithNoRating": "Bloquer les éléments avec des informations de classification inconnues ou n'en disposant pas :", - "HeaderBooks": "Livres", "HeaderBranding": "Slogan", "HeaderCancelRecording": "Annuler l'enregistrement", "HeaderCancelSeries": "Annuler la série", "HeaderCastAndCrew": "Distribution & équipe", - "HeaderCastCrew": "Distribution & équipe", "HeaderChannelAccess": "Accès aux chaînes", "HeaderChapterImages": "Images des chapitres", "HeaderCodecProfile": "Profil de codec", @@ -300,14 +286,12 @@ "HeaderEditImages": "Modifier les images", "HeaderEnabledFields": "Activer les champs", "HeaderEnabledFieldsHelp": "Décocher un champ pour le verrouiller et empêcher ses données d'être modifiées.", - "HeaderEpisodes": "Épisodes", "HeaderError": "Erreur", "HeaderExternalIds": "Identifiants externes :", "HeaderFeatureAccess": "Accès aux fonctionnalités", "HeaderFetchImages": "Télécharger les images :", "HeaderFetcherSettings": "Paramètres du récupérateur", "HeaderForKids": "Jeunesse", - "HeaderForgotPassword": "Mot de passe oublié", "HeaderFrequentlyPlayed": "Fréquemment lus", "HeaderGuideProviders": "Fournisseurs de données de guides TV", "HeaderHttpHeaders": "En-têtes HTTP", @@ -335,7 +319,6 @@ "HeaderLoginFailure": "Échec de la connexion", "HeaderMedia": "Média", "HeaderMediaFolders": "Dossiers multimédias", - "HeaderMediaInfo": "Informations du média", "HeaderMetadataSettings": "Paramètres des métadonnées", "HeaderMoreLikeThis": "Similaires", "HeaderMusicQuality": "Qualité de la musique :", @@ -492,7 +475,6 @@ "LabelCustomCertificatePathHelp": "Chemin vers un fichier PKCS #12 contenant un certificat et une clé privée pour activer le support TLS sur un domaine utilisateur.", "LabelCustomCss": "CSS personnalisée :", "LabelCustomCssHelp": "Appliquez votre propre feuille de styles personnalisée à l'interface web.", - "LabelCustomDeviceDisplayName": "Nom d'affichage :", "LabelCustomDeviceDisplayNameHelp": "Entrez un nom d'affichage personnalisé ou laissez vide pour utiliser le nom rapporté par l'appareil.", "LabelCustomRating": "Note personnalisée :", "LabelDateAdded": "Date d'ajout :", @@ -509,7 +491,6 @@ "LabelDiscNumber": "Numéro de disque :", "LabelDisplayLanguage": "Langue d'affichage :", "LabelDisplayLanguageHelp": "La traduction de Jellyfin est un projet en cours.", - "LabelDisplayMissingEpisodesWithinSeasons": "Afficher les épisodes manquants dans les saisons", "LabelDisplayMode": "Mode d'affichage :", "LabelDisplayName": "Nom d'affichage :", "LabelDisplayOrder": "Ordre d'affichage :", @@ -665,7 +646,6 @@ "LabelPostProcessorArguments": "Arguments en ligne de commande du post-processeur :", "LabelPostProcessorArgumentsHelp": "Utiliser {path} comme chemin d'accès au fichier d'enregistrement.", "LabelPreferredDisplayLanguage": "Langue d'affichage préférée :", - "LabelPreferredDisplayLanguageHelp": "La traduction de Jellyfin est un projet en cours.", "LabelPreferredSubtitleLanguage": "Langue de sous-titrage préférée :", "LabelProfileAudioCodecs": "Codecs audio :", "LabelProfileCodecs": "Codecs :", @@ -725,7 +705,6 @@ "LabelSubtitleDownloaders": "Outils de téléchargement de sous-titres :", "LabelSubtitleFormatHelp": "Exemple : srt", "LabelSubtitlePlaybackMode": "Mode des sous-titres :", - "LabelSubtitles": "Sous-titres", "LabelSupportedMediaTypes": "Types de médias supportés :", "LabelTVHomeScreen": "Écran d'accueil du mode TV :", "LabelTag": "Étiquette :", @@ -738,12 +717,9 @@ "LabelTimeLimitHours": "Limite de temps (heures) :", "LabelTitle": "Titre :", "LabelTrackNumber": "Numéro de piste :", - "LabelTranscodingAudioCodec": "Codec audio :", - "LabelTranscodingContainer": "Conteneur :", "LabelTranscodingTempPathHelp": "Spécifiez un chemin personnalisé pour les fichiers transcodés envoyés aux clients. Laissez vide pour utiliser le chemin par défaut du serveur.", "LabelTranscodingThreadCount": "Nombre de threads de transcodage :", "LabelTranscodingThreadCountHelp": "Sélectionnez le nombre maximum de threads à utiliser pour le transcodage. La réduction de cette valeur réduira l'utilisation du processeur mais pourrait ne pas suffire pour maintenir une lecture fluide.", - "LabelTranscodingVideoCodec": "Codec vidéo :", "LabelTriggerType": "Type de déclencheur :", "LabelTunerIpAddress": "Adresse IP du tuner :", "LabelTunerType": "Type de tuner :", @@ -850,7 +826,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "Pour configurer cette extension, veuillez vous connecter directement à votre serveur local.", "MessagePluginInstallDisclaimer": "Les extensions développées par les membres de la communauté sont une excellente manière d'améliorer votre expérience avec de nouvelles fonctionnalités. Avant toute installation, veuillez prendre connaissance de l'impact qu'elles peuvent avoir sur le serveur, comme l'augmentation de la durée d'actualisation de la médiathèque, de nouvelles tâches de fond, ou un système moins stable.", "MessageReenableUser": "Voir ci-dessous pour le réactiver", - "MessageSettingsSaved": "Paramètres enregistrés.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Ces emplacements de média vont être supprimés de votre médiathèque :", "MessageUnableToConnectToServer": "Nous sommes dans l'impossibilité de nous connecter au serveur sélectionné. Veuillez vérifier qu'il est opérationnel et réessayez.", "MessageUnsetContentHelp": "Le contenu sera affiché sous forme de dossiers. Pour un résultat optimal, utilisez le gestionnaire de métadonnées pour définir le type de contenu des sous-dossiers.", @@ -914,7 +889,6 @@ "OptionArtist": "Artiste", "OptionAscending": "Croissant", "OptionAuto": "Automatique", - "OptionAutomatic": "Automatique", "OptionAutomaticallyGroupSeries": "Fusionner automatiquement les séries qui sont réparties en plusieurs dossiers", "OptionAutomaticallyGroupSeriesHelp": "Les séries qui sont réparties en plusieurs dossiers dans la médiathèque seront automatiquement fusionnées en une seule série.", "OptionBlockBooks": "Livres", @@ -1143,16 +1117,13 @@ "SystemDlnaProfilesHelp": "Les profils système sont en lecture seule. Les modifications apportées à un profil système seront enregistrées sous un nouveau profil personnalisé.", "TabAccess": "Accès", "TabAdvanced": "Avancé", - "TabAlbumArtists": "Artistes de l'album", "TabCatalog": "Catalogue", "TabContainers": "Conteneurs", "TabDashboard": "Tableau de bord", "TabDirectPlay": "Lecture directe", - "TabEpisodes": "Épisodes", "TabLatest": "Derniers", "TabLogs": "Journaux", "TabMusic": "Musique", - "TabMusicVideos": "Vidéos musicales", "TabMyPlugins": "Mes extensions", "TabNetworks": "Réseaux", "TabNfoSettings": "Paramètres NFO", @@ -1161,11 +1132,9 @@ "TabProfile": "Profil", "TabProfiles": "Profils", "TabResponses": "Réponses", - "TabResumeSettings": "Reprise", "TabScheduledTasks": "Tâches planifiées", "TabServer": "Serveur", "TabSettings": "Paramètres", - "TabTrailers": "Bandes-annonces", "TabUpcoming": "À venir", "Tags": "Étiquettes", "TagsValue": "Mots clés: {0}", @@ -1248,7 +1217,6 @@ "HeaderTuners": "Égaliseur", "Horizontal": "Horizontal", "Images": "Images", - "LabelAudio": "Audio", "LeaveBlankToNotSetAPassword": "Laissez vide pour ne pas définir de mot de passe.", "Logo": "Logo", "MediaInfoCodec": "Codec", @@ -1274,7 +1242,6 @@ "Suggestions": "Suggestions", "TV": "Tv", "TabCodecs": "Codecs", - "TabInfo": "Informations", "TabNotifications": "Notifications", "TabPlugins": "Extensions", "TabStreaming": "Streaming", @@ -1299,7 +1266,6 @@ "MediaInfoStreamTypeVideo": "Video", "AuthProviderHelp": "Sélectionner un fournisseur d'authentification pour authentifier le mot de passe de cet utilisateur.", "PasswordResetProviderHelp": "Choisissez un fournisseur de réinitialisation de mot de passe à utiliser lorsqu'un utilisateur demande la réinitialisation de son mot de passe.", - "HeaderHome": "Accueil", "LabelUserLoginAttemptsBeforeLockout": "Tentatives de connexion échouées avant que l'utilisateur ne soit verrouillé :", "DashboardOperatingSystem": "Système d'Exploitation: {0}", "DashboardArchitecture": "Architecture : {0}", diff --git a/src/strings/gsw.json b/src/strings/gsw.json index f144e1ca65..a16a28910c 100644 --- a/src/strings/gsw.json +++ b/src/strings/gsw.json @@ -15,7 +15,6 @@ "FolderTypeMusicVideos": "Musigvideos", "FolderTypeTvShows": "TV", "Friday": "Friitig", - "HeaderAddUser": "Erstell en User", "HeaderDeviceAccess": "Grät Zuegriff", "HeaderEasyPinCode": "Eifache Pin Code", "HeaderFrequentlyPlayed": "Vell gspellt", @@ -30,7 +29,6 @@ "LabelContentType": "Date Art:", "LabelCountry": "Land:", "LabelCurrentPassword": "Jetzigs Passwort:", - "LabelDisplayMissingEpisodesWithinSeasons": "Zeig fehlendi Episode innerhalb vo de einzelne Staffle", "LabelFinish": "Beende", "LabelLanguage": "Sproch:", "LabelMaxParentalRating": "Maximum erlaubti Kindersicherig:", @@ -81,11 +79,8 @@ "Sunday": "Sonntig", "TabAccess": "Zuegriff", "TabAdvanced": "Erwiitert", - "TabAlbumArtists": "Album-Artist", "TabCatalog": "Katalog", - "TabEpisodes": "Episode", "TabLatest": "Letschti", - "TabMusicVideos": "Musigvideos", "TabMyPlugins": "Miini Plugins", "TabNetworks": "Studios", "TabNotifications": "Mitteilige", diff --git a/src/strings/he.json b/src/strings/he.json index 667db59d9e..828f140465 100644 --- a/src/strings/he.json +++ b/src/strings/he.json @@ -17,12 +17,9 @@ "MessageBrowsePluginCatalog": "עבור לקטלוג התוספים לראות אילו זמינים.", "ButtonAddUser": "הוסף משתמש", "ButtonCancel": "בטל", - "ButtonEdit": "ערוך", - "ButtonFilter": "מסנן", "ButtonGotIt": "הבנתי", "ButtonManualLogin": "התחברות ידנית", "ButtonOk": "בסדר", - "ButtonPlay": "נגן", "ButtonQuickStartGuide": "מדריך מהיר", "ButtonRefreshGuideData": "רענן את מדריך השידור", "ButtonRemove": "הסר", @@ -78,11 +75,9 @@ "HeaderActiveRecordings": "הקלטות פעילות", "HeaderAddToCollection": "להוסיף לאוסף", "HeaderAddToPlaylist": "הוסף לרשימת ניגון", - "HeaderAddUser": "הוסף משתמש", "HeaderAdditionalParts": "חלקים נוספים", "HeaderCancelRecording": "ביטול הקלטה", "HeaderCancelSeries": "בטל סדרה", - "HeaderCastCrew": "שחקנים וצוות", "HeaderConfirmPluginInstallation": "אשר התקנת תוסף", "HeaderCustomDlnaProfiles": "פרופילים מותאמים אישית", "HeaderDeleteItem": "מחק פריט", @@ -160,7 +155,6 @@ "LabelDefaultUser": "משתמש ברירת מחדש:", "LabelDefaultUserHelp": "מגדיר אילו ספריות משתמש יוצגו במכשירים מחוברים. ניתן לעקוף זאת לכל מכשיר על ידי שימוש בפרופילים.", "LabelDiscNumber": "מספר דיסק:", - "LabelDisplayMissingEpisodesWithinSeasons": "הצג פרקים חסרים בתוך העונות", "LabelDisplayOrder": "סדר תצוגה:", "LabelDownMixAudioScaleHelp": "הגבר את עוצמת השמע כאשר הוא ממוזג. ערך השווה ל-1 יישמר את העוצמה המקורית.", "LabelDynamicExternalId": "{0} תעודת זהות:", @@ -218,7 +212,6 @@ "LabelPlaceOfBirth": "מקום לידה:", "LabelPlaylist": "רשימת ניגון:", "LabelPreferredDisplayLanguage": "שפת תצוגה מועדפת:", - "LabelPreferredDisplayLanguageHelp": "תרגום Jellyfin הוא תהליך מתמשך.", "LabelProfileAudioCodecs": "מקודדי שמע:", "LabelProfileCodecs": "מקודדים:", "LabelProfileVideoCodecs": "‮מקודדי וידאו:", @@ -290,7 +283,6 @@ "OptionAllowUserToManageServer": "אפשר למשתמש זה לנהל את השרת", "OptionArtist": "אמן", "OptionAscending": "סדר עולה", - "OptionAutomatic": "אוטומטי", "OptionBlockMovies": "סרטים", "OptionBlockTvShows": "תוכניות טלויזיה", "OptionBluray": "בלו-ריי", @@ -414,15 +406,11 @@ "SystemDlnaProfilesHelp": "פרופלי מערכת הם לקריאה בלבד. שינויים בפרופילי מערכת ישמרו לפרופיל מוצאם אישית חדש.", "TabAccess": "גישה", "TabAdvanced": "מתקדם", - "TabAlbumArtists": "אמני אלבום", "TabCatalog": "קטלוג", "TabCodecs": "מקודדים", "TabDashboard": "לוח בקרה", - "TabEpisodes": "פרקים", - "TabInfo": "מידע", "TabLatest": "אחרון", "TabMusic": "מוסיקה", - "TabMusicVideos": "קליפים", "TabMyPlugins": "התוספים שלי", "TabNetworks": "רשתות", "TabNotifications": "התראות", @@ -430,7 +418,6 @@ "TabProfiles": "פרופילים", "TabServer": "שרת", "TabSettings": "הגדרות", - "TabTrailers": "טריילרים", "TabUpcoming": "בקרוב", "Tags": "מילות מפתח", "TellUsAboutYourself": "ספר לנו על עצמך", @@ -520,7 +507,6 @@ "ContinueWatching": "המשך לצפות", "ButtonUninstall": "הסר התקנה", "ButtonTrailer": "קדימון", - "ButtonSubtitles": "כתוביות", "ButtonSplit": "פיצול", "ButtonStop": "עצור", "ButtonSettings": "הגדרות", @@ -533,9 +519,7 @@ "ButtonNetwork": "רשת", "ButtonMore": "עוד", "ButtonInfo": "מידע", - "ButtonHome": "בית", "ButtonFullscreen": "מסך מלא", - "ButtonEditImages": "ערוך תמונות", "ButtonAddServer": "הוסף שרת", "ButtonAddMediaLibrary": "הוסף ספריית מדיה", "ButtonAddImage": "הוסף תמונה", @@ -576,14 +560,12 @@ "HeaderLibraries": "ספריות", "HeaderInstall": "התקנה", "HeaderImageOptions": "הגדרות תמונה", - "HeaderHome": "בית", "HeaderForKids": "עבור ילדים", "HeaderFavoriteVideos": "סרטונים מועדפים", "HeaderFavoritePeople": "אנשים מועדפים", "HeaderFavoriteMovies": "סרטים מועדפים", "HeaderFavoriteBooks": "ספרים מועדפים", "HeaderError": "שגיאה", - "HeaderEpisodes": "פרקים", "HeaderDownloadSync": "הורדה וסנכרון", "HeaderDevices": "מכשירים", "HeaderDeveloperInfo": "מידע למפתח", @@ -595,13 +577,11 @@ "HeaderConfirmRevokeApiKey": "‫בטל מפתח API", "HeaderCastAndCrew": "שחקנים וצוות", "HeaderBranding": "מיתוג", - "HeaderBooks": "ספרים", "HeaderAudioSettings": "הגדרות שמע", "HeaderAudioBooks": "ספרים מוקלטים", "HeaderApiKeys": "‫מפתחות API", "HeaderApiKey": "‫מפתח API", "HeaderAddUpdateImage": "הוסף/עדכן תמונה", - "HeaderAddScheduledTaskTrigger": "הוסף טריגר", "HeaderActivity": "פעילות", "Guide": "מדריך", "Genre": "ז'אנר", @@ -620,7 +600,6 @@ "Episodes": "פרקים", "EnableThemeSongsHelp": "נגן שירי פתיח ברגע בעת העיון בספרייה.", "ThemeSongs": "שירי פתיח", - "EnableThemeSongs": "שירי פתיח", "EnablePhotos": "הצג תמונות", "EnableHardwareEncoding": "הפעל קידוד חומרה", "EnableExternalVideoPlayers": "נגני וידאו חיצוניים", @@ -646,16 +625,13 @@ "ButtonScanAllLibraries": "סרוק את כל הספריות", "ButtonRevoke": "בטל", "TabScheduledTasks": "משימות מתוזמנות", - "TabResumeSettings": "המשך צפייה", "ButtonResume": "המשך", - "ButtonRefresh": "רענון", "ButtonProfile": "פרופיל", "ButtonOpen": "פתח", "HeaderTracks": "רצועות", "ButtonPreviousTrack": "הרצועה הקודמת", "ButtonNextTrack": "הרצועה הבאה", "ButtonGuide": "מדריך", - "HeaderForgotPassword": "שחזור סיסמה", "ButtonForgotPassword": "שחזור סיסמה", "ButtonEditOtherUserPreferences": "ערוך את הפרופיל, התמונה וההגדרות האישיות של משתמש זה.", "ButtonChangeServer": "החלף שרת", @@ -681,7 +657,6 @@ "CinemaModeConfigurationHelp": "מצב קולנוע מביא את חוויית הקולנוע היישר אל הסלון עם האפשרות להפעיל טריילרים וקדימונים מותאמים אישית לפני הסרט.", "ChannelAccessHelp": "בחר את הערוצים לשיתוף עם משתמש זה. מנהלים יוכלו לערוך את כל הערוצים בעזרת מנהל המטא-דאטה.", "ButtonResetEasyPassword": "אתחל קוד פין פשוט", - "ButtonOff": "כיבוי", "ButtonLibraryAccess": "הרשאות גישה לספרייה", "BurnSubtitlesHelp": "מחליט אם על השרת לצרוב כתוביות בזמן קידוד וידאו. הימנעות מכך תשפר מאוד את הביצועים. בחר \"אוטומטי\" לצריבת כתוביות על בסיס פורמט תמונה (VOBSUB, PGS, SUB, IDX, …) וכתוביות ASS או SSA מסויימות.", "Artist": "אמן", @@ -707,7 +682,6 @@ "DashboardOperatingSystem": "מערכת הפעלה: {0}", "HeaderMyMediaSmall": "המדיה שלי (קטן)", "HeaderMusicQuality": "איכות מוזיקה", - "HeaderMediaInfo": "מידע על המדיה", "HeaderMoreLikeThis": "עוד כמו זה", "HeaderMedia": "מדיה", "LabelMetadata": "מטא-דאטה:", @@ -730,7 +704,6 @@ "LabelDidlMode": "מצב DIDL:", "LabelDeviceDescription": "תיאור מכשיר", "LabelDefaultScreen": "מסך ברירת-מחדל:", - "LabelCustomDeviceDisplayName": "שם תצוגה:", "LabelImageType": "סוג תמונה:", "LabelHttpsPortHelp": "מספר פורט ה-TCP עבור שרת ה-HTTPS.", "LabelHttpsPort": "מספר פורט HTTPS מקומי:", diff --git a/src/strings/hi-in.json b/src/strings/hi-in.json index 6a22cb170c..bacff9aca2 100644 --- a/src/strings/hi-in.json +++ b/src/strings/hi-in.json @@ -1,7 +1,6 @@ { "ButtonQuickStartGuide": "तुरंत आरंभ मार्गदर्शिका", "ButtonSignOut": "Sign out", - "HeaderAddUser": "उपयोगकर्ता जोडें", "LabelFinish": "समाप्त", "LabelYoureDone": "आपने पूरा कर लिया है!", "MoreUsersCanBeAddedLater": "अधिक उपयोगकर्ताओं को बाद में डैशबोर्ड के अंतर्गत जोड़ा जा सकता है।", @@ -33,22 +32,17 @@ "AllowMediaConversionHelp": "मीडिया परिवर्तन के लिये अनुमति दें", "AllowMediaConversion": "मीडिया रूपांतरण की अनुमति दें", "ButtonOk": "ठीक", - "ButtonOff": "बंद", "ButtonNextTrack": "आगे धावन पथ", "ButtonNetwork": "संजाल", "ButtonMore": "अधिक", "ButtonManualLogin": "मैनुअल लॉगिन", "ButtonLibraryAccess": "पुस्तकालय का उपयोग", "ButtonInfo": "जानकारी", - "ButtonHome": "घर", "ButtonGuide": "मार्गदर्शक", "ButtonGotIt": "समझ गया", "ButtonFullscreen": "पूर्ण स्क्रीन", "ButtonForgotPassword": "पासवर्ड भूल गए", - "ButtonFilter": "निस्पंदन", "ButtonEditOtherUserPreferences": "इस उपयोगकर्ता की प्रोफ़ाइल, छवि और व्यक्तिगत प्राथमिकताएँ संपादित करें।", - "ButtonEditImages": "छवियों को संपादित करें", - "ButtonEdit": "संपादित करें", "ButtonChangeServer": "सर्वर बदलें", "ButtonCancel": "रद्द करना", "ButtonBack": "वापस", diff --git a/src/strings/hr.json b/src/strings/hr.json index afbdbf2c22..169d50ad6c 100644 --- a/src/strings/hr.json +++ b/src/strings/hr.json @@ -25,29 +25,23 @@ "ButtonBack": "Nazad", "ButtonCancel": "Odustani", "ButtonChangeServer": "Promijeni Server", - "ButtonEdit": "Izmjeni", - "ButtonEditImages": "Uređivanje slika", "ButtonEditOtherUserPreferences": "Uredite ovaj korisnički profil, slike i osobne postavke.", "ButtonForgotPassword": "Zaboravili ste lozinku", "ButtonFullscreen": "Puni zaslon", "ButtonGotIt": "Shvaćam", "ButtonGuide": "Vodič", - "ButtonHome": "Početna", "ButtonLibraryAccess": "Pristup biblioteci", "ButtonManualLogin": "Ručna prijava", "ButtonMore": "Više", "ButtonNetwork": "Mreža", "ButtonNextTrack": "Sljedeća pjesma", - "ButtonOff": "Isključi", "ButtonOk": "U redu", "ButtonOpen": "Otvori", "ButtonParentalControl": "Roditeljska kontrola", "ButtonPause": "Pauza", - "ButtonPlay": "Pokreni", "ButtonPreviousTrack": "Prethodna pjesma", "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Vodič za brzi početak", - "ButtonRefresh": "Osviježi", "ButtonRefreshGuideData": "Osvježi TV vodič", "ButtonRemove": "Ukloni", "ButtonRename": "Preimenuj", @@ -66,7 +60,6 @@ "ButtonSignOut": "Odjava", "ButtonStart": "Početak", "ButtonSubmit": "Podnesi", - "ButtonSubtitles": "Titlovi", "ButtonTrailer": "Kratki video", "ButtonUninstall": "Ukloni", "ButtonWebsite": "Web stranica", @@ -144,11 +137,9 @@ "HeaderActiveDevices": "Aktivni uređaji", "HeaderActiveRecordings": "Aktivna snimanja", "HeaderActivity": "Aktivnosti", - "HeaderAddScheduledTaskTrigger": "Dodaj okidač", "HeaderAddToCollection": "Dodaj u kolekciju", "HeaderAddToPlaylist": "Dodaj u popis", "HeaderAddUpdateImage": "Dodaj/ažuriraj sliku", - "HeaderAddUser": "Dodaj korisnika", "HeaderAdditionalParts": "Dodatni djelovi", "HeaderAlert": "Uzbuna", "HeaderApiKey": "API ključ", @@ -156,12 +147,10 @@ "HeaderApiKeysHelp": "Vanjske aplikacije moraju imati API ključ kako bi komunicirale s Jellyfin Serverom. Ključevi se izdaju prijavom s Jellyfin računom ili ručnim odobravanjem zahtjeva ključa.", "HeaderApp": "Aplikacija", "HeaderAudioSettings": "Postavke zvuka", - "HeaderBooks": "Knjige", "HeaderBranding": "Brendiranje", "HeaderCancelRecording": "Prekini snimanje", "HeaderCancelSeries": "Otkaži serije", "HeaderCastAndCrew": "Glumci i ekipa", - "HeaderCastCrew": "Glumci i ekipa", "HeaderChannelAccess": "Pristup kanalima", "HeaderCodecProfile": "Profil kodeka", "HeaderCodecProfileHelp": "Profili kodeka definiraju ograničenja kada uređaji izvode sadržaj u specifičnom kodeku. Ako se ograničenja podudaraju tada će sadržaj biti transkodiran, iako je kodek konfiguriran za direktno izvođenje.", @@ -188,12 +177,10 @@ "HeaderEditImages": "Uređivanje slika", "HeaderEnabledFields": "Omogući polja", "HeaderEnabledFieldsHelp": "Poništi polje za zaključavanje i spriječi njihove podatke od toga da budu promijenjeni.", - "HeaderEpisodes": "Epizode", "HeaderError": "Greška", "HeaderFeatureAccess": "Pristup opcijama", "HeaderFetchImages": "Dohvati slike:", "HeaderForKids": "Za djecu", - "HeaderForgotPassword": "Zaboravili ste lozinku", "HeaderFrequentlyPlayed": "Često izvođeno", "HeaderGuideProviders": "Pružatelji vodiča", "HeaderHttpHeaders": "HTTP zaglavlja", @@ -216,7 +203,6 @@ "HeaderLoginFailure": "Neuspjela prijava", "HeaderMedia": "Medij", "HeaderMediaFolders": "Medijska mapa", - "HeaderMediaInfo": "Info medija", "HeaderMetadataSettings": "Postavke meta-podataka", "HeaderMoreLikeThis": "Više ovakvih", "HeaderMusicVideos": "Muzički spotovi", @@ -334,7 +320,6 @@ "LabelCurrentPassword": "Sadašnja lozinka:", "LabelCustomCss": "Prilagođeni CSS:", "LabelCustomCssHelp": "Primijenite svoj vlastiti prilagođeni stil na web sučelje.", - "LabelCustomDeviceDisplayName": "Prikaz naziva:", "LabelCustomDeviceDisplayNameHelp": "Navedite naziv prilagođenog prikaza ili ostaviti prazno za korištenje naziva koji je izvijestio uređaj.", "LabelCustomRating": "Prilagođena ocjena:", "LabelDateAdded": "Datum dodavanja:", @@ -346,7 +331,6 @@ "LabelDefaultUserHelp": "Određuje koja će biblioteka biti prikazana na spojenim uređajima. Ovo se može zaobići za svaki uređaj koristeći profile.", "LabelDeviceDescription": "Opis uređaja", "LabelDidlMode": "DIDL način:", - "LabelDisplayMissingEpisodesWithinSeasons": "Prikaži epizode koje nedostaju unutar sezone", "LabelDisplayName": "Prikaz naziva:", "LabelDisplayOrder": "Poredak prikaza:", "LabelDisplaySpecialsWithinSeasons": "Prikaz specijalnih dodataka unutar sezona u kojima su emitirani", @@ -481,7 +465,6 @@ "LabelPlayDefaultAudioTrack": "Pokreni zadani audio zapis, bez obzira na jezik", "LabelPlaylist": "Popis:", "LabelPreferredDisplayLanguage": "Željeni jezik za prikaz:", - "LabelPreferredDisplayLanguageHelp": "Prevađanje Jellyfin-a je projekt u tijeku.", "LabelProfileAudioCodecs": "Audio kodek:", "LabelProfileCodecs": "Kodeki:", "LabelProfileCodecsHelp": "Odvojeno sa točka-zrezom. Ovo može ostaviti prazno kao bi bilo postavljeno za sve codecs.", @@ -533,12 +516,9 @@ "LabelTimeLimitHours": "Rok (sati):", "LabelTitle": "Naslov:", "LabelTrackNumber": "Broj pjesme:", - "LabelTranscodingAudioCodec": "Audio koder:", - "LabelTranscodingContainer": "Spremnik:", "LabelTranscodingTempPathHelp": "Ova mapa sadrži radne datoteke koje koristi konverter. Navedite prilagođenu putanju ili ostavite prazno za korištenje zadanog unutar mape podataka poslužitelja.", "LabelTranscodingThreadCount": "Broj niti konvertiranja:", "LabelTranscodingThreadCountHelp": "Odaberite maksimalan broj niti koje će se koristiti kada se konvertira. Manji broj niti će smanjiti upotrebu procesora, ali moguće da neće konvertirati dovoljno brzo za glatke reprodukcije.", - "LabelTranscodingVideoCodec": "Video koder:", "LabelTriggerType": "Tip pokretača:", "LabelTunerIpAddress": "IP adresa TV/Radio uređaja:", "LabelTunerType": "Vrsta pretraživača:", @@ -626,7 +606,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "Za podešavanje ovog dodatka prijavite se izravno na lokalni server.", "MessagePluginInstallDisclaimer": "Dodaci izgrađeni od strane članova Jellyfin zajednice su sjajan način kako bi unaprijedili Vaše iskustvo Jellyfin s dodatnim značajkama i prednostima. Prije instaliranja budite svjesni učinaka koje mogu imati na vaš Jellyfin Server, kao što je duže skeniranje biblioteke, dodatna pozadinska obrada, a smanjena stabilnost sustava.", "MessageReenableUser": "Pogledajte dolje za ponovno omogućenje", - "MessageSettingsSaved": "Postavke spremljene.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Sljedeće lokacije medija biti će uklonjene iz vaše Jellyfin biblioteke:", "MessageUnableToConnectToServer": "Nismo u mogućnosti spojiti se na odabrani poslužitelj. Provjerite dali je pokrenut i pokušajte ponovno.", "MessageUnsetContentHelp": "Sadržaj će biti prikazan kao obične mape. Za najbolje rezultate upotrijebite upravitelj meta-podataka za postavljanje vrste sadržaja pod-mapa.", @@ -673,7 +652,6 @@ "OptionArtist": "Izvođaču", "OptionAscending": "Uzlazno", "OptionAuto": "Automatski", - "OptionAutomatic": "Automatski", "OptionBlockBooks": "Knjige", "OptionBlockChannelContent": "Sadržaj Internet kanala", "OptionBlockLiveTvChannels": "TV kanali uživo", @@ -851,17 +829,14 @@ "SystemDlnaProfilesHelp": "Sistemski profili su samo za čitanje. Bilo kakve izmjene na sistemskom profilu biti će snimljene kao novi prilagođeni profil.", "TabAccess": "Pristup", "TabAdvanced": "Napredno", - "TabAlbumArtists": "Albumi izvođača", "TabCatalog": "Katalog", "TabCodecs": "Kodek", "TabContainers": "Spremnik", "TabDashboard": "Nadzorna ploča", "TabDirectPlay": "Direktna reprodukcija", - "TabEpisodes": "Epizode", "TabLatest": "Zadnje", "TabLogs": "Dnevnici", "TabMusic": "Glazba", - "TabMusicVideos": "Muzički spotovi", "TabMyPlugins": "Moji dodaci", "TabNetworks": "Mreže", "TabNfoSettings": "Nfo postavke", @@ -872,11 +847,9 @@ "TabProfile": "Profil", "TabProfiles": "Profili", "TabResponses": "Odazivi", - "TabResumeSettings": "Postavke nastavka", "TabScheduledTasks": "Zakazani zadaci", "TabSettings": "Postavke", "TabStreaming": "Strujanje", - "TabTrailers": "Kratki filmovi", "TabUpcoming": "Uskoro", "Tags": "Oznake", "TellUsAboutYourself": "Recite nam nešto o sebi", @@ -987,7 +960,6 @@ "ButtonStop": "Stop", "ButtonScanAllLibraries": "Skeniraj sve biblioteke", "ButtonInfo": "Info", - "ButtonFilter": "Filtriraj", "ButtonAddImage": "Dodaj sliku", "Box": "Kutija", "AskAdminToCreateLibrary": "Traži administratora da kreira biblioteku.", @@ -1051,7 +1023,6 @@ "LabelSyncPlayNewGroupDescription": "Kreiraj novu grupu", "LabelSyncPlayNewGroup": "Nova grupa", "MillisecondsUnit": "ms", - "LabelSubtitles": "Prijevodi", "LabelStatus": "Status:", "LabelSortOrder": "Redoslijed sortiranja:", "LabelSortBy": "Sortiranje po:", @@ -1073,7 +1044,6 @@ "LabelDisplayLanguage": "Jezik prikaza:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Automatski osvježi meta podatke sa interneta:", "LabelAudioChannels": "Audio kanali:", - "LabelAudio": "Audio", "LabelAlbum": "Album:", "Label3DFormat": "3D format:", "Items": "Stavke", @@ -1098,7 +1068,6 @@ "HeaderNavigation": "Navigacija", "HeaderMyDevice": "Moj uređaj", "HeaderLibrarySettings": "Postavke biblioteke", - "HeaderHome": "Početna", "HeaderFavoritePeople": "Omiljeni ljudi", "HeaderFavoriteMovies": "Omiljeni filmovi", "HeaderFavoriteBooks": "Omiljene knjige", diff --git a/src/strings/hu.json b/src/strings/hu.json index 9a409e920f..2217ceb7df 100644 --- a/src/strings/hu.json +++ b/src/strings/hu.json @@ -21,25 +21,18 @@ "ButtonAudioTracks": "Audió Sávok", "ButtonCancel": "Mégsem", "ButtonChangeServer": "Szerver váltás", - "ButtonEdit": "Szerkesztés", - "ButtonEditImages": "Képek szerkesztése", - "ButtonFilter": "Szűrő", "ButtonForgotPassword": "Elfelejtett Jelszó", "ButtonGotIt": "Értettem", - "ButtonHome": "Kezdőlap", "ButtonLibraryAccess": "Könyvtár hozzáférés", "ButtonManualLogin": "Manuális belépés", "ButtonMore": "Tovább", "ButtonNextTrack": "Következő sáv", - "ButtonOff": "Ki", "ButtonOpen": "Megnyitás", "ButtonParentalControl": "Szülői felügyelet", "ButtonPause": "Szünet", - "ButtonPlay": "Lejátszás", "ButtonPreviousTrack": "Előző sáv", "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Gyorsbeállítás varázsló", - "ButtonRefresh": "Frissítés", "ButtonRemove": "Eltávolítás", "ButtonRename": "Átnevezés", "ButtonResetEasyPassword": "Pin kód visszaállítása", @@ -56,7 +49,6 @@ "ButtonSignOut": "Kijelentkezés", "ButtonStop": "Leállít", "ButtonSubmit": "Elküld", - "ButtonSubtitles": "Feliratok", "ButtonTrailer": "Előzetes", "ButtonUninstall": "Eltávolítás", "ButtonWebsite": "Weboldal", @@ -83,7 +75,6 @@ "EditSubtitles": "Feliratok szerkesztése", "EnableBackdropsHelp": "A háttérképek a könyvtár böngészése közben néhány oldal hátterében jelennek meg.", "EnableHardwareEncoding": "Hardveres kódolás engedélyezése", - "EnableThemeSongs": "Főcímdalok", "EnableThemeSongsHelp": "Főcímdalok lejátszása háttérben a könyvtár böngészése közben.", "EndsAtValue": "Várható befejezés {0}", "Episodes": "Epizódok", @@ -109,11 +100,9 @@ "HeaderAddToCollection": "Hozzáadás gyűjteményhez", "HeaderAddToPlaylist": "Hozzáadás lejátszási listához", "HeaderAddUpdateImage": "Kép hozzáadása / frissítése", - "HeaderAddUser": "Új felhasználó", "HeaderAudioBooks": "Hangos könyvek", "HeaderAudioSettings": "Audió Beállítások", "HeaderCastAndCrew": "Szereplők és Stáb", - "HeaderCastCrew": "Szereplők és Stáb", "HeaderConnectToServer": "Kapcsolódás a Szerverhez", "HeaderContinueWatching": "Megtekintés folytatása", "HeaderCustomDlnaProfiles": "Egyedi profilok", @@ -125,9 +114,7 @@ "HeaderEasyPinCode": "Pin kód", "HeaderEditImages": "Képek szerkesztése", "HeaderEnabledFields": "Engedélyezett mezők", - "HeaderEpisodes": "Epizódok", "HeaderExternalIds": "Külső id-k:", - "HeaderForgotPassword": "Elfelejtett Jelszó", "HeaderFrequentlyPlayed": "Gyakran játszott", "HeaderIdentifyItemHelp": "Adj meg egy vagy több keresési kritériumot. Távolítsd el a kritériumokat a keresési eredmények növelése érdekében.", "HeaderImageSettings": "Kép beállítások", @@ -143,7 +130,6 @@ "HeaderLiveTvTunerSetup": "Élő TV tuner beállítása", "HeaderMedia": "Média", "HeaderMediaFolders": "Médiakönyvtárak", - "HeaderMediaInfo": "Média Infó", "HeaderMetadataSettings": "Metaadat Beállítások", "HeaderMoreLikeThis": "Több ehhez hasonló", "HeaderMusicVideos": "Zenei videók", @@ -196,7 +182,6 @@ "Label3DFormat": "3D formátum:", "LabelAlbumArtists": "Album előadók:", "LabelArtists": "Előadók:", - "LabelAudio": "Audió", "LabelAudioLanguagePreference": "Audió nyelvének beállítása:", "LabelBirthYear": "Születési év:", "LabelCachePath": "Gyorsítótár útvonal:", @@ -206,13 +191,11 @@ "LabelCountry": "Ország:", "LabelCriticRating": "Kritikusok értékelése:", "LabelCurrentPassword": "Jelenlegi jelszó:", - "LabelCustomDeviceDisplayName": "Megjelenítendő név:", "LabelCustomDeviceDisplayNameHelp": "Adj meg egy egyedi nevet, vagy hagyd üresen a készülék által elküldött név használatához.", "LabelCustomRating": "Egyéni értékelés:", "LabelDateAdded": "Hozzáadva:", "LabelDateTimeLocale": "Dátum és idő formátum:", "LabelDay": "Nap:", - "LabelDisplayMissingEpisodesWithinSeasons": "Hiányzó évad epizódok megjelenítése", "LabelDisplayName": "Megjelenítendő név:", "LabelDisplayOrder": "Megjelenítési sorrend:", "LabelDownloadLanguages": "Nyelvek letöltése:", @@ -258,7 +241,6 @@ "LabelPlayDefaultAudioTrack": "Az alapértelmezett hangsáv lejátszása a nyelvtől függetlenül", "LabelPlaylist": "Lejátszási lista:", "LabelPreferredDisplayLanguage": "Elsődleges megjelenítendő nyelv:", - "LabelPreferredDisplayLanguageHelp": "A Jellyfin fordítása egy folyamatos projekt.", "LabelProfileAudioCodecs": "Audió kódekek:", "LabelProfileCodecs": "Kódek:", "LabelProfileContainer": "Tároló:", @@ -281,15 +263,11 @@ "LabelStopping": "Megállítás", "LabelSubtitleFormatHelp": "Például: srt", "LabelSubtitlePlaybackMode": "Felirat mód:", - "LabelSubtitles": "Feliratok", "LabelTagline": "Címke:", "LabelTheme": "Kinézet:", "LabelTime": "Idő:", "LabelTimeLimitHours": "Időlimit (óra):", "LabelTitle": "Cím:", - "LabelTranscodingAudioCodec": "Audió kódek:", - "LabelTranscodingContainer": "Tároló:", - "LabelTranscodingVideoCodec": "Videó kódek:", "LabelTunerType": "Tuner típusa:", "LabelType": "Típus:", "LabelTypeMetadataDownloaders": "{0} metaadat letöltő:", @@ -325,7 +303,6 @@ "MessageNoPluginsInstalled": "Nincs bővítmény telepítve.", "MessageNothingHere": "Nincs itt semmi.", "MessagePleaseEnsureInternetMetadata": "Kérlek ellenőrizd hogy az Internetes metaadat letöltés engedélyezve van.", - "MessageSettingsSaved": "Beállítások mentve.", "Metadata": "Metaadat", "MetadataManager": "Metaadat Manager", "Monday": "Hétfő", @@ -453,17 +430,13 @@ "Sync": "Szinkronizál", "TabAccess": "Hozzáférés", "TabAdvanced": "Haladó", - "TabAlbumArtists": "Album Előadók", "TabCatalog": "Katalógus", "TabCodecs": "Kódek", "TabContainers": "Tároló", "TabDashboard": "Vezérlőpult", - "TabEpisodes": "Epizódok", - "TabInfo": "Infó", "TabLatest": "Legújabb", "TabLogs": "Naplók", "TabMusic": "Zene", - "TabMusicVideos": "Zenei Videók", "TabMyPlugins": "Telepített bővítmények", "TabNetworks": "Csatornák", "TabNfoSettings": "NFO Beállítások", @@ -476,7 +449,6 @@ "TabScheduledTasks": "Ütemezett feladatok", "TabServer": "Szerver", "TabSettings": "Beállítások", - "TabTrailers": "Előzetesek", "TabUpcoming": "Hamarosan érkezik", "Tags": "Címkék", "TellUsAboutYourself": "Mondj valamit magadról", @@ -639,7 +611,6 @@ "HeaderApiKey": "API Kulcs", "HeaderApiKeys": "API Kulcsok", "HeaderAppearsOn": "Megjelenik", - "HeaderBooks": "Könyvek", "HeaderCancelRecording": "Felvétel törlése", "HeaderCancelSeries": "Sorozat törlése", "HeaderChannelAccess": "Csatorna hozzáférés", @@ -711,7 +682,6 @@ "Shows": "Sorozatok", "Songs": "Dalok", "ValueSpecialEpisodeName": "Special - {0}", - "EnableThemeVideos": "Videótémák", "EnableThemeVideosHelp": "Videó témájának lejátszása háttérben a könyvtár böngészése közben.", "HeaderBlockItemsWithNoRating": "Blokkolja azokat az elemeket amelyek tiltott, vagy nem felismerhető minősítésűek:", "HeaderSeriesStatus": "Sorozat állapot", @@ -1008,7 +978,6 @@ "OptionAllowVideoPlaybackTranscoding": "Engedélyezze az átkódolást igénylő videó lejátszást", "OptionArtist": "Előadó", "OptionAuto": "Auto", - "OptionAutomatic": "Auto", "OptionAutomaticallyGroupSeries": "A több mappában elosztott sorozat automatikus összevonása", "OptionAutomaticallyGroupSeriesHelp": "A több mappában elosztott sorozat automatikusan egyesül egy sorozatba.", "OptionBlockBooks": "Könyvek", @@ -1138,7 +1107,6 @@ "TV": "TV", "TabDirectPlay": "Közvetlen lejátszás", "TabResponses": "Válaszok", - "TabResumeSettings": "Folytatás", "TabStreaming": "Streaming", "TagsValue": "Címkék: {0}", "ThemeSongs": "Téma dalok", @@ -1210,7 +1178,6 @@ "EnableStreamLoopingHelp": "Kapcsold be, ha az élő stream csak néhány másodpercnyi adatot tartalmaz és folyamatosan újra kell kérni. Ennek szükségtelen bekapcsolása problémát okozhat.", "Guide": "Műsorújság", "H264CrfHelp": "A Constant Rate Factor (CRF) az alapértelmezett minőségi beállítás az x264 enkóderhez. Az értékek 0 és 51 között állíthatók, ahol az alacsonyabb érték jobb minőséget eredményez (nagyobb fájl méret mellett). Az ajánlott érték 18 és 28 között van. Az x264 alapértelmezett beállítása 23, ez lehet kiindulási alap.", - "HeaderAddScheduledTaskTrigger": "Vezérlő Hozzáadása", "HeaderApiKeysHelp": "A külső alkalmazásoknak egy API kulcsra van szükésge, hogy kommunikáljanak a Szerverrel. A kulcsokat egy normális fiókkal történő belépéssel lehet megkapni, vagy kézileg felvenni egy alkalmazáshoz tartozó kulcsot.", "HeaderBranding": "Személyes arculat", "HeaderContinueListening": "Folyamatban lévő zenék", @@ -1222,7 +1189,6 @@ "HeaderFavoriteSongs": "Kedvenc dalok", "HeaderFavoriteVideos": "Kedvenc Videók", "HeaderGuideProviders": "TV műsorújság Szolgáltatók", - "HeaderHome": "Kezdőlap", "HeaderUpcomingOnTV": "Következő TV műsorok", "ImportFavoriteChannelsHelp": "Csak a tuner eszközön kedvencként megjelölt csatornák kerülnek importálásra.", "LabelAlbumArtHelp": "A használandó PN érték az albumborítók esetében, mely a upnp:albumArtURI dlna:profileID tulajdonságában szerepel. Néhány eszköz meghatározott értéket vár el, függetlenül a kép méretétől.", diff --git a/src/strings/id.json b/src/strings/id.json index 8bf0d7eafd..d4a0d9fb55 100644 --- a/src/strings/id.json +++ b/src/strings/id.json @@ -2,7 +2,6 @@ "ButtonQuickStartGuide": "Panduan cepat", "ButtonSignOut": "Sign out", "FolderTypeTvShows": "TV", - "HeaderAddUser": "Tambah User", "HeaderEasyPinCode": "Kode Pin Mudah", "HeaderSetupLibrary": "Atur pustaka media Anda", "LabelContentType": "Tipe konten:", @@ -92,27 +91,20 @@ "ButtonRename": "Ubah nama", "ButtonRemove": "Hapus", "ButtonRefreshGuideData": "Muat ulang Data Panduan", - "ButtonRefresh": "Muat ulang", "ButtonProfile": "Profil", - "ButtonPlay": "Mainkan", "ButtonPause": "Jeda", "ButtonParentalControl": "Kendali orang tua", "ButtonOpen": "Buka", "ButtonOk": "Baik", - "ButtonOff": "Matikan", "ButtonNetwork": "Jaringan", "ButtonMore": "Lebih banyak", "ButtonLibraryAccess": "Akses pustaka", "ButtonInfo": "Info", - "ButtonHome": "Beranda", "ButtonGuide": "Panduan", "ButtonGotIt": "Paham", "ButtonFullscreen": "Layar penuh", "ButtonForgotPassword": "Lupa Kata Sandi", - "ButtonFilter": "Penyaring", "ButtonEditOtherUserPreferences": "Ubah profil, gambar, dan preferensi pribadi pengguna ini.", - "ButtonEditImages": "Ubah gambar", - "ButtonEdit": "Ubah", "ButtonChangeServer": "Ubah Peladen", "ButtonCancel": "Batalkan", "ButtonBack": "Kembali", diff --git a/src/strings/is-is.json b/src/strings/is-is.json index bd1c81c21a..4b48774a2b 100644 --- a/src/strings/is-is.json +++ b/src/strings/is-is.json @@ -10,7 +10,6 @@ "FolderTypeMusic": "Tónlist", "FolderTypeMusicVideos": "Tónlistarmyndbönd", "FolderTypeTvShows": "Sjónvarpsþættir", - "HeaderAddUser": "Bæta við notenda", "HeaderDeviceAccess": "Aðgangur tækja", "HeaderEasyPinCode": "Auðvelt Pin númer", "HeaderPaths": "Slóðir", @@ -141,23 +140,18 @@ "Played": "Spilað", "Photos": "Myndir", "Movies": "Kvikmyndir", - "ButtonPlay": "Spila", "HeaderRestart": "Endurræsa", "HeaderProfileInformation": "Upplýsingar um prófíl", "HeaderProfile": "Prófíll", "HeaderPassword": "Lykilorð", "HeaderLatestMovies": "Kvikmyndir, nýlega bætt við", "HeaderLatestEpisodes": "Þættir, nýlega bætt við", - "HeaderHome": "Heim", "HeaderFavoriteVideos": "Uppáhalds Myndbönd", "HeaderFavoriteMovies": "Uppáhalds Kvikmyndir", - "HeaderEpisodes": "Þættir", "HeaderError": "Villa", "HeaderDownloadSync": "Sækja og Samstilla", "HeaderDeleteDevice": "Eyða Tæki", - "HeaderCastCrew": "Leikarar og Áhöfn", "HeaderCastAndCrew": "Leikarar og Áhöfn", - "HeaderBooks": "Bækur", "HeaderAdmin": "Stjórnandi", "GuideProviderLogin": "Innskrá", "General": "Almennt", @@ -195,7 +189,6 @@ "ButtonWebsite": "Vefsiða", "ButtonUninstall": "Fjarlægja", "ButtonTrailer": "Sýnishorn", - "ButtonSubtitles": "Texti", "ButtonSignIn": "Innskráning", "ButtonSettings": "Stillingar", "ButtonSend": "Senda", @@ -216,24 +209,18 @@ "Sync": "Samstilla", "ButtonRevoke": "Afturkalla", "Monday": "Mánudagur", - "ButtonRefresh": "Endurhlaða", "ButtonParentalControl": "Foreldraeftirlit", - "ButtonOff": "Af", "ButtonNextTrack": "Næsta lag", "ButtonNetwork": "Net", "ButtonMore": "Meira", "ButtonManualLogin": "Handvirkt Auðkenni", "ButtonLibraryAccess": "Aðgangur að safni", "ButtonInfo": "Upplýsingar", - "ButtonHome": "Heim", "ButtonGuide": "Sjónvarpsvísir", "ButtonGotIt": "Skilið", "ButtonFullscreen": "Fylla upp í skjá", "ButtonForgotPassword": "Gleymt Lykilorð", - "ButtonFilter": "Sía", "ButtonEditOtherUserPreferences": "Breyta stillingum notanda, mynd og persónulegum stillingum.", - "ButtonEditImages": "Breyta myndum", - "ButtonEdit": "Breyta", "ButtonChangeServer": "Skipta um þjón", "ButtonBack": "Til baka", "ButtonAudioTracks": "Hljóðspor", @@ -280,7 +267,6 @@ "HeaderDetectMyDevices": "Finna tækin mín", "HeaderFavoritePeople": "Uppáhalds Fólk", "HeaderFavoritePlaylists": "Uppáhalds spilunarlistar", - "HeaderForgotPassword": "Gleymt lykilorð", "HeaderForKids": "Fyrir Krakka", "HeaderFrequentlyPlayed": "Oft Spilað", "HeaderLatestMusic": "Tónlist, nýlega bætt við", @@ -297,8 +283,6 @@ "EveryXHours": "Hverjum {0} klukkustundum", "EveryHour": "Hverja klukkustund", "Episode": "Þáttur", - "EnableThemeVideos": "Þema myndbönd", - "EnableThemeSongs": "Þema lög", "EnablePhotos": "Birta myndir", "EnableHardwareEncoding": "Virkja vélbúnaðarkóðun", "LabelScreensaver": "Skjáhvíla:", @@ -400,14 +384,11 @@ "ThemeSongs": "Þemu lög", "TellUsAboutYourself": "Segðu okkur frá sjálfum þér", "TabUpcoming": "Væntanlegt", - "TabTrailers": "Sýnishorn", - "TabResumeSettings": "Halda áfram", "TabProfile": "Prófíll", "TabPlugins": "Viðbætur", "TabOther": "Annað", "TabNetworks": "Netkerfi", "TabMyPlugins": "Mínar viðbætur", - "TabMusicVideos": "Tónlistarmyndbönd", "TabMusic": "Tónlist", "PleaseRestartServerName": "Vinsamlegast endurræstu Jellyfin netþjóninn - {0}.", "Previous": "Fyrri", @@ -440,7 +421,6 @@ "LabelBitrate": "Bitahraði:", "LabelBirthYear": "Fæðingarár:", "LabelBirthDate": "Fæðingardagur:", - "LabelAudio": "Hljóð", "LabelArtists": "Listamenn:", "LabelAppNameExample": "Dæmi: Sickbeard, Sonarr", "LabelAccessDay": "Vikudagur:", @@ -453,7 +433,6 @@ "HeaderVideoQuality": "Myndgæði", "HeaderUsers": "Notendur", "HeaderUser": "Notandi", - "TabEpisodes": "Þættir", "TabDirectPlay": "Bein Spilun", "TabAdvanced": "Ítarlegt", "Sunday": "Sunnudagur", diff --git a/src/strings/it.json b/src/strings/it.json index cb73ea2cdb..7229f966be 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -53,10 +53,7 @@ "ButtonBack": "Indietro", "ButtonCancel": "Annulla", "ButtonChangeServer": "Cambia Server", - "ButtonEdit": "Modifica", - "ButtonEditImages": "Modifica Immagini", "ButtonEditOtherUserPreferences": "Modifica questo utente di profilo, l'immagine e le preferenze personali.", - "ButtonFilter": "Filtro", "ButtonForgotPassword": "Password Dimenticata", "ButtonFullscreen": "Schermo Intero", "ButtonGotIt": "Ho capito", @@ -66,15 +63,12 @@ "ButtonMore": "Altro", "ButtonNetwork": "Rete", "ButtonNextTrack": "Traccia Successiva", - "ButtonOff": "No", "ButtonOpen": "Apri", "ButtonParentalControl": "Controllo parentale", "ButtonPause": "Pausa", - "ButtonPlay": "Riproduci", "ButtonPreviousTrack": "Traccia Precedente", "ButtonProfile": "Profilo", "ButtonQuickStartGuide": "Guida rapida", - "ButtonRefresh": "Aggiorna", "ButtonRefreshGuideData": "Aggiorna la guida", "ButtonRemove": "Rimuovi", "ButtonRename": "Rinomina", @@ -94,7 +88,6 @@ "ButtonSignOut": "Esci", "ButtonStart": "Avvio", "ButtonSubmit": "Invia", - "ButtonSubtitles": "Sottotitoli", "ButtonUninstall": "Disinstalla", "ButtonWebsite": "Web", "CancelRecording": "Annulla la registrazione", @@ -179,9 +172,7 @@ "EnablePhotosHelp": "Le immagini saranno rilevate e visualizzate accanto ad altri file multimediali.", "EnableStreamLooping": "Auto-loop streaming in diretta", "EnableStreamLoopingHelp": "Abilita questo se gli streaming in diretta contengono solo pochi secondi di dati e devono essere costantemente richiesti. L'abilitazione di questa funzione quando non è servita può causare problemi.", - "EnableThemeSongs": "Canzoni a tema", "EnableThemeSongsHelp": "Le canzoni a tema saranno riprodotte mentre visualizzi la tua libreria.", - "EnableThemeVideos": "Video a tema", "EnableThemeVideosHelp": "Riproduzione dei video a tema sullo sfondo mentre visualizzi la tua libreria.", "Ended": "Finito", "EndsAtValue": "Finirà alle {0}", @@ -235,11 +226,9 @@ "HeaderActiveDevices": "Dispositivi Connessi", "HeaderActiveRecordings": "Registrazioni Attive", "HeaderActivity": "Attività", - "HeaderAddScheduledTaskTrigger": "Aggiungi operazione", "HeaderAddToCollection": "Aggiungi ad una Collezione", "HeaderAddToPlaylist": "Aggiungi alla Playlist", "HeaderAddUpdateImage": "Aggiungi/aggiorna Immagine", - "HeaderAddUser": "Aggiungi utente", "HeaderAdditionalParts": "Parti addizionali", "HeaderAdmin": "Admin", "HeaderAlbumArtists": "Artisti degli Album", @@ -251,7 +240,6 @@ "HeaderAudioBooks": "Audiolibri", "HeaderAudioSettings": "Impostazioni audio", "HeaderBlockItemsWithNoRating": "Blocca elementi sconosciuti o senza informazioni:", - "HeaderBooks": "Libri", "HeaderBranding": "Personalizza", "HeaderCancelRecording": "Annulla la Registrazione", "HeaderCancelSeries": "Annulla Serie TV", @@ -288,13 +276,11 @@ "HeaderEditImages": "Modifica Immagini", "HeaderEnabledFields": "Campi Abilitati", "HeaderEnabledFieldsHelp": "Deseleziona un campo per bloccarlo ed impedire che venga modificato.", - "HeaderEpisodes": "Episodi", "HeaderError": "Errore", "HeaderExternalIds": "ID esterni:", "HeaderFeatureAccess": "Accesso alle funzionalità", "HeaderFetchImages": "Identifica Immagini:", "HeaderForKids": "Per Bambini", - "HeaderForgotPassword": "Password dimenticata", "HeaderFrequentlyPlayed": "Visti di frequente", "HeaderGuideProviders": "Provider Guida", "HeaderHttpHeaders": "Header HTTP", @@ -320,7 +306,6 @@ "HeaderLiveTvTunerSetup": "Configura Ricevitore TV", "HeaderLoginFailure": "Errore di accesso", "HeaderMediaFolders": "Cartelle dei media", - "HeaderMediaInfo": "Informazioni Media", "HeaderMetadataSettings": "Impostazioni Metadati", "HeaderMoreLikeThis": "Simili a questo", "HeaderMusicQuality": "Qualità Musica", @@ -475,7 +460,6 @@ "LabelCustomCertificatePathHelp": "Percorso del file PKCS #12 contenente il certificato e la chiave private per abilitare il supporto TLS in un dominio personalizzato.", "LabelCustomCss": "CSS Personalizzato:", "LabelCustomCssHelp": "Applica il tuo stile personale all'interfaccia web.", - "LabelCustomDeviceDisplayName": "Nome da visualizzare:", "LabelCustomDeviceDisplayNameHelp": "Fornire un nome di visualizzazione personalizzato o lasciare vuoto per utilizzare il nome riportato dal dispositivo.", "LabelCustomRating": "Voto personalizzato:", "LabelDateAdded": "Aggiunto il:", @@ -492,7 +476,6 @@ "LabelDiscNumber": "Numero disco:", "LabelDisplayLanguage": "Lingua di visualizzazione:", "LabelDisplayLanguageHelp": "La traduzione di Jellyfin è un progetto attivo.", - "LabelDisplayMissingEpisodesWithinSeasons": "Visualizza gli episodi mancanti nelle stagioni", "LabelDisplayMode": "Modalità di visualizzazione:", "LabelDisplayName": "Nome visualizzato:", "LabelDisplayOrder": "Ordine di visualizzazione:", @@ -642,7 +625,6 @@ "LabelPostProcessorArguments": "Argomenti linea di comando del Post-processor:", "LabelPostProcessorArgumentsHelp": "Usa {path} come percorso al file di registrazione.", "LabelPreferredDisplayLanguage": "Lingua preferita visualizzata:", - "LabelPreferredDisplayLanguageHelp": "La traduzione di Jellyfin è un progetto attivo.", "LabelPreferredSubtitleLanguage": "Lingua dei sottotitoli preferita:", "LabelProfileAudioCodecs": "Codec Audio:", "LabelProfileCodecs": "Codec:", @@ -699,7 +681,6 @@ "LabelSubtitleDownloaders": "Downloader sottotitoli:", "LabelSubtitleFormatHelp": "Esempio: srt", "LabelSubtitlePlaybackMode": "Modalità Sottotitolo:", - "LabelSubtitles": "Sottotitoli", "LabelSupportedMediaTypes": "Tipi di media supportati:", "LabelTVHomeScreen": "Schermata iniziale della modalità TV:", "LabelTagline": "Slogan:", @@ -711,12 +692,9 @@ "LabelTimeLimitHours": "Tempo limite (ore):", "LabelTitle": "Titolo:", "LabelTrackNumber": "Numero traccia:", - "LabelTranscodingAudioCodec": "Codec Audio:", - "LabelTranscodingContainer": "contenitore:", "LabelTranscodingTempPathHelp": "Specifica un percorso personalizzato per la transcodifica dei files utilizzati dai client. Lasciare vuoto per utilizzare l'impostazione predefinita dal server.", "LabelTranscodingThreadCount": "Transcodifica numero di thread:", "LabelTranscodingThreadCountHelp": "Selezionare il numero massimo di thread da utilizzare durante la transcodifica. Ridurre il numero di thread si abbasserà l'utilizzo della CPU, ma può non convertire abbastanza veloce per un'esperienza di riproduzione fluida.", - "LabelTranscodingVideoCodec": "Codec Video:", "LabelTriggerType": "Tipo Evento:", "LabelTunerIpAddress": "Tuner Indirizzo IP:", "LabelTunerType": "Tipo sintonizzatore:", @@ -816,7 +794,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "Per configurare questo plugin si prega di accedere al proprio server locale direttamente.", "MessagePluginInstallDisclaimer": "I plugin creati dai membri della comunità Jellyfin sono un ottimo modo per migliorare l'esperienza di Jellyfin con funzionalità e vantaggi aggiuntivi. Prima di installare, si prega di notare gli effetti che possono avere sul tuo server Jellyfin, come le scansioni più lunghe della libreria, l'elaborazione di sfondo aggiuntiva e la stabilità del sistema diminuita.", "MessageReenableUser": "Guarda in basso per ri-abilitare", - "MessageSettingsSaved": "Settaggi salvati.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "I seguenti percorsi ai file multimediali saranno rimossi dalla tua libreria:", "MessageUnableToConnectToServer": "Non siamo in grado di connettersi al server selezionato al momento. Per favore assicurati che sia in esecuzione e riprova.", "MessageUnsetContentHelp": "Il contenuto verrà visualizzato come pianura cartelle. Per ottenere i migliori risultati utilizzare il gestore di metadati per impostare i tipi di contenuto di sottocartelle.", @@ -1100,16 +1077,13 @@ "SystemDlnaProfilesHelp": "I profili di sistema sono in sola lettura. Le modifiche ad un profilo di sistema verranno salvate in un nuovo profilo personalizzato.", "TabAccess": "Accesso", "TabAdvanced": "Avanzato", - "TabAlbumArtists": "Artisti degli Album", "TabCatalog": "Catalogo", "TabCodecs": "Codec", "TabContainers": "Contenitori", "TabDashboard": "Pannello Controllo", "TabDirectPlay": "Riproduzione Diretta", - "TabEpisodes": "Episodi", "TabLatest": "Novità", "TabMusic": "Musica", - "TabMusicVideos": "Video Musicali", "TabMyPlugins": "I miei Plug-in", "TabNetworks": "Reti", "TabNfoSettings": "Impostazioni NFO", @@ -1119,10 +1093,8 @@ "TabProfile": "Profilo", "TabProfiles": "Profili", "TabResponses": "Risposte", - "TabResumeSettings": "Riprendi", "TabScheduledTasks": "Operazioni Pianificate", "TabSettings": "Impostazioni", - "TabTrailers": "Trailer", "TabUpcoming": "In Arrivo", "Tags": "Tag", "TellUsAboutYourself": "Parlaci di te", @@ -1196,7 +1168,6 @@ "Banner": "Banner", "Blacklist": "Blacklist", "Box": "Scatola", - "ButtonHome": "Home", "ButtonInfo": "Info", "ButtonOk": "Ok", "ButtonStop": "Stop", @@ -1209,7 +1180,6 @@ "HeaderApp": "Applicazione", "HeaderAppearsOn": "Appare In", "HeaderCastAndCrew": "Cast", - "HeaderCastCrew": "Cast", "HeaderMedia": "Media", "HeaderPassword": "Password", "AuthProviderHelp": "Selezionare un provider di autenticazione da utilizzare per autenticare la password dell'utente.", @@ -1224,15 +1194,12 @@ "HeaderImageOptions": "Opzioni Immagine", "Home": "Home", "LabelAlbum": "Album:", - "LabelAudio": "Audio", "LabelCache": "Cache:", "ButtonAddImage": "Aggiungi Immagine", "CopyStreamURL": "Copia Indirizzo dello Stream", "CopyStreamURLSuccess": "Indirizzo copiato con successo.", "FetchingData": "Recupero di dati aggiuntivi", "LabelServerHost": "Host:", - "OptionAutomatic": "Automatico", - "HeaderHome": "Home", "LabelServerHostHelp": "192.168.1.100:8096 o https://myserver.com", "HeaderFavoriteBooks": "Libri Preferiti", "HeaderTypeImageFetchers": "{0} Sorgenti Immagini", @@ -1340,7 +1307,6 @@ "Studios": "Studios", "SubtitleOffset": "Sfasamento Sottotitolo", "TV": "TV", - "TabInfo": "Informazioni", "TabLogs": "Log", "TabNetworking": "Rete", "TabPlugins": "Plugin", diff --git a/src/strings/ja.json b/src/strings/ja.json index 1c3d8fe30e..30413c2ad6 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -63,15 +63,11 @@ "ButtonBack": "戻る", "ButtonCancel": "キャンセル", "ButtonChangeServer": "サーバーを変更", - "ButtonEdit": "編集", - "ButtonEditImages": "イメージを編集", "ButtonEditOtherUserPreferences": "ユーザーのアバターイメージやプロフィールなどの個人設定を編集。", - "ButtonFilter": "フィルタ", "ButtonForgotPassword": "パスワードを忘れた", "ButtonFullscreen": "フルスクリーン", "ButtonGotIt": "了解", "ButtonGuide": "ガイド", - "ButtonHome": "ホーム", "ButtonInfo": "情報", "ButtonLibraryAccess": "ライブラリへアクセス", "ButtonManualLogin": "マニュアルログイン", @@ -82,11 +78,9 @@ "ButtonOpen": "開く", "ButtonParentalControl": "ペアレンタルコントロール", "ButtonPause": "一時停止", - "ButtonPlay": "再生", "ButtonPreviousTrack": "前のトラック", "ButtonProfile": "プロフィール", "ButtonQuickStartGuide": "クイックスタートガイド", - "ButtonRefresh": "更新", "ButtonRefreshGuideData": "ガイドデータの更新", "ButtonRemove": "削除", "ButtonRename": "名前の変更", @@ -107,7 +101,6 @@ "ButtonStart": "スタート", "ButtonStop": "ストップ", "ButtonSubmit": "提出", - "ButtonSubtitles": "字幕", "ButtonTrailer": "予告", "ButtonUninstall": "アンインストール", "ButtonWebsite": "ウェブサイト", @@ -193,9 +186,7 @@ "EnablePhotosHelp": "写真が検出され、他のメディアファイルと一緒に表示されます。", "EnableStreamLooping": "ライブストリームの自動ループ", "EnableStreamLoopingHelp": "ライブストリームに数秒のデータしか含まれず、継続的に要求する必要がある場合は、これを有効にします。不要なときにこれを有効にすると、問題が発生する可能性があります。", - "EnableThemeSongs": "テーマ曲", "EnableThemeSongsHelp": "ライブラリを閲覧している間バックグラウンドでテーマ曲を再生する。", - "EnableThemeVideos": "テーマ動画", "EnableThemeVideosHelp": "ライブラリを閲覧中にバックグラウンドでテーマ動画を再生します。", "Ended": "終了", "EndsAtValue": "{0}に終了", @@ -204,7 +195,6 @@ "HeaderMoreLikeThis": "これに似たもの", "InstantMix": "インスタントミックス", "MoreFromValue": "もっと詳しく {0}", - "ButtonOff": "オフ", "ColorTransfer": "Color transfer", "DeathDateValue": "死亡日:{0}", "Depressed": "陰鬱", @@ -260,11 +250,9 @@ "HeaderActiveDevices": "アクティブデバイス", "HeaderActiveRecordings": "アクティブな録画", "HeaderActivity": "アクティビティ", - "HeaderAddScheduledTaskTrigger": "トリガーを追加", "HeaderAddToCollection": "コレクションに追加", "HeaderAddToPlaylist": "プレイリストに追加", "HeaderAddUpdateImage": "イメージの追加/更新", - "HeaderAddUser": "ユーザーの追加", "HeaderAdditionalParts": "追加のパーツ", "HeaderAdmin": "管理者", "HeaderAlbumArtists": "アルバムアーティスト", @@ -278,12 +266,10 @@ "HeaderAudioBooks": "オーディオブック", "HeaderAudioSettings": "音声設定", "HeaderBlockItemsWithNoRating": "評価情報がない、または認識できないアイテムをブロックします。", - "HeaderBooks": "ブック", "HeaderBranding": "ブランディング", "HeaderCancelRecording": "録画の停止", "HeaderCancelSeries": "シリーズをキャンセル", "HeaderCastAndCrew": "キャスト&クルー", - "HeaderCastCrew": "キャスト&クルー", "HeaderChannelAccess": "チャンネルアクセス", "HeaderChapterImages": "チャプターイメージ", "HeaderCodecProfile": "コーデックプロファイル", @@ -317,7 +303,6 @@ "HeaderEditImages": "イメージの編集", "HeaderEnabledFields": "有効なフィールド", "HeaderEnabledFieldsHelp": "フィールドをオフにしてロックし、データが変更されないようにします。", - "HeaderEpisodes": "エピソード", "HeaderError": "エラー", "HeaderExternalIds": "外部ID:", "HeaderFavoriteMovies": "お気に入りのムービー", @@ -331,10 +316,8 @@ "HeaderFetchImages": "画像を取得する:", "HeaderFetcherSettings": "フェッチャー設定", "HeaderForKids": "子供向け", - "HeaderForgotPassword": "パスワードを忘れました", "HeaderFrequentlyPlayed": "よく再生する", "HeaderGuideProviders": "TV番組情報のプロバイダ", - "HeaderHome": "ホーム", "HeaderHttpHeaders": "HTTPヘッダー", "HeaderIdentification": "識別", "HeaderIdentificationCriteriaHelp": "少なくとも1つの識別基準を入力してください。", @@ -360,7 +343,6 @@ "HeaderLoginFailure": "ログイン失敗", "HeaderMedia": "メディア", "HeaderMediaFolders": "メディアフォルダ", - "HeaderMediaInfo": "メディア情報", "HeaderMetadataSettings": "メタデータ設定", "HeaderMusicQuality": "ミュージックの品質", "HeaderMusicVideos": "ミュージックビデオ", @@ -511,7 +493,6 @@ "LabelOptionalNetworkPath": "(任意) 共有ネットワークフォルダー:", "LabelOriginalAspectRatio": "元のアスペクト比:", "LabelServerName": "サーバー名:", - "LabelSubtitles": "字幕", "LabelSupportedMediaTypes": "サポートされているメディアタイプ:", "LabelTVHomeScreen": "TVモードホームスクリーン:", "LabelTextColor": "文字色:", @@ -524,11 +505,9 @@ "MessageItemSaved": "アイテムを保存しました。", "MessageItemsAdded": "アイテムを追加しました。", "MessagePleaseWait": "お待ち下さい。この処理には数分かかります。", - "MessageSettingsSaved": "設定を保存しました。", "MessageReenableUser": "最有効するためには以下を参照してください", "Name": "名前", "NewCollection": "新しいコレクション", - "OptionAutomatic": "自動", "OptionAscending": "昇順", "OptionAuto": "自動", "OptionBlockBooks": "ブック", @@ -563,7 +542,6 @@ "Sunday": "日曜日", "CopyStreamURLSuccess": "URLのコピーが成功しました。", "TabDirectPlay": "直接再生", - "TabEpisodes": "エピソード", "LabelDefaultUser": "デフォルトユーザー:", "Trailers": "トレーラー", "LabelRecord": "レコード:", @@ -606,7 +584,6 @@ "LabelCurrentPassword": "現在のパスワード:", "LabelCustomCss": "カスタムCSS:", "LabelCustomCssHelp": "ウェブインターフェースにカスタムスタイルを適応する。", - "LabelCustomDeviceDisplayName": "表示名:", "LabelEnableDlnaClientDiscoveryInterval": "クライアント探索間隔", "LabelParentalRating": "個人評価:", "LabelPassword": "パスワード:", @@ -702,7 +679,6 @@ "TV": "TV", "TabAccess": "アクセス", "TabAdvanced": "高度", - "TabAlbumArtists": "アルバムアーティスト", "TabCatalog": "カタログ", "TabCodecs": "コーデック", "TabContainers": "コンテナ", @@ -712,11 +688,9 @@ "SaveSubtitlesIntoMediaFolders": "字幕をメディアフォルダーに保存", "ScanForNewAndUpdatedFiles": "新しいファイルとアップデートされたファイルをスキャン", "TabDashboard": "ダッシュボード", - "TabInfo": "情報", "TabLatest": "最新", "TabLogs": "ログ", "TabMusic": "ミュージック", - "TabMusicVideos": "ミュージックビデオ", "TheseSettingsAffectSubtitlesOnThisDevice": "これらの設定はこのデバイスの字幕に影響します", "ShowTitle": "タイトルを表示", "TitleHostingSettings": "ホスト設定", @@ -787,7 +761,6 @@ "LabelAllowedRemoteAddresses": "リモートIPアドレスフィルター:", "LabelAppNameExample": "例: スケートボード、ソナー", "LabelArtists": "アーティスト:", - "LabelAudio": "音声", "LabelAudioBitDepth": "音声ビット深度:", "LabelAudioBitrate": "音声ビットレート:", "LabelAudioChannels": "音声チャンネル:", @@ -872,11 +845,9 @@ "LabelTheme": "テーマ:", "LabelTitle": "題:", "LabelTrackNumber": "トラック数:", - "LabelTranscodingAudioCodec": "音声コーデック:", "LabelTranscodes": "トランスコード:", "LabelTranscodingFramerate": "トランスコーディングフレームレート:", "LabelTranscodingProgress": "トランスコーディング進行度:", - "LabelTranscodingVideoCodec": "映像コーデック:", "LabelType": "タイプ:", "LabelTypeText": "文字:", "LabelUser": "ユーザー:", @@ -1001,7 +972,6 @@ "TabServer": "サーバー", "TabSettings": "設定", "TabStreaming": "ストリーミング", - "TabTrailers": "トレーラー", "MessageContactAdminToResetPassword": "パスワードをリセットするためにシステムの管理者に連絡してください。", "TagsValue": "タグ: {0}", "MessageInvalidUser": "ユーザー名かパスワードが無効です。再試行してください。", @@ -1030,7 +1000,6 @@ "LabelEnableDlnaServer": "DLNAサーバーの有効化", "LabelEnableDlnaDebugLogging": "DLNAデバッグログの有効化", "LabelDroppedFrames": "ドロップフレーム:", - "LabelDisplayMissingEpisodesWithinSeasons": "シーズン中の見つからなかったエピソードを表示", "LabelCustomDeviceDisplayNameHelp": "任意の表示名を提供するか、空白のままにしてデバイスネームで報告する。", "LabelArtistsHelp": "複数のアーティストは「;」で分ける。", "Identify": "識別する", diff --git a/src/strings/kk.json b/src/strings/kk.json index 3f20e5ca10..90176b0335 100644 --- a/src/strings/kk.json +++ b/src/strings/kk.json @@ -62,31 +62,24 @@ "ButtonBack": "Artqa", "ButtonCancel": "Boldyrmaý", "ButtonChangeServer": "Serverdi aýystyrý", - "ButtonEdit": "Óńdeý", - "ButtonEditImages": "Sýretterdi óńdeý", "ButtonEditOtherUserPreferences": "Osy paıdalanýshynyń profaılyn, sýretin jáne ózindik teńshelimderin óńdeý.", - "ButtonFilter": "Súzý", "ButtonForgotPassword": "Paróldi eske salý", "ButtonFullscreen": "Tolyq ekran", "ButtonGotIt": "Túsinikti", "ButtonGuide": "Telegıd", - "ButtonHome": "Basqyǵa", "ButtonInfo": "Aqparatqa", "ButtonLibraryAccess": "Tasyǵyshhanǵa qatynaý", "ButtonManualLogin": "Qolmen kirý", "ButtonMore": "Kóbirek", "ButtonNetwork": "Jeli", "ButtonNextTrack": "Kelesi jolshyqqa", - "ButtonOff": "Óshir", "ButtonOk": "Jaraıdy", "ButtonOpen": "Ashý", "ButtonParentalControl": "Mazmundy basqarý", "ButtonPause": "Úzý", - "ButtonPlay": "Oınatý", "ButtonPreviousTrack": "Aldyńǵy jolshyqqa", "ButtonProfile": "Profaıl", "ButtonQuickStartGuide": "Tez bastaý nusqaýlyǵy", - "ButtonRefresh": "Jańǵyrtý", "ButtonRefreshGuideData": "Telegıd derekterin jańǵyrtý", "ButtonRemove": "Alastaý", "ButtonRename": "Qaıta ataý", @@ -107,7 +100,6 @@ "ButtonStart": "Bastaý", "ButtonStop": "Toqtatý", "ButtonSubmit": "Jiberý", - "ButtonSubtitles": "Sýbtıtrlerge", "ButtonTrailer": "Treıler", "ButtonUninstall": "Ornatymdy joıý", "ButtonWebsite": "Ýeb-saıty", @@ -195,9 +187,7 @@ "EnablePhotosHelp": "Sýretter basqa tasyǵysh faıldarymen qatar anyqtalady jáne beınelenedi.", "EnableStreamLooping": "Taratýlardy avtomatty tuıyqtaý", "EnableStreamLoopingHelp": "Eger taratý derekterinde tek qana azyn-aýlaq sekýnd bar bolsa jáne ony úzdiksiz suratyp alý qajet bolsa, ony qosyńyz. Bul qajet bolmaǵan jaǵdaıda qosylsa, qıyndyqtar týdyrýy múmkin.", - "EnableThemeSongs": "Taqyryptyq áýender", "EnableThemeSongsHelp": "Taqyryptyq áýender tasyǵyshhanany sholý kezinde óńde oınatylady.", - "EnableThemeVideos": "Taqyryptyq beıneler", "EnableThemeVideosHelp": "Taqyryptyq beıneler tasyǵyshhanany sholý kezinde óńde oınatylady.", "Ended": "Aıaqtaldy", "EndsAtValue": "Sońy: {0}", @@ -254,11 +244,9 @@ "HeaderActiveDevices": "Belsendi qurylǵylar", "HeaderActiveRecordings": "Belsendi jazbalar", "HeaderActivity": "Áreketter", - "HeaderAddScheduledTaskTrigger": "Trıger ústeý", "HeaderAddToCollection": "Jıyntyqqa ústeý", "HeaderAddToPlaylist": "Oınatý tizimine ústeý", "HeaderAddUpdateImage": "Sýret ústeý/jańartý", - "HeaderAddUser": "Paıdalanýshy ústeý", "HeaderAdditionalParts": "Jalǵasatyn bólimder", "HeaderAdmin": "Basqarý", "HeaderAlbumArtists": "Álbom oryndaýshylary", @@ -272,12 +260,10 @@ "HeaderAudioBooks": "Dybystyq kitaptar", "HeaderAudioSettings": "Dybys parametrleri", "HeaderBlockItemsWithNoRating": "Jastas sanaty týraly aqparaty joq nemese ol tanylmaǵan mazmundy qursaýlaý:", - "HeaderBooks": "Kitaptar", "HeaderBranding": "Bezendirý", "HeaderCancelRecording": "Jazýdy boldyrmaý", "HeaderCancelSeries": "Telehıkaıany boldyrmaý", "HeaderCastAndCrew": "Róldegiler men qyzmetkerler", - "HeaderCastCrew": "Róldegiler men qyzmetkerler", "HeaderChannelAccess": "Arnaǵa qatynaý", "HeaderChapterImages": "Sahna sýretteri", "HeaderCodecProfile": "Kodek profaıly", @@ -311,14 +297,12 @@ "HeaderEditImages": "Sýretterdi óńdeý", "HeaderEnabledFields": "Qosylǵan órister", "HeaderEnabledFieldsHelp": "Qursaýlaý úshin jáne derekter ózgertýine tyıym salý úshin, óristen qusbelgini alyńyz.", - "HeaderEpisodes": "TD-bólimder", "HeaderError": "Qate", "HeaderExternalIds": "Syrtqy sáıkestendirgishter:", "HeaderFeatureAccess": "Erekshelikterge qatynaý", "HeaderFetchImages": "Sýretterdi irikteý:", "HeaderFetcherSettings": "Irikteýshi parametrleri", "HeaderForKids": "Balalyq", - "HeaderForgotPassword": "Paróldi umytyńyz ba", "HeaderFrequentlyPlayed": "Jıi oınatylǵandar", "HeaderGuideProviders": "Telegıd derekterin jetkizýshileri", "HeaderHttpHeaders": "HTTP ústińgi derektemeleri", @@ -347,7 +331,6 @@ "HeaderLoginFailure": "Kirý sátsizdigi", "HeaderMedia": "Tasyǵyshderekter", "HeaderMediaFolders": "Tasyǵysh qaltalary", - "HeaderMediaInfo": "Tasyǵyshderekter týraly", "HeaderMetadataSettings": "Metaderekter parametrleri", "HeaderMoreLikeThis": "Osy sıaqty kóbirek", "HeaderMusicQuality": "Mýzyka sapasy", @@ -480,7 +463,6 @@ "LabelAppNameExample": "Mysaly: Sickbeard, Sonarr", "LabelArtists": "Oryndaýshylar:", "LabelArtistsHelp": "Birneshýin mynaýmen bólińiz ;", - "LabelAudio": "Dybys", "LabelAudioLanguagePreference": "Dybys tiliniń teńshelimi:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Metaderekterdi Internetten avtomatty jańartý:", "LabelBindToLocalNetworkAddress": "Jergilikti jeli mekenjaıyna baılastyrý:", @@ -508,7 +490,6 @@ "LabelCustomCertificatePathHelp": "Teńsheletin domende TLS qoldaýyn qosý úshin sertıfıkaty jáne jeke kilti bar PKCS #12 faılyna jol.", "LabelCustomCss": "Teńsheýli CSS:", "LabelCustomCssHelp": "Ózińizdiń teńsheýli mánerleýdi ýeb-tildesýde qoldanyńyz.", - "LabelCustomDeviceDisplayName": "Beınelený aty:", "LabelCustomDeviceDisplayNameHelp": "Beınelenetin teńshelgen atyn usynyńyz nemese qurylǵy arqyly baıandalǵan atyn paıdalaný úshin bos qaldyryńyz.", "LabelCustomRating": "Teńshelgen sanat:", "LabelDateAdded": "Ústelgen kúni:", @@ -525,7 +506,6 @@ "LabelDiscNumber": "Dıski nómiri:", "LabelDisplayLanguage": "Beıneleý tili:", "LabelDisplayLanguageHelp": "Jellyfin tárjimeleýi aǵymdaǵy joba bolyp tabylady.", - "LabelDisplayMissingEpisodesWithinSeasons": "Joq bólimderdi maýsym ishinde beıneleý", "LabelDisplayMode": "Beıneleý rejimi:", "LabelDisplayName": "Beınelený aty:", "LabelDisplayOrder": "Beıneleý reti:", @@ -680,7 +660,6 @@ "LabelPostProcessorArguments": "Post-prosesor pármen jolynyń argýmentteri:", "LabelPostProcessorArgumentsHelp": "Jazylatyn faıl joly esebinde {path} paıdalanyńyz.", "LabelPreferredDisplayLanguage": "Beıneleý tiliniń teńshelimi:", - "LabelPreferredDisplayLanguageHelp": "Jellyfin tárjimeleýi aǵymdaǵy joba bolyp tabylady.", "LabelPreferredSubtitleLanguage": "Sýbtıtr tiliniń teńshelimi:", "LabelProfileAudioCodecs": "Dybystyq kodekter:", "LabelProfileCodecs": "Kodekter:", @@ -740,7 +719,6 @@ "LabelSubtitleDownloaders": "Sýbtıtrler júkteýshileri:", "LabelSubtitleFormatHelp": "Mysal: srt", "LabelSubtitlePlaybackMode": "Sýbtıtr rejimi:", - "LabelSubtitles": "Sýbtıtrler", "LabelSupportedMediaTypes": "Qoldaýdaǵy tasyǵyshderekter túrleri:", "LabelTVHomeScreen": "TD rejimindegi basqy ekran:", "LabelTag": "Teg:", @@ -753,12 +731,9 @@ "LabelTimeLimitHours": "Ýaqyt shegi (saǵat):", "LabelTitle": "Ataýy:", "LabelTrackNumber": "Jolshyq nómiri:", - "LabelTranscodingAudioCodec": "Dybystyq kodek:", - "LabelTranscodingContainer": "Konteıner:", "LabelTranscodingTempPathHelp": "Klıentterge qyzmet etetin qaıta kodtaý faıldar úshin teńshelgen jolyn kórsetińiz. Server ádepkisin paıdalaný úshin bos qaldyryńyz.", "LabelTranscodingThreadCount": "Qaıta qodtaý tizbekterdiń sany:", "LabelTranscodingThreadCountHelp": "Qaıta kodtaý kezinde paıdalanatyn eń kóp tizbek sanyn tańdańyz. Tizbek sanyn azaıtý OP paıdalanýyn tómendetedi, biraq jatyq oınatý áseri úshin tez túrlendirýge jetkilikti bolmaýy múmkin.", - "LabelTranscodingVideoCodec": "Beınelik kodek:", "LabelTriggerType": "Trıgger túri:", "LabelTunerIpAddress": "Túnerdiń IP-mekenjaıy:", "LabelTunerType": "Túner túri:", @@ -868,7 +843,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "Osy plagındi teńsheý úshin jergilikti serverińizge tikeleı kirińiz.", "MessagePluginInstallDisclaimer": "Jellyfin qaýymdastyǵy múshelerimen qurylǵan plagınder Jellyfin tájirıbeńizdi qosymsha múmkindiktermen jáne jeńildiktermen jaqsartý úshin jaqsy tásili bolyp tabylady. Ornatpas buryn, olar Jellyfin serverińizge tasyǵyshhanany uzaq skanerleý, qosymsha óńdik óńdetý jáne júıeniń turaqtylyǵyn tómendetý sıaqty áserler etýge múmkin bolýyna habardar bolyńyz.", "MessageReenableUser": "Qaıta qosý úshin tómende qarańyz", - "MessageSettingsSaved": "Parametrler saqtaldy.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Tasyǵyshhanańyzdan kelesi tasyǵysh ornalasýlary alastalady:", "MessageUnableToConnectToServer": "Tańdalǵan serverge qosylýymyz dál qazir múmkin emes. Bul iske qosylǵanyna kóz jetkizińiz jáne áreketti keıin qaıtalańyz.", "MessageUnsetContentHelp": "Mazmun kádimgi qaltalar retinde beınelenedi. Eń jaqsy nátıjeler alý úshin, ishki qaltalardyń mazmún túrlerin ornatyp Metaderek retteýshini paıdalanyńyz.", @@ -934,7 +908,6 @@ "OptionArtist": "Oryndaýshy", "OptionAscending": "Artýy boıynsha", "OptionAuto": "Avtomatty", - "OptionAutomatic": "Avtomatty", "OptionAutomaticallyGroupSeries": "Birneshe qaltalar arasynda taralǵan telehıkaıany avtomatty bir telehıkaıaǵa biriktirý", "OptionAutomaticallyGroupSeriesHelp": "Qosylǵanda, osy tasyǵyshhana ishindegi birneshe qaltalar arasynda taralǵan telehıkaıasy avtomatty bir telehıkaıaǵa biriktiriletin bolady.", "OptionBlockBooks": "Kitaptar", @@ -1176,18 +1149,14 @@ "TV": "TD", "TabAccess": "Qatynaý", "TabAdvanced": "Keńeıtilgen", - "TabAlbumArtists": "Álbom oryndaýshylary", "TabCatalog": "Tizimdeme", "TabCodecs": "Kodekter", "TabContainers": "Konteınerler", "TabDashboard": "Taqta", "TabDirectPlay": "Tikeleı oınatý", - "TabEpisodes": "TD-bólimder", - "TabInfo": "Profaıl týraly", "TabLatest": "Eń keıingi", "TabLogs": "Jurnaldar", "TabMusic": "Mýzyka", - "TabMusicVideos": "Mýzykalyq beıneler", "TabMyPlugins": "Meniń plagınderim", "TabNetworks": "Jeliler", "TabNfoSettings": "NFO parametrleri", @@ -1198,12 +1167,10 @@ "TabProfile": "Profaıl", "TabProfiles": "Profaıldar", "TabResponses": "Ún qatýlar", - "TabResumeSettings": "Jalǵastyrý", "TabScheduledTasks": "Josparlaýshy", "TabServer": "Server", "TabSettings": "Parametrler", "TabStreaming": "Tasymaldaný", - "TabTrailers": "Treılerler", "TabUpcoming": "Kútilgen", "Tags": "Tegter", "TagsValue": "Tegter: {0}", @@ -1286,7 +1253,6 @@ "HeaderFavoriteArtists": "Tańdaýly oryndaýshylar", "HeaderFavoriteSongs": "Tańdaýly áýender", "HeaderFavoriteVideos": "Tandaýly beıneler", - "HeaderHome": "Basqy", "LabelAuthProvider": "Túpnusqalyq rastamasyn jetkizýshi:", "LabelPasswordResetProvider": "Paróldi ysyrý jetkizýshisi:", "LabelServerName": "Server aty:", diff --git a/src/strings/ko.json b/src/strings/ko.json index 79153c0962..cdb2711a48 100644 --- a/src/strings/ko.json +++ b/src/strings/ko.json @@ -21,13 +21,10 @@ "ButtonBack": "뒤로", "ButtonCancel": "취소", "ButtonChangeServer": "서버 변경", - "ButtonEdit": "편집", "ButtonEditOtherUserPreferences": "이 사용자의 프로필, 이미지, 개인 설정을 수정합니다.", - "ButtonFilter": "필터", "ButtonForgotPassword": "비밀번호 분실", "ButtonGotIt": "알겠습니다", "ButtonGuide": "가이드", - "ButtonHome": "홈", "ButtonInfo": "정보", "ButtonManualLogin": "수동 로그인", "ButtonMore": "더 보기", @@ -36,11 +33,9 @@ "ButtonOk": "OK", "ButtonOpen": "열기", "ButtonPause": "일시 중지", - "ButtonPlay": "재생", "ButtonPreviousTrack": "이전 트랙", "ButtonProfile": "프로필", "ButtonQuickStartGuide": "빠른 시작 가이드", - "ButtonRefresh": "새로 고침", "ButtonRefreshGuideData": "가이드 데이터 새로 고침", "ButtonRemove": "제거", "ButtonRename": "이름 변경", @@ -59,7 +54,6 @@ "ButtonStart": "시작", "ButtonStop": "중지", "ButtonSubmit": "제출", - "ButtonSubtitles": "자막", "ButtonUninstall": "제거", "ButtonWebsite": "웹사이트", "ChannelAccessHelp": "이 사용자와 공유할 채널을 선택합니다. 관리자는 메타데이터 매니저를 사용하여 모든 채널을 수정할 수 있습니다.", @@ -106,11 +100,9 @@ "HeaderActiveDevices": "활성화된 기기", "HeaderActiveRecordings": "활성화된 녹화", "HeaderActivity": "활성화", - "HeaderAddScheduledTaskTrigger": "트리거 추가", "HeaderAddToCollection": "컬렉션에 추가", "HeaderAddToPlaylist": "재생목록에 추가", "HeaderAddUpdateImage": "이미지 추가/업데이트", - "HeaderAddUser": "사용자 추가", "HeaderAdditionalParts": "추가 장면", "HeaderAdmin": "관리자", "HeaderAlert": "알림", @@ -118,9 +110,7 @@ "HeaderApiKeys": "API 키", "HeaderApp": "앱", "HeaderAudioSettings": "오디오 설정", - "HeaderBooks": "도서", "HeaderBranding": "브랜딩", - "HeaderCastCrew": "배역 및 제작진", "HeaderChannelAccess": "채널 접속", "HeaderCodecProfile": "코덱 프로필", "HeaderConfirmProfileDeletion": "프로필 삭제 확인", @@ -140,7 +130,6 @@ "HeaderError": "오류", "HeaderFeatureAccess": "기능 접근", "HeaderFetchImages": "이미지 가져오기:", - "HeaderForgotPassword": "비밀번호 분실", "HeaderFrequentlyPlayed": "자주 재생함", "HeaderGuideProviders": "가이드 제공자", "HeaderIdentification": "식별자", @@ -158,7 +147,6 @@ "HeaderLoginFailure": "로그인 실패", "HeaderMedia": "미디어", "HeaderMediaFolders": "미디어 폴더", - "HeaderMediaInfo": "미디어 정보", "HeaderMetadataSettings": "메타데이터 설정", "HeaderMusicVideos": "뮤직비디오", "HeaderMyMedia": "내 미디어", @@ -262,7 +250,6 @@ "LabelCustomCertificatePathHelp": "커스텀 도메인에서 TLS를 지원할 수 있도록 인증서 및 개인키가 포함 된 PKCS #12 파일의 경로입니다.", "LabelCustomCss": "사용자 지정 CSS:", "LabelCustomCssHelp": "사용자 정의 스타일링을 웹 인터페이스에 적용합니다.", - "LabelCustomDeviceDisplayName": "표시 이름:", "LabelCustomRating": "사용자 평점:", "LabelDateAdded": "추가한 날짜:", "LabelDateAddedBehavior": "새 콘텐츠에 대한 날짜 추가 동작:", @@ -273,7 +260,6 @@ "LabelDefaultUserHelp": "연결된 장치에 어떤 사용자 라이브러리를 표시할 지 결정합니다. 이 설정은 각 장치의 사용중인 프로필을 대체합니다.", "LabelDeviceDescription": "장치 설명", "LabelDidlMode": "DIDL 모드:", - "LabelDisplayMissingEpisodesWithinSeasons": "각 시즌의 누락된 에피소드 표시", "LabelDisplayName": "표시 이름:", "LabelDisplayOrder": "표시 순서:", "LabelDisplaySpecialsWithinSeasons": "방송한 시즌 내에서 스페셜을 표시합니다", @@ -375,7 +361,6 @@ "LabelPlayDefaultAudioTrack": "언어에 상관없이 기본 오디오 트랙 재생", "LabelPlaylist": "재생목록:", "LabelPreferredDisplayLanguage": "선호하는 화면 언어:", - "LabelPreferredDisplayLanguageHelp": "Jellyfin 번역은 진행중인 프로젝트입니다.", "LabelProfileAudioCodecs": "오디오 코덱:", "LabelProfileCodecs": "코덱:", "LabelProfileCodecsHelp": "쉼표로 구분합니다. 모든 코덱에 적용할 수 있도록 빈 칸을 남겨둘 수 있습니다.", @@ -414,10 +399,7 @@ "LabelTime": "시각:", "LabelTimeLimitHours": "시간 제한 (시간):", "LabelTrackNumber": "트랙 번호:", - "LabelTranscodingAudioCodec": "오디오 코덱:", - "LabelTranscodingContainer": "컨테이너:", "LabelTranscodingTempPathHelp": "클라이언트로 제공될 트랜스코딩 파일이 위치한 사용자 경로를 설정합니다. 서버 기본값을 사용하려면 공백으로 두십시오.", - "LabelTranscodingVideoCodec": "비디오 코덱:", "LabelTriggerType": "트리거 종류:", "LabelTunerIpAddress": "튜너 IP 주소:", "LabelTunerType": "튜너 종류:", @@ -477,7 +459,6 @@ "MessageNothingHere": "아무것도 없습니다.", "MessagePasswordResetForUsers": "다음 사용자는 비밀번호를 재설정했습니다. 재설정을 수행하는데 사용된 핀 코드로 로그인 할 수 있습니다.", "MessagePleaseEnsureInternetMetadata": "인터넷 메타데이터 다운로드가 켜져 있는지 확인하세요.", - "MessageSettingsSaved": "설정이 저장되었습니다.", "MessageUnableToConnectToServer": "선택한 서버에 연결할 수 없습니다. 서버가 실행 중인지 확인후 다시 시도하세요.", "MessageUnsetContentHelp": "콘텐트가 일반 폴더로 표시됩니다. 최상의 결과를 위해 메타데이터 관리자를 사용하여 하위 폴더의 콘텐트 종류를 설정하세요.", "MinutesAfter": "몇 분 후에", @@ -506,7 +487,6 @@ "OptionArtist": "아티스트", "OptionAscending": "오름차순", "OptionAuto": "자동", - "OptionAutomatic": "자동", "OptionBlockBooks": "도서", "OptionBlockChannelContent": "인터넷 채널 콘텐츠", "OptionBlockLiveTvChannels": "실시간 TV 방송 채널", @@ -643,18 +623,14 @@ "SystemDlnaProfilesHelp": "시스템 프로필은 읽기 전용입니다. 시스템 프로필에 대한 변경 사항은 새로운 사용자 정의 프로필에 저장됩니다.", "TabAccess": "접속", "TabAdvanced": "고급", - "TabAlbumArtists": "앨범 아티스트", "TabCatalog": "카탈로그", "TabCodecs": "코덱", "TabContainers": "컨테이너", "TabDashboard": "대시보드", "TabDirectPlay": "다이렉트 재생", - "TabEpisodes": "에피소드", - "TabInfo": "정보", "TabLatest": "최근", "TabLogs": "로그", "TabMusic": "음악", - "TabMusicVideos": "뮤직비디오", "TabMyPlugins": "내 플러그인", "TabNetworks": "네트워크", "TabNotifications": "알림", @@ -668,7 +644,6 @@ "TabServer": "서버", "TabSettings": "설정", "TabStreaming": "스트리밍", - "TabTrailers": "예고편", "TabUpcoming": "방송 예정", "Tags": "태그", "TellUsAboutYourself": "자신에 대해 알려주세요", @@ -758,9 +733,7 @@ "BookLibraryHelp": "오디오 혹은 텍스트 도서가 지원됩니다. {0}도서 작명 가이드{1}를 참고하십시오.", "Box": "박스", "Browse": "탐색", - "ButtonEditImages": "이미지 편집", "ButtonFullscreen": "전체 화면", - "HeaderEpisodes": "에피소드", "HeaderExternalIds": "외부 ID:", "HeaderFavoriteMovies": "즐겨찾는 영화", "HeaderFavoriteVideos": "즐겨찾는 동영상", @@ -772,7 +745,6 @@ "CancelRecording": "녹화 취소", "ButtonTrailer": "트레일러", "ButtonScanAllLibraries": "모든 라이브러리 스캔", - "ButtonOff": "끄기", "ButtonAudioTracks": "오디오 트랙", "ButtonAddMediaLibrary": "미디어 라이브러리 추가", "ButtonAddImage": "이미지 추가", @@ -787,7 +759,6 @@ "Filters": "필터", "EveryNDays": "매 {0}일", "EnableThemeVideosHelp": "라이브러리를 탐색하는 동안 테마 비디오를 재생합니다.", - "EnableThemeVideos": "테마 비디오", "EnableThemeSongsHelp": "라이브러리를 탐색하는 동안 테마 곡을 재생합니다.", "EnableStreamLooping": "라이브 스트림 자동 반복", "EnableNextVideoInfoOverlayHelp": "비디오가 끝나면 현재 재생목록의 다음 비디오에 대한 정보를 표시합니다.", @@ -832,7 +803,6 @@ "ThemeVideos": "테마 비디오", "ThemeSongs": "테마 곡", "TagsValue": "태그: {0}", - "TabResumeSettings": "재개", "TabNfoSettings": "NFO 설정", "TabNetworking": "네트워킹", "TV": "TV", @@ -960,7 +930,6 @@ "LabelTheme": "테마:", "LabelTextSize": "글자 크기:", "LabelTextColor": "글자 색:", - "LabelSubtitles": "자막", "LabelSubtitleFormatHelp": "예시: srt", "LabelSubtitleDownloaders": "자막 다운로더:", "LabelStopping": "중지", @@ -998,7 +967,6 @@ "LabelAudioCodec": "오디오 코덱:", "LabelAudioChannels": "오디오 채널:", "LabelAudioBitrate": "오디오 비트레이트:", - "LabelAudio": "오디오", "Items": "항목", "Kids": "어린이", "Home": "홈", @@ -1015,7 +983,6 @@ "HeaderMusicQuality": "음악 퀄리티", "HeaderImageOptions": "이미지 옵션", "HeaderHttpHeaders": "HTTP 헤더", - "HeaderHome": "홈", "HeaderFavoriteBooks": "즐겨찾는 도서", "HeaderEditImages": "이미지 수정", "HeaderDownloadSync": "다운로드 & 동기화", @@ -1126,7 +1093,6 @@ "File": "파일", "Favorite": "즐겨찾기", "Episodes": "에피소드", - "EnableThemeSongs": "테마 곡", "EnablePhotos": "사진 표시", "EnableHardwareEncoding": "하드웨어 인코딩 활성화", "AllowHWTranscodingHelp": "튜너가 방송 스트림을 트랜스코드하도록 허용합니다. 이는 서버가 요구하는 트랜스코딩을 줄이는 데 도움이 될 수 있습니다.", diff --git a/src/strings/lt-lt.json b/src/strings/lt-lt.json index 0d66a6456a..2d890a4fca 100644 --- a/src/strings/lt-lt.json +++ b/src/strings/lt-lt.json @@ -17,18 +17,13 @@ "ButtonArrowRight": "Dešinėn", "ButtonBack": "Atgal", "ButtonCancel": "Atšaukti", - "ButtonEdit": "Redaguoti", - "ButtonFilter": "Filtras", "ButtonGotIt": "Supratau", - "ButtonHome": "Pradinis", "ButtonManualLogin": "Rankinis prisijungimas", "ButtonNextTrack": "Kitas takelis", "ButtonOk": "OK", "ButtonPause": "Pauzė", - "ButtonPlay": "Leisti", "ButtonPreviousTrack": "Ankstesnis takelis", "ButtonQuickStartGuide": "Greitos pradžios gidas", - "ButtonRefresh": "Atnaujinti", "ButtonRefreshGuideData": "Atnaujinti gido duomenis", "ButtonRemove": "Pašalinti", "ButtonResetPassword": "Atstatyti slaptažodį", @@ -39,7 +34,6 @@ "ButtonSignOut": "Atsijungti", "ButtonStop": "Stabdyti", "ButtonSubmit": "Pateikti", - "ButtonSubtitles": "Subtitrai", "CancelRecording": "Atšaukti įrašymą", "CancelSeries": "Atšaukti laidą", "Categories": "Kategorijos", @@ -83,14 +77,11 @@ "HDPrograms": "HD laidos", "HeaderActiveDevices": "Aktyvūs įrenginiai", "HeaderActiveRecordings": "Aktyvūs įrašai", - "HeaderAddScheduledTaskTrigger": "Pridėti jungiklį", "HeaderAddToCollection": "Pridėti į kolekciją", "HeaderAddToPlaylist": "Pridėti į grojaraštį", - "HeaderAddUser": "Pridėti vartotoją", "HeaderAdditionalParts": "Papildomos dalys", "HeaderCancelRecording": "Atšaukti įrašymą", "HeaderCancelSeries": "Atšaukti laidą", - "HeaderCastCrew": "Kūrėjai", "HeaderContinueWatching": "Žiūrėti toliau", "HeaderCustomDlnaProfiles": "Kiti profiliai", "HeaderDeleteItem": "Ištrinti elementą", @@ -167,7 +158,6 @@ "LabelDay": "Diena:", "LabelDeathDate": "Mirties data:", "LabelDeviceDescription": "Įrenginio aprašymas", - "LabelDisplayMissingEpisodesWithinSeasons": "Rodyti sezonuose trūkstamas serijas", "LabelDisplayOrder": "Rodymo tvarka:", "LabelDynamicExternalId": "{0} ID:", "LabelEnableAutomaticPortMap": "Įjungti automatinį portų nukreipimą", @@ -235,7 +225,6 @@ "LabelPlaceOfBirth": "Gimimo vieta:", "LabelPlaylist": "Grojaraštis:", "LabelPreferredDisplayLanguage": "Pageidautina rodymo kalba:", - "LabelPreferredDisplayLanguageHelp": "Jellyfin vertimas yra besitęsiantis projektas.", "LabelProfileCodecsHelp": "Atskirta kableliais. Palikus tuščią bus pritaikyta visiems kodekams.", "LabelProfileContainersHelp": "Atskirta kableliais. Palikus tuščią bus pritaikyta visiems konteineriams.", "LabelPublicHttpPort": "Numeris viešo HTTP porto:", @@ -439,12 +428,9 @@ "SystemDlnaProfilesHelp": "Sistemos profiliai yra tik skaitomi. Pakeitimai sistemos profiliui bus išsaugoti į naują kitą profilį.", "TabAccess": "Prieiga", "TabAdvanced": "Sudėtingiau", - "TabAlbumArtists": "Albumo atlikėjai", "TabCatalog": "Katalogas", - "TabEpisodes": "Serijos", "TabLatest": "Vėliausi", "TabMusic": "Muzika", - "TabMusicVideos": "Muzikos klipai", "TabMyPlugins": "Mano priedai", "TabNetworks": "Tinklai", "TabNotifications": "Pranešimai", @@ -453,7 +439,6 @@ "TabProfiles": "Profiliai", "TabServer": "Serveris", "TabSettings": "Nustatymai", - "TabTrailers": "Anonsai", "TabUpcoming": "Būsimi", "Tags": "Žymės", "TellUsAboutYourself": "Papasakokite apie save", @@ -506,7 +491,6 @@ "ButtonAddServer": "Pridėti Serverį", "ButtonAudioTracks": "Garso takeliai", "ButtonChangeServer": "Keisti serverį", - "ButtonEditImages": "Redaguoti vaizdus", "ButtonForgotPassword": "Pamiršau slaptažodį", "ButtonFullscreen": "Per visą ekraną", "ButtonGuide": "Gidas", @@ -514,7 +498,6 @@ "ButtonLibraryAccess": "Mediatekos prieiga", "ButtonMore": "Daugiau", "ButtonNetwork": "Tinklas", - "ButtonOff": "Išjungti", "ButtonOpen": "Atidaryti", "ButtonParentalControl": "Tėvų kontrolė", "ButtonProfile": "Profilis", @@ -582,7 +565,6 @@ "EnableNextVideoInfoOverlayHelp": "Vaizdo įrašo pabaigoje rodyti informacija apie sekantį vaizdo įrašą, esantį grojaraštyje.", "EnablePhotos": "Rodyti nuotraukas", "EnablePhotosHelp": "Nuotraukos bus rodomos šalia kitų medijos failų.", - "EnableThemeSongs": "Teminės dainos", "AspectRatio": "Vaizdo Santykis", "Ascending": "Didėjančia tvarka", "AllComplexFormats": "Visi Sudėtingi Formatai (ASS, SSA, VOBSUB, PGS, SUB/IDX, t.t.)", @@ -602,7 +584,6 @@ "EnableDisplayMirroring": "Ekrano dubliavimas", "CopyStreamURL": "Kopijuoti srauto nuorodą", "HeaderConfirmPluginInstallation": "Patvirtinti įskiepio diegimą", - "HeaderEpisodes": "Serijos", "HeaderError": "Klaida", "OptionBlockMovies": "Filmai", "Songs": "Kūriniai", @@ -659,22 +640,17 @@ "EnableExternalVideoPlayersHelp": "Paleidus vaizdo įrašą, bus rodomas išorinio grotuvo meniu.", "EnableHardwareEncoding": "Įjungti aparatinės įrangos kodavimą", "EnableThemeSongsHelp": "Naršant bibliotekoje paleisti teminius takelius fone.", - "EnableThemeVideos": "Teminiai vaizdo įrašai", "EnableThemeVideosHelp": "Naršant bibliotekoje paleisti teminius vaizdo įrašus fone.", "Episodes": "Serijos", - "HeaderBooks": "Knygos", "HeaderBranding": "Įforminimas", "HeaderCodecProfile": "Kodeko profilis", "HeaderFavoritePeople": "Mėgstami žmonės", "HeaderForKids": "Vaikams", - "HeaderForgotPassword": "Pamiršau slaptažodį", "HeaderGuideProviders": "TV gido informacijos teikėjai", - "HeaderHome": "Pradinis", "HeaderIdentification": "Identifikacija", "HeaderIdentificationHeader": "Identifikavimo antraštė", "HeaderHttpHeaders": "HTTP-antraštės", "OptionAuto": "Auto", - "OptionAutomatic": "Auto", "OptionAutomaticallyGroupSeriesHelp": "Jei įjungta - serijos skirtinguose bibliotekos aplankaluose bus apjungtos į vieną serialą.", "OptionBanner": "Juosta", "Playlists": "Grojaraštis", @@ -716,12 +692,10 @@ "LabelAllowedRemoteAddressesMode": "Nuotolinio IP adresų filtro režimas:", "HeaderLoginFailure": "Prisijungimo klaida", "Hide": "Paslėpti", - "LabelAudio": "Garsas", "LabelCancelled": "Atšaukta", "LabelCertificatePassword": "Sertifikato slaptažodis:", "LabelCertificatePasswordHelp": "Jei sertifikatui reikalingas slaptažodis, jį įveskite čia.", "LabelCustomCertificatePath": "Pasirinktinis SSL sertifikatas kelias:", - "LabelCustomDeviceDisplayName": "Rodomas vardas:", "LabelDisplayLanguage": "Kalba:", "LabelDisplayName": "Rodomas vardas:", "EnableBackdropsHelp": "Rodyti fono dekoracijas naršant bibliotekoje.", @@ -770,7 +744,6 @@ "HeaderLatestMovies": "Naujausi filmai", "HeaderLatestMusic": "Naujausia muzika", "HeaderLibraryFolders": "Mediatekos aplankai", - "HeaderMediaInfo": "Apie medija", "HeaderNextEpisodePlayingInValue": "Kita serija rodoma už {0}", "HeaderNextVideoPlayingInValue": "Kitas vaizdo įrašas rodomas už {0}", "HeaderPassword": "Slaptažodis", diff --git a/src/strings/lv.json b/src/strings/lv.json index ee712f615b..de3b8475d3 100644 --- a/src/strings/lv.json +++ b/src/strings/lv.json @@ -19,7 +19,6 @@ "MessageYouHaveVersionInstalled": "Jums pašlaik ir uzstādīta versija {0}.", "MessageUnableToConnectToServer": "Mēs pašlaik nevaram sazināties ar izvēlēto serveri. Pārliecinies ka tas strādā, un mēģini vēlreiz.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Sekojošie multvides ceļi tiks noņemti no tavas bibliotēkas:", - "MessageSettingsSaved": "Iestatījumi saglabāti.", "MessagePleaseWait": "Lūdzu uzgaidi. Tas var aizņemt pāris minūtes.", "MessageNothingHere": "Šeit nekā nav.", "MessageNoPluginsInstalled": "Tev nav uzstādīti paplašinājumi.", @@ -70,10 +69,7 @@ "LabelTunerIpAddress": "Tūnera IP Addrese:", "LabelTunerType": "Tūnera tips:", "LabelType": "Tips:", - "LabelTranscodingVideoCodec": "Video kodeks:", "LabelTranscodePath": "Trans-kodēšanas ceļš:", - "LabelTranscodingContainer": "Konteineris:", - "LabelTranscodingAudioCodec": "Audio kodeks:", "LabelTrackNumber": "Celiņa numurs:", "LabelTimeLimitHours": "Laika limits (stundas):", "LabelTime": "Laiks:", @@ -84,7 +80,6 @@ "LabelTag": "Tags:", "LabelTVHomeScreen": "TV režīma mājas ekrāns:", "LabelSupportedMediaTypes": "Atbalstītie Multivides Veidi:", - "LabelSubtitles": "Subtitri", "LabelSubtitlePlaybackMode": "Subtitru veids:", "LabelSubtitleFormatHelp": "Piemērs: srt", "LabelSubtitleDownloaders": "Subtitru lejupielādētāji:", @@ -202,7 +197,6 @@ "LabelDefaultUser": "Noklusējuma lietotājs:", "LabelDay": "Diena:", "LabelDateAdded": "Pievienošanas datums:", - "LabelCustomDeviceDisplayName": "Displeja nosaukums:", "LabelCurrentPassword": "Pašreizējā parole:", "LabelCriticRating": "Kritiķu reitings:", "LabelCountry": "Valsts:", @@ -218,7 +212,6 @@ "LabelBirthYear": "Dzimšanas gads:", "LabelBirthDate": "Dzimšanas datums:", "LabelAudioLanguagePreference": "Ieteicamā audio valoda:", - "LabelAudio": "Audio", "LabelArtistsHelp": "Atdali vairākus izmantojot ;", "LabelArtists": "Izpildītājs:", "LabelAppNameExample": "Piemēram: Sickbeard, Sonarr", @@ -286,7 +279,6 @@ "HeaderMusicQuality": "Audio Kvalitāte", "HeaderMoreLikeThis": "Vairāk Kā Šis", "HeaderMetadataSettings": "Metadatu Iestatījumi", - "HeaderMediaInfo": "Multvides informācija", "HeaderMediaFolders": "Multvides Mapes", "HeaderMedia": "Multvide", "HeaderLiveTvTunerSetup": "Tiešraides TV Tūnera Uzstādīšana", @@ -308,10 +300,8 @@ "HeaderIdentificationCriteriaHelp": "Ievadi vismaz vienu identifikācijas kritēriju.", "HeaderIdentification": "Identifikācija", "HeaderHttpHeaders": "HTTP Headeri", - "HeaderHome": "Mājas", "HeaderGuideProviders": "TV Gida Datu Nodrošinātāji", "HeaderFrequentlyPlayed": "Bieži Atskaņots", - "HeaderForgotPassword": "Aizmirst PAroli", "HeaderForKids": "Priekš Bērniem", "HeaderFavoriteVideos": "Video Favorīti", "MediaInfoPath": "Ceļš", @@ -346,7 +336,6 @@ "HeaderFavoriteBooks": "Grāmatu Favorīti", "HeaderExternalIds": "Ārējie ID:", "HeaderError": "Kļūda", - "HeaderEpisodes": "Epizodes", "HeaderEditImages": "Rediģēt Attēlus", "HeaderDownloadSync": "Lejupielādēt & Sinhronizēt", "HeaderDevices": "Ierīces", @@ -367,7 +356,6 @@ "HeaderChannelAccess": "Kanālu Piekļuve", "HeaderCancelSeries": "Atcelt Sēriju", "HeaderCancelRecording": "Atcelt Ierakstus", - "HeaderBooks": "Grāmatas", "HeaderAudioSettings": "Audio Iestatījumi", "HeaderAudioBooks": "Audio Grāmatas", "HeaderApp": "Lietotne", @@ -377,7 +365,6 @@ "HeaderAlert": "Paziņojums", "HeaderAlbumArtists": "Albumu Izpildītāji", "HeaderAdmin": "Admin", - "HeaderAddUser": "Pievienot Lietotāju", "HeaderAddToPlaylist": "Pievienot Atskaņošanas Sarakstam", "HeaderAddToCollection": "Pievienot kolekcijai", "HeaderActivity": "Aktivitāte", @@ -413,8 +400,6 @@ "EndsAtValue": "Beigsies {0}", "EnableThemeVideosHelp": "Atskaņot tēmas video fonā bibliotēkas pārlūkošanas laikā.", "EnableThemeSongsHelp": "Atskaņot tēmas mūziku fonā bibliotēkas pārlūkošanas laikā.", - "EnableThemeVideos": "Tēmas video", - "EnableThemeSongs": "Tēmas mūzika", "EnablePhotos": "Rādīt attēlus", "EnableNextVideoInfoOverlayHelp": "Video beigās rādīt informāciju par nākamo video atskaņošanas sarakstā.", "EnableNextVideoInfoOverlay": "Rādīt nākamā video informāciju atskaņošanas laikā", @@ -468,7 +453,6 @@ "ButtonWebsite": "Web vietne", "ButtonUninstall": "Atinstalēt", "ButtonTrailer": "Treileri", - "ButtonSubtitles": "Subtitri", "ButtonSplit": "Sadalīt", "ButtonStop": "Apturēt", "ButtonStart": "Sākt", @@ -489,28 +473,21 @@ "ButtonRename": "Pārsaukt", "ButtonRemove": "Noņemt", "ButtonRefreshGuideData": "Atjaunot Gida Datus", - "ButtonRefresh": "Atjaunot", "ButtonProfile": "Profils", "ButtonPreviousTrack": "Iepriekšējais celiņš", - "ButtonPlay": "Atskaņot", "ButtonPause": "Pauzēt", "ButtonParentalControl": "Vecāku Pārvaldība", "ButtonOpen": "Atvērt", "ButtonOk": "Labi", - "ButtonOff": "Izslēgt", "ButtonNextTrack": "Nākamais Celiņš", "ButtonNetwork": "Tīkls", "ButtonMore": "Vairāk", "ButtonLibraryAccess": "Bibliotēku piekļuve", "ButtonInfo": "Info", - "ButtonHome": "Mājas", "ButtonGuide": "Gids", "ButtonGotIt": "Sapratu", "ButtonFullscreen": "Pilnekrāna", "ButtonForgotPassword": "Aizmirsu Paroli", - "ButtonFilter": "Filtrs", - "ButtonEditImages": "Rediģēt attēlus", - "ButtonEdit": "Rediģēt", "ButtonChangeServer": "Nomainīt Serveri", "ButtonCancel": "Atcelt", "ButtonBack": "Atpakaļ", @@ -664,11 +641,9 @@ "TellUsAboutYourself": "Pastāsti mums par sevi", "TagsValue": "Tagi: {0}", "Tags": "Tagi", - "TabTrailers": "Treileri", "TabStreaming": "Straumēšana", "TabSettings": "Iestatījumi", "TabServer": "Serveris", - "TabResumeSettings": "Turpināt", "TabResponses": "Atbildes", "TabProfiles": "Profili", "TabProfile": "Profils", @@ -680,12 +655,9 @@ "TabNetworking": "Tīklošana", "TabNetworks": "Tīkli", "TabMyPlugins": "Mani Paplašinājumi", - "TabMusicVideos": "Mūzikas Video", "TabMusic": "Mūzika", "TabLogs": "Logs", "TabLatest": "Jaunākais", - "TabInfo": "Info", - "TabEpisodes": "Epizodes", "TabDirectPlay": "Tiešā Atskaņošana", "TabContainers": "Konteineri", "TabCodecs": "Kodeksi", @@ -759,7 +731,6 @@ "OptionBlockMusic": "Mūzika", "OptionBlockMovies": "Filmas", "OptionBlockBooks": "Grāmatas", - "OptionAutomatic": "Auto", "OptionAuto": "Auto", "OptionArtist": "Izpildītājs", "MessageNoPluginConfiguration": "Šim paplašinājumam nav konfigurējamu iestatījumu.", @@ -776,7 +747,6 @@ "LabelServerHost": "Resursdators:", "LabelReleaseDate": "Izlaiduma datums:", "LabelPreferredSubtitleLanguage": "Ieteicamā subtitru valoda:", - "LabelPreferredDisplayLanguageHelp": "Jellyfin tulkošana ir notiekošs projekts.", "LabelPlayerDimensions": "Atskaņotāja dimensijas:", "LabelParentalRating": "Vecāku reitings:", "LabelMonitorUsers": "Uzraudzīt aktivitāti no:", @@ -875,13 +845,11 @@ "HeaderCustomDlnaProfiles": "Pielāgoti Profili", "HeaderConfirmProfileDeletion": "Apstiprināt Profila Dzēšanu", "HeaderChapterImages": "Nodaļu Attēli", - "HeaderCastCrew": "Lomas & Apkalpe", "HeaderCastAndCrew": "Lomas un Apkalpe", "HeaderAppearsOn": "Redzams", "FFmpegSavePathNotFound": "Mēs nespējām atrast FFmpeg norādītajā ceļā. FFprobe arī ir vajadzīgs, un tam ir jāatrodas tajā pašā mapē. Šīs komponentes parasti tiek apvienotas vienā un tajā pašā lejupielādē. Lūdzu pārbaudiet ceļu un mēģiniet vēlreiz.", "HeaderAdditionalParts": "Papildus Ceļi", "HeaderAddUpdateImage": "Pievienot/Atjaunot Attēlu", - "HeaderAddScheduledTaskTrigger": "Pievienot Trigeri", "GuideProviderLogin": "Ieiet", "Ended": "Beidzies", "EnableStreamLoopingHelp": "Iespējo šo, ja tiešsaistes straume satur tikai pāris sekunžu datus, un ir nepārtraukti jāatjauno. Iespējojot bez vajadzības var radīties problēmas.", @@ -1018,7 +986,6 @@ "LabelDroppedFrames": "Nomestie kadri:", "LabelDownMixAudioScaleHelp": "Pastiprināt audio lejupmiksēšanas laikā. Vērtība viens paturēs oriģinālo skaļumu.", "LabelDownMixAudioScale": "Audio pastiprinājums lejupmiksējot:", - "LabelDisplayMissingEpisodesWithinSeasons": "Rādīt trūkstošās epizodes sezonās", "LabelDateAddedBehaviorHelp": "Ja atrodas metadatu vērtība, tā vienmēr tiks izmantota pirms jebkuras no šīm opcijām.", "LabelCustomDeviceDisplayNameHelp": "Ievadi pielāgotu displeja vārdu vai atstāj tukšu lai izmantotu ierīces noteikto.", "LabelCachePathHelp": "Nosaki pielāgotu atrašanās vietu priekš keša datnēm kā attēliem. Atstāj tukšu lai izmantotu servera noklusējumu.", diff --git a/src/strings/mr.json b/src/strings/mr.json index 8a2114bf05..88a0a9cfe5 100644 --- a/src/strings/mr.json +++ b/src/strings/mr.json @@ -1,7 +1,6 @@ { "ButtonOpen": "उघडा", "ButtonOk": "ऑन", - "ButtonOff": "ऑफ", "ButtonNextTrack": "पुढचा ट्रॅक", "ButtonNetwork": "नेटवर्क", "ButtonMore": "अजून", @@ -9,8 +8,6 @@ "ButtonGuide": "गाईड", "ButtonGotIt": "समजले", "ButtonForgotPassword": "पासवर्ड विसरलो", - "ButtonEditImages": "चित्र संपादित करा", - "ButtonEdit": "संपादित करा", "ButtonChangeServer": "सर्व्हर बदला", "ButtonCancel": "रद्द करा", "ButtonBack": "मागे", @@ -69,7 +66,6 @@ "CancelRecording": "रेकॉर्डिंग रद्द करा", "ButtonWebsite": "संकेतस्थळ", "ButtonTrailer": "ट्रेलर", - "ButtonSubtitles": "सबटायटल", "ButtonStop": "थांबा", "ButtonStart": "सुरू करा", "ButtonSettings": "सेटिंग्झ", @@ -81,7 +77,6 @@ "ButtonRename": "नाव बदला", "ButtonRemove": "काढून टाका", "ButtonPreviousTrack": "मागचा ट्रॅक", - "ButtonPlay": "प्ले", "ButtonPause": "पॉझ", "ButtonSyncPlay": "SyncPlay", "Collections": "संग्रह" diff --git a/src/strings/ms.json b/src/strings/ms.json index 786d2b7707..e9d03a73f0 100644 --- a/src/strings/ms.json +++ b/src/strings/ms.json @@ -64,15 +64,11 @@ "ButtonChangeServer": "Tukar pelayan", "ButtonLibraryAccess": "Akses pustaka", "ButtonInfo": "Info", - "ButtonHome": "Mula", "ButtonGuide": "Panduan", "ButtonGotIt": "Terima", "ButtonFullscreen": "Paparan skrin penuh", "ButtonForgotPassword": "Lupa Kata Laluan", - "ButtonFilter": "Tapisan", "ButtonEditOtherUserPreferences": "Edit profil, gambar dan keutamaan peribadi pengguna ini", - "ButtonEditImages": "Edit gambar-gambar", - "ButtonEdit": "Edit", "ButtonAddScheduledTaskTrigger": "Tambah Pencetus", "ButtonAddImage": "Tambah gambar", "BurnSubtitlesHelp": "Menentukan sama ada pelayan perlu membakar subtitle ke skrin apabila menukar video bergantung kepada format sarikata. Menghindari pembakaran sari kata ke skrin akan meningkatkan prestasi pelayan. Pilih Auto untuk membakar format berasaskan imej (VOBSUB, PGS, SUB / IDX, dll) dan subtitle ASS / SSA tertentu.", diff --git a/src/strings/nb.json b/src/strings/nb.json index 9a31970159..591af23502 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -42,27 +42,21 @@ "ButtonBack": "Tilbake", "ButtonCancel": "Avbryt", "ButtonChangeServer": "Endre server", - "ButtonEdit": "Rediger", - "ButtonEditImages": "Endre bilder", "ButtonEditOtherUserPreferences": "Endre denne brukerens profilbilde og personlige innstillinger.", "ButtonForgotPassword": "Glemt passord", "ButtonFullscreen": "Fullskjerm", "ButtonGotIt": "Skjønner", - "ButtonHome": "Hjem", "ButtonLibraryAccess": "Bibliotektilgang", "ButtonManualLogin": "Manuell Login", "ButtonMore": "Mer", "ButtonNetwork": "Nettverk", "ButtonNextTrack": "Neste Spor", - "ButtonOff": "Av", "ButtonOk": "OK", "ButtonOpen": "Åpne", "ButtonParentalControl": "Foreldrekontroll", - "ButtonPlay": "Spill", "ButtonPreviousTrack": "Forrige spor", "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Hurtigveiledning", - "ButtonRefresh": "Oppdater", "ButtonRefreshGuideData": "Oppdater TV-guidedata", "ButtonRemove": "Fjern", "ButtonRename": "Endre navn", @@ -81,7 +75,6 @@ "ButtonSignOut": "Logg ut", "ButtonStop": "Stopp", "ButtonSubmit": "Send", - "ButtonSubtitles": "Undertekster", "ButtonUninstall": "Avinstaller", "ButtonWebsite": "Nettsted", "CancelRecording": "Avbryt opptak", @@ -178,11 +171,9 @@ "HeaderActiveDevices": "Aktive enheter", "HeaderActiveRecordings": "Aktive opptak", "HeaderActivity": "Aktivitet", - "HeaderAddScheduledTaskTrigger": "Legg til utløser", "HeaderAddToCollection": "Legg til i samling", "HeaderAddToPlaylist": "Legg til i Spilleliste", "HeaderAddUpdateImage": "Legg Til/Oppdater Bilde", - "HeaderAddUser": "Legg til bruker", "HeaderAdditionalParts": "Tilleggsdeler", "HeaderAlert": "Varsling", "HeaderAllowMediaDeletionFrom": "Tillat sletting av media fra", @@ -191,12 +182,10 @@ "HeaderApiKeysHelp": "Eksterne programmer trenger en API-nøkkel for å kunne kommunisere med serveren. Nøklene utstedes ved å logge på med en vanlig brukerkonto eller gjennom å manuelt gi programmet en nøkkel.", "HeaderAudioBooks": "Lydbøker", "HeaderAudioSettings": "Lydinnstillinger", - "HeaderBooks": "Bøker", "HeaderBranding": "Merking", "HeaderCancelRecording": "Avbryt opptak", "HeaderCancelSeries": "Avbryt serie", "HeaderCastAndCrew": "Skuespillere & mannskap", - "HeaderCastCrew": "Mannskap", "HeaderChannelAccess": "Kanal-tilgang", "HeaderCodecProfile": "Kodekprofil", "HeaderCodecProfileHelp": "Kodekprofiler indikerer begrensningene til en enhet ved avspilling av bestemte kodeker. Hvis en begrensning gjelder, vil media bli omkodet, selv om kodeken er konfigurert for direkteavspilling.", @@ -228,12 +217,10 @@ "HeaderEditImages": "Endre bilder", "HeaderEnabledFields": "Aktiverte felt", "HeaderEnabledFieldsHelp": "Fjern markeringen av et felt for å låse det og hindre dataene fra å endres.", - "HeaderEpisodes": "Episoder", "HeaderError": "Feil", "HeaderFeatureAccess": "Funksjonstilgang", "HeaderFetchImages": "Hent bilder:", "HeaderForKids": "For barn", - "HeaderForgotPassword": "Glemt passord", "HeaderFrequentlyPlayed": "Ofte avspilt", "HeaderGuideProviders": "Leverandører av TV-guide", "HeaderHttpHeaders": "HTTP-hoder", @@ -260,7 +247,6 @@ "HeaderLiveTvTunerSetup": "Tunerinnstillinger for direkte-TV", "HeaderLoginFailure": "Påloggingsfeil", "HeaderMediaFolders": "Mediemapper", - "HeaderMediaInfo": "Mediainformasjon", "HeaderMetadataSettings": "Metadatainnstilinger", "HeaderMoreLikeThis": "Flere som dette", "HeaderMusicVideos": "Musikkvideoer", @@ -393,7 +379,6 @@ "LabelCustomCertificatePath": "Egendefinert filbane for SSL-sertifikat:", "LabelCustomCss": "Tilpasset CSS:", "LabelCustomCssHelp": "Bruk tilpassede stiler på web-grensesnittet.", - "LabelCustomDeviceDisplayName": "Visningsnavn:", "LabelCustomDeviceDisplayNameHelp": "Oppgi et egendefinert visningsnavn eller la det være tomt for å bruke navnet som enheten rapporterer.", "LabelCustomRating": "Egen aldersgrense:", "LabelDateAdded": "Dato lagt til:", @@ -406,7 +391,6 @@ "LabelDeviceDescription": "Enhetsbeskrivelse", "LabelDidlMode": "DIDL-modus:", "LabelDisplayLanguageHelp": "Oversettelse av Jellyfin er et pågående prosjekt.", - "LabelDisplayMissingEpisodesWithinSeasons": "Vis episoder som mangler fra sesongen", "LabelDisplayMode": "Visningsmodus:", "LabelDisplayName": "Visningsnavn:", "LabelDisplayOrder": "Visningsrekkefølge:", @@ -544,7 +528,6 @@ "LabelPostProcessorArguments": "Kommandolinjeargumenter for etterbehandling:", "LabelPostProcessorArgumentsHelp": "Bruk {path} som filbanen til opptaksfilen.", "LabelPreferredDisplayLanguage": "Foretrukket visningsspråk:", - "LabelPreferredDisplayLanguageHelp": "Oversettelse av Jellyfin er et pågående prosjekt.", "LabelProfileAudioCodecs": "Lydkodeker:", "LabelProfileCodecs": "Kodeker:", "LabelProfileCodecsHelp": "Separert med komma. Dette feltet kan forbli tomt for å gjelde alle kodeker.", @@ -599,12 +582,9 @@ "LabelTimeLimitHours": "Tidsbegrensning (timer):", "LabelTitle": "Tittel:", "LabelTrackNumber": "Spornummer:", - "LabelTranscodingAudioCodec": "Lydkodek:", - "LabelTranscodingContainer": "Kontainer:", "LabelTranscodingTempPathHelp": "Spesifiser en egen filbane for omkodede filer som skal sendes til klienter. La feltet stå tomt for å bruke serverens standardinnstilling.", "LabelTranscodingThreadCount": "Antall tråder for omkoding:", "LabelTranscodingThreadCountHelp": "Velg maksimalt antall tråder som kan brukes under omkoding. Færre tråder vil føre til lavere CPU-bruk, men kan føre til at mediet ikke konverteres fort nok til at avspillingen kan foregå uten avbrudd.", - "LabelTranscodingVideoCodec": "Videokodek:", "LabelTunerIpAddress": "IP-adresse til tuner:", "LabelTunerType": "Tunertype:", "LabelTypeMetadataDownloaders": "{0} - Kilder for metadata:", @@ -692,7 +672,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "Logg inn direkte på din lokale server for å konfigurere dette programtillegget.", "MessagePluginInstallDisclaimer": "Programtillegg utviklet av brukersamfunnet er en god måte å forbedre opplevelsen din gjennom ekstra funksjoner og fordeler. Før installasjon bør du være klar over virkningen de kan ha på serveren din, som lengre skanning av bibliotek, ekstra bakgrunnsbehandling og redusert systemstabilitet.", "MessageReenableUser": "Se under for å reaktivere", - "MessageSettingsSaved": "Innstillinger lagret.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Følgende medieplassering vil bli fjernet fra biblioteket ditt:", "MessageUnableToConnectToServer": "Vi klarte ikke å koble til den valgte serveren akkurat nå. Vennligst sørg for at den kjører og prøv på nytt.", "MessageUnsetContentHelp": "Innhold vises som enkle mapper. For beste resultat, bruk metadatabehandleren for å sette innholdstypen for undermapper.", @@ -942,17 +921,14 @@ "SystemDlnaProfilesHelp": "Systemprofiler er skrivebeskyttet. Endinger på en systemprofil vil bli lagret til en ny tilpasset profil.", "TabAccess": "Tilgang", "TabAdvanced": "Avansert", - "TabAlbumArtists": "Albumartister", "TabCatalog": "Katalog", "TabCodecs": "Kodeker", "TabContainers": "Kontainere", "TabDashboard": "Dashbord", "TabDirectPlay": "Direkteavspilling", - "TabEpisodes": "Episoder", "TabLatest": "Siste", "TabLogs": "Logger", "TabMusic": "Musikk", - "TabMusicVideos": "Musikkvideoer", "TabMyPlugins": "Mine programtillegg", "TabNetworks": "Nettverk", "TabNfoSettings": "NFO-innstillinger", @@ -963,10 +939,8 @@ "TabProfile": "Profil", "TabProfiles": "Profiler", "TabResponses": "Svar", - "TabResumeSettings": "Fortsettelse", "TabScheduledTasks": "Planlagte oppgaver", "TabSettings": "Innstillinger", - "TabTrailers": "Trailere", "TabUpcoming": "Kommende", "Tags": "Tagger", "TellUsAboutYourself": "Fortell oss litt om deg selv", @@ -1033,7 +1007,6 @@ "ButtonPause": "Pause", "ButtonInfo": "Informasjon", "ButtonGuide": "Guide", - "ButtonFilter": "Filter", "AirDate": "Sendedato", "Browse": "Bla", "BoxRear": "Eske (bakside)", @@ -1116,12 +1089,10 @@ "LabelType": "Type:", "Large": "Stor", "DirectStreamHelp1": "Mediet støttes av enheten med tanke på oppløsning og medietype (H.264, AC3, osv), men den støtter ikke filkontaineren (mkv, avi, wmv, osv). Videoen vil ompakkes fortløpende før den sendes til enheten.", - "EnableThemeVideos": "Temavideoer", "MusicVideo": "Musikkvideo", "Mute": "Demp lyd", "CopyStreamURL": "Kopier strøm-URL", "DirectStreaming": "Direktestrømming", - "EnableThemeSongs": "Temamusikk", "HeaderMusicQuality": "Musikkvalitet", "Home": "Hjem", "LabelAlbum": "Album:", @@ -1148,7 +1119,6 @@ "LabelDiscNumber": "Platenummer:", "LabelDisplayLanguage": "Visningsspråk:", "OptionAuto": "Automatisk", - "OptionAutomatic": "Automatisk", "OptionHomeVideos": "Fotografier", "Photos": "Bilder", "Thumb": "Miniatyrbilde", @@ -1209,7 +1179,6 @@ "HeaderFavoriteAlbums": "Favorittalbum", "HeaderFavoriteArtists": "Favorittartister", "HeaderFavoriteSongs": "Favorittsanger", - "HeaderHome": "Hjem", "HeaderNextEpisodePlayingInValue": "Neste episode starter om {0}", "HeaderNextVideoPlayingInValue": "Neste video starter om {0}", "HeaderSeriesStatus": "Seriestatus", @@ -1223,7 +1192,6 @@ "Horizontal": "Horisontal", "HttpsRequiresCert": "For å bruke sikker tilkobling må du legge inn et klarert SSL-sertifikat, for eksempel fra Let's Encrypt. Du må enten legge inn et sertifikat, eller deaktivere sikker tilkobling.", "LabelAlbumArtPN": "Albumomslag PN:", - "LabelAudio": "Lyd", "LabelAuthProvider": "Autentiserings-metode:", "LabelBitrate": "Bithastighet:", "LabelBurnSubtitles": "Brenn inn undertekst:", @@ -1249,7 +1217,6 @@ "LabelSpecialSeasonsDisplayName": "Visningsnavn for spesialsesong:", "LabelStatus": "Status:", "LabelSubtitleDownloaders": "Kilder for undertekst:", - "LabelSubtitles": "Undertekster", "LabelTVHomeScreen": "Hjemskjerm for TV-modus:", "LabelTag": "Tagg:", "LabelTextBackgroundColor": "Tekstbagrunnsfarge:", @@ -1329,7 +1296,6 @@ "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "Disse innstillingene gjelder også alle Chromecast-avspillinger startet av denne enheten.", "SubtitleOffset": "Forskyvet underteksting", "TV": "TV", - "TabInfo": "Informasjon", "TabNetworking": "Nettverk", "Trailers": "Trailere", "Transcoding": "Omkoding", diff --git a/src/strings/nl.json b/src/strings/nl.json index 963adee2c0..6258f7c216 100644 --- a/src/strings/nl.json +++ b/src/strings/nl.json @@ -57,28 +57,22 @@ "ButtonBack": "Terug", "ButtonCancel": "Annuleren", "ButtonChangeServer": "Wijzig server", - "ButtonEdit": "Bewerken", - "ButtonEditImages": "Bewerk afbeeldingen", "ButtonEditOtherUserPreferences": "Wijzig het profiel, afbeelding en persoonlijke voorkeuren van deze gebruiker.", "ButtonForgotPassword": "Wachtwoord Vergeten", "ButtonFullscreen": "Volledig scherm", "ButtonGotIt": "Begrepen", "ButtonGuide": "Gids", - "ButtonHome": "Start", "ButtonLibraryAccess": "Bibliotheek toegang", "ButtonManualLogin": "Handmatige Aanmelding", "ButtonMore": "Meer", "ButtonNetwork": "Netwerk", "ButtonNextTrack": "Volgende track", - "ButtonOff": "Uit", "ButtonOpen": "Openen", "ButtonParentalControl": "Ouderlijk toezicht", "ButtonPause": "Pauze", - "ButtonPlay": "Afspelen", "ButtonPreviousTrack": "Vorige track", "ButtonProfile": "Profiel", "ButtonQuickStartGuide": "Snelstart gids", - "ButtonRefresh": "Vernieuwen", "ButtonRefreshGuideData": "Gidsgegevens Vernieuwen", "ButtonRemove": "Verwijderen", "ButtonRename": "Naam wijzigen", @@ -97,7 +91,6 @@ "ButtonSignIn": "Aanmelden", "ButtonSignOut": "Afmelden", "ButtonSubmit": "Uitvoeren", - "ButtonSubtitles": "Ondertiteling", "CancelRecording": "Opname annuleren", "CancelSeries": "Annuleer series", "Categories": "Categorieën", @@ -181,9 +174,7 @@ "EnablePhotosHelp": "Afbeeldingen worden herkend en weergegeven naast andere mediabestanden.", "EnableStreamLooping": "Livestreams automatisch herhalen", "EnableStreamLoopingHelp": "Schakel dit in als de livestreams slechts enkele seconden aan gegevens bevatten en continu moeten worden aangevraagd. Schakel dit niet in indien het niet nodig is.", - "EnableThemeSongs": "Titelmuziek", "EnableThemeSongsHelp": "Speel titelmuziek af tijdens het bladeren door de bibliotheek.", - "EnableThemeVideos": "Titelfilms", "EnableThemeVideosHelp": "Speel titelfilms af op de achtergrond tijdens het bladeren door de bibliotheek.", "Ended": "Gestopt", "EndsAtValue": "Eindigt om {0}", @@ -237,11 +228,9 @@ "HeaderActiveDevices": "Actieve apparaten", "HeaderActiveRecordings": "Actieve Opnames", "HeaderActivity": "Activiteit", - "HeaderAddScheduledTaskTrigger": "Trigger Toevoegen", "HeaderAddToCollection": "Toevoegen aan Collectie", "HeaderAddToPlaylist": "Toevoegen aan Afspeellijst", "HeaderAddUpdateImage": "Afbeelding Toevoegen/Bijwerken", - "HeaderAddUser": "Gebruiker Toevoegen", "HeaderAdditionalParts": "Extra onderdelen", "HeaderAdmin": "Beheerder", "HeaderAlbumArtists": "Albumartiesten", @@ -255,7 +244,6 @@ "HeaderAudioBooks": "Luisterboeken", "HeaderAudioSettings": "Audio Instellingen", "HeaderBlockItemsWithNoRating": "Blokkeer items met geen of niet herkende beoordelingsinformatie:", - "HeaderBooks": "Boeken", "HeaderBranding": "Huisstijl", "HeaderCancelRecording": "Opname Annuleren", "HeaderCancelSeries": "Annuleren Series", @@ -292,14 +280,12 @@ "HeaderEditImages": "Afbeeldingen bewerken", "HeaderEnabledFields": "Schakel velden in", "HeaderEnabledFieldsHelp": "Verwijder een vinkje om het veld te vergrendelen en voorkom dat gegevens gewijzigd kunnen worden.", - "HeaderEpisodes": "Afleveringen", "HeaderError": "Fout", "HeaderExternalIds": "Externe ID's:", "HeaderFeatureAccess": "Functie toegang", "HeaderFetchImages": "Afbeeldingen ophalen:", "HeaderFetcherSettings": "Fetcher-instellingen", "HeaderForKids": "Voor Kinderen", - "HeaderForgotPassword": "Wachtwoord vergeten", "HeaderFrequentlyPlayed": "Vaak afgespeeld", "HeaderGuideProviders": "TV Gids data aanbieders", "HeaderIdentification": "Identificatie", @@ -325,7 +311,6 @@ "HeaderLiveTvTunerSetup": "Live TV Tuner Instellingen", "HeaderLoginFailure": "Aanmeld fout", "HeaderMediaFolders": "Media Mappen", - "HeaderMediaInfo": "Media informatie", "HeaderMetadataSettings": "Metagegevens instellingen", "HeaderMoreLikeThis": "Meer als dit", "HeaderMusicQuality": "Muziek Kwaliteit", @@ -477,7 +462,6 @@ "LabelCustomCertificatePathHelp": "Pad naar een PKCS #12 bestand met een certificaat en privé-sleutel om TLS ondersteuning op een aangepast domein in te schakelen.", "LabelCustomCss": "Aangepaste CSS:", "LabelCustomCssHelp": "Uw eigen aangepaste stijl voor de web-interface toepassen.", - "LabelCustomDeviceDisplayName": "Weergave naam:", "LabelCustomDeviceDisplayNameHelp": "Geef een eigen weergave naam op of laat deze leeg om de naam te gebruiken die het apparaat opgeeft.", "LabelCustomRating": "Aangepaste classificatie:", "LabelDateAdded": "Datum toegevoegd:", @@ -493,7 +477,6 @@ "LabelDiscNumber": "Disk nummer:", "LabelDisplayLanguage": "Schermtaal:", "LabelDisplayLanguageHelp": "Vertaling van Jellyfin is een voortdurend project.", - "LabelDisplayMissingEpisodesWithinSeasons": "Toon ontbrekende afleveringen binnen een seizoen", "LabelDisplayMode": "Weergave mode:", "LabelDisplayName": "Weergave naam:", "LabelDisplayOrder": "Weergave volgorde:", @@ -644,7 +627,6 @@ "LabelPostProcessorArguments": "Nabewerkings command lijn argumenten:", "LabelPostProcessorArgumentsHelp": "Gebruik {path} als het pad naar het opnamebestand.", "LabelPreferredDisplayLanguage": "Voorkeur weergavetaal:", - "LabelPreferredDisplayLanguageHelp": "Vertaling van Jellyfin is een voortdurend project.", "LabelPreferredSubtitleLanguage": "Voorkeurstaal ondertiteling:", "LabelProfileAudioCodecs": "Geluidscodecs:", "LabelProfileCodecsHelp": "Gescheiden door een komma. Dit kan leeg worden gelaten om te laten gelden voor alle codecs.", @@ -699,7 +681,6 @@ "LabelSubtitleDownloaders": "Ondertiteling downloaders:", "LabelSubtitleFormatHelp": "Voorbeeld: srt", "LabelSubtitlePlaybackMode": "Ondertitel modus:", - "LabelSubtitles": "Ondertiteling", "LabelSupportedMediaTypes": "Ondersteunde Media Types:", "LabelTVHomeScreen": "TV mode begin scherm:", "LabelTextBackgroundColor": "Tekst achtergrond kleur:", @@ -710,7 +691,6 @@ "LabelTimeLimitHours": "Tijdslimiet (uren):", "LabelTitle": "Titel:", "LabelTrackNumber": "Tracknummer:", - "LabelTranscodingAudioCodec": "Geluidscodec:", "LabelTranscodingTempPathHelp": "Specificeer een eigen pad voor de transcode bestanden die geleverd worden aan gebruikers. Laat leeg om de server standaard te gebruiken.", "LabelTranscodingThreadCount": "Aantal transcodeer draden:", "LabelTranscodingThreadCountHelp": "Selecteer het maximale aantal draden die gebruikt mogen worden om te kunnen transcoderen. Bij een lager aantal zal het processorgebruik lager zijn, maar kan de afspeelkwaliteit minder zijn voor een vloeiende ervaring.", @@ -806,7 +786,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "Om deze plugin te configuren moet u zich aanmelden direct op de lokale server.", "MessagePluginInstallDisclaimer": "Plugins ontwikkeld door leden van de gemeenschap zijn een geweldige manier om uw ervaring met extra functies en voordelen te verbeteren. Wees voor het installeren bewust van de effecten die zij op uw server kunnen hebben, zoals langere bibliotheek scans, extra achtergrondinformatie verwerking, en een verminderde stabiliteit van het systeem.", "MessageReenableUser": "Zie hieronder hoe opnieuw in te schakelen", - "MessageSettingsSaved": "Instellingen opgeslagen.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "De volgende media locaties worden verwijderd uit de bibliotheek:", "MessageUnableToConnectToServer": "Het is momenteel niet mogelijk met de geselecteerde server te verbinden. Controleer dat deze draait en probeer het opnieuw.", "MessageUnsetContentHelp": "Inhoud zal als gewone folders worden getoond. Gebruik voor het beste resultaat de Metadata Manager om de inhoud types voor subfolders in te stellen.", @@ -867,7 +846,6 @@ "OptionAllowVideoPlaybackTranscoding": "Afspelen van video die transcoderen vereisen toestaan", "OptionArtist": "Artiest", "OptionAscending": "Oplopend", - "OptionAutomatic": "Automatisch", "OptionAutomaticallyGroupSeries": "Automatisch samenvoegen serie die zijn verspreid over meerdere mappen", "OptionAutomaticallyGroupSeriesHelp": "Serie die verspreid zijn over meerdere mappen binnen deze bibliotheek worden automatisch samengevoegd tot één serie.", "OptionBlockBooks": "Boeken", @@ -1091,14 +1069,11 @@ "SystemDlnaProfilesHelp": "Systeem profielen zijn alleen-lezen. Om een systeem profiel te overschrijven, maakt u een aangepast profiel gericht op hetzelfde apparaat.", "TabAccess": "Toegang", "TabAdvanced": "Geavanceerd", - "TabAlbumArtists": "Albumartiesten", "TabCatalog": "Catalogus", "TabDirectPlay": "Direct Afspelen", - "TabEpisodes": "Afleveringen", "TabLatest": "Nieuw", "TabLogs": "Logboeken", "TabMusic": "Muziek", - "TabMusicVideos": "Muziek Videos", "TabMyPlugins": "Mijn Plugins", "TabNetworks": "TV-Studio's", "TabNfoSettings": "NFO Instellingen", @@ -1108,7 +1083,6 @@ "TabProfile": "Profiel", "TabProfiles": "Profielen", "TabResponses": "Reacties", - "TabResumeSettings": "Hervatten", "TabScheduledTasks": "Geplande taken", "TabSettings": "Instellingen", "TabUpcoming": "Binnenkort op TV", @@ -1172,7 +1146,6 @@ "Banner": "Banner", "Blacklist": "Zwarte lijst", "Box": "Hoes", - "ButtonFilter": "Filter", "ButtonInfo": "Info", "ButtonOk": "Ok", "ButtonStart": "Start", @@ -1186,7 +1159,6 @@ "Genre": "Genre", "Genres": "Genres", "HeaderCastAndCrew": "Acteurs en medewerkers", - "HeaderCastCrew": "Acteurs & medewerkers", "Art": "Afbeeldingen", "HeaderHttpHeaders": "HTTP Headers", "HeaderStatus": "Status", @@ -1206,7 +1178,6 @@ "ItemCount": "{0} items", "Items": "Items", "LabelAlbum": "Album:", - "LabelAudio": "Audio", "LabelAuthProvider": "Authenticatie Aanbieder:", "LabelCache": "Cache:", "LabelDidlMode": "DIDL mode:", @@ -1256,7 +1227,6 @@ "OptionDvd": "DVD", "OptionResElement": "res element", "TV": "TV", - "HeaderHome": "Thuis", "MediaInfoStreamTypeEmbeddedImage": "Ingeladen Afbeelding", "LabelTypeMetadataDownloaders": "{0} metadata downloaders:", "OptionLoginAttemptsBeforeLockout": "Bepaald hoeveel foutieve login pogingen plaats kunnen vinden voor dat de gebruiker buitengesloten wordt.", @@ -1272,7 +1242,6 @@ "ValueDiscNumber": "Schijf {0}", "ValueMinutes": "{0} min", "OptionProtocolHttp": "HTTP", - "LabelTranscodingVideoCodec": "Video codec:", "MusicLibraryHelp": "Bekijk de {0}muziek benaming gids{1}.", "OptionList": "lijst", "LabelAudioBitDepth": "Audio bit diepte:", @@ -1282,7 +1251,6 @@ "PasswordResetProviderHelp": "Kies een wachtwoord reset provider om te gebruiken wanneer deze gebruiker een wachtwoord reset aanvraagt", "Screenshots": "Schermafdruk", "Series": "Series", - "TabInfo": "Info", "Trailers": "Trailers", "Uniform": "Uniform", "ValueCodec": "Codec: {0}", @@ -1307,7 +1275,6 @@ "LabelPleaseRestart": "De wijzigingen zullen worden toegepast na het handmatig herladen van de web cliënt.", "LabelStatus": "Status:", "LabelTagline": "Label tekst:", - "LabelTranscodingContainer": "Container:", "LabelTranscodePath": "Transcodeer pad:", "LabelTranscodes": "Transcoderen:", "DashboardOperatingSystem": "Besturingssysteem: {0}", @@ -1347,7 +1314,6 @@ "OptionRegex": "Regex", "TabServer": "Server", "TabStreaming": "Streamen", - "TabTrailers": "Trailers", "OptionAuto": "Auto", "OptionProfileVideo": "Video", "AlbumArtist": "Album Artiest", diff --git a/src/strings/pl.json b/src/strings/pl.json index cb23cf40e6..44241686b2 100644 --- a/src/strings/pl.json +++ b/src/strings/pl.json @@ -62,30 +62,23 @@ "ButtonBack": "Wstecz", "ButtonCancel": "Anuluj", "ButtonChangeServer": "Zmień Serwer", - "ButtonEdit": "Edytuj", - "ButtonEditImages": "Edytuj obrazy", "ButtonEditOtherUserPreferences": "Edytuj profil, obrazy i ustawienia osobiste tego użytkownika.", - "ButtonFilter": "Filtr", "ButtonForgotPassword": "Zapomniałem hasła", "ButtonFullscreen": "Pełny ekran", "ButtonGotIt": "Rozumiem", "ButtonGuide": "Przewodnik", - "ButtonHome": "Start", "ButtonInfo": "Informacje", "ButtonLibraryAccess": "Dostęp do biblioteki", "ButtonManualLogin": "Logowanie manualne", "ButtonMore": "Więcej", "ButtonNetwork": "Sieć", "ButtonNextTrack": "Następny utwór", - "ButtonOff": "Wyłącz", "ButtonOpen": "Otwórz", "ButtonParentalControl": "Kontrola rodzicielska", "ButtonPause": "Pauza", - "ButtonPlay": "Odtwarzaj", "ButtonPreviousTrack": "Poprzedni utwór", "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Skrócona Instrukcja Obsługi", - "ButtonRefresh": "Odśwież", "ButtonRefreshGuideData": "Odśwież dane przewodnika", "ButtonRemove": "Usuń", "ButtonRename": "Zmień nazwę", @@ -105,7 +98,6 @@ "ButtonSignOut": "Wyloguj", "ButtonStop": "Zatrzymaj", "ButtonSubmit": "Zatwierdź", - "ButtonSubtitles": "Napisy", "ButtonTrailer": "Zwiastun", "ButtonUninstall": "Odinstaluj", "ButtonWebsite": "Strona WWW", @@ -194,9 +186,7 @@ "EnablePhotosHelp": "Obrazy będą wykrywane i wyświetlane obok innych plików multimedialnych.", "EnableStreamLooping": "Zapętlaj żądania transmisji", "EnableStreamLoopingHelp": "Aktywuj tę opcję w przypadku, gdy transmisje na żywo zawierają tylko kilka sekund danych i wymagają ciągłego ponawiania żądań transmisji. Aktywowanie tej funkcji w przypadku braku potrzeby może powodować problemy.", - "EnableThemeSongs": "Motywy muzyczne", "EnableThemeSongsHelp": "Odtwarzaj motywy muzyczne podczas przeglądania biblioteki.", - "EnableThemeVideos": "Motywy wideo", "EnableThemeVideosHelp": "Podczas przeglądania biblioteki odtwarzaj w tle motywy wideo.", "Ended": "Zakończony", "EndsAtValue": "Koniec o {0}", @@ -252,11 +242,9 @@ "HeaderActiveDevices": "Aktywne urządzenia", "HeaderActiveRecordings": "Nagrania aktywne", "HeaderActivity": "Aktywność", - "HeaderAddScheduledTaskTrigger": "Dodawanie wyzwalacza", "HeaderAddToCollection": "Dodaj do kolekcji", "HeaderAddToPlaylist": "Dodaj do listy", "HeaderAddUpdateImage": "Dodaj / Aktualizuj obraz", - "HeaderAddUser": "Dodaj użytkownika", "HeaderAdditionalParts": "Dodatkowe części", "HeaderAdmin": "Administracja", "HeaderAlbumArtists": "Wykonawcy albumów", @@ -270,12 +258,10 @@ "HeaderAudioBooks": "Książka mówiona", "HeaderAudioSettings": "Ustawienia dźwięku", "HeaderBlockItemsWithNoRating": "Blokuj pozycje z brakującą lub nierozpoznaną kategorią wiekową:", - "HeaderBooks": "Książki", "HeaderBranding": "Dostosowywanie", "HeaderCancelRecording": "Anuluj nagranie", "HeaderCancelSeries": "Anuluj nagrywanie serialu", "HeaderCastAndCrew": "Obsada i ekipa", - "HeaderCastCrew": "Obsada i ekipa", "HeaderChannelAccess": "Dostęp do Kanałów", "HeaderChapterImages": "Obrazy rozdziałów", "HeaderCodecProfile": "Profil Kodeków", @@ -309,14 +295,12 @@ "HeaderEditImages": "Edytuj obrazy", "HeaderEnabledFields": "Pola aktywne", "HeaderEnabledFieldsHelp": "Odznacz pole, aby je zablokować i zapobiec zmianom danych w przyszłości.", - "HeaderEpisodes": "Odcinki", "HeaderError": "Błąd", "HeaderExternalIds": "Identyfikatory zewnętrzne:", "HeaderFeatureAccess": "Dostęp do funkcji", "HeaderFetchImages": "Pobieraj obrazy:", "HeaderFetcherSettings": "Ustawienia pobierania", "HeaderForKids": "Dla dzieci", - "HeaderForgotPassword": "Zapomniałem hasła", "HeaderFrequentlyPlayed": "Często odtwarzane", "HeaderGuideProviders": "Dostawcy danych przewodnika telewizyjnego", "HeaderHttpHeaders": "Nagłówki HTTP", @@ -345,7 +329,6 @@ "HeaderLoginFailure": "Niepowodzenie logowania", "HeaderMedia": "Multimedia", "HeaderMediaFolders": "Foldery mediów", - "HeaderMediaInfo": "O mediach", "HeaderMetadataSettings": "Ustawienia metadanych", "HeaderMoreLikeThis": "Więcej podobnych", "HeaderMusicQuality": "Jakość muzyki", @@ -478,7 +461,6 @@ "LabelAppNameExample": "Przykład: Sickbeard, Sonarr", "LabelArtists": "Wykonawcy:", "LabelArtistsHelp": "Oddziel wielu artystów średnikiem \";\"", - "LabelAudio": "Dźwięk", "LabelAudioLanguagePreference": "Preferowany język ścieżki dźwiękowej:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Odświeżaj automatycznie metadane z Internetu:", "LabelBindToLocalNetworkAddress": "Przypisz do lokalnego adresu sieciowego:", @@ -506,7 +488,6 @@ "LabelCustomCertificatePathHelp": "Ścieżka do pliku PKCS #12, zawierającego certyfikat i klucz prywatny, niezbędny do aktywowana obsługi TLS dla własnej domeny.", "LabelCustomCss": "Niestandardowy CSS:", "LabelCustomCssHelp": "Zastosuj własne niestandardowe arkusze stylów dla interfejsu webowego.", - "LabelCustomDeviceDisplayName": "Nazwa wyświetlana:", "LabelCustomDeviceDisplayNameHelp": "Dostarcz własną nazwę wyświetlania lub zostaw puste i użyj nazwy dostarczonej przez urządzenie.", "LabelCustomRating": "Kategoria wiekowa własna:", "LabelDateAdded": "Data dodania:", @@ -523,7 +504,6 @@ "LabelDiscNumber": "Numer dysku:", "LabelDisplayLanguage": "Język interfejsu:", "LabelDisplayLanguageHelp": "Tłumaczenie Jellyfin to projekt, który ciągle trwa.", - "LabelDisplayMissingEpisodesWithinSeasons": "Wyświetlaj w sezonach brakujące odcinki", "LabelDisplayMode": "Tryb wyświetlania:", "LabelDisplayName": "Nazwa wyświetlana:", "LabelDisplayOrder": "Kolejność wyświetlania:", @@ -677,7 +657,6 @@ "LabelPostProcessorArguments": "Argumenty linii poleceń dla aplikacji przetwarzania:", "LabelPostProcessorArgumentsHelp": "Skorzystaj z wypełniacza {path} jako folder pliku nagrania.", "LabelPreferredDisplayLanguage": "Preferowany język interfejsu:", - "LabelPreferredDisplayLanguageHelp": "Tłumaczenie Jellyfin to projekt w ciągłym rozwoju.", "LabelPreferredSubtitleLanguage": "Preferowany język napisów:", "LabelProfileAudioCodecs": "Kodeki audio:", "LabelProfileCodecs": "Kodeki:", @@ -737,7 +716,6 @@ "LabelSubtitleDownloaders": "Dostawcy napisów:", "LabelSubtitleFormatHelp": "Przykład: srt", "LabelSubtitlePlaybackMode": "Tryb napisów:", - "LabelSubtitles": "Napisy", "LabelSupportedMediaTypes": "Obsługiwane typy mediów:", "LabelTVHomeScreen": "Ekran startowy trybu telewizyjnego:", "LabelTag": "Znacznik:", @@ -750,12 +728,9 @@ "LabelTimeLimitHours": "Limit czasu (godziny):", "LabelTitle": "Tytuł:", "LabelTrackNumber": "Numer utworu:", - "LabelTranscodingAudioCodec": "Kodek audio:", - "LabelTranscodingContainer": "Kontener:", "LabelTranscodingTempPathHelp": "Podaj niestandardową ścieżkę dla plików transkodowanych udostępnianych klientom. Pozostaw puste, aby użyć domyślnych ustawień serwera.", "LabelTranscodingThreadCount": "Liczba wątków transkodowania:", "LabelTranscodingThreadCountHelp": "Wybierz maksymalną liczbę wątków dla transkodowania. Ograniczenie ich liczby, obniży poziom użycia procesora, ale może niekorzystnie wpłynąć na płynność odtwarzania.", - "LabelTranscodingVideoCodec": "Kodek wideo:", "LabelTriggerType": "Typ wyzwalacza:", "LabelTunerIpAddress": "Adres IP dekodera:", "LabelTunerType": "Typ tunera:", @@ -861,7 +836,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "Aby skonfigurować ten plugin zaloguj się bezpośrednio do lokalnego serwera.", "MessagePluginInstallDisclaimer": "Wtyczki stworzone przez członków społeczności to świetny sposób na ulepszenie Twojego doświadczenia dzięki dodatkowym funkcjom i korzyściom. Przed instalacją zwróć uwagę na skutki, jakie mogą mieć na serwerze, takie jak dłuższe skanowanie bibliotek, dodatkowe przetwarzanie w tle i zmniejszona stabilność systemu.", "MessageReenableUser": "Zobacz poniżej aby aktywować ponownie", - "MessageSettingsSaved": "Ustawienia zapisane.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Następujące lokalizacje mediów zostaną usunięte z twojej biblioteki:", "MessageUnableToConnectToServer": "Połączenie z wybranym serwerem jest teraz niemożliwe. Upewnij się, że jest uruchomiony i spróbuj ponownie.", "MessageUnsetContentHelp": "Zawartość będzie wyświetlana jako proste foldery. W celu uzyskania najlepszych wyników, użyj menadżera metadanych do ustawienia typu zawartości podfolderów.", @@ -926,7 +900,6 @@ "OptionArtist": "Wykonawca", "OptionAscending": "Rosnąco", "OptionAuto": "Automatycznie", - "OptionAutomatic": "Automatycznie", "OptionAutomaticallyGroupSeries": "Scalaj seriale znajdujące się w wielu folderach", "OptionAutomaticallyGroupSeriesHelp": "Serie rozmieszczone w wielu folderach w tej bibliotece zostaną automatycznie połączone w jedną serię.", "OptionBlockBooks": "Książki", @@ -1167,18 +1140,14 @@ "TV": "Telewizor", "TabAccess": "Dostęp", "TabAdvanced": "Zaawansowane", - "TabAlbumArtists": "Wykonawcy albumów", "TabCatalog": "Katalog", "TabCodecs": "Kodeki", "TabContainers": "Kontenery", "TabDashboard": "Kokpit", "TabDirectPlay": "Odtwarzanie Bezposrednie", - "TabEpisodes": "Odcinki", - "TabInfo": "Informacje", "TabLatest": "Ostatnio dodane", "TabLogs": "Dziennik zdarzeń", "TabMusic": "Muzyka", - "TabMusicVideos": "Teledyski", "TabMyPlugins": "Zainstalowane", "TabNetworks": "Sieci", "TabNfoSettings": "Ustawienia NFO", @@ -1189,12 +1158,10 @@ "TabProfile": "Profil", "TabProfiles": "Profile", "TabResponses": "Odpowiedzi", - "TabResumeSettings": "Wznawianie", "TabScheduledTasks": "Harmonogram zadań", "TabServer": "Serwer", "TabSettings": "Ustawienia", "TabStreaming": "Transmitowanie", - "TabTrailers": "Zwiastuny", "TabUpcoming": "Wkrótce", "Tags": "Znaczniki", "TagsValue": "Znaczniki: {0}", @@ -1271,7 +1238,6 @@ "HeaderFavoriteArtists": "Ulubieni wykonawcy", "HeaderFavoriteSongs": "Ulubione utwory", "HeaderFavoriteVideos": "Ulubione Filmy", - "HeaderHome": "Strona główna", "LabelAuthProvider": "Dostawca autentykacji:", "LabelDynamicExternalId": "{0} Id:", "LabelFormat": "Format:", diff --git a/src/strings/pr.json b/src/strings/pr.json index ea27024045..4c99a4556c 100644 --- a/src/strings/pr.json +++ b/src/strings/pr.json @@ -10,16 +10,12 @@ "FolderTypeMusic": "Sea Shanties", "OptionBlockBooks": "Tall Tales", "HeaderFavoriteBooks": "Fav'rit Tales", - "HeaderBooks": "Tall Tales", "HeaderAudioBooks": "Spoken Tales", "FolderTypeBooks": "Tall Tales", "Books": "Tall Tales", "LabelHomeNetworkQuality": "Sail strength:", "Home": "Poop Deck", - "HeaderHome": "Poop Deck", "DisplayInOtherHomeScreenSections": "Show on Poop Deck such as latest booty and continue plundering", - "ButtonHome": "Poop deck", - "HeaderCastCrew": "Mateys", "Add": "Upend", "Actor": "Privateer", "AccessRestrictedTryAgainLater": "Ye arn't appearin' on the list o' the livin'!", diff --git a/src/strings/pt-br.json b/src/strings/pt-br.json index 25f6afd31e..8019cf9eeb 100644 --- a/src/strings/pt-br.json +++ b/src/strings/pt-br.json @@ -58,30 +58,23 @@ "ButtonBack": "Voltar", "ButtonCancel": "Cancelar", "ButtonChangeServer": "Alterar Servidor", - "ButtonEdit": "Editar", - "ButtonEditImages": "Editar imagens", "ButtonEditOtherUserPreferences": "Editar este perfil de usuário, imagem e preferências pessoais.", - "ButtonFilter": "Filtrar", "ButtonForgotPassword": "Esqueci a Senha", "ButtonFullscreen": "Tela Cheia", "ButtonGotIt": "Feito", "ButtonGuide": "Guia", - "ButtonHome": "Início", "ButtonLibraryAccess": "Acesso à biblioteca", "ButtonManualLogin": "Login Manual", "ButtonMore": "Mais", "ButtonNetwork": "Rede", "ButtonNextTrack": "Próxima faixa", - "ButtonOff": "Desligar", "ButtonOk": "OK", "ButtonOpen": "Abrir", "ButtonParentalControl": "Controle dos pais", "ButtonPause": "Pausar", - "ButtonPlay": "Reproduzir", "ButtonPreviousTrack": "Faixa anterior", "ButtonProfile": "Perfil", "ButtonQuickStartGuide": "Guia Rápido", - "ButtonRefresh": "Atualizar", "ButtonRefreshGuideData": "Atualizar Dados do Guia", "ButtonRemove": "Remover", "ButtonRename": "Renomear", @@ -102,7 +95,6 @@ "ButtonStart": "Iniciar", "ButtonStop": "Parar", "ButtonSubmit": "Enviar", - "ButtonSubtitles": "Legendas", "ButtonUninstall": "Desinstalar", "CancelRecording": "Cancelar gravação", "CancelSeries": "Cancelar série", @@ -185,9 +177,7 @@ "EnablePhotosHelp": "Imagens serão detectadas e exibidas junto com outros arquivos de mídia.", "EnableStreamLooping": "Repetir automaticamente transmissões ao vivo", "EnableStreamLoopingHelp": "Ative se as transmissões ao vivo contem poucos segundos de dados e necessitam ser continuamente solicitadas. Ativar esta opção sem necessidade pode causar problemas.", - "EnableThemeSongs": "Músicas-tema", "EnableThemeSongsHelp": "Reproduz músicas-tema em segundo plano ao navegar pela biblioteca.", - "EnableThemeVideos": "Vídeos-tema", "EnableThemeVideosHelp": "Reproduz vídeos-tema em segundo plano ao navegar pela biblioteca.", "Ended": "Finalizada", "EndsAtValue": "Termina às {0}", @@ -242,11 +232,9 @@ "HeaderActiveDevices": "Dispositivos Ativos", "HeaderActiveRecordings": "Gravações Ativas", "HeaderActivity": "Atividade", - "HeaderAddScheduledTaskTrigger": "Adicionar Disparador", "HeaderAddToCollection": "Adicionar à Coletânea", "HeaderAddToPlaylist": "Adicionar à Lista de Reprodução", "HeaderAddUpdateImage": "Adicionar/Atualizar Imagem", - "HeaderAddUser": "Adicionar Usuário", "HeaderAdditionalParts": "Partes Adicionais", "HeaderAlbumArtists": "Artistas do Álbum", "HeaderAlert": "Alerta", @@ -258,12 +246,10 @@ "HeaderAudioBooks": "Livros de Áudio", "HeaderAudioSettings": "Configurações de Áudio", "HeaderBlockItemsWithNoRating": "Bloquear itens com avaliação desconhecida ou sem avaliação:", - "HeaderBooks": "Livros", "HeaderBranding": "Marca", "HeaderCancelRecording": "Cancelar Gravação", "HeaderCancelSeries": "Cancelar Série", "HeaderCastAndCrew": "Elenco e Equipe", - "HeaderCastCrew": "Elenco e Equipe", "HeaderChannelAccess": "Acesso ao Canal", "HeaderChapterImages": "Imagens do Capítulo", "HeaderCodecProfile": "Perfil do Codec", @@ -297,14 +283,12 @@ "HeaderEditImages": "Editar Imagens", "HeaderEnabledFields": "Campos Ativados", "HeaderEnabledFieldsHelp": "Desmarque um campo para bloqueá-lo e evitar que seus dados sejam alterados.", - "HeaderEpisodes": "Episódios", "HeaderError": "Erro", "HeaderExternalIds": "IDs Externos:", "HeaderFeatureAccess": "Acesso aos Recursos", "HeaderFetchImages": "Buscar Imagens:", "HeaderFetcherSettings": "Configurações do Buscador", "HeaderForKids": "Para Crianças", - "HeaderForgotPassword": "Esqueci a Senha", "HeaderFrequentlyPlayed": "Reproduzidos Frequentemente", "HeaderGuideProviders": "Provedores de Dados do Guia da TV", "HeaderHttpHeaders": "Cabeçalhos de Http", @@ -333,7 +317,6 @@ "HeaderLoginFailure": "Falha no Login", "HeaderMedia": "Mídia", "HeaderMediaFolders": "Pastas de Mídia", - "HeaderMediaInfo": "Informações de Mídia", "HeaderMetadataSettings": "Configurações dos Metadados", "HeaderMoreLikeThis": "Mais Disso", "HeaderMusicQuality": "Qualidade da Música", @@ -463,7 +446,6 @@ "LabelAppNameExample": "Exemplo: Sickbeard, Sonarr", "LabelArtists": "Artistas:", "LabelArtistsHelp": "Separe múltiplos artistas usando ponto e vírgula.", - "LabelAudio": "Áudio", "LabelAudioLanguagePreference": "Idioma preferido de áudio:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Atualizar automaticamente os metadados da internet:", "LabelBindToLocalNetworkAddress": "Vincular a um endereço de rede local:", @@ -490,7 +472,6 @@ "LabelCustomCertificatePathHelp": "Local do arquivo PKCS #12 contendo certificado e chave privada para ativar o suporte TLS em um domínio personalizado.", "LabelCustomCss": "CSS personalizado:", "LabelCustomCssHelp": "Aplica o seu estilo personalizado para a interface web.", - "LabelCustomDeviceDisplayName": "Nome para exibição:", "LabelCustomDeviceDisplayNameHelp": "Fornece um nome para exibição ou deixe em branco para usar o nome informado pelo dispositivo.", "LabelCustomRating": "Avaliação personalizada:", "LabelDateAdded": "Data de adição:", @@ -507,7 +488,6 @@ "LabelDiscNumber": "Número do disco:", "LabelDisplayLanguage": "Idioma de exibição:", "LabelDisplayLanguageHelp": "A tradução do Jellyfin é um projeto em andamento.", - "LabelDisplayMissingEpisodesWithinSeasons": "Exibir episódios em falta nas temporadas", "LabelDisplayMode": "Modo de exibição:", "LabelDisplayName": "Nome para exibição:", "LabelDisplayOrder": "Ordem de exibição:", @@ -662,7 +642,6 @@ "LabelPostProcessorArguments": "Argumentos de linha de comando do pós-processador:", "LabelPostProcessorArgumentsHelp": "Usar {path} como o local do arquivo de gravação.", "LabelPreferredDisplayLanguage": "Idioma preferido de exibição:", - "LabelPreferredDisplayLanguageHelp": "A tradução do Jellyfin é um projeto em andamento.", "LabelPreferredSubtitleLanguage": "Idioma de legendas preferido:", "LabelProfileAudioCodecs": "Codecs de áudio:", "LabelProfileCodecsHelp": "Separados por vírgula. Deixe em branco para aplicar a todos os codecs.", @@ -719,7 +698,6 @@ "LabelSubtitleDownloaders": "Downloaders de legendas:", "LabelSubtitleFormatHelp": "Exemplo: srt", "LabelSubtitlePlaybackMode": "Modo de legenda:", - "LabelSubtitles": "Legendas", "LabelSupportedMediaTypes": "Tipos de Mídia Suportados:", "LabelTVHomeScreen": "Tela inicial do modo TV:", "LabelTagline": "Slogan:", @@ -731,11 +709,9 @@ "LabelTimeLimitHours": "Limite de tempo (horas):", "LabelTitle": "Título:", "LabelTrackNumber": "Número da faixa:", - "LabelTranscodingAudioCodec": "Codec de áudio:", "LabelTranscodingTempPathHelp": "Define um local personalizado para os arquivos transcodificados enviados aos clientes. Deixe em branco para usar o local padrão do servidor.", "LabelTranscodingThreadCount": "Contagem de threads da transcodificação:", "LabelTranscodingThreadCountHelp": "Selecione o número máximo de threads a ser usado quando transcodificar. Reduzir o número de threads irá diminuir o uso da CPU, mas pode não converter rápido o suficiente para uma experiência de reprodução suave.", - "LabelTranscodingVideoCodec": "Codec de vídeo:", "LabelTriggerType": "Tipo de Disparador:", "LabelTunerIpAddress": "Endereço IP do Sintonizador:", "LabelTunerType": "Tipo de sintonizador:", @@ -838,7 +814,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "Para configurar este plugin, por favor entre em seu servidor local diretamente.", "MessagePluginInstallDisclaimer": "Plugins feitos por membros da comunidade Jellyfin são uma grande forma de melhorar sua experiência Jellyfin com funcionalidades e benefícios adicionais. Antes de instalar, por favor certifique-se de conhecer os efeitos que podem causar no seu Servidor Jellyfin, tais como rastreamentos de biblioteca mais demorados, processamento adicional e diminuição na estabilidade do sistema.", "MessageReenableUser": "Veja abaixo para reativar", - "MessageSettingsSaved": "Configurações salvas.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "As seguintes localizações de mídia serão excluídas de sua biblioteca:", "MessageUnableToConnectToServer": "Não foi possível conectar ao servidor selecionado. Por favor, verifique se está sendo executado e tente novamente.", "MessageUnsetContentHelp": "O conteúdo será exibido como pastas simples. Para melhores resultados, use o gerenciador de metadados para definir os tipos de conteúdo das sub-pastas.", @@ -1130,14 +1105,11 @@ "SystemDlnaProfilesHelp": "Os perfis do sistema estão apenas em modo leitura. As alterações feitas no perfil do sistema serão salvas em um novo perfil personalizado.", "TabAccess": "Acesso", "TabAdvanced": "Avançado", - "TabAlbumArtists": "Artistas do Álbum", "TabCatalog": "Catálogo", "TabDashboard": "Painel", "TabDirectPlay": "Reprodução Direta", - "TabEpisodes": "Episódios", "TabLatest": "Recentes", "TabMusic": "Música", - "TabMusicVideos": "Videoclipes", "TabMyPlugins": "Meus Plugins", "TabNetworks": "Emissoras", "TabNfoSettings": "Configurações de NFO", @@ -1147,7 +1119,6 @@ "TabProfile": "Perfil", "TabProfiles": "Perfis", "TabResponses": "Respostas", - "TabResumeSettings": "Retomar", "TabScheduledTasks": "Tarefas Agendadas", "TabServer": "Servidor", "TabSettings": "Configurações", @@ -1253,7 +1224,6 @@ "HeaderFavoriteArtists": "Artistas favoritos", "HeaderFavoriteSongs": "Músicas favoritas", "HeaderFavoriteVideos": "Videos favoritos", - "HeaderHome": "Inicio", "LabelAuthProvider": "Provedor de autenticação:", "LabelServerName": "Nome do servidor:", "LabelTranscodePath": "Pasta de transcodificação:", @@ -1267,7 +1237,6 @@ "LabelWeb": "Web:", "OptionBluray": "Blu-ray", "LabelProfileContainer": "Formato:", - "LabelTranscodingContainer": "Formato:", "LabelXDlnaCap": "X-DLNA cap:", "LabelXDlnaDoc": "X-DLNA doc:", "MediaInfoStreamTypeAudio": "Áudio", @@ -1280,7 +1249,6 @@ "MusicAlbum": "Álbum de Música", "MusicArtist": "Artista da Música", "MusicVideo": "Videoclipe", - "OptionAutomatic": "Automático", "OptionBanner": "Banner", "OptionBlockTrailers": "Trailers", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", @@ -1310,12 +1278,10 @@ "TV": "TV", "TabCodecs": "Codecs", "TabContainers": "Formatos", - "TabInfo": "Informações", "TabLogs": "Logs", "TabNetworking": "Rede", "TabPlugins": "Plugins", "TabStreaming": "Streaming", - "TabTrailers": "Trailers", "Tags": "Marcadores", "TagsValue": "Marcadores: {0}", "Trailers": "Trailers", diff --git a/src/strings/pt-pt.json b/src/strings/pt-pt.json index 02fa88aaf6..d421efa30d 100644 --- a/src/strings/pt-pt.json +++ b/src/strings/pt-pt.json @@ -16,12 +16,9 @@ "ButtonBack": "Voltar", "ButtonCancel": "Cancelar", "ButtonChangeServer": "Alterar Servidor", - "ButtonEdit": "Editar", "ButtonEditOtherUserPreferences": "Editar este perfil de utilizador, imagem e preferências pessoais.", - "ButtonFilter": "Filtro", "ButtonForgotPassword": "Esqueci-me da palavra-passe", "ButtonFullscreen": "Ecrã inteiro", - "ButtonHome": "Início", "ButtonInfo": "Informação", "ButtonManualLogin": "Início de Sessão Manual", "ButtonMore": "Mais", @@ -29,11 +26,9 @@ "ButtonNextTrack": "Faixa seguinte", "ButtonOpen": "Abrir", "ButtonPause": "Pausar", - "ButtonPlay": "Reproduzir", "ButtonPreviousTrack": "Faixa anterior", "ButtonProfile": "Perfil", "ButtonQuickStartGuide": "Guia de Início Rápido", - "ButtonRefresh": "Atualizar", "ButtonRefreshGuideData": "Atualizar Programação de TV", "ButtonRemove": "Remover", "ButtonResetEasyPassword": "Redefinir código PIN", @@ -52,7 +47,6 @@ "ButtonStart": "Iniciar", "ButtonStop": "Parar", "ButtonSubmit": "Enviar", - "ButtonSubtitles": "Legendas", "ButtonUninstall": "Desinstalar", "ChannelAccessHelp": "Selecione os canais para partilhar com este utilizador. Os administradores poderão editar todos os canais utilizando o gestor de metadados.", "CinemaModeConfigurationHelp": "O modo cinema traz a experiência do cinema para a sua sala, possibilitando reproduzir trailers e introduções personalizadas antes da longa-metragem.", @@ -97,10 +91,8 @@ "HeaderActiveDevices": "Dispositivos Ativos", "HeaderActiveRecordings": "Gravações Ativas", "HeaderActivity": "Atividade", - "HeaderAddScheduledTaskTrigger": "Adicionar Tarefa Agendada", "HeaderAddToCollection": "Adicionar à Coleção", "HeaderAddUpdateImage": "Adicionar/Atualizar Imagem", - "HeaderAddUser": "Adicionar Utilizador", "HeaderAdditionalParts": "Partes Adicionais", "HeaderApiKey": "Chave da API", "HeaderApiKeys": "Chaves da API", @@ -109,7 +101,6 @@ "HeaderAudioSettings": "Configurações de Áudio", "HeaderBlockItemsWithNoRating": "Bloquear conteúdo sem informação de classificação etária ou com informação desconhecida:", "HeaderBranding": "Marca", - "HeaderCastCrew": "Elenco e Equipa", "HeaderChannelAccess": "Acesso ao Canal", "HeaderCodecProfile": "Perfil do Codec", "HeaderCodecProfileHelp": "Perfis do Codec indicam as limitações de um dispositivo ao reproduzir codecs específicos. Se uma limitação ocorre, o ficheiro multimédia será transcodificado, mesmo se o codec estiver configurado para reprodução direta.", @@ -135,7 +126,6 @@ "HeaderError": "Erro", "HeaderFeatureAccess": "Acesso a Características", "HeaderFetchImages": "Procurar Imagens:", - "HeaderForgotPassword": "Esqueci-me da palavra-passe", "HeaderFrequentlyPlayed": "Reproduzido Frequentemente", "HeaderGuideProviders": "Provedores de Programação de TV", "HeaderHttpHeaders": "Cabeçalhos HTTP", @@ -158,7 +148,6 @@ "HeaderLoginFailure": "Falha no Login", "HeaderMedia": "Multimédia", "HeaderMediaFolders": "Pastas Multimédia", - "HeaderMediaInfo": "Informações Multimédia", "HeaderMetadataSettings": "Configurações de Metadados", "HeaderMusicVideos": "Videoclips", "HeaderMyMedia": "O Meu Conteúdo", @@ -264,7 +253,6 @@ "LabelCustomCertificatePathHelp": "Localização do ficheiro PKCS #12 que contém um certificado e um chave privada, que permite ativar o suporte a ligações TLS em domínios privados.", "LabelCustomCss": "CSS personalizado:", "LabelCustomCssHelp": "Aplica um ficheiro de estilos customizado à interface web.", - "LabelCustomDeviceDisplayName": "Nome a ser mostrado:", "LabelCustomDeviceDisplayNameHelp": "Forneça um nome a ser mostrado, ou deixe em branco para utilizar o nome reportado pelo dispositivo.", "LabelCustomRating": "Classificação personalizada:", "LabelDateAdded": "Adicionado a:", @@ -275,7 +263,6 @@ "LabelDefaultUserHelp": "Determina que biblioteca será apresentada aos dispositivos ligados. Pode ser redefinido para cada dispositivo utilizando perfis.", "LabelDeviceDescription": "Descrição do dispositivo", "LabelDidlMode": "Modo DIDL:", - "LabelDisplayMissingEpisodesWithinSeasons": "Mostrar episódios em falta numa série", "LabelDisplayName": "Nome para apresentação:", "LabelDisplayOrder": "Ordem de apresentação:", "LabelDisplaySpecialsWithinSeasons": "Mostrar epsódios especiais nas temporadas em que estrearam", @@ -390,7 +377,6 @@ "LabelPlaceOfBirth": "Local de nascimento:", "LabelPlayDefaultAudioTrack": "Reproduzir a faixa de áudio padrão independentemente do idioma", "LabelPreferredDisplayLanguage": "Idioma de visualização preferido:", - "LabelPreferredDisplayLanguageHelp": "A tradução do Jellyfin é um projeto contínuo.", "LabelProfileAudioCodecs": "Codecs do áudio:", "LabelProfileCodecsHelp": "Separados por vírgula. Pode ser deixado em branco para usar com todos os codecs.", "LabelProfileContainer": "Contentor:", @@ -434,12 +420,9 @@ "LabelTagline": "Slogan:", "LabelTime": "Tempo:", "LabelTimeLimitHours": "Limite de tempo (horas):", - "LabelTranscodingAudioCodec": "Codec de áudio:", - "LabelTranscodingContainer": "Contentor:", "LabelTranscodingTempPathHelp": "Indique uma localização personalizada para os ficheiros de transcodificação em utilização, ou deixe em branco para utilizar o caminho por defeito.", "LabelTranscodingThreadCount": "Número de threads de transcodificação:", "LabelTranscodingThreadCountHelp": "Indique o número máximo de threads a ser utilizado para transcodificação. Reduzir o número de threads diminuirá a utilização do CPU, mas pode não converter rápido o suficiente para uma experiência de reprodução suave.", - "LabelTranscodingVideoCodec": "Codec do vídeo:", "LabelTriggerType": "Tipo do Acionador:", "LabelTunerIpAddress": "Endereço IP do Sintonizador:", "LabelTunerType": "Tipo do sintonizador:", @@ -509,7 +492,6 @@ "OptionAllowVideoPlaybackTranscoding": "Permitir reprodução de vídeo que necessite de transcodificação", "OptionArtist": "Artista", "OptionAscending": "Ascendente", - "OptionAutomatic": "Automático", "OptionBlockBooks": "Livros", "OptionBlockChannelContent": "Conteúdo do Canal de Internet", "OptionBlockLiveTvChannels": "Canais de TV em Direto", @@ -636,15 +618,12 @@ "SystemDlnaProfilesHelp": "Perfis de sistema são apenas de leitura. Mudanças a um perfil de sistema serão guardadas num novo perfil personalizado.", "TabAccess": "Acesso", "TabAdvanced": "Avançado", - "TabAlbumArtists": "Artistas do Álbum", "TabCatalog": "Catálogo", "TabContainers": "Contentores", "TabDashboard": "Painel Principal", "TabDirectPlay": "Reprodução Direta", - "TabEpisodes": "Episódios", "TabLatest": "Mais recente", "TabMusic": "Música", - "TabMusicVideos": "Videoclips", "TabMyPlugins": "As Minhas Extensões", "TabNetworks": "Redes", "TabNfoSettings": "Definições de Ficheiros NFO", @@ -752,7 +731,6 @@ "ButtonLibraryAccess": "Acesso à biblioteca", "ButtonGuide": "Programação", "ButtonGotIt": "Entendido", - "ButtonEditImages": "Editar imagens", "ButtonAudioTracks": "Faixas de Áudio", "Browse": "Procurar", "BoxRear": "Caixa (verso)", @@ -766,12 +744,10 @@ "HeaderKeepRecording": "Manter Gravação", "HeaderKeepSeries": "Manter Série", "HeaderImageOptions": "Opções de Imagem", - "HeaderHome": "Início", "HeaderForKids": "Para Crianças", "HeaderFavoriteVideos": "Vídeos Favoritos", "HeaderFavoriteMovies": "Filmes Favoritos", "HeaderExternalIds": "IDs Externos:", - "HeaderEpisodes": "Episódios", "HeaderEditImages": "Editar Imagens", "HeaderDownloadSync": "Transferência & Sincronização", "HeaderDetectMyDevices": "Detetar os Meus Dispositivos", @@ -785,7 +761,6 @@ "HeaderChapterImages": "Imagens do Capítulo", "HeaderCancelSeries": "Cancelar Gravação de Série", "HeaderCancelRecording": "Cancelar Gravação", - "HeaderBooks": "Livros", "HeaderAudioBooks": "Livros de Áudio", "HeaderAllowMediaDeletionFrom": "Permitir remoção de multimédia a partir de", "HeaderAlert": "Alerta", @@ -877,7 +852,6 @@ "LabelBindToLocalNetworkAddress": "Endereço local para colocar o servidor à escuta:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Atualizar metadados automaticamente a partir da Internet:", "LabelAuthProvider": "Provedor de autenticação:", - "LabelAudio": "Áudio", "LabelAllowedRemoteAddressesMode": "Tipo de filtro de IP remoto:", "LabelAllowedRemoteAddresses": "Filtro de IP remoto:", "LabelAllowHWTranscoding": "Permitir transcodificação por hardware", @@ -992,7 +966,6 @@ "News": "Notícias", "Programs": "Programas", "Directors": "Realização", - "ButtonOff": "Desligado", "ButtonAddImage": "Adicionar Imagem", "LabelOriginalTitle": "Título original:", "LabelPostProcessorArgumentsHelp": "Utilizar o caminho {path} como caminho para o ficheiro de gravação.", @@ -1000,8 +973,6 @@ "LabelBaseUrl": "URL Base:", "LabelNewName": "Novo nome:", "HeaderUploadImage": "Enviar Imagem", - "EnableThemeSongs": "Músicas do tema", - "EnableThemeVideos": "Vídeos do tema", "HeaderMoreLikeThis": "Mais Como Este", "HeaderRecordingPostProcessing": "Pós-Processamento de Gravações", "Descending": "Descendente", @@ -1190,7 +1161,6 @@ "Metadata": "Metadados", "MessageYouHaveVersionInstalled": "Neste momento está instalada a versão {0}.", "MessageUnsetContentHelp": "O conteúdo será mostrado como pastas simples. Para melhores resultados, utilize o gestor de metadados para definir o tipo de conteúdo das sub-pastas.", - "MessageSettingsSaved": "Definições guardadas.", "MessagePleaseWait": "Por favor, aguarde. Esta operação poderá demorar alguns instantes.", "MessagePlayAccessRestricted": "A reprodução deste conteúdo encontra-se, de momento, restrita. Por favor, contacte o administrador do sistema para mais informação.", "MessageNoServersAvailable": "Não foram encontrados servidores através da pesquisa automática.", @@ -1227,7 +1197,6 @@ "LabelTextColor": "Côr do texto:", "LabelTextBackgroundColor": "Côr de fundo do texto:", "LabelTag": "Etiqueta:", - "LabelSubtitles": "Legendas", "LabelSportsCategories": "Categorias de Desporto:", "FetchingData": "A transferir informação adicional", "List": "lista", @@ -1271,10 +1240,7 @@ "ThemeSongs": "Músicas de tema", "TagsValue": "Etiquetas: {0}", "Tags": "Etiquetas", - "TabTrailers": "Trailers", - "TabResumeSettings": "Retomar", "TabLogs": "Logs", - "TabInfo": "Info", "TabCodecs": "Codecs", "Suggestions": "Sugestões", "SortName": "Ordenar nome", diff --git a/src/strings/pt.json b/src/strings/pt.json index 95842bb22a..733044c2bf 100644 --- a/src/strings/pt.json +++ b/src/strings/pt.json @@ -48,15 +48,12 @@ "TabNfoSettings": "Definições de Ficheiros NFO", "TabNetworks": "Redes", "TabMyPlugins": "As Minhas Extensões", - "TabMusicVideos": "Videoclips", "TabMusic": "Música", "TabLatest": "Mais recente", - "TabEpisodes": "Episódios", "TabDirectPlay": "Reprodução Directa", "TabDashboard": "Painel Principal", "TabContainers": "Contentores", "TabCatalog": "Catálogo", - "TabAlbumArtists": "Artistas do Álbum", "TabAdvanced": "Avançado", "TabAccess": "Acesso", "TV": "TV", @@ -204,7 +201,6 @@ "LabelProfileCodecs": "Codecs:", "LabelProfileAudioCodecs": "Codecs do áudio:", "LabelPreferredSubtitleLanguage": "Idioma de legendas preferido:", - "LabelPreferredDisplayLanguageHelp": "A tradução do Jellyfin é um projeto contínuo.", "LabelPreferredDisplayLanguage": "Idioma de visualização preferido:", "LabelPostProcessorArgumentsHelp": "Utilizar {path} como caminho para o ficheiro de gravação.", "LabelPostProcessorArguments": "Argumentos de linha de comandos para a aplicação de pós-processamento:", @@ -356,7 +352,6 @@ "LabelDisplayOrder": "Ordem de apresentação:", "LabelDisplayName": "Nome para apresentação:", "LabelDisplayMode": "Modo de apresentação:", - "LabelDisplayMissingEpisodesWithinSeasons": "Mostrar episódios em falta dentro das temporadas", "LabelDisplayLanguageHelp": "A tradução do Jellyfin é um projeto em desenvolvimento contínuo.", "LabelDisplayLanguage": "Idioma:", "LabelDiscNumber": "Número do disco:", @@ -385,7 +380,6 @@ "LabelDateAdded": "Adicionado a:", "LabelCustomRating": "Classificação personalizada:", "LabelCustomDeviceDisplayNameHelp": "Forneça um nome a ser mostrado, ou deixe em branco para utilizar o nome reportado pelo dispositivo.", - "LabelCustomDeviceDisplayName": "Nome a ser mostrado:", "LabelCustomCssHelp": "Aplicar um ficheiro de estilos personalizado à interface web.", "LabelCustomCss": "CSS personalizado:", "LabelCustomCertificatePathHelp": "Localização do ficheiro PKCS #12 que contém um certificado e um chave privada que permitem activar o suporte a ligações TLS em domínios privados.", @@ -413,7 +407,6 @@ "LabelAudioCodec": "Codec de áudio:", "LabelAudioChannels": "Canais de áudio:", "LabelAudioBitrate": "Taxa de bits de áudio:", - "LabelAudio": "Áudio", "LabelArtistsHelp": "Separe múltiplos com ;", "LabelArtists": "Artistas:", "LabelAppNameExample": "Exemplo: Sickbeard, NzbDrone", @@ -542,7 +535,6 @@ "HeaderMusicQuality": "Qualidade da Música", "HeaderMoreLikeThis": "Mais Como Este", "HeaderMetadataSettings": "Configurações de Metadados", - "HeaderMediaInfo": "Informações Multimédia", "HeaderMediaFolders": "Pastas Multimédia", "HeaderMedia": "Multimédia", "HeaderLiveTvTunerSetup": "Configurar Sintonizador de TV", @@ -567,12 +559,10 @@ "HeaderIdentificationCriteriaHelp": "Introduza, pelo menos, um critério de identificação.", "HeaderIdentification": "Identificação", "HeaderHttpHeaders": "Cabeçalhos HTTP", - "HeaderHome": "Início", "HeaderGuideProviders": "Provedores de Programação de TV", "HeaderDeleteTaskTrigger": "Excluir Tarefa Agendada", "HeaderBranding": "Marca", "HeaderFrequentlyPlayed": "Reproduzido Frequentemente", - "HeaderForgotPassword": "Esqueci-me da palavra-passe", "HeaderForKids": "Para Crianças", "HeaderFetchImages": "Procurar Imagens:", "OptionDownloadThumbImage": "Miniatura", @@ -601,7 +591,6 @@ "OptionBlockLiveTvChannels": "Canais de TV em Directo", "OptionBlockChannelContent": "Conteúdo do Canal de Internet", "OptionBlockBooks": "Livros", - "OptionAutomatic": "Automático", "OptionAscending": "Ascendente", "OptionArtist": "Artista", "OptionAllowVideoPlaybackTranscoding": "Permitir reprodução de vídeo que necessite de transcodificação", @@ -718,12 +707,9 @@ "LabelTunerType": "Tipo do sintonizador:", "LabelTunerIpAddress": "Endereço IP do Sintonizador:", "LabelTriggerType": "Tipo do Accionador:", - "LabelTranscodingVideoCodec": "Codec do vídeo:", "LabelTranscodingThreadCountHelp": "Indique o número máximo de processors a utilizadar para transcodificação. Reduzir o número de processos diminuirá a utilização do CPU, mas pode não converter suficientemente rápido para uma experiência de reprodução suave.", "LabelTranscodingThreadCount": "Número de processos de transcodificação:", "LabelTranscodingTempPathHelp": "Indique uma localização personalizada para os ficheiros de transcodificação em utilização, ou deixe em branco para utilizar o caminho por omissão.", - "LabelTranscodingContainer": "Contentor:", - "LabelTranscodingAudioCodec": "Codec de áudio:", "LabelTimeLimitHours": "Limite de tempo (horas):", "LabelTime": "Tempo:", "LabelTextSize": "Tamanho do Texto:", @@ -769,7 +755,6 @@ "HeaderFavoriteBooks": "Livros Favoritos", "HeaderExternalIds": "IDs Externos:", "HeaderError": "Erro", - "HeaderEpisodes": "Episódios", "HeaderEnabledFieldsHelp": "Desmarque um campo para bloqueá-lo e evitar que os seus dados sejam alterados.", "HeaderEnabledFields": "Campos Activados", "HeaderEditImages": "Editar Imagens", @@ -810,9 +795,7 @@ "Episodes": "Episódios", "EndsAtValue": "Termina às {0}", "EnableThemeVideosHelp": "Reproduzir vídeos do tema em plano de fundo durante a navegação pela Biblioteca.", - "EnableThemeVideos": "Vídeos do tema", "EnableThemeSongsHelp": "Reproduzir músicas do tema em plano de fundo durante a navegação pela Biblioteca.", - "EnableThemeSongs": "Músicas do tema", "EnableStreamLoopingHelp": "Active esta opção no caso de a transmissão em directo apenas conter alguns segundos de dados e necessitar de ser continuamente requisitada. Activar esta opção quando não é necessário pode causar problemas.", "EnablePhotosHelp": "Imagens serão detectadas e mostradas em conjunto com outros ficheiros multimédia.", "EnablePhotos": "Mostrar fotografias", @@ -900,7 +883,6 @@ "ButtonWebsite": "Website", "ButtonUninstall": "Desinstalar", "ButtonTrailer": "Trailer", - "ButtonSubtitles": "Legendas", "ButtonSubmit": "Enviar", "ButtonStop": "Parar", "ButtonStart": "Iniciar", @@ -921,29 +903,22 @@ "ButtonRename": "Alterar o nome", "ButtonRemove": "Remover", "ButtonRefreshGuideData": "Actualizar Programação de TV", - "ButtonRefresh": "Actualizar", "ButtonQuickStartGuide": "Guia de Início Rápido", "ButtonProfile": "Perfil", "ButtonPreviousTrack": "Faixa anterior", - "ButtonPlay": "Reproduzir", "ButtonPause": "Pausar", "ButtonParentalControl": "Controlo parental", "ButtonOpen": "Abrir", "ButtonOk": "OK", - "ButtonOff": "Desligado", "ButtonNextTrack": "Faixa seguinte", "ButtonNetwork": "Rede", "ButtonMore": "Mais", "ButtonManualLogin": "Início de Sessão Manual", "ButtonLibraryAccess": "Acesso à biblioteca", "ButtonInfo": "Informação", - "ButtonHome": "Início", "ButtonFullscreen": "Ecrã inteiro", "ButtonForgotPassword": "Esqueci-me da palavra-passe", - "ButtonFilter": "Filtro", "ButtonEditOtherUserPreferences": "Editar este perfil de utilizador, imagem e preferências pessoais.", - "ButtonEditImages": "Editar imagens", - "ButtonEdit": "Editar", "Auto": "Automático", "AlwaysPlaySubtitles": "Mostrar sempre legendas", "AllowMediaConversionHelp": "Permitir ou negar acesso à funcionalidade de conversão multimédia.", @@ -1063,10 +1038,8 @@ "HeaderCodecProfile": "Perfil do Codec", "HeaderChapterImages": "Imagens do Capítulo", "HeaderChannelAccess": "Acesso ao Canal", - "HeaderCastCrew": "Elenco e Equipa", "HeaderCancelSeries": "Cancelar Gravação de Série", "HeaderCancelRecording": "Cancelar Gravação", - "HeaderBooks": "Livros", "HeaderBlockItemsWithNoRating": "Bloquear conteúdo sem informação de classificação etária ou com informação desconhecida:", "HeaderAudioSettings": "Configurações de Áudio", "HeaderAudioBooks": "Livros de Áudio", @@ -1078,11 +1051,9 @@ "HeaderAlert": "Alerta", "HeaderAlbumArtists": "Artistas do Álbum", "HeaderAdditionalParts": "Partes Adicionais", - "HeaderAddUser": "Adicionar Utilizador", "HeaderAddUpdateImage": "Adicionar/Actualizar Imagem", "HeaderAddToPlaylist": "Adicionar à Lista de Reprodução", "HeaderAddToCollection": "Adicionar à Colecção", - "HeaderAddScheduledTaskTrigger": "Adicionar Tarefa Agendada", "HeaderActivity": "Actividade", "HeaderActiveRecordings": "Gravações Activas", "HeaderActiveDevices": "Dispositivos Activos", @@ -1160,7 +1131,6 @@ "Metadata": "Metadados", "MessageYouHaveVersionInstalled": "Você possui a versão {0} atualmente instalada.", "MessageUnsetContentHelp": "O conteúdo será exibido como pastas simples. Para obter melhores resultados, use o gerenciador de metadados para definir os tipos de conteúdo das subpastas.", - "MessageSettingsSaved": "Configurações salvas.", "MessagePleaseWait": "Por favor, espere. Isso pode levar um minuto.", "MessagePlayAccessRestricted": "A reprodução deste conteúdo está atualmente restrita. Entre em contato com o administrador do servidor para obter mais informações.", "MessageNoServersAvailable": "Nenhum servidor foi encontrado usando a descoberta automática de servidores.", @@ -1211,7 +1181,6 @@ "LabelTextBackgroundColor": "Cor do plano de fundo do texto:", "LabelTag": "Tag:", "LabelTVHomeScreen": "Tela inicial do modo TV:", - "LabelSubtitles": "Legendas:", "LabelSubtitleDownloaders": "Downloaders de legendas:", "LabelStreamType": "Tipo de fluxo:", "LabelSpecialSeasonsDisplayName": "Nome de exibição da temporada especial:", diff --git a/src/strings/ro.json b/src/strings/ro.json index 6eeeeba01f..962862324d 100644 --- a/src/strings/ro.json +++ b/src/strings/ro.json @@ -3,12 +3,8 @@ "ButtonAddScheduledTaskTrigger": "Adaugă declanșator", "ButtonAddUser": "Adaugă Utilizator", "ButtonCancel": "Anulează", - "ButtonEdit": "Modifică", - "ButtonFilter": "Filtru", "ButtonManualLogin": "Conectare manuală", - "ButtonPlay": "Redă", "ButtonQuickStartGuide": "Ghid rapid de Start", - "ButtonRefresh": "Reîmprospătează", "ButtonRefreshGuideData": "Reîmprospătează Ghidul", "ButtonRemove": "Elimină", "ButtonResetPassword": "Resetează parola", @@ -29,8 +25,6 @@ "FolderTypeTvShows": "Seriale TV", "Friday": "Vineri", "HeaderActiveRecordings": "Înregistrări active", - "HeaderAddScheduledTaskTrigger": "Adaugă declanșator", - "HeaderAddUser": "Adaugă Utilizator", "HeaderContinueWatching": "Vizionează în continuare", "HeaderDeviceAccess": "Accesul Dispozitivelor", "HeaderEasyPinCode": "Cod Pin Ușor", @@ -61,7 +55,6 @@ "LabelCurrentPassword": "Parola curentă:", "LabelCustomCertificatePath": "Calea către certificatul personalizat:", "LabelCustomCertificatePathHelp": "Furnizați propriul fișier care conține un certificat SSL in format .pfx.", - "LabelDisplayMissingEpisodesWithinSeasons": "Afișeaza episoadele lipsă din sezon", "LabelFinish": "Termină", "LabelLanguage": "Limba:", "LabelMaxBackdropsPerItem": "Numărul maxim de fundaluri pentru fiecare element:", @@ -111,7 +104,6 @@ "OptionAllowRemoteSharedDevicesHelp": "Dispozitivele DLNA sunt considerate partajate până ce un utilizator începe să le controleze.", "OptionAllowUserToManageServer": "Permite acestui utilizator să administreze serverul", "OptionAscending": "Ascendent", - "OptionAutomatic": "Auto", "OptionCommunityRating": "Rating Comunitate", "OptionContinuing": "Continuă", "OptionCriticRating": "Rating Critic", @@ -160,11 +152,8 @@ "Sunday": "Duminică", "TabAccess": "Acces", "TabAdvanced": "Avansat", - "TabAlbumArtists": "Albume Artiști", - "TabEpisodes": "Episoade", "TabLatest": "Cele mai recente", "TabMusic": "Muzică", - "TabMusicVideos": "Videoclipuri muzicale", "TabMyPlugins": "Plugin-urile mele", "TabNetworks": "Rețele TV", "TabNotifications": "Notificări", @@ -172,7 +161,6 @@ "TabProfile": "Profil", "TabProfiles": "Profile", "TabSettings": "Setări", - "TabTrailers": "Trailere", "TabUpcoming": "Urmează să apară", "TellUsAboutYourself": "Spune-ne despre tine", "ThisWizardWillGuideYou": "Acest asistent vă va ghida prin procesul de configurare. Pentru a începe, vă rugăm să selectați limba preferată.", @@ -271,19 +259,16 @@ "ButtonAudioTracks": "Cale Audio", "ButtonBack": "Înapoi", "ButtonChangeServer": "Schimbă Server", - "ButtonEditImages": "Modifică imaginile", "ButtonEditOtherUserPreferences": "Modifică profilul, imaginea și preferințele personale ale acestui utilizator.", "ButtonForgotPassword": "Parolă uitată", "ButtonFullscreen": "Umple ecranul", "ButtonGotIt": "Am înțeles", "ButtonGuide": "Ghid", - "ButtonHome": "Acasă", "ButtonInfo": "Info", "ButtonLibraryAccess": "Acces Librarie", "ButtonMore": "Mai mult", "ButtonNetwork": "Rețea", "ButtonNextTrack": "Următoarea cale", - "ButtonOff": "Oprit", "ButtonOk": "Ok", "ButtonOpen": "Deschide", "ButtonParentalControl": "Control parental", @@ -307,7 +292,6 @@ "ButtonSend": "Trimite", "ButtonShutdown": "Oprește", "ButtonStart": "Start", - "ButtonSubtitles": "Subtitrări", "ButtonTrailer": "Trailer", "ButtonUninstall": "Dezinstalează", "ButtonWebsite": "Website", @@ -357,7 +341,6 @@ "HDPrograms": "Programe HD", "HeaderApiKeys": "Chei API", "HeaderApp": "Aplicație", - "HeaderCastCrew": "Distribuție și echipă", "HeaderConfirmPluginInstallation": "Confirmați instalarea plugin-ului", "HeaderDeleteItems": "Ștergeți Elemente", "HeaderDeleteProvider": "Ștergeți Furnizorul", @@ -368,7 +351,6 @@ "HeaderEditImages": "Editează imagini", "HeaderEnabledFields": "Câmpuri activate", "HeaderEnabledFieldsHelp": "Debifează un câmp pentru a-l bloca și pentru a împiedica schimbarea datelor sale.", - "HeaderEpisodes": "Episoade", "HeaderError": "Eroare", "HeaderExternalIds": "ID-uri Externe:", "HeaderFavoriteBooks": "Cărți Favorite", @@ -381,9 +363,7 @@ "HeaderFavoriteVideos": "Video Favorite", "HeaderFetcherSettings": "Setări Fetcher", "HeaderForKids": "Pentru Copii", - "HeaderForgotPassword": "Am uitat parola", "HeaderGuideProviders": "Furnizori de date ghid TV", - "HeaderHome": "Acasă", "HeaderHttpHeaders": "Anteturi HTTP", "HeaderIdentification": "Identificare", "HeaderIdentificationCriteriaHelp": "Introduceți cel puțin un criteriu de identificare.", @@ -399,7 +379,6 @@ "HeaderLoginFailure": "Autentificare eșuată", "HeaderMedia": "Media", "HeaderMediaFolders": "Dosare Media", - "HeaderMediaInfo": "Informații Media", "HeaderMetadataSettings": "Setări metadate", "HeaderMoreLikeThis": "Mai multe ca acesta", "HeaderMusicQuality": "Calitatea muzicii", @@ -462,7 +441,6 @@ "HeaderAppearsOn": "Apare în", "HeaderAudioBooks": "Carți Audio", "HeaderAudioSettings": "Setari audio", - "HeaderBooks": "Cărți", "HeaderChannelAccess": "Accesare canal", "HeaderChapterImages": "Imagini Capitol", "HeaderCodecProfile": "Profilul Codec-ului", @@ -536,9 +514,7 @@ "EnableNextVideoInfoOverlayHelp": "La sfârșitul unui video, afișați informații despre următorul video care urmează în lista de redare curentă.", "EnablePhotosHelp": "Imaginile vor fi detectate și afișate alături de alte fișiere media.", "EnableStreamLooping": "Fluxuri live cu buclă automată", - "EnableThemeSongs": "Melodii tematice", "EnableThemeSongsHelp": "Redați melodii tematice în fundal în timp ce navigați în bibliotecă.", - "EnableThemeVideos": "Videoclipuri tematice", "EnableThemeVideosHelp": "Redați videoclipuri tematice în fundal în timp ce navigați în bibliotecă.", "ErrorAddingTunerDevice": "A apărut o eroare la adăugarea tuner-ului. Vă rugăm să vă asigurați că este accesibil și încercați din nou.", "ErrorDeletingItem": "A apărut o eroare la ștergerea elementului din server. Vă rugăm să verificați dacă Jellyfin are acces de scriere la folderul media și încercați din nou.", @@ -571,8 +547,6 @@ "LabelTranscodingFramerate": "Rata de cadru a transcodării:", "LabelTranscodes": "Transcodează:", "LabelTranscodePath": "Cale transcodare:", - "LabelTranscodingContainer": "Container :", - "LabelTranscodingAudioCodec": "Codec audio:", "LabelTrackNumber": "Număr melodie:", "LabelTitle": "Titlu:", "LabelTime": "Ora:", @@ -584,7 +558,6 @@ "LabelTag": "Etichetă:", "LabelTVHomeScreen": "Ecran de pornire în modul TV:", "LabelSupportedMediaTypes": "Tipuri media suportate:", - "LabelSubtitles": "Subtitrări", "LabelSubtitlePlaybackMode": "Mod subtitrare:", "LabelSubtitleFormatHelp": "Exemplu: srt", "LabelSubtitleDownloaders": "Descărcare subtitrări:", @@ -639,7 +612,6 @@ "LabelProfileCodecs": "Codecuri:", "LabelProfileAudioCodecs": "Codecuri audio:", "LabelPreferredSubtitleLanguage": "Limba subtitrare preferată:", - "LabelPreferredDisplayLanguageHelp": "Traducerea Jellyfin este un proiect în derulare.", "LabelPreferredDisplayLanguage": "Limba de afișare preferată:", "LabelPostProcessorArgumentsHelp": "Utilizați {path} ca și cale către fișierul de înregistrare.", "LabelPostProcessorArguments": "Argumentele liniei de comandă post-procesare:", @@ -802,7 +774,6 @@ "LabelDateAdded": "Data adăugării:", "LabelCustomRating": "Evaluare personalizată:", "LabelCustomDeviceDisplayNameHelp": "Furnizați un nume de afișare personalizat sau lăsați gol pentru a utiliza numele raportat de dispozitiv.", - "LabelCustomDeviceDisplayName": "Numele afisat:", "LabelCustomCssHelp": "Aplicați propriul stil personalizat pe interfața web.", "LabelCustomCss": "CSS personalizat:", "LabelCriticRating": "Evaluare critic:", @@ -829,7 +800,6 @@ "LabelAudioChannels": "Canale audio:", "LabelAudioBitrate": "Rata de biți audio:", "LabelAudioBitDepth": "Adâncimea bitului audio:", - "LabelAudio": "Audio", "LabelAppNameExample": "Exemplu: Sickbeard, Sonarr", "LabelAppName": "Nume app", "LabelAllowedRemoteAddressesMode": "Modul de filtrare a adresei IP de la distanță:", @@ -964,7 +934,6 @@ "MessageUnsetContentHelp": "Conținutul va fi afișat ca foldere simple. Pentru cele mai bune rezultate, utilizați managerul de metadate pentru a seta tipurile de conținut ale sub-foldererelor.", "MessageUnableToConnectToServer": "Nu putem să ne conectăm la serverul selectat în acest moment. Vă rugăm să vă asigurați că funcționează și încercați din nou.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Următoarele locații media vor fi eliminate din biblioteca dvs.:", - "MessageSettingsSaved": "Setări salvate.", "MessageReenableUser": "Consultați mai jos pentru a reactiva", "MessagePluginInstallDisclaimer": "Pluginurile create de membrii comunității sunt o modalitate excelentă de a vă îmbunătăți experiența cu funcții și beneficii suplimentare. Înainte de instalare, vă rugăm să fiți conștienți de efectele pe care le pot avea asupra serverului dvs., cum ar fi scanările de bibliotecă mai îndelungate, procesare suplimentară în fundal și scăderea stabilității sistemului.", "MessagePluginConfigurationRequiresLocalAccess": "Pentru a configura acest plugin, vă rugăm să vă conectați direct la serverul dvs. local.", @@ -1084,7 +1053,6 @@ "LabelType": "Tip:", "LabelTunerType": "Tip tuner:", "LabelTunerIpAddress": "Adresă IP Tuner:", - "LabelTranscodingVideoCodec": "Codec video:", "LabelTranscodingThreadCountHelp": "Selectați numărul maxim de fire de execuție de utilizat la transcodare. Reducerea numărului de fire de execuție va scădea utilizarea procesorului, dar este posibil să nu se convertească suficient de repede pentru o experiență de redare lină.", "Suggestions": "Recomandări", "Subtitles": "Subtitrări", @@ -1337,14 +1305,12 @@ "TabStreaming": "Transmitere", "TabServer": "Server", "TabScheduledTasks": "Task-uri programate", - "TabResumeSettings": "Continuă", "TabResponses": "Răspunsuri", "TabPlugins": "Pluginuri", "TabParentalControl": "Control Parental", "TabNfoSettings": "Setări NFO", "TabNetworking": "Rețele", "TabLogs": "Jurnal", - "TabInfo": "Info", "TabDirectPlay": "Redare directă", "TabDashboard": "Tablou de bord", "TabContainers": "Containere", diff --git a/src/strings/ru.json b/src/strings/ru.json index 8982b7f187..28e47b7cc8 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -62,31 +62,24 @@ "ButtonBack": "Назад", "ButtonCancel": "Отменить", "ButtonChangeServer": "Сменить сервер", - "ButtonEdit": "Править", - "ButtonEditImages": "Править изображения", "ButtonEditOtherUserPreferences": "Править профиль, изображение и персональные настройки этого пользователя.", - "ButtonFilter": "Фильтр", "ButtonForgotPassword": "Напомнить пароль", "ButtonFullscreen": "Полный экран", "ButtonGotIt": "Понятно", "ButtonGuide": "Телегид", - "ButtonHome": "Главное", "ButtonInfo": "Инфо", "ButtonLibraryAccess": "Доступ к медиатеке", "ButtonManualLogin": "Войти вручную", "ButtonMore": "Ещё", "ButtonNetwork": "Сеть", "ButtonNextTrack": "Следующая дорожка", - "ButtonOff": "Откл", "ButtonOk": "Ок", "ButtonOpen": "Открыть", "ButtonParentalControl": "Родительский контроль", "ButtonPause": "Пауза", - "ButtonPlay": "Воспроизведение", "ButtonPreviousTrack": "Предыдущая дорожка", "ButtonProfile": "Профиль", "ButtonQuickStartGuide": "Руководство по запуску", - "ButtonRefresh": "Обновить", "ButtonRefreshGuideData": "Обновить данные телегида", "ButtonRemove": "Изъять", "ButtonRename": "Переименовать", @@ -107,7 +100,6 @@ "ButtonStart": "Запустить", "ButtonStop": "Остановить", "ButtonSubmit": "Подтвердить", - "ButtonSubtitles": "Субтитры", "ButtonTogglePlaylist": "Плей-лист", "ButtonTrailer": "Трейлер", "ButtonUninstall": "Удалить", @@ -196,9 +188,7 @@ "EnablePhotosHelp": "Изображения будут обнаруживаться и отображаться наряду с другими медиафайлами.", "EnableStreamLooping": "Зацикливание трансляций", "EnableStreamLoopingHelp": "Включайте, если трансляции содержат данные только на несколько секунд и необходимо непрерывно их запрашивать. Включение этого без необходимости может породить проблемы.", - "EnableThemeSongs": "Тематические композиции", "EnableThemeSongsHelp": "Воспроизведение тематических композиций в фоновом режиме при навигации по медиатеке.", - "EnableThemeVideos": "Тематические видео", "EnableThemeVideosHelp": "Воспроизведение тематических видео в фоновом режиме при навигации по медиатеке.", "Ended": "Прекращённое", "EndsAtValue": "Конец в {0}", @@ -255,11 +245,9 @@ "HeaderActiveDevices": "Активные устройства", "HeaderActiveRecordings": "Активные записи", "HeaderActivity": "Действия", - "HeaderAddScheduledTaskTrigger": "Добавление триггера", "HeaderAddToCollection": "Добавить в коллекцию", "HeaderAddToPlaylist": "Добавление в плей-лист", "HeaderAddUpdateImage": "Добавление/Обновление изображения", - "HeaderAddUser": "Добавить пользователя", "HeaderAdditionalParts": "Дополнительные части", "HeaderAdmin": "Администрирование", "HeaderAlbumArtists": "Исполнители альбома", @@ -273,12 +261,10 @@ "HeaderAudioBooks": "Аудиокниги", "HeaderAudioSettings": "Параметры аудио", "HeaderBlockItemsWithNoRating": "Блокирование элементов с отсутствующей или нераспознанной информацией о возрастной категории:", - "HeaderBooks": "Книги", "HeaderBranding": "Оформление", "HeaderCancelRecording": "Отменить запись", "HeaderCancelSeries": "Отмена сериала", "HeaderCastAndCrew": "Снимались и снимали", - "HeaderCastCrew": "Снимались и снимали", "HeaderChannelAccess": "Доступ ко каналам", "HeaderChapterImages": "Изображения сцен", "HeaderCodecProfile": "Профиль кодеков", @@ -312,14 +298,12 @@ "HeaderEditImages": "Править изображения", "HeaderEnabledFields": "Включённые поля", "HeaderEnabledFieldsHelp": "Снимите флажок, чтобы зафиксировать поле и защитить его данные от изменнений.", - "HeaderEpisodes": "Эпизоды", "HeaderError": "Ошибка", "HeaderExternalIds": "Внешние идентификаторы:", "HeaderFeatureAccess": "Доступ к компонентам", "HeaderFetchImages": "Отборка изображений:", "HeaderFetcherSettings": "Параметры отборщика", "HeaderForKids": "Детям", - "HeaderForgotPassword": "Забыли пароль", "HeaderFrequentlyPlayed": "Воспроизведённые часто", "HeaderGuideProviders": "Поставщики данных телегида", "HeaderHttpHeaders": "HTTP-заголовки", @@ -348,7 +332,6 @@ "HeaderLoginFailure": "Сбой входа", "HeaderMedia": "Медиаданные", "HeaderMediaFolders": "Медиапапки", - "HeaderMediaInfo": "О медиаданных", "HeaderMetadataSettings": "Параметры метаданных", "HeaderMoreLikeThis": "Ещё подобное этому", "HeaderMusicQuality": "Качество музыки", @@ -480,8 +463,7 @@ "LabelAppName": "Название приложения", "LabelAppNameExample": "Пример: Sickbeard, Sonarr", "LabelArtists": "Исполнители:", - "LabelArtistsHelp": "Для разделения исполнителей используйте ; (точку с запятой).", - "LabelAudio": "Аудио", + "LabelArtistsHelp": "Для разделения исполнителей используйте точку с запятой ;", "LabelAudioLanguagePreference": "Выбор языка аудио:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Автоматически обновлять метаданные из Интернета:", "LabelBindToLocalNetworkAddress": "Привязка к адресу в локальной сети:", @@ -509,7 +491,6 @@ "LabelCustomCertificatePathHelp": "Путь к файлу PKCS #12, содержащему сертификат и \tзакрытый ключ для включения поддержки TLS на произвольном домене.", "LabelCustomCss": "Настраиваемые CSS:", "LabelCustomCssHelp": "Применяйте свои собственные настраиваемые стили в веб-интерфейсе.", - "LabelCustomDeviceDisplayName": "Отображаемое название:", "LabelCustomDeviceDisplayNameHelp": "Приведите произвольное имя для отображения или не заполняйте, чтобы использовать имя, выданное устройством.", "LabelCustomRating": "Произвольная возрастная категория:", "LabelDateAdded": "Дата добавления:", @@ -526,7 +507,6 @@ "LabelDiscNumber": "Номер диска:", "LabelDisplayLanguage": "Язык отображения:", "LabelDisplayLanguageHelp": "Перевод Jellyfin ведётся на постоянной основе.", - "LabelDisplayMissingEpisodesWithinSeasons": "Отображать отсутствующие эпизоды в пределах сезонов", "LabelDisplayMode": "Режим отображения:", "LabelDisplayName": "Отображаемое название:", "LabelDisplayOrder": "Порядок отображения:", @@ -681,7 +661,6 @@ "LabelPostProcessorArguments": "Аргументы командной строки постобработчика:", "LabelPostProcessorArgumentsHelp": "Используйте {path} как путь к записываемому файлу.", "LabelPreferredDisplayLanguage": "Выбор языка отображения:", - "LabelPreferredDisplayLanguageHelp": "Перевод Jellyfin ведётся на постоянной основе.", "LabelPreferredSubtitleLanguage": "Выбор языка субтитров:", "LabelProfileAudioCodecs": "Аудиокодеки:", "LabelProfileCodecs": "Кодеки:", @@ -741,7 +720,6 @@ "LabelSubtitleDownloaders": "Загрузчики субтитров:", "LabelSubtitleFormatHelp": "Пример: srt", "LabelSubtitlePlaybackMode": "Режим субтитров:", - "LabelSubtitles": "Субтитры", "LabelSupportedMediaTypes": "Поддерживаемые типы медиаданных:", "LabelTVHomeScreen": "Главная страница ТВ-режима:", "LabelTag": "Тег:", @@ -754,12 +732,9 @@ "LabelTimeLimitHours": "Временной лимит (час):", "LabelTitle": "Название:", "LabelTrackNumber": "Номер дорожки:", - "LabelTranscodingAudioCodec": "Аудио профиль:", - "LabelTranscodingContainer": "Контейнер:", "LabelTranscodingTempPathHelp": "Укажите произвольный путь для файлов перекодировки, служащие для клиентов. Оставьте пустым, чтобы использовать умолчания сервера.", "LabelTranscodingThreadCount": "Количество перекодирующих подпотоков:", "LabelTranscodingThreadCountHelp": "Выберите максимальное число подпотоков для использования при перекодировке. Сокращение числа подпотоков понижает нагрузку на ЦП, но преобразование может оказаться недостаточно быстрым для впечатления плавного воспроизведения.", - "LabelTranscodingVideoCodec": "Видео кодек:", "LabelTriggerType": "Тип триггера:", "LabelTunerIpAddress": "IP-адрес тюнера:", "LabelTunerType": "Тип тюнера:", @@ -870,7 +845,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "Чтобы конфигурировать данный плагин войдите непосредственно в свой локальный сервер.", "MessagePluginInstallDisclaimer": "Плагины, созданные членами сообщества являются отличным способом повышения эффективности с помощью дополнительных функций и компонентов. Перед установкой примите во внимание влияние, которое они могут оказать на сервер, например, длительные сканирования медиатеки, дополнительную фоновую обработку и снижение системной стабильности.", "MessageReenableUser": "См. ниже для разблокировки", - "MessageSettingsSaved": "Параметры сохранены.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Из вашей медиатеки будут изъяты следующие расположения медиаданных:", "MessageUnableToConnectToServer": "Мы не можем подсоединиться к выбранному серверу в данный момент. Убедитесь, что он запущен и повторите попытку.", "MessageUnsetContentHelp": "Содержание отображается как обычные папки. Для наилучших результатов используйте диспетчер метаданных, чтобы задать тип содержания подпапок.", @@ -936,7 +910,6 @@ "OptionArtist": "Исполнитель", "OptionAscending": "По возрастанию", "OptionAuto": "Авто", - "OptionAutomatic": "Авто", "OptionAutomaticallyGroupSeries": "Автоматически сливать вместе сериалы, которые разбросаны по нескольким папкам", "OptionAutomaticallyGroupSeriesHelp": "Части сериала, которые разбросаны по нескольким папкам данной медиатеки, будут автоматически слиты в единый сериал.", "OptionBlockBooks": "Книги", @@ -1180,18 +1153,14 @@ "TV": "ТВ", "TabAccess": "Доступ", "TabAdvanced": "Расширенное", - "TabAlbumArtists": "Исполнители альбома", "TabCatalog": "Каталог", "TabCodecs": "Кодеки", "TabContainers": "Контейнеры", "TabDashboard": "Панель", "TabDirectPlay": "Прямое воспроизведение", - "TabEpisodes": "Эпизоды", - "TabInfo": "Инфо", "TabLatest": "Новейшее", "TabLogs": "Журналы", "TabMusic": "Музыка", - "TabMusicVideos": "Муз. видео", "TabMyPlugins": "Мои плагины", "TabNetworks": "Телесети", "TabNfoSettings": "Параметры NFO", @@ -1202,12 +1171,10 @@ "TabProfile": "Профиль", "TabProfiles": "Профили", "TabResponses": "Отклики", - "TabResumeSettings": "Возобновление", "TabScheduledTasks": "Планировщик", "TabServer": "Сервер", "TabSettings": "Параметры", "TabStreaming": "Трансляция", - "TabTrailers": "Трейлеры", "TabUpcoming": "Ожидаемое", "Tags": "Теги", "TagsValue": "Теги: {0}", @@ -1290,7 +1257,6 @@ "HeaderFavoriteArtists": "Избранные исполнители", "HeaderFavoriteSongs": "Избранные композиции", "HeaderFavoriteVideos": "Избранные видео", - "HeaderHome": "Главное", "LabelAuthProvider": "Поставщик аутентификации:", "LabelPasswordResetProvider": "Поставщик сброса пароля:", "LabelServerName": "Имя сервера:", diff --git a/src/strings/sk.json b/src/strings/sk.json index 7aef8eb515..91a24fc399 100644 --- a/src/strings/sk.json +++ b/src/strings/sk.json @@ -35,13 +35,10 @@ "ButtonBack": "Späť", "ButtonCancel": "Zrušiť", "ButtonChangeServer": "Zmeniť server", - "ButtonEdit": "Upraviť", - "ButtonEditImages": "Upraviť obrázky", "ButtonEditOtherUserPreferences": "Upraviť používateľský profil, obrázok a osobné preferencie.", "ButtonForgotPassword": "Zabudnuté heslo", "ButtonFullscreen": "Celá obrazovka", "ButtonGotIt": "Rozumiem", - "ButtonHome": "Domov", "ButtonManualLogin": "Manuálne prihlásenie", "ButtonMore": "Viac", "ButtonNetwork": "Sieť", @@ -49,11 +46,9 @@ "ButtonOpen": "Otvoriť", "ButtonParentalControl": "Rodičovská kontrola", "ButtonPause": "Pozastaviť", - "ButtonPlay": "Prehrať", "ButtonPreviousTrack": "Predchádzajúca stopa", "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Príručka rýchleho štartu", - "ButtonRefresh": "Obnoviť", "ButtonRefreshGuideData": "Obnoviť údaje sprievodcu", "ButtonRemove": "Odstrániť", "ButtonRename": "Premenovať", @@ -70,7 +65,6 @@ "ButtonSignIn": "Prihlásiť sa", "ButtonSignOut": "Odhlásiť sa", "ButtonSubmit": "Potvrdiť", - "ButtonSubtitles": "Titulky", "ButtonTrailer": "Trailer", "ButtonUninstall": "Odinštalovať", "ButtonWebsite": "Webové stránky", @@ -157,12 +151,10 @@ "HeaderActivity": "Aktivita", "HeaderAddToCollection": "Pridať do kolekcie", "HeaderAddUpdateImage": "Pridať/aktualizovať obrázok", - "HeaderAddUser": "Pridať používateľa", "HeaderApiKey": "Kľúč API", "HeaderApiKeys": "Kľúče API", "HeaderAudioBooks": "Audio knihy", "HeaderAudioSettings": "Nastavenia zvuku", - "HeaderBooks": "Knihy", "HeaderCastAndCrew": "Obsadenie a štáb", "HeaderChapterImages": "Obrázky kapitol", "HeaderConfigureRemoteAccess": "Nastaviť vzdialený prístup", @@ -182,11 +174,9 @@ "HeaderDevices": "Zariadenia", "HeaderEasyPinCode": "Jednoduchý PIN kód", "HeaderEditImages": "Upraviť obrázky", - "HeaderEpisodes": "Epizódy", "HeaderError": "Chyba", "HeaderFetchImages": "Načítať obrázky:", "HeaderForKids": "Pre deti", - "HeaderForgotPassword": "Zabudnuté heslo", "HeaderFrequentlyPlayed": "Často hrané", "HeaderHttpHeaders": "HTTP hlavičky", "HeaderIdentification": "Identifikácia", @@ -206,7 +196,6 @@ "HeaderLibraryOrder": "Poradie knižnice", "HeaderLibrarySettings": "Nastavenia knižnice", "HeaderMedia": "Médiá", - "HeaderMediaInfo": "Informácie o médiu", "HeaderMetadataSettings": "Nastavenia metadát", "HeaderMoreLikeThis": "Podobné položky", "HeaderMusicQuality": "Kvalita hudby", @@ -312,7 +301,6 @@ "LabelDeviceDescription": "Popis zariadenia", "LabelDiscNumber": "Číslo disku:", "LabelDisplayLanguage": "Jazyk rozhrania:", - "LabelDisplayMissingEpisodesWithinSeasons": "Zobraziť chýbajúce epizódy v sériách", "LabelDisplayOrder": "Poradie zobrazenia:", "LabelDownloadLanguages": "Prebrať jazyky:", "LabelDropImageHere": "Presuňte obrázok sem.", @@ -428,7 +416,6 @@ "LabelStartWhenPossible": "Spustiť akonáhle je možné:", "LabelStatus": "Stav:", "LabelSubtitleFormatHelp": "Príklad: srt", - "LabelSubtitles": "Titulky", "LabelSupportedMediaTypes": "Podporované typy médií:", "LabelTextBackgroundColor": "Farba pozadia textu:", "LabelTextColor": "Farba textu:", @@ -438,9 +425,6 @@ "LabelTimeLimitHours": "Časový limit (v hodinách):", "LabelTitle": "Názov:", "LabelTrackNumber": "Číslo stopy:", - "LabelTranscodingAudioCodec": "Audio kodek:", - "LabelTranscodingContainer": "Obal:", - "LabelTranscodingVideoCodec": "Video kodek:", "LabelTunerIpAddress": "IP adresa tunera:", "LabelTunerType": "Typ tunera:", "LabelType": "Typ:", @@ -504,7 +488,6 @@ "MessageNothingHere": "Nič tu nie je.", "MessagePleaseEnsureInternetMetadata": "Prosím, uistite sa, že sťahovanie internetových metadát je povolené.", "MessagePleaseWait": "Prosím počkajte. Toto môže chvíľu trvať.", - "MessageSettingsSaved": "Nastavenia uložené.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Nasledujúce umiestnenia médií budú odobraté z vašej knižnice:", "MessageYouHaveVersionInstalled": "Teraz máte nainštalovanú verziu {0}.", "Metadata": "Metadáta", @@ -556,7 +539,6 @@ "OptionArtist": "Umelec", "OptionAscending": "Vzostupne", "OptionAuto": "Automaticky", - "OptionAutomatic": "Automaticky", "OptionAutomaticallyGroupSeries": "Automaticky zlúčiť série, ktoré sú uložené v rôznych priečinkoch", "OptionBlockBooks": "Knihy", "OptionBlockMovies": "Filmy", @@ -720,10 +702,8 @@ "TabCodecs": "Kodeky", "TabContainers": "Kontajnery", "TabDashboard": "Dashboard", - "TabEpisodes": "Epizódy", "TabLatest": "Najnovšie", "TabMusic": "Hudba", - "TabMusicVideos": "Hudobné videá", "TabMyPlugins": "Moje zásuvné moduly", "TabNetworks": "Siete", "TabNfoSettings": "NFO nastavenia", @@ -734,10 +714,8 @@ "TabProfile": "Profil", "TabProfiles": "Profily", "TabResponses": "Odpovede", - "TabResumeSettings": "Pokračovať", "TabScheduledTasks": "Naplánované úlohy", "TabSettings": "Nastavenia", - "TabTrailers": "Trailery", "TabUpcoming": "Nadchádzajúce", "TellUsAboutYourself": "Povedzte nám niečo o sebe", "ThisWizardWillGuideYou": "Tento sprievodca Vám pomôže prejsť inštalačným procesom. Pre začatie zvoľte preferovaný jazyk.", @@ -795,9 +773,7 @@ "Aired": "Odvysielané", "Alerts": "Upozornenia", "AllowOnTheFlySubtitleExtraction": "Povoliť extrahovanie titulkov za behu", - "ButtonFilter": "Filter", "ButtonInfo": "Info", - "ButtonOff": "Vypnúť", "ButtonOk": "Ok", "ButtonStart": "Štart", "ButtonStop": "Zastaviť", @@ -860,14 +836,11 @@ "EnableNextVideoInfoOverlay": "Zobraziť informácie o nasledujúcom videu počas prehrávania", "EnableNextVideoInfoOverlayHelp": "Na konci videa sa zobrazia informácie o nasledujúcom videu v aktuálnom playliste.", "ErrorAddingMediaPathToVirtualFolder": "Pri pridávaní cesty k mediám nastala chyba. Uistite sa prosím, že cesta je platná, a že Jellyfin má prístup k umiestneniu.", - "HeaderAddScheduledTaskTrigger": "Pridať spúšťač", "HeaderAddToPlaylist": "Pridať do playlistu", "HeaderAlert": "Upozornenie", - "HeaderCastCrew": "Obsadenie a štáb", "HeaderDownloadSync": "Sťahovanie a synchronizácia", "HeaderExternalIds": "Externé ID:", "HeaderFeatureAccess": "Prístup k funkciám", - "HeaderHome": "Domov", "HeaderLoginFailure": "Prihlásenie zlyhalo", "HeaderMediaFolders": "Priečinky médií", "HeaderRemoveMediaFolder": "Odstrániť priečinok médií", @@ -879,7 +852,6 @@ "HeaderVideoType": "Typ videa", "HeaderVideoTypes": "Typy videí", "LabelAirsBeforeSeason": "Vysielané pred sériou:", - "LabelAudio": "Zvuk", "LabelBlockContentWithTags": "Blokovať položky s tagmi:", "LabelDisplayMode": "Režim zobrazenia:", "LabelDisplaySpecialsWithinSeasons": "Zobraziť špeciálne epizódy v sérií, v ktorej boli odvysielané", @@ -939,7 +911,6 @@ "Uniform": "Jednotné", "ThemeVideos": "Tematické videá", "ThemeSongs": "Tématická hudba", - "TabInfo": "Info", "TV": "TV", "SkipEpisodesAlreadyInMyLibraryHelp": "Epizódy budú porovnané na základe čísla série a epizódy, ak sú k dispozícii.", "SimultaneousConnectionLimitHelp": "Maximálny povolený počet súčasných streamov. Zadajte 0 pre vypnutie obmedzenia.", @@ -963,8 +934,6 @@ "HeaderEnabledFields": "Povolené polia", "HeaderAllowMediaDeletionFrom": "Povoliť zmazanie médií z", "HeaderAdmin": "Admin", - "EnableThemeVideos": "Videá úvodných zvučiek", - "EnableThemeSongs": "Úvodné zvučky", "EnablePhotosHelp": "Obrázky budú detekované a zobrazené spolu s ostatnými multimediálnymi súbormi.", "EnableColorCodedBackgrounds": "Farebne označené pozadia", "DropShadow": "Vrhať tieň", @@ -985,7 +954,6 @@ "LabelDefaultUserHelp": "Určuje, ktorá používateľská knižnica by mala byť zobrazená na pripojenom zariadení. Toto nastavenie môže byť prepísané pomocou profilov pre každé zariadenie.", "LabelDateAddedBehaviorHelp": "Pokiaľ majú metadáta hodnotu, bude vždy použitá pred niektorou z týchto možností.", "LabelCustomDeviceDisplayNameHelp": "Nahradte vlastným názvom alebo ponechajte prázdne, aby názov určilo zariadenie.", - "LabelCustomDeviceDisplayName": "Zobrazený názov:", "LabelCache": "Cache:", "LabelBurnSubtitles": "Vypáliť titulky:", "LabelBitrate": "Dátový tok:", @@ -1115,7 +1083,6 @@ "Thumb": "Náhľad", "TheseSettingsAffectSubtitlesOnThisDevice": "Toto nastavenie ovplyvní titulky na tomto zariadení", "TabNetworking": "Sieť", - "TabAlbumArtists": "Umelec albumu", "SystemDlnaProfilesHelp": "Systémové profily sú len na čítanie. Zmeny systémových profilov budú uložené do nového vlastné profilu.", "SubtitleOffset": "Odchýlka titulkov", "SubtitleDownloadersHelp": "Povolí a ohodnotí vaše preferované sťahovače titulkov podľa priority.", @@ -1277,7 +1244,6 @@ "LabelProtocolInfoHelp": "Hodnota, ktorá sa použije pri odpovedi na požiadavky GetProtocolInfo z tohoto zariadenia.", "LabelProfileContainersHelp": "Oddelené čiarkou. Pokiaľ zostane pole prázdne, aplikuje sa na všetky kontajnery.", "LabelProfileCodecsHelp": "Oddelené čiarkou. Pokiaľ zostane pole prázdne, aplikuje sa na všetky kodeky.", - "LabelPreferredDisplayLanguageHelp": "Preklad Jellyfinu je v neustálom vývoji.", "LabelPostProcessorArgumentsHelp": "Použi {path} ako cestu k nahrávanému súboru.", "LabelPostProcessorArguments": "Argumenty príkazového riadku pre následné spracovanie:", "LabelPostProcessor": "Aplikácia pre následné spracovanie:", diff --git a/src/strings/sl-si.json b/src/strings/sl-si.json index f9588653ab..ca1a5d6648 100644 --- a/src/strings/sl-si.json +++ b/src/strings/sl-si.json @@ -5,7 +5,6 @@ "ButtonSignOut": "Odjava", "FolderTypeTvShows": "TV", "HeaderAddToCollection": "Dodaj v Zbirko", - "HeaderAddUser": "Dodaj Uporabnika", "HeaderEasyPinCode": "Enostavna Pin koda", "HeaderFrequentlyPlayed": "Pogosto Predvajano", "HeaderPaths": "Poti", @@ -38,7 +37,6 @@ "ParentalRating": "Ocena za starše", "Settings": "Nastavitve", "TabAccess": "Dostop", - "TabAlbumArtists": "Izvajalci Albumov", "TabCatalog": "Katalog", "TabLatest": "Zadnje", "TabMusic": "Glasba", @@ -125,30 +123,23 @@ "ButtonBack": "Nazaj", "ButtonCancel": "Prekliči", "ButtonChangeServer": "Spremeni strežnik", - "ButtonEdit": "Uredi", - "ButtonEditImages": "Uredi slike", "ButtonEditOtherUserPreferences": "Uredi profil tega uporabnika, slike in osebne nastavitve.", - "ButtonFilter": "Filter", "ButtonForgotPassword": "Pozabljeno geslo", "ButtonFullscreen": "Polni zaslon", "ButtonGotIt": "Razumem", "ButtonGuide": "Vodič", - "ButtonHome": "Domov", "ButtonInfo": "Info", "ButtonLibraryAccess": "Dostop do knjižnic", "ButtonManualLogin": "Ročna prijava", "ButtonMore": "Več", "ButtonNetwork": "Omrežje", "ButtonNextTrack": "Naslednja skladba", - "ButtonOff": "Izključi", "ButtonOk": "Ok", "ButtonOpen": "Odpri", "ButtonParentalControl": "Starševski nadzor", "ButtonPause": "Premor", - "ButtonPlay": "Predvajaj", "ButtonPreviousTrack": "Prejšnja skladba", "ButtonProfile": "Profil", - "ButtonRefresh": "Osveži", "ButtonRefreshGuideData": "Osveži TV vodič", "ButtonRemove": "Odstrani", "ButtonRename": "Preimenuj", @@ -166,7 +157,6 @@ "ButtonSignIn": "Prijava", "ButtonStart": "Začetek", "ButtonStop": "Stop", - "ButtonSubtitles": "Podnapisi", "ButtonTrailer": "Napovednik", "ButtonUninstall": "Odstrani", "ButtonWebsite": "Spletna stran", @@ -293,7 +283,6 @@ "HeaderMusicQuality": "Kvaliteta glasbe", "HeaderMoreLikeThis": "Podobno", "HeaderMetadataSettings": "Nastavitve metapodatkov", - "HeaderMediaInfo": "Informacije o predstavnosti", "HeaderMediaFolders": "Mape predstavnosti", "HeaderMedia": "Predstavnost", "HeaderLoginFailure": "Neuspešna prijava", @@ -317,9 +306,7 @@ "HeaderIdentifyItemHelp": "Vnesite vsaj en kriterij iskanja. Odstranite kriterije za več rezultatov.", "HeaderIdentificationCriteriaHelp": "Vnesite vsaj en kriterij za identifikacijo.", "HeaderIdentification": "Identifikacija", - "HeaderHome": "Domov", "HeaderGuideProviders": "Ponudniki TV vodiča", - "HeaderForgotPassword": "Pozabljeno geslo", "HeaderForKids": "Za otroke", "HeaderFetcherSettings": "Nastavitve pridobivanja", "HeaderFetchImages": "Pridobi slike:", @@ -328,7 +315,6 @@ "HeaderFavoriteBooks": "Priljubljene knjige", "HeaderExternalIds": "Zunanji ID-ji:", "HeaderError": "Napaka", - "HeaderEpisodes": "Epizode", "HeaderEnabledFieldsHelp": "Odznači polja in s tem prepreči njihovo urejanje.", "HeaderEnabledFields": "Omogočena polja", "HeaderEditImages": "Uredi slike", @@ -357,11 +343,9 @@ "HeaderCodecProfile": "Profil kodeka", "HeaderChapterImages": "Slike poglavij", "HeaderChannelAccess": "Dostop kanalov", - "HeaderCastCrew": "Igralci in ekipa", "HeaderCastAndCrew": "Igralci in ekipa", "HeaderCancelSeries": "Prekini serijo", "HeaderCancelRecording": "Prekini snemanje", - "HeaderBooks": "Knjige", "HeaderAudioSettings": "Nastavitve zvoka", "HeaderAudioBooks": "Zvočne knjige", "HeaderAppearsOn": "Pojavi se", @@ -375,7 +359,6 @@ "HeaderAdditionalParts": "Dodatni deli", "HeaderAddUpdateImage": "Dodaj/posodobi sliko", "HeaderAddToPlaylist": "Dodaj na seznam predvajanja", - "HeaderAddScheduledTaskTrigger": "Dodaj sprožilec", "HeaderActivity": "Aktivnost", "HeaderActiveRecordings": "Aktivna snemanja", "HeaderActiveDevices": "Aktivne naprave", @@ -431,9 +414,7 @@ "EndsAtValue": "Konec ob {0}", "Ended": "Končano", "EnableThemeVideosHelp": "Predvajaj tematske videe v ozadju med brskanjem knjižnice.", - "EnableThemeVideos": "Tematski videi", "EnableThemeSongsHelp": "Predvajaj tematske pesmi v ozadju med brskanjem knjižnice.", - "EnableThemeSongs": "Glavne pesmi", "EnableStreamLoopingHelp": "Omogoči za prenose v živo ki vsebujejo zgolj nekaj sekund podatkov in jih je treba neprestano znova zahtevati. Če to ni potrebno lahko omogočanje povzroči težave.", "EnablePhotosHelp": "Fotografije bodo zaznane in prikazane skupaj z drugo predstavnostjo.", "EnablePhotos": "Prikaži fotografije", @@ -516,7 +497,6 @@ "LabelAppName": "Ime aplikacije", "LabelAppNameExample": "Primer: Sickbeard, Sonarr", "LabelArtistsHelp": "Loči več izvajalcev s podpičjem.", - "LabelAudio": "Zvok", "LabelAudioBitrate": "Bitna hitrost zvoka:", "LabelAudioChannels": "Kanali zvoka:", "LabelAudioCodec": "Zvočni kodek:", @@ -547,7 +527,6 @@ "LabelCustomCertificatePathHelp": "Pot do PKCS #12 datoteke, ki vsebuje certifikat in zasebni ključ, za omogočanje TLS povezave na domenah po meri.", "LabelCustomCss": "CSS po meri:", "LabelCustomCssHelp": "Določite vaš lasten slog spletnega vmesnika.", - "LabelCustomDeviceDisplayName": "Prikazano ime:", "LabelCustomDeviceDisplayNameHelp": "Določi prikazano ime naprave. Pusti prazno za uporabo imena kot ga sporoči naprava sama.", "LabelDefaultScreen": "Privzeti zaslon:", "LabelDateAdded": "Datum dodajanja:", @@ -566,7 +545,6 @@ "LabelCollection": "Zbirka:", "LabelCustomCertificatePath": "Lokacija SSL certifikata po meri:", "LabelDidlMode": "DIDL način:", - "LabelDisplayMissingEpisodesWithinSeasons": "Prikaži manjkajoče epizode znotraj sezon", "LabelDay": "Dan:", "LabelDeathDate": "Datum smrti:", "LabelBitrate": "Bitna hitrost:", @@ -848,7 +826,6 @@ "LabelProtocol": "Protokol:", "LabelProfileVideoCodecs": "Video kodeki:", "LabelProfileCodecsHelp": "Ločeno z vejico. Če pustite prazno, velja za vse kodeke.", - "LabelPreferredDisplayLanguageHelp": "Prevajanje Jellyfin je projekt v teku.", "LabelPleaseRestart": "Spremembe bodo začele veljati po ročni osvežitvi spletnega vmesnika.", "LabelPlaylist": "Seznam predvajanja:", "LabelPlaceOfBirth": "Kraj rojstva:", @@ -884,7 +861,6 @@ "OptionArtist": "Izvajalec", "OptionAllowUserToManageServer": "Dovoli temu uporabniku upravljanje strežnika", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Naslednja mesta predstavnosti bodo odstranjena iz vaše knjižnice:", - "MessageSettingsSaved": "Nastavitve so bile shranjene.", "MessagePluginInstallDisclaimer": "Dodatki ustvarjeni s strani članov Jellyfin skupnosti so odličen način za izboljšanje vaše izkušnje z Jellyfin z dodatnimi funkcijami in prednostmi. Preden namestite dodatke se zavedajte, da imajo lahko ti različne vplive na vaš Jellyfin strežnik, kot na primer počasnejše preiskovanje knjižnic, dodatna obdelava podatkov v ozadju in zmanjšana stabilnost sistema.", "MessagePleaseWait": "Prosimo, počakajte. To lahko traja nekaj minut.", "MessagePleaseEnsureInternetMetadata": "Prosimo poskrbite, da je prenašanje spletnih metapodatkov omogočeno.", @@ -1067,21 +1043,17 @@ "LabelSource": "Vir:", "LabelSkipIfGraphicalSubsPresentHelp": "Ohranjanje besedilnih različic podnapisov omogoča učinkovitejše predvajanje in zmanjša potrebo po prekodiranju.", "LabelTriggerType": "Tip sprožilca:", - "LabelTranscodingVideoCodec": "Video kodek:", "LabelTranscodingProgress": "Napredek prekodiranja:", "LabelTranscodingFramerate": "Hitrost prekodiranja:", "LabelTranscodes": "Prekodiranje:", "LabelTranscodingTempPathHelp": "Določite pot po meri za datoteke prekodiranja. Pustite prazno za uporabo privzete lokacije.", "LabelTranscodePath": "Pot prekodiranja:", - "LabelTranscodingContainer": "Kontejner:", - "LabelTranscodingAudioCodec": "Zvočni kodek:", "LabelTrackNumber": "Številka skladbe:", "LabelTime": "Čas:", "LabelTextColor": "Barva besedila:", "LabelTextBackgroundColor": "Barva ozadja besedila:", "LabelTag": "Oznaka:", "LabelSupportedMediaTypes": "Podprti tipi predstavnosti:", - "LabelSubtitles": "Podnapisi", "LabelSubtitlePlaybackMode": "Način podnapisov:", "LabelSubtitleFormatHelp": "Primer: srt", "LabelSubtitleDownloaders": "Pridobivanje podnapisov:", @@ -1112,7 +1084,6 @@ "Trailers": "Napovedniki", "TitleHardwareAcceleration": "Strojno pospeševanje", "Thursday": "Četrtek", - "TabTrailers": "Napovedniki", "ClientSettings": "Nastavitve odjemalca", "ButtonTogglePlaylist": "Seznam predvajanja", "Artist": "Izvajalec", @@ -1260,7 +1231,6 @@ "OptionDownloadBoxImage": "Ovitek", "OptionDownloadBannerImage": "Pasica", "OptionDownloadBackImage": "Nazaj", - "OptionAutomatic": "Samodejno", "OptionAuto": "Samodejno", "NextUp": "Sledi", "Next": "Naslednji", @@ -1286,8 +1256,6 @@ "LabelWeb": "Splet:", "LabelLineup": "Postava:", "BoxSet": "Komplet", - "TabInfo": "Informacije", - "TabEpisodes": "Epizode", "TabDirectPlay": "Neposredno predvajanje", "TabCodecs": "Kodeki", "OptionRegex": "Regex", @@ -1298,7 +1266,6 @@ "TabSettings": "Nastavitve", "TabServer": "Strežnik", "TabScheduledTasks": "Načrtovana opravila", - "TabResumeSettings": "Nadaljuj", "HeaderUninstallPlugin": "Odstrani dodatek", "UninstallPluginConfirmation": "Ali ste prepričan, da želite odstraniti {0}?", "ServerRestartNeededAfterPluginInstall": "Po namestitvi dodatka bo potreben ponoven zagon jellyfin strežnika.", @@ -1307,7 +1274,6 @@ "TabOther": "Ostalo", "TabNotifications": "Obvestila", "TabNfoSettings": "Nastavitve NFO", - "TabMusicVideos": "Videospoti", "OptionForceRemoteSourceTranscoding": "Vsili prekodiranje oddaljenih virov predstavnosti (na primer TV v živo)", "Off": "Izključeno", "Normal": "Normalno", diff --git a/src/strings/sr.json b/src/strings/sr.json index 22e2343e5e..90cbd0d9df 100644 --- a/src/strings/sr.json +++ b/src/strings/sr.json @@ -32,19 +32,16 @@ "ButtonParentalControl": "Родитељска контрола", "ButtonOpen": "Отвори", "ButtonOk": "Ок", - "ButtonOff": "Искључи", "ButtonNextTrack": "Следећа нумера", "ButtonNetwork": "Мрежа", "ButtonMore": "Више", "ButtonManualLogin": "Ручни логин", "ButtonLibraryAccess": "Приступ библиотеци", "ButtonInfo": "Информације", - "ButtonHome": "Почетна страна", "ButtonGuide": "Водич", "ButtonGotIt": "У реду", "ButtonFullscreen": "Пун екран", "ButtonForgotPassword": "Заборављена шифра", - "ButtonFilter": "Филтер", "ButtonChangeServer": "Промени Сервер", "ButtonCancel": "Откажи", "ButtonBack": "Назад", @@ -115,7 +112,6 @@ "ButtonWebsite": "Веб сајт", "ButtonUninstall": "Деинсталирај", "ButtonTrailer": "Трејлер", - "ButtonSubtitles": "Титлови", "ButtonSubmit": "Пошаљите", "ButtonSplit": "Подели", "ButtonStop": "Заустави", @@ -137,14 +133,10 @@ "ButtonRename": "Преименуј", "ButtonRemove": "Уклони", "ButtonRefreshGuideData": "Освежи податке водича", - "ButtonRefresh": "Освежи", "ButtonQuickStartGuide": "Кратки водич за почетак", "ButtonProfile": "Профил", "ButtonPreviousTrack": "Претходна нумера", - "ButtonPlay": "Пусти", "ButtonEditOtherUserPreferences": "Уредите профил корисника, слику и личне поставке.", - "ButtonEditImages": "Уреди слике", - "ButtonEdit": "Уреди", "BurnSubtitlesHelp": "Одређује да ли сервер треба да кодира титлове приликом транскодирања видео записа. Избегавање тога увелико ће побољшати перформансе. Изаберите Аутоматски да бисте снимили формате засноване на слици (VOBSUB, PGS, SUB, IDX) и одређене ASS или SSA титлове.", "BoxSet": "Бокс сет", "BookLibraryHelp": "Подржани су аудио и текстуалне књиге. Прегледајте {0} водич за именовање књига {1}.", diff --git a/src/strings/sv.json b/src/strings/sv.json index 50ad99be59..c5f82a59d7 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -54,29 +54,22 @@ "ButtonBack": "Föregående", "ButtonCancel": "Avbryt", "ButtonChangeServer": "Byt server", - "ButtonEdit": "Ändra", - "ButtonEditImages": "Ändra bilder", "ButtonEditOtherUserPreferences": "Ändra den här användarens profil, bild och personliga inställningar.", - "ButtonFilter": "Filtrera", "ButtonForgotPassword": "Glömt Lösenord", "ButtonFullscreen": "Fullskärm", "ButtonGotIt": "Ok", - "ButtonHome": "Hem", "ButtonLibraryAccess": "Biblioteksåtkomst", "ButtonManualLogin": "Manuell inloggning", "ButtonMore": "Mer", "ButtonNetwork": "Nätverk", "ButtonNextTrack": "Nästa spår", - "ButtonOff": "Av", "ButtonOk": "OK", "ButtonOpen": "Öppna", "ButtonParentalControl": "Föräldralås", "ButtonPause": "Paus", - "ButtonPlay": "Spela upp", "ButtonPreviousTrack": "Föregående spår", "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Snabbstartguide", - "ButtonRefresh": "Uppdatera", "ButtonRefreshGuideData": "Uppdatera programguiden", "ButtonRemove": "Ta bort", "ButtonRename": "Ändra namn", @@ -96,7 +89,6 @@ "ButtonSignOut": "Logga ut", "ButtonStop": "Stopp", "ButtonSubmit": "Bekräfta", - "ButtonSubtitles": "Undertexter", "ButtonUninstall": "Avinstallera", "ButtonWebsite": "Hemsida", "CancelRecording": "Avbryt inspelning", @@ -175,9 +167,7 @@ "EnableNextVideoInfoOverlayHelp": "Vid slutet av en video, visa information om nästföljande video i spellistan.", "EnablePhotos": "Visa foton", "EnablePhotosHelp": "Bilder kommer upptäckas och visas tillsammans med andra mediefiler.", - "EnableThemeSongs": "Signaturmelodi", "EnableThemeSongsHelp": "Spela ledmotiv i bakgrunden vid bläddring i biblioteket.", - "EnableThemeVideos": "Tema-videor", "EnableThemeVideosHelp": "Spela tema-videos i bakgrunden vid bläddring i biblioteket.", "Ended": "Avslutad", "EndsAtValue": "Slutar vid: {0}", @@ -226,11 +216,9 @@ "HeaderActiveDevices": "Aktiva enheter", "HeaderActiveRecordings": "Pågående inspelningar", "HeaderActivity": "Aktivitet", - "HeaderAddScheduledTaskTrigger": "Lägg till utlösare", "HeaderAddToCollection": "Lägg till samling", "HeaderAddToPlaylist": "Lägg till i Spellista", "HeaderAddUpdateImage": "Lägg till/uppdatera bild", - "HeaderAddUser": "Lägg till användare", "HeaderAdditionalParts": "Ytterligare delar", "HeaderAlbumArtists": "Albumartister", "HeaderAlert": "Varning", @@ -241,11 +229,9 @@ "HeaderAudioBooks": "Ljudböcker", "HeaderAudioSettings": "Ljudinställningar", "HeaderBlockItemsWithNoRating": "Blockera innehåll med ingen eller okänd åldersgräns:", - "HeaderBooks": "Böcker", "HeaderCancelRecording": "Avbryt inspelning", "HeaderCancelSeries": "Avbryt serie", "HeaderCastAndCrew": "Medverkande", - "HeaderCastCrew": "Rollista & besättning", "HeaderChannelAccess": "Kanalåtkomst", "HeaderChapterImages": "Kapitelbilder", "HeaderCodecProfile": "Profil för videokodning", @@ -279,13 +265,11 @@ "HeaderEditImages": "Redigera bilder", "HeaderEnabledFields": "Aktiverade fält", "HeaderEnabledFieldsHelp": "Bocka ur ett fält för att låsa det och undvik att dess data ändras.", - "HeaderEpisodes": "Avsnitt", "HeaderError": "Fel", "HeaderExternalIds": "Externa ID:", "HeaderFeatureAccess": "Tillgång till funktioner", "HeaderFetchImages": "Hämta bilder:", "HeaderForKids": "För barn", - "HeaderForgotPassword": "Glömt Lösenord", "HeaderFrequentlyPlayed": "Ofta spelade", "HeaderGuideProviders": "Källor för programguide", "HeaderHttpHeaders": "HTTP headers", @@ -311,7 +295,6 @@ "HeaderLibrarySettings": "Biblioteksinställningar", "HeaderLoginFailure": "Misslyckad inloggning", "HeaderMediaFolders": "Mediamappar", - "HeaderMediaInfo": "Medieinformation", "HeaderMetadataSettings": "Metadatainställningar", "HeaderMoreLikeThis": "Mer som denna", "HeaderMusicQuality": "Musikkvalitet", @@ -435,7 +418,6 @@ "LabelAppNameExample": "Exempel: Sickbeard, Sonarr", "LabelArtists": "Artister:", "LabelArtistsHelp": "Separera med vid flera ;", - "LabelAudio": "Ljud", "LabelAudioLanguagePreference": "Önskat ljudspråk:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Uppdatera metadata automatiskt ifrån internet:", "LabelBindToLocalNetworkAddress": "Knyt till lokal nätverksadress:", @@ -462,7 +444,6 @@ "LabelCustomCertificatePathHelp": "Lägg upp ditt eget SSL-certifkat i .pfx-format.", "LabelCustomCss": "Egen CSS-stil:", "LabelCustomCssHelp": "Använd din egen CSS-stil för webbgränssnittet.", - "LabelCustomDeviceDisplayName": "Visningsnamn:", "LabelCustomDeviceDisplayNameHelp": "Ange ett anpassat enhetsnamn. Lämna blankt för att använda det namn enheten själv rapporterar.", "LabelCustomRating": "Anpassad åldersgräns:", "LabelDateAdded": "Inlagd den:", @@ -479,7 +460,6 @@ "LabelDiscNumber": "Skivnummer:", "LabelDisplayLanguage": "Visningsspråk:", "LabelDisplayLanguageHelp": "Att översätta Jellyfin är ett pågående projekt.", - "LabelDisplayMissingEpisodesWithinSeasons": "Visa saknade avsnitt i säsonger", "LabelDisplayMode": "Visningsläge:", "LabelDisplayName": "Visningsnamn:", "LabelDisplayOrder": "Visningsordning:", @@ -630,7 +610,6 @@ "LabelPlayDefaultAudioTrack": "Använd det förvalda ljudspåret oavsett språk", "LabelPlaylist": "Spellista:", "LabelPreferredDisplayLanguage": "Föredraget visningsspråk:", - "LabelPreferredDisplayLanguageHelp": "Att översätta Jellyfin är ett pågående projekt.", "LabelPreferredSubtitleLanguage": "Önskat språk för undertexter:", "LabelProfileAudioCodecs": "Kodning av ljud:", "LabelProfileCodecs": "Videokodningar:", @@ -689,7 +668,6 @@ "LabelSubtitleDownloaders": "Undertextskällor:", "LabelSubtitleFormatHelp": "Exempel: srt", "LabelSubtitlePlaybackMode": "Undertextläge:", - "LabelSubtitles": "Undertexter", "LabelSupportedMediaTypes": "Mediaformat som stöds:", "LabelTVHomeScreen": "Hemskärm i TV-läge:", "LabelTag": "Etikett:", @@ -702,12 +680,9 @@ "LabelTimeLimitHours": "Tidsbegränsning (timmar):", "LabelTitle": "Titel:", "LabelTrackNumber": "Spår nr:", - "LabelTranscodingAudioCodec": "Ljudkodning:", - "LabelTranscodingContainer": "Behållare:", "LabelTranscodingTempPathHelp": "Ange en egen sökväg där omkodningar skall sparas för klienter. Lämna blankt för att använda förvald plats.", "LabelTranscodingThreadCount": "Trådar för omkodning:", "LabelTranscodingThreadCountHelp": "Välj maximala antalet trådar som ska användas vid omkodning. Att minska antalet trådar sänker cpu-belastningan men ökar även risken att omkodning inte kan ske snabbt nog för felfri uppspelning.", - "LabelTranscodingVideoCodec": "Videokodning:", "LabelTriggerType": "Typ av utlösare:", "LabelTunerIpAddress": "IP-adress till TV-mottagare:", "LabelTunerType": "Typ av TV-mottagare:", @@ -805,7 +780,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "Logga in på din din lokala Jellyfin Server för att konfigurera det här tillägget.", "MessagePluginInstallDisclaimer": "Tillägg skapade av Jellyfin-användare är ett bra sätt att förbättra din Jellyfin-upplevelse med ytterligare funktionalitet. Observera att detta kan påverka din Jellyfin-server så som längre tidsåtgång för biblioteksskanningar, ytterligare bakgrundsprocesser och minskad systemstabilitet.", "MessageReenableUser": "Se nedan för att aktivera igen", - "MessageSettingsSaved": "Inställningarna har sparats.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Följande mediaplatser kommer att tas bort från ditt bibliotek:", "MessageUnableToConnectToServer": "Vi kunde inte upprätta anslutning till vald server just nu. Försäkra dig om att den är påslagen och försök igen.", "MessageUnsetContentHelp": "Innehåll kommer visas som enkla mappar. För bästa resultat, använd en metadata-hanterare för att ställa in typ av innehåll för undermapparna.", @@ -1089,17 +1063,14 @@ "Sync": "Synk", "SystemDlnaProfilesHelp": "Systemprofiler är skrivskyddade. Ändringar av en systemprofil resulterar att en ny anpassad profil skapas.", "TabAdvanced": "Avancerat", - "TabAlbumArtists": "Albumartister", "TabCatalog": "Katalog", "TabCodecs": "Kodningsformat", "TabContainers": "Behållare", "TabDashboard": "Kontrollpanel", "TabDirectPlay": "Direktuppspelning", - "TabEpisodes": "Avsnitt", "TabLatest": "Nytillkommet", "TabLogs": "Loggfiler", "TabMusic": "Musik", - "TabMusicVideos": "Musikvideor", "TabMyPlugins": "Mina tillägg", "TabNetworks": "TV-bolag", "TabNfoSettings": "NFO-inställingar", @@ -1110,7 +1081,6 @@ "TabProfile": "Profil", "TabProfiles": "Profiler", "TabResponses": "Svar", - "TabResumeSettings": "Återuppta", "TabScheduledTasks": "Schemalagda aktiviteter", "TabSettings": "Inställningar", "TabStreaming": "Strömning", @@ -1208,7 +1178,6 @@ "AllowMediaConversion": "Tillåt media konvertering", "Alerts": "Alarm", "HeaderMedia": "Media", - "HeaderHome": "Hem", "HeaderFavoriteVideos": "Favoritvideor", "HeaderFavoriteSongs": "Favoritlåtar", "HeaderFavoriteArtists": "Favoritartister", @@ -1273,10 +1242,8 @@ "UserAgentHelp": "Stöd en egen user-agent HTTP rubrik.", "Uniform": "Enhetlig", "Trailers": "Trailers", - "TabTrailers": "Trailers", "TabServer": "Server", "TabNetworking": "Nätverk", - "TabInfo": "Info", "TabAccess": "Tillgång", "TV": "TV", "SubtitleOffset": "Undertext justering", @@ -1310,7 +1277,6 @@ "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", "OptionBlockTrailers": "Trailers", "OptionBanner": "Banner", - "OptionAutomatic": "Auto", "OptionAuto": "Auto", "OptionArtist": "Artist", "OptionForceRemoteSourceTranscoding": "Tvinga omkodning på fjärr media källor (som LiveTV)", diff --git a/src/strings/ta.json b/src/strings/ta.json index d31fb8872e..585882d415 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -95,10 +95,7 @@ "ButtonGotIt": "அறிந்துகொண்டேன்", "ButtonFullscreen": "முழு திரை", "ButtonForgotPassword": "கடவுச்சொல்லை மறந்துவிட்டீர்களா", - "ButtonFilter": "வடிகட்டு", "ButtonEditOtherUserPreferences": "இந்த பயனரின் சுயவிவரம், படம் மற்றும் தனிப்பட்ட விருப்பங்களைத் திருத்தவும்.", - "ButtonEditImages": "படங்களைத் திருத்து", - "ButtonEdit": "தொகு", "ButtonDownload": "பதிவிறக்க", "ButtonDown": "கீழே", "ButtonDeleteImage": "படத்தை நீக்கு", @@ -112,7 +109,6 @@ "ButtonUninstall": "நிறுவல் நீக்கு", "ButtonTrailer": "டிரெய்லர்", "ButtonTogglePlaylist": "பிளேலிஸ்ட்", - "ButtonSubtitles": "வசன வரிகள்", "ButtonSubmit": "சமர்ப்பிக்கவும்", "ButtonSplit": "பிரிக்கவும்", "ButtonStop": "நிறுத்து", @@ -136,16 +132,13 @@ "ButtonRename": "மறுபெயரிடு", "ButtonRemove": "அகற்று", "ButtonRefreshGuideData": "வழிகாட்டி தரவைப் புதுப்பிக்கவும்", - "ButtonRefresh": "புதுப்பிப்பு", "ButtonQuickStartGuide": "விரைவு தொடக்க வழிகாட்டி", "ButtonProfile": "சுயவிவரம்", "ButtonPreviousTrack": "முந்தைய பாடல்", - "ButtonPlay": "வாசிக்கவும்", "ButtonPause": "இடைநிறுத்தம்", "ButtonParentalControl": "பெற்றோர் கட்டுப்பாடு", "ButtonOpen": "திற", "ButtonOk": "சரி", - "ButtonOff": "முடக்கு", "ButtonNextTrack": "அடுத்த பாடல்", "ButtonNew": "புதியது", "ButtonNetwork": "வலைப்பின்னல்", @@ -153,7 +146,6 @@ "ButtonManualLogin": "கைமுறை புகுபதிகை", "ButtonLibraryAccess": "நூலக அனுமதி", "ButtonInfo": "தகவல்", - "ButtonHome": "முகப்பு", "ButtonGuide": "வழிகாட்டி", "Categories": "பிரிவுகள்", "CancelSeries": "தொடரை ரத்துசெய்", @@ -171,9 +163,7 @@ "EnableDetailsBannerHelp": "உருப்படி விவரங்கள் பக்கத்தின் மேலே ஒரு பேனர் படத்தைக் காண்பி.", "EnableDetailsBanner": "விவரங்கள் பேனர்", "EnableThemeVideosHelp": "நூலகத்தில் உலாவும்போது பின்னணியில் தீம் வீடியோக்களை இயக்குங்கள்.", - "EnableThemeVideos": "தீம் வீடியோக்கள்", "EnableThemeSongsHelp": "நூலகத்தில் உலாவும்போது பின்னணியில் தீம் பாடல்களை இயக்குங்கள்.", - "EnableThemeSongs": "தீம் பாடல்கள்", "EnableStreamLoopingHelp": "நேரடி ஸ்ட்ரீம்களில் சில வினாடிகள் மட்டுமே தரவு இருந்தால் தொடர்ந்து இயக்கப்பட வேண்டும். தேவைப்படாதபோது இதை இயக்குவது சிக்கல்களை ஏற்படுத்தக்கூடும்.", "EnableStreamLooping": "ஆட்டோ-லூப் லைவ் ஸ்ட்ரீம்கள்", "EnablePhotosHelp": "பிற ஊடக கோப்புகளுடன் படங்கள் கண்டறியப்பட்டு காண்பிக்கப்படும்.", @@ -271,12 +261,10 @@ "HeaderCodecProfile": "கோடெக் சுயவிவரம்", "HeaderChapterImages": "பாடம் படங்கள்", "HeaderChannelAccess": "சேனல் அணுகல்", - "HeaderCastCrew": "நடிகர்கள் & குழு", "HeaderCastAndCrew": "நடிகர்கள் & குழு", "HeaderCancelSeries": "தொடரை ரத்துசெய்", "HeaderCancelRecording": "பதிவை ரத்துசெய்", "HeaderBranding": "பிராண்டிங்", - "HeaderBooks": "புத்தகங்கள்", "HeaderBlockItemsWithNoRating": "இல்லை அல்லது அங்கீகரிக்கப்படாத மதிப்பீட்டு தகவல் இல்லாத உருப்படிகளைத் தடு:", "HeaderAudioSettings": "ஆடியோ அமைப்புகள்", "HeaderAudioBooks": "ஆடியோ புத்தகங்கள்", @@ -290,11 +278,9 @@ "HeaderAlert": "எச்சரிக்கை", "HeaderAdmin": "நிர்வாகம்", "HeaderAdditionalParts": "கூடுதல் பாகங்கள்", - "HeaderAddUser": "பயனரைச் சேர்க்கவும்", "HeaderAddUpdateImage": "படத்தைச் சேர்க்கவும் / புதுப்பிக்கவும்", "HeaderAddToPlaylist": "பட்டியலில் சேர்", "HeaderAddToCollection": "சேகரிப்பில் சேர்", - "HeaderAddScheduledTaskTrigger": "தூண்டுதலைச் சேர்க்கவும்", "HeaderActivity": "செயல்பாடு", "HeaderActiveRecordings": "செயலில் பதிவுகள்", "HeaderActiveDevices": "செயலில் உள்ள சாதனங்கள்", @@ -343,7 +329,6 @@ "HeaderFavoriteBooks": "பிடித்த புத்தகங்கள்", "HeaderExternalIds": "வெளி ஐடிகள்:", "HeaderError": "பிழை", - "HeaderEpisodes": "அத்தியாயங்கள்", "HeaderEnabledFieldsHelp": "ஒரு புலத்தை பூட்டவும், அதன் தரவு மாற்றப்படுவதைத் தடுக்கவும் தேர்வுநீக்கு.", "HeaderEnabledFields": "இயக்கப்பட்ட புலங்கள்", "HeaderEditImages": "படங்களைத் திருத்து", @@ -433,7 +418,6 @@ "HeaderMusicQuality": "இசை தரம்", "HeaderMoreLikeThis": "இது போன்றது", "HeaderMetadataSettings": "மெட்டாடேட்டா அமைப்புகள்", - "HeaderMediaInfo": "மீடியா தகவல்", "HeaderMediaFolders": "மீடியா கோப்புறைகள்", "HeaderMedia": "மீடியா", "HeaderLoginFailure": "உள்நுழைவு தோல்வி", @@ -461,10 +445,8 @@ "HeaderIdentification": "அடையாளம்", "HeaderHttpsSettings": "HTTPS அமைப்புகள்", "HeaderHttpHeaders": "HTTP தலைப்புகள்", - "HeaderHome": "முகப்பு", "HeaderGuideProviders": "டிவி வழிகாட்டி தரவு வழங்குநர்கள்", "HeaderFrequentlyPlayed": "அடிக்கடி இசைக்கும்", - "HeaderForgotPassword": "கடவுச்சொல்லை மறந்துவிட்டீர்களா", "HeaderForKids": "குழந்தைகளுக்காக", "HeaderFetcherSettings": "பெறுதல் அமைப்புகள்", "HeaderFetchImages": "படங்களை பெறுங்கள்:", @@ -539,7 +521,6 @@ "LabelAudioChannels": "ஆடியோ சேனல்கள்:", "LabelAudioBitrate": "ஆடியோ பிட்ரேட்:", "LabelAudioBitDepth": "ஆடியோ பிட் ஆழம்:", - "LabelAudio": "ஆடியோ", "LabelArtistsHelp": "அரைக்காற்புள்ளியுடன் பல கலைஞர்களைப் பிரிக்கவும்.", "LabelArtists": "கலைஞர்கள்:", "LabelAppNameExample": "எடுத்துக்காட்டு: Sickbeard, Sonarr", @@ -573,7 +554,6 @@ "LabelDisplayOrder": "காட்சி வரிசை:", "LabelDisplayName": "காட்சி பெயர்:", "LabelDisplayMode": "காட்சி முறை:", - "LabelDisplayMissingEpisodesWithinSeasons": "காணாமல் போன அத்தியாயங்களை பருவங்களுக்குள் காண்பி", "LabelDisplayLanguageHelp": "ஜெல்லிஃபின் மொழிபெயர்ப்பது ஒரு தொடர்ச்சியான திட்டம்.", "LabelDisplayLanguage": "காட்சி மொழி:", "LabelDiscNumber": "வட்டு எண்:", @@ -591,7 +571,6 @@ "LabelDateAdded": "சேர்க்கப்பட்ட தேதி:", "LabelCustomRating": "தனிப்பயன் மதிப்பீடு:", "LabelCustomDeviceDisplayNameHelp": "தனிப்பயன் காட்சி பெயரை வழங்கவும் அல்லது சாதனத்தால் புகாரளிக்கப்பட்ட பெயரைப் பயன்படுத்த காலியாக விடவும்.", - "LabelCustomDeviceDisplayName": "காட்சி பெயர்:", "LabelCustomCssHelp": "வலை இடைமுகத்தில் உங்கள் சொந்த தனிப்பயன் பாணிகளைப் பயன்படுத்துங்கள்.", "LabelCustomCss": "தனிப்பயன் CSS:", "LabelCustomCertificatePathHelp": "தனிப்பயன் களத்தில் TLS ஆதரவை இயக்க சான்றிதழ் மற்றும் தனிப்பட்ட விசையைக் கொண்ட PKCS # 12 கோப்பிற்கான பாதை.", @@ -816,7 +795,6 @@ "LabelTunerType": "ட்யூனர் வகை:", "LabelTunerIpAddress": "ட்யூனர் ஐபி முகவரி:", "LabelTriggerType": "தூண்டுதல் வகை:", - "LabelTranscodingVideoCodec": "வீடியோ கோடெக்:", "LabelTranscodingThreadCountHelp": "டிரான்ஸ்கோடிங் செய்யும்போது பயன்படுத்த வேண்டிய அதிகபட்ச நூல்களைத் தேர்ந்தெடுக்கவும். நூல் எண்ணிக்கையைக் குறைப்பது CPU பயன்பாட்டைக் குறைக்கும், ஆனால் மென்மையான பின்னணி அனுபவத்திற்கு போதுமானதாக மாற்றாது.", "LabelTranscodingThreadCount": "டிரான்ஸ்கோடிங் நூல் எண்ணிக்கை:", "LabelTranscodingProgress": "டிரான்ஸ்கோடிங் முன்னேற்றம்:", @@ -824,8 +802,6 @@ "LabelTranscodes": "டிரான்ஸ்கோட்கள்:", "LabelTranscodingTempPathHelp": "வாடிக்கையாளர்களுக்கு வழங்கப்பட்ட டிரான்ஸ்கோட் கோப்புகளுக்கான தனிப்பயன் பாதையை குறிப்பிடவும். சேவையக இயல்புநிலையைப் பயன்படுத்த காலியாக விடவும்.", "LabelTranscodePath": "டிரான்ஸ்கோட் பாதை:", - "LabelTranscodingContainer": "கொள்கலன்:", - "LabelTranscodingAudioCodec": "ஆடியோ கோடெக்:", "LabelTrackNumber": "ட்ராக் எண்:", "LabelTitle": "தலைப்பு:", "LabelTimeLimitHours": "கால எல்லை (மணிநேரம்):", @@ -850,7 +826,6 @@ "MillisecondsUnit": "ms", "LabelSyncPlayTimeOffset": "சேவையகத்துடன் நேரம் ஈடுசெய்யப்பட்டது:", "LabelSupportedMediaTypes": "ஆதரிக்கப்படும் ஊடக வகைகள்:", - "LabelSubtitles": "வசன வரிகள்", "LabelSubtitlePlaybackMode": "வசன முறை:", "LabelSubtitleFormatHelp": "எடுத்துக்காட்டு: srt", "LabelSubtitleDownloaders": "வசன பதிவிறக்கிகள்:", @@ -917,7 +892,6 @@ "LabelProfileCodecs": "கோடெக்குகள்:", "LabelProfileAudioCodecs": "ஆடியோ கோடெக்குகள்:", "LabelPreferredSubtitleLanguage": "விருப்பமான வசன மொழி:", - "LabelPreferredDisplayLanguageHelp": "ஜெல்லிஃபின் மொழிபெயர்ப்பது ஒரு தொடர்ச்சியான திட்டம்.", "LabelPreferredDisplayLanguage": "விருப்பமான காட்சி மொழி:", "LabelPostProcessorArgumentsHelp": "பதிவு கோப்புக்கான பாதையாக {path} ஐப் பயன்படுத்தவும்.", "LabelPostProcessorArguments": "பிந்தைய செயலி கட்டளை வரி வாதங்கள்:", @@ -953,7 +927,6 @@ "MessageUnsetContentHelp": "உள்ளடக்கம் எளிய கோப்புறைகளாக காண்பிக்கப்படும். சிறந்த முடிவுகளுக்கு துணை கோப்புறைகளின் உள்ளடக்க வகைகளை அமைக்க மெட்டாடேட்டா நிர்வாகியைப் பயன்படுத்தவும்.", "MessageUnableToConnectToServer": "தேர்ந்தெடுக்கப்பட்ட சேவையகத்துடன் இப்போது எங்களால் இணைக்க முடியவில்லை. இது இயங்குவதை உறுதிசெய்து மீண்டும் முயற்சிக்கவும்.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "உங்கள் நூலகத்திலிருந்து பின்வரும் ஊடக இருப்பிடங்கள் அகற்றப்படும்:", - "MessageSettingsSaved": "அமைப்புகள் சேமிக்கப்பட்டன.", "MessageReenableUser": "மீண்டும் இயக்க கீழே காண்க", "MessagePluginInstallDisclaimer": "கூடுதல் அம்சங்கள் மற்றும் நன்மைகளுடன் உங்கள் அனுபவத்தை மேம்படுத்த சமூக உறுப்பினர்களால் உருவாக்கப்பட்ட செருகுநிரல்கள் சிறந்த வழியாகும். நிறுவுவதற்கு முன், உங்கள் சேவையகத்தில் அவை நீண்ட நூலக ஸ்கேன், கூடுதல் பின்னணி செயலாக்கம் மற்றும் கணினி நிலைத்தன்மை குறைதல் போன்ற விளைவுகளைப் பற்றி எச்சரிக்கையாக இருங்கள்.", "MessagePluginConfigurationRequiresLocalAccess": "இந்த சொருகி கட்டமைக்க உங்கள் உள்ளூர் சேவையகத்தில் நேரடியாக உள்நுழைக.", @@ -1091,7 +1064,6 @@ "OptionBanner": "பதாகை", "OptionAutomaticallyGroupSeriesHelp": "இந்த நூலகத்திற்குள் பல கோப்புறைகளில் பரவியிருக்கும் தொடர்கள் தானாக ஒரு தொடராக ஒன்றிணைக்கப்படும்.", "OptionAutomaticallyGroupSeries": "பல கோப்புறைகளில் பரவியிருக்கும் தொடர்களை தானாக இணைக்கவும்", - "OptionAutomatic": "தானாக", "OptionAuto": "தானாக", "OptionAscending": "ஏறுதல்", "OptionArtist": "கலைஞர்", @@ -1425,12 +1397,10 @@ "TagsValue": "குறிச்சொற்கள்: {0}", "Tags": "குறிச்சொற்கள்", "TabUpcoming": "வரவிருக்கும்", - "TabTrailers": "டிரெய்லர்கள்", "TabStreaming": "ஸ்ட்ரீமிங்", "TabSettings": "அமைப்புகள்", "TabServer": "சேவையகம்", "TabScheduledTasks": "திட்டமிடப்பட்ட பணிகள்", - "TabResumeSettings": "மீண்டும் தொடர்", "TabResponses": "பதில்கள்", "TabProfiles": "சுயவிவரங்கள்", "TabProfile": "சுயவிவரம்", @@ -1442,19 +1412,15 @@ "TabNetworking": "நெட்வொர்க்கிங்", "TabNetworks": "நெட்வொர்க்குகள்", "TabMyPlugins": "எனது செருகுநிரல்கள்", - "TabMusicVideos": "இசை கானொளி", "TabMusic": "இசை", "TabLogs": "பதிவுகள்", "TabLatest": "அண்மை", - "TabInfo": "தகவல்", - "TabEpisodes": "அத்தியாயங்கள்", "TabDirectPlay": "நேரடி நாடகம்", "TabDashboard": "டாஷ்போர்டு", "TabContainers": "கொள்கலன்கள்", "TabCodecs": "கோடெக்குகள்", "TabRepositories": "களஞ்சியங்கள்", "TabCatalog": "அட்டவணை", - "TabAlbumArtists": "ஆல்பம் கலைஞர்கள்", "TabAdvanced": "மேம்படுத்தபட்ட", "TabAccess": "அணுகல்", "TV": "தொலைக்காட்சி", diff --git a/src/strings/tr.json b/src/strings/tr.json index 2bae4757f4..053da36a5e 100644 --- a/src/strings/tr.json +++ b/src/strings/tr.json @@ -9,14 +9,10 @@ "ButtonArrowRight": "Sağ", "ButtonBack": "Geri", "ButtonCancel": "İptal", - "ButtonEdit": "Düzenle", - "ButtonFilter": "Filtrele", - "ButtonHome": "Anasayfa", "ButtonInfo": "Bilgi", "ButtonManualLogin": "Manuel Giriş", "ButtonOk": "Tamam", "ButtonPause": "Duraklat", - "ButtonPlay": "Oynat", "ButtonQuickStartGuide": "Hızlı başlangıç rehberi", "ButtonRefreshGuideData": "Kılavuzu Yinele", "ButtonRemove": "Sil", @@ -28,7 +24,6 @@ "ButtonSignIn": "Giriş Yapın", "ButtonSignOut": "Çıkış Yap", "ButtonStop": "Durdur", - "ButtonSubtitles": "Altyazılar", "ChannelAccessHelp": "Bu kullanıcıyla paylaşmak üzere kanalları seç. Yöneticiler bütün kanalları metada yöneticisi ile düzenleyebilecekler.", "Continuing": "Devam ediyor", "Delete": "Sil", @@ -48,7 +43,6 @@ "FolderTypeTvShows": "TV", "Friday": "Cuma", "HeaderActiveRecordings": "Aktif Kayıtlar", - "HeaderAddUser": "Kullanıcı Ekle", "HeaderCodecProfile": "Codec Profili", "HeaderContinueWatching": "İzlemeye Devam Et", "HeaderCustomDlnaProfiles": "Özel Profiller", @@ -86,7 +80,6 @@ "LabelCountry": "Ülke:", "LabelCurrentPassword": "Kullanımdaki şifre:", "LabelDay": "Gün:", - "LabelDisplayMissingEpisodesWithinSeasons": "Sezondaki kayıp bölümleri göster", "LabelEnableDlnaServer": "DLNA Sunucusunu Etkinleştir", "LabelFinish": "Bitir", "LabelIconMaxHeight": "Maksimum simge genişliği:", @@ -126,7 +119,6 @@ "OptionAllowUserToManageServer": "Bu kullanıcıya sunucuyu yönetme izni ver", "OptionArtist": "Sanatçı", "OptionAscending": "Yükselen", - "OptionAutomatic": "Otomatik", "OptionContinuing": "Topluluk", "OptionCriticRating": "Yorumcu Puanı", "OptionDaily": "Günlük", @@ -183,14 +175,10 @@ "Sunday": "Pazar", "TabAccess": "Erişim", "TabAdvanced": "Gelişmiş", - "TabAlbumArtists": "Albüm Sanatçıları", "TabCatalog": "Katalog", "TabCodecs": "Codecler", - "TabEpisodes": "Bölümler", - "TabInfo": "Bilgi", "TabLatest": "En yeni", "TabMusic": "Muzik", - "TabMusicVideos": "Klipler", "TabMyPlugins": "Eklentilerim", "TabNetworks": "Ağlar", "TabNotifications": "Bildirimler", @@ -198,7 +186,6 @@ "TabProfiles": "Profiller", "TabServer": "Sunucu", "TabSettings": "Ayarlar", - "TabTrailers": "Fragmanlar", "TabUpcoming": "Gelecek", "TellUsAboutYourself": "Kendinizden bahsedin", "ThisWizardWillGuideYou": "Bu sihirbaz kurulum işlemi boyunca size yardımcı olacaktır. Başlamak için, tercih ettiğiniz dili seçiniz.", @@ -223,7 +210,6 @@ "AirDate": "Yayın tarihi", "Aired": "Yayınlanma tarihi", "Alerts": "Uyarılar", - "ButtonEditImages": "Resimleri Düzenle", "ButtonEditOtherUserPreferences": "Bu kullanıcının profilini, resmini ve kişisel tercihlerini düzenleyin.", "ButtonForgotPassword": "Şifremi unuttum", "ButtonFullscreen": "Tam Ekran", @@ -251,7 +237,6 @@ "ColorTransfer": "Renk transferi", "ButtonPreviousTrack": "Önceki parça", "ButtonProfile": "Profil", - "ButtonRefresh": "Yenile", "ButtonRename": "Yeniden Adlandır", "ButtonResume": "Devam Et", "ButtonRevoke": "Geri al", @@ -296,7 +281,6 @@ "ButtonOpen": "Aç", "ButtonNetwork": "Ağ", "ButtonNextTrack": "Sonraki parça", - "ButtonOff": "Kapalı", "ButtonParentalControl": "Ebeveyn Kontrolü", "ButtonArrowLeft": "Sol", "ButtonGuide": "Rehber", @@ -386,7 +370,6 @@ "EnableCinemaMode": "Sinema Modu", "EnableColorCodedBackgrounds": "Renk kodlu arka planlar", "HeaderGuideProviders": "TV Rehberi Veri Sağlayıcıları", - "HeaderForgotPassword": "Parolanızı mı unuttunuz", "HeaderForKids": "Çocuklar için", "HeaderFetcherSettings": "Alıcı Ayarları", "HeaderFetchImages": "Görüntüleri Getir:", @@ -396,7 +379,6 @@ "HeaderFavoriteBooks": "favori kitaplar", "HeaderExternalIds": "Dış kimlikler:", "HeaderError": "Hata", - "HeaderEpisodes": "Bölümler", "HeaderEnabledFieldsHelp": "Kilitlemek ve verilerinin değişmesini önlemek için bir alanın işaretini kaldırın.", "HeaderEnabledFields": "Etkin Alanlar", "HeaderEditImages": "Görüntüleri Düzenle", @@ -425,12 +407,10 @@ "HeaderCodecProfileHelp": "Codec profilleri, belirli kodlayıcıları oynatırken cihazın sınırlamalarını gösterir. Eğer bir sınırlama uygulanırsa, kodeğin doğrudan oynaması için yapılandırılmış olsa bile, ortam kodlanır.", "HeaderChapterImages": "Bölüm Görüntüleri", "HeaderChannelAccess": "Kanal erişimi", - "HeaderCastCrew": "Kast ekibi", "HeaderCastAndCrew": "Kast ekibi", "HeaderCancelSeries": "Serileri İptal Et", "HeaderCancelRecording": "Kaydı İptal Et", "HeaderBranding": "dağlama", - "HeaderBooks": "Kitaplar", "HeaderBlockItemsWithNoRating": "Tanınmayan veya bilinmeyen derecelendirme bilgisine sahip öğeleri engelle:", "HeaderAudioSettings": "Ses ayarları", "HeaderAudioBooks": "Sesli Kitaplar", @@ -446,7 +426,6 @@ "HeaderAddUpdateImage": "Resim Ekle / Güncelle", "HeaderAddToPlaylist": "Oynatma listesine ekle", "HeaderAddToCollection": "Koleksiyona ekle", - "HeaderAddScheduledTaskTrigger": "Tetikleyici ekle", "HeaderActivity": "Aktivite", "HeaderActiveDevices": "Aktif Cihazlar", "HeaderAccessScheduleHelp": "Belirli saatlerle erişimi sınırlamak için bir erişim programı oluşturun.", @@ -490,9 +469,7 @@ "Episodes": "Bölümler", "EndsAtValue": "{0} konumundaki biter", "EnableThemeVideosHelp": "Kitaplığa göz atarken tema videoları arka planda oynatın.", - "EnableThemeVideos": "Tema videoları", "EnableThemeSongsHelp": "Kitaplığa göz atarken tema şarkıları arka planda çalın.", - "EnableThemeSongs": "Tema şarkıları", "EnableStreamLoopingHelp": "Canlı akışlar yalnızca birkaç saniye veri içeriyorsa ve sürekli istenmesi gerekiyorsa bunu etkinleştirin. Gerekmediğinde bunu etkinleştirmek sorunlara neden olabilir.", "EnableStreamLooping": "Otomatik döngü canlı akışları", "Hide": "Gizle", @@ -536,7 +513,6 @@ "HeaderMusicQuality": "Müzik Kalitesi", "HeaderMoreLikeThis": "Buna Benzer Daha Fazla", "HeaderMetadataSettings": "Meta Verisi Ayarları", - "HeaderMediaInfo": "Medya Bilgisi", "HeaderMedia": "Medya", "HeaderLoginFailure": "Giriş Başarısız", "HeaderLiveTvTunerSetup": "Canlı TV istasyon Kurulumu", @@ -554,7 +530,6 @@ "HeaderIdentificationCriteriaHelp": "En az bir kimlik kriteri girmelisiniz.", "HeaderIdentification": "Kimlik", "HeaderHttpHeaders": "HTTP Başlıkları", - "HeaderHome": "Ana Sayfa", "HeaderFavoritePeople": "Favori Kişiler", "LabelEnableAutomaticPortMap": "Otomatik port eşleştirmeyi etkinleştir", "LabelEasyPinCode": "Basit pin kodu:", @@ -583,7 +558,6 @@ "LabelAudioSampleRate": "Ses örnekleme hızı:", "LabelAudioCodec": "Ses kodeği:", "LabelAudioChannels": "Ses kanalları:", - "LabelAudio": "Ses", "LabelAppName": "Uygulama adı", "LabelAllowHWTranscoding": "Donanım kod dönüştürmesine izin ver", "LabelAlbumArtMaxWidth": "Albüm resmi maks. genişlik:", @@ -687,7 +661,6 @@ "LabelSupportedMediaTypes": "Desteklenen Ortam Türleri:", "LabelSubtitlePlaybackMode": "Altyazı biçimi:", "LabelSubtitleFormatHelp": "Örnek: srt", - "LabelSubtitles": "Altyazılar", "LabelStreamType": "Akış türü:", "LabelSubtitleDownloaders": "Altyazı indiriciler:", "LabelStopping": "Durduruluyor", diff --git a/src/strings/uk.json b/src/strings/uk.json index 764f520524..893311884c 100644 --- a/src/strings/uk.json +++ b/src/strings/uk.json @@ -3,7 +3,6 @@ "BirthPlaceValue": "Місце народження: {0}", "ButtonAddUser": "Додати користувача", "ButtonCancel": "Скасувати", - "ButtonFilter": "Фільтр", "ButtonRename": "Перейменувати", "ButtonResetPassword": "Скинути пароль", "ButtonSignOut": "Вийти", @@ -14,7 +13,6 @@ "FolderTypeMovies": "Фільми", "FolderTypeMusic": "Музика", "FolderTypeTvShows": "ТБ", - "HeaderBooks": "Книги", "HeaderDeleteDevice": "Видалить пристрій", "HeaderLatestEpisodes": "Нещодавно переглянуті серії", "HeaderLatestMedia": "Нещодавно переглянуті", @@ -56,13 +54,11 @@ "ParentalRating": "Parental Rating", "Save": "Зберігти", "Settings": "Налаштування", - "TabEpisodes": "Епізоди", "TabNetworks": "Мережі", "TabNotifications": "Повідомлення", "TabPlugins": "Додатки", "TabProfile": "Профіль", "TabProfiles": "Профілі", - "TabTrailers": "Трейлери", "ValueAlbumCount": "{0} альбомів", "ValueDiscNumber": "Диск {0}", "ValueEpisodeCount": "{0} епізодів", @@ -180,7 +176,6 @@ "ButtonUninstall": "Видалити", "ButtonTrailer": "Трейлер", "ButtonTogglePlaylist": "Плейлист", - "ButtonSubtitles": "Субтитри", "ButtonSubmit": "Підтвердити", "ButtonSplit": "Розділити", "ButtonStop": "Зупинити", @@ -199,30 +194,24 @@ "ButtonResetEasyPassword": "Скинути простий пін-код", "ButtonRemove": "Видалити", "ButtonRefreshGuideData": "Оновити дані телегіда", - "ButtonRefresh": "Оновити", "ButtonQuickStartGuide": "Посібник по швидкому запуску", "ButtonProfile": "Профіль", "ButtonPreviousTrack": "Попередня доріжка", - "ButtonPlay": "Відтворити", "ButtonPause": "Пауза", "ButtonParentalControl": "Батьківський контроль", "ButtonOpen": "Відкрити", "ButtonOk": "Ок", - "ButtonOff": "Вимкнути", "ButtonNextTrack": "Наступна доріжка", "ButtonNetwork": "Мережа", "ButtonMore": "Більше", "ButtonManualLogin": "Ввести ім’я користувача вручну", "ButtonLibraryAccess": "Доступ до медіатеки", "ButtonInfo": "Інформація", - "ButtonHome": "Головна", "ButtonGuide": "Телегід", "ButtonGotIt": "Зрозуміло", "ButtonFullscreen": "Повноекранний режим", "ButtonForgotPassword": "Забув(ла) пароль", "ButtonEditOtherUserPreferences": "Редагувати профіль, зображення та особисті налаштування даного користувача.", - "ButtonEditImages": "Редагувати зображення", - "ButtonEdit": "Редагувати", "ButtonChangeServer": "Змінити сервер", "ButtonBack": "Назад", "ButtonAudioTracks": "Аудіозаписи", diff --git a/src/strings/vi.json b/src/strings/vi.json index 48e59ca057..68718d4c5d 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -16,7 +16,6 @@ "FileReadCancelled": "Tệp tin đọc đã bị hủy.", "FileReadError": "Có một lỗi xảy ra khi đọc tệp tin này.", "FolderTypeTvShows": "TV", - "HeaderAddUser": "Thêm người dùng", "HeaderCustomDlnaProfiles": "Hồ sơ khách hàng", "HeaderFeatureAccess": "Truy cập tính năng", "HeaderFrequentlyPlayed": "Phát thường xuyên", @@ -47,7 +46,6 @@ "OptionAlbumArtist": "Album nghệ sỹ", "OptionAllowUserToManageServer": "Cho phép người dùng này quản lý máy chủ", "OptionArtist": "Nghệ sỹ", - "OptionAutomatic": "Tự động", "OptionCommunityRating": "Đánh giá của cộng đồng", "OptionDateAdded": "Ngày thêm", "OptionDatePlayed": "Ngày phát", @@ -79,11 +77,8 @@ "Save": "Lưu", "SettingsSaved": "Lưu các cài đặt.", "Sunday": "Chủ Nhật", - "TabAlbumArtists": "Các Album nghệ sỹ", "TabCatalog": "Danh mục", - "TabEpisodes": "Các tập phim", "TabLatest": "Mới nhất", - "TabMusicVideos": "Các video âm nhạc", "TabMyPlugins": "Các plugin của tôi", "TabNetworks": "Các mạng", "TabProfile": "Hồ sơ", @@ -103,30 +98,23 @@ "ButtonResetEasyPassword": "Đặt lại mã pin nhanh", "ButtonRename": "Đổi tên", "ButtonRefreshGuideData": "Làm mới dữ liệu hướng dẫn", - "ButtonRefresh": "Làm mới", "ButtonQuickStartGuide": "Hướng dẫn nhanh", "ButtonProfile": "Hồ sơ", "ButtonPreviousTrack": "Bài trước", - "ButtonPlay": "Chơi", "ButtonPause": "Tạm dừng", "ButtonParentalControl": "Kiểm soát của cha mẹ", "ButtonOpen": "Mở", - "ButtonOff": "Tắt", "ButtonNextTrack": "Tiếp theo", "ButtonNetwork": "Mạng", "ButtonMore": "Thêm", "ButtonManualLogin": "Đăng nhập thủ công", "ButtonLibraryAccess": "Truy cập thư viện", "ButtonInfo": "Thông tin", - "ButtonHome": "Trang chủ", "ButtonGuide": "Hướng dẫn", "ButtonGotIt": "Hiểu rồi", "ButtonFullscreen": "Toàn màn hình", "ButtonForgotPassword": "Quên mật khẩu", - "ButtonFilter": "Lọc", "ButtonEditOtherUserPreferences": "Chỉnh sửa thông tin, hình ảnh và sở thích cá nhân.", - "ButtonEditImages": "Sửa hình ảnh", - "ButtonEdit": "Sửa", "ButtonChangeServer": "Đổi máy chủ", "ButtonBack": "Lùi", "ButtonAudioTracks": "Track âm thanh", @@ -192,7 +180,6 @@ "ButtonWebsite": "Trang web", "ButtonUninstall": "Gỡ cài đặt", "ButtonTrailer": "Tóm tắt", - "ButtonSubtitles": "Phụ đề", "ButtonSubmit": "Đăng", "ButtonSplit": "Tách", "ButtonStop": "Ngưng", @@ -298,12 +285,10 @@ "HeaderCodecProfile": "Bộ Giải Mã", "HeaderChapterImages": "Hình Ảnh Phân Đoạn", "HeaderChannelAccess": "Quyền Truy Cập Kênh", - "HeaderCastCrew": "Diễn Viên & Ê-kíp", "HeaderCastAndCrew": "Diễn Viên & Ê-kíp", "HeaderCancelSeries": "Huỷ Series", "HeaderCancelRecording": "Dừng Ghi Âm/Ghi Hình", "HeaderBranding": "Tạo Thương Hiệu", - "HeaderBooks": "Sách", "HeaderBlockItemsWithNoRating": "Khoá những mục không có thông tin đánh giá hoặc thông tin không đáng tin cậy:", "HeaderAudioSettings": "Cài Đặt Âm Thanh", "HeaderAudioBooks": "Sách Nói", @@ -320,7 +305,6 @@ "HeaderAddUpdateImage": "Thêm/Thay Đổi Hình Ảnh", "HeaderAddToPlaylist": "Thêm vào Danh Sách Phát", "HeaderAddToCollection": "Thêm vào Bộ Sưu Tập", - "HeaderAddScheduledTaskTrigger": "Thêm Kích Hoạt Tác Vụ", "HeaderActivity": "Hoạt Động", "HeaderActiveRecordings": "Bản Ghi Hình/Ghi Âm Đang Hoạt Động", "HardwareAccelerationWarning": "Bật tính năng hỗ trợ từ phần cứng có thể gây ra sự bất ổn trong một vài môi trường. Hãy chắc chắn rằng điều hành và driver thiết bị đồ hoạ đã được cập nhật mới nhất. Nếu gặp vấn đề khi phát video sau khi bật tính năng này, bạn nên tắt tính năng này.", @@ -375,9 +359,7 @@ "EndsAtValue": "Kết thúc tại {0}", "Ended": "Đã kết thúc", "EnableThemeVideosHelp": "Phát nền những video chủ đề khi lướt qua thư viện nội dung.", - "EnableThemeVideos": "Video chủ đề", "EnableThemeSongsHelp": "Phát những bài hát chủ đề khi lướt qua thư viện nội dung.", - "EnableThemeSongs": "Nhạc chủ đề", "EnableStreamLoopingHelp": "Cho phép tính năng này nếu live streams chỉ dài một vài giây và cần được lặp lại liên tục. Bật tính năng này khi không cần thiết có thể gây ra nhiều vấn đề khác.", "EnableStreamLooping": "Tự động phát lại live streams", "EnablePhotosHelp": "Hình ảnh sẽ được nhận diện và hiển thị bên cạnh những nội dung media.", @@ -417,7 +399,6 @@ "HeaderMusicQuality": "Chất Lượng Âm Nhạc", "HeaderMoreLikeThis": "Nội Dung Tương Tự", "HeaderMetadataSettings": "Cài Đặt Dữ Liệu Bổ Trợ", - "HeaderMediaInfo": "Thông Tin Nội Dung", "HeaderMediaFolders": "Thư Mục Chứa Nội Dung", "HeaderMedia": "Nội Dung", "HeaderLoginFailure": "Đăng Nhập Không Thành Công", @@ -442,9 +423,7 @@ "HeaderIdentificationCriteriaHelp": "Nhập vào ít nhật một thông tin nhận biết.", "HeaderIdentification": "Thông Tin Nhận Biết", "HeaderHttpHeaders": "HTTP Headers", - "HeaderHome": "Trang Chủ", "HeaderGuideProviders": "Nhà Cung Cấp Lịch Phát Sóng TV", - "HeaderForgotPassword": "Quên Mật Khẩu", "HeaderForKids": "Dành Cho Trẻ Em", "HeaderFetcherSettings": "Cài Đặt Chương Trình Tải Xuống", "HeaderFetchImages": "Tải Hình Ảnh:", @@ -459,7 +438,6 @@ "HeaderFavoriteMovies": "Phim Yêu Thích", "HeaderExternalIds": "Mã Định Danh Từ Bên Ngoài:", "HeaderError": "Lỗi", - "HeaderEpisodes": "Tập", "HeaderEnabledFieldsHelp": "Bỏ chọn một mục để khoá lựa chọn đó và không để nó thay đổi.", "HeaderEnabledFields": "Những Mục Được Kích Hoạt", "HeaderEditImages": "Chỉnh Sửa Hình Ảnh", @@ -521,7 +499,6 @@ "HeaderSpecialFeatures": "Những Phần Đặc Biệt Nổi Bật", "HeaderSpecialEpisodeInfo": "Thông Tin Tập Đặc Biệt", "LabelCustomDeviceDisplayNameHelp": "Cung cấp một tên hiển thị riêng hoặc bỏ trống để sử dụng tên có sẵn của thiết bị.", - "LabelCustomDeviceDisplayName": "Tên hiển thị:", "LabelCustomCssHelp": "Áp dụng tuỳ chỉnh riêng của bạn vào giao diện trang web.", "LabelCustomCss": "CSS tuỳ chọn:", "LabelCustomCertificatePathHelp": "Đường dẫn đến tập tin PKCS #12 chứa chứng chỉ (certificate) và khoá riêng (private key) để bật tính năng TLS trên một tên miền tuỳ chọn.", @@ -554,7 +531,6 @@ "LabelAudioChannels": "Các kênh âm thanh:", "LabelAudioBitrate": "Bitrate của âm thanh:", "LabelAudioBitDepth": "Chiều sâu của âm thanh:", - "LabelAudio": "Âm Thanh", "LabelArtistsHelp": "Sử dụng dấu ; để tách rời nhiều nghệ", "LabelArtists": "Nghệ sĩ:", "LabelAppNameExample": "Ví dụ: Sickbeard, Sonarr", @@ -627,7 +603,6 @@ "LabelDisplayOrder": "Thứ tự hiển thị:", "LabelDisplayName": "Tên hiển thị:", "LabelDisplayMode": "Chế độ hiển thị:", - "LabelDisplayMissingEpisodesWithinSeasons": "Hiển thị những tập bị thiếu", "LabelDisplayLanguageHelp": "Dự án chuyển ngữ Jellyfin là một dự án diễn ra ra liên tục.", "LabelDisplayLanguage": "Ngôn ngữ hiển thị:", "LabelDiscNumber": "Đĩa số:", diff --git a/src/strings/zh-cn.json b/src/strings/zh-cn.json index b14bec8277..3678d168fe 100644 --- a/src/strings/zh-cn.json +++ b/src/strings/zh-cn.json @@ -56,31 +56,24 @@ "ButtonBack": "返回", "ButtonCancel": "取消", "ButtonChangeServer": "更改服务器", - "ButtonEdit": "编辑", - "ButtonEditImages": "修改图片", "ButtonEditOtherUserPreferences": "编辑这个用户的用户配置,图片和个人参数。", - "ButtonFilter": "筛选", "ButtonForgotPassword": "忘记密码", "ButtonFullscreen": "全屏", "ButtonGotIt": "知道了", "ButtonGuide": "指南", - "ButtonHome": "首页", "ButtonInfo": "详情", "ButtonLibraryAccess": "媒体库访问", "ButtonManualLogin": "手动登录", "ButtonMore": "更多", "ButtonNetwork": "网络", "ButtonNextTrack": "下一音轨", - "ButtonOff": "关", "ButtonOk": "确定", "ButtonOpen": "打开", "ButtonParentalControl": "家长控制", "ButtonPause": "暂停", - "ButtonPlay": "播放", "ButtonPreviousTrack": "上一音轨", "ButtonProfile": "配置", "ButtonQuickStartGuide": "快速入门指南", - "ButtonRefresh": "刷新", "ButtonRefreshGuideData": "刷新指南数据", "ButtonRemove": "移除", "ButtonRename": "重命名", @@ -101,7 +94,6 @@ "ButtonStart": "开始", "ButtonStop": "停止", "ButtonSubmit": "提交", - "ButtonSubtitles": "字幕", "ButtonTrailer": "预告片", "ButtonUninstall": "卸载", "ButtonWebsite": "网站", @@ -177,9 +169,7 @@ "EnablePhotosHelp": "图片将被检测到并和其他媒体文件一起显示。", "EnableStreamLooping": "自动循环直播流", "EnableStreamLoopingHelp": "如果直播流仅包含了几秒钟的数据并且需要被不断的请求,请启用此项。如果在没有相关问题的情况下启动此项,可能会导致一些问题。", - "EnableThemeSongs": "主题曲", "EnableThemeSongsHelp": "当浏览媒体库时主题曲将作为背景音乐播放。", - "EnableThemeVideos": "主题视频", "EnableThemeVideosHelp": "当浏览媒体库时主题视频将作为背景视频播放。", "Ended": "结束", "EndsAtValue": "结束于 {0}", @@ -230,11 +220,9 @@ "HeaderActiveDevices": "活动的设备", "HeaderActiveRecordings": "正在录制的节目", "HeaderActivity": "活动", - "HeaderAddScheduledTaskTrigger": "添加触发", "HeaderAddToCollection": "加入收藏", "HeaderAddToPlaylist": "添加到播放列表", "HeaderAddUpdateImage": "添加/更新 图片", - "HeaderAddUser": "添加用户", "HeaderAdditionalParts": "附加部分", "HeaderAdmin": "管理", "HeaderAlbumArtists": "专辑作家", @@ -246,10 +234,8 @@ "HeaderAudioBooks": "有声读物", "HeaderAudioSettings": "声音设置", "HeaderBlockItemsWithNoRating": "通过没有评级和设置不允许的评级锁定内容:", - "HeaderBooks": "书籍", "HeaderBranding": "品牌", "HeaderCastAndCrew": "演员表", - "HeaderCastCrew": "演职人员", "HeaderChannelAccess": "频道访问", "HeaderChapterImages": "剧集图片", "HeaderCodecProfile": "编解码器配置", @@ -283,14 +269,12 @@ "HeaderEditImages": "修改图片", "HeaderEnabledFields": "已启用的栏", "HeaderEnabledFieldsHelp": "反选栏以锁定并不让其数据被更改。", - "HeaderEpisodes": "集数", "HeaderError": "错误", "HeaderExternalIds": "外部 ID:", "HeaderFeatureAccess": "可使用的功能", "HeaderFetchImages": "获取图像:", "HeaderFetcherSettings": "读取器设置", "HeaderForKids": "给儿童", - "HeaderForgotPassword": "忘记密码", "HeaderFrequentlyPlayed": "多次播放", "HeaderGuideProviders": "电视指南数据提供方", "HeaderHttpHeaders": "HTTP 头部", @@ -317,7 +301,6 @@ "HeaderLoginFailure": "登录失败", "HeaderMedia": "媒体", "HeaderMediaFolders": "媒体文件夹", - "HeaderMediaInfo": "媒体信息", "HeaderMetadataSettings": "元数据设置", "HeaderMoreLikeThis": "更多类似的", "HeaderMusicVideos": "音乐视频", @@ -469,7 +452,6 @@ "LabelCustomCertificatePathHelp": "提供一个包含了证书和私钥的 PKCS #12 文件的路径以在一个自定义域名上启动 TLS 支持。", "LabelCustomCss": "自定义CSS:", "LabelCustomCssHelp": "应用你的自定义样式到网页。", - "LabelCustomDeviceDisplayName": "显示名称:", "LabelCustomDeviceDisplayNameHelp": "自定义设备显示名称或留空则使用设备报告名称。", "LabelCustomRating": "自定义分级:", "LabelDateAdded": "加入日期:", @@ -486,7 +468,6 @@ "LabelDiscNumber": "光盘号:", "LabelDisplayLanguage": "显示的语言:", "LabelDisplayLanguageHelp": "Jellyfin的翻译工作是一个不断推进的工程项目。", - "LabelDisplayMissingEpisodesWithinSeasons": "显示每季里缺少的剧集", "LabelDisplayMode": "显示模式:", "LabelDisplayName": "显示名称:", "LabelDisplayOrder": "显示顺序:", @@ -642,7 +623,6 @@ "LabelPostProcessorArguments": "处理器后命令行参数:", "LabelPostProcessorArgumentsHelp": "使用 {path} 作为录制文件的路径。", "LabelPreferredDisplayLanguage": "首选显示语言:", - "LabelPreferredDisplayLanguageHelp": "Jellyfin的翻译工作是一个不断推进的工程项目。", "LabelPreferredSubtitleLanguage": "字幕语言偏好:", "LabelProfileAudioCodecs": "音频编解码器:", "LabelProfileCodecs": "编解码器:", @@ -701,7 +681,6 @@ "LabelSubtitleDownloaders": "字幕下载器:", "LabelSubtitleFormatHelp": "例如:SRT", "LabelSubtitlePlaybackMode": "字幕模式:", - "LabelSubtitles": "字幕", "LabelSupportedMediaTypes": "支持的媒体类型:", "LabelTVHomeScreen": "TV 模式主屏幕:", "LabelTag": "标签:", @@ -714,12 +693,9 @@ "LabelTimeLimitHours": "时间限制(小时):", "LabelTitle": "标题:", "LabelTrackNumber": "音轨号码:", - "LabelTranscodingAudioCodec": "音频编解码器:", - "LabelTranscodingContainer": "容器:", "LabelTranscodingTempPathHelp": "设置转码文件存储目录。留空以使用服务器默认文件夹。", "LabelTranscodingThreadCount": "转码线程数:", "LabelTranscodingThreadCountHelp": "选择转码时使用的最大线程数。\n减少线程数量将会降低CPU使用率,可能无法快速进行转换并流畅的播放。", - "LabelTranscodingVideoCodec": "视频编解码器:", "LabelTriggerType": "触发类型:", "LabelTunerIpAddress": "调谐器 IP 地址:", "LabelTunerType": "调谐器类型:", @@ -823,7 +799,6 @@ "MessagePluginConfigurationRequiresLocalAccess": "请直接登录你的本地服务器以设置这个插件。", "MessagePluginInstallDisclaimer": "安装社区成员构建的插件来获取额外的功能是增强您体验的一种很好的方式。但在安装之前请意识到他们可能会对你的服务器造成影响,如更长的媒体库扫描时间、额外的后台处理、以及系统稳定性的降低等。", "MessageReenableUser": "请参阅以下以重新启用", - "MessageSettingsSaved": "设置已保存。", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "以下媒体路径将从你的媒体库移除:", "MessageUnableToConnectToServer": "现在无法连接所选择的服务器,请确保该服务器目前正在运行。", "MessageUnsetContentHelp": "内容将显示为纯文件夹。为取得最佳效果, 请使用元数据管理器设置子文件夹的内容类型。", @@ -889,7 +864,6 @@ "OptionArtist": "艺术家", "OptionAscending": "升序", "OptionAuto": "自动", - "OptionAutomatic": "自动", "OptionAutomaticallyGroupSeries": "自动合并分布在不同文件夹的电视剧", "OptionAutomaticallyGroupSeriesHelp": "在这个媒体库的多个文件夹中的同一部电视剧将会自动整合成一部电视剧。", "OptionBlockBooks": "书籍", @@ -1117,18 +1091,14 @@ "TV": "电视", "TabAccess": "访问", "TabAdvanced": "高级", - "TabAlbumArtists": "专辑艺术家", "TabCatalog": "目录", "TabCodecs": "编解码器", "TabContainers": "媒体载体", "TabDashboard": "控制台", "TabDirectPlay": "直接播放", - "TabEpisodes": "剧集", - "TabInfo": "信息", "TabLatest": "最新", "TabLogs": "日志", "TabMusic": "音乐", - "TabMusicVideos": "音乐视频", "TabMyPlugins": "我的插件", "TabNetworks": "网络", "TabNfoSettings": "NFO 设定", @@ -1139,12 +1109,10 @@ "TabProfile": "个人配置", "TabProfiles": "配置", "TabResponses": "响应", - "TabResumeSettings": "恢复", "TabScheduledTasks": "计划任务", "TabServer": "服务器", "TabSettings": "设置", "TabStreaming": "流媒体传输", - "TabTrailers": "预告片", "TabUpcoming": "即将发布", "Tags": "标签", "TellUsAboutYourself": "请介绍一下你自己", @@ -1234,7 +1202,6 @@ "HeaderFavoriteVideos": "最爱的视频", "HeaderVideoType": "视频类型", "Items": "项目", - "LabelAudio": "音频", "LabelServerName": "服务器名称:", "LabelTranscodePath": "转码路径:", "LabelTranscodes": "转码:", @@ -1312,7 +1279,6 @@ "Vertical": "垂直", "Depressed": "凹陷", "Uniform": "轮廓", - "HeaderHome": "主页", "DashboardOperatingSystem": "操作系统:{0}", "DashboardArchitecture": "架构:{0}", "GroupVersions": "按版本分组", diff --git a/src/strings/zh-hk.json b/src/strings/zh-hk.json index 6cdb6f13a9..21ac5f304c 100644 --- a/src/strings/zh-hk.json +++ b/src/strings/zh-hk.json @@ -3,13 +3,9 @@ "ButtonAddScheduledTaskTrigger": "新增觸發點", "ButtonAddUser": "添加用戶", "ButtonCancel": "取消", - "ButtonEdit": "編輯", - "ButtonFilter": "過濾", "ButtonManualLogin": "手動登入", "ButtonOk": "確定", - "ButtonPlay": "播放", "ButtonQuickStartGuide": "快速入門指南", - "ButtonRefresh": "重新整理", "ButtonRefreshGuideData": "重新整理指南資料", "ButtonRemove": "清除", "ButtonRename": "重新命名", @@ -19,7 +15,6 @@ "ButtonSignIn": "登入", "ButtonSignOut": "登出", "ButtonSubmit": "提交", - "ButtonSubtitles": "字幕", "ChannelAccessHelp": "選擇此用戶共享頻道。管理員將能夠使用資料管理器而編輯所有文件夾。", "Continuing": "繼續", "CustomDlnaProfilesHelp": "為新的設備建立自定配置或覆蓋原有系統配置。", @@ -36,13 +31,9 @@ "Friday": "星期五", "HeaderActiveDevices": "生效裝置", "HeaderActiveRecordings": "正在錄影的節目", - "HeaderAddScheduledTaskTrigger": "新增觸發", "HeaderAddToCollection": "添加到收藏庫", - "HeaderAddUser": "添加用戶", "HeaderAdditionalParts": "附加部份", - "HeaderBooks": "書籍", "HeaderBranding": "界面", - "HeaderCastCrew": "演員陣容", "HeaderCustomDlnaProfiles": "自定配置", "HeaderDeviceAccess": "允許裝置通行", "HeaderDevices": "裝置", @@ -86,7 +77,6 @@ "LabelCustomCss": "自訂 CSS:", "LabelCustomCssHelp": "應用自訂 CSS Web 界面。", "LabelDay": "日子:", - "LabelDisplayMissingEpisodesWithinSeasons": "顯示每季缺少劇集資料", "LabelDisplaySpecialsWithinSeasons": "顯示劇集季度中的特集", "LabelEnableAutomaticPortMap": "啟用自動連接埠映射", "LabelEnableAutomaticPortMapHelp": "自動嘗試映射公共連接埠到 UPnP 本地連接埠。這可能無法用於某些路由器。", @@ -138,7 +128,6 @@ "LabelPassword": "密碼:", "LabelPath": "路徑:", "LabelPreferredDisplayLanguage": "首選語言:", - "LabelPreferredDisplayLanguageHelp": "翻譯 Jellyfin 是一個進行中的項目。", "LabelPublicHttpPort": "公共 http 連接埠號碼:", "LabelPublicHttpPortHelp": "公共連接埠號碼應映射到本地 http 連接埠。", "LabelPublicHttpsPort": "公共 https 連接埠號碼:", @@ -183,7 +172,6 @@ "OptionArtist": "歌手", "OptionAscending": "遞升", "OptionAuto": "自動", - "OptionAutomatic": "自動", "OptionBlockBooks": "書籍", "OptionBluray": "藍光", "OptionCommunityRating": "討論區評分", @@ -256,14 +244,10 @@ "SystemDlnaProfilesHelp": "系統配置文件是唯讀的。更改系統配置文件將被保存到一個自定新配置文件。", "TabAccess": "可以通行", "TabAdvanced": "進階", - "TabAlbumArtists": "唱片歌手", "TabCatalog": "目錄", "TabDashboard": "狀態", - "TabEpisodes": "劇集", - "TabInfo": "資訊", "TabLatest": "最新", "TabMusic": "音樂", - "TabMusicVideos": "MV", "TabMyPlugins": "我的插件", "TabNetworks": "網絡", "TabNotifications": "通知", @@ -272,7 +256,6 @@ "TabProfiles": "簡介", "TabServer": "伺服器", "TabSettings": "設定", - "TabTrailers": "預告", "TabUpcoming": "即將發佈", "TellUsAboutYourself": "介紹一下自己", "ThisWizardWillGuideYou": "此教學協助您完成安裝過程。首先,請選擇您的語言。", @@ -407,13 +390,11 @@ "ButtonNetwork": "網絡", "ButtonMore": "更多", "ButtonInfo": "資訊", - "ButtonHome": "主頁", "ButtonGuide": "教學", "ButtonGotIt": "了解", "ButtonFullscreen": "全螢幕", "ButtonForgotPassword": "忘記密碼", "ButtonEditOtherUserPreferences": "更改用戶個人檔案,圖片及個人偏好。", - "ButtonEditImages": "更改圖片", "ButtonChangeServer": "更換伺服器", "ButtonBack": "返回", "ButtonAudioTracks": "音軌", @@ -450,7 +431,6 @@ "CinemaModeConfigurationHelp": "影院模式可在播放主影片前加入預告片及自定引言片段,帶來戲院式體驗。", "ChangingMetadataImageSettingsNewContent": "任何資料變更只適用於新加入到媒體庫的內容。如要更改舊有媒體的內容,請手動刷新資料。", "ButtonSelectView": "選擇介面", - "ButtonOff": "關閉", "ButtonLibraryAccess": "媒體庫存取", "BookLibraryHelp": "支援文字及有聲書本。請查閱{0} 書本命名教學 {1}。", "DatePlayed": "播放日期", diff --git a/src/strings/zh-tw.json b/src/strings/zh-tw.json index 6361242d4e..52d960ba5c 100644 --- a/src/strings/zh-tw.json +++ b/src/strings/zh-tw.json @@ -7,17 +7,11 @@ "ButtonAddServer": "新增伺服器", "ButtonAddUser": "新增使用者", "ButtonCancel": "取消", - "ButtonEdit": "編輯", - "ButtonEditImages": "編輯圖片", - "ButtonFilter": "過濾", "ButtonForgotPassword": "忘記密碼", "ButtonGotIt": "我知道了", "ButtonGuide": "節目表", - "ButtonHome": "首頁", "ButtonOk": "確定", - "ButtonPlay": "播放", "ButtonQuickStartGuide": "快速入門指南", - "ButtonRefresh": "重新整理", "ButtonRefreshGuideData": "更新電視節目表", "ButtonRemove": "清除", "ButtonResetPassword": "重設密碼", @@ -50,16 +44,13 @@ "Friday": "星期五", "GuideProviderLogin": "登入", "HeaderActiveRecordings": "正在錄影的節目", - "HeaderAddUser": "增加使用者", "HeaderAdditionalParts": "附加部份", "HeaderAdmin": "管理", - "HeaderCastCrew": "拍攝人員及演員", "HeaderCustomDlnaProfiles": "自訂設定檔", "HeaderDeleteItem": "刪除項目", "HeaderEasyPinCode": "簡易 PIN 碼", "HeaderFeatureAccess": "可以使用的功能", "HeaderFetchImages": "擷取圖像:", - "HeaderForgotPassword": "忘記密碼", "HeaderFrequentlyPlayed": "經常播放", "HeaderGuideProviders": "節目表提供者", "HeaderImageSettings": "圖像設置", @@ -90,7 +81,6 @@ "LabelCountry": "國家:", "LabelCurrentPassword": "當前的密碼:", "LabelDay": "日:", - "LabelDisplayMissingEpisodesWithinSeasons": "顯示節目季度內缺少的單元", "LabelEnableDlnaClientDiscoveryInterval": "尋找用戶端時間間隔", "LabelEnableDlnaDebugLogging": "記錄 DLNA 除錯資料到日誌", "LabelEnableDlnaDebugLoggingHelp": "將會建立非常大的日誌檔案,建議在進行故障排除時啟用。", @@ -151,7 +141,6 @@ "OptionAllowUserToManageServer": "允許該使用者管理伺服器", "OptionArtist": "歌手", "OptionAscending": "升序", - "OptionAutomatic": "自動", "OptionBlockLiveTvChannels": "電視頻道", "OptionBluray": "藍光", "OptionCommunityRating": "社區評分", @@ -228,10 +217,7 @@ "Subtitles": "字幕", "Sunday": "星期天", "TabAdvanced": "進階", - "TabAlbumArtists": "專輯歌手", "TabCatalog": "目錄", - "TabEpisodes": "單元", - "TabInfo": "資訊", "TabLatest": "最新", "TabMusic": "音樂", "TabMyPlugins": "我的附加元件", @@ -240,7 +226,6 @@ "TabProfiles": "設定", "TabServer": "伺服器", "TabSettings": "設定", - "TabTrailers": "預告", "TabUpcoming": "接下來", "TellUsAboutYourself": "介紹一下自己", "ThisWizardWillGuideYou": "此精靈將帶你完成安裝過程,開始之前,請選擇您慣用的語言。", @@ -315,7 +300,6 @@ "ButtonMore": "更多", "ButtonNetwork": "網路", "ButtonNextTrack": "下一首", - "ButtonOff": "關", "ButtonOpen": "開", "ButtonParentalControl": "家長控制", "ButtonPause": "暫停", @@ -334,7 +318,6 @@ "ButtonStart": "開始", "ButtonStop": "停止", "ButtonSubmit": "送出", - "ButtonSubtitles": "字幕", "ButtonTrailer": "預告片", "ButtonUninstall": "解除安裝", "ButtonWebsite": "網站", @@ -411,9 +394,7 @@ "EnablePhotosHelp": "圖片將被偵測到並和其他媒體檔案一起顯示。", "EnableStreamLooping": "自動循環播放直播", "EnableStreamLoopingHelp": "如果直播僅包含了幾秒鐘的數據並且需要被不斷的請求,請啟用此項。如果在沒有相關問題的情況下啟動此項,可能會導致一些問題。", - "EnableThemeSongs": "主題曲", "EnableThemeSongsHelp": "瀏覽媒體庫時主題曲將作為背景音樂播放。", - "EnableThemeVideos": "啟用主題影片", "EnableThemeVideosHelp": "瀏覽媒體庫時主題影片將作為背景影片播放。", "Episodes": "劇集", "ErrorAddingListingsToSchedulesDirect": "在將電視節目時間表新增到您的 Schedules Direct 帳號時出現錯誤。每個 Schedules Direct 帳號只允許有限的時間表。您在繼續前可能需要登入 Schedules Direct 網站並刪除帳號中的其它清單。", @@ -457,7 +438,6 @@ "HeaderAccessScheduleHelp": "建立一個存取時程以限制可存取的時段。", "HeaderActiveDevices": "運行中裝置", "HeaderActivity": "活動", - "HeaderAddScheduledTaskTrigger": "新增觸發", "HeaderAddToCollection": "加到收藏", "HeaderAddToPlaylist": "加到播放清單", "HeaderAddUpdateImage": "新增/更新圖片", @@ -472,7 +452,6 @@ "HeaderAudioBooks": "有聲書", "HeaderAudioSettings": "音訊設定", "HeaderBlockItemsWithNoRating": "封鎖沒有評級或設置不允許的內容:", - "HeaderBooks": "書籍", "HeaderBranding": "品牌", "HeaderCancelRecording": "取消錄製", "HeaderCancelSeries": "取消系列", @@ -507,7 +486,6 @@ "HeaderEditImages": "編輯圖片", "HeaderEnabledFields": "已啟用的欄位", "HeaderEnabledFieldsHelp": "反選欄位以鎖定並不讓其數據被更改。", - "HeaderEpisodes": "集數", "HeaderError": "錯誤", "HeaderExternalIds": "外部 ID:", "HeaderFavoriteAlbums": "最愛專輯", @@ -540,7 +518,6 @@ "HeaderLiveTvTunerSetup": "電視直播調諧器安裝", "HeaderLoginFailure": "登入失敗", "HeaderMedia": "媒體", - "HeaderMediaInfo": "媒體資訊", "HeaderMetadataSettings": "中繼資料設定", "HeaderMoreLikeThis": "更多類似的", "HeaderMusicQuality": "音質", @@ -665,7 +642,6 @@ "LabelAppNameExample": "例如:可愛蹦蹦主機、小安的 Jellyfin", "LabelArtists": "藝人:", "LabelArtistsHelp": "將多位演出者以「;」分隔。", - "LabelAudio": "音訊", "LabelAuthProvider": "認證提供者:", "LabelAutomaticallyRefreshInternetMetadataEvery": "從網路自動抓取中繼資料:", "LabelBindToLocalNetworkAddress": "綁定本地網路地址:", @@ -688,9 +664,7 @@ "LabelCustomCertificatePathHelp": "提供包含證書和金鑰的 PKCS #12 文件的路徑以在自訂域名上啟用 TLS。", "LabelCustomCss": "自訂 CSS:", "LabelCustomCssHelp": "於網頁介面套用您的自訂樣式。", - "LabelCustomDeviceDisplayName": "顯示名稱:", "Depressed": "凹陷", - "HeaderHome": "首頁", "HeaderSelectMetadataPathHelp": "瀏覽或者輸入路徑以用於保存中繼資料,請確保資料夾可以寫入。", "HeaderSelectServerCachePathHelp": "瀏覽或者輸入路徑以用於伺服器快取檔案。請確保該資料夾可以被寫入。", "LabelCustomDeviceDisplayNameHelp": "指定自訂的顯示名稱,或者留空以使用設備自己報告的名稱。", @@ -728,8 +702,6 @@ "LabelImageType": "圖片格式:", "LabelIdentificationFieldHelp": "不區分大小寫的子字串或正則表達式。", "Large": "大", - "LabelTranscodingAudioCodec": "音訊編碼:", - "MessageSettingsSaved": "設定已儲存.", "LabelTranscodePath": "轉檔路徑:", "LabelTranscodes": "轉檔:", "MinutesAfter": "分後", @@ -791,7 +763,6 @@ "LabelExtractChaptersDuringLibraryScan": "於媒體庫掃描時擷取章節圖片", "LabelHttpsPort": "本地 HTTPS 埠:", "LabelFailed": "失敗", - "LabelSubtitles": "字幕", "LabelSupportedMediaTypes": "支援的媒體類型:", "LabelTextBackgroundColor": "文字背景顏色:", "LabelTextColor": "文字顏色:", @@ -926,7 +897,6 @@ "OptionBlockTrailers": "預告", "OptionBlockTvShows": "電視節目", "OptionList": "清單", - "TabMusicVideos": "MV", "Yesterday": "昨天", "Yes": "是", "ButtonAddImage": "新增圖片", @@ -972,7 +942,6 @@ "TabStreaming": "串流", "TagsValue": "標記:{0}", "Thumb": "縮圖", - "TabResumeSettings": "繼續播放", "ValueAlbumCount": "{0} 張專輯", "ValueContainer": "影片容器:{0}", "ValueEpisodeCount": "{0} 集", @@ -993,7 +962,6 @@ "OptionProtocolHttp": "HTTP", "TabNfoSettings": "NFO 設定", "FetchingData": "獲取額外資料", - "LabelTranscodingVideoCodec": "影片編碼:", "MediaInfoBitDepth": "位元深度", "Mute": "靜音", "MessageConfirmShutdown": "你確定要關閉伺服器嗎?", @@ -1018,7 +986,6 @@ "LabelProfileContainer": "影片容器:", "LabelDropShadow": "陰影:", "LabelTVHomeScreen": "電視模式主畫面:", - "LabelTranscodingContainer": "影片容器:", "MovieLibraryHelp": "查看 {0}Jellyfin 電影命名指南{1}。", "None": "無", "OptionAllowMediaPlaybackTranscodingHelp": "限制轉檔可能會導致播放不支援的格式時失敗。", @@ -1305,7 +1272,6 @@ "LabelPostProcessorArguments": "處理器後命令行參數:", "LabelPostProcessorArgumentsHelp": "使用 {path} 作為錄製檔案的路徑。", "LabelPreferredDisplayLanguage": "首選語言:", - "LabelPreferredDisplayLanguageHelp": "歡迎一起翻譯 Jellyfin!", "LabelPreferredSubtitleLanguage": "字幕語言偏好:", "LabelProtocol": "協議:", "LabelProtocolInfo": "協議資訊:", From b45803f969a8ddbda65eacda9c64ddabf386a926 Mon Sep 17 00:00:00 2001 From: dkanada Date: Mon, 17 Aug 2020 20:42:26 +0900 Subject: [PATCH 116/285] fix issue with rebase --- src/scripts/clientUtils.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/scripts/clientUtils.js b/src/scripts/clientUtils.js index 564f5784b0..1bad8bc81c 100644 --- a/src/scripts/clientUtils.js +++ b/src/scripts/clientUtils.js @@ -101,7 +101,7 @@ export function processPluginConfigurationUpdateResult() { ]) .then(([{default: loading}, {default: toast}]) => { loading.hide(); - toast(Globalize.translate('MessageSettingsSaved')); + toast(Globalize.translate('SettingsSaved')); }); } @@ -112,7 +112,7 @@ export function processServerConfigurationUpdateResult(result) { ]) .then(([{default: loading}, {default: toast}]) => { loading.hide(); - toast(Globalize.translate('MessageSettingsSaved')); + toast(Globalize.translate('SettingsSaved')); }); } From fd3f1a7a22100f82faa450e577caa59f1e0b504c Mon Sep 17 00:00:00 2001 From: Mister Rajoy Date: Tue, 18 Aug 2020 01:45:43 +0200 Subject: [PATCH 117/285] Fix editMetadata/download didnt work with selected version --- src/controllers/itemDetails/index.js | 3506 +++++++++++++------------- 1 file changed, 1756 insertions(+), 1750 deletions(-) diff --git a/src/controllers/itemDetails/index.js b/src/controllers/itemDetails/index.js index c57190139f..4d66ea00b9 100644 --- a/src/controllers/itemDetails/index.js +++ b/src/controllers/itemDetails/index.js @@ -30,1914 +30,1918 @@ import 'emby-select'; /* eslint-disable indent */ - function getPromise(apiClient, params) { - const id = params.id; +function getPromise(apiClient, params) { + const id = params.id; - if (id) { - return apiClient.getItem(apiClient.getCurrentUserId(), id); - } - - if (params.seriesTimerId) { - return apiClient.getLiveTvSeriesTimer(params.seriesTimerId); - } - - if (params.genre) { - return apiClient.getGenre(params.genre, apiClient.getCurrentUserId()); - } - - if (params.musicgenre) { - return apiClient.getMusicGenre(params.musicgenre, apiClient.getCurrentUserId()); - } - - if (params.musicartist) { - return apiClient.getArtist(params.musicartist, apiClient.getCurrentUserId()); - } - - throw new Error('Invalid request'); + if (id) { + return apiClient.getItem(apiClient.getCurrentUserId(), id); } - function hideAll(page, className, show) { - for (const elem of page.querySelectorAll('.' + className)) { - if (show) { - elem.classList.remove('hide'); - } else { - elem.classList.add('hide'); - } + if (params.seriesTimerId) { + return apiClient.getLiveTvSeriesTimer(params.seriesTimerId); + } + + if (params.genre) { + return apiClient.getGenre(params.genre, apiClient.getCurrentUserId()); + } + + if (params.musicgenre) { + return apiClient.getMusicGenre(params.musicgenre, apiClient.getCurrentUserId()); + } + + if (params.musicartist) { + return apiClient.getArtist(params.musicartist, apiClient.getCurrentUserId()); + } + + throw new Error('Invalid request'); +} + +function hideAll(page, className, show) { + for (const elem of page.querySelectorAll('.' + className)) { + if (show) { + elem.classList.remove('hide'); + } else { + elem.classList.add('hide'); } } +} - function getContextMenuOptions(item, user, button) { - return { - item: item, - open: false, - play: false, - playAllFromHere: false, - queueAllFromHere: false, - positionTo: button, - cancelTimer: false, - record: false, - deleteItem: item.CanDelete === true, - shuffle: false, - instantMix: false, - user: user, - share: true - }; - } +function getContextMenuOptions(item, user, button) { + return { + item: item, + open: false, + play: false, + playAllFromHere: false, + queueAllFromHere: false, + positionTo: button, + cancelTimer: false, + record: false, + deleteItem: item.CanDelete === true, + shuffle: false, + instantMix: false, + user: user, + share: true + }; +} - function getProgramScheduleHtml(items) { - let html = ''; +function getProgramScheduleHtml(items) { + let html = ''; - html += '
    '; - html += listView.getListViewHtml({ - items: items, - enableUserDataButtons: false, - image: true, - imageSource: 'channel', - showProgramDateTime: true, - showChannel: false, - mediaInfo: false, - action: 'none', - moreButton: false, - recordButton: false - }); + html += '
    '; + html += listView.getListViewHtml({ + items: items, + enableUserDataButtons: false, + image: true, + imageSource: 'channel', + showProgramDateTime: true, + showChannel: false, + mediaInfo: false, + action: 'none', + moreButton: false, + recordButton: false + }); - html += '
    '; + html += '
    '; - return html; - } + return html; +} - function renderSeriesTimerSchedule(page, apiClient, seriesTimerId) { - apiClient.getLiveTvTimers({ - UserId: apiClient.getCurrentUserId(), - ImageTypeLimit: 1, - EnableImageTypes: 'Primary,Backdrop,Thumb', - SortBy: 'StartDate', - EnableTotalRecordCount: false, - EnableUserData: false, - SeriesTimerId: seriesTimerId, - Fields: 'ChannelInfo,ChannelImage' - }).then(function (result) { - if (result.Items.length && result.Items[0].SeriesTimerId != seriesTimerId) { - result.Items = []; - } - - const html = getProgramScheduleHtml(result.Items); - const scheduleTab = page.querySelector('.seriesTimerSchedule'); - scheduleTab.innerHTML = html; - imageLoader.lazyChildren(scheduleTab); - }); - } - - function renderTimerEditor(page, item, apiClient, user) { - if (item.Type !== 'Recording' || !user.Policy.EnableLiveTvManagement || !item.TimerId || item.Status !== 'InProgress') { - return void hideAll(page, 'btnCancelTimer'); +function renderSeriesTimerSchedule(page, apiClient, seriesTimerId) { + apiClient.getLiveTvTimers({ + UserId: apiClient.getCurrentUserId(), + ImageTypeLimit: 1, + EnableImageTypes: 'Primary,Backdrop,Thumb', + SortBy: 'StartDate', + EnableTotalRecordCount: false, + EnableUserData: false, + SeriesTimerId: seriesTimerId, + Fields: 'ChannelInfo,ChannelImage' + }).then(function (result) { + if (result.Items.length && result.Items[0].SeriesTimerId != seriesTimerId) { + result.Items = []; } - hideAll(page, 'btnCancelTimer', true); + const html = getProgramScheduleHtml(result.Items); + const scheduleTab = page.querySelector('.seriesTimerSchedule'); + scheduleTab.innerHTML = html; + imageLoader.lazyChildren(scheduleTab); + }); +} + +function renderTimerEditor(page, item, apiClient, user) { + if (item.Type !== 'Recording' || !user.Policy.EnableLiveTvManagement || !item.TimerId || item.Status !== 'InProgress') { + return void hideAll(page, 'btnCancelTimer'); } - function renderSeriesTimerEditor(page, item, apiClient, user) { - if (item.Type !== 'SeriesTimer') { - return void hideAll(page, 'btnCancelSeriesTimer'); - } + hideAll(page, 'btnCancelTimer', true); +} - if (user.Policy.EnableLiveTvManagement) { - import('seriesRecordingEditor').then(({default: seriesRecordingEditor}) => { - seriesRecordingEditor.embed(item, apiClient.serverId(), { - context: page.querySelector('.seriesRecordingEditor') - }); - }); - - page.querySelector('.seriesTimerScheduleSection').classList.remove('hide'); - hideAll(page, 'btnCancelSeriesTimer', true); - return void renderSeriesTimerSchedule(page, apiClient, item.Id); - } - - page.querySelector('.seriesTimerScheduleSection').classList.add('hide'); +function renderSeriesTimerEditor(page, item, apiClient, user) { + if (item.Type !== 'SeriesTimer') { return void hideAll(page, 'btnCancelSeriesTimer'); } - function renderTrackSelections(page, instance, item, forceReload) { - const select = page.querySelector('.selectSource'); - - if (!item.MediaSources || !itemHelper.supportsMediaSourceSelection(item) || playbackManager.getSupportedCommands().indexOf('PlayMediaSource') === -1 || !playbackManager.canPlay(item)) { - page.querySelector('.trackSelections').classList.add('hide'); - select.innerHTML = ''; - page.querySelector('.selectVideo').innerHTML = ''; - page.querySelector('.selectAudio').innerHTML = ''; - page.querySelector('.selectSubtitles').innerHTML = ''; - return; - } - - const mediaSources = item.MediaSources; - instance._currentPlaybackMediaSources = mediaSources; - - page.querySelector('.trackSelections').classList.remove('hide'); - select.setLabel(globalize.translate('LabelVersion')); - - const currentValue = select.value; - - const selectedId = mediaSources[0].Id; - select.innerHTML = mediaSources.map(function (v) { - const selected = v.Id === selectedId ? ' selected' : ''; - return ''; - }).join(''); - - if (mediaSources.length > 1) { - page.querySelector('.selectSourceContainer').classList.remove('hide'); - } else { - page.querySelector('.selectSourceContainer').classList.add('hide'); - } - - if (select.value !== currentValue || forceReload) { - renderVideoSelections(page, mediaSources); - renderAudioSelections(page, mediaSources); - renderSubtitleSelections(page, mediaSources); - } - } - - function renderVideoSelections(page, mediaSources) { - const mediaSourceId = page.querySelector('.selectSource').value; - const mediaSource = mediaSources.filter(function (m) { - return m.Id === mediaSourceId; - })[0]; - - const tracks = mediaSource.MediaStreams.filter(function (m) { - return m.Type === 'Video'; + if (user.Policy.EnableLiveTvManagement) { + import('seriesRecordingEditor').then(({ default: seriesRecordingEditor }) => { + seriesRecordingEditor.embed(item, apiClient.serverId(), { + context: page.querySelector('.seriesRecordingEditor') + }); }); - const select = page.querySelector('.selectVideo'); - select.setLabel(globalize.translate('LabelVideo')); - const selectedId = tracks.length ? tracks[0].Index : -1; - select.innerHTML = tracks.map(function (v) { - const selected = v.Index === selectedId ? ' selected' : ''; - const titleParts = []; - const resolutionText = mediaInfo.getResolutionText(v); + page.querySelector('.seriesTimerScheduleSection').classList.remove('hide'); + hideAll(page, 'btnCancelSeriesTimer', true); + return void renderSeriesTimerSchedule(page, apiClient, item.Id); + } - if (resolutionText) { - titleParts.push(resolutionText); - } + page.querySelector('.seriesTimerScheduleSection').classList.add('hide'); + return void hideAll(page, 'btnCancelSeriesTimer'); +} - if (v.Codec) { - titleParts.push(v.Codec.toUpperCase()); - } +function renderTrackSelections(page, instance, item, forceReload) { + const select = page.querySelector('.selectSource'); - return ''; - }).join(''); + if (!item.MediaSources || !itemHelper.supportsMediaSourceSelection(item) || playbackManager.getSupportedCommands().indexOf('PlayMediaSource') === -1 || !playbackManager.canPlay(item)) { + page.querySelector('.trackSelections').classList.add('hide'); + select.innerHTML = ''; + page.querySelector('.selectVideo').innerHTML = ''; + page.querySelector('.selectAudio').innerHTML = ''; + page.querySelector('.selectSubtitles').innerHTML = ''; + return; + } + + const mediaSources = item.MediaSources; + instance._currentPlaybackMediaSources = mediaSources; + + page.querySelector('.trackSelections').classList.remove('hide'); + select.setLabel(globalize.translate('LabelVersion')); + + const currentValue = select.value; + + const selectedId = mediaSources[0].Id; + select.innerHTML = mediaSources.map(function (v) { + const selected = v.Id === selectedId ? ' selected' : ''; + return ''; + }).join(''); + + if (mediaSources.length > 1) { + page.querySelector('.selectSourceContainer').classList.remove('hide'); + } else { + page.querySelector('.selectSourceContainer').classList.add('hide'); + } + + if (select.value !== currentValue || forceReload) { + renderVideoSelections(page, mediaSources); + renderAudioSelections(page, mediaSources); + renderSubtitleSelections(page, mediaSources); + } +} + +function renderVideoSelections(page, mediaSources) { + const mediaSourceId = page.querySelector('.selectSource').value; + const mediaSource = mediaSources.filter(function (m) { + return m.Id === mediaSourceId; + })[0]; + + const tracks = mediaSource.MediaStreams.filter(function (m) { + return m.Type === 'Video'; + }); + + const select = page.querySelector('.selectVideo'); + select.setLabel(globalize.translate('LabelVideo')); + const selectedId = tracks.length ? tracks[0].Index : -1; + select.innerHTML = tracks.map(function (v) { + const selected = v.Index === selectedId ? ' selected' : ''; + const titleParts = []; + const resolutionText = mediaInfo.getResolutionText(v); + + if (resolutionText) { + titleParts.push(resolutionText); + } + + if (v.Codec) { + titleParts.push(v.Codec.toUpperCase()); + } + + return ''; + }).join(''); + select.setAttribute('disabled', 'disabled'); + + if (tracks.length) { + page.querySelector('.selectVideoContainer').classList.remove('hide'); + } else { + page.querySelector('.selectVideoContainer').classList.add('hide'); + } +} + +function renderAudioSelections(page, mediaSources) { + const mediaSourceId = page.querySelector('.selectSource').value; + const mediaSource = mediaSources.filter(function (m) { + return m.Id === mediaSourceId; + })[0]; + const tracks = mediaSource.MediaStreams.filter(function (m) { + return m.Type === 'Audio'; + }); + const select = page.querySelector('.selectAudio'); + select.setLabel(globalize.translate('LabelAudio')); + const selectedId = mediaSource.DefaultAudioStreamIndex; + select.innerHTML = tracks.map(function (v) { + const selected = v.Index === selectedId ? ' selected' : ''; + return ''; + }).join(''); + + if (tracks.length > 1) { + select.removeAttribute('disabled'); + } else { select.setAttribute('disabled', 'disabled'); - - if (tracks.length) { - page.querySelector('.selectVideoContainer').classList.remove('hide'); - } else { - page.querySelector('.selectVideoContainer').classList.add('hide'); - } } - function renderAudioSelections(page, mediaSources) { - const mediaSourceId = page.querySelector('.selectSource').value; - const mediaSource = mediaSources.filter(function (m) { - return m.Id === mediaSourceId; - })[0]; - const tracks = mediaSource.MediaStreams.filter(function (m) { - return m.Type === 'Audio'; - }); - const select = page.querySelector('.selectAudio'); - select.setLabel(globalize.translate('LabelAudio')); - const selectedId = mediaSource.DefaultAudioStreamIndex; - select.innerHTML = tracks.map(function (v) { - const selected = v.Index === selectedId ? ' selected' : ''; + if (tracks.length) { + page.querySelector('.selectAudioContainer').classList.remove('hide'); + } else { + page.querySelector('.selectAudioContainer').classList.add('hide'); + } +} + +function renderSubtitleSelections(page, mediaSources) { + const mediaSourceId = page.querySelector('.selectSource').value; + const mediaSource = mediaSources.filter(function (m) { + return m.Id === mediaSourceId; + })[0]; + const tracks = mediaSource.MediaStreams.filter(function (m) { + return m.Type === 'Subtitle'; + }); + const select = page.querySelector('.selectSubtitles'); + select.setLabel(globalize.translate('LabelSubtitles')); + const selectedId = mediaSource.DefaultSubtitleStreamIndex == null ? -1 : mediaSource.DefaultSubtitleStreamIndex; + + const videoTracks = mediaSource.MediaStreams.filter(function (m) { + return m.Type === 'Video'; + }); + + // This only makes sense on Video items + if (videoTracks.length) { + let selected = selectedId === -1 ? ' selected' : ''; + select.innerHTML = '' + tracks.map(function (v) { + selected = v.Index === selectedId ? ' selected' : ''; return ''; }).join(''); - if (tracks.length > 1) { + if (tracks.length > 0) { select.removeAttribute('disabled'); } else { select.setAttribute('disabled', 'disabled'); } - if (tracks.length) { - page.querySelector('.selectAudioContainer').classList.remove('hide'); - } else { - page.querySelector('.selectAudioContainer').classList.add('hide'); - } + page.querySelector('.selectSubtitlesContainer').classList.remove('hide'); + } else { + select.innerHTML = ''; + page.querySelector('.selectSubtitlesContainer').classList.add('hide'); } +} - function renderSubtitleSelections(page, mediaSources) { - const mediaSourceId = page.querySelector('.selectSource').value; - const mediaSource = mediaSources.filter(function (m) { - return m.Id === mediaSourceId; - })[0]; - const tracks = mediaSource.MediaStreams.filter(function (m) { - return m.Type === 'Subtitle'; - }); - const select = page.querySelector('.selectSubtitles'); - select.setLabel(globalize.translate('LabelSubtitles')); - const selectedId = mediaSource.DefaultSubtitleStreamIndex == null ? -1 : mediaSource.DefaultSubtitleStreamIndex; +function reloadPlayButtons(page, item) { + let canPlay = false; - const videoTracks = mediaSource.MediaStreams.filter(function (m) { - return m.Type === 'Video'; - }); + if (item.Type == 'Program') { + const now = new Date(); - // This only makes sense on Video items - if (videoTracks.length) { - let selected = selectedId === -1 ? ' selected' : ''; - select.innerHTML = '' + tracks.map(function (v) { - selected = v.Index === selectedId ? ' selected' : ''; - return ''; - }).join(''); - - if (tracks.length > 0) { - select.removeAttribute('disabled'); - } else { - select.setAttribute('disabled', 'disabled'); - } - - page.querySelector('.selectSubtitlesContainer').classList.remove('hide'); - } else { - select.innerHTML = ''; - page.querySelector('.selectSubtitlesContainer').classList.add('hide'); - } - } - - function reloadPlayButtons(page, item) { - let canPlay = false; - - if (item.Type == 'Program') { - const now = new Date(); - - if (now >= datetime.parseISO8601Date(item.StartDate, true) && now < datetime.parseISO8601Date(item.EndDate, true)) { - hideAll(page, 'btnPlay', true); - canPlay = true; - } else { - hideAll(page, 'btnPlay'); - } - - hideAll(page, 'btnResume'); - hideAll(page, 'btnInstantMix'); - hideAll(page, 'btnShuffle'); - } else if (playbackManager.canPlay(item)) { + if (now >= datetime.parseISO8601Date(item.StartDate, true) && now < datetime.parseISO8601Date(item.EndDate, true)) { hideAll(page, 'btnPlay', true); - const enableInstantMix = ['Audio', 'MusicAlbum', 'MusicGenre', 'MusicArtist'].indexOf(item.Type) !== -1; - hideAll(page, 'btnInstantMix', enableInstantMix); - const enableShuffle = item.IsFolder || ['MusicAlbum', 'MusicGenre', 'MusicArtist'].indexOf(item.Type) !== -1; - hideAll(page, 'btnShuffle', enableShuffle); canPlay = true; - - const isResumable = item.UserData && item.UserData.PlaybackPositionTicks > 0; - hideAll(page, 'btnResume', isResumable); - - if (isResumable) { - for (const elem of page.querySelectorAll('.btnPlay')) { - elem.querySelector('.detailButton-icon').classList.replace('play_arrow', 'replay'); - } - } } else { hideAll(page, 'btnPlay'); - hideAll(page, 'btnResume'); - hideAll(page, 'btnInstantMix'); - hideAll(page, 'btnShuffle'); } - return canPlay; + hideAll(page, 'btnResume'); + hideAll(page, 'btnInstantMix'); + hideAll(page, 'btnShuffle'); + } else if (playbackManager.canPlay(item)) { + hideAll(page, 'btnPlay', true); + const enableInstantMix = ['Audio', 'MusicAlbum', 'MusicGenre', 'MusicArtist'].indexOf(item.Type) !== -1; + hideAll(page, 'btnInstantMix', enableInstantMix); + const enableShuffle = item.IsFolder || ['MusicAlbum', 'MusicGenre', 'MusicArtist'].indexOf(item.Type) !== -1; + hideAll(page, 'btnShuffle', enableShuffle); + canPlay = true; + + const isResumable = item.UserData && item.UserData.PlaybackPositionTicks > 0; + hideAll(page, 'btnResume', isResumable); + + if (isResumable) { + for (const elem of page.querySelectorAll('.btnPlay')) { + elem.querySelector('.detailButton-icon').classList.replace('play_arrow', 'replay'); + } + } + } else { + hideAll(page, 'btnPlay'); + hideAll(page, 'btnResume'); + hideAll(page, 'btnInstantMix'); + hideAll(page, 'btnShuffle'); } - function reloadUserDataButtons(page, item) { - let i; - let length; - const btnPlaystates = page.querySelectorAll('.btnPlaystate'); + return canPlay; +} - for (i = 0, length = btnPlaystates.length; i < length; i++) { - const btnPlaystate = btnPlaystates[i]; +function reloadUserDataButtons(page, item) { + let i; + let length; + const btnPlaystates = page.querySelectorAll('.btnPlaystate'); - if (itemHelper.canMarkPlayed(item)) { - btnPlaystate.classList.remove('hide'); - btnPlaystate.setItem(item); - } else { - btnPlaystate.classList.add('hide'); - btnPlaystate.setItem(null); - } - } + for (i = 0, length = btnPlaystates.length; i < length; i++) { + const btnPlaystate = btnPlaystates[i]; - const btnUserRatings = page.querySelectorAll('.btnUserRating'); - - for (i = 0, length = btnUserRatings.length; i < length; i++) { - const btnUserRating = btnUserRatings[i]; - - if (itemHelper.canRate(item)) { - btnUserRating.classList.remove('hide'); - btnUserRating.setItem(item); - } else { - btnUserRating.classList.add('hide'); - btnUserRating.setItem(null); - } + if (itemHelper.canMarkPlayed(item)) { + btnPlaystate.classList.remove('hide'); + btnPlaystate.setItem(item); + } else { + btnPlaystate.classList.add('hide'); + btnPlaystate.setItem(null); } } - function getArtistLinksHtml(artists, serverId, context) { - const html = []; + const btnUserRatings = page.querySelectorAll('.btnUserRating'); - for (const artist of artists) { - const href = appRouter.getRouteUrl(artist, { - context: context, - itemType: 'MusicArtist', - serverId: serverId - }); - html.push('' + artist.Name + ''); + for (i = 0, length = btnUserRatings.length; i < length; i++) { + const btnUserRating = btnUserRatings[i]; + + if (itemHelper.canRate(item)) { + btnUserRating.classList.remove('hide'); + btnUserRating.setItem(item); + } else { + btnUserRating.classList.add('hide'); + btnUserRating.setItem(null); } - - return html.join(' / '); } +} - /** - * Renders the item's name block - * @param {Object} item - Item used to render the name. - * @param {HTMLDivElement} container - Container to render the information into. - * @param {Object} context - Application context. - */ - function renderName(item, container, context) { - let parentRoute; - const parentNameHtml = []; - let parentNameLast = false; +function getArtistLinksHtml(artists, serverId, context) { + const html = []; - if (item.AlbumArtists) { - parentNameHtml.push(getArtistLinksHtml(item.AlbumArtists, item.ServerId, context)); - parentNameLast = true; - } else if (item.ArtistItems && item.ArtistItems.length && item.Type === 'MusicVideo') { - parentNameHtml.push(getArtistLinksHtml(item.ArtistItems, item.ServerId, context)); - parentNameLast = true; - } else if (item.SeriesName && item.Type === 'Episode') { - parentRoute = appRouter.getRouteUrl({ - Id: item.SeriesId, - Name: item.SeriesName, - Type: 'Series', - IsFolder: true, - ServerId: item.ServerId - }, { - context: context - }); - parentNameHtml.push('' + item.SeriesName + ''); - } else if (item.IsSeries || item.EpisodeTitle) { - parentNameHtml.push(item.Name); - } - - if (item.SeriesName && item.Type === 'Season') { - parentRoute = appRouter.getRouteUrl({ - Id: item.SeriesId, - Name: item.SeriesName, - Type: 'Series', - IsFolder: true, - ServerId: item.ServerId - }, { - context: context - }); - parentNameHtml.push('' + item.SeriesName + ''); - } else if (item.ParentIndexNumber != null && item.Type === 'Episode') { - parentRoute = appRouter.getRouteUrl({ - Id: item.SeasonId, - Name: item.SeasonName, - Type: 'Season', - IsFolder: true, - ServerId: item.ServerId - }, { - context: context - }); - parentNameHtml.push('' + item.SeasonName + ''); - } else if (item.ParentIndexNumber != null && item.IsSeries) { - parentNameHtml.push(item.SeasonName || 'S' + item.ParentIndexNumber); - } else if (item.Album && item.AlbumId && (item.Type === 'MusicVideo' || item.Type === 'Audio')) { - parentRoute = appRouter.getRouteUrl({ - Id: item.AlbumId, - Name: item.Album, - Type: 'MusicAlbum', - IsFolder: true, - ServerId: item.ServerId - }, { - context: context - }); - parentNameHtml.push('' + item.Album + ''); - } else if (item.Album) { - parentNameHtml.push(item.Album); - } - - // FIXME: This whole section needs some refactoring, so it becames easier to scale across all form factors. See GH #1022 - let html = ''; - const tvShowHtml = parentNameHtml[0]; - const tvSeasonHtml = parentNameHtml[1]; - - if (parentNameHtml.length) { - if (parentNameLast) { - // Music - if (layoutManager.mobile) { - html = '

    ' + parentNameHtml.join('
    ') + '

    '; - } else { - html = '

    ' + parentNameHtml.join(' - ') + '

    '; - } - } else { - html = '

    ' + tvShowHtml + '

    '; - } - } - - const name = itemHelper.getDisplayName(item, { - includeParentInfo: false + for (const artist of artists) { + const href = appRouter.getRouteUrl(artist, { + context: context, + itemType: 'MusicArtist', + serverId: serverId }); - - if (html && !parentNameLast) { - if (tvSeasonHtml) { - html += '

    ' + tvSeasonHtml + ' - ' + name + '

    '; - } else { - html += '

    ' + name + '

    '; - } - } else if (item.OriginalTitle && item.OriginalTitle != item.Name) { - html = '

    ' + name + '

    ' + html; - } else { - html = '

    ' + name + '

    ' + html; - } - - if (item.OriginalTitle && item.OriginalTitle != item.Name) { - html += '

    ' + item.OriginalTitle + '

    '; - } - - container.innerHTML = html; - - if (html.length) { - container.classList.remove('hide'); - } else { - container.classList.add('hide'); - } + html.push('' + artist.Name + ''); } - function setTrailerButtonVisibility(page, item) { - if ((item.LocalTrailerCount || item.RemoteTrailers && item.RemoteTrailers.length) && playbackManager.getSupportedCommands().indexOf('PlayTrailers') !== -1) { - hideAll(page, 'btnPlayTrailer', true); - } else { - hideAll(page, 'btnPlayTrailer'); - } - } + return html.join(' / '); +} - function renderBackdrop(item) { - if (dom.getWindowSize().innerWidth >= 1000) { - backdrop.setBackdrops([item]); - } else { - backdrop.clearBackdrop(); - } - } +/** + * Renders the item's name block + * @param {Object} item - Item used to render the name. + * @param {HTMLDivElement} container - Container to render the information into. + * @param {Object} context - Application context. + */ +function renderName(item, container, context) { + let parentRoute; + const parentNameHtml = []; + let parentNameLast = false; - function renderDetailPageBackdrop(page, item, apiClient) { - let imgUrl; - let hasbackdrop = false; - const itemBackdropElement = page.querySelector('#itemBackdrop'); - - if (!layoutManager.mobile && !userSettings.detailsBanner()) { - return false; - } - - if (item.BackdropImageTags && item.BackdropImageTags.length) { - imgUrl = apiClient.getScaledImageUrl(item.Id, { - type: 'Backdrop', - maxWidth: dom.getScreenWidth(), - index: 0, - tag: item.BackdropImageTags[0] - }); - imageLoader.lazyImage(itemBackdropElement, imgUrl); - hasbackdrop = true; - } else if (item.ParentBackdropItemId && item.ParentBackdropImageTags && item.ParentBackdropImageTags.length) { - imgUrl = apiClient.getScaledImageUrl(item.ParentBackdropItemId, { - type: 'Backdrop', - maxWidth: dom.getScreenWidth(), - index: 0, - tag: item.ParentBackdropImageTags[0] - }); - imageLoader.lazyImage(itemBackdropElement, imgUrl); - hasbackdrop = true; - } else if (item.ImageTags && item.ImageTags.Primary) { - imgUrl = apiClient.getScaledImageUrl(item.Id, { - type: 'Primary', - maxWidth: dom.getScreenWidth(), - tag: item.ImageTags.Primary - }); - imageLoader.lazyImage(itemBackdropElement, imgUrl); - hasbackdrop = true; - } else { - itemBackdropElement.style.backgroundImage = ''; - } - - return hasbackdrop; - } - - function reloadFromItem(instance, page, params, item, user) { - const apiClient = connectionManager.getApiClient(item.ServerId); - - Emby.Page.setTitle(''); - - // Start rendering the artwork first - renderImage(page, item); - renderLogo(page, item, apiClient); - renderBackdrop(item); - renderDetailPageBackdrop(page, item, apiClient); - - // Render the main information for the item - page.querySelector('.detailPagePrimaryContainer').classList.add('detailRibbon'); - renderName(item, page.querySelector('.nameContainer'), params.context); - renderDetails(page, item, apiClient, params.context); - renderTrackSelections(page, instance, item); - - renderSeriesTimerEditor(page, item, apiClient, user); - renderTimerEditor(page, item, apiClient, user); - setInitialCollapsibleState(page, item, apiClient, params.context, user); - const canPlay = reloadPlayButtons(page, item); - - if ((item.LocalTrailerCount || item.RemoteTrailers && item.RemoteTrailers.length) && playbackManager.getSupportedCommands().indexOf('PlayTrailers') !== -1) { - hideAll(page, 'btnPlayTrailer', true); - } else { - hideAll(page, 'btnPlayTrailer'); - } - - setTrailerButtonVisibility(page, item); - - if (item.Type !== 'Program' || canPlay) { - hideAll(page, 'mainDetailButtons', true); - } else { - hideAll(page, 'mainDetailButtons'); - } - - showRecordingFields(instance, page, item, user); - const groupedVersions = (item.MediaSources || []).filter(function (g) { - return g.Type == 'Grouping'; + if (item.AlbumArtists) { + parentNameHtml.push(getArtistLinksHtml(item.AlbumArtists, item.ServerId, context)); + parentNameLast = true; + } else if (item.ArtistItems && item.ArtistItems.length && item.Type === 'MusicVideo') { + parentNameHtml.push(getArtistLinksHtml(item.ArtistItems, item.ServerId, context)); + parentNameLast = true; + } else if (item.SeriesName && item.Type === 'Episode') { + parentRoute = appRouter.getRouteUrl({ + Id: item.SeriesId, + Name: item.SeriesName, + Type: 'Series', + IsFolder: true, + ServerId: item.ServerId + }, { + context: context }); + parentNameHtml.push('' + item.SeriesName + ''); + } else if (item.IsSeries || item.EpisodeTitle) { + parentNameHtml.push(item.Name); + } - if (user.Policy.IsAdministrator && groupedVersions.length) { - page.querySelector('.btnSplitVersions').classList.remove('hide'); - } else { - page.querySelector('.btnSplitVersions').classList.add('hide'); - } + if (item.SeriesName && item.Type === 'Season') { + parentRoute = appRouter.getRouteUrl({ + Id: item.SeriesId, + Name: item.SeriesName, + Type: 'Series', + IsFolder: true, + ServerId: item.ServerId + }, { + context: context + }); + parentNameHtml.push('' + item.SeriesName + ''); + } else if (item.ParentIndexNumber != null && item.Type === 'Episode') { + parentRoute = appRouter.getRouteUrl({ + Id: item.SeasonId, + Name: item.SeasonName, + Type: 'Season', + IsFolder: true, + ServerId: item.ServerId + }, { + context: context + }); + parentNameHtml.push('' + item.SeasonName + ''); + } else if (item.ParentIndexNumber != null && item.IsSeries) { + parentNameHtml.push(item.SeasonName || 'S' + item.ParentIndexNumber); + } else if (item.Album && item.AlbumId && (item.Type === 'MusicVideo' || item.Type === 'Audio')) { + parentRoute = appRouter.getRouteUrl({ + Id: item.AlbumId, + Name: item.Album, + Type: 'MusicAlbum', + IsFolder: true, + ServerId: item.ServerId + }, { + context: context + }); + parentNameHtml.push('' + item.Album + ''); + } else if (item.Album) { + parentNameHtml.push(item.Album); + } - if (itemContextMenu.getCommands(getContextMenuOptions(item, user)).length) { - hideAll(page, 'btnMoreCommands', true); - } else { - hideAll(page, 'btnMoreCommands'); - } + // FIXME: This whole section needs some refactoring, so it becames easier to scale across all form factors. See GH #1022 + let html = ''; + const tvShowHtml = parentNameHtml[0]; + const tvSeasonHtml = parentNameHtml[1]; - const itemBirthday = page.querySelector('#itemBirthday'); - - if (item.Type == 'Person' && item.PremiereDate) { - try { - const birthday = datetime.parseISO8601Date(item.PremiereDate, true).toDateString(); - itemBirthday.classList.remove('hide'); - itemBirthday.innerHTML = globalize.translate('BirthDateValue', birthday); - } catch (err) { - itemBirthday.classList.add('hide'); + if (parentNameHtml.length) { + if (parentNameLast) { + // Music + if (layoutManager.mobile) { + html = '

    ' + parentNameHtml.join('
    ') + '

    '; + } else { + html = '

    ' + parentNameHtml.join(' - ') + '

    '; } } else { + html = '

    ' + tvShowHtml + '

    '; + } + } + + const name = itemHelper.getDisplayName(item, { + includeParentInfo: false + }); + + if (html && !parentNameLast) { + if (tvSeasonHtml) { + html += '

    ' + tvSeasonHtml + ' - ' + name + '

    '; + } else { + html += '

    ' + name + '

    '; + } + } else if (item.OriginalTitle && item.OriginalTitle != item.Name) { + html = '

    ' + name + '

    ' + html; + } else { + html = '

    ' + name + '

    ' + html; + } + + if (item.OriginalTitle && item.OriginalTitle != item.Name) { + html += '

    ' + item.OriginalTitle + '

    '; + } + + container.innerHTML = html; + + if (html.length) { + container.classList.remove('hide'); + } else { + container.classList.add('hide'); + } +} + +function setTrailerButtonVisibility(page, item) { + if ((item.LocalTrailerCount || item.RemoteTrailers && item.RemoteTrailers.length) && playbackManager.getSupportedCommands().indexOf('PlayTrailers') !== -1) { + hideAll(page, 'btnPlayTrailer', true); + } else { + hideAll(page, 'btnPlayTrailer'); + } +} + +function renderBackdrop(item) { + if (dom.getWindowSize().innerWidth >= 1000) { + backdrop.setBackdrops([item]); + } else { + backdrop.clearBackdrop(); + } +} + +function renderDetailPageBackdrop(page, item, apiClient) { + let imgUrl; + let hasbackdrop = false; + const itemBackdropElement = page.querySelector('#itemBackdrop'); + + if (!layoutManager.mobile && !userSettings.detailsBanner()) { + return false; + } + + if (item.BackdropImageTags && item.BackdropImageTags.length) { + imgUrl = apiClient.getScaledImageUrl(item.Id, { + type: 'Backdrop', + maxWidth: dom.getScreenWidth(), + index: 0, + tag: item.BackdropImageTags[0] + }); + imageLoader.lazyImage(itemBackdropElement, imgUrl); + hasbackdrop = true; + } else if (item.ParentBackdropItemId && item.ParentBackdropImageTags && item.ParentBackdropImageTags.length) { + imgUrl = apiClient.getScaledImageUrl(item.ParentBackdropItemId, { + type: 'Backdrop', + maxWidth: dom.getScreenWidth(), + index: 0, + tag: item.ParentBackdropImageTags[0] + }); + imageLoader.lazyImage(itemBackdropElement, imgUrl); + hasbackdrop = true; + } else if (item.ImageTags && item.ImageTags.Primary) { + imgUrl = apiClient.getScaledImageUrl(item.Id, { + type: 'Primary', + maxWidth: dom.getScreenWidth(), + tag: item.ImageTags.Primary + }); + imageLoader.lazyImage(itemBackdropElement, imgUrl); + hasbackdrop = true; + } else { + itemBackdropElement.style.backgroundImage = ''; + } + + return hasbackdrop; +} + +function reloadFromItem(instance, page, params, item, user) { + const apiClient = connectionManager.getApiClient(item.ServerId); + + Emby.Page.setTitle(''); + + // Start rendering the artwork first + renderImage(page, item); + renderLogo(page, item, apiClient); + renderBackdrop(item); + renderDetailPageBackdrop(page, item, apiClient); + + // Render the main information for the item + page.querySelector('.detailPagePrimaryContainer').classList.add('detailRibbon'); + renderName(item, page.querySelector('.nameContainer'), params.context); + renderDetails(page, item, apiClient, params.context); + renderTrackSelections(page, instance, item); + + renderSeriesTimerEditor(page, item, apiClient, user); + renderTimerEditor(page, item, apiClient, user); + setInitialCollapsibleState(page, item, apiClient, params.context, user); + const canPlay = reloadPlayButtons(page, item); + + if ((item.LocalTrailerCount || item.RemoteTrailers && item.RemoteTrailers.length) && playbackManager.getSupportedCommands().indexOf('PlayTrailers') !== -1) { + hideAll(page, 'btnPlayTrailer', true); + } else { + hideAll(page, 'btnPlayTrailer'); + } + + setTrailerButtonVisibility(page, item); + + if (item.Type !== 'Program' || canPlay) { + hideAll(page, 'mainDetailButtons', true); + } else { + hideAll(page, 'mainDetailButtons'); + } + + showRecordingFields(instance, page, item, user); + const groupedVersions = (item.MediaSources || []).filter(function (g) { + return g.Type == 'Grouping'; + }); + + if (user.Policy.IsAdministrator && groupedVersions.length) { + page.querySelector('.btnSplitVersions').classList.remove('hide'); + } else { + page.querySelector('.btnSplitVersions').classList.add('hide'); + } + + if (itemContextMenu.getCommands(getContextMenuOptions(item, user)).length) { + hideAll(page, 'btnMoreCommands', true); + } else { + hideAll(page, 'btnMoreCommands'); + } + + const itemBirthday = page.querySelector('#itemBirthday'); + + if (item.Type == 'Person' && item.PremiereDate) { + try { + const birthday = datetime.parseISO8601Date(item.PremiereDate, true).toDateString(); + itemBirthday.classList.remove('hide'); + itemBirthday.innerHTML = globalize.translate('BirthDateValue', birthday); + } catch (err) { itemBirthday.classList.add('hide'); } + } else { + itemBirthday.classList.add('hide'); + } - const itemDeathDate = page.querySelector('#itemDeathDate'); + const itemDeathDate = page.querySelector('#itemDeathDate'); - if (item.Type == 'Person' && item.EndDate) { - try { - const deathday = datetime.parseISO8601Date(item.EndDate, true).toDateString(); - itemDeathDate.classList.remove('hide'); - itemDeathDate.innerHTML = globalize.translate('DeathDateValue', deathday); - } catch (err) { - itemDeathDate.classList.add('hide'); - } - } else { + if (item.Type == 'Person' && item.EndDate) { + try { + const deathday = datetime.parseISO8601Date(item.EndDate, true).toDateString(); + itemDeathDate.classList.remove('hide'); + itemDeathDate.innerHTML = globalize.translate('DeathDateValue', deathday); + } catch (err) { itemDeathDate.classList.add('hide'); } - - const itemBirthLocation = page.querySelector('#itemBirthLocation'); - - if (item.Type == 'Person' && item.ProductionLocations && item.ProductionLocations.length) { - const gmap = '' + item.ProductionLocations[0] + ''; - itemBirthLocation.classList.remove('hide'); - itemBirthLocation.innerHTML = globalize.translate('BirthPlaceValue', gmap); - } else { - itemBirthLocation.classList.add('hide'); - } - - setPeopleHeader(page, item); - loading.hide(); - - if (item.Type === 'Book' && item.CanDownload && appHost.supports('filedownload')) { - hideAll(page, 'btnDownload', true); - } - - import('autoFocuser').then(({default: autoFocuser}) => { - autoFocuser.autoFocus(page); - }); + } else { + itemDeathDate.classList.add('hide'); } - function logoImageUrl(item, apiClient, options) { - options = options || {}; - options.type = 'Logo'; + const itemBirthLocation = page.querySelector('#itemBirthLocation'); - if (item.ImageTags && item.ImageTags.Logo) { - options.tag = item.ImageTags.Logo; - return apiClient.getScaledImageUrl(item.Id, options); - } - - if (item.ParentLogoImageTag) { - options.tag = item.ParentLogoImageTag; - return apiClient.getScaledImageUrl(item.ParentLogoItemId, options); - } - - return null; + if (item.Type == 'Person' && item.ProductionLocations && item.ProductionLocations.length) { + const gmap = '' + item.ProductionLocations[0] + ''; + itemBirthLocation.classList.remove('hide'); + itemBirthLocation.innerHTML = globalize.translate('BirthPlaceValue', gmap); + } else { + itemBirthLocation.classList.add('hide'); } - function renderLogo(page, item, apiClient) { - const detailLogo = page.querySelector('.detailLogo'); + setPeopleHeader(page, item); + loading.hide(); - const url = logoImageUrl(item, apiClient, {}); - - if (!layoutManager.mobile && !userSettings.enableBackdrops()) { - detailLogo.classList.add('hide'); - } else if (url) { - detailLogo.classList.remove('hide'); - imageLoader.setLazyImage(detailLogo, url); - } else { - detailLogo.classList.add('hide'); - } + if (item.Type === 'Book' && item.CanDownload && appHost.supports('filedownload')) { + hideAll(page, 'btnDownload', true); } - function showRecordingFields(instance, page, item, user) { - if (!instance.currentRecordingFields) { - const recordingFieldsElement = page.querySelector('.recordingFields'); + import('autoFocuser').then(({ default: autoFocuser }) => { + autoFocuser.autoFocus(page); + }); +} - if (item.Type == 'Program' && user.Policy.EnableLiveTvManagement) { - import('recordingFields').then(({default: recordingFields}) => { - instance.currentRecordingFields = new recordingFields({ - parent: recordingFieldsElement, - programId: item.Id, - serverId: item.ServerId - }); - recordingFieldsElement.classList.remove('hide'); +function logoImageUrl(item, apiClient, options) { + options = options || {}; + options.type = 'Logo'; + + if (item.ImageTags && item.ImageTags.Logo) { + options.tag = item.ImageTags.Logo; + return apiClient.getScaledImageUrl(item.Id, options); + } + + if (item.ParentLogoImageTag) { + options.tag = item.ParentLogoImageTag; + return apiClient.getScaledImageUrl(item.ParentLogoItemId, options); + } + + return null; +} + +function renderLogo(page, item, apiClient) { + const detailLogo = page.querySelector('.detailLogo'); + + const url = logoImageUrl(item, apiClient, {}); + + if (!layoutManager.mobile && !userSettings.enableBackdrops()) { + detailLogo.classList.add('hide'); + } else if (url) { + detailLogo.classList.remove('hide'); + imageLoader.setLazyImage(detailLogo, url); + } else { + detailLogo.classList.add('hide'); + } +} + +function showRecordingFields(instance, page, item, user) { + if (!instance.currentRecordingFields) { + const recordingFieldsElement = page.querySelector('.recordingFields'); + + if (item.Type == 'Program' && user.Policy.EnableLiveTvManagement) { + import('recordingFields').then(({ default: recordingFields }) => { + instance.currentRecordingFields = new recordingFields({ + parent: recordingFieldsElement, + programId: item.Id, + serverId: item.ServerId }); - } else { - recordingFieldsElement.classList.add('hide'); - recordingFieldsElement.innerHTML = ''; - } - } - } - - function renderLinks(page, item) { - const externalLinksElem = page.querySelector('.itemExternalLinks'); - - const links = []; - - if (!layoutManager.tv && item.HomePageUrl) { - links.push(`${globalize.translate('ButtonWebsite')}`); - } - - if (item.ExternalUrls) { - for (const url of item.ExternalUrls) { - links.push(`${url.Name}`); - } - } - - const html = []; - if (links.length) { - html.push(links.join(', ')); - } - - externalLinksElem.innerHTML = html.join(', '); - - if (html.length) { - externalLinksElem.classList.remove('hide'); - } else { - externalLinksElem.classList.add('hide'); - } - } - - function renderDetailImage(elem, item, imageLoader) { - const itemArray = []; - itemArray.push(item); - const cardHtml = cardBuilder.getCardsHtml(itemArray, { - shape: 'auto', - showTitle: false, - centerText: true, - overlayText: false, - transition: false, - disableIndicators: true, - disableHoverMenu: true, - overlayPlayButton: true, - width: dom.getWindowSize().innerWidth * 0.25 - }); - - elem.innerHTML = cardHtml; - imageLoader.lazyChildren(elem); - } - - function renderImage(page, item) { - renderDetailImage( - page.querySelector('.detailImageContainer'), - item, - imageLoader - ); - } - - function refreshDetailImageUserData(elem, item) { - elem.querySelector('.detailImageProgressContainer').innerHTML = indicators.getProgressBarHtml(item); - } - - function refreshImage(page, item) { - refreshDetailImageUserData(page.querySelector('.detailImageContainer'), item); - } - - function setPeopleHeader(page, item) { - if (item.MediaType == 'Audio' || item.Type == 'MusicAlbum' || item.MediaType == 'Book' || item.MediaType == 'Photo') { - page.querySelector('#peopleHeader').innerHTML = globalize.translate('People'); - } else { - page.querySelector('#peopleHeader').innerHTML = globalize.translate('HeaderCastAndCrew'); - } - } - - function renderNextUp(page, item, user) { - const section = page.querySelector('.nextUpSection'); - - if (item.Type != 'Series') { - return void section.classList.add('hide'); - } - - connectionManager.getApiClient(item.ServerId).getNextUpEpisodes({ - SeriesId: item.Id, - UserId: user.Id - }).then(function (result) { - if (result.Items.length) { - section.classList.remove('hide'); - } else { - section.classList.add('hide'); - } - - const html = cardBuilder.getCardsHtml({ - items: result.Items, - shape: 'overflowBackdrop', - showTitle: true, - displayAsSpecial: item.Type == 'Season' && item.IndexNumber, - overlayText: false, - centerText: true, - overlayPlayButton: true + recordingFieldsElement.classList.remove('hide'); }); - const itemsContainer = section.querySelector('.nextUpItems'); - itemsContainer.innerHTML = html; - imageLoader.lazyChildren(itemsContainer); - }); + } else { + recordingFieldsElement.classList.add('hide'); + recordingFieldsElement.innerHTML = ''; + } + } +} + +function renderLinks(page, item) { + const externalLinksElem = page.querySelector('.itemExternalLinks'); + + const links = []; + + if (!layoutManager.tv && item.HomePageUrl) { + links.push(`${globalize.translate('ButtonWebsite')}`); } - function setInitialCollapsibleState(page, item, apiClient, context, user) { - page.querySelector('.collectionItems').innerHTML = ''; + if (item.ExternalUrls) { + for (const url of item.ExternalUrls) { + links.push(`${url.Name}`); + } + } - if (item.Type == 'Playlist') { - page.querySelector('#childrenCollapsible').classList.remove('hide'); - renderPlaylistItems(page, item); - } else if (item.Type == 'Studio' || item.Type == 'Person' || item.Type == 'Genre' || item.Type == 'MusicGenre' || item.Type == 'MusicArtist') { - page.querySelector('#childrenCollapsible').classList.remove('hide'); - renderItemsByName(page, item); - } else if (item.IsFolder) { - if (item.Type == 'BoxSet') { - page.querySelector('#childrenCollapsible').classList.add('hide'); - } + const html = []; + if (links.length) { + html.push(links.join(', ')); + } - renderChildren(page, item); + externalLinksElem.innerHTML = html.join(', '); + + if (html.length) { + externalLinksElem.classList.remove('hide'); + } else { + externalLinksElem.classList.add('hide'); + } +} + +function renderDetailImage(elem, item, imageLoader) { + const itemArray = []; + itemArray.push(item); + const cardHtml = cardBuilder.getCardsHtml(itemArray, { + shape: 'auto', + showTitle: false, + centerText: true, + overlayText: false, + transition: false, + disableIndicators: true, + disableHoverMenu: true, + overlayPlayButton: true, + width: dom.getWindowSize().innerWidth * 0.25 + }); + + elem.innerHTML = cardHtml; + imageLoader.lazyChildren(elem); +} + +function renderImage(page, item) { + renderDetailImage( + page.querySelector('.detailImageContainer'), + item, + imageLoader + ); +} + +function refreshDetailImageUserData(elem, item) { + elem.querySelector('.detailImageProgressContainer').innerHTML = indicators.getProgressBarHtml(item); +} + +function refreshImage(page, item) { + refreshDetailImageUserData(page.querySelector('.detailImageContainer'), item); +} + +function setPeopleHeader(page, item) { + if (item.MediaType == 'Audio' || item.Type == 'MusicAlbum' || item.MediaType == 'Book' || item.MediaType == 'Photo') { + page.querySelector('#peopleHeader').innerHTML = globalize.translate('People'); + } else { + page.querySelector('#peopleHeader').innerHTML = globalize.translate('HeaderCastAndCrew'); + } +} + +function renderNextUp(page, item, user) { + const section = page.querySelector('.nextUpSection'); + + if (item.Type != 'Series') { + return void section.classList.add('hide'); + } + + connectionManager.getApiClient(item.ServerId).getNextUpEpisodes({ + SeriesId: item.Id, + UserId: user.Id + }).then(function (result) { + if (result.Items.length) { + section.classList.remove('hide'); } else { + section.classList.add('hide'); + } + + const html = cardBuilder.getCardsHtml({ + items: result.Items, + shape: 'overflowBackdrop', + showTitle: true, + displayAsSpecial: item.Type == 'Season' && item.IndexNumber, + overlayText: false, + centerText: true, + overlayPlayButton: true + }); + const itemsContainer = section.querySelector('.nextUpItems'); + itemsContainer.innerHTML = html; + imageLoader.lazyChildren(itemsContainer); + }); +} + +function setInitialCollapsibleState(page, item, apiClient, context, user) { + page.querySelector('.collectionItems').innerHTML = ''; + + if (item.Type == 'Playlist') { + page.querySelector('#childrenCollapsible').classList.remove('hide'); + renderPlaylistItems(page, item); + } else if (item.Type == 'Studio' || item.Type == 'Person' || item.Type == 'Genre' || item.Type == 'MusicGenre' || item.Type == 'MusicArtist') { + page.querySelector('#childrenCollapsible').classList.remove('hide'); + renderItemsByName(page, item); + } else if (item.IsFolder) { + if (item.Type == 'BoxSet') { page.querySelector('#childrenCollapsible').classList.add('hide'); } - if (item.Type == 'Series') { - renderSeriesSchedule(page, item); - renderNextUp(page, item, user); - } else { - page.querySelector('.nextUpSection').classList.add('hide'); - } - - renderScenes(page, item); - - if (item.SpecialFeatureCount && item.SpecialFeatureCount != 0 && item.Type != 'Series') { - page.querySelector('#specialsCollapsible').classList.remove('hide'); - renderSpecials(page, item, user); - } else { - page.querySelector('#specialsCollapsible').classList.add('hide'); - } - - renderCast(page, item); - - if (item.PartCount && item.PartCount > 1) { - page.querySelector('#additionalPartsCollapsible').classList.remove('hide'); - renderAdditionalParts(page, item, user); - } else { - page.querySelector('#additionalPartsCollapsible').classList.add('hide'); - } - - if (item.Type == 'MusicAlbum') { - renderMusicVideos(page, item, user); - } else { - page.querySelector('#musicVideosCollapsible').classList.add('hide'); - } + renderChildren(page, item); + } else { + page.querySelector('#childrenCollapsible').classList.add('hide'); } - function toggleLineClamp(clampTarget, e) { - const expandButton = e.target; - const clampClassName = 'detail-clamp-text'; - - if (clampTarget.classList.contains(clampClassName)) { - clampTarget.classList.remove(clampClassName); - expandButton.innerHTML = globalize.translate('ShowLess'); - } else { - clampTarget.classList.add(clampClassName); - expandButton.innerHTML = globalize.translate('ShowMore'); - } + if (item.Type == 'Series') { + renderSeriesSchedule(page, item); + renderNextUp(page, item, user); + } else { + page.querySelector('.nextUpSection').classList.add('hide'); } - function renderOverview(page, item) { - for (const overviewElemnt of page.querySelectorAll('.overview')) { - const overview = item.Overview || ''; + renderScenes(page, item); - if (overview) { - overviewElemnt.innerHTML = overview; - overviewElemnt.classList.remove('hide'); - overviewElemnt.classList.add('detail-clamp-text'); + if (item.SpecialFeatureCount && item.SpecialFeatureCount != 0 && item.Type != 'Series') { + page.querySelector('#specialsCollapsible').classList.remove('hide'); + renderSpecials(page, item, user); + } else { + page.querySelector('#specialsCollapsible').classList.add('hide'); + } - // Grab the sibling element to control the expand state - const expandButton = overviewElemnt.parentElement.querySelector('.overview-expand'); + renderCast(page, item); - // Detect if we have overflow of text. Based on this StackOverflow answer - // https://stackoverflow.com/a/35157976 - if (Math.abs(overviewElemnt.scrollHeight - overviewElemnt.offsetHeight) > 2) { - expandButton.classList.remove('hide'); - } else { - expandButton.classList.add('hide'); - } + if (item.PartCount && item.PartCount > 1) { + page.querySelector('#additionalPartsCollapsible').classList.remove('hide'); + renderAdditionalParts(page, item, user); + } else { + page.querySelector('#additionalPartsCollapsible').classList.add('hide'); + } - expandButton.addEventListener('click', toggleLineClamp.bind(null, overviewElemnt)); + if (item.Type == 'MusicAlbum') { + renderMusicVideos(page, item, user); + } else { + page.querySelector('#musicVideosCollapsible').classList.add('hide'); + } +} - for (const anchor of overviewElemnt.querySelectorAll('a')) { - anchor.setAttribute('target', '_blank'); - } +function toggleLineClamp(clampTarget, e) { + const expandButton = e.target; + const clampClassName = 'detail-clamp-text'; + + if (clampTarget.classList.contains(clampClassName)) { + clampTarget.classList.remove(clampClassName); + expandButton.innerHTML = globalize.translate('ShowLess'); + } else { + clampTarget.classList.add(clampClassName); + expandButton.innerHTML = globalize.translate('ShowMore'); + } +} + +function renderOverview(page, item) { + for (const overviewElemnt of page.querySelectorAll('.overview')) { + const overview = item.Overview || ''; + + if (overview) { + overviewElemnt.innerHTML = overview; + overviewElemnt.classList.remove('hide'); + overviewElemnt.classList.add('detail-clamp-text'); + + // Grab the sibling element to control the expand state + const expandButton = overviewElemnt.parentElement.querySelector('.overview-expand'); + + // Detect if we have overflow of text. Based on this StackOverflow answer + // https://stackoverflow.com/a/35157976 + if (Math.abs(overviewElemnt.scrollHeight - overviewElemnt.offsetHeight) > 2) { + expandButton.classList.remove('hide'); } else { - overviewElemnt.innerHTML = ''; - overviewElemnt.classList.add('hide'); + expandButton.classList.add('hide'); } - } - } - function renderGenres(page, item, context = inferContext(item)) { - const genres = item.GenreItems || []; - const type = context === 'music' ? 'MusicGenre' : 'Genre'; + expandButton.addEventListener('click', toggleLineClamp.bind(null, overviewElemnt)); - const html = genres.map(function (p) { - return '' + p.Name + ''; - }).join(', '); - - const genresLabel = page.querySelector('.genresLabel'); - genresLabel.innerHTML = globalize.translate(genres.length > 1 ? 'Genres' : 'Genre'); - const genresValue = page.querySelector('.genres'); - genresValue.innerHTML = html; - - const genresGroup = page.querySelector('.genresGroup'); - if (genres.length) { - genresGroup.classList.remove('hide'); + for (const anchor of overviewElemnt.querySelectorAll('a')) { + anchor.setAttribute('target', '_blank'); + } } else { - genresGroup.classList.add('hide'); + overviewElemnt.innerHTML = ''; + overviewElemnt.classList.add('hide'); } } +} - function renderWriter(page, item, context) { - const writers = (item.People || []).filter(function (person) { - return person.Type === 'Writer'; +function renderGenres(page, item, context = inferContext(item)) { + const genres = item.GenreItems || []; + const type = context === 'music' ? 'MusicGenre' : 'Genre'; + + const html = genres.map(function (p) { + return '' + p.Name + ''; + }).join(', '); + + const genresLabel = page.querySelector('.genresLabel'); + genresLabel.innerHTML = globalize.translate(genres.length > 1 ? 'Genres' : 'Genre'); + const genresValue = page.querySelector('.genres'); + genresValue.innerHTML = html; + + const genresGroup = page.querySelector('.genresGroup'); + if (genres.length) { + genresGroup.classList.remove('hide'); + } else { + genresGroup.classList.add('hide'); + } +} + +function renderWriter(page, item, context) { + const writers = (item.People || []).filter(function (person) { + return person.Type === 'Writer'; + }); + + const html = writers.map(function (person) { + return '' + person.Name + ''; + }).join(', '); + + const writersLabel = page.querySelector('.writersLabel'); + writersLabel.innerHTML = globalize.translate(writers.length > 1 ? 'Writers' : 'Writer'); + const writersValue = page.querySelector('.writers'); + writersValue.innerHTML = html; + + const writersGroup = page.querySelector('.writersGroup'); + if (writers.length) { + writersGroup.classList.remove('hide'); + } else { + writersGroup.classList.add('hide'); + } +} + +function renderDirector(page, item, context) { + const directors = (item.People || []).filter(function (person) { + return person.Type === 'Director'; + }); + + const html = directors.map(function (person) { + return '' + person.Name + ''; + }).join(', '); + + const directorsLabel = page.querySelector('.directorsLabel'); + directorsLabel.innerHTML = globalize.translate(directors.length > 1 ? 'Directors' : 'Director'); + const directorsValue = page.querySelector('.directors'); + directorsValue.innerHTML = html; + + const directorsGroup = page.querySelector('.directorsGroup'); + if (directors.length) { + directorsGroup.classList.remove('hide'); + } else { + directorsGroup.classList.add('hide'); + } +} + +function renderMiscInfo(page, item) { + const primaryItemMiscInfo = page.querySelectorAll('.itemMiscInfo-primary'); + + for (const miscInfo of primaryItemMiscInfo) { + mediaInfo.fillPrimaryMediaInfo(miscInfo, item, { + interactive: true, + episodeTitle: false, + subtitles: false }); - const html = writers.map(function (person) { - return '' + person.Name + ''; - }).join(', '); - - const writersLabel = page.querySelector('.writersLabel'); - writersLabel.innerHTML = globalize.translate(writers.length > 1 ? 'Writers' : 'Writer'); - const writersValue = page.querySelector('.writers'); - writersValue.innerHTML = html; - - const writersGroup = page.querySelector('.writersGroup'); - if (writers.length) { - writersGroup.classList.remove('hide'); + if (miscInfo.innerHTML && item.Type !== 'SeriesTimer') { + miscInfo.classList.remove('hide'); } else { - writersGroup.classList.add('hide'); + miscInfo.classList.add('hide'); } } - function renderDirector(page, item, context) { - const directors = (item.People || []).filter(function (person) { - return person.Type === 'Director'; + const secondaryItemMiscInfo = page.querySelectorAll('.itemMiscInfo-secondary'); + + for (const miscInfo of secondaryItemMiscInfo) { + mediaInfo.fillSecondaryMediaInfo(miscInfo, item, { + interactive: true }); - const html = directors.map(function (person) { - return '' + person.Name + ''; - }).join(', '); - - const directorsLabel = page.querySelector('.directorsLabel'); - directorsLabel.innerHTML = globalize.translate(directors.length > 1 ? 'Directors' : 'Director'); - const directorsValue = page.querySelector('.directors'); - directorsValue.innerHTML = html; - - const directorsGroup = page.querySelector('.directorsGroup'); - if (directors.length) { - directorsGroup.classList.remove('hide'); + if (miscInfo.innerHTML && item.Type !== 'SeriesTimer') { + miscInfo.classList.remove('hide'); } else { - directorsGroup.classList.add('hide'); + miscInfo.classList.add('hide'); } } +} - function renderMiscInfo(page, item) { - const primaryItemMiscInfo = page.querySelectorAll('.itemMiscInfo-primary'); +function renderTagline(page, item) { + const taglineElement = page.querySelector('.tagline'); - for (const miscInfo of primaryItemMiscInfo) { - mediaInfo.fillPrimaryMediaInfo(miscInfo, item, { - interactive: true, - episodeTitle: false, - subtitles: false - }); + if (item.Taglines && item.Taglines.length) { + taglineElement.classList.remove('hide'); + taglineElement.innerHTML = item.Taglines[0]; + } else { + taglineElement.classList.add('hide'); + } +} - if (miscInfo.innerHTML && item.Type !== 'SeriesTimer') { - miscInfo.classList.remove('hide'); - } else { - miscInfo.classList.add('hide'); - } +function renderDetails(page, item, apiClient, context, isStatic) { + renderSimilarItems(page, item, context); + renderMoreFromSeason(page, item, apiClient); + renderMoreFromArtist(page, item, apiClient); + renderDirector(page, item, context); + renderWriter(page, item, context); + renderGenres(page, item, context); + renderChannelGuide(page, apiClient, item); + renderTagline(page, item); + renderOverview(page, item); + renderMiscInfo(page, item); + reloadUserDataButtons(page, item); + renderLinks(page, item); + renderTags(page, item); + renderSeriesAirTime(page, item, isStatic); +} + +function enableScrollX() { + return browser.mobile && screen.availWidth <= 1000; +} + +function getPortraitShape(scrollX) { + if (scrollX == null) { + scrollX = enableScrollX(); + } + + return scrollX ? 'overflowPortrait' : 'portrait'; +} + +function getSquareShape(scrollX) { + if (scrollX == null) { + scrollX = enableScrollX(); + } + + return scrollX ? 'overflowSquare' : 'square'; +} + +function renderMoreFromSeason(view, item, apiClient) { + const section = view.querySelector('.moreFromSeasonSection'); + + if (section) { + if (item.Type !== 'Episode' || !item.SeasonId || !item.SeriesId) { + return void section.classList.add('hide'); } - const secondaryItemMiscInfo = page.querySelectorAll('.itemMiscInfo-secondary'); - - for (const miscInfo of secondaryItemMiscInfo) { - mediaInfo.fillSecondaryMediaInfo(miscInfo, item, { - interactive: true - }); - - if (miscInfo.innerHTML && item.Type !== 'SeriesTimer') { - miscInfo.classList.remove('hide'); - } else { - miscInfo.classList.add('hide'); - } - } - } - - function renderTagline(page, item) { - const taglineElement = page.querySelector('.tagline'); - - if (item.Taglines && item.Taglines.length) { - taglineElement.classList.remove('hide'); - taglineElement.innerHTML = item.Taglines[0]; - } else { - taglineElement.classList.add('hide'); - } - } - - function renderDetails(page, item, apiClient, context, isStatic) { - renderSimilarItems(page, item, context); - renderMoreFromSeason(page, item, apiClient); - renderMoreFromArtist(page, item, apiClient); - renderDirector(page, item, context); - renderWriter(page, item, context); - renderGenres(page, item, context); - renderChannelGuide(page, apiClient, item); - renderTagline(page, item); - renderOverview(page, item); - renderMiscInfo(page, item); - reloadUserDataButtons(page, item); - renderLinks(page, item); - renderTags(page, item); - renderSeriesAirTime(page, item, isStatic); - } - - function enableScrollX() { - return browser.mobile && screen.availWidth <= 1000; - } - - function getPortraitShape(scrollX) { - if (scrollX == null) { - scrollX = enableScrollX(); - } - - return scrollX ? 'overflowPortrait' : 'portrait'; - } - - function getSquareShape(scrollX) { - if (scrollX == null) { - scrollX = enableScrollX(); - } - - return scrollX ? 'overflowSquare' : 'square'; - } - - function renderMoreFromSeason(view, item, apiClient) { - const section = view.querySelector('.moreFromSeasonSection'); - - if (section) { - if (item.Type !== 'Episode' || !item.SeasonId || !item.SeriesId) { + const userId = apiClient.getCurrentUserId(); + apiClient.getEpisodes(item.SeriesId, { + SeasonId: item.SeasonId, + UserId: userId, + Fields: 'ItemCounts,PrimaryImageAspectRatio,BasicSyncInfo,CanDelete,MediaSourceCount' + }).then(function (result) { + if (result.Items.length < 2) { return void section.classList.add('hide'); } - const userId = apiClient.getCurrentUserId(); - apiClient.getEpisodes(item.SeriesId, { - SeasonId: item.SeasonId, - UserId: userId, - Fields: 'ItemCounts,PrimaryImageAspectRatio,BasicSyncInfo,CanDelete,MediaSourceCount' - }).then(function (result) { - if (result.Items.length < 2) { - return void section.classList.add('hide'); - } - - section.classList.remove('hide'); - section.querySelector('h2').innerHTML = globalize.translate('MoreFromValue', item.SeasonName); - const itemsContainer = section.querySelector('.itemsContainer'); - cardBuilder.buildCards(result.Items, { - parentContainer: section, - itemsContainer: itemsContainer, - shape: 'autooverflow', - sectionTitleTagName: 'h2', - scalable: true, - showTitle: true, - overlayText: false, - centerText: true, - includeParentInfoInTitle: false, - allowBottomPadding: false - }); - const card = itemsContainer.querySelector('.card[data-id="' + item.Id + '"]'); - - if (card) { - setTimeout(function () { - section.querySelector('.emby-scroller').toStart(card.previousSibling || card, true); - }, 100); - } + section.classList.remove('hide'); + section.querySelector('h2').innerHTML = globalize.translate('MoreFromValue', item.SeasonName); + const itemsContainer = section.querySelector('.itemsContainer'); + cardBuilder.buildCards(result.Items, { + parentContainer: section, + itemsContainer: itemsContainer, + shape: 'autooverflow', + sectionTitleTagName: 'h2', + scalable: true, + showTitle: true, + overlayText: false, + centerText: true, + includeParentInfoInTitle: false, + allowBottomPadding: false }); - } + const card = itemsContainer.querySelector('.card[data-id="' + item.Id + '"]'); + + if (card) { + setTimeout(function () { + section.querySelector('.emby-scroller').toStart(card.previousSibling || card, true); + }, 100); + } + }); } +} - function renderMoreFromArtist(view, item, apiClient) { - const section = view.querySelector('.moreFromArtistSection'); +function renderMoreFromArtist(view, item, apiClient) { + const section = view.querySelector('.moreFromArtistSection'); - if (section) { - if (item.Type === 'MusicArtist') { - if (!apiClient.isMinServerVersion('3.4.1.19')) { - return void section.classList.add('hide'); - } - } else if (item.Type !== 'MusicAlbum' || !item.AlbumArtists || !item.AlbumArtists.length) { + if (section) { + if (item.Type === 'MusicArtist') { + if (!apiClient.isMinServerVersion('3.4.1.19')) { + return void section.classList.add('hide'); + } + } else if (item.Type !== 'MusicAlbum' || !item.AlbumArtists || !item.AlbumArtists.length) { + return void section.classList.add('hide'); + } + + const query = { + IncludeItemTypes: 'MusicAlbum', + Recursive: true, + ExcludeItemIds: item.Id, + SortBy: 'ProductionYear,SortName', + SortOrder: 'Descending' + }; + + if (item.Type === 'MusicArtist') { + query.ContributingArtistIds = item.Id; + } else if (apiClient.isMinServerVersion('3.4.1.18')) { + query.AlbumArtistIds = item.AlbumArtists[0].Id; + } else { + query.ArtistIds = item.AlbumArtists[0].Id; + } + + apiClient.getItems(apiClient.getCurrentUserId(), query).then(function (result) { + if (!result.Items.length) { return void section.classList.add('hide'); } - const query = { - IncludeItemTypes: 'MusicAlbum', - Recursive: true, - ExcludeItemIds: item.Id, - SortBy: 'ProductionYear,SortName', - SortOrder: 'Descending' - }; + section.classList.remove('hide'); if (item.Type === 'MusicArtist') { - query.ContributingArtistIds = item.Id; - } else if (apiClient.isMinServerVersion('3.4.1.18')) { - query.AlbumArtistIds = item.AlbumArtists[0].Id; + section.querySelector('h2').innerHTML = globalize.translate('HeaderAppearsOn'); } else { - query.ArtistIds = item.AlbumArtists[0].Id; + section.querySelector('h2').innerHTML = globalize.translate('MoreFromValue', item.AlbumArtists[0].Name); } - apiClient.getItems(apiClient.getCurrentUserId(), query).then(function (result) { - if (!result.Items.length) { - return void section.classList.add('hide'); - } - - section.classList.remove('hide'); - - if (item.Type === 'MusicArtist') { - section.querySelector('h2').innerHTML = globalize.translate('HeaderAppearsOn'); - } else { - section.querySelector('h2').innerHTML = globalize.translate('MoreFromValue', item.AlbumArtists[0].Name); - } - - cardBuilder.buildCards(result.Items, { - parentContainer: section, - itemsContainer: section.querySelector('.itemsContainer'), - shape: 'autooverflow', - sectionTitleTagName: 'h2', - scalable: true, - coverImage: item.Type === 'MusicArtist' || item.Type === 'MusicAlbum', - showTitle: true, - showParentTitle: false, - centerText: true, - overlayText: false, - overlayPlayButton: true, - showYear: true - }); + cardBuilder.buildCards(result.Items, { + parentContainer: section, + itemsContainer: section.querySelector('.itemsContainer'), + shape: 'autooverflow', + sectionTitleTagName: 'h2', + scalable: true, + coverImage: item.Type === 'MusicArtist' || item.Type === 'MusicAlbum', + showTitle: true, + showParentTitle: false, + centerText: true, + overlayText: false, + overlayPlayButton: true, + showYear: true }); - } + }); } +} - function renderSimilarItems(page, item, context) { - const similarCollapsible = page.querySelector('#similarCollapsible'); +function renderSimilarItems(page, item, context) { + const similarCollapsible = page.querySelector('#similarCollapsible'); - if (similarCollapsible) { - if (item.Type != 'Movie' && item.Type != 'Trailer' && item.Type != 'Series' && item.Type != 'Program' && item.Type != 'Recording' && item.Type != 'MusicAlbum' && item.Type != 'MusicArtist' && item.Type != 'Playlist') { + if (similarCollapsible) { + if (item.Type != 'Movie' && item.Type != 'Trailer' && item.Type != 'Series' && item.Type != 'Program' && item.Type != 'Recording' && item.Type != 'MusicAlbum' && item.Type != 'MusicArtist' && item.Type != 'Playlist') { + return void similarCollapsible.classList.add('hide'); + } + + similarCollapsible.classList.remove('hide'); + const apiClient = connectionManager.getApiClient(item.ServerId); + const options = { + userId: apiClient.getCurrentUserId(), + limit: 12, + fields: 'PrimaryImageAspectRatio,UserData,CanDelete' + }; + + if (item.Type == 'MusicAlbum' && item.AlbumArtists && item.AlbumArtists.length) { + options.ExcludeArtistIds = item.AlbumArtists[0].Id; + } + + apiClient.getSimilarItems(item.Id, options).then(function (result) { + if (!result.Items.length) { return void similarCollapsible.classList.add('hide'); } similarCollapsible.classList.remove('hide'); - const apiClient = connectionManager.getApiClient(item.ServerId); - const options = { - userId: apiClient.getCurrentUserId(), - limit: 12, - fields: 'PrimaryImageAspectRatio,UserData,CanDelete' - }; - - if (item.Type == 'MusicAlbum' && item.AlbumArtists && item.AlbumArtists.length) { - options.ExcludeArtistIds = item.AlbumArtists[0].Id; - } - - apiClient.getSimilarItems(item.Id, options).then(function (result) { - if (!result.Items.length) { - return void similarCollapsible.classList.add('hide'); - } - - similarCollapsible.classList.remove('hide'); - let html = ''; - html += cardBuilder.getCardsHtml({ - items: result.Items, - shape: 'autooverflow', - showParentTitle: item.Type == 'MusicAlbum', - centerText: true, - showTitle: true, - context: context, - lazy: true, - showDetailsMenu: true, - coverImage: item.Type == 'MusicAlbum' || item.Type == 'MusicArtist', - overlayPlayButton: true, - overlayText: false, - showYear: item.Type === 'Movie' || item.Type === 'Trailer' || item.Type === 'Series' - }); - const similarContent = similarCollapsible.querySelector('.similarContent'); - similarContent.innerHTML = html; - imageLoader.lazyChildren(similarContent); - }); - } - } - - function renderSeriesAirTime(page, item, isStatic) { - const seriesAirTime = page.querySelector('#seriesAirTime'); - if (item.Type != 'Series') { - seriesAirTime.classList.add('hide'); - return; - } - let html = ''; - if (item.AirDays && item.AirDays.length) { - if (item.AirDays.length == 7) { - html += 'daily'; - } else { - html += item.AirDays.map(function (a) { - return a + 's'; - }).join(','); - } - } - if (item.AirTime) { - html += ' at ' + item.AirTime; - } - if (item.Studios.length) { - if (isStatic) { - html += ' on ' + item.Studios[0].Name; - } else { - const context = inferContext(item); - const href = appRouter.getRouteUrl(item.Studios[0], { - context: context, - itemType: 'Studio', - serverId: item.ServerId - }); - html += ' on ' + item.Studios[0].Name + ''; - } - } - if (html) { - html = (item.Status == 'Ended' ? 'Aired ' : 'Airs ') + html; - seriesAirTime.innerHTML = html; - seriesAirTime.classList.remove('hide'); - } else { - seriesAirTime.classList.add('hide'); - } - } - - function renderTags(page, item) { - const itemTags = page.querySelector('.itemTags'); - const tagElements = []; - let tags = item.Tags || []; - - if (item.Type === 'Program') { - tags = []; - } - - for (let i = 0, length = tags.length; i < length; i++) { - tagElements.push(tags[i]); - } - - if (tagElements.length) { - itemTags.innerHTML = globalize.translate('TagsValue', tagElements.join(', ')); - itemTags.classList.remove('hide'); - } else { - itemTags.innerHTML = ''; - itemTags.classList.add('hide'); - } - } - - function renderChildren(page, item) { - let fields = 'ItemCounts,PrimaryImageAspectRatio,BasicSyncInfo,CanDelete,MediaSourceCount'; - const query = { - ParentId: item.Id, - Fields: fields - }; - - if (item.Type !== 'BoxSet') { - query.SortBy = 'SortName'; - } - - let promise; - const apiClient = connectionManager.getApiClient(item.ServerId); - const userId = apiClient.getCurrentUserId(); - - if (item.Type == 'Series') { - promise = apiClient.getSeasons(item.Id, { - userId: userId, - Fields: fields - }); - } else if (item.Type == 'Season') { - fields += ',Overview'; - promise = apiClient.getEpisodes(item.SeriesId, { - seasonId: item.Id, - userId: userId, - Fields: fields - }); - } else if (item.Type == 'MusicArtist') { - query.SortBy = 'ProductionYear,SortName'; - } - - promise = promise || apiClient.getItems(apiClient.getCurrentUserId(), query); - promise.then(function (result) { let html = ''; - let scrollX = false; - let isList = false; - const childrenItemsContainer = page.querySelector('.childrenItemsContainer'); + html += cardBuilder.getCardsHtml({ + items: result.Items, + shape: 'autooverflow', + showParentTitle: item.Type == 'MusicAlbum', + centerText: true, + showTitle: true, + context: context, + lazy: true, + showDetailsMenu: true, + coverImage: item.Type == 'MusicAlbum' || item.Type == 'MusicArtist', + overlayPlayButton: true, + overlayText: false, + showYear: item.Type === 'Movie' || item.Type === 'Trailer' || item.Type === 'Series' + }); + const similarContent = similarCollapsible.querySelector('.similarContent'); + similarContent.innerHTML = html; + imageLoader.lazyChildren(similarContent); + }); + } +} - if (item.Type == 'MusicAlbum') { - html = listView.getListViewHtml({ - items: result.Items, - smallIcon: true, - showIndex: true, - index: 'disc', - showIndexNumberLeft: true, - playFromHere: true, - action: 'playallfromhere', - image: false, - artist: 'auto', - containerAlbumArtists: item.AlbumArtists - }); +function renderSeriesAirTime(page, item, isStatic) { + const seriesAirTime = page.querySelector('#seriesAirTime'); + if (item.Type != 'Series') { + seriesAirTime.classList.add('hide'); + return; + } + let html = ''; + if (item.AirDays && item.AirDays.length) { + if (item.AirDays.length == 7) { + html += 'daily'; + } else { + html += item.AirDays.map(function (a) { + return a + 's'; + }).join(','); + } + } + if (item.AirTime) { + html += ' at ' + item.AirTime; + } + if (item.Studios.length) { + if (isStatic) { + html += ' on ' + item.Studios[0].Name; + } else { + const context = inferContext(item); + const href = appRouter.getRouteUrl(item.Studios[0], { + context: context, + itemType: 'Studio', + serverId: item.ServerId + }); + html += ' on ' + item.Studios[0].Name + ''; + } + } + if (html) { + html = (item.Status == 'Ended' ? 'Aired ' : 'Airs ') + html; + seriesAirTime.innerHTML = html; + seriesAirTime.classList.remove('hide'); + } else { + seriesAirTime.classList.add('hide'); + } +} + +function renderTags(page, item) { + const itemTags = page.querySelector('.itemTags'); + const tagElements = []; + let tags = item.Tags || []; + + if (item.Type === 'Program') { + tags = []; + } + + for (let i = 0, length = tags.length; i < length; i++) { + tagElements.push(tags[i]); + } + + if (tagElements.length) { + itemTags.innerHTML = globalize.translate('TagsValue', tagElements.join(', ')); + itemTags.classList.remove('hide'); + } else { + itemTags.innerHTML = ''; + itemTags.classList.add('hide'); + } +} + +function renderChildren(page, item) { + let fields = 'ItemCounts,PrimaryImageAspectRatio,BasicSyncInfo,CanDelete,MediaSourceCount'; + const query = { + ParentId: item.Id, + Fields: fields + }; + + if (item.Type !== 'BoxSet') { + query.SortBy = 'SortName'; + } + + let promise; + const apiClient = connectionManager.getApiClient(item.ServerId); + const userId = apiClient.getCurrentUserId(); + + if (item.Type == 'Series') { + promise = apiClient.getSeasons(item.Id, { + userId: userId, + Fields: fields + }); + } else if (item.Type == 'Season') { + fields += ',Overview'; + promise = apiClient.getEpisodes(item.SeriesId, { + seasonId: item.Id, + userId: userId, + Fields: fields + }); + } else if (item.Type == 'MusicArtist') { + query.SortBy = 'ProductionYear,SortName'; + } + + promise = promise || apiClient.getItems(apiClient.getCurrentUserId(), query); + promise.then(function (result) { + let html = ''; + let scrollX = false; + let isList = false; + const childrenItemsContainer = page.querySelector('.childrenItemsContainer'); + + if (item.Type == 'MusicAlbum') { + html = listView.getListViewHtml({ + items: result.Items, + smallIcon: true, + showIndex: true, + index: 'disc', + showIndexNumberLeft: true, + playFromHere: true, + action: 'playallfromhere', + image: false, + artist: 'auto', + containerAlbumArtists: item.AlbumArtists + }); + isList = true; + } else if (item.Type == 'Series') { + scrollX = enableScrollX(); + html = cardBuilder.getCardsHtml({ + items: result.Items, + shape: 'overflowPortrait', + showTitle: true, + centerText: true, + lazy: true, + overlayPlayButton: true, + allowBottomPadding: !scrollX + }); + } else if (item.Type == 'Season' || item.Type == 'Episode') { + if (item.Type !== 'Episode') { isList = true; - } else if (item.Type == 'Series') { - scrollX = enableScrollX(); + } + scrollX = item.Type == 'Episode'; + if (result.Items.length < 2 && item.Type === 'Episode') { + return; + } + + if (item.Type === 'Episode') { html = cardBuilder.getCardsHtml({ items: result.Items, - shape: 'overflowPortrait', + shape: 'overflowBackdrop', showTitle: true, - centerText: true, + displayAsSpecial: item.Type == 'Season' && item.IndexNumber, + playFromHere: true, + overlayText: true, lazy: true, + showDetailsMenu: true, overlayPlayButton: true, - allowBottomPadding: !scrollX + allowBottomPadding: !scrollX, + includeParentInfoInTitle: false + }); + } else if (item.Type === 'Season') { + html = listView.getListViewHtml({ + items: result.Items, + showIndexNumber: false, + enableOverview: true, + enablePlayedButton: layoutManager.mobile ? false : true, + infoButton: layoutManager.mobile ? false : true, + imageSize: 'large', + enableSideMediaInfo: false, + highlight: false, + action: !layoutManager.desktop ? 'link' : 'none', + imagePlayButton: true, + includeParentInfoInTitle: false }); - } else if (item.Type == 'Season' || item.Type == 'Episode') { - if (item.Type !== 'Episode') { - isList = true; - } - scrollX = item.Type == 'Episode'; - if (result.Items.length < 2 && item.Type === 'Episode') { - return; - } - - if (item.Type === 'Episode') { - html = cardBuilder.getCardsHtml({ - items: result.Items, - shape: 'overflowBackdrop', - showTitle: true, - displayAsSpecial: item.Type == 'Season' && item.IndexNumber, - playFromHere: true, - overlayText: true, - lazy: true, - showDetailsMenu: true, - overlayPlayButton: true, - allowBottomPadding: !scrollX, - includeParentInfoInTitle: false - }); - } else if (item.Type === 'Season') { - html = listView.getListViewHtml({ - items: result.Items, - showIndexNumber: false, - enableOverview: true, - enablePlayedButton: layoutManager.mobile ? false : true, - infoButton: layoutManager.mobile ? false : true, - imageSize: 'large', - enableSideMediaInfo: false, - highlight: false, - action: !layoutManager.desktop ? 'link' : 'none', - imagePlayButton: true, - includeParentInfoInTitle: false - }); - } } + } - if (item.Type !== 'BoxSet') { - page.querySelector('#childrenCollapsible').classList.remove('hide'); - } - if (scrollX) { - childrenItemsContainer.classList.add('scrollX'); - childrenItemsContainer.classList.add('hiddenScrollX'); + if (item.Type !== 'BoxSet') { + page.querySelector('#childrenCollapsible').classList.remove('hide'); + } + if (scrollX) { + childrenItemsContainer.classList.add('scrollX'); + childrenItemsContainer.classList.add('hiddenScrollX'); + childrenItemsContainer.classList.remove('vertical-wrap'); + childrenItemsContainer.classList.remove('vertical-list'); + } else { + childrenItemsContainer.classList.remove('scrollX'); + childrenItemsContainer.classList.remove('hiddenScrollX'); + childrenItemsContainer.classList.remove('smoothScrollX'); + if (isList) { + childrenItemsContainer.classList.add('vertical-list'); childrenItemsContainer.classList.remove('vertical-wrap'); - childrenItemsContainer.classList.remove('vertical-list'); } else { - childrenItemsContainer.classList.remove('scrollX'); - childrenItemsContainer.classList.remove('hiddenScrollX'); - childrenItemsContainer.classList.remove('smoothScrollX'); - if (isList) { - childrenItemsContainer.classList.add('vertical-list'); - childrenItemsContainer.classList.remove('vertical-wrap'); - } else { - childrenItemsContainer.classList.add('vertical-wrap'); - childrenItemsContainer.classList.remove('vertical-list'); - } + childrenItemsContainer.classList.add('vertical-wrap'); + childrenItemsContainer.classList.remove('vertical-list'); } - if (layoutManager.mobile) { - childrenItemsContainer.classList.remove('padded-right'); - } - childrenItemsContainer.innerHTML = html; - imageLoader.lazyChildren(childrenItemsContainer); - if (item.Type == 'BoxSet') { - const collectionItemTypes = [{ - name: globalize.translate('HeaderVideos'), - mediaType: 'Video' - }, { - name: globalize.translate('Series'), - type: 'Series' - }, { - name: globalize.translate('Albums'), - type: 'MusicAlbum' - }, { - name: globalize.translate('HeaderBooks'), - type: 'Book' - }]; - renderCollectionItems(page, item, collectionItemTypes, result.Items); - } - }); - - if (item.Type == 'Season') { - page.querySelector('#childrenTitle').innerHTML = globalize.translate('HeaderEpisodes'); - } else if (item.Type == 'Series') { - page.querySelector('#childrenTitle').innerHTML = globalize.translate('HeaderSeasons'); - } else if (item.Type == 'MusicAlbum') { - page.querySelector('#childrenTitle').innerHTML = globalize.translate('HeaderTracks'); - } else { - page.querySelector('#childrenTitle').innerHTML = globalize.translate('Items'); } - - if (item.Type == 'MusicAlbum' || item.Type == 'Season') { - page.querySelector('.childrenSectionHeader').classList.add('hide'); - page.querySelector('#childrenCollapsible').classList.add('verticalSection-extrabottompadding'); - } else { - page.querySelector('.childrenSectionHeader').classList.remove('hide'); + if (layoutManager.mobile) { + childrenItemsContainer.classList.remove('padded-right'); } + childrenItemsContainer.innerHTML = html; + imageLoader.lazyChildren(childrenItemsContainer); + if (item.Type == 'BoxSet') { + const collectionItemTypes = [{ + name: globalize.translate('HeaderVideos'), + mediaType: 'Video' + }, { + name: globalize.translate('Series'), + type: 'Series' + }, { + name: globalize.translate('Albums'), + type: 'MusicAlbum' + }, { + name: globalize.translate('HeaderBooks'), + type: 'Book' + }]; + renderCollectionItems(page, item, collectionItemTypes, result.Items); + } + }); + + if (item.Type == 'Season') { + page.querySelector('#childrenTitle').innerHTML = globalize.translate('HeaderEpisodes'); + } else if (item.Type == 'Series') { + page.querySelector('#childrenTitle').innerHTML = globalize.translate('HeaderSeasons'); + } else if (item.Type == 'MusicAlbum') { + page.querySelector('#childrenTitle').innerHTML = globalize.translate('HeaderTracks'); + } else { + page.querySelector('#childrenTitle').innerHTML = globalize.translate('Items'); } - function renderItemsByName(page, item) { - import('scripts/itembynamedetailpage').then(() => { - window.ItemsByName.renderItems(page, item); - }); + if (item.Type == 'MusicAlbum' || item.Type == 'Season') { + page.querySelector('.childrenSectionHeader').classList.add('hide'); + page.querySelector('#childrenCollapsible').classList.add('verticalSection-extrabottompadding'); + } else { + page.querySelector('.childrenSectionHeader').classList.remove('hide'); } +} - function renderPlaylistItems(page, item) { - import('scripts/playlistedit').then(() => { - PlaylistViewer.render(page, item); - }); - } +function renderItemsByName(page, item) { + import('scripts/itembynamedetailpage').then(() => { + window.ItemsByName.renderItems(page, item); + }); +} - function renderProgramsForChannel(page, result) { - let html = ''; - let currentItems = []; - let currentStartDate = null; +function renderPlaylistItems(page, item) { + import('scripts/playlistedit').then(() => { + PlaylistViewer.render(page, item); + }); +} - for (let i = 0, length = result.Items.length; i < length; i++) { - const item = result.Items[i]; - const itemStartDate = datetime.parseISO8601Date(item.StartDate); +function renderProgramsForChannel(page, result) { + let html = ''; + let currentItems = []; + let currentStartDate = null; - if (!(currentStartDate && currentStartDate.toDateString() === itemStartDate.toDateString())) { - if (currentItems.length) { - html += '
    '; - html += '

    ' + datetime.toLocaleDateString(currentStartDate, { - weekday: 'long', - month: 'long', - day: 'numeric' - }) + '

    '; - html += '
    ' + listView.getListViewHtml({ - items: currentItems, - enableUserDataButtons: false, - showParentTitle: true, - image: false, - showProgramTime: true, - mediaInfo: false, - parentTitleWithTitle: true - }) + '
    '; - } + for (let i = 0, length = result.Items.length; i < length; i++) { + const item = result.Items[i]; + const itemStartDate = datetime.parseISO8601Date(item.StartDate); - currentStartDate = itemStartDate; - currentItems = []; + if (!(currentStartDate && currentStartDate.toDateString() === itemStartDate.toDateString())) { + if (currentItems.length) { + html += '
    '; + html += '

    ' + datetime.toLocaleDateString(currentStartDate, { + weekday: 'long', + month: 'long', + day: 'numeric' + }) + '

    '; + html += '
    ' + listView.getListViewHtml({ + items: currentItems, + enableUserDataButtons: false, + showParentTitle: true, + image: false, + showProgramTime: true, + mediaInfo: false, + parentTitleWithTitle: true + }) + '
    '; } - currentItems.push(item); + currentStartDate = itemStartDate; + currentItems = []; } - if (currentItems.length) { - html += '
    '; - html += '

    ' + datetime.toLocaleDateString(currentStartDate, { - weekday: 'long', - month: 'long', - day: 'numeric' - }) + '

    '; - html += '
    ' + listView.getListViewHtml({ - items: currentItems, - enableUserDataButtons: false, - showParentTitle: true, - image: false, - showProgramTime: true, - mediaInfo: false, - parentTitleWithTitle: true - }) + '
    '; - } - - page.querySelector('.programGuide').innerHTML = html; + currentItems.push(item); } - function renderChannelGuide(page, apiClient, item) { - if (item.Type === 'TvChannel') { - page.querySelector('.programGuideSection').classList.remove('hide'); - apiClient.getLiveTvPrograms({ - ChannelIds: item.Id, - UserId: apiClient.getCurrentUserId(), - HasAired: false, - SortBy: 'StartDate', - EnableTotalRecordCount: false, - EnableImages: false, - ImageTypeLimit: 0, - EnableUserData: false - }).then(function (result) { - renderProgramsForChannel(page, result); - }); - } + if (currentItems.length) { + html += '
    '; + html += '

    ' + datetime.toLocaleDateString(currentStartDate, { + weekday: 'long', + month: 'long', + day: 'numeric' + }) + '

    '; + html += '
    ' + listView.getListViewHtml({ + items: currentItems, + enableUserDataButtons: false, + showParentTitle: true, + image: false, + showProgramTime: true, + mediaInfo: false, + parentTitleWithTitle: true + }) + '
    '; } - function renderSeriesSchedule(page, item) { - const apiClient = connectionManager.getApiClient(item.ServerId); + page.querySelector('.programGuide').innerHTML = html; +} + +function renderChannelGuide(page, apiClient, item) { + if (item.Type === 'TvChannel') { + page.querySelector('.programGuideSection').classList.remove('hide'); apiClient.getLiveTvPrograms({ + ChannelIds: item.Id, UserId: apiClient.getCurrentUserId(), HasAired: false, SortBy: 'StartDate', EnableTotalRecordCount: false, EnableImages: false, ImageTypeLimit: 0, - Limit: 50, - EnableUserData: false, - LibrarySeriesId: item.Id + EnableUserData: false }).then(function (result) { - if (result.Items.length) { - page.querySelector('#seriesScheduleSection').classList.remove('hide'); - } else { - page.querySelector('#seriesScheduleSection').classList.add('hide'); - } - - page.querySelector('#seriesScheduleList').innerHTML = listView.getListViewHtml({ - items: result.Items, - enableUserDataButtons: false, - showParentTitle: false, - image: false, - showProgramDateTime: true, - mediaInfo: false, - showTitle: true, - moreButton: false, - action: 'programdialog' - }); - loading.hide(); + renderProgramsForChannel(page, result); }); } +} - function inferContext(item) { - if (item.Type === 'Movie' || item.Type === 'BoxSet') { - return 'movies'; - } - - if (item.Type === 'Series' || item.Type === 'Season' || item.Type === 'Episode') { - return 'tvshows'; - } - - if (item.Type === 'MusicArtist' || item.Type === 'MusicAlbum' || item.Type === 'Audio' || item.Type === 'AudioBook') { - return 'music'; - } - - if (item.Type === 'Program') { - return 'livetv'; - } - - return null; - } - - function filterItemsByCollectionItemType(items, typeInfo) { - return items.filter(function (item) { - if (typeInfo.mediaType) { - return item.MediaType == typeInfo.mediaType; - } - - return item.Type == typeInfo.type; - }); - } - - function canPlaySomeItemInCollection(items) { - let i = 0; - - for (let length = items.length; i < length; i++) { - if (playbackManager.canPlay(items[i])) { - return true; - } - } - - return false; - } - - function renderCollectionItems(page, parentItem, types, items) { - page.querySelector('.collectionItems').classList.remove('hide'); - page.querySelector('.collectionItems').innerHTML = ''; - - for (const type of types) { - const typeItems = filterItemsByCollectionItemType(items, type); - - if (typeItems.length) { - renderCollectionItemType(page, parentItem, type, typeItems); - } - } - - const otherType = { - name: globalize.translate('HeaderOtherItems') - }; - const otherTypeItems = items.filter(function (curr) { - return !types.filter(function (t) { - return filterItemsByCollectionItemType([curr], t).length > 0; - }).length; - }); - - if (otherTypeItems.length) { - renderCollectionItemType(page, parentItem, otherType, otherTypeItems); - } - - if (!items.length) { - renderCollectionItemType(page, parentItem, { - name: globalize.translate('Items') - }, items); - } - - const containers = page.querySelectorAll('.collectionItemsContainer'); - - const notifyRefreshNeeded = function () { - renderChildren(page, parentItem); - }; - - for (const container of containers) { - container.notifyRefreshNeeded = notifyRefreshNeeded; - } - - // if nothing in the collection can be played hide play and shuffle buttons - if (!canPlaySomeItemInCollection(items)) { - hideAll(page, 'btnPlay', false); - hideAll(page, 'btnShuffle', false); - } - - // HACK: Call autoFocuser again because btnPlay may be hidden, but focused by reloadFromItem - // FIXME: Sometimes focus does not move until all (?) sections are loaded - import('autoFocuser').then(({default: autoFocuser}) => { - autoFocuser.autoFocus(page); - }); - } - - function renderCollectionItemType(page, parentItem, type, items) { - let html = ''; - html += '
    '; - html += '
    '; - html += '

    '; - html += '' + type.name + ''; - html += '

    '; - html += '
    '; - html += '
    '; - const shape = type.type == 'MusicAlbum' ? getSquareShape(false) : getPortraitShape(false); - html += cardBuilder.getCardsHtml({ - items: items, - shape: shape, - showTitle: true, - showYear: type.mediaType === 'Video' || type.type === 'Series', - centerText: true, - lazy: true, - showDetailsMenu: true, - overlayMoreButton: true, - showAddToCollection: false, - showRemoveFromCollection: true, - collectionId: parentItem.Id - }); - html += '
    '; - html += '
    '; - const collectionItems = page.querySelector('.collectionItems'); - collectionItems.insertAdjacentHTML('beforeend', html); - imageLoader.lazyChildren(collectionItems); - } - - function renderMusicVideos(page, item, user) { - connectionManager.getApiClient(item.ServerId).getItems(user.Id, { - SortBy: 'SortName', - SortOrder: 'Ascending', - IncludeItemTypes: 'MusicVideo', - Recursive: true, - Fields: 'PrimaryImageAspectRatio,BasicSyncInfo,CanDelete,MediaSourceCount', - AlbumIds: item.Id - }).then(function (result) { - if (result.Items.length) { - page.querySelector('#musicVideosCollapsible').classList.remove('hide'); - const musicVideosContent = page.querySelector('.musicVideosContent'); - musicVideosContent.innerHTML = getVideosHtml(result.Items); - imageLoader.lazyChildren(musicVideosContent); - } else { - page.querySelector('#musicVideosCollapsible').classList.add('hide'); - } - }); - } - - function renderAdditionalParts(page, item, user) { - connectionManager.getApiClient(item.ServerId).getAdditionalVideoParts(user.Id, item.Id).then(function (result) { - if (result.Items.length) { - page.querySelector('#additionalPartsCollapsible').classList.remove('hide'); - const additionalPartsContent = page.querySelector('#additionalPartsContent'); - additionalPartsContent.innerHTML = getVideosHtml(result.Items); - imageLoader.lazyChildren(additionalPartsContent); - } else { - page.querySelector('#additionalPartsCollapsible').classList.add('hide'); - } - }); - } - - function renderScenes(page, item) { - let chapters = item.Chapters || []; - - if (chapters.length && !chapters[0].ImageTag && (chapters = []), chapters.length) { - page.querySelector('#scenesCollapsible').classList.remove('hide'); - const scenesContent = page.querySelector('#scenesContent'); - - import('chaptercardbuilder').then(({default: chaptercardbuilder}) => { - chaptercardbuilder.buildChapterCards(item, chapters, { - itemsContainer: scenesContent, - backdropShape: 'overflowBackdrop', - squareShape: 'overflowSquare', - imageBlurhashes: item.ImageBlurHashes - }); - }); +function renderSeriesSchedule(page, item) { + const apiClient = connectionManager.getApiClient(item.ServerId); + apiClient.getLiveTvPrograms({ + UserId: apiClient.getCurrentUserId(), + HasAired: false, + SortBy: 'StartDate', + EnableTotalRecordCount: false, + EnableImages: false, + ImageTypeLimit: 0, + Limit: 50, + EnableUserData: false, + LibrarySeriesId: item.Id + }).then(function (result) { + if (result.Items.length) { + page.querySelector('#seriesScheduleSection').classList.remove('hide'); } else { - page.querySelector('#scenesCollapsible').classList.add('hide'); + page.querySelector('#seriesScheduleSection').classList.add('hide'); } - } - function getVideosHtml(items) { - return cardBuilder.getCardsHtml({ - items: items, - shape: 'autooverflow', + page.querySelector('#seriesScheduleList').innerHTML = listView.getListViewHtml({ + items: result.Items, + enableUserDataButtons: false, + showParentTitle: false, + image: false, + showProgramDateTime: true, + mediaInfo: false, showTitle: true, - action: 'play', - overlayText: false, - centerText: true, - showRuntime: true + moreButton: false, + action: 'programdialog' }); + loading.hide(); + }); +} + +function inferContext(item) { + if (item.Type === 'Movie' || item.Type === 'BoxSet') { + return 'movies'; } - function renderSpecials(page, item, user) { - connectionManager.getApiClient(item.ServerId).getSpecialFeatures(user.Id, item.Id).then(function (specials) { - const specialsContent = page.querySelector('#specialsContent'); - specialsContent.innerHTML = getVideosHtml(specials); - imageLoader.lazyChildren(specialsContent); - }); + if (item.Type === 'Series' || item.Type === 'Season' || item.Type === 'Episode') { + return 'tvshows'; } - function renderCast(page, item) { - const people = (item.People || []).filter(function (p) { - return p.Type === 'Actor'; - }); + if (item.Type === 'MusicArtist' || item.Type === 'MusicAlbum' || item.Type === 'Audio' || item.Type === 'AudioBook') { + return 'music'; + } - if (!people.length) { - return void page.querySelector('#castCollapsible').classList.add('hide'); + if (item.Type === 'Program') { + return 'livetv'; + } + + return null; +} + +function filterItemsByCollectionItemType(items, typeInfo) { + return items.filter(function (item) { + if (typeInfo.mediaType) { + return item.MediaType == typeInfo.mediaType; } - page.querySelector('#castCollapsible').classList.remove('hide'); - const castContent = page.querySelector('#castContent'); + return item.Type == typeInfo.type; + }); +} - import('peoplecardbuilder').then(({default: peoplecardbuilder}) => { - peoplecardbuilder.buildPeopleCards(people, { - itemsContainer: castContent, - coverImage: true, - serverId: item.ServerId, - shape: 'overflowPortrait', +function canPlaySomeItemInCollection(items) { + let i = 0; + + for (let length = items.length; i < length; i++) { + if (playbackManager.canPlay(items[i])) { + return true; + } + } + + return false; +} + +function renderCollectionItems(page, parentItem, types, items) { + page.querySelector('.collectionItems').classList.remove('hide'); + page.querySelector('.collectionItems').innerHTML = ''; + + for (const type of types) { + const typeItems = filterItemsByCollectionItemType(items, type); + + if (typeItems.length) { + renderCollectionItemType(page, parentItem, type, typeItems); + } + } + + const otherType = { + name: globalize.translate('HeaderOtherItems') + }; + const otherTypeItems = items.filter(function (curr) { + return !types.filter(function (t) { + return filterItemsByCollectionItemType([curr], t).length > 0; + }).length; + }); + + if (otherTypeItems.length) { + renderCollectionItemType(page, parentItem, otherType, otherTypeItems); + } + + if (!items.length) { + renderCollectionItemType(page, parentItem, { + name: globalize.translate('Items') + }, items); + } + + const containers = page.querySelectorAll('.collectionItemsContainer'); + + const notifyRefreshNeeded = function () { + renderChildren(page, parentItem); + }; + + for (const container of containers) { + container.notifyRefreshNeeded = notifyRefreshNeeded; + } + + // if nothing in the collection can be played hide play and shuffle buttons + if (!canPlaySomeItemInCollection(items)) { + hideAll(page, 'btnPlay', false); + hideAll(page, 'btnShuffle', false); + } + + // HACK: Call autoFocuser again because btnPlay may be hidden, but focused by reloadFromItem + // FIXME: Sometimes focus does not move until all (?) sections are loaded + import('autoFocuser').then(({ default: autoFocuser }) => { + autoFocuser.autoFocus(page); + }); +} + +function renderCollectionItemType(page, parentItem, type, items) { + let html = ''; + html += '
    '; + html += '
    '; + html += '

    '; + html += '' + type.name + ''; + html += '

    '; + html += '
    '; + html += '
    '; + const shape = type.type == 'MusicAlbum' ? getSquareShape(false) : getPortraitShape(false); + html += cardBuilder.getCardsHtml({ + items: items, + shape: shape, + showTitle: true, + showYear: type.mediaType === 'Video' || type.type === 'Series', + centerText: true, + lazy: true, + showDetailsMenu: true, + overlayMoreButton: true, + showAddToCollection: false, + showRemoveFromCollection: true, + collectionId: parentItem.Id + }); + html += '
    '; + html += '
    '; + const collectionItems = page.querySelector('.collectionItems'); + collectionItems.insertAdjacentHTML('beforeend', html); + imageLoader.lazyChildren(collectionItems); +} + +function renderMusicVideos(page, item, user) { + connectionManager.getApiClient(item.ServerId).getItems(user.Id, { + SortBy: 'SortName', + SortOrder: 'Ascending', + IncludeItemTypes: 'MusicVideo', + Recursive: true, + Fields: 'PrimaryImageAspectRatio,BasicSyncInfo,CanDelete,MediaSourceCount', + AlbumIds: item.Id + }).then(function (result) { + if (result.Items.length) { + page.querySelector('#musicVideosCollapsible').classList.remove('hide'); + const musicVideosContent = page.querySelector('.musicVideosContent'); + musicVideosContent.innerHTML = getVideosHtml(result.Items); + imageLoader.lazyChildren(musicVideosContent); + } else { + page.querySelector('#musicVideosCollapsible').classList.add('hide'); + } + }); +} + +function renderAdditionalParts(page, item, user) { + connectionManager.getApiClient(item.ServerId).getAdditionalVideoParts(user.Id, item.Id).then(function (result) { + if (result.Items.length) { + page.querySelector('#additionalPartsCollapsible').classList.remove('hide'); + const additionalPartsContent = page.querySelector('#additionalPartsContent'); + additionalPartsContent.innerHTML = getVideosHtml(result.Items); + imageLoader.lazyChildren(additionalPartsContent); + } else { + page.querySelector('#additionalPartsCollapsible').classList.add('hide'); + } + }); +} + +function renderScenes(page, item) { + let chapters = item.Chapters || []; + + if (chapters.length && !chapters[0].ImageTag && (chapters = []), chapters.length) { + page.querySelector('#scenesCollapsible').classList.remove('hide'); + const scenesContent = page.querySelector('#scenesContent'); + + import('chaptercardbuilder').then(({ default: chaptercardbuilder }) => { + chaptercardbuilder.buildChapterCards(item, chapters, { + itemsContainer: scenesContent, + backdropShape: 'overflowBackdrop', + squareShape: 'overflowSquare', imageBlurhashes: item.ImageBlurHashes }); }); + } else { + page.querySelector('#scenesCollapsible').classList.add('hide'); + } +} + +function getVideosHtml(items) { + return cardBuilder.getCardsHtml({ + items: items, + shape: 'autooverflow', + showTitle: true, + action: 'play', + overlayText: false, + centerText: true, + showRuntime: true + }); +} + +function renderSpecials(page, item, user) { + connectionManager.getApiClient(item.ServerId).getSpecialFeatures(user.Id, item.Id).then(function (specials) { + const specialsContent = page.querySelector('#specialsContent'); + specialsContent.innerHTML = getVideosHtml(specials); + imageLoader.lazyChildren(specialsContent); + }); +} + +function renderCast(page, item) { + const people = (item.People || []).filter(function (p) { + return p.Type === 'Actor'; + }); + + if (!people.length) { + return void page.querySelector('#castCollapsible').classList.add('hide'); } - function itemDetailPage() { - const self = this; - self.setInitialCollapsibleState = setInitialCollapsibleState; - self.renderDetails = renderDetails; - self.renderCast = renderCast; + page.querySelector('#castCollapsible').classList.remove('hide'); + const castContent = page.querySelector('#castContent'); + + import('peoplecardbuilder').then(({ default: peoplecardbuilder }) => { + peoplecardbuilder.buildPeopleCards(people, { + itemsContainer: castContent, + coverImage: true, + serverId: item.ServerId, + shape: 'overflowPortrait', + imageBlurhashes: item.ImageBlurHashes + }); + }); +} + +function itemDetailPage() { + const self = this; + self.setInitialCollapsibleState = setInitialCollapsibleState; + self.renderDetails = renderDetails; + self.renderCast = renderCast; +} + +function bindAll(view, selector, eventName, fn) { + const elems = view.querySelectorAll(selector); + + for (const elem of elems) { + elem.addEventListener(eventName, fn); + } +} + +function onTrackSelectionsSubmit(e) { + e.preventDefault(); + return false; +} + +window.ItemDetailPage = new itemDetailPage(); + +export default function (view, params) { + function reload(instance, page, params) { + loading.show(); + + const apiClient = params.serverId ? connectionManager.getApiClient(params.serverId) : ApiClient; + + Promise.all([getPromise(apiClient, params), apiClient.getCurrentUser()]).then(([item, user]) => { + currentItem = item; + reloadFromItem(instance, page, params, item, user); + }).catch((error) => { + console.error('failed to get item or current user: ', error); + }); } - function bindAll(view, selector, eventName, fn) { - const elems = view.querySelectorAll(selector); - - for (const elem of elems) { - elem.addEventListener(eventName, fn); - } - } - - function onTrackSelectionsSubmit(e) { - e.preventDefault(); - return false; - } - - window.ItemDetailPage = new itemDetailPage(); - - export default function (view, params) { - function reload(instance, page, params) { - loading.show(); - - const apiClient = params.serverId ? connectionManager.getApiClient(params.serverId) : ApiClient; - - Promise.all([getPromise(apiClient, params), apiClient.getCurrentUser()]).then(([item, user]) => { - currentItem = item; - reloadFromItem(instance, page, params, item, user); - }).catch((error) => { - console.error('failed to get item or current user: ', error); + function splitVersions(instance, page, apiClient, params) { + import('confirm').then(({ default: confirm }) => { + confirm('Are you sure you wish to split the media sources into separate items?', 'Split Media Apart').then(function () { + loading.show(); + apiClient.ajax({ + type: 'DELETE', + url: apiClient.getUrl('Videos/' + params.id + '/AlternateSources') + }).then(function () { + loading.hide(); + reload(instance, page, params); + }); }); - } + }); + } - function splitVersions(instance, page, apiClient, params) { - import('confirm').then(({default: confirm}) => { - confirm('Are you sure you wish to split the media sources into separate items?', 'Split Media Apart').then(function () { - loading.show(); - apiClient.ajax({ - type: 'DELETE', - url: apiClient.getUrl('Videos/' + params.id + '/AlternateSources') - }).then(function () { - loading.hide(); - reload(instance, page, params); - }); + function getPlayOptions(startPosition) { + const audioStreamIndex = view.querySelector('.selectAudio').value || null; + return { + startPositionTicks: startPosition, + mediaSourceId: view.querySelector('.selectSource').value, + audioStreamIndex: audioStreamIndex, + subtitleStreamIndex: view.querySelector('.selectSubtitles').value + }; + } + + function playItem(item, startPosition) { + const playOptions = getPlayOptions(startPosition); + playOptions.items = [item]; + playbackManager.play(playOptions); + } + + function playTrailer() { + playbackManager.playTrailers(currentItem); + } + + function playCurrentItem(button, mode) { + const item = currentItem; + + if (item.Type === 'Program') { + const apiClient = connectionManager.getApiClient(item.ServerId); + return void apiClient.getLiveTvChannel(item.ChannelId, apiClient.getCurrentUserId()).then(function (channel) { + playbackManager.play({ + items: [channel] }); }); } - function getPlayOptions(startPosition) { - const audioStreamIndex = view.querySelector('.selectAudio').value || null; - return { - startPositionTicks: startPosition, - mediaSourceId: view.querySelector('.selectSource').value, - audioStreamIndex: audioStreamIndex, - subtitleStreamIndex: view.querySelector('.selectSubtitles').value - }; - } + playItem(item, item.UserData && mode === 'resume' ? item.UserData.PlaybackPositionTicks : 0); + } - function playItem(item, startPosition) { - const playOptions = getPlayOptions(startPosition); - playOptions.items = [item]; - playbackManager.play(playOptions); - } + function onPlayClick() { + playCurrentItem(this, this.getAttribute('data-mode')); + } - function playTrailer() { - playbackManager.playTrailers(currentItem); - } + function onInstantMixClick() { + playbackManager.instantMix(currentItem); + } - function playCurrentItem(button, mode) { - const item = currentItem; + function onShuffleClick() { + playbackManager.shuffle(currentItem); + } - if (item.Type === 'Program') { - const apiClient = connectionManager.getApiClient(item.ServerId); - return void apiClient.getLiveTvChannel(item.ChannelId, apiClient.getCurrentUserId()).then(function (channel) { - playbackManager.play({ - items: [channel] - }); - }); - } - - playItem(item, item.UserData && mode === 'resume' ? item.UserData.PlaybackPositionTicks : 0); - } - - function onPlayClick() { - playCurrentItem(this, this.getAttribute('data-mode')); - } - - function onInstantMixClick() { - playbackManager.instantMix(currentItem); - } - - function onShuffleClick() { - playbackManager.shuffle(currentItem); - } - - function onCancelSeriesTimerClick() { - import('recordingHelper').then(({default: recordingHelper}) => { - recordingHelper.cancelSeriesTimerWithConfirmation(currentItem.Id, currentItem.ServerId).then(function () { - Dashboard.navigate('livetv.html'); - }); + function onCancelSeriesTimerClick() { + import('recordingHelper').then(({ default: recordingHelper }) => { + recordingHelper.cancelSeriesTimerWithConfirmation(currentItem.Id, currentItem.ServerId).then(function () { + Dashboard.navigate('livetv.html'); }); - } + }); + } - function onCancelTimerClick() { - import('recordingHelper').then(({default: recordingHelper}) => { - recordingHelper.cancelTimer(connectionManager.getApiClient(currentItem.ServerId), currentItem.TimerId).then(function () { - reload(self, view, params); - }); + function onCancelTimerClick() { + import('recordingHelper').then(({ default: recordingHelper }) => { + recordingHelper.cancelTimer(connectionManager.getApiClient(currentItem.ServerId), currentItem.TimerId).then(function () { + reload(self, view, params); }); - } + }); + } - function onPlayTrailerClick() { - playTrailer(); - } + function onPlayTrailerClick() { + playTrailer(); + } - function onDownloadClick() { - import('fileDownloader').then(({default: fileDownloader}) => { - const downloadHref = apiClient.getItemDownloadUrl(currentItem.Id); - fileDownloader.download([{ - url: downloadHref, - itemId: currentItem.Id, - serverId: currentItem.serverId - }]); - }); - } + function onDownloadClick() { + import('fileDownloader').then(({ default: fileDownloader }) => { + const downloadHref = apiClient.getItemDownloadUrl(currentItem.Id); + fileDownloader.download([{ + url: downloadHref, + itemId: currentItem.Id, + serverId: currentItem.serverId + }]); + }); + } + + function onMoreCommandsClick() { + var button = this; + var selectedItem = currentItem; + apiClient.getItem(apiClient.getCurrentUserId(), view.querySelector('.selectSource').value).then(function (item) { + selectedItem = item; - function onMoreCommandsClick() { - const button = this; apiClient.getCurrentUser().then(function (user) { - itemContextMenu.show(getContextMenuOptions(currentItem, user, button)).then(function (result) { + itemContextMenu.show(getContextMenuOptions(selectedItem, user, button)).then(function (result) { if (result.deleted) { appRouter.goHome(); } else if (result.updated) { @@ -1945,79 +1949,81 @@ import 'emby-select'; } }); }); - } - function onPlayerChange() { - renderTrackSelections(view, self, currentItem); - setTrailerButtonVisibility(view, currentItem); - } - - function onWebSocketMessage(e, data) { - const msg = data; - - if (msg.MessageType === 'UserDataChanged' && currentItem && msg.Data.UserId == apiClient.getCurrentUserId()) { - const key = currentItem.UserData.Key; - const userData = msg.Data.UserDataList.filter(function (u) { - return u.Key == key; - })[0]; - - if (userData) { - currentItem.UserData = userData; - reloadPlayButtons(view, currentItem); - refreshImage(view, currentItem); - } - } - } - - let currentItem; - const self = this; - const apiClient = params.serverId ? connectionManager.getApiClient(params.serverId) : ApiClient; - view.querySelectorAll('.btnPlay'); - bindAll(view, '.btnPlay', 'click', onPlayClick); - bindAll(view, '.btnResume', 'click', onPlayClick); - bindAll(view, '.btnInstantMix', 'click', onInstantMixClick); - bindAll(view, '.btnShuffle', 'click', onShuffleClick); - bindAll(view, '.btnPlayTrailer', 'click', onPlayTrailerClick); - bindAll(view, '.btnCancelSeriesTimer', 'click', onCancelSeriesTimerClick); - bindAll(view, '.btnCancelTimer', 'click', onCancelTimerClick); - bindAll(view, '.btnDownload', 'click', onDownloadClick); - view.querySelector('.trackSelections').addEventListener('submit', onTrackSelectionsSubmit); - view.querySelector('.btnSplitVersions').addEventListener('click', function () { - splitVersions(self, view, apiClient, params); - }); - bindAll(view, '.btnMoreCommands', 'click', onMoreCommandsClick); - view.querySelector('.selectSource').addEventListener('change', function () { - renderVideoSelections(view, self._currentPlaybackMediaSources); - renderAudioSelections(view, self._currentPlaybackMediaSources); - renderSubtitleSelections(view, self._currentPlaybackMediaSources); - }); - view.addEventListener('viewshow', function (e) { - const page = this; - - libraryMenu.setTransparentMenu(true); - - if (e.detail.isRestored) { - if (currentItem) { - Emby.Page.setTitle(''); - renderTrackSelections(page, self, currentItem, true); - } - } else { - reload(self, page, params); - } - - events.on(apiClient, 'message', onWebSocketMessage); - events.on(playbackManager, 'playerchange', onPlayerChange); - }); - view.addEventListener('viewbeforehide', function () { - events.off(apiClient, 'message', onWebSocketMessage); - events.off(playbackManager, 'playerchange', onPlayerChange); - libraryMenu.setTransparentMenu(false); - }); - view.addEventListener('viewdestroy', function () { - currentItem = null; - self._currentPlaybackMediaSources = null; - self.currentRecordingFields = null; - }); + }) } + function onPlayerChange() { + renderTrackSelections(view, self, currentItem); + setTrailerButtonVisibility(view, currentItem); + } + + function onWebSocketMessage(e, data) { + const msg = data; + + if (msg.MessageType === 'UserDataChanged' && currentItem && msg.Data.UserId == apiClient.getCurrentUserId()) { + const key = currentItem.UserData.Key; + const userData = msg.Data.UserDataList.filter(function (u) { + return u.Key == key; + })[0]; + + if (userData) { + currentItem.UserData = userData; + reloadPlayButtons(view, currentItem); + refreshImage(view, currentItem); + } + } + } + + let currentItem; + const self = this; + const apiClient = params.serverId ? connectionManager.getApiClient(params.serverId) : ApiClient; + view.querySelectorAll('.btnPlay'); + bindAll(view, '.btnPlay', 'click', onPlayClick); + bindAll(view, '.btnResume', 'click', onPlayClick); + bindAll(view, '.btnInstantMix', 'click', onInstantMixClick); + bindAll(view, '.btnShuffle', 'click', onShuffleClick); + bindAll(view, '.btnPlayTrailer', 'click', onPlayTrailerClick); + bindAll(view, '.btnCancelSeriesTimer', 'click', onCancelSeriesTimerClick); + bindAll(view, '.btnCancelTimer', 'click', onCancelTimerClick); + bindAll(view, '.btnDownload', 'click', onDownloadClick); + view.querySelector('.trackSelections').addEventListener('submit', onTrackSelectionsSubmit); + view.querySelector('.btnSplitVersions').addEventListener('click', function () { + splitVersions(self, view, apiClient, params); + }); + bindAll(view, '.btnMoreCommands', 'click', onMoreCommandsClick); + view.querySelector('.selectSource').addEventListener('change', function () { + renderVideoSelections(view, self._currentPlaybackMediaSources); + renderAudioSelections(view, self._currentPlaybackMediaSources); + renderSubtitleSelections(view, self._currentPlaybackMediaSources); + }); + view.addEventListener('viewshow', function (e) { + const page = this; + + libraryMenu.setTransparentMenu(true); + + if (e.detail.isRestored) { + if (currentItem) { + Emby.Page.setTitle(''); + renderTrackSelections(page, self, currentItem, true); + } + } else { + reload(self, page, params); + } + + events.on(apiClient, 'message', onWebSocketMessage); + events.on(playbackManager, 'playerchange', onPlayerChange); + }); + view.addEventListener('viewbeforehide', function () { + events.off(apiClient, 'message', onWebSocketMessage); + events.off(playbackManager, 'playerchange', onPlayerChange); + libraryMenu.setTransparentMenu(false); + }); + view.addEventListener('viewdestroy', function () { + currentItem = null; + self._currentPlaybackMediaSources = null; + self.currentRecordingFields = null; + }); +} + /* eslint-enable indent */ From b976d9ad4394b4feca6aeacd9b1081c31fab2e32 Mon Sep 17 00:00:00 2001 From: Mister Rajoy Date: Tue, 18 Aug 2020 01:47:30 +0200 Subject: [PATCH 118/285] Revert "Fix editMetadata/download didnt work with selected version" This reverts commit fd3f1a7a22100f82faa450e577caa59f1e0b504c. --- src/controllers/itemDetails/index.js | 3572 +++++++++++++------------- 1 file changed, 1783 insertions(+), 1789 deletions(-) diff --git a/src/controllers/itemDetails/index.js b/src/controllers/itemDetails/index.js index 4d66ea00b9..c57190139f 100644 --- a/src/controllers/itemDetails/index.js +++ b/src/controllers/itemDetails/index.js @@ -30,1918 +30,1914 @@ import 'emby-select'; /* eslint-disable indent */ -function getPromise(apiClient, params) { - const id = params.id; + function getPromise(apiClient, params) { + const id = params.id; - if (id) { - return apiClient.getItem(apiClient.getCurrentUserId(), id); - } - - if (params.seriesTimerId) { - return apiClient.getLiveTvSeriesTimer(params.seriesTimerId); - } - - if (params.genre) { - return apiClient.getGenre(params.genre, apiClient.getCurrentUserId()); - } - - if (params.musicgenre) { - return apiClient.getMusicGenre(params.musicgenre, apiClient.getCurrentUserId()); - } - - if (params.musicartist) { - return apiClient.getArtist(params.musicartist, apiClient.getCurrentUserId()); - } - - throw new Error('Invalid request'); -} - -function hideAll(page, className, show) { - for (const elem of page.querySelectorAll('.' + className)) { - if (show) { - elem.classList.remove('hide'); - } else { - elem.classList.add('hide'); - } - } -} - -function getContextMenuOptions(item, user, button) { - return { - item: item, - open: false, - play: false, - playAllFromHere: false, - queueAllFromHere: false, - positionTo: button, - cancelTimer: false, - record: false, - deleteItem: item.CanDelete === true, - shuffle: false, - instantMix: false, - user: user, - share: true - }; -} - -function getProgramScheduleHtml(items) { - let html = ''; - - html += '
    '; - html += listView.getListViewHtml({ - items: items, - enableUserDataButtons: false, - image: true, - imageSource: 'channel', - showProgramDateTime: true, - showChannel: false, - mediaInfo: false, - action: 'none', - moreButton: false, - recordButton: false - }); - - html += '
    '; - - return html; -} - -function renderSeriesTimerSchedule(page, apiClient, seriesTimerId) { - apiClient.getLiveTvTimers({ - UserId: apiClient.getCurrentUserId(), - ImageTypeLimit: 1, - EnableImageTypes: 'Primary,Backdrop,Thumb', - SortBy: 'StartDate', - EnableTotalRecordCount: false, - EnableUserData: false, - SeriesTimerId: seriesTimerId, - Fields: 'ChannelInfo,ChannelImage' - }).then(function (result) { - if (result.Items.length && result.Items[0].SeriesTimerId != seriesTimerId) { - result.Items = []; + if (id) { + return apiClient.getItem(apiClient.getCurrentUserId(), id); } - const html = getProgramScheduleHtml(result.Items); - const scheduleTab = page.querySelector('.seriesTimerSchedule'); - scheduleTab.innerHTML = html; - imageLoader.lazyChildren(scheduleTab); - }); -} + if (params.seriesTimerId) { + return apiClient.getLiveTvSeriesTimer(params.seriesTimerId); + } -function renderTimerEditor(page, item, apiClient, user) { - if (item.Type !== 'Recording' || !user.Policy.EnableLiveTvManagement || !item.TimerId || item.Status !== 'InProgress') { - return void hideAll(page, 'btnCancelTimer'); + if (params.genre) { + return apiClient.getGenre(params.genre, apiClient.getCurrentUserId()); + } + + if (params.musicgenre) { + return apiClient.getMusicGenre(params.musicgenre, apiClient.getCurrentUserId()); + } + + if (params.musicartist) { + return apiClient.getArtist(params.musicartist, apiClient.getCurrentUserId()); + } + + throw new Error('Invalid request'); } - hideAll(page, 'btnCancelTimer', true); -} + function hideAll(page, className, show) { + for (const elem of page.querySelectorAll('.' + className)) { + if (show) { + elem.classList.remove('hide'); + } else { + elem.classList.add('hide'); + } + } + } -function renderSeriesTimerEditor(page, item, apiClient, user) { - if (item.Type !== 'SeriesTimer') { + function getContextMenuOptions(item, user, button) { + return { + item: item, + open: false, + play: false, + playAllFromHere: false, + queueAllFromHere: false, + positionTo: button, + cancelTimer: false, + record: false, + deleteItem: item.CanDelete === true, + shuffle: false, + instantMix: false, + user: user, + share: true + }; + } + + function getProgramScheduleHtml(items) { + let html = ''; + + html += '
    '; + html += listView.getListViewHtml({ + items: items, + enableUserDataButtons: false, + image: true, + imageSource: 'channel', + showProgramDateTime: true, + showChannel: false, + mediaInfo: false, + action: 'none', + moreButton: false, + recordButton: false + }); + + html += '
    '; + + return html; + } + + function renderSeriesTimerSchedule(page, apiClient, seriesTimerId) { + apiClient.getLiveTvTimers({ + UserId: apiClient.getCurrentUserId(), + ImageTypeLimit: 1, + EnableImageTypes: 'Primary,Backdrop,Thumb', + SortBy: 'StartDate', + EnableTotalRecordCount: false, + EnableUserData: false, + SeriesTimerId: seriesTimerId, + Fields: 'ChannelInfo,ChannelImage' + }).then(function (result) { + if (result.Items.length && result.Items[0].SeriesTimerId != seriesTimerId) { + result.Items = []; + } + + const html = getProgramScheduleHtml(result.Items); + const scheduleTab = page.querySelector('.seriesTimerSchedule'); + scheduleTab.innerHTML = html; + imageLoader.lazyChildren(scheduleTab); + }); + } + + function renderTimerEditor(page, item, apiClient, user) { + if (item.Type !== 'Recording' || !user.Policy.EnableLiveTvManagement || !item.TimerId || item.Status !== 'InProgress') { + return void hideAll(page, 'btnCancelTimer'); + } + + hideAll(page, 'btnCancelTimer', true); + } + + function renderSeriesTimerEditor(page, item, apiClient, user) { + if (item.Type !== 'SeriesTimer') { + return void hideAll(page, 'btnCancelSeriesTimer'); + } + + if (user.Policy.EnableLiveTvManagement) { + import('seriesRecordingEditor').then(({default: seriesRecordingEditor}) => { + seriesRecordingEditor.embed(item, apiClient.serverId(), { + context: page.querySelector('.seriesRecordingEditor') + }); + }); + + page.querySelector('.seriesTimerScheduleSection').classList.remove('hide'); + hideAll(page, 'btnCancelSeriesTimer', true); + return void renderSeriesTimerSchedule(page, apiClient, item.Id); + } + + page.querySelector('.seriesTimerScheduleSection').classList.add('hide'); return void hideAll(page, 'btnCancelSeriesTimer'); } - if (user.Policy.EnableLiveTvManagement) { - import('seriesRecordingEditor').then(({ default: seriesRecordingEditor }) => { - seriesRecordingEditor.embed(item, apiClient.serverId(), { - context: page.querySelector('.seriesRecordingEditor') - }); + function renderTrackSelections(page, instance, item, forceReload) { + const select = page.querySelector('.selectSource'); + + if (!item.MediaSources || !itemHelper.supportsMediaSourceSelection(item) || playbackManager.getSupportedCommands().indexOf('PlayMediaSource') === -1 || !playbackManager.canPlay(item)) { + page.querySelector('.trackSelections').classList.add('hide'); + select.innerHTML = ''; + page.querySelector('.selectVideo').innerHTML = ''; + page.querySelector('.selectAudio').innerHTML = ''; + page.querySelector('.selectSubtitles').innerHTML = ''; + return; + } + + const mediaSources = item.MediaSources; + instance._currentPlaybackMediaSources = mediaSources; + + page.querySelector('.trackSelections').classList.remove('hide'); + select.setLabel(globalize.translate('LabelVersion')); + + const currentValue = select.value; + + const selectedId = mediaSources[0].Id; + select.innerHTML = mediaSources.map(function (v) { + const selected = v.Id === selectedId ? ' selected' : ''; + return ''; + }).join(''); + + if (mediaSources.length > 1) { + page.querySelector('.selectSourceContainer').classList.remove('hide'); + } else { + page.querySelector('.selectSourceContainer').classList.add('hide'); + } + + if (select.value !== currentValue || forceReload) { + renderVideoSelections(page, mediaSources); + renderAudioSelections(page, mediaSources); + renderSubtitleSelections(page, mediaSources); + } + } + + function renderVideoSelections(page, mediaSources) { + const mediaSourceId = page.querySelector('.selectSource').value; + const mediaSource = mediaSources.filter(function (m) { + return m.Id === mediaSourceId; + })[0]; + + const tracks = mediaSource.MediaStreams.filter(function (m) { + return m.Type === 'Video'; }); - page.querySelector('.seriesTimerScheduleSection').classList.remove('hide'); - hideAll(page, 'btnCancelSeriesTimer', true); - return void renderSeriesTimerSchedule(page, apiClient, item.Id); - } + const select = page.querySelector('.selectVideo'); + select.setLabel(globalize.translate('LabelVideo')); + const selectedId = tracks.length ? tracks[0].Index : -1; + select.innerHTML = tracks.map(function (v) { + const selected = v.Index === selectedId ? ' selected' : ''; + const titleParts = []; + const resolutionText = mediaInfo.getResolutionText(v); - page.querySelector('.seriesTimerScheduleSection').classList.add('hide'); - return void hideAll(page, 'btnCancelSeriesTimer'); -} + if (resolutionText) { + titleParts.push(resolutionText); + } -function renderTrackSelections(page, instance, item, forceReload) { - const select = page.querySelector('.selectSource'); + if (v.Codec) { + titleParts.push(v.Codec.toUpperCase()); + } - if (!item.MediaSources || !itemHelper.supportsMediaSourceSelection(item) || playbackManager.getSupportedCommands().indexOf('PlayMediaSource') === -1 || !playbackManager.canPlay(item)) { - page.querySelector('.trackSelections').classList.add('hide'); - select.innerHTML = ''; - page.querySelector('.selectVideo').innerHTML = ''; - page.querySelector('.selectAudio').innerHTML = ''; - page.querySelector('.selectSubtitles').innerHTML = ''; - return; - } - - const mediaSources = item.MediaSources; - instance._currentPlaybackMediaSources = mediaSources; - - page.querySelector('.trackSelections').classList.remove('hide'); - select.setLabel(globalize.translate('LabelVersion')); - - const currentValue = select.value; - - const selectedId = mediaSources[0].Id; - select.innerHTML = mediaSources.map(function (v) { - const selected = v.Id === selectedId ? ' selected' : ''; - return ''; - }).join(''); - - if (mediaSources.length > 1) { - page.querySelector('.selectSourceContainer').classList.remove('hide'); - } else { - page.querySelector('.selectSourceContainer').classList.add('hide'); - } - - if (select.value !== currentValue || forceReload) { - renderVideoSelections(page, mediaSources); - renderAudioSelections(page, mediaSources); - renderSubtitleSelections(page, mediaSources); - } -} - -function renderVideoSelections(page, mediaSources) { - const mediaSourceId = page.querySelector('.selectSource').value; - const mediaSource = mediaSources.filter(function (m) { - return m.Id === mediaSourceId; - })[0]; - - const tracks = mediaSource.MediaStreams.filter(function (m) { - return m.Type === 'Video'; - }); - - const select = page.querySelector('.selectVideo'); - select.setLabel(globalize.translate('LabelVideo')); - const selectedId = tracks.length ? tracks[0].Index : -1; - select.innerHTML = tracks.map(function (v) { - const selected = v.Index === selectedId ? ' selected' : ''; - const titleParts = []; - const resolutionText = mediaInfo.getResolutionText(v); - - if (resolutionText) { - titleParts.push(resolutionText); - } - - if (v.Codec) { - titleParts.push(v.Codec.toUpperCase()); - } - - return ''; - }).join(''); - select.setAttribute('disabled', 'disabled'); - - if (tracks.length) { - page.querySelector('.selectVideoContainer').classList.remove('hide'); - } else { - page.querySelector('.selectVideoContainer').classList.add('hide'); - } -} - -function renderAudioSelections(page, mediaSources) { - const mediaSourceId = page.querySelector('.selectSource').value; - const mediaSource = mediaSources.filter(function (m) { - return m.Id === mediaSourceId; - })[0]; - const tracks = mediaSource.MediaStreams.filter(function (m) { - return m.Type === 'Audio'; - }); - const select = page.querySelector('.selectAudio'); - select.setLabel(globalize.translate('LabelAudio')); - const selectedId = mediaSource.DefaultAudioStreamIndex; - select.innerHTML = tracks.map(function (v) { - const selected = v.Index === selectedId ? ' selected' : ''; - return ''; - }).join(''); - - if (tracks.length > 1) { - select.removeAttribute('disabled'); - } else { + return ''; + }).join(''); select.setAttribute('disabled', 'disabled'); + + if (tracks.length) { + page.querySelector('.selectVideoContainer').classList.remove('hide'); + } else { + page.querySelector('.selectVideoContainer').classList.add('hide'); + } } - if (tracks.length) { - page.querySelector('.selectAudioContainer').classList.remove('hide'); - } else { - page.querySelector('.selectAudioContainer').classList.add('hide'); - } -} - -function renderSubtitleSelections(page, mediaSources) { - const mediaSourceId = page.querySelector('.selectSource').value; - const mediaSource = mediaSources.filter(function (m) { - return m.Id === mediaSourceId; - })[0]; - const tracks = mediaSource.MediaStreams.filter(function (m) { - return m.Type === 'Subtitle'; - }); - const select = page.querySelector('.selectSubtitles'); - select.setLabel(globalize.translate('LabelSubtitles')); - const selectedId = mediaSource.DefaultSubtitleStreamIndex == null ? -1 : mediaSource.DefaultSubtitleStreamIndex; - - const videoTracks = mediaSource.MediaStreams.filter(function (m) { - return m.Type === 'Video'; - }); - - // This only makes sense on Video items - if (videoTracks.length) { - let selected = selectedId === -1 ? ' selected' : ''; - select.innerHTML = '' + tracks.map(function (v) { - selected = v.Index === selectedId ? ' selected' : ''; + function renderAudioSelections(page, mediaSources) { + const mediaSourceId = page.querySelector('.selectSource').value; + const mediaSource = mediaSources.filter(function (m) { + return m.Id === mediaSourceId; + })[0]; + const tracks = mediaSource.MediaStreams.filter(function (m) { + return m.Type === 'Audio'; + }); + const select = page.querySelector('.selectAudio'); + select.setLabel(globalize.translate('LabelAudio')); + const selectedId = mediaSource.DefaultAudioStreamIndex; + select.innerHTML = tracks.map(function (v) { + const selected = v.Index === selectedId ? ' selected' : ''; return ''; }).join(''); - if (tracks.length > 0) { + if (tracks.length > 1) { select.removeAttribute('disabled'); } else { select.setAttribute('disabled', 'disabled'); } - page.querySelector('.selectSubtitlesContainer').classList.remove('hide'); - } else { - select.innerHTML = ''; - page.querySelector('.selectSubtitlesContainer').classList.add('hide'); + if (tracks.length) { + page.querySelector('.selectAudioContainer').classList.remove('hide'); + } else { + page.querySelector('.selectAudioContainer').classList.add('hide'); + } } -} -function reloadPlayButtons(page, item) { - let canPlay = false; + function renderSubtitleSelections(page, mediaSources) { + const mediaSourceId = page.querySelector('.selectSource').value; + const mediaSource = mediaSources.filter(function (m) { + return m.Id === mediaSourceId; + })[0]; + const tracks = mediaSource.MediaStreams.filter(function (m) { + return m.Type === 'Subtitle'; + }); + const select = page.querySelector('.selectSubtitles'); + select.setLabel(globalize.translate('LabelSubtitles')); + const selectedId = mediaSource.DefaultSubtitleStreamIndex == null ? -1 : mediaSource.DefaultSubtitleStreamIndex; - if (item.Type == 'Program') { - const now = new Date(); + const videoTracks = mediaSource.MediaStreams.filter(function (m) { + return m.Type === 'Video'; + }); - if (now >= datetime.parseISO8601Date(item.StartDate, true) && now < datetime.parseISO8601Date(item.EndDate, true)) { + // This only makes sense on Video items + if (videoTracks.length) { + let selected = selectedId === -1 ? ' selected' : ''; + select.innerHTML = '' + tracks.map(function (v) { + selected = v.Index === selectedId ? ' selected' : ''; + return ''; + }).join(''); + + if (tracks.length > 0) { + select.removeAttribute('disabled'); + } else { + select.setAttribute('disabled', 'disabled'); + } + + page.querySelector('.selectSubtitlesContainer').classList.remove('hide'); + } else { + select.innerHTML = ''; + page.querySelector('.selectSubtitlesContainer').classList.add('hide'); + } + } + + function reloadPlayButtons(page, item) { + let canPlay = false; + + if (item.Type == 'Program') { + const now = new Date(); + + if (now >= datetime.parseISO8601Date(item.StartDate, true) && now < datetime.parseISO8601Date(item.EndDate, true)) { + hideAll(page, 'btnPlay', true); + canPlay = true; + } else { + hideAll(page, 'btnPlay'); + } + + hideAll(page, 'btnResume'); + hideAll(page, 'btnInstantMix'); + hideAll(page, 'btnShuffle'); + } else if (playbackManager.canPlay(item)) { hideAll(page, 'btnPlay', true); + const enableInstantMix = ['Audio', 'MusicAlbum', 'MusicGenre', 'MusicArtist'].indexOf(item.Type) !== -1; + hideAll(page, 'btnInstantMix', enableInstantMix); + const enableShuffle = item.IsFolder || ['MusicAlbum', 'MusicGenre', 'MusicArtist'].indexOf(item.Type) !== -1; + hideAll(page, 'btnShuffle', enableShuffle); canPlay = true; + + const isResumable = item.UserData && item.UserData.PlaybackPositionTicks > 0; + hideAll(page, 'btnResume', isResumable); + + if (isResumable) { + for (const elem of page.querySelectorAll('.btnPlay')) { + elem.querySelector('.detailButton-icon').classList.replace('play_arrow', 'replay'); + } + } } else { hideAll(page, 'btnPlay'); + hideAll(page, 'btnResume'); + hideAll(page, 'btnInstantMix'); + hideAll(page, 'btnShuffle'); } - hideAll(page, 'btnResume'); - hideAll(page, 'btnInstantMix'); - hideAll(page, 'btnShuffle'); - } else if (playbackManager.canPlay(item)) { - hideAll(page, 'btnPlay', true); - const enableInstantMix = ['Audio', 'MusicAlbum', 'MusicGenre', 'MusicArtist'].indexOf(item.Type) !== -1; - hideAll(page, 'btnInstantMix', enableInstantMix); - const enableShuffle = item.IsFolder || ['MusicAlbum', 'MusicGenre', 'MusicArtist'].indexOf(item.Type) !== -1; - hideAll(page, 'btnShuffle', enableShuffle); - canPlay = true; - - const isResumable = item.UserData && item.UserData.PlaybackPositionTicks > 0; - hideAll(page, 'btnResume', isResumable); - - if (isResumable) { - for (const elem of page.querySelectorAll('.btnPlay')) { - elem.querySelector('.detailButton-icon').classList.replace('play_arrow', 'replay'); - } - } - } else { - hideAll(page, 'btnPlay'); - hideAll(page, 'btnResume'); - hideAll(page, 'btnInstantMix'); - hideAll(page, 'btnShuffle'); + return canPlay; } - return canPlay; -} + function reloadUserDataButtons(page, item) { + let i; + let length; + const btnPlaystates = page.querySelectorAll('.btnPlaystate'); -function reloadUserDataButtons(page, item) { - let i; - let length; - const btnPlaystates = page.querySelectorAll('.btnPlaystate'); + for (i = 0, length = btnPlaystates.length; i < length; i++) { + const btnPlaystate = btnPlaystates[i]; - for (i = 0, length = btnPlaystates.length; i < length; i++) { - const btnPlaystate = btnPlaystates[i]; - - if (itemHelper.canMarkPlayed(item)) { - btnPlaystate.classList.remove('hide'); - btnPlaystate.setItem(item); - } else { - btnPlaystate.classList.add('hide'); - btnPlaystate.setItem(null); - } - } - - const btnUserRatings = page.querySelectorAll('.btnUserRating'); - - for (i = 0, length = btnUserRatings.length; i < length; i++) { - const btnUserRating = btnUserRatings[i]; - - if (itemHelper.canRate(item)) { - btnUserRating.classList.remove('hide'); - btnUserRating.setItem(item); - } else { - btnUserRating.classList.add('hide'); - btnUserRating.setItem(null); - } - } -} - -function getArtistLinksHtml(artists, serverId, context) { - const html = []; - - for (const artist of artists) { - const href = appRouter.getRouteUrl(artist, { - context: context, - itemType: 'MusicArtist', - serverId: serverId - }); - html.push('' + artist.Name + ''); - } - - return html.join(' / '); -} - -/** - * Renders the item's name block - * @param {Object} item - Item used to render the name. - * @param {HTMLDivElement} container - Container to render the information into. - * @param {Object} context - Application context. - */ -function renderName(item, container, context) { - let parentRoute; - const parentNameHtml = []; - let parentNameLast = false; - - if (item.AlbumArtists) { - parentNameHtml.push(getArtistLinksHtml(item.AlbumArtists, item.ServerId, context)); - parentNameLast = true; - } else if (item.ArtistItems && item.ArtistItems.length && item.Type === 'MusicVideo') { - parentNameHtml.push(getArtistLinksHtml(item.ArtistItems, item.ServerId, context)); - parentNameLast = true; - } else if (item.SeriesName && item.Type === 'Episode') { - parentRoute = appRouter.getRouteUrl({ - Id: item.SeriesId, - Name: item.SeriesName, - Type: 'Series', - IsFolder: true, - ServerId: item.ServerId - }, { - context: context - }); - parentNameHtml.push('' + item.SeriesName + ''); - } else if (item.IsSeries || item.EpisodeTitle) { - parentNameHtml.push(item.Name); - } - - if (item.SeriesName && item.Type === 'Season') { - parentRoute = appRouter.getRouteUrl({ - Id: item.SeriesId, - Name: item.SeriesName, - Type: 'Series', - IsFolder: true, - ServerId: item.ServerId - }, { - context: context - }); - parentNameHtml.push('' + item.SeriesName + ''); - } else if (item.ParentIndexNumber != null && item.Type === 'Episode') { - parentRoute = appRouter.getRouteUrl({ - Id: item.SeasonId, - Name: item.SeasonName, - Type: 'Season', - IsFolder: true, - ServerId: item.ServerId - }, { - context: context - }); - parentNameHtml.push('' + item.SeasonName + ''); - } else if (item.ParentIndexNumber != null && item.IsSeries) { - parentNameHtml.push(item.SeasonName || 'S' + item.ParentIndexNumber); - } else if (item.Album && item.AlbumId && (item.Type === 'MusicVideo' || item.Type === 'Audio')) { - parentRoute = appRouter.getRouteUrl({ - Id: item.AlbumId, - Name: item.Album, - Type: 'MusicAlbum', - IsFolder: true, - ServerId: item.ServerId - }, { - context: context - }); - parentNameHtml.push('' + item.Album + ''); - } else if (item.Album) { - parentNameHtml.push(item.Album); - } - - // FIXME: This whole section needs some refactoring, so it becames easier to scale across all form factors. See GH #1022 - let html = ''; - const tvShowHtml = parentNameHtml[0]; - const tvSeasonHtml = parentNameHtml[1]; - - if (parentNameHtml.length) { - if (parentNameLast) { - // Music - if (layoutManager.mobile) { - html = '

    ' + parentNameHtml.join('
    ') + '

    '; + if (itemHelper.canMarkPlayed(item)) { + btnPlaystate.classList.remove('hide'); + btnPlaystate.setItem(item); } else { - html = '

    ' + parentNameHtml.join(' - ') + '

    '; + btnPlaystate.classList.add('hide'); + btnPlaystate.setItem(null); + } + } + + const btnUserRatings = page.querySelectorAll('.btnUserRating'); + + for (i = 0, length = btnUserRatings.length; i < length; i++) { + const btnUserRating = btnUserRatings[i]; + + if (itemHelper.canRate(item)) { + btnUserRating.classList.remove('hide'); + btnUserRating.setItem(item); + } else { + btnUserRating.classList.add('hide'); + btnUserRating.setItem(null); + } + } + } + + function getArtistLinksHtml(artists, serverId, context) { + const html = []; + + for (const artist of artists) { + const href = appRouter.getRouteUrl(artist, { + context: context, + itemType: 'MusicArtist', + serverId: serverId + }); + html.push('' + artist.Name + ''); + } + + return html.join(' / '); + } + + /** + * Renders the item's name block + * @param {Object} item - Item used to render the name. + * @param {HTMLDivElement} container - Container to render the information into. + * @param {Object} context - Application context. + */ + function renderName(item, container, context) { + let parentRoute; + const parentNameHtml = []; + let parentNameLast = false; + + if (item.AlbumArtists) { + parentNameHtml.push(getArtistLinksHtml(item.AlbumArtists, item.ServerId, context)); + parentNameLast = true; + } else if (item.ArtistItems && item.ArtistItems.length && item.Type === 'MusicVideo') { + parentNameHtml.push(getArtistLinksHtml(item.ArtistItems, item.ServerId, context)); + parentNameLast = true; + } else if (item.SeriesName && item.Type === 'Episode') { + parentRoute = appRouter.getRouteUrl({ + Id: item.SeriesId, + Name: item.SeriesName, + Type: 'Series', + IsFolder: true, + ServerId: item.ServerId + }, { + context: context + }); + parentNameHtml.push('' + item.SeriesName + ''); + } else if (item.IsSeries || item.EpisodeTitle) { + parentNameHtml.push(item.Name); + } + + if (item.SeriesName && item.Type === 'Season') { + parentRoute = appRouter.getRouteUrl({ + Id: item.SeriesId, + Name: item.SeriesName, + Type: 'Series', + IsFolder: true, + ServerId: item.ServerId + }, { + context: context + }); + parentNameHtml.push('' + item.SeriesName + ''); + } else if (item.ParentIndexNumber != null && item.Type === 'Episode') { + parentRoute = appRouter.getRouteUrl({ + Id: item.SeasonId, + Name: item.SeasonName, + Type: 'Season', + IsFolder: true, + ServerId: item.ServerId + }, { + context: context + }); + parentNameHtml.push('' + item.SeasonName + ''); + } else if (item.ParentIndexNumber != null && item.IsSeries) { + parentNameHtml.push(item.SeasonName || 'S' + item.ParentIndexNumber); + } else if (item.Album && item.AlbumId && (item.Type === 'MusicVideo' || item.Type === 'Audio')) { + parentRoute = appRouter.getRouteUrl({ + Id: item.AlbumId, + Name: item.Album, + Type: 'MusicAlbum', + IsFolder: true, + ServerId: item.ServerId + }, { + context: context + }); + parentNameHtml.push('' + item.Album + ''); + } else if (item.Album) { + parentNameHtml.push(item.Album); + } + + // FIXME: This whole section needs some refactoring, so it becames easier to scale across all form factors. See GH #1022 + let html = ''; + const tvShowHtml = parentNameHtml[0]; + const tvSeasonHtml = parentNameHtml[1]; + + if (parentNameHtml.length) { + if (parentNameLast) { + // Music + if (layoutManager.mobile) { + html = '

    ' + parentNameHtml.join('
    ') + '

    '; + } else { + html = '

    ' + parentNameHtml.join(' - ') + '

    '; + } + } else { + html = '

    ' + tvShowHtml + '

    '; + } + } + + const name = itemHelper.getDisplayName(item, { + includeParentInfo: false + }); + + if (html && !parentNameLast) { + if (tvSeasonHtml) { + html += '

    ' + tvSeasonHtml + ' - ' + name + '

    '; + } else { + html += '

    ' + name + '

    '; + } + } else if (item.OriginalTitle && item.OriginalTitle != item.Name) { + html = '

    ' + name + '

    ' + html; + } else { + html = '

    ' + name + '

    ' + html; + } + + if (item.OriginalTitle && item.OriginalTitle != item.Name) { + html += '

    ' + item.OriginalTitle + '

    '; + } + + container.innerHTML = html; + + if (html.length) { + container.classList.remove('hide'); + } else { + container.classList.add('hide'); + } + } + + function setTrailerButtonVisibility(page, item) { + if ((item.LocalTrailerCount || item.RemoteTrailers && item.RemoteTrailers.length) && playbackManager.getSupportedCommands().indexOf('PlayTrailers') !== -1) { + hideAll(page, 'btnPlayTrailer', true); + } else { + hideAll(page, 'btnPlayTrailer'); + } + } + + function renderBackdrop(item) { + if (dom.getWindowSize().innerWidth >= 1000) { + backdrop.setBackdrops([item]); + } else { + backdrop.clearBackdrop(); + } + } + + function renderDetailPageBackdrop(page, item, apiClient) { + let imgUrl; + let hasbackdrop = false; + const itemBackdropElement = page.querySelector('#itemBackdrop'); + + if (!layoutManager.mobile && !userSettings.detailsBanner()) { + return false; + } + + if (item.BackdropImageTags && item.BackdropImageTags.length) { + imgUrl = apiClient.getScaledImageUrl(item.Id, { + type: 'Backdrop', + maxWidth: dom.getScreenWidth(), + index: 0, + tag: item.BackdropImageTags[0] + }); + imageLoader.lazyImage(itemBackdropElement, imgUrl); + hasbackdrop = true; + } else if (item.ParentBackdropItemId && item.ParentBackdropImageTags && item.ParentBackdropImageTags.length) { + imgUrl = apiClient.getScaledImageUrl(item.ParentBackdropItemId, { + type: 'Backdrop', + maxWidth: dom.getScreenWidth(), + index: 0, + tag: item.ParentBackdropImageTags[0] + }); + imageLoader.lazyImage(itemBackdropElement, imgUrl); + hasbackdrop = true; + } else if (item.ImageTags && item.ImageTags.Primary) { + imgUrl = apiClient.getScaledImageUrl(item.Id, { + type: 'Primary', + maxWidth: dom.getScreenWidth(), + tag: item.ImageTags.Primary + }); + imageLoader.lazyImage(itemBackdropElement, imgUrl); + hasbackdrop = true; + } else { + itemBackdropElement.style.backgroundImage = ''; + } + + return hasbackdrop; + } + + function reloadFromItem(instance, page, params, item, user) { + const apiClient = connectionManager.getApiClient(item.ServerId); + + Emby.Page.setTitle(''); + + // Start rendering the artwork first + renderImage(page, item); + renderLogo(page, item, apiClient); + renderBackdrop(item); + renderDetailPageBackdrop(page, item, apiClient); + + // Render the main information for the item + page.querySelector('.detailPagePrimaryContainer').classList.add('detailRibbon'); + renderName(item, page.querySelector('.nameContainer'), params.context); + renderDetails(page, item, apiClient, params.context); + renderTrackSelections(page, instance, item); + + renderSeriesTimerEditor(page, item, apiClient, user); + renderTimerEditor(page, item, apiClient, user); + setInitialCollapsibleState(page, item, apiClient, params.context, user); + const canPlay = reloadPlayButtons(page, item); + + if ((item.LocalTrailerCount || item.RemoteTrailers && item.RemoteTrailers.length) && playbackManager.getSupportedCommands().indexOf('PlayTrailers') !== -1) { + hideAll(page, 'btnPlayTrailer', true); + } else { + hideAll(page, 'btnPlayTrailer'); + } + + setTrailerButtonVisibility(page, item); + + if (item.Type !== 'Program' || canPlay) { + hideAll(page, 'mainDetailButtons', true); + } else { + hideAll(page, 'mainDetailButtons'); + } + + showRecordingFields(instance, page, item, user); + const groupedVersions = (item.MediaSources || []).filter(function (g) { + return g.Type == 'Grouping'; + }); + + if (user.Policy.IsAdministrator && groupedVersions.length) { + page.querySelector('.btnSplitVersions').classList.remove('hide'); + } else { + page.querySelector('.btnSplitVersions').classList.add('hide'); + } + + if (itemContextMenu.getCommands(getContextMenuOptions(item, user)).length) { + hideAll(page, 'btnMoreCommands', true); + } else { + hideAll(page, 'btnMoreCommands'); + } + + const itemBirthday = page.querySelector('#itemBirthday'); + + if (item.Type == 'Person' && item.PremiereDate) { + try { + const birthday = datetime.parseISO8601Date(item.PremiereDate, true).toDateString(); + itemBirthday.classList.remove('hide'); + itemBirthday.innerHTML = globalize.translate('BirthDateValue', birthday); + } catch (err) { + itemBirthday.classList.add('hide'); } } else { - html = '

    ' + tvShowHtml + '

    '; - } - } - - const name = itemHelper.getDisplayName(item, { - includeParentInfo: false - }); - - if (html && !parentNameLast) { - if (tvSeasonHtml) { - html += '

    ' + tvSeasonHtml + ' - ' + name + '

    '; - } else { - html += '

    ' + name + '

    '; - } - } else if (item.OriginalTitle && item.OriginalTitle != item.Name) { - html = '

    ' + name + '

    ' + html; - } else { - html = '

    ' + name + '

    ' + html; - } - - if (item.OriginalTitle && item.OriginalTitle != item.Name) { - html += '

    ' + item.OriginalTitle + '

    '; - } - - container.innerHTML = html; - - if (html.length) { - container.classList.remove('hide'); - } else { - container.classList.add('hide'); - } -} - -function setTrailerButtonVisibility(page, item) { - if ((item.LocalTrailerCount || item.RemoteTrailers && item.RemoteTrailers.length) && playbackManager.getSupportedCommands().indexOf('PlayTrailers') !== -1) { - hideAll(page, 'btnPlayTrailer', true); - } else { - hideAll(page, 'btnPlayTrailer'); - } -} - -function renderBackdrop(item) { - if (dom.getWindowSize().innerWidth >= 1000) { - backdrop.setBackdrops([item]); - } else { - backdrop.clearBackdrop(); - } -} - -function renderDetailPageBackdrop(page, item, apiClient) { - let imgUrl; - let hasbackdrop = false; - const itemBackdropElement = page.querySelector('#itemBackdrop'); - - if (!layoutManager.mobile && !userSettings.detailsBanner()) { - return false; - } - - if (item.BackdropImageTags && item.BackdropImageTags.length) { - imgUrl = apiClient.getScaledImageUrl(item.Id, { - type: 'Backdrop', - maxWidth: dom.getScreenWidth(), - index: 0, - tag: item.BackdropImageTags[0] - }); - imageLoader.lazyImage(itemBackdropElement, imgUrl); - hasbackdrop = true; - } else if (item.ParentBackdropItemId && item.ParentBackdropImageTags && item.ParentBackdropImageTags.length) { - imgUrl = apiClient.getScaledImageUrl(item.ParentBackdropItemId, { - type: 'Backdrop', - maxWidth: dom.getScreenWidth(), - index: 0, - tag: item.ParentBackdropImageTags[0] - }); - imageLoader.lazyImage(itemBackdropElement, imgUrl); - hasbackdrop = true; - } else if (item.ImageTags && item.ImageTags.Primary) { - imgUrl = apiClient.getScaledImageUrl(item.Id, { - type: 'Primary', - maxWidth: dom.getScreenWidth(), - tag: item.ImageTags.Primary - }); - imageLoader.lazyImage(itemBackdropElement, imgUrl); - hasbackdrop = true; - } else { - itemBackdropElement.style.backgroundImage = ''; - } - - return hasbackdrop; -} - -function reloadFromItem(instance, page, params, item, user) { - const apiClient = connectionManager.getApiClient(item.ServerId); - - Emby.Page.setTitle(''); - - // Start rendering the artwork first - renderImage(page, item); - renderLogo(page, item, apiClient); - renderBackdrop(item); - renderDetailPageBackdrop(page, item, apiClient); - - // Render the main information for the item - page.querySelector('.detailPagePrimaryContainer').classList.add('detailRibbon'); - renderName(item, page.querySelector('.nameContainer'), params.context); - renderDetails(page, item, apiClient, params.context); - renderTrackSelections(page, instance, item); - - renderSeriesTimerEditor(page, item, apiClient, user); - renderTimerEditor(page, item, apiClient, user); - setInitialCollapsibleState(page, item, apiClient, params.context, user); - const canPlay = reloadPlayButtons(page, item); - - if ((item.LocalTrailerCount || item.RemoteTrailers && item.RemoteTrailers.length) && playbackManager.getSupportedCommands().indexOf('PlayTrailers') !== -1) { - hideAll(page, 'btnPlayTrailer', true); - } else { - hideAll(page, 'btnPlayTrailer'); - } - - setTrailerButtonVisibility(page, item); - - if (item.Type !== 'Program' || canPlay) { - hideAll(page, 'mainDetailButtons', true); - } else { - hideAll(page, 'mainDetailButtons'); - } - - showRecordingFields(instance, page, item, user); - const groupedVersions = (item.MediaSources || []).filter(function (g) { - return g.Type == 'Grouping'; - }); - - if (user.Policy.IsAdministrator && groupedVersions.length) { - page.querySelector('.btnSplitVersions').classList.remove('hide'); - } else { - page.querySelector('.btnSplitVersions').classList.add('hide'); - } - - if (itemContextMenu.getCommands(getContextMenuOptions(item, user)).length) { - hideAll(page, 'btnMoreCommands', true); - } else { - hideAll(page, 'btnMoreCommands'); - } - - const itemBirthday = page.querySelector('#itemBirthday'); - - if (item.Type == 'Person' && item.PremiereDate) { - try { - const birthday = datetime.parseISO8601Date(item.PremiereDate, true).toDateString(); - itemBirthday.classList.remove('hide'); - itemBirthday.innerHTML = globalize.translate('BirthDateValue', birthday); - } catch (err) { itemBirthday.classList.add('hide'); } - } else { - itemBirthday.classList.add('hide'); - } - const itemDeathDate = page.querySelector('#itemDeathDate'); + const itemDeathDate = page.querySelector('#itemDeathDate'); - if (item.Type == 'Person' && item.EndDate) { - try { - const deathday = datetime.parseISO8601Date(item.EndDate, true).toDateString(); - itemDeathDate.classList.remove('hide'); - itemDeathDate.innerHTML = globalize.translate('DeathDateValue', deathday); - } catch (err) { + if (item.Type == 'Person' && item.EndDate) { + try { + const deathday = datetime.parseISO8601Date(item.EndDate, true).toDateString(); + itemDeathDate.classList.remove('hide'); + itemDeathDate.innerHTML = globalize.translate('DeathDateValue', deathday); + } catch (err) { + itemDeathDate.classList.add('hide'); + } + } else { itemDeathDate.classList.add('hide'); } - } else { - itemDeathDate.classList.add('hide'); - } - const itemBirthLocation = page.querySelector('#itemBirthLocation'); + const itemBirthLocation = page.querySelector('#itemBirthLocation'); - if (item.Type == 'Person' && item.ProductionLocations && item.ProductionLocations.length) { - const gmap = '' + item.ProductionLocations[0] + ''; - itemBirthLocation.classList.remove('hide'); - itemBirthLocation.innerHTML = globalize.translate('BirthPlaceValue', gmap); - } else { - itemBirthLocation.classList.add('hide'); - } - - setPeopleHeader(page, item); - loading.hide(); - - if (item.Type === 'Book' && item.CanDownload && appHost.supports('filedownload')) { - hideAll(page, 'btnDownload', true); - } - - import('autoFocuser').then(({ default: autoFocuser }) => { - autoFocuser.autoFocus(page); - }); -} - -function logoImageUrl(item, apiClient, options) { - options = options || {}; - options.type = 'Logo'; - - if (item.ImageTags && item.ImageTags.Logo) { - options.tag = item.ImageTags.Logo; - return apiClient.getScaledImageUrl(item.Id, options); - } - - if (item.ParentLogoImageTag) { - options.tag = item.ParentLogoImageTag; - return apiClient.getScaledImageUrl(item.ParentLogoItemId, options); - } - - return null; -} - -function renderLogo(page, item, apiClient) { - const detailLogo = page.querySelector('.detailLogo'); - - const url = logoImageUrl(item, apiClient, {}); - - if (!layoutManager.mobile && !userSettings.enableBackdrops()) { - detailLogo.classList.add('hide'); - } else if (url) { - detailLogo.classList.remove('hide'); - imageLoader.setLazyImage(detailLogo, url); - } else { - detailLogo.classList.add('hide'); - } -} - -function showRecordingFields(instance, page, item, user) { - if (!instance.currentRecordingFields) { - const recordingFieldsElement = page.querySelector('.recordingFields'); - - if (item.Type == 'Program' && user.Policy.EnableLiveTvManagement) { - import('recordingFields').then(({ default: recordingFields }) => { - instance.currentRecordingFields = new recordingFields({ - parent: recordingFieldsElement, - programId: item.Id, - serverId: item.ServerId - }); - recordingFieldsElement.classList.remove('hide'); - }); + if (item.Type == 'Person' && item.ProductionLocations && item.ProductionLocations.length) { + const gmap = '' + item.ProductionLocations[0] + ''; + itemBirthLocation.classList.remove('hide'); + itemBirthLocation.innerHTML = globalize.translate('BirthPlaceValue', gmap); } else { - recordingFieldsElement.classList.add('hide'); - recordingFieldsElement.innerHTML = ''; - } - } -} - -function renderLinks(page, item) { - const externalLinksElem = page.querySelector('.itemExternalLinks'); - - const links = []; - - if (!layoutManager.tv && item.HomePageUrl) { - links.push(`${globalize.translate('ButtonWebsite')}`); - } - - if (item.ExternalUrls) { - for (const url of item.ExternalUrls) { - links.push(`${url.Name}`); - } - } - - const html = []; - if (links.length) { - html.push(links.join(', ')); - } - - externalLinksElem.innerHTML = html.join(', '); - - if (html.length) { - externalLinksElem.classList.remove('hide'); - } else { - externalLinksElem.classList.add('hide'); - } -} - -function renderDetailImage(elem, item, imageLoader) { - const itemArray = []; - itemArray.push(item); - const cardHtml = cardBuilder.getCardsHtml(itemArray, { - shape: 'auto', - showTitle: false, - centerText: true, - overlayText: false, - transition: false, - disableIndicators: true, - disableHoverMenu: true, - overlayPlayButton: true, - width: dom.getWindowSize().innerWidth * 0.25 - }); - - elem.innerHTML = cardHtml; - imageLoader.lazyChildren(elem); -} - -function renderImage(page, item) { - renderDetailImage( - page.querySelector('.detailImageContainer'), - item, - imageLoader - ); -} - -function refreshDetailImageUserData(elem, item) { - elem.querySelector('.detailImageProgressContainer').innerHTML = indicators.getProgressBarHtml(item); -} - -function refreshImage(page, item) { - refreshDetailImageUserData(page.querySelector('.detailImageContainer'), item); -} - -function setPeopleHeader(page, item) { - if (item.MediaType == 'Audio' || item.Type == 'MusicAlbum' || item.MediaType == 'Book' || item.MediaType == 'Photo') { - page.querySelector('#peopleHeader').innerHTML = globalize.translate('People'); - } else { - page.querySelector('#peopleHeader').innerHTML = globalize.translate('HeaderCastAndCrew'); - } -} - -function renderNextUp(page, item, user) { - const section = page.querySelector('.nextUpSection'); - - if (item.Type != 'Series') { - return void section.classList.add('hide'); - } - - connectionManager.getApiClient(item.ServerId).getNextUpEpisodes({ - SeriesId: item.Id, - UserId: user.Id - }).then(function (result) { - if (result.Items.length) { - section.classList.remove('hide'); - } else { - section.classList.add('hide'); + itemBirthLocation.classList.add('hide'); } - const html = cardBuilder.getCardsHtml({ - items: result.Items, - shape: 'overflowBackdrop', - showTitle: true, - displayAsSpecial: item.Type == 'Season' && item.IndexNumber, - overlayText: false, - centerText: true, - overlayPlayButton: true + setPeopleHeader(page, item); + loading.hide(); + + if (item.Type === 'Book' && item.CanDownload && appHost.supports('filedownload')) { + hideAll(page, 'btnDownload', true); + } + + import('autoFocuser').then(({default: autoFocuser}) => { + autoFocuser.autoFocus(page); }); - const itemsContainer = section.querySelector('.nextUpItems'); - itemsContainer.innerHTML = html; - imageLoader.lazyChildren(itemsContainer); - }); -} + } -function setInitialCollapsibleState(page, item, apiClient, context, user) { - page.querySelector('.collectionItems').innerHTML = ''; + function logoImageUrl(item, apiClient, options) { + options = options || {}; + options.type = 'Logo'; - if (item.Type == 'Playlist') { - page.querySelector('#childrenCollapsible').classList.remove('hide'); - renderPlaylistItems(page, item); - } else if (item.Type == 'Studio' || item.Type == 'Person' || item.Type == 'Genre' || item.Type == 'MusicGenre' || item.Type == 'MusicArtist') { - page.querySelector('#childrenCollapsible').classList.remove('hide'); - renderItemsByName(page, item); - } else if (item.IsFolder) { - if (item.Type == 'BoxSet') { + if (item.ImageTags && item.ImageTags.Logo) { + options.tag = item.ImageTags.Logo; + return apiClient.getScaledImageUrl(item.Id, options); + } + + if (item.ParentLogoImageTag) { + options.tag = item.ParentLogoImageTag; + return apiClient.getScaledImageUrl(item.ParentLogoItemId, options); + } + + return null; + } + + function renderLogo(page, item, apiClient) { + const detailLogo = page.querySelector('.detailLogo'); + + const url = logoImageUrl(item, apiClient, {}); + + if (!layoutManager.mobile && !userSettings.enableBackdrops()) { + detailLogo.classList.add('hide'); + } else if (url) { + detailLogo.classList.remove('hide'); + imageLoader.setLazyImage(detailLogo, url); + } else { + detailLogo.classList.add('hide'); + } + } + + function showRecordingFields(instance, page, item, user) { + if (!instance.currentRecordingFields) { + const recordingFieldsElement = page.querySelector('.recordingFields'); + + if (item.Type == 'Program' && user.Policy.EnableLiveTvManagement) { + import('recordingFields').then(({default: recordingFields}) => { + instance.currentRecordingFields = new recordingFields({ + parent: recordingFieldsElement, + programId: item.Id, + serverId: item.ServerId + }); + recordingFieldsElement.classList.remove('hide'); + }); + } else { + recordingFieldsElement.classList.add('hide'); + recordingFieldsElement.innerHTML = ''; + } + } + } + + function renderLinks(page, item) { + const externalLinksElem = page.querySelector('.itemExternalLinks'); + + const links = []; + + if (!layoutManager.tv && item.HomePageUrl) { + links.push(`${globalize.translate('ButtonWebsite')}`); + } + + if (item.ExternalUrls) { + for (const url of item.ExternalUrls) { + links.push(`${url.Name}`); + } + } + + const html = []; + if (links.length) { + html.push(links.join(', ')); + } + + externalLinksElem.innerHTML = html.join(', '); + + if (html.length) { + externalLinksElem.classList.remove('hide'); + } else { + externalLinksElem.classList.add('hide'); + } + } + + function renderDetailImage(elem, item, imageLoader) { + const itemArray = []; + itemArray.push(item); + const cardHtml = cardBuilder.getCardsHtml(itemArray, { + shape: 'auto', + showTitle: false, + centerText: true, + overlayText: false, + transition: false, + disableIndicators: true, + disableHoverMenu: true, + overlayPlayButton: true, + width: dom.getWindowSize().innerWidth * 0.25 + }); + + elem.innerHTML = cardHtml; + imageLoader.lazyChildren(elem); + } + + function renderImage(page, item) { + renderDetailImage( + page.querySelector('.detailImageContainer'), + item, + imageLoader + ); + } + + function refreshDetailImageUserData(elem, item) { + elem.querySelector('.detailImageProgressContainer').innerHTML = indicators.getProgressBarHtml(item); + } + + function refreshImage(page, item) { + refreshDetailImageUserData(page.querySelector('.detailImageContainer'), item); + } + + function setPeopleHeader(page, item) { + if (item.MediaType == 'Audio' || item.Type == 'MusicAlbum' || item.MediaType == 'Book' || item.MediaType == 'Photo') { + page.querySelector('#peopleHeader').innerHTML = globalize.translate('People'); + } else { + page.querySelector('#peopleHeader').innerHTML = globalize.translate('HeaderCastAndCrew'); + } + } + + function renderNextUp(page, item, user) { + const section = page.querySelector('.nextUpSection'); + + if (item.Type != 'Series') { + return void section.classList.add('hide'); + } + + connectionManager.getApiClient(item.ServerId).getNextUpEpisodes({ + SeriesId: item.Id, + UserId: user.Id + }).then(function (result) { + if (result.Items.length) { + section.classList.remove('hide'); + } else { + section.classList.add('hide'); + } + + const html = cardBuilder.getCardsHtml({ + items: result.Items, + shape: 'overflowBackdrop', + showTitle: true, + displayAsSpecial: item.Type == 'Season' && item.IndexNumber, + overlayText: false, + centerText: true, + overlayPlayButton: true + }); + const itemsContainer = section.querySelector('.nextUpItems'); + itemsContainer.innerHTML = html; + imageLoader.lazyChildren(itemsContainer); + }); + } + + function setInitialCollapsibleState(page, item, apiClient, context, user) { + page.querySelector('.collectionItems').innerHTML = ''; + + if (item.Type == 'Playlist') { + page.querySelector('#childrenCollapsible').classList.remove('hide'); + renderPlaylistItems(page, item); + } else if (item.Type == 'Studio' || item.Type == 'Person' || item.Type == 'Genre' || item.Type == 'MusicGenre' || item.Type == 'MusicArtist') { + page.querySelector('#childrenCollapsible').classList.remove('hide'); + renderItemsByName(page, item); + } else if (item.IsFolder) { + if (item.Type == 'BoxSet') { + page.querySelector('#childrenCollapsible').classList.add('hide'); + } + + renderChildren(page, item); + } else { page.querySelector('#childrenCollapsible').classList.add('hide'); } - renderChildren(page, item); - } else { - page.querySelector('#childrenCollapsible').classList.add('hide'); + if (item.Type == 'Series') { + renderSeriesSchedule(page, item); + renderNextUp(page, item, user); + } else { + page.querySelector('.nextUpSection').classList.add('hide'); + } + + renderScenes(page, item); + + if (item.SpecialFeatureCount && item.SpecialFeatureCount != 0 && item.Type != 'Series') { + page.querySelector('#specialsCollapsible').classList.remove('hide'); + renderSpecials(page, item, user); + } else { + page.querySelector('#specialsCollapsible').classList.add('hide'); + } + + renderCast(page, item); + + if (item.PartCount && item.PartCount > 1) { + page.querySelector('#additionalPartsCollapsible').classList.remove('hide'); + renderAdditionalParts(page, item, user); + } else { + page.querySelector('#additionalPartsCollapsible').classList.add('hide'); + } + + if (item.Type == 'MusicAlbum') { + renderMusicVideos(page, item, user); + } else { + page.querySelector('#musicVideosCollapsible').classList.add('hide'); + } } - if (item.Type == 'Series') { - renderSeriesSchedule(page, item); - renderNextUp(page, item, user); - } else { - page.querySelector('.nextUpSection').classList.add('hide'); + function toggleLineClamp(clampTarget, e) { + const expandButton = e.target; + const clampClassName = 'detail-clamp-text'; + + if (clampTarget.classList.contains(clampClassName)) { + clampTarget.classList.remove(clampClassName); + expandButton.innerHTML = globalize.translate('ShowLess'); + } else { + clampTarget.classList.add(clampClassName); + expandButton.innerHTML = globalize.translate('ShowMore'); + } } - renderScenes(page, item); + function renderOverview(page, item) { + for (const overviewElemnt of page.querySelectorAll('.overview')) { + const overview = item.Overview || ''; - if (item.SpecialFeatureCount && item.SpecialFeatureCount != 0 && item.Type != 'Series') { - page.querySelector('#specialsCollapsible').classList.remove('hide'); - renderSpecials(page, item, user); - } else { - page.querySelector('#specialsCollapsible').classList.add('hide'); - } + if (overview) { + overviewElemnt.innerHTML = overview; + overviewElemnt.classList.remove('hide'); + overviewElemnt.classList.add('detail-clamp-text'); - renderCast(page, item); + // Grab the sibling element to control the expand state + const expandButton = overviewElemnt.parentElement.querySelector('.overview-expand'); - if (item.PartCount && item.PartCount > 1) { - page.querySelector('#additionalPartsCollapsible').classList.remove('hide'); - renderAdditionalParts(page, item, user); - } else { - page.querySelector('#additionalPartsCollapsible').classList.add('hide'); - } + // Detect if we have overflow of text. Based on this StackOverflow answer + // https://stackoverflow.com/a/35157976 + if (Math.abs(overviewElemnt.scrollHeight - overviewElemnt.offsetHeight) > 2) { + expandButton.classList.remove('hide'); + } else { + expandButton.classList.add('hide'); + } - if (item.Type == 'MusicAlbum') { - renderMusicVideos(page, item, user); - } else { - page.querySelector('#musicVideosCollapsible').classList.add('hide'); - } -} + expandButton.addEventListener('click', toggleLineClamp.bind(null, overviewElemnt)); -function toggleLineClamp(clampTarget, e) { - const expandButton = e.target; - const clampClassName = 'detail-clamp-text'; - - if (clampTarget.classList.contains(clampClassName)) { - clampTarget.classList.remove(clampClassName); - expandButton.innerHTML = globalize.translate('ShowLess'); - } else { - clampTarget.classList.add(clampClassName); - expandButton.innerHTML = globalize.translate('ShowMore'); - } -} - -function renderOverview(page, item) { - for (const overviewElemnt of page.querySelectorAll('.overview')) { - const overview = item.Overview || ''; - - if (overview) { - overviewElemnt.innerHTML = overview; - overviewElemnt.classList.remove('hide'); - overviewElemnt.classList.add('detail-clamp-text'); - - // Grab the sibling element to control the expand state - const expandButton = overviewElemnt.parentElement.querySelector('.overview-expand'); - - // Detect if we have overflow of text. Based on this StackOverflow answer - // https://stackoverflow.com/a/35157976 - if (Math.abs(overviewElemnt.scrollHeight - overviewElemnt.offsetHeight) > 2) { - expandButton.classList.remove('hide'); + for (const anchor of overviewElemnt.querySelectorAll('a')) { + anchor.setAttribute('target', '_blank'); + } } else { - expandButton.classList.add('hide'); + overviewElemnt.innerHTML = ''; + overviewElemnt.classList.add('hide'); } - - expandButton.addEventListener('click', toggleLineClamp.bind(null, overviewElemnt)); - - for (const anchor of overviewElemnt.querySelectorAll('a')) { - anchor.setAttribute('target', '_blank'); - } - } else { - overviewElemnt.innerHTML = ''; - overviewElemnt.classList.add('hide'); } } -} -function renderGenres(page, item, context = inferContext(item)) { - const genres = item.GenreItems || []; - const type = context === 'music' ? 'MusicGenre' : 'Genre'; + function renderGenres(page, item, context = inferContext(item)) { + const genres = item.GenreItems || []; + const type = context === 'music' ? 'MusicGenre' : 'Genre'; - const html = genres.map(function (p) { - return '' + p.Name + ''; - }).join(', '); + const html = genres.map(function (p) { + return '' + p.Name + ''; + }).join(', '); - const genresLabel = page.querySelector('.genresLabel'); - genresLabel.innerHTML = globalize.translate(genres.length > 1 ? 'Genres' : 'Genre'); - const genresValue = page.querySelector('.genres'); - genresValue.innerHTML = html; + const genresLabel = page.querySelector('.genresLabel'); + genresLabel.innerHTML = globalize.translate(genres.length > 1 ? 'Genres' : 'Genre'); + const genresValue = page.querySelector('.genres'); + genresValue.innerHTML = html; - const genresGroup = page.querySelector('.genresGroup'); - if (genres.length) { - genresGroup.classList.remove('hide'); - } else { - genresGroup.classList.add('hide'); + const genresGroup = page.querySelector('.genresGroup'); + if (genres.length) { + genresGroup.classList.remove('hide'); + } else { + genresGroup.classList.add('hide'); + } } -} -function renderWriter(page, item, context) { - const writers = (item.People || []).filter(function (person) { - return person.Type === 'Writer'; - }); - - const html = writers.map(function (person) { - return '' + person.Name + ''; - }).join(', '); - - const writersLabel = page.querySelector('.writersLabel'); - writersLabel.innerHTML = globalize.translate(writers.length > 1 ? 'Writers' : 'Writer'); - const writersValue = page.querySelector('.writers'); - writersValue.innerHTML = html; - - const writersGroup = page.querySelector('.writersGroup'); - if (writers.length) { - writersGroup.classList.remove('hide'); - } else { - writersGroup.classList.add('hide'); - } -} - -function renderDirector(page, item, context) { - const directors = (item.People || []).filter(function (person) { - return person.Type === 'Director'; - }); - - const html = directors.map(function (person) { - return '' + person.Name + ''; - }).join(', '); - - const directorsLabel = page.querySelector('.directorsLabel'); - directorsLabel.innerHTML = globalize.translate(directors.length > 1 ? 'Directors' : 'Director'); - const directorsValue = page.querySelector('.directors'); - directorsValue.innerHTML = html; - - const directorsGroup = page.querySelector('.directorsGroup'); - if (directors.length) { - directorsGroup.classList.remove('hide'); - } else { - directorsGroup.classList.add('hide'); - } -} - -function renderMiscInfo(page, item) { - const primaryItemMiscInfo = page.querySelectorAll('.itemMiscInfo-primary'); - - for (const miscInfo of primaryItemMiscInfo) { - mediaInfo.fillPrimaryMediaInfo(miscInfo, item, { - interactive: true, - episodeTitle: false, - subtitles: false + function renderWriter(page, item, context) { + const writers = (item.People || []).filter(function (person) { + return person.Type === 'Writer'; }); - if (miscInfo.innerHTML && item.Type !== 'SeriesTimer') { - miscInfo.classList.remove('hide'); + const html = writers.map(function (person) { + return '' + person.Name + ''; + }).join(', '); + + const writersLabel = page.querySelector('.writersLabel'); + writersLabel.innerHTML = globalize.translate(writers.length > 1 ? 'Writers' : 'Writer'); + const writersValue = page.querySelector('.writers'); + writersValue.innerHTML = html; + + const writersGroup = page.querySelector('.writersGroup'); + if (writers.length) { + writersGroup.classList.remove('hide'); } else { - miscInfo.classList.add('hide'); + writersGroup.classList.add('hide'); } } - const secondaryItemMiscInfo = page.querySelectorAll('.itemMiscInfo-secondary'); - - for (const miscInfo of secondaryItemMiscInfo) { - mediaInfo.fillSecondaryMediaInfo(miscInfo, item, { - interactive: true + function renderDirector(page, item, context) { + const directors = (item.People || []).filter(function (person) { + return person.Type === 'Director'; }); - if (miscInfo.innerHTML && item.Type !== 'SeriesTimer') { - miscInfo.classList.remove('hide'); + const html = directors.map(function (person) { + return '' + person.Name + ''; + }).join(', '); + + const directorsLabel = page.querySelector('.directorsLabel'); + directorsLabel.innerHTML = globalize.translate(directors.length > 1 ? 'Directors' : 'Director'); + const directorsValue = page.querySelector('.directors'); + directorsValue.innerHTML = html; + + const directorsGroup = page.querySelector('.directorsGroup'); + if (directors.length) { + directorsGroup.classList.remove('hide'); } else { - miscInfo.classList.add('hide'); + directorsGroup.classList.add('hide'); } } -} -function renderTagline(page, item) { - const taglineElement = page.querySelector('.tagline'); + function renderMiscInfo(page, item) { + const primaryItemMiscInfo = page.querySelectorAll('.itemMiscInfo-primary'); - if (item.Taglines && item.Taglines.length) { - taglineElement.classList.remove('hide'); - taglineElement.innerHTML = item.Taglines[0]; - } else { - taglineElement.classList.add('hide'); - } -} - -function renderDetails(page, item, apiClient, context, isStatic) { - renderSimilarItems(page, item, context); - renderMoreFromSeason(page, item, apiClient); - renderMoreFromArtist(page, item, apiClient); - renderDirector(page, item, context); - renderWriter(page, item, context); - renderGenres(page, item, context); - renderChannelGuide(page, apiClient, item); - renderTagline(page, item); - renderOverview(page, item); - renderMiscInfo(page, item); - reloadUserDataButtons(page, item); - renderLinks(page, item); - renderTags(page, item); - renderSeriesAirTime(page, item, isStatic); -} - -function enableScrollX() { - return browser.mobile && screen.availWidth <= 1000; -} - -function getPortraitShape(scrollX) { - if (scrollX == null) { - scrollX = enableScrollX(); - } - - return scrollX ? 'overflowPortrait' : 'portrait'; -} - -function getSquareShape(scrollX) { - if (scrollX == null) { - scrollX = enableScrollX(); - } - - return scrollX ? 'overflowSquare' : 'square'; -} - -function renderMoreFromSeason(view, item, apiClient) { - const section = view.querySelector('.moreFromSeasonSection'); - - if (section) { - if (item.Type !== 'Episode' || !item.SeasonId || !item.SeriesId) { - return void section.classList.add('hide'); - } - - const userId = apiClient.getCurrentUserId(); - apiClient.getEpisodes(item.SeriesId, { - SeasonId: item.SeasonId, - UserId: userId, - Fields: 'ItemCounts,PrimaryImageAspectRatio,BasicSyncInfo,CanDelete,MediaSourceCount' - }).then(function (result) { - if (result.Items.length < 2) { - return void section.classList.add('hide'); - } - - section.classList.remove('hide'); - section.querySelector('h2').innerHTML = globalize.translate('MoreFromValue', item.SeasonName); - const itemsContainer = section.querySelector('.itemsContainer'); - cardBuilder.buildCards(result.Items, { - parentContainer: section, - itemsContainer: itemsContainer, - shape: 'autooverflow', - sectionTitleTagName: 'h2', - scalable: true, - showTitle: true, - overlayText: false, - centerText: true, - includeParentInfoInTitle: false, - allowBottomPadding: false + for (const miscInfo of primaryItemMiscInfo) { + mediaInfo.fillPrimaryMediaInfo(miscInfo, item, { + interactive: true, + episodeTitle: false, + subtitles: false }); - const card = itemsContainer.querySelector('.card[data-id="' + item.Id + '"]'); - if (card) { - setTimeout(function () { - section.querySelector('.emby-scroller').toStart(card.previousSibling || card, true); - }, 100); + if (miscInfo.innerHTML && item.Type !== 'SeriesTimer') { + miscInfo.classList.remove('hide'); + } else { + miscInfo.classList.add('hide'); } - }); + } + + const secondaryItemMiscInfo = page.querySelectorAll('.itemMiscInfo-secondary'); + + for (const miscInfo of secondaryItemMiscInfo) { + mediaInfo.fillSecondaryMediaInfo(miscInfo, item, { + interactive: true + }); + + if (miscInfo.innerHTML && item.Type !== 'SeriesTimer') { + miscInfo.classList.remove('hide'); + } else { + miscInfo.classList.add('hide'); + } + } } -} -function renderMoreFromArtist(view, item, apiClient) { - const section = view.querySelector('.moreFromArtistSection'); + function renderTagline(page, item) { + const taglineElement = page.querySelector('.tagline'); - if (section) { - if (item.Type === 'MusicArtist') { - if (!apiClient.isMinServerVersion('3.4.1.19')) { - return void section.classList.add('hide'); - } - } else if (item.Type !== 'MusicAlbum' || !item.AlbumArtists || !item.AlbumArtists.length) { - return void section.classList.add('hide'); - } - - const query = { - IncludeItemTypes: 'MusicAlbum', - Recursive: true, - ExcludeItemIds: item.Id, - SortBy: 'ProductionYear,SortName', - SortOrder: 'Descending' - }; - - if (item.Type === 'MusicArtist') { - query.ContributingArtistIds = item.Id; - } else if (apiClient.isMinServerVersion('3.4.1.18')) { - query.AlbumArtistIds = item.AlbumArtists[0].Id; + if (item.Taglines && item.Taglines.length) { + taglineElement.classList.remove('hide'); + taglineElement.innerHTML = item.Taglines[0]; } else { - query.ArtistIds = item.AlbumArtists[0].Id; + taglineElement.classList.add('hide'); + } + } + + function renderDetails(page, item, apiClient, context, isStatic) { + renderSimilarItems(page, item, context); + renderMoreFromSeason(page, item, apiClient); + renderMoreFromArtist(page, item, apiClient); + renderDirector(page, item, context); + renderWriter(page, item, context); + renderGenres(page, item, context); + renderChannelGuide(page, apiClient, item); + renderTagline(page, item); + renderOverview(page, item); + renderMiscInfo(page, item); + reloadUserDataButtons(page, item); + renderLinks(page, item); + renderTags(page, item); + renderSeriesAirTime(page, item, isStatic); + } + + function enableScrollX() { + return browser.mobile && screen.availWidth <= 1000; + } + + function getPortraitShape(scrollX) { + if (scrollX == null) { + scrollX = enableScrollX(); } - apiClient.getItems(apiClient.getCurrentUserId(), query).then(function (result) { - if (!result.Items.length) { + return scrollX ? 'overflowPortrait' : 'portrait'; + } + + function getSquareShape(scrollX) { + if (scrollX == null) { + scrollX = enableScrollX(); + } + + return scrollX ? 'overflowSquare' : 'square'; + } + + function renderMoreFromSeason(view, item, apiClient) { + const section = view.querySelector('.moreFromSeasonSection'); + + if (section) { + if (item.Type !== 'Episode' || !item.SeasonId || !item.SeriesId) { return void section.classList.add('hide'); } - section.classList.remove('hide'); + const userId = apiClient.getCurrentUserId(); + apiClient.getEpisodes(item.SeriesId, { + SeasonId: item.SeasonId, + UserId: userId, + Fields: 'ItemCounts,PrimaryImageAspectRatio,BasicSyncInfo,CanDelete,MediaSourceCount' + }).then(function (result) { + if (result.Items.length < 2) { + return void section.classList.add('hide'); + } + + section.classList.remove('hide'); + section.querySelector('h2').innerHTML = globalize.translate('MoreFromValue', item.SeasonName); + const itemsContainer = section.querySelector('.itemsContainer'); + cardBuilder.buildCards(result.Items, { + parentContainer: section, + itemsContainer: itemsContainer, + shape: 'autooverflow', + sectionTitleTagName: 'h2', + scalable: true, + showTitle: true, + overlayText: false, + centerText: true, + includeParentInfoInTitle: false, + allowBottomPadding: false + }); + const card = itemsContainer.querySelector('.card[data-id="' + item.Id + '"]'); + + if (card) { + setTimeout(function () { + section.querySelector('.emby-scroller').toStart(card.previousSibling || card, true); + }, 100); + } + }); + } + } + + function renderMoreFromArtist(view, item, apiClient) { + const section = view.querySelector('.moreFromArtistSection'); + + if (section) { + if (item.Type === 'MusicArtist') { + if (!apiClient.isMinServerVersion('3.4.1.19')) { + return void section.classList.add('hide'); + } + } else if (item.Type !== 'MusicAlbum' || !item.AlbumArtists || !item.AlbumArtists.length) { + return void section.classList.add('hide'); + } + + const query = { + IncludeItemTypes: 'MusicAlbum', + Recursive: true, + ExcludeItemIds: item.Id, + SortBy: 'ProductionYear,SortName', + SortOrder: 'Descending' + }; if (item.Type === 'MusicArtist') { - section.querySelector('h2').innerHTML = globalize.translate('HeaderAppearsOn'); + query.ContributingArtistIds = item.Id; + } else if (apiClient.isMinServerVersion('3.4.1.18')) { + query.AlbumArtistIds = item.AlbumArtists[0].Id; } else { - section.querySelector('h2').innerHTML = globalize.translate('MoreFromValue', item.AlbumArtists[0].Name); + query.ArtistIds = item.AlbumArtists[0].Id; } - cardBuilder.buildCards(result.Items, { - parentContainer: section, - itemsContainer: section.querySelector('.itemsContainer'), - shape: 'autooverflow', - sectionTitleTagName: 'h2', - scalable: true, - coverImage: item.Type === 'MusicArtist' || item.Type === 'MusicAlbum', - showTitle: true, - showParentTitle: false, - centerText: true, - overlayText: false, - overlayPlayButton: true, - showYear: true + apiClient.getItems(apiClient.getCurrentUserId(), query).then(function (result) { + if (!result.Items.length) { + return void section.classList.add('hide'); + } + + section.classList.remove('hide'); + + if (item.Type === 'MusicArtist') { + section.querySelector('h2').innerHTML = globalize.translate('HeaderAppearsOn'); + } else { + section.querySelector('h2').innerHTML = globalize.translate('MoreFromValue', item.AlbumArtists[0].Name); + } + + cardBuilder.buildCards(result.Items, { + parentContainer: section, + itemsContainer: section.querySelector('.itemsContainer'), + shape: 'autooverflow', + sectionTitleTagName: 'h2', + scalable: true, + coverImage: item.Type === 'MusicArtist' || item.Type === 'MusicAlbum', + showTitle: true, + showParentTitle: false, + centerText: true, + overlayText: false, + overlayPlayButton: true, + showYear: true + }); }); - }); + } } -} -function renderSimilarItems(page, item, context) { - const similarCollapsible = page.querySelector('#similarCollapsible'); + function renderSimilarItems(page, item, context) { + const similarCollapsible = page.querySelector('#similarCollapsible'); - if (similarCollapsible) { - if (item.Type != 'Movie' && item.Type != 'Trailer' && item.Type != 'Series' && item.Type != 'Program' && item.Type != 'Recording' && item.Type != 'MusicAlbum' && item.Type != 'MusicArtist' && item.Type != 'Playlist') { - return void similarCollapsible.classList.add('hide'); - } - - similarCollapsible.classList.remove('hide'); - const apiClient = connectionManager.getApiClient(item.ServerId); - const options = { - userId: apiClient.getCurrentUserId(), - limit: 12, - fields: 'PrimaryImageAspectRatio,UserData,CanDelete' - }; - - if (item.Type == 'MusicAlbum' && item.AlbumArtists && item.AlbumArtists.length) { - options.ExcludeArtistIds = item.AlbumArtists[0].Id; - } - - apiClient.getSimilarItems(item.Id, options).then(function (result) { - if (!result.Items.length) { + if (similarCollapsible) { + if (item.Type != 'Movie' && item.Type != 'Trailer' && item.Type != 'Series' && item.Type != 'Program' && item.Type != 'Recording' && item.Type != 'MusicAlbum' && item.Type != 'MusicArtist' && item.Type != 'Playlist') { return void similarCollapsible.classList.add('hide'); } similarCollapsible.classList.remove('hide'); - let html = ''; - html += cardBuilder.getCardsHtml({ - items: result.Items, - shape: 'autooverflow', - showParentTitle: item.Type == 'MusicAlbum', - centerText: true, - showTitle: true, - context: context, - lazy: true, - showDetailsMenu: true, - coverImage: item.Type == 'MusicAlbum' || item.Type == 'MusicArtist', - overlayPlayButton: true, - overlayText: false, - showYear: item.Type === 'Movie' || item.Type === 'Trailer' || item.Type === 'Series' - }); - const similarContent = similarCollapsible.querySelector('.similarContent'); - similarContent.innerHTML = html; - imageLoader.lazyChildren(similarContent); - }); - } -} + const apiClient = connectionManager.getApiClient(item.ServerId); + const options = { + userId: apiClient.getCurrentUserId(), + limit: 12, + fields: 'PrimaryImageAspectRatio,UserData,CanDelete' + }; -function renderSeriesAirTime(page, item, isStatic) { - const seriesAirTime = page.querySelector('#seriesAirTime'); - if (item.Type != 'Series') { - seriesAirTime.classList.add('hide'); - return; - } - let html = ''; - if (item.AirDays && item.AirDays.length) { - if (item.AirDays.length == 7) { - html += 'daily'; - } else { - html += item.AirDays.map(function (a) { - return a + 's'; - }).join(','); - } - } - if (item.AirTime) { - html += ' at ' + item.AirTime; - } - if (item.Studios.length) { - if (isStatic) { - html += ' on ' + item.Studios[0].Name; - } else { - const context = inferContext(item); - const href = appRouter.getRouteUrl(item.Studios[0], { - context: context, - itemType: 'Studio', - serverId: item.ServerId - }); - html += ' on ' + item.Studios[0].Name + ''; - } - } - if (html) { - html = (item.Status == 'Ended' ? 'Aired ' : 'Airs ') + html; - seriesAirTime.innerHTML = html; - seriesAirTime.classList.remove('hide'); - } else { - seriesAirTime.classList.add('hide'); - } -} - -function renderTags(page, item) { - const itemTags = page.querySelector('.itemTags'); - const tagElements = []; - let tags = item.Tags || []; - - if (item.Type === 'Program') { - tags = []; - } - - for (let i = 0, length = tags.length; i < length; i++) { - tagElements.push(tags[i]); - } - - if (tagElements.length) { - itemTags.innerHTML = globalize.translate('TagsValue', tagElements.join(', ')); - itemTags.classList.remove('hide'); - } else { - itemTags.innerHTML = ''; - itemTags.classList.add('hide'); - } -} - -function renderChildren(page, item) { - let fields = 'ItemCounts,PrimaryImageAspectRatio,BasicSyncInfo,CanDelete,MediaSourceCount'; - const query = { - ParentId: item.Id, - Fields: fields - }; - - if (item.Type !== 'BoxSet') { - query.SortBy = 'SortName'; - } - - let promise; - const apiClient = connectionManager.getApiClient(item.ServerId); - const userId = apiClient.getCurrentUserId(); - - if (item.Type == 'Series') { - promise = apiClient.getSeasons(item.Id, { - userId: userId, - Fields: fields - }); - } else if (item.Type == 'Season') { - fields += ',Overview'; - promise = apiClient.getEpisodes(item.SeriesId, { - seasonId: item.Id, - userId: userId, - Fields: fields - }); - } else if (item.Type == 'MusicArtist') { - query.SortBy = 'ProductionYear,SortName'; - } - - promise = promise || apiClient.getItems(apiClient.getCurrentUserId(), query); - promise.then(function (result) { - let html = ''; - let scrollX = false; - let isList = false; - const childrenItemsContainer = page.querySelector('.childrenItemsContainer'); - - if (item.Type == 'MusicAlbum') { - html = listView.getListViewHtml({ - items: result.Items, - smallIcon: true, - showIndex: true, - index: 'disc', - showIndexNumberLeft: true, - playFromHere: true, - action: 'playallfromhere', - image: false, - artist: 'auto', - containerAlbumArtists: item.AlbumArtists - }); - isList = true; - } else if (item.Type == 'Series') { - scrollX = enableScrollX(); - html = cardBuilder.getCardsHtml({ - items: result.Items, - shape: 'overflowPortrait', - showTitle: true, - centerText: true, - lazy: true, - overlayPlayButton: true, - allowBottomPadding: !scrollX - }); - } else if (item.Type == 'Season' || item.Type == 'Episode') { - if (item.Type !== 'Episode') { - isList = true; - } - scrollX = item.Type == 'Episode'; - if (result.Items.length < 2 && item.Type === 'Episode') { - return; + if (item.Type == 'MusicAlbum' && item.AlbumArtists && item.AlbumArtists.length) { + options.ExcludeArtistIds = item.AlbumArtists[0].Id; } - if (item.Type === 'Episode') { - html = cardBuilder.getCardsHtml({ + apiClient.getSimilarItems(item.Id, options).then(function (result) { + if (!result.Items.length) { + return void similarCollapsible.classList.add('hide'); + } + + similarCollapsible.classList.remove('hide'); + let html = ''; + html += cardBuilder.getCardsHtml({ items: result.Items, - shape: 'overflowBackdrop', + shape: 'autooverflow', + showParentTitle: item.Type == 'MusicAlbum', + centerText: true, showTitle: true, - displayAsSpecial: item.Type == 'Season' && item.IndexNumber, - playFromHere: true, - overlayText: true, + context: context, lazy: true, showDetailsMenu: true, + coverImage: item.Type == 'MusicAlbum' || item.Type == 'MusicArtist', overlayPlayButton: true, - allowBottomPadding: !scrollX, - includeParentInfoInTitle: false - }); - } else if (item.Type === 'Season') { - html = listView.getListViewHtml({ - items: result.Items, - showIndexNumber: false, - enableOverview: true, - enablePlayedButton: layoutManager.mobile ? false : true, - infoButton: layoutManager.mobile ? false : true, - imageSize: 'large', - enableSideMediaInfo: false, - highlight: false, - action: !layoutManager.desktop ? 'link' : 'none', - imagePlayButton: true, - includeParentInfoInTitle: false + overlayText: false, + showYear: item.Type === 'Movie' || item.Type === 'Trailer' || item.Type === 'Series' }); + const similarContent = similarCollapsible.querySelector('.similarContent'); + similarContent.innerHTML = html; + imageLoader.lazyChildren(similarContent); + }); + } + } + + function renderSeriesAirTime(page, item, isStatic) { + const seriesAirTime = page.querySelector('#seriesAirTime'); + if (item.Type != 'Series') { + seriesAirTime.classList.add('hide'); + return; + } + let html = ''; + if (item.AirDays && item.AirDays.length) { + if (item.AirDays.length == 7) { + html += 'daily'; + } else { + html += item.AirDays.map(function (a) { + return a + 's'; + }).join(','); } } + if (item.AirTime) { + html += ' at ' + item.AirTime; + } + if (item.Studios.length) { + if (isStatic) { + html += ' on ' + item.Studios[0].Name; + } else { + const context = inferContext(item); + const href = appRouter.getRouteUrl(item.Studios[0], { + context: context, + itemType: 'Studio', + serverId: item.ServerId + }); + html += ' on ' + item.Studios[0].Name + ''; + } + } + if (html) { + html = (item.Status == 'Ended' ? 'Aired ' : 'Airs ') + html; + seriesAirTime.innerHTML = html; + seriesAirTime.classList.remove('hide'); + } else { + seriesAirTime.classList.add('hide'); + } + } + + function renderTags(page, item) { + const itemTags = page.querySelector('.itemTags'); + const tagElements = []; + let tags = item.Tags || []; + + if (item.Type === 'Program') { + tags = []; + } + + for (let i = 0, length = tags.length; i < length; i++) { + tagElements.push(tags[i]); + } + + if (tagElements.length) { + itemTags.innerHTML = globalize.translate('TagsValue', tagElements.join(', ')); + itemTags.classList.remove('hide'); + } else { + itemTags.innerHTML = ''; + itemTags.classList.add('hide'); + } + } + + function renderChildren(page, item) { + let fields = 'ItemCounts,PrimaryImageAspectRatio,BasicSyncInfo,CanDelete,MediaSourceCount'; + const query = { + ParentId: item.Id, + Fields: fields + }; if (item.Type !== 'BoxSet') { - page.querySelector('#childrenCollapsible').classList.remove('hide'); + query.SortBy = 'SortName'; } - if (scrollX) { - childrenItemsContainer.classList.add('scrollX'); - childrenItemsContainer.classList.add('hiddenScrollX'); - childrenItemsContainer.classList.remove('vertical-wrap'); - childrenItemsContainer.classList.remove('vertical-list'); - } else { - childrenItemsContainer.classList.remove('scrollX'); - childrenItemsContainer.classList.remove('hiddenScrollX'); - childrenItemsContainer.classList.remove('smoothScrollX'); - if (isList) { - childrenItemsContainer.classList.add('vertical-list'); - childrenItemsContainer.classList.remove('vertical-wrap'); - } else { - childrenItemsContainer.classList.add('vertical-wrap'); - childrenItemsContainer.classList.remove('vertical-list'); - } + + let promise; + const apiClient = connectionManager.getApiClient(item.ServerId); + const userId = apiClient.getCurrentUserId(); + + if (item.Type == 'Series') { + promise = apiClient.getSeasons(item.Id, { + userId: userId, + Fields: fields + }); + } else if (item.Type == 'Season') { + fields += ',Overview'; + promise = apiClient.getEpisodes(item.SeriesId, { + seasonId: item.Id, + userId: userId, + Fields: fields + }); + } else if (item.Type == 'MusicArtist') { + query.SortBy = 'ProductionYear,SortName'; } - if (layoutManager.mobile) { - childrenItemsContainer.classList.remove('padded-right'); - } - childrenItemsContainer.innerHTML = html; - imageLoader.lazyChildren(childrenItemsContainer); - if (item.Type == 'BoxSet') { - const collectionItemTypes = [{ - name: globalize.translate('HeaderVideos'), - mediaType: 'Video' - }, { - name: globalize.translate('Series'), - type: 'Series' - }, { - name: globalize.translate('Albums'), - type: 'MusicAlbum' - }, { - name: globalize.translate('HeaderBooks'), - type: 'Book' - }]; - renderCollectionItems(page, item, collectionItemTypes, result.Items); - } - }); - if (item.Type == 'Season') { - page.querySelector('#childrenTitle').innerHTML = globalize.translate('HeaderEpisodes'); - } else if (item.Type == 'Series') { - page.querySelector('#childrenTitle').innerHTML = globalize.translate('HeaderSeasons'); - } else if (item.Type == 'MusicAlbum') { - page.querySelector('#childrenTitle').innerHTML = globalize.translate('HeaderTracks'); - } else { - page.querySelector('#childrenTitle').innerHTML = globalize.translate('Items'); - } + promise = promise || apiClient.getItems(apiClient.getCurrentUserId(), query); + promise.then(function (result) { + let html = ''; + let scrollX = false; + let isList = false; + const childrenItemsContainer = page.querySelector('.childrenItemsContainer'); - if (item.Type == 'MusicAlbum' || item.Type == 'Season') { - page.querySelector('.childrenSectionHeader').classList.add('hide'); - page.querySelector('#childrenCollapsible').classList.add('verticalSection-extrabottompadding'); - } else { - page.querySelector('.childrenSectionHeader').classList.remove('hide'); - } -} - -function renderItemsByName(page, item) { - import('scripts/itembynamedetailpage').then(() => { - window.ItemsByName.renderItems(page, item); - }); -} - -function renderPlaylistItems(page, item) { - import('scripts/playlistedit').then(() => { - PlaylistViewer.render(page, item); - }); -} - -function renderProgramsForChannel(page, result) { - let html = ''; - let currentItems = []; - let currentStartDate = null; - - for (let i = 0, length = result.Items.length; i < length; i++) { - const item = result.Items[i]; - const itemStartDate = datetime.parseISO8601Date(item.StartDate); - - if (!(currentStartDate && currentStartDate.toDateString() === itemStartDate.toDateString())) { - if (currentItems.length) { - html += '
    '; - html += '

    ' + datetime.toLocaleDateString(currentStartDate, { - weekday: 'long', - month: 'long', - day: 'numeric' - }) + '

    '; - html += '
    ' + listView.getListViewHtml({ - items: currentItems, - enableUserDataButtons: false, - showParentTitle: true, + if (item.Type == 'MusicAlbum') { + html = listView.getListViewHtml({ + items: result.Items, + smallIcon: true, + showIndex: true, + index: 'disc', + showIndexNumberLeft: true, + playFromHere: true, + action: 'playallfromhere', image: false, - showProgramTime: true, - mediaInfo: false, - parentTitleWithTitle: true - }) + '
    '; + artist: 'auto', + containerAlbumArtists: item.AlbumArtists + }); + isList = true; + } else if (item.Type == 'Series') { + scrollX = enableScrollX(); + html = cardBuilder.getCardsHtml({ + items: result.Items, + shape: 'overflowPortrait', + showTitle: true, + centerText: true, + lazy: true, + overlayPlayButton: true, + allowBottomPadding: !scrollX + }); + } else if (item.Type == 'Season' || item.Type == 'Episode') { + if (item.Type !== 'Episode') { + isList = true; + } + scrollX = item.Type == 'Episode'; + if (result.Items.length < 2 && item.Type === 'Episode') { + return; + } + + if (item.Type === 'Episode') { + html = cardBuilder.getCardsHtml({ + items: result.Items, + shape: 'overflowBackdrop', + showTitle: true, + displayAsSpecial: item.Type == 'Season' && item.IndexNumber, + playFromHere: true, + overlayText: true, + lazy: true, + showDetailsMenu: true, + overlayPlayButton: true, + allowBottomPadding: !scrollX, + includeParentInfoInTitle: false + }); + } else if (item.Type === 'Season') { + html = listView.getListViewHtml({ + items: result.Items, + showIndexNumber: false, + enableOverview: true, + enablePlayedButton: layoutManager.mobile ? false : true, + infoButton: layoutManager.mobile ? false : true, + imageSize: 'large', + enableSideMediaInfo: false, + highlight: false, + action: !layoutManager.desktop ? 'link' : 'none', + imagePlayButton: true, + includeParentInfoInTitle: false + }); + } } - currentStartDate = itemStartDate; - currentItems = []; + if (item.Type !== 'BoxSet') { + page.querySelector('#childrenCollapsible').classList.remove('hide'); + } + if (scrollX) { + childrenItemsContainer.classList.add('scrollX'); + childrenItemsContainer.classList.add('hiddenScrollX'); + childrenItemsContainer.classList.remove('vertical-wrap'); + childrenItemsContainer.classList.remove('vertical-list'); + } else { + childrenItemsContainer.classList.remove('scrollX'); + childrenItemsContainer.classList.remove('hiddenScrollX'); + childrenItemsContainer.classList.remove('smoothScrollX'); + if (isList) { + childrenItemsContainer.classList.add('vertical-list'); + childrenItemsContainer.classList.remove('vertical-wrap'); + } else { + childrenItemsContainer.classList.add('vertical-wrap'); + childrenItemsContainer.classList.remove('vertical-list'); + } + } + if (layoutManager.mobile) { + childrenItemsContainer.classList.remove('padded-right'); + } + childrenItemsContainer.innerHTML = html; + imageLoader.lazyChildren(childrenItemsContainer); + if (item.Type == 'BoxSet') { + const collectionItemTypes = [{ + name: globalize.translate('HeaderVideos'), + mediaType: 'Video' + }, { + name: globalize.translate('Series'), + type: 'Series' + }, { + name: globalize.translate('Albums'), + type: 'MusicAlbum' + }, { + name: globalize.translate('HeaderBooks'), + type: 'Book' + }]; + renderCollectionItems(page, item, collectionItemTypes, result.Items); + } + }); + + if (item.Type == 'Season') { + page.querySelector('#childrenTitle').innerHTML = globalize.translate('HeaderEpisodes'); + } else if (item.Type == 'Series') { + page.querySelector('#childrenTitle').innerHTML = globalize.translate('HeaderSeasons'); + } else if (item.Type == 'MusicAlbum') { + page.querySelector('#childrenTitle').innerHTML = globalize.translate('HeaderTracks'); + } else { + page.querySelector('#childrenTitle').innerHTML = globalize.translate('Items'); } - currentItems.push(item); + if (item.Type == 'MusicAlbum' || item.Type == 'Season') { + page.querySelector('.childrenSectionHeader').classList.add('hide'); + page.querySelector('#childrenCollapsible').classList.add('verticalSection-extrabottompadding'); + } else { + page.querySelector('.childrenSectionHeader').classList.remove('hide'); + } } - if (currentItems.length) { - html += '
    '; - html += '

    ' + datetime.toLocaleDateString(currentStartDate, { - weekday: 'long', - month: 'long', - day: 'numeric' - }) + '

    '; - html += '
    ' + listView.getListViewHtml({ - items: currentItems, - enableUserDataButtons: false, - showParentTitle: true, - image: false, - showProgramTime: true, - mediaInfo: false, - parentTitleWithTitle: true - }) + '
    '; + function renderItemsByName(page, item) { + import('scripts/itembynamedetailpage').then(() => { + window.ItemsByName.renderItems(page, item); + }); } - page.querySelector('.programGuide').innerHTML = html; -} + function renderPlaylistItems(page, item) { + import('scripts/playlistedit').then(() => { + PlaylistViewer.render(page, item); + }); + } -function renderChannelGuide(page, apiClient, item) { - if (item.Type === 'TvChannel') { - page.querySelector('.programGuideSection').classList.remove('hide'); + function renderProgramsForChannel(page, result) { + let html = ''; + let currentItems = []; + let currentStartDate = null; + + for (let i = 0, length = result.Items.length; i < length; i++) { + const item = result.Items[i]; + const itemStartDate = datetime.parseISO8601Date(item.StartDate); + + if (!(currentStartDate && currentStartDate.toDateString() === itemStartDate.toDateString())) { + if (currentItems.length) { + html += '
    '; + html += '

    ' + datetime.toLocaleDateString(currentStartDate, { + weekday: 'long', + month: 'long', + day: 'numeric' + }) + '

    '; + html += '
    ' + listView.getListViewHtml({ + items: currentItems, + enableUserDataButtons: false, + showParentTitle: true, + image: false, + showProgramTime: true, + mediaInfo: false, + parentTitleWithTitle: true + }) + '
    '; + } + + currentStartDate = itemStartDate; + currentItems = []; + } + + currentItems.push(item); + } + + if (currentItems.length) { + html += '
    '; + html += '

    ' + datetime.toLocaleDateString(currentStartDate, { + weekday: 'long', + month: 'long', + day: 'numeric' + }) + '

    '; + html += '
    ' + listView.getListViewHtml({ + items: currentItems, + enableUserDataButtons: false, + showParentTitle: true, + image: false, + showProgramTime: true, + mediaInfo: false, + parentTitleWithTitle: true + }) + '
    '; + } + + page.querySelector('.programGuide').innerHTML = html; + } + + function renderChannelGuide(page, apiClient, item) { + if (item.Type === 'TvChannel') { + page.querySelector('.programGuideSection').classList.remove('hide'); + apiClient.getLiveTvPrograms({ + ChannelIds: item.Id, + UserId: apiClient.getCurrentUserId(), + HasAired: false, + SortBy: 'StartDate', + EnableTotalRecordCount: false, + EnableImages: false, + ImageTypeLimit: 0, + EnableUserData: false + }).then(function (result) { + renderProgramsForChannel(page, result); + }); + } + } + + function renderSeriesSchedule(page, item) { + const apiClient = connectionManager.getApiClient(item.ServerId); apiClient.getLiveTvPrograms({ - ChannelIds: item.Id, UserId: apiClient.getCurrentUserId(), HasAired: false, SortBy: 'StartDate', EnableTotalRecordCount: false, EnableImages: false, ImageTypeLimit: 0, - EnableUserData: false + Limit: 50, + EnableUserData: false, + LibrarySeriesId: item.Id }).then(function (result) { - renderProgramsForChannel(page, result); + if (result.Items.length) { + page.querySelector('#seriesScheduleSection').classList.remove('hide'); + } else { + page.querySelector('#seriesScheduleSection').classList.add('hide'); + } + + page.querySelector('#seriesScheduleList').innerHTML = listView.getListViewHtml({ + items: result.Items, + enableUserDataButtons: false, + showParentTitle: false, + image: false, + showProgramDateTime: true, + mediaInfo: false, + showTitle: true, + moreButton: false, + action: 'programdialog' + }); + loading.hide(); }); } -} -function renderSeriesSchedule(page, item) { - const apiClient = connectionManager.getApiClient(item.ServerId); - apiClient.getLiveTvPrograms({ - UserId: apiClient.getCurrentUserId(), - HasAired: false, - SortBy: 'StartDate', - EnableTotalRecordCount: false, - EnableImages: false, - ImageTypeLimit: 0, - Limit: 50, - EnableUserData: false, - LibrarySeriesId: item.Id - }).then(function (result) { - if (result.Items.length) { - page.querySelector('#seriesScheduleSection').classList.remove('hide'); - } else { - page.querySelector('#seriesScheduleSection').classList.add('hide'); + function inferContext(item) { + if (item.Type === 'Movie' || item.Type === 'BoxSet') { + return 'movies'; } - page.querySelector('#seriesScheduleList').innerHTML = listView.getListViewHtml({ - items: result.Items, - enableUserDataButtons: false, - showParentTitle: false, - image: false, - showProgramDateTime: true, - mediaInfo: false, + if (item.Type === 'Series' || item.Type === 'Season' || item.Type === 'Episode') { + return 'tvshows'; + } + + if (item.Type === 'MusicArtist' || item.Type === 'MusicAlbum' || item.Type === 'Audio' || item.Type === 'AudioBook') { + return 'music'; + } + + if (item.Type === 'Program') { + return 'livetv'; + } + + return null; + } + + function filterItemsByCollectionItemType(items, typeInfo) { + return items.filter(function (item) { + if (typeInfo.mediaType) { + return item.MediaType == typeInfo.mediaType; + } + + return item.Type == typeInfo.type; + }); + } + + function canPlaySomeItemInCollection(items) { + let i = 0; + + for (let length = items.length; i < length; i++) { + if (playbackManager.canPlay(items[i])) { + return true; + } + } + + return false; + } + + function renderCollectionItems(page, parentItem, types, items) { + page.querySelector('.collectionItems').classList.remove('hide'); + page.querySelector('.collectionItems').innerHTML = ''; + + for (const type of types) { + const typeItems = filterItemsByCollectionItemType(items, type); + + if (typeItems.length) { + renderCollectionItemType(page, parentItem, type, typeItems); + } + } + + const otherType = { + name: globalize.translate('HeaderOtherItems') + }; + const otherTypeItems = items.filter(function (curr) { + return !types.filter(function (t) { + return filterItemsByCollectionItemType([curr], t).length > 0; + }).length; + }); + + if (otherTypeItems.length) { + renderCollectionItemType(page, parentItem, otherType, otherTypeItems); + } + + if (!items.length) { + renderCollectionItemType(page, parentItem, { + name: globalize.translate('Items') + }, items); + } + + const containers = page.querySelectorAll('.collectionItemsContainer'); + + const notifyRefreshNeeded = function () { + renderChildren(page, parentItem); + }; + + for (const container of containers) { + container.notifyRefreshNeeded = notifyRefreshNeeded; + } + + // if nothing in the collection can be played hide play and shuffle buttons + if (!canPlaySomeItemInCollection(items)) { + hideAll(page, 'btnPlay', false); + hideAll(page, 'btnShuffle', false); + } + + // HACK: Call autoFocuser again because btnPlay may be hidden, but focused by reloadFromItem + // FIXME: Sometimes focus does not move until all (?) sections are loaded + import('autoFocuser').then(({default: autoFocuser}) => { + autoFocuser.autoFocus(page); + }); + } + + function renderCollectionItemType(page, parentItem, type, items) { + let html = ''; + html += '
    '; + html += '
    '; + html += '

    '; + html += '' + type.name + ''; + html += '

    '; + html += '
    '; + html += '
    '; + const shape = type.type == 'MusicAlbum' ? getSquareShape(false) : getPortraitShape(false); + html += cardBuilder.getCardsHtml({ + items: items, + shape: shape, showTitle: true, - moreButton: false, - action: 'programdialog' + showYear: type.mediaType === 'Video' || type.type === 'Series', + centerText: true, + lazy: true, + showDetailsMenu: true, + overlayMoreButton: true, + showAddToCollection: false, + showRemoveFromCollection: true, + collectionId: parentItem.Id }); - loading.hide(); - }); -} - -function inferContext(item) { - if (item.Type === 'Movie' || item.Type === 'BoxSet') { - return 'movies'; + html += '
    '; + html += '
    '; + const collectionItems = page.querySelector('.collectionItems'); + collectionItems.insertAdjacentHTML('beforeend', html); + imageLoader.lazyChildren(collectionItems); } - if (item.Type === 'Series' || item.Type === 'Season' || item.Type === 'Episode') { - return 'tvshows'; + function renderMusicVideos(page, item, user) { + connectionManager.getApiClient(item.ServerId).getItems(user.Id, { + SortBy: 'SortName', + SortOrder: 'Ascending', + IncludeItemTypes: 'MusicVideo', + Recursive: true, + Fields: 'PrimaryImageAspectRatio,BasicSyncInfo,CanDelete,MediaSourceCount', + AlbumIds: item.Id + }).then(function (result) { + if (result.Items.length) { + page.querySelector('#musicVideosCollapsible').classList.remove('hide'); + const musicVideosContent = page.querySelector('.musicVideosContent'); + musicVideosContent.innerHTML = getVideosHtml(result.Items); + imageLoader.lazyChildren(musicVideosContent); + } else { + page.querySelector('#musicVideosCollapsible').classList.add('hide'); + } + }); } - if (item.Type === 'MusicArtist' || item.Type === 'MusicAlbum' || item.Type === 'Audio' || item.Type === 'AudioBook') { - return 'music'; + function renderAdditionalParts(page, item, user) { + connectionManager.getApiClient(item.ServerId).getAdditionalVideoParts(user.Id, item.Id).then(function (result) { + if (result.Items.length) { + page.querySelector('#additionalPartsCollapsible').classList.remove('hide'); + const additionalPartsContent = page.querySelector('#additionalPartsContent'); + additionalPartsContent.innerHTML = getVideosHtml(result.Items); + imageLoader.lazyChildren(additionalPartsContent); + } else { + page.querySelector('#additionalPartsCollapsible').classList.add('hide'); + } + }); } - if (item.Type === 'Program') { - return 'livetv'; - } + function renderScenes(page, item) { + let chapters = item.Chapters || []; - return null; -} + if (chapters.length && !chapters[0].ImageTag && (chapters = []), chapters.length) { + page.querySelector('#scenesCollapsible').classList.remove('hide'); + const scenesContent = page.querySelector('#scenesContent'); -function filterItemsByCollectionItemType(items, typeInfo) { - return items.filter(function (item) { - if (typeInfo.mediaType) { - return item.MediaType == typeInfo.mediaType; - } - - return item.Type == typeInfo.type; - }); -} - -function canPlaySomeItemInCollection(items) { - let i = 0; - - for (let length = items.length; i < length; i++) { - if (playbackManager.canPlay(items[i])) { - return true; - } - } - - return false; -} - -function renderCollectionItems(page, parentItem, types, items) { - page.querySelector('.collectionItems').classList.remove('hide'); - page.querySelector('.collectionItems').innerHTML = ''; - - for (const type of types) { - const typeItems = filterItemsByCollectionItemType(items, type); - - if (typeItems.length) { - renderCollectionItemType(page, parentItem, type, typeItems); - } - } - - const otherType = { - name: globalize.translate('HeaderOtherItems') - }; - const otherTypeItems = items.filter(function (curr) { - return !types.filter(function (t) { - return filterItemsByCollectionItemType([curr], t).length > 0; - }).length; - }); - - if (otherTypeItems.length) { - renderCollectionItemType(page, parentItem, otherType, otherTypeItems); - } - - if (!items.length) { - renderCollectionItemType(page, parentItem, { - name: globalize.translate('Items') - }, items); - } - - const containers = page.querySelectorAll('.collectionItemsContainer'); - - const notifyRefreshNeeded = function () { - renderChildren(page, parentItem); - }; - - for (const container of containers) { - container.notifyRefreshNeeded = notifyRefreshNeeded; - } - - // if nothing in the collection can be played hide play and shuffle buttons - if (!canPlaySomeItemInCollection(items)) { - hideAll(page, 'btnPlay', false); - hideAll(page, 'btnShuffle', false); - } - - // HACK: Call autoFocuser again because btnPlay may be hidden, but focused by reloadFromItem - // FIXME: Sometimes focus does not move until all (?) sections are loaded - import('autoFocuser').then(({ default: autoFocuser }) => { - autoFocuser.autoFocus(page); - }); -} - -function renderCollectionItemType(page, parentItem, type, items) { - let html = ''; - html += '
    '; - html += '
    '; - html += '

    '; - html += '' + type.name + ''; - html += '

    '; - html += '
    '; - html += '
    '; - const shape = type.type == 'MusicAlbum' ? getSquareShape(false) : getPortraitShape(false); - html += cardBuilder.getCardsHtml({ - items: items, - shape: shape, - showTitle: true, - showYear: type.mediaType === 'Video' || type.type === 'Series', - centerText: true, - lazy: true, - showDetailsMenu: true, - overlayMoreButton: true, - showAddToCollection: false, - showRemoveFromCollection: true, - collectionId: parentItem.Id - }); - html += '
    '; - html += '
    '; - const collectionItems = page.querySelector('.collectionItems'); - collectionItems.insertAdjacentHTML('beforeend', html); - imageLoader.lazyChildren(collectionItems); -} - -function renderMusicVideos(page, item, user) { - connectionManager.getApiClient(item.ServerId).getItems(user.Id, { - SortBy: 'SortName', - SortOrder: 'Ascending', - IncludeItemTypes: 'MusicVideo', - Recursive: true, - Fields: 'PrimaryImageAspectRatio,BasicSyncInfo,CanDelete,MediaSourceCount', - AlbumIds: item.Id - }).then(function (result) { - if (result.Items.length) { - page.querySelector('#musicVideosCollapsible').classList.remove('hide'); - const musicVideosContent = page.querySelector('.musicVideosContent'); - musicVideosContent.innerHTML = getVideosHtml(result.Items); - imageLoader.lazyChildren(musicVideosContent); + import('chaptercardbuilder').then(({default: chaptercardbuilder}) => { + chaptercardbuilder.buildChapterCards(item, chapters, { + itemsContainer: scenesContent, + backdropShape: 'overflowBackdrop', + squareShape: 'overflowSquare', + imageBlurhashes: item.ImageBlurHashes + }); + }); } else { - page.querySelector('#musicVideosCollapsible').classList.add('hide'); + page.querySelector('#scenesCollapsible').classList.add('hide'); } - }); -} + } -function renderAdditionalParts(page, item, user) { - connectionManager.getApiClient(item.ServerId).getAdditionalVideoParts(user.Id, item.Id).then(function (result) { - if (result.Items.length) { - page.querySelector('#additionalPartsCollapsible').classList.remove('hide'); - const additionalPartsContent = page.querySelector('#additionalPartsContent'); - additionalPartsContent.innerHTML = getVideosHtml(result.Items); - imageLoader.lazyChildren(additionalPartsContent); - } else { - page.querySelector('#additionalPartsCollapsible').classList.add('hide'); + function getVideosHtml(items) { + return cardBuilder.getCardsHtml({ + items: items, + shape: 'autooverflow', + showTitle: true, + action: 'play', + overlayText: false, + centerText: true, + showRuntime: true + }); + } + + function renderSpecials(page, item, user) { + connectionManager.getApiClient(item.ServerId).getSpecialFeatures(user.Id, item.Id).then(function (specials) { + const specialsContent = page.querySelector('#specialsContent'); + specialsContent.innerHTML = getVideosHtml(specials); + imageLoader.lazyChildren(specialsContent); + }); + } + + function renderCast(page, item) { + const people = (item.People || []).filter(function (p) { + return p.Type === 'Actor'; + }); + + if (!people.length) { + return void page.querySelector('#castCollapsible').classList.add('hide'); } - }); -} -function renderScenes(page, item) { - let chapters = item.Chapters || []; + page.querySelector('#castCollapsible').classList.remove('hide'); + const castContent = page.querySelector('#castContent'); - if (chapters.length && !chapters[0].ImageTag && (chapters = []), chapters.length) { - page.querySelector('#scenesCollapsible').classList.remove('hide'); - const scenesContent = page.querySelector('#scenesContent'); - - import('chaptercardbuilder').then(({ default: chaptercardbuilder }) => { - chaptercardbuilder.buildChapterCards(item, chapters, { - itemsContainer: scenesContent, - backdropShape: 'overflowBackdrop', - squareShape: 'overflowSquare', + import('peoplecardbuilder').then(({default: peoplecardbuilder}) => { + peoplecardbuilder.buildPeopleCards(people, { + itemsContainer: castContent, + coverImage: true, + serverId: item.ServerId, + shape: 'overflowPortrait', imageBlurhashes: item.ImageBlurHashes }); }); - } else { - page.querySelector('#scenesCollapsible').classList.add('hide'); - } -} - -function getVideosHtml(items) { - return cardBuilder.getCardsHtml({ - items: items, - shape: 'autooverflow', - showTitle: true, - action: 'play', - overlayText: false, - centerText: true, - showRuntime: true - }); -} - -function renderSpecials(page, item, user) { - connectionManager.getApiClient(item.ServerId).getSpecialFeatures(user.Id, item.Id).then(function (specials) { - const specialsContent = page.querySelector('#specialsContent'); - specialsContent.innerHTML = getVideosHtml(specials); - imageLoader.lazyChildren(specialsContent); - }); -} - -function renderCast(page, item) { - const people = (item.People || []).filter(function (p) { - return p.Type === 'Actor'; - }); - - if (!people.length) { - return void page.querySelector('#castCollapsible').classList.add('hide'); } - page.querySelector('#castCollapsible').classList.remove('hide'); - const castContent = page.querySelector('#castContent'); - - import('peoplecardbuilder').then(({ default: peoplecardbuilder }) => { - peoplecardbuilder.buildPeopleCards(people, { - itemsContainer: castContent, - coverImage: true, - serverId: item.ServerId, - shape: 'overflowPortrait', - imageBlurhashes: item.ImageBlurHashes - }); - }); -} - -function itemDetailPage() { - const self = this; - self.setInitialCollapsibleState = setInitialCollapsibleState; - self.renderDetails = renderDetails; - self.renderCast = renderCast; -} - -function bindAll(view, selector, eventName, fn) { - const elems = view.querySelectorAll(selector); - - for (const elem of elems) { - elem.addEventListener(eventName, fn); - } -} - -function onTrackSelectionsSubmit(e) { - e.preventDefault(); - return false; -} - -window.ItemDetailPage = new itemDetailPage(); - -export default function (view, params) { - function reload(instance, page, params) { - loading.show(); - - const apiClient = params.serverId ? connectionManager.getApiClient(params.serverId) : ApiClient; - - Promise.all([getPromise(apiClient, params), apiClient.getCurrentUser()]).then(([item, user]) => { - currentItem = item; - reloadFromItem(instance, page, params, item, user); - }).catch((error) => { - console.error('failed to get item or current user: ', error); - }); + function itemDetailPage() { + const self = this; + self.setInitialCollapsibleState = setInitialCollapsibleState; + self.renderDetails = renderDetails; + self.renderCast = renderCast; } - function splitVersions(instance, page, apiClient, params) { - import('confirm').then(({ default: confirm }) => { - confirm('Are you sure you wish to split the media sources into separate items?', 'Split Media Apart').then(function () { - loading.show(); - apiClient.ajax({ - type: 'DELETE', - url: apiClient.getUrl('Videos/' + params.id + '/AlternateSources') - }).then(function () { - loading.hide(); - reload(instance, page, params); - }); + function bindAll(view, selector, eventName, fn) { + const elems = view.querySelectorAll(selector); + + for (const elem of elems) { + elem.addEventListener(eventName, fn); + } + } + + function onTrackSelectionsSubmit(e) { + e.preventDefault(); + return false; + } + + window.ItemDetailPage = new itemDetailPage(); + + export default function (view, params) { + function reload(instance, page, params) { + loading.show(); + + const apiClient = params.serverId ? connectionManager.getApiClient(params.serverId) : ApiClient; + + Promise.all([getPromise(apiClient, params), apiClient.getCurrentUser()]).then(([item, user]) => { + currentItem = item; + reloadFromItem(instance, page, params, item, user); + }).catch((error) => { + console.error('failed to get item or current user: ', error); }); - }); - } + } - function getPlayOptions(startPosition) { - const audioStreamIndex = view.querySelector('.selectAudio').value || null; - return { - startPositionTicks: startPosition, - mediaSourceId: view.querySelector('.selectSource').value, - audioStreamIndex: audioStreamIndex, - subtitleStreamIndex: view.querySelector('.selectSubtitles').value - }; - } - - function playItem(item, startPosition) { - const playOptions = getPlayOptions(startPosition); - playOptions.items = [item]; - playbackManager.play(playOptions); - } - - function playTrailer() { - playbackManager.playTrailers(currentItem); - } - - function playCurrentItem(button, mode) { - const item = currentItem; - - if (item.Type === 'Program') { - const apiClient = connectionManager.getApiClient(item.ServerId); - return void apiClient.getLiveTvChannel(item.ChannelId, apiClient.getCurrentUserId()).then(function (channel) { - playbackManager.play({ - items: [channel] + function splitVersions(instance, page, apiClient, params) { + import('confirm').then(({default: confirm}) => { + confirm('Are you sure you wish to split the media sources into separate items?', 'Split Media Apart').then(function () { + loading.show(); + apiClient.ajax({ + type: 'DELETE', + url: apiClient.getUrl('Videos/' + params.id + '/AlternateSources') + }).then(function () { + loading.hide(); + reload(instance, page, params); + }); }); }); } - playItem(item, item.UserData && mode === 'resume' ? item.UserData.PlaybackPositionTicks : 0); - } + function getPlayOptions(startPosition) { + const audioStreamIndex = view.querySelector('.selectAudio').value || null; + return { + startPositionTicks: startPosition, + mediaSourceId: view.querySelector('.selectSource').value, + audioStreamIndex: audioStreamIndex, + subtitleStreamIndex: view.querySelector('.selectSubtitles').value + }; + } - function onPlayClick() { - playCurrentItem(this, this.getAttribute('data-mode')); - } + function playItem(item, startPosition) { + const playOptions = getPlayOptions(startPosition); + playOptions.items = [item]; + playbackManager.play(playOptions); + } - function onInstantMixClick() { - playbackManager.instantMix(currentItem); - } + function playTrailer() { + playbackManager.playTrailers(currentItem); + } - function onShuffleClick() { - playbackManager.shuffle(currentItem); - } + function playCurrentItem(button, mode) { + const item = currentItem; - function onCancelSeriesTimerClick() { - import('recordingHelper').then(({ default: recordingHelper }) => { - recordingHelper.cancelSeriesTimerWithConfirmation(currentItem.Id, currentItem.ServerId).then(function () { - Dashboard.navigate('livetv.html'); + if (item.Type === 'Program') { + const apiClient = connectionManager.getApiClient(item.ServerId); + return void apiClient.getLiveTvChannel(item.ChannelId, apiClient.getCurrentUserId()).then(function (channel) { + playbackManager.play({ + items: [channel] + }); + }); + } + + playItem(item, item.UserData && mode === 'resume' ? item.UserData.PlaybackPositionTicks : 0); + } + + function onPlayClick() { + playCurrentItem(this, this.getAttribute('data-mode')); + } + + function onInstantMixClick() { + playbackManager.instantMix(currentItem); + } + + function onShuffleClick() { + playbackManager.shuffle(currentItem); + } + + function onCancelSeriesTimerClick() { + import('recordingHelper').then(({default: recordingHelper}) => { + recordingHelper.cancelSeriesTimerWithConfirmation(currentItem.Id, currentItem.ServerId).then(function () { + Dashboard.navigate('livetv.html'); + }); }); - }); - } + } - function onCancelTimerClick() { - import('recordingHelper').then(({ default: recordingHelper }) => { - recordingHelper.cancelTimer(connectionManager.getApiClient(currentItem.ServerId), currentItem.TimerId).then(function () { - reload(self, view, params); + function onCancelTimerClick() { + import('recordingHelper').then(({default: recordingHelper}) => { + recordingHelper.cancelTimer(connectionManager.getApiClient(currentItem.ServerId), currentItem.TimerId).then(function () { + reload(self, view, params); + }); }); - }); - } + } - function onPlayTrailerClick() { - playTrailer(); - } + function onPlayTrailerClick() { + playTrailer(); + } - function onDownloadClick() { - import('fileDownloader').then(({ default: fileDownloader }) => { - const downloadHref = apiClient.getItemDownloadUrl(currentItem.Id); - fileDownloader.download([{ - url: downloadHref, - itemId: currentItem.Id, - serverId: currentItem.serverId - }]); - }); - } - - function onMoreCommandsClick() { - var button = this; - var selectedItem = currentItem; - apiClient.getItem(apiClient.getCurrentUserId(), view.querySelector('.selectSource').value).then(function (item) { - selectedItem = item; + function onDownloadClick() { + import('fileDownloader').then(({default: fileDownloader}) => { + const downloadHref = apiClient.getItemDownloadUrl(currentItem.Id); + fileDownloader.download([{ + url: downloadHref, + itemId: currentItem.Id, + serverId: currentItem.serverId + }]); + }); + } + function onMoreCommandsClick() { + const button = this; apiClient.getCurrentUser().then(function (user) { - itemContextMenu.show(getContextMenuOptions(selectedItem, user, button)).then(function (result) { + itemContextMenu.show(getContextMenuOptions(currentItem, user, button)).then(function (result) { if (result.deleted) { appRouter.goHome(); } else if (result.updated) { @@ -1949,81 +1945,79 @@ export default function (view, params) { } }); }); - - }) - } - - function onPlayerChange() { - renderTrackSelections(view, self, currentItem); - setTrailerButtonVisibility(view, currentItem); - } - - function onWebSocketMessage(e, data) { - const msg = data; - - if (msg.MessageType === 'UserDataChanged' && currentItem && msg.Data.UserId == apiClient.getCurrentUserId()) { - const key = currentItem.UserData.Key; - const userData = msg.Data.UserDataList.filter(function (u) { - return u.Key == key; - })[0]; - - if (userData) { - currentItem.UserData = userData; - reloadPlayButtons(view, currentItem); - refreshImage(view, currentItem); - } - } - } - - let currentItem; - const self = this; - const apiClient = params.serverId ? connectionManager.getApiClient(params.serverId) : ApiClient; - view.querySelectorAll('.btnPlay'); - bindAll(view, '.btnPlay', 'click', onPlayClick); - bindAll(view, '.btnResume', 'click', onPlayClick); - bindAll(view, '.btnInstantMix', 'click', onInstantMixClick); - bindAll(view, '.btnShuffle', 'click', onShuffleClick); - bindAll(view, '.btnPlayTrailer', 'click', onPlayTrailerClick); - bindAll(view, '.btnCancelSeriesTimer', 'click', onCancelSeriesTimerClick); - bindAll(view, '.btnCancelTimer', 'click', onCancelTimerClick); - bindAll(view, '.btnDownload', 'click', onDownloadClick); - view.querySelector('.trackSelections').addEventListener('submit', onTrackSelectionsSubmit); - view.querySelector('.btnSplitVersions').addEventListener('click', function () { - splitVersions(self, view, apiClient, params); - }); - bindAll(view, '.btnMoreCommands', 'click', onMoreCommandsClick); - view.querySelector('.selectSource').addEventListener('change', function () { - renderVideoSelections(view, self._currentPlaybackMediaSources); - renderAudioSelections(view, self._currentPlaybackMediaSources); - renderSubtitleSelections(view, self._currentPlaybackMediaSources); - }); - view.addEventListener('viewshow', function (e) { - const page = this; - - libraryMenu.setTransparentMenu(true); - - if (e.detail.isRestored) { - if (currentItem) { - Emby.Page.setTitle(''); - renderTrackSelections(page, self, currentItem, true); - } - } else { - reload(self, page, params); } - events.on(apiClient, 'message', onWebSocketMessage); - events.on(playbackManager, 'playerchange', onPlayerChange); - }); - view.addEventListener('viewbeforehide', function () { - events.off(apiClient, 'message', onWebSocketMessage); - events.off(playbackManager, 'playerchange', onPlayerChange); - libraryMenu.setTransparentMenu(false); - }); - view.addEventListener('viewdestroy', function () { - currentItem = null; - self._currentPlaybackMediaSources = null; - self.currentRecordingFields = null; - }); -} + function onPlayerChange() { + renderTrackSelections(view, self, currentItem); + setTrailerButtonVisibility(view, currentItem); + } + + function onWebSocketMessage(e, data) { + const msg = data; + + if (msg.MessageType === 'UserDataChanged' && currentItem && msg.Data.UserId == apiClient.getCurrentUserId()) { + const key = currentItem.UserData.Key; + const userData = msg.Data.UserDataList.filter(function (u) { + return u.Key == key; + })[0]; + + if (userData) { + currentItem.UserData = userData; + reloadPlayButtons(view, currentItem); + refreshImage(view, currentItem); + } + } + } + + let currentItem; + const self = this; + const apiClient = params.serverId ? connectionManager.getApiClient(params.serverId) : ApiClient; + view.querySelectorAll('.btnPlay'); + bindAll(view, '.btnPlay', 'click', onPlayClick); + bindAll(view, '.btnResume', 'click', onPlayClick); + bindAll(view, '.btnInstantMix', 'click', onInstantMixClick); + bindAll(view, '.btnShuffle', 'click', onShuffleClick); + bindAll(view, '.btnPlayTrailer', 'click', onPlayTrailerClick); + bindAll(view, '.btnCancelSeriesTimer', 'click', onCancelSeriesTimerClick); + bindAll(view, '.btnCancelTimer', 'click', onCancelTimerClick); + bindAll(view, '.btnDownload', 'click', onDownloadClick); + view.querySelector('.trackSelections').addEventListener('submit', onTrackSelectionsSubmit); + view.querySelector('.btnSplitVersions').addEventListener('click', function () { + splitVersions(self, view, apiClient, params); + }); + bindAll(view, '.btnMoreCommands', 'click', onMoreCommandsClick); + view.querySelector('.selectSource').addEventListener('change', function () { + renderVideoSelections(view, self._currentPlaybackMediaSources); + renderAudioSelections(view, self._currentPlaybackMediaSources); + renderSubtitleSelections(view, self._currentPlaybackMediaSources); + }); + view.addEventListener('viewshow', function (e) { + const page = this; + + libraryMenu.setTransparentMenu(true); + + if (e.detail.isRestored) { + if (currentItem) { + Emby.Page.setTitle(''); + renderTrackSelections(page, self, currentItem, true); + } + } else { + reload(self, page, params); + } + + events.on(apiClient, 'message', onWebSocketMessage); + events.on(playbackManager, 'playerchange', onPlayerChange); + }); + view.addEventListener('viewbeforehide', function () { + events.off(apiClient, 'message', onWebSocketMessage); + events.off(playbackManager, 'playerchange', onPlayerChange); + libraryMenu.setTransparentMenu(false); + }); + view.addEventListener('viewdestroy', function () { + currentItem = null; + self._currentPlaybackMediaSources = null; + self.currentRecordingFields = null; + }); + } /* eslint-enable indent */ From 3ddb08d973419e9e01f4a83fd7b7e312cff52ab9 Mon Sep 17 00:00:00 2001 From: Mister Rajoy Date: Tue, 18 Aug 2020 01:50:39 +0200 Subject: [PATCH 119/285] Fix editMetadata/download didnt work with selected version --- src/controllers/itemDetails/index.js | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/src/controllers/itemDetails/index.js b/src/controllers/itemDetails/index.js index c57190139f..56c6f5eda6 100644 --- a/src/controllers/itemDetails/index.js +++ b/src/controllers/itemDetails/index.js @@ -1935,14 +1935,19 @@ import 'emby-select'; } function onMoreCommandsClick() { - const button = this; - apiClient.getCurrentUser().then(function (user) { - itemContextMenu.show(getContextMenuOptions(currentItem, user, button)).then(function (result) { - if (result.deleted) { - appRouter.goHome(); - } else if (result.updated) { - reload(self, view, params); - } + var button = this; + var selectedItem = currentItem; + apiClient.getItem(apiClient.getCurrentUserId(),view.querySelector('.selectSource').value).then(function (item) { + selectedItem = item; + + apiClient.getCurrentUser().then(function (user) { + itemContextMenu.show(getContextMenuOptions(selectedItem, user, button)).then(function (result) { + if (result.deleted) { + appRouter.goHome(); + } else if (result.updated) { + reload(self, view, params); + } + }); }); }); } From a43b49bc836e521b93f1c4fbb32f0a2e2eabeec6 Mon Sep 17 00:00:00 2001 From: Nyanmisaka <799610810@qq.com> Date: Mon, 17 Aug 2020 17:56:02 +0000 Subject: [PATCH 120/285] Translated using Weblate (Chinese (Simplified)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/zh_Hans/ --- src/strings/zh-cn.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/zh-cn.json b/src/strings/zh-cn.json index b14bec8277..8fe4e14565 100644 --- a/src/strings/zh-cn.json +++ b/src/strings/zh-cn.json @@ -1475,5 +1475,6 @@ "MessageGetInstalledPluginsError": "获取已安装插件列表时出现错误。", "MessagePluginInstallError": "安装插件时出现错误。", "NextTrack": "下一曲", - "LabelUnstable": "不稳定" + "LabelUnstable": "不稳定", + "PlaybackRate": "播放速率" } From 2584b140c9167c41f57783a842a6f747af311dc3 Mon Sep 17 00:00:00 2001 From: adrian gustavo martinez Date: Tue, 18 Aug 2020 03:59:00 +0000 Subject: [PATCH 121/285] Translated using Weblate (Spanish (Argentina)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es_AR/ --- src/strings/es-ar.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/strings/es-ar.json b/src/strings/es-ar.json index 74eb87e842..2883ac4445 100644 --- a/src/strings/es-ar.json +++ b/src/strings/es-ar.json @@ -61,7 +61,7 @@ "AllowMediaConversionHelp": "Permitir o denegar acceso a la opción de convertir medios.", "AllowOnTheFlySubtitleExtraction": "Permitir extracción de subtítulos al vuelo", "AllowOnTheFlySubtitleExtractionHelp": "Los subtítulos incrustados se pueden extraer de los videos y entregar a los clientes en texto plano, para ayudar a evitar la transcodificación de videos. En algunos sistemas, esto puede llevar mucho tiempo y provocar que la reproducción de video se detenga durante el proceso de extracción. Deshabilite esto para que los subtítulos incrustados se graben con la transcodificación de video cuando el dispositivo cliente no los admite de forma nativa.", - "AllowRemoteAccess": "Permitir conexiones remotas a este servidor Jellyfin.", + "AllowRemoteAccess": "Permitir conexiones remotas a este servidor.", "AllowRemoteAccessHelp": "Si no está tildado, todas las conexiones remotas serán bloqueadas.", "AlwaysPlaySubtitles": "Reproducir siempre", "AnyLanguage": "Cualquier idioma", @@ -159,7 +159,7 @@ "ColorTransfer": "Transferencia de color", "CommunityRating": "Puntuación de la comunidad", "Composer": "Compositor", - "ConfigureDateAdded": "Configura cómo se va a determinar las fechas de adición en la pestaña Bibliotecas del panel del servidor Jellyfin", + "ConfigureDateAdded": "Configure cómo se determina la fecha agregada en el panel en la configuración de la biblioteca", "ConfirmDeleteImage": "¿Eliminar imagen?", "ConfirmDeleteItem": "Eliminar este elemento lo eliminará tanto del sistema de archivos como de la biblioteca de medios. ¿Está seguro que desea continuar?", "ConfirmDeleteItems": "Eliminar estos elementos los eliminará tanto del sistema de archivos como de la biblioteca de medios. ¿Está seguro que desea continuar?", @@ -216,7 +216,7 @@ "EnableBackdropsHelp": "Muestra imágenes de fondo en el fondo de algunas páginas mientras se navega por la biblioteca.", "EnableCinemaMode": "Modo cine", "EnableColorCodedBackgrounds": "Habilitar colores en el fondo del código", - "AuthProviderHelp": "Seleccione un proveedor de autenticación que se utilizará para autenticar la contraseña de este usuario.", + "AuthProviderHelp": "Seleccione un proveedor de autenticación para ser utilizado para autenticar la contraseña de este usuario.", "CriticRating": "Valoración crítica", "DefaultSubtitlesHelp": "Los subtítulos se cargan según los indicadores predeterminados y forzados en los metadatos incrustados. Las preferencias de idioma se consideran cuando hay varias opciones disponibles.", "Dislike": "No me gusta", From adbc5f3885e9d282cb29f2d93b53ed332202edc5 Mon Sep 17 00:00:00 2001 From: millallo Date: Tue, 18 Aug 2020 06:43:56 +0000 Subject: [PATCH 122/285] Translated using Weblate (Italian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/it/ --- src/strings/it.json | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/src/strings/it.json b/src/strings/it.json index cb73ea2cdb..f84fa8e613 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -190,7 +190,7 @@ "ErrorAddingMediaPathToVirtualFolder": "C'è stato un errore durante l'aggiunta del percorso. Per favore controlla che il percorso sia valido, e che Jellyfin abbia l'accesso alla posizione indicata.", "ErrorAddingTunerDevice": "Si è verificato un errore durante l'aggiunta del sintonizzatore. Si prega di assicurarsi che sia accessibile e riprovare.", "ErrorAddingXmlTvFile": "Si è verificato un errore durante l'accesso al file XMLTV. Si prega di assicurarsi che il file esista e riprovare.", - "ErrorDeletingItem": "Si è verificato un errore durante l'eliminazione dell'elemento da Jellyfin Server. Verifica che Jellyfin Server abbia accesso in scrittura sulla cartella multimediale e riprova.", + "ErrorDeletingItem": "Si è verificato un errore durante l'eliminazione dell'elemento dal server. Verifica che Jellyfin abbia accesso in scrittura sulla cartella multimediale e riprova.", "ErrorGettingTvLineups": "Si è verificato un errore durante il download delle formazioni TV. Assicurarsi che le vostre informazioni siano corrette e riprovare.", "ErrorStartHourGreaterThanEnd": "Il tempo della fine deve essere maggiore del tempo di avvio.", "ErrorPleaseSelectLineup": "Si prega di selezionare una scaletta e riprovare. Se non ci sono formazioni disponibili, si prega allora di verificare che il vostro nome utente, password, e il codice postale siano corretti.", @@ -348,7 +348,7 @@ "HeaderPreferredMetadataLanguage": "Lingua Preferita per i Metadati", "HeaderProfile": "Profilo", "HeaderProfileInformation": "Informazioni sul profilo", - "HeaderProfileServerSettingsHelp": "Questi valori controllano come il Server Jellyfin si presenterà ad un dispositivo.", + "HeaderProfileServerSettingsHelp": "Questi valori controllano come il server si presenterà ai client.", "HeaderRecentlyPlayed": "Visti di recente", "HeaderRecordingOptions": "Opzioni di Registrazione", "HeaderRecordingPostProcessing": "Post-processing Registrazione", @@ -365,13 +365,13 @@ "HeaderSecondsValue": "{0} Secondi", "HeaderSelectCertificatePath": "Seleziona il percorso del Certificato", "HeaderSelectMetadataPath": "Selezionare Percorso Metadati", - "HeaderSelectMetadataPathHelp": "Sfoglia o inserire il percorso in cui vuoi archiviare i metadati. La cartella deve essere scrivibile.", + "HeaderSelectMetadataPathHelp": "Sfoglia o inserisci il percorso da usare per archiviare i metadati. La cartella deve essere scrivibile.", "HeaderSelectPath": "Seleziona Percorso", "HeaderSelectServer": "Scegli Server", "HeaderSelectServerCachePath": "Seleziona percorso Cache Server", "HeaderSelectServerCachePathHelp": "Sfoglia o immetti il percorso da utilizzare per i file di cache server. La cartella deve essere scrivibile.", "HeaderSelectTranscodingPath": "Selezionare Percorso Temporaneo Transcodifica", - "HeaderSelectTranscodingPathHelp": "Sfoglia o immettere il percorso da utilizzare per la transcodifica dei file temporanei. La cartella deve essere scrivibile.", + "HeaderSelectTranscodingPathHelp": "Sfoglia o inserisci il percorso da utilizzare per la transcodifica dei file. La cartella deve essere scrivibile.", "HeaderSendMessage": "Invia un messaggio", "HeaderSeriesOptions": "Impostazioni Serie TV", "HeaderSeriesStatus": "Stato Serie TV", @@ -418,8 +418,8 @@ "HttpsRequiresCert": "Per abilitare le connessioni sicure, dovrai fornire un certificato SSL affidabile, come Let's Encrypt. Per favore o fornisci un certificato, o disabilita le connessioni sicure.", "Identify": "Identifica", "Images": "Immagini", - "ImportFavoriteChannelsHelp": "Se abilitata, solo i canali che sono contrassegnati come preferiti sul dispositivo di sintonizzazione verranno importati.", - "ImportMissingEpisodesHelp": "Se abilitato, le informazioni relative agli episodi mancanti saranno importate nel database di Jellyfin e mostrate all'interno di Serie e Stagioni. Questo può causare scansioni della libreria più lente.", + "ImportFavoriteChannelsHelp": "Solo i canali che sono contrassegnati come preferiti sul dispositivo di sintonizzazione verranno importati.", + "ImportMissingEpisodesHelp": "Le informazioni relative agli episodi mancanti saranno importate nel database e mostrate all'interno di Serie e Stagioni. Questo può causare scansioni della libreria più lente.", "InstallingPackage": "Installazione di {0} (versione {1})", "InstantMix": "Mix istantaneo", "ItemCount": "{0} elementi", @@ -448,14 +448,14 @@ "LabelAppName": "Nome app", "LabelAppNameExample": "Esempio: Sickbeart, Sonarr", "LabelArtists": "Artisti:", - "LabelArtistsHelp": "Separa valori multipli usando ;", + "LabelArtistsHelp": "Separa più artisti usando il simbolo ;", "LabelAudioLanguagePreference": "Lingua audio preferita:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Aggiorna automaticamente i metadati da Internet:", "LabelBindToLocalNetworkAddress": "Assegna ad indirizzo di rete locale:", - "LabelBindToLocalNetworkAddressHelp": "Opzionale. Sovrascrivere l'indirizzo IP locale per associare il server http a. Se lasciato vuoto, il server verrà associato a tutti gli indirizzi disponibili. Modificare questo valore richiede di riavviare Jellyfin Server.", + "LabelBindToLocalNetworkAddressHelp": "Sovrascrive l'indirizzo IP locale del server HTTP. Se lasciato vuoto, il server verrà associato a tutti gli indirizzi disponibili. Modificare questo valore richiede il riavvio.", "LabelBirthDate": "Data di nascita:", "LabelBirthYear": "Anno di nascita:", - "LabelBlastMessageInterval": "Intervallo messaggi di presenza (secondi)", + "LabelBlastMessageInterval": "Intervallo messaggi di presenza", "LabelBlastMessageIntervalHelp": "Determina la durata in secondi fra i messaggi \"blast alive\".", "LabelBlockContentWithTags": "Blocco degli elementi con le etichette:", "LabelBurnSubtitles": "Applica sottotitoli:", @@ -474,13 +474,13 @@ "LabelCustomCertificatePath": "Percorso personalizzato certificato SSL:", "LabelCustomCertificatePathHelp": "Percorso del file PKCS #12 contenente il certificato e la chiave private per abilitare il supporto TLS in un dominio personalizzato.", "LabelCustomCss": "CSS Personalizzato:", - "LabelCustomCssHelp": "Applica il tuo stile personale all'interfaccia web.", + "LabelCustomCssHelp": "Applica il tuo stile personalizzato all'interfaccia web.", "LabelCustomDeviceDisplayName": "Nome da visualizzare:", "LabelCustomDeviceDisplayNameHelp": "Fornire un nome di visualizzazione personalizzato o lasciare vuoto per utilizzare il nome riportato dal dispositivo.", "LabelCustomRating": "Voto personalizzato:", "LabelDateAdded": "Aggiunto il:", "LabelDateAddedBehavior": "Data di comportamento per i nuovi contenuti:", - "LabelDateAddedBehaviorHelp": "Se un valore di metadati è presente sarà sempre utilizzato prima una di queste opzioni.", + "LabelDateAddedBehaviorHelp": "Se un valore di metadati è presente sarà sempre utilizzato prima di una di queste opzioni.", "LabelDateTimeLocale": "Data locale:", "LabelDay": "Giorno:", "LabelDeathDate": "Anno di morte:", @@ -509,8 +509,8 @@ "LabelEnableAutomaticPortMapHelp": "Automaticamente inoltra le porte pubbliche del router sul quelle locali del server tramite UPnP. Potrebbe non funzionare con alcuni modelli di router. I cambiamenti non saranno applicati fino ad il riavvio del server.", "LabelEnableBlastAliveMessages": "Invia segnale di presenza", "LabelEnableBlastAliveMessagesHelp": "Attivare questa opzione se il server non viene rilevato in modo affidabile da altri dispositivi UPnP in rete.", - "LabelEnableDlnaClientDiscoveryInterval": "Intervallo di ricerca dispositivi (secondi)", - "LabelEnableDlnaClientDiscoveryIntervalHelp": "Determina la durata in secondi tra le ricerche SSDP effettuate da Jellyfin.", + "LabelEnableDlnaClientDiscoveryInterval": "Intervallo di ricerca dei client", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "Determina la durata in secondi tra le ricerche SSDP.", "LabelEnableDlnaDebugLogging": "Abilita il debug del DLNA", "LabelEnableDlnaDebugLoggingHelp": "Crea file di grandi dimensioni e dovrà essere usato solo quando necessario per risolvere problemi.", "LabelEnableDlnaPlayTo": "Abilita DLNA su", @@ -519,7 +519,7 @@ "LabelEnableDlnaServerHelp": "Consente ai dispositivi UPnP nella tua rete di sfogliare i contenuti e riprodurli.", "LabelEnableHardwareDecodingFor": "Abilita la decodifica hardware per:", "LabelEnableRealtimeMonitor": "Abilita monitoraggio in tempo reale", - "LabelEnableRealtimeMonitorHelp": "Le modifiche saranno applicate immediatamente, sui file system supportati.", + "LabelEnableRealtimeMonitorHelp": "Le modifiche saranno applicate immediatamente sui file system supportati.", "LabelEnableSingleImageInDidlLimit": "Limitato a singola immagine incorporata", "LabelEnableSingleImageInDidlLimitHelp": "Alcuni dispositivi non renderanno correttamente se più immagini sono incorporati all'interno didl.", "LabelEndDate": "Data di fine:", @@ -1405,7 +1405,7 @@ "LabelChromecastVersion": "Versione Chromecast", "LabelRequireHttpsHelp": "Se selezionata, il server reindirizzerà tutte le richieste HTTP a HTTPS. Vale solo se il sever è configurato per l'ascolto in HTTPS.", "LabelRequireHttps": "Richiede HTTPS", - "LabelEnableHttpsHelp": "Abilita il server all'ascolto sulla porta HTTPS configurata. Il certificato deve essere configurato e valido per l'abilitazione.", + "LabelEnableHttpsHelp": "Ascolta sulla porta HTTPS configurata. Deve essere fornito un certificato valido per l'abilitazione.", "LabelEnableHttps": "Abilita HTTPS", "HeaderServerAddressSettings": "Configurazione Indirizzo Server", "HeaderRemoteAccessSettings": "Configurazione Access Remoto", From 89f07432ceee0ce74df4111dfdfc5185298fedb4 Mon Sep 17 00:00:00 2001 From: millallo Date: Tue, 18 Aug 2020 07:02:29 +0000 Subject: [PATCH 123/285] Translated using Weblate (Italian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/it/ --- src/strings/it.json | 37 +++++++++++++++++++------------------ 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/src/strings/it.json b/src/strings/it.json index f84fa8e613..85dc28e5b3 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -534,7 +534,7 @@ "LabelForgotPasswordUsernameHelp": "Inserisci il tuo nome utente, se te lo ricordi.", "LabelFormat": "Formato:", "LabelFriendlyName": "Nome Condiviso:", - "LabelServerNameHelp": "Questo nome è usato per identificare il server e avrà come default il nome del pc.", + "LabelServerNameHelp": "Questo nome è usato per identificare il server e avrà come default l'hostname del server.", "LabelGroupMoviesIntoCollections": "Raggruppa i film nelle collezioni", "LabelGroupMoviesIntoCollectionsHelp": "Quando si visualizzano le liste di film, quelli appartenenti ad una collezione saranno visualizzati come un elemento raggruppato.", "LabelH264Crf": "CRF di codifica H264:", @@ -544,7 +544,7 @@ "LabelHomeNetworkQuality": "Qualità della rete domestica:", "LabelHomeScreenSectionValue": "Pagina iniziale Sezione {0}:", "LabelHttpsPort": "Porta HTTPS locale:", - "LabelHttpsPortHelp": "Numero di porta TCP da associare al server HTTPS di Jellyfin.", + "LabelHttpsPortHelp": "Porta TCP da associare al server HTTPS.", "LabelIconMaxHeight": "Altezza icona massima:", "LabelIconMaxHeightHelp": "Risoluzione massima delle icone inviate tramite upnp:icon.", "LabelIconMaxWidth": "Larghezza massima icona:", @@ -572,7 +572,7 @@ "LabelLanguage": "Lingua:", "LabelLineup": "Allineare:", "LabelLocalHttpServerPortNumber": "Porta HTTP locale:", - "LabelLocalHttpServerPortNumberHelp": "Numero di porta TCP da associare al server HTTP di Jellyfin.", + "LabelLocalHttpServerPortNumberHelp": "Porta TCP da associare al server HTTP.", "LabelLockItemToPreventChanges": "Blocca questo elemento per impedire modifiche future", "LabelLoginDisclaimer": "Avviso Login:", "LabelLoginDisclaimerHelp": "Un messaggio che verrà visualizzato nella parte inferiore della pagina di accesso.", @@ -612,7 +612,7 @@ "LabelMovieCategories": "Categorie film:", "LabelMoviePrefix": "Prefisso film:", "LabelMoviePrefixHelp": "Se un prefisso viene applicato ai titoli di film, inseriscilo qui in modo che il server possa gestirlo correttamente.", - "LabelMovieRecordingPath": "Percorso di registrazione film (opzionale):", + "LabelMovieRecordingPath": "Percorso di registrazione film:", "LabelMusicStreamingTranscodingBitrate": "Musica trascodifica bitrate:", "LabelMusicStreamingTranscodingBitrateHelp": "Specifica il massimo bitrate per lo streaming musicale.", "LabelName": "Nome:", @@ -624,8 +624,8 @@ "LabelNumber": "Numero:", "LabelNumberOfGuideDays": "Numero di giorni per i quali scaricare i dati della guida:", "LabelNumberOfGuideDaysHelp": "Scaricando più giorni si avrà la possibilità di pianificare in anticipo più programmi e vedere più liste, ma il tempo di download si allungherà. 'Auto': MB sceglierà automaticamente in base al numero di canali.", - "LabelOptionalNetworkPath": "Cartella condivisa (Opzionale):", - "LabelOptionalNetworkPathHelp": "Se questa cartella è condivisa sulla rete, fornendo il percorso di condivisione di rete si può consentire alle applicazioni Jellyfin su altri dispositivi di accedere direttamente ai file multimediali. Ad esempio {0} oppure {1}.", + "LabelOptionalNetworkPath": "Cartella di rete condivisa:", + "LabelOptionalNetworkPathHelp": "Se questa cartella è condivisa sulla rete, fornendo il percorso di condivisione di rete si può consentire ai client su altri dispositivi di accedere direttamente ai file multimediali. Ad esempio {0} oppure {1}.", "LabelOriginalAspectRatio": "Aspetto originale:", "LabelOriginalTitle": "Titolo originale:", "LabelOverview": "Trama:", @@ -665,7 +665,7 @@ "LabelReleaseDate": "Data di uscita:", "LabelRemoteClientBitrateLimit": "Bitrate limite per lo streaming via internet (Mbps):", "LabelRemoteClientBitrateLimitHelp": "Un limite bitrate per-stream opzionale per tutti i dispositivi di rete. Ciò è utile per impedire ai dispositivi di richiedere un bitrate superiore a quello in grado di gestire la connessione a Internet. Questo può provocare un aumento del carico della CPU sul server per transcodificare i video in volo ad un bitrate inferiore.", - "LabelRuntimeMinutes": "Durata (minuti):", + "LabelRuntimeMinutes": "Durata:", "LabelSaveLocalMetadata": "Salva immagini nelle cartelle multimediali", "LabelSaveLocalMetadataHelp": "Il salvataggio di immagini direttamente nelle cartelle multimediali consentirà di tenerle in un posto dove possono essere facilmente modificati.", "LabelScheduledTaskLastRan": "Ultima esecuzione {0}, taking {1}.", @@ -677,7 +677,7 @@ "LabelSelectVersionToInstall": "Selezionare la versione da installare:", "LabelSendNotificationToUsers": "Invia notifiche a:", "LabelSerialNumber": "Numero di serie", - "LabelSeriesRecordingPath": "Percorso di registrazione serie TV (opzionale):", + "LabelSeriesRecordingPath": "Percorso di registrazione Serie TV:", "LabelSimultaneousConnectionLimit": "Limite stream simultanei:", "LabelSkipBackLength": "Durata salta indietro:", "LabelSkipForwardLength": "Durata salta avanti:", @@ -740,7 +740,7 @@ "LabelYoureDone": "Hai Finito!", "LabelZipCode": "Cap:", "LabelffmpegPath": "Percorso FFmpeg:", - "LabelffmpegPathHelp": "Il percorso all'applicazione ffmpeg, o alla cartella che la contiene.", + "LabelffmpegPathHelp": "Il percorso dell'applicazione ffmpeg o della cartella che la contiene.", "LanNetworksHelp": "Elenco separato da virgola di indirizzi IP o voci IP / maschera di rete per reti che saranno considerate sulla rete locale quando si applicano restrizioni di larghezza di banda. Se impostato, tutti gli altri indirizzi IP verranno considerati nella rete esterna e saranno soggetti alle limitazioni della larghezza di banda esterna. Se lasciato vuoto, solo la sottorete del server viene considerata nella rete locale.", "Large": "Grande", "LatestFromLibrary": "Ultimi {0}", @@ -786,13 +786,13 @@ "MessageConfirmProfileDeletion": "Sei sicuro di voler cancellare questo profilo?", "MessageConfirmRecordingCancellation": "Cancellare la registrazione?", "MessageConfirmRemoveMediaLocation": "Sei sicuro di voler rimuovere questa posizione?", - "MessageConfirmRestart": "Sei sicuro di voler riavviare il Server Jellyfin?", - "MessageConfirmRevokeApiKey": "Sei sicuro di voler revocare questa chiave api? La connessione dell'applicazione al Server Jellyfin terminerà immediatamente.", + "MessageConfirmRestart": "Sei sicuro di voler riavviare Jellyfin?", + "MessageConfirmRevokeApiKey": "Sei sicuro di voler revocare questa chiave API? La connessione dell'applicazione al Server terminerà immediatamente.", "MessageConfirmShutdown": "Sei sicuro di voler spegnere il server?", "MessageContactAdminToResetPassword": "Si prega di contattare l'amministratore di sistema per reimpostare la password.", "MessageCreateAccountAt": "Crea un account a {0}", "MessageDeleteTaskTrigger": "Sei sicuro di voler cancellare questo evento?", - "MessageDirectoryPickerBSDInstruction": "Per BSD, potrebbe essere necessario per configurare le unità all'interno della vostra prigione FreeNAS al fine di permettere ricamato accedervi.", + "MessageDirectoryPickerBSDInstruction": "Per BSD, potrebbe essere necessario configurare le unità all'interno della vostra FreeNAS Jail per permettere A Jellyfin di accedervi.", "MessageDirectoryPickerLinuxInstruction": "Per Linux su Arch Linux, CentOS, Debian, Fedora, openSUSE o Ubuntu, è necessario concedere all'utente del servizio almeno l'accesso alle posizioni di archiviazione.", "MessageDownloadQueued": "Scaricamento programmato.", "MessageEnablingOptionLongerScans": "L'abilitazione di questa opzione può rallentare significativamente le scansioni della libreria.", @@ -814,7 +814,7 @@ "MessagePleaseEnsureInternetMetadata": "Assicurarsi che il download dei metadati Internet sia abilitato.", "MessagePleaseWait": "Per favore attendi. La procedura potrebbe impiegare qualche minuto.", "MessagePluginConfigurationRequiresLocalAccess": "Per configurare questo plugin si prega di accedere al proprio server locale direttamente.", - "MessagePluginInstallDisclaimer": "I plugin creati dai membri della comunità Jellyfin sono un ottimo modo per migliorare l'esperienza di Jellyfin con funzionalità e vantaggi aggiuntivi. Prima di installare, si prega di notare gli effetti che possono avere sul tuo server Jellyfin, come le scansioni più lunghe della libreria, l'elaborazione di sfondo aggiuntiva e la stabilità del sistema diminuita.", + "MessagePluginInstallDisclaimer": "I plugin creati dai membri della comunità sono un ottimo modo per migliorare l'esperienza con funzionalità e vantaggi aggiuntivi. Prima di installarli, si prega di notare gli effetti che possono avere sul tuo Server, come le scansioni più lunghe della libreria, l'elaborazione di sfondo aggiuntiva e la stabilità del sistema diminuita.", "MessageReenableUser": "Guarda in basso per ri-abilitare", "MessageSettingsSaved": "Settaggi salvati.", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "I seguenti percorsi ai file multimediali saranno rimossi dalla tua libreria:", @@ -822,7 +822,7 @@ "MessageUnsetContentHelp": "Il contenuto verrà visualizzato come pianura cartelle. Per ottenere i migliori risultati utilizzare il gestore di metadati per impostare i tipi di contenuto di sottocartelle.", "MessageYouHaveVersionInstalled": "Attualmente hai la versione {0} installato.", "MetadataManager": "Gestisci Metadati", - "MetadataSettingChangeHelp": "Modificare le impostazioni dei metadati influenzerà il nuovo contenuto aggiunto in avanti. Per aggiornare i contenuti esistenti, aprire la schermata dei dettagli e fare click sul pulsante di aggiornamento oppure eseguire aggiornamenti di massa utilizzando il gestore di metadati.", + "MetadataSettingChangeHelp": "Modificare le impostazioni dei metadati influenzerà i futuri contenuti. Per aggiornare i contenuti esistenti, aprire la schermata dei dettagli e fare click sul pulsante di aggiornamento oppure eseguire aggiornamenti di massa utilizzando il gestore di metadati.", "MinutesAfter": "minuti dopo", "MinutesBefore": "minuti prima", "Monday": "Lunedì", @@ -866,7 +866,7 @@ "OptionAllowLinkSharingHelp": "Solo le pagine web contenente informazioni sui media sono condivise. I file media non vengono mai condivisi pubblicamente. Le condivisioni scadono dopo {0} giorni.", "OptionAllowManageLiveTv": "Consenti la gestione delle registrazioni TV", "OptionAllowMediaPlayback": "Consenti la riproduzione dei media", - "OptionAllowMediaPlaybackTranscodingHelp": "Limitare l'accesso alla transcodifica può causare errori di riproduzione nelle applicazioni Jellyfin a causa di formati multimediali non supportati.", + "OptionAllowMediaPlaybackTranscodingHelp": "Limitare l'accesso alla transcodifica può causare errori di riproduzione a causa di formati multimediali non supportati.", "OptionAllowRemoteControlOthers": "Consenti il controllo remoto di altri utenti", "OptionAllowRemoteSharedDevices": "Consenti il controllo remoto dei dispositivi condivisi", "OptionAllowRemoteSharedDevicesHelp": "I dispositivi DLNA sono considerati condivisi fino a quando un utente non inizia a controllarli.", @@ -878,7 +878,7 @@ "OptionAscending": "Crescente", "OptionAuto": "Automatico", "OptionAutomaticallyGroupSeries": "Fondi automaticamente le serie sparse su più cartelle", - "OptionAutomaticallyGroupSeriesHelp": "Se abilitato, le serie distribuite in più cartelle di questa libreria saranno automaticamente combinate in un'unica serie.", + "OptionAutomaticallyGroupSeriesHelp": "Le Serie TV distribuite su più cartelle di questa libreria saranno automaticamente combinate in un'unica Serie TV.", "OptionBlockBooks": "Libri", "OptionBlockChannelContent": "Contenuto di Canali Internet", "OptionBlockLiveTvChannels": "Canali TV in onda", @@ -897,7 +897,7 @@ "OptionDatePlayed": "Visto il", "OptionDescending": "Decrescente", "OptionDisableUser": "Disabilita questo utente", - "OptionDisableUserHelp": "Se disabilitato, il server non sarà disponibile per questo utente. Le connessioni esistenti verranno terminate.", + "OptionDisableUserHelp": "Il server non sarà disponibile per questo utente. Le connessioni esistenti verranno terminate.", "OptionDislikes": "Non mi piace", "OptionDisplayFolderView": "Visualizza cartelle come normali cartelle dei media", "OptionDisplayFolderViewHelp": "Visualizza le cartelle accanto alle librerie multimediali. Questo può essere utile se si desidera avere una vista di cartelle semplici.", @@ -1468,5 +1468,6 @@ "Writers": "Scrittori", "ClearQueue": "Svuota la coda", "StopPlayback": "Interrompi riproduzione", - "LabelUnstable": "Unstable" + "LabelUnstable": "Unstable", + "NextTrack": "Prossima traccia" } From 9bbf0500ee3dd75237a4cb1686395e7fe289d242 Mon Sep 17 00:00:00 2001 From: millallo Date: Tue, 18 Aug 2020 07:51:09 +0000 Subject: [PATCH 124/285] Translated using Weblate (Italian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/it/ --- src/strings/it.json | 39 ++++++++++++++++++++++----------------- 1 file changed, 22 insertions(+), 17 deletions(-) diff --git a/src/strings/it.json b/src/strings/it.json index 85dc28e5b3..9465c488cb 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -419,7 +419,7 @@ "Identify": "Identifica", "Images": "Immagini", "ImportFavoriteChannelsHelp": "Solo i canali che sono contrassegnati come preferiti sul dispositivo di sintonizzazione verranno importati.", - "ImportMissingEpisodesHelp": "Le informazioni relative agli episodi mancanti saranno importate nel database e mostrate all'interno di Serie e Stagioni. Questo può causare scansioni della libreria più lente.", + "ImportMissingEpisodesHelp": "Le informazioni relative agli episodi mancanti saranno importate nel database e mostrate all'interno di Serie e Stagioni. Questo può causare scansioni della libreria più lente.", "InstallingPackage": "Installazione di {0} (versione {1})", "InstantMix": "Mix istantaneo", "ItemCount": "{0} elementi", @@ -904,7 +904,7 @@ "OptionDownloadBackImage": "Indietro", "OptionDownloadDiscImage": "Disco", "OptionDownloadImagesInAdvance": "Scarica preventivamente le immagini", - "OptionDownloadImagesInAdvanceHelp": "Di default, la maggior parte delle immagini vengono scaricate solo quando richieste da un'applicazione Jellyfin. Abilita questa opzione per scaricare tutte le immagini in anticipo, quando nuovi file multimediali vengono importati. Ciò può causare scansioni delle librerie molto più lunghe.", + "OptionDownloadImagesInAdvanceHelp": "Di default, la maggior parte delle immagini vengono scaricate solo quando richieste dai client. Abilita questa opzione per scaricare tutte le immagini in anticipo, quando nuovi file multimediali vengono importati. Ciò può causare scansioni delle librerie molto più lunghe.", "OptionDownloadMenuImage": "Menù", "OptionDownloadPrimaryImage": "Locandina", "OptionDownloadThumbImage": "Foto", @@ -933,7 +933,7 @@ "OptionHlsSegmentedSubtitles": "HLS sottotitoli segmentati", "OptionHomeVideos": "Foto", "OptionIgnoreTranscodeByteRangeRequests": "Ignorare le richieste di intervallo di byte di trascodifica", - "OptionIgnoreTranscodeByteRangeRequestsHelp": "Se abilitata, queste richieste saranno onorate, ma ignorano l'intervallo di byte.", + "OptionIgnoreTranscodeByteRangeRequestsHelp": "Queste richieste saranno onorate, ma ignoreranno l'intervallo di byte.", "OptionImdbRating": "Voto IMDB", "OptionLikes": "Mi piace", "OptionMissingEpisode": "Episodi mancanti", @@ -943,9 +943,9 @@ "OptionOnInterval": "Su intervallo", "OptionParentalRating": "Classificazione per genitori", "OptionPlainStorageFolders": "Visualizzare tutte le cartelle come normali cartelle di archiviazione", - "OptionPlainStorageFoldersHelp": "Se abilitato, tutte le cartelle sono rappresentate in DIDL come \"object.container.storageFolder\" invece che di tipo più specifico, come \"object.container.person.musicArtist\".", + "OptionPlainStorageFoldersHelp": "Tutte le cartelle sono rappresentate in DIDL come \"object.container.storageFolder\" invece che di tipo più specifico, come \"object.container.person.musicArtist\".", "OptionPlainVideoItems": "Mostra tutti i video come normali file video", - "OptionPlainVideoItemsHelp": "Se attivato, tutti i video sono rappresentati in DIDL come \"object.item.videoItem\" invece che di tipo più specifico, come \"object.item.videoItem.movie\".", + "OptionPlainVideoItemsHelp": "Tutti i video sono rappresentati in DIDL come \"object.item.videoItem\" invece che di tipo più specifico, come \"object.item.videoItem.movie\".", "OptionPlayCount": "Riproduzioni", "OptionPlayed": "Visto", "OptionPremiereDate": "Data della prima", @@ -959,7 +959,7 @@ "OptionResumable": "Interrotto", "OptionRuntime": "Durata", "OptionSaveMetadataAsHidden": "Salvare i metadati e le immagini come file nascosti", - "OptionSaveMetadataAsHiddenHelp": "La modifica di questo si applicherà ai nuovi metadati che verranno salvati in avanti. I file di metadati esistenti verranno aggiornati la prossima volta che vengono salvati da Jellyfin Server.", + "OptionSaveMetadataAsHiddenHelp": "La modifica di questo si applicherà ai nuovi metadati che verranno salvati in avanti. I file di metadati esistenti verranno aggiornati la prossima volta che verranno salvati dal server.", "OptionSpecialEpisode": "Speciali", "OptionSubstring": "Sottostringa", "OptionTrackName": "Titolo Traccia", @@ -998,9 +998,9 @@ "PleaseAddAtLeastOneFolder": "Per favore aggiungi almeno una cartella alla raccolta cliccando sul pulsante Aggiungi.", "PleaseConfirmPluginInstallation": "Per favore premi OK per confermare che hai letto quanto precede e che vuoi procedere all'installazione del plug-in.", "PleaseEnterNameOrId": "Per favore inserisci un nome o un ID esterno.", - "PleaseRestartServerName": "Per favore riavvia Jellyfin Server - {0}.", + "PleaseRestartServerName": "Per favore riavvia Jellyfin su {0}.", "PleaseSelectTwoItems": "Seleziona almeno due elementi.", - "MessagePluginInstalled": "Il plugin è stato installato correttamente. Il server Jellyfin dovrà essere riavviato affinché le modifiche abbiano effetto.", + "MessagePluginInstalled": "Il plugin è stato installato correttamente. Il server dovrà essere riavviato affinché le modifiche abbiano effetto.", "PreferEmbeddedTitlesOverFileNames": "Preferisci titoli integrati ai nomi dei file", "PreferEmbeddedTitlesOverFileNamesHelp": "Determina il titolo predefinito usato quando non sono disponibili metadati locali o da Internet.", "Premiere": "Prima visione", @@ -1025,7 +1025,7 @@ "RecordingScheduled": "Registrazione pianificata.", "Recordings": "Registrazioni", "Refresh": "Aggiorna", - "RefreshDialogHelp": "I Metadati sono aggiornati in base alle impostazioni ed ai servizi Internet abilitati nel Pannello di Controllo del Server Jellyfin.", + "RefreshDialogHelp": "I Metadati sono aggiornati in base alle impostazioni ed ai servizi Internet abilitati nel Pannello di Controllo.", "RefreshMetadata": "Aggiorna metadati", "RefreshQueued": "Aggiornamento programmato.", "ReleaseDate": "Data di uscita", @@ -1063,10 +1063,10 @@ "SeriesRecordingScheduled": "Registrazione serie TV pianificata.", "SeriesSettings": "Impostazioni Serie TV", "SeriesYearToPresent": "{0} - Oggi", - "ServerNameIsRestarting": "Jellyfin Server - {0} si sta riavviando.", - "ServerNameIsShuttingDown": "Jellyfin Server - {0} si sta arrestando.", - "ServerRestartNeededAfterPluginInstall": "Il server Jellyfin dovrà essere riavviato dopo l'installazione di un plugin.", - "ServerUpdateNeeded": "Questo server Jellyfin deve essere aggiornato. Per scaricare l'ultima versione vai su {0}", + "ServerNameIsRestarting": "Il Server su {0} si sta riavviando.", + "ServerNameIsShuttingDown": "Il Server su {0} si sta arrestando.", + "ServerRestartNeededAfterPluginInstall": "Jellyfin dovrà essere riavviato dopo l'installazione di un plugin.", + "ServerUpdateNeeded": "Questo server deve essere aggiornato. Per scaricare l'ultima versione vai su {0}", "Settings": "Impostazioni", "SettingsSaved": "Settaggi salvati.", "SettingsWarning": "La modifica di questi valori può causare problemi di instabilità o di connettività. Se si verificano problemi, si consiglia di modificarli all'impostazione predefinita.", @@ -1262,7 +1262,7 @@ "OptionProtocolHls": "Streaming in Diretta HTTP", "OptionDownloadArtImage": "Art", "OptionMax": "Massimo", - "PasswordResetProviderHelp": "Scegli un Provider Reset Password da utilizzare quando questo utente ne richiede il reset", + "PasswordResetProviderHelp": "Scegli un provider di reset password da utilizzare quando questo utente ne richiederà il reset.", "PlaybackData": "Dati di Riproduzione", "TagsValue": "Tag: {0}", "Whitelist": "Lista bianca", @@ -1383,7 +1383,7 @@ "LastSeen": "Visto l'ultima volta {0}", "PersonRole": "nel ruolo di {0}", "ListPaging": "{0}-{1} di {2}", - "WriteAccessRequired": "Jellyfin Server richiede il permesso di scrittura su questa cartella. Verificare l'autorizzazione e riprovare.", + "WriteAccessRequired": "Jellyfin richiede il permesso di scrittura su questa cartella. Verificare l'autorizzazione e riprovare.", "PathNotFound": "Percorso non trovato. Assicurarsi che sia valido e riprovare.", "YadifBob": "YADIF Bob", "Yadif": "YADIF", @@ -1444,7 +1444,7 @@ "HeaderSyncPlaySelectGroup": "Unisciti a un gruppo", "EnableDetailsBannerHelp": "Mostra il banner nella parte superiore della pagina di dettaglio dell'elemento.", "EnableDetailsBanner": "Banner Dettagli", - "EnableBlurHashHelp": "Le immagini ancora da caricare saranno mostrate inizialmente sfocate", + "EnableBlurHashHelp": "Le immagini ancora da caricare saranno mostrate inizialmente sfocate.", "EnableBlurHash": "Abilita i segnaposto sfocati per le immagini", "ShowMore": "Mostra di più", "ShowLess": "Mostra meno", @@ -1469,5 +1469,10 @@ "ClearQueue": "Svuota la coda", "StopPlayback": "Interrompi riproduzione", "LabelUnstable": "Unstable", - "NextTrack": "Prossima traccia" + "NextTrack": "Prossima traccia", + "Preview": "Anteprima", + "LabelSubtitleVerticalPosition": "Posizione verticale:", + "PreviousTrack": "Traccia precedente", + "MessageGetInstalledPluginsError": "Errore durante la generazione della lista dei plugin installati.", + "MessagePluginInstallError": "Errore durante l'installazione del plugin." } From 5bf7fa6117bbbbc294f93399caf55c39600c113e Mon Sep 17 00:00:00 2001 From: welpher Date: Tue, 18 Aug 2020 18:06:40 +0800 Subject: [PATCH 125/285] Update zh-cn.json MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit collection prefer 集合 --- src/strings/zh-cn.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/strings/zh-cn.json b/src/strings/zh-cn.json index 8fe4e14565..5ea0a6a4b0 100644 --- a/src/strings/zh-cn.json +++ b/src/strings/zh-cn.json @@ -231,7 +231,7 @@ "HeaderActiveRecordings": "正在录制的节目", "HeaderActivity": "活动", "HeaderAddScheduledTaskTrigger": "添加触发", - "HeaderAddToCollection": "加入收藏", + "HeaderAddToCollection": "加入集合", "HeaderAddToPlaylist": "添加到播放列表", "HeaderAddUpdateImage": "添加/更新 图片", "HeaderAddUser": "添加用户", @@ -458,7 +458,7 @@ "LabelCertificatePassword": "证书密码:", "LabelCertificatePasswordHelp": "如果你的证书需要密码,请在此输入它。", "LabelChannels": "频道:", - "LabelCollection": "收藏:", + "LabelCollection": "集合:", "LabelCommunityRating": "公众评分:", "LabelContentType": "内容类型:", "LabelCorruptedFrames": "损坏的帧:", @@ -532,8 +532,8 @@ "LabelFormat": "格式:", "LabelFriendlyName": "好记的名称:", "LabelServerNameHelp": "此名称将用做服务器名,默认使用服务器的主机名。", - "LabelGroupMoviesIntoCollections": "批量添加电影到收藏", - "LabelGroupMoviesIntoCollectionsHelp": "显示电影列表时,同一收藏的电影将显示为一个分组。", + "LabelGroupMoviesIntoCollections": "批量添加电影到集合", + "LabelGroupMoviesIntoCollectionsHelp": "显示电影列表时,同一集合的电影将显示为一个分组。", "LabelH264Crf": "H264 CRF 编码质量等级:", "LabelEncoderPreset": "H264 和 H265 编码预设:", "LabelHardwareAccelerationType": "硬件加速:", @@ -846,7 +846,7 @@ "MySubtitles": "我的字幕", "Name": "名称", "Never": "从不", - "NewCollection": "新收藏", + "NewCollection": "新集合", "NewCollectionHelp": "“收藏”允许你为电影和其他媒体库内容创建个性化分组。", "NewCollectionNameExample": "例如:星球大战收藏", "NewEpisodes": "新剧集", @@ -1053,7 +1053,7 @@ "RefreshQueued": "列队已刷新。", "ReleaseDate": "发行日期", "RememberMe": "记住我", - "RemoveFromCollection": "从收藏中移除", + "RemoveFromCollection": "从集合中移除", "RemoveFromPlaylist": "从播放列表中移除", "Repeat": "重播", "RepeatAll": "全部循环", From ac9177bd9e3ec85a1e4faa7d515025e463795c92 Mon Sep 17 00:00:00 2001 From: Hilman Maulana Date: Tue, 18 Aug 2020 10:29:21 +0000 Subject: [PATCH 126/285] Translated using Weblate (Indonesian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/id/ --- src/strings/id.json | 94 ++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 84 insertions(+), 10 deletions(-) diff --git a/src/strings/id.json b/src/strings/id.json index 8bf0d7eafd..006e0cd06e 100644 --- a/src/strings/id.json +++ b/src/strings/id.json @@ -39,7 +39,7 @@ "HeaderFavoriteEpisodes": "Episode Favorit", "HeaderFavoriteShows": "Tayangan Favorit", "HeaderAlbumArtists": "Album Artis", - "HeaderContinueWatching": "Masih Melihat", + "HeaderContinueWatching": "Lanjutkan Menonton", "Artists": "Artis", "AllowMediaConversion": "Izinkan konversi media", "AllEpisodes": "Semua episode", @@ -65,7 +65,7 @@ "ConfirmDeleteItems": "Penghapusan item-item ini akan menghapus baik pada sistem berkas maupun pustaka media Anda. Apakah Anda yakin untuk melanjutkan?", "ConfirmDeleteItem": "Penghapusan item ini akan menghapus baik pada sistem berkas maupun pustaka media Anda. Apakah Anda yakin untuk melanjutkan?", "ConfirmDeleteImage": "Hapus gambar?", - "ConfigureDateAdded": "Atur cara penentuan penambahan tanggal dalam dasbor Peladen Jellyfin lewat pengaturan Pustaka", + "ConfigureDateAdded": "Konfigurasikan bagaimana tanggal ditambahkan ditentukan di dasbor di bawah pengaturan pustaka", "Composer": "Komposer", "CommunityRating": "Peringkat komunitas", "ChannelNumber": "Nomor saluran", @@ -128,7 +128,7 @@ "Browse": "Jelajah", "BoxRear": "Kotak (belakang)", "Box": "Kotak", - "BookLibraryHelp": "Buku audio dan teks didukung. Perhatikan {0}panduan penamaan buku{1}.", + "BookLibraryHelp": "Audio dan buku teks didukung. Tinjau {0} panduan penamaan buku {1}.", "Blacklist": "Daftar hitam", "BirthPlaceValue": "Tempat lahir: {0}", "BirthLocation": "Tempat lahir", @@ -137,25 +137,25 @@ "Backdrops": "Latar belakang", "Backdrop": "Latar belakang", "Auto": "Auto", - "AuthProviderHelp": "Pilih Penyedia Autentikasi yang akan digunakan untuk mengautentikasi kata sandi pengguna ini.", + "AuthProviderHelp": "Pilih penyedia otentikasi yang akan digunakan untuk mengautentikasi kata sandi pengguna ini.", "Audio": "Audio", "AspectRatio": "Rasio perbandingan", "Ascending": "Urutan naik", "AsManyAsPossible": "Sebanyak mungkin", "Art": "Seni", - "AroundTime": "Sekitar {0}", + "AroundTime": "Sekitar", "Anytime": "Kapanpun", "AnyLanguage": "Bahasa apapun", "AlwaysPlaySubtitlesHelp": "Talop yang cocok dengan preferensi bahasa akan dimuat tanpa memperhatikan bahasa suaranya.", - "AlwaysPlaySubtitles": "Selalu putar talop", + "AlwaysPlaySubtitles": "Selalu Mainkan", "AllowedRemoteAddressesHelp": "Daftar yang dipisahkan dengan koma dari alamat IP atau catatan netmask untuk jaringan yang akan diperbolehkan untuk tersambuh dari jarak jauh. Jika dibiarkan kosong, seluruh alamat jarak jauh akan diperbolehkan.", "AllowRemoteAccessHelp": "Jika centang dihapus, semua koneksi jarak jauh akan diblokir.", - "AllowRemoteAccess": "Izinkan koneksi jarak jauh ke Peladen Jellyfin ini.", + "AllowRemoteAccess": "Izinkan koneksi jarak jauh ke server ini.", "AllowOnTheFlySubtitleExtraction": "Izinkan ekstraksi talop dengan cepat", "AllowMediaConversionHelp": "Izinkan atau tolak akses ke fitur konversi media.", "AllLibraries": "Semua pustaka", "AllLanguages": "Semua bahasa", - "AllComplexFormats": "Semua format kompleks (ASS, SSA, VOBSUB, PGS, SUB/IDK, dll.)", + "AllComplexFormats": "Semua Format Kompleks (ASS, SSA, VOBSUB, PGS, SUB, IDX,…)", "Channels": "Saluran", "Aired": "Disiarkan", "AirDate": "Tanggal siaran", @@ -175,6 +175,80 @@ "Alerts": "Peringatan", "AddedOnValue": "Ditambahkan {0}", "AllowFfmpegThrottling": "Transcode Tercekik", - "AllowOnTheFlySubtitleExtractionHelp": "Subtitle yang melekat di video dapat dikeluarkan dan dikirimkan kepada klien dalam bentuk text biasa dengan tujuan untuk menghalau terjadinya transcoding pada video. Pada beberapa system ini membutuhkan waktu yang lama dan dapat menyebabkan video playback menjadi terhenti dikarenakan proses ekstraksi. Non-aktifkan fitur ini untuk membiarkan subtitle langsung dilekatkan kepada video dengan cara transcoding ketika klien tidak mendukung fitur ini.", - "ButtonSyncPlay": "SyncPlay" + "AllowOnTheFlySubtitleExtractionHelp": "Subtitel yang disematkan dapat diekstrak dari video dan dikirim ke klien dalam teks biasa, untuk membantu mencegah transcoding video. Pada beberapa sistem, ini dapat memakan waktu lama dan menyebabkan pemutaran video terhenti selama proses ekstraksi. Nonaktifkan ini untuk menyematkan subtitle yang disematkan dengan transcoding video ketika mereka tidak didukung secara native oleh perangkat klien.", + "ButtonSyncPlay": "SyncPlay", + "EnablePhotosHelp": "Gambar akan terdeteksi dan ditampilkan bersama file media lainnya.", + "EnablePhotos": "Tampilkan foto", + "EnableNextVideoInfoOverlayHelp": "Di akhir video, tampilkan info tentang video berikutnya yang akan muncul di daftar putar saat ini.", + "EnableNextVideoInfoOverlay": "Tampilkan info video berikutnya selama pemutaran", + "EnableHardwareEncoding": "Aktifkan pengkodean perangkat keras", + "EnableExternalVideoPlayersHelp": "Menu pemutar eksternal akan ditampilkan saat memulai pemutaran video.", + "EnableExternalVideoPlayers": "Pemutar video eksternal", + "EnableDisplayMirroring": "Tampilan mirroring", + "EnableDecodingColorDepth10Vp9": "Aktifkan 10-Bit decoding hardware untuk VP9", + "EnableDecodingColorDepth10Hevc": "Aktifkan 10-Bit decoding hardware untuk HEVC", + "EnableColorCodedBackgrounds": "Latar belakang berkode warna", + "EnableCinemaMode": "Mode bioskop", + "EnableBackdropsHelp": "Menampilkan latar belakang di latar belakang beberapa halaman saat menjelajahi pustaka.", + "EditSubtitles": "Edit subtitle", + "EditMetadata": "Edit metadata", + "EditImages": "Edit Gambar", + "Edit": "Edit", + "EasyPasswordHelp": "Kode pin mudah Anda digunakan untuk akses offline di klien yang didukung dan juga dapat digunakan untuk masuk ke jaringan dengan mudah.", + "DropShadow": "Drop Shadow", + "DrmChannelsNotImported": "Saluran dengan DRM tidak akan diimpor.", + "DownloadsValue": "{0} unduhan", + "Download": "Unduh", + "Down": "Turun", + "DoNotRecord": "Jangan merekam", + "DisplayModeHelp": "Pilih gaya tata letak yang Anda inginkan untuk antarmuka.", + "DisplayMissingEpisodesWithinSeasonsHelp": "Ini juga harus diaktifkan untuk pustaka TV di konfigurasi server.", + "DisplayMissingEpisodesWithinSeasons": "Tampilkan episode yang hilang dalam season", + "DisplayInOtherHomeScreenSections": "Tayangkan di bagian layar beranda seperti media terbaru dan lanjutkan menonton", + "Display": "Tampilan", + "DisplayInMyMedia": "Tampilan di layar beranda", + "Dislike": "Benci", + "Disconnect": "Memutuskan", + "Disc": "CD", + "Disabled": "Matikan", + "DirectPlaying": "Bermain langsung", + "DirectStreaming": "Streaming langsung", + "DirectStreamHelp2": "Streaming langsung menggunakan daya pemrosesan yang sangat sedikit dengan penurunan kualitas video yang minimal.", + "DirectStreamHelp1": "Media kompatibel dengan perangkat terkait resolusi dan jenis media (H.264, AC3, dll), tetapi dalam wadah file yang tidak kompatibel (mkv, avi, wmv, dll). Video akan dikemas ulang dengan cepat sebelum dikirim ke perangkat.", + "DeviceAccessHelp": "Ini hanya berlaku untuk perangkat yang dapat diidentifikasi secara unik dan tidak akan mencegah akses browser. Memfilter akses perangkat pengguna akan mencegah mereka menggunakan perangkat baru hingga disetujui di sini.", + "DetectingDevices": "Mendeteksi perangkat", + "Desktop": "Desktop", + "Descending": "Menurun", + "DeleteUserConfirmation": "Apakah Anda yakin ingin menghapus pengguna ini?", + "DeleteUser": "Hapus pengguna", + "DeleteMedia": "Hapus media", + "DeleteImageConfirmation": "Anda yakin ingin menghapus gambar ini?", + "DeleteImage": "Hapus Gambar", + "DeleteDeviceConfirmation": "Anda yakin ingin menghapus perangkat ini? Ini akan muncul kembali saat pengguna login lagi.", + "DeinterlaceMethodHelp": "Pilih metode deinterlacing yang akan digunakan saat melakukan transcoding konten interlace.", + "DefaultSubtitlesHelp": "Subtitel dimuat berdasarkan bendera default dan paksa dalam metadata yang disematkan. Preferensi bahasa dipertimbangkan ketika beberapa opsi tersedia.", + "CustomDlnaProfilesHelp": "Buat profil khusus untuk menargetkan perangkat baru atau mengganti profil sistem.", + "ColorTransfer": "Transfer warna", + "ColorSpace": "Ruang warna", + "ColorPrimaries": "Warna primer", + "ClientSettings": "Pengaturan Klien", + "CinemaModeConfigurationHelp": "Mode bioskop menghadirkan pengalaman teater langsung ke ruang tamu Anda dengan kemampuan untuk memutar trailer dan pengantar khusus sebelum fitur utama.", + "ChangingMetadataImageSettingsNewContent": "Perubahan pada metadata atau setelan pengunduhan karya seni hanya akan berlaku untuk konten baru yang ditambahkan ke perpustakaan Anda. Untuk menerapkan perubahan pada judul yang ada, Anda perlu menyegarkan metadatanya secara manual.", + "CancelSeries": "Batalkan serial", + "ButtonUninstall": "Copot pemasangan", + "ButtonTogglePlaylist": "Daftar Putar", + "ButtonSubtitles": "Subtitle", + "ButtonSplit": "Membagi", + "ButtonRestart": "Muat ulang", + "ButtonPreviousTrack": "Lagu sebelumnya", + "ButtonNextTrack": "Lagu berikutnya", + "ButtonManualLogin": "Login Manual", + "BurnSubtitlesHelp": "Menentukan apakah server harus membakar subtitle saat melakukan transcoding video. Menghindari ini akan sangat meningkatkan kinerja. Pilih Otomatis untuk membakar format berbasis gambar (VOBSUB, PGS, SUB, IDX,…) dan subtitle ASS atau SSA tertentu.", + "BoxSet": "Set Kotak", + "AskAdminToCreateLibrary": "Minta administrator untuk membuat pustaka.", + "Artist": "Artis", + "AllowFfmpegThrottlingHelp": "Saat transcode atau remux cukup jauh dari posisi pemutaran saat ini, jeda prosesnya sehingga akan mengkonsumsi lebih sedikit sumber daya. Ini paling berguna saat menonton tanpa sering mencari. Matikan ini jika Anda mengalami masalah pemutaran.", + "AllowHWTranscodingHelp": "Izinkan tuner untuk mentranskode aliran dengan cepat. Ini dapat membantu mengurangi transcoding yang dibutuhkan oleh server.", + "AlbumArtist": "Album Artis", + "Album": "Album" } From ffe71f31b7ec58bc1cd9c103ec3a0164179f7294 Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Tue, 18 Aug 2020 12:12:26 +0000 Subject: [PATCH 127/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index d31fb8872e..faeccab647 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -1489,5 +1489,6 @@ "LastSeen": "கடைசியாக பார்த்தது {0}", "PersonRole": "{0} என", "ListPaging": "{0} - {2} இன் {1}", - "WriteAccessRequired": "ஜெல்லிஃபினுக்கு இந்த கோப்புறையில் எழுத அணுகல் தேவை. எழுதும் அணுகலை உறுதிசெய்து மீண்டும் முயற்சிக்கவும்." + "WriteAccessRequired": "ஜெல்லிஃபினுக்கு இந்த கோப்புறையில் எழுத அணுகல் தேவை. எழுதும் அணுகலை உறுதிசெய்து மீண்டும் முயற்சிக்கவும்.", + "PlaybackRate": "பின்னணி வீதம்" } From 161e1aff2ffb086b3ed9811dd95511e2a284c968 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Tue, 18 Aug 2020 20:08:49 +0200 Subject: [PATCH 128/285] Fix tabs always focusing the active tab in TV layout --- src/elements/emby-tabs/emby-tabs.js | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/src/elements/emby-tabs/emby-tabs.js b/src/elements/emby-tabs/emby-tabs.js index db7ad56f5d..e9966189bb 100644 --- a/src/elements/emby-tabs/emby-tabs.js +++ b/src/elements/emby-tabs/emby-tabs.js @@ -12,7 +12,7 @@ import 'scrollStyles'; const buttonClass = 'emby-tab-button'; const activeButtonClass = buttonClass + '-active'; - function setActiveTabButton(tabs, newButton, oldButton, animate) { + function setActiveTabButton(tabs, newButton) { newButton.classList.add(activeButtonClass); } @@ -77,7 +77,7 @@ import 'scrollStyles'; const previousIndex = current ? parseInt(current.getAttribute('data-index')) : null; - setActiveTabButton(tabs, tabButton, current, true); + setActiveTabButton(tabs, tabButton); const index = parseInt(tabButton.getAttribute('data-index')); @@ -101,6 +101,15 @@ import 'scrollStyles'; } } + function onFocusOut(e) { + const parentContainer = e.target.parentNode; + const previousFocus = parentContainer.querySelector('.lastFocused'); + if (previousFocus) { + previousFocus.classList.remove('lastFocused'); + } + e.target.classList.add('lastFocused'); + } + function initScroller(tabs) { if (tabs.scroller) { return; @@ -146,13 +155,18 @@ import 'scrollStyles'; dom.addEventListener(this, 'click', onClick, { passive: true }); + + dom.addEventListener(this, 'focusout', onFocusOut); }; - EmbyTabs.focus = function () { - const selected = this.querySelector('.' + activeButtonClass); + EmbyTabs.focus = function onFocusIn() { + const selectedTab = this.querySelector('.' + activeButtonClass); + const lastFocused = this.querySelector('.lastFocused'); - if (selected) { - focusManager.focus(selected); + if (lastFocused) { + focusManager.focus(lastFocused); + } else if (selectedTab) { + focusManager.focus(selectedTab); } else { focusManager.autoFocus(this); } From 61a7dba96497101f19d0d693ffb9b8909aef4413 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Tue, 18 Aug 2020 20:31:10 +0200 Subject: [PATCH 129/285] Fix sonarcloud warning --- src/elements/emby-tabs/emby-tabs.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/elements/emby-tabs/emby-tabs.js b/src/elements/emby-tabs/emby-tabs.js index e9966189bb..7e16e31dd4 100644 --- a/src/elements/emby-tabs/emby-tabs.js +++ b/src/elements/emby-tabs/emby-tabs.js @@ -12,7 +12,7 @@ import 'scrollStyles'; const buttonClass = 'emby-tab-button'; const activeButtonClass = buttonClass + '-active'; - function setActiveTabButton(tabs, newButton) { + function setActiveTabButton(newButton) { newButton.classList.add(activeButtonClass); } @@ -77,7 +77,7 @@ import 'scrollStyles'; const previousIndex = current ? parseInt(current.getAttribute('data-index')) : null; - setActiveTabButton(tabs, tabButton); + setActiveTabButton(tabButton); const index = parseInt(tabButton.getAttribute('data-index')); @@ -192,7 +192,7 @@ import 'scrollStyles'; const newTabButton = tabButtons[currentIndex]; if (newTabButton) { - setActiveTabButton(this, newTabButton, current, false); + setActiveTabButton(newTabButton); } } @@ -240,7 +240,7 @@ import 'scrollStyles'; })); const currentTabButton = tabButtons[current]; - setActiveTabButton(tabs, tabButtons[selected], currentTabButton, false); + setActiveTabButton(tabButtons[selected]); if (current !== selected && currentTabButton) { currentTabButton.classList.remove(activeButtonClass); From 7334430e688de4e77f4c72df84e93c55b6f89b55 Mon Sep 17 00:00:00 2001 From: Mister Rajoy Date: Tue, 18 Aug 2020 21:35:47 +0200 Subject: [PATCH 130/285] Refactor --- src/controllers/itemDetails/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/controllers/itemDetails/index.js b/src/controllers/itemDetails/index.js index 56c6f5eda6..85085263cf 100644 --- a/src/controllers/itemDetails/index.js +++ b/src/controllers/itemDetails/index.js @@ -1937,7 +1937,7 @@ import 'emby-select'; function onMoreCommandsClick() { var button = this; var selectedItem = currentItem; - apiClient.getItem(apiClient.getCurrentUserId(),view.querySelector('.selectSource').value).then(function (item) { + apiClient.getItem(apiClient.getCurrentUserId(), view.querySelector('.selectSource').value).then(function (item) { selectedItem = item; apiClient.getCurrentUser().then(function (user) { From d5ebfe4addd7ebbe78959e9fe0b68f9bdcb7fe8e Mon Sep 17 00:00:00 2001 From: Bill Thornton Date: Tue, 18 Aug 2020 16:33:37 -0400 Subject: [PATCH 131/285] Remove horizontal margins on guide --- src/components/guide/guide.css | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/components/guide/guide.css b/src/components/guide/guide.css index 3b776e6dde..4373f697ec 100644 --- a/src/components/guide/guide.css +++ b/src/components/guide/guide.css @@ -70,6 +70,10 @@ contain: strict; } +.programContainer.emby-scroller { + margin: 0; +} + .channelPrograms { height: 4.42em; contain: strict; From e673a27d912860704f2f759bbcec36961bd6afd3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcin=20Woli=C5=84ski?= Date: Tue, 18 Aug 2020 20:12:09 +0000 Subject: [PATCH 132/285] Translated using Weblate (Polish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pl/ --- src/strings/pl.json | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/strings/pl.json b/src/strings/pl.json index cb23cf40e6..3e896ce232 100644 --- a/src/strings/pl.json +++ b/src/strings/pl.json @@ -124,7 +124,7 @@ "ColorTransfer": "Transfer kolorów", "CommunityRating": "Ocena społeczności", "Composer": "Kompozytor", - "ConfigureDateAdded": "Skonfiguruj sposób określania dodanej daty na pulpicie nawigacyjnym w ustawieniach biblioteki.", + "ConfigureDateAdded": "Skonfiguruj sposób określania dodanej daty na pulpicie nawigacyjnym w ustawieniach biblioteki", "ConfirmDeleteImage": "Usunąć obraz?", "ConfirmDeleteItem": "Usunięcie tej pozycji usunie ją zarówno z systemu plików jak i z biblioteki mediów. Czy chcesz kontynuować?", "ConfirmDeleteItems": "Usunięcie tej pozycji usunie ją zarówno z systemu plików jak i z biblioteki mediów. Czy chcesz kontynuować?", @@ -477,7 +477,7 @@ "LabelAppName": "Nazwa Aplikacji", "LabelAppNameExample": "Przykład: Sickbeard, Sonarr", "LabelArtists": "Wykonawcy:", - "LabelArtistsHelp": "Oddziel wielu artystów średnikiem \";\"", + "LabelArtistsHelp": "Oddziel wielu artystów średnikiem \";\".", "LabelAudio": "Dźwięk", "LabelAudioLanguagePreference": "Preferowany język ścieżki dźwiękowej:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Odświeżaj automatycznie metadane z Internetu:", @@ -832,7 +832,7 @@ "MessageConfirmRecordingCancellation": "Anulować nagranie?", "MessageConfirmRemoveMediaLocation": "Czy na pewno chcesz usunąć tę lokalizację?", "MessageConfirmRestart": "Czy na pewno chcesz uruchomić Jellyfin ponownie?", - "MessageConfirmRevokeApiKey": "Czy na pewno chcesz unieważnić kluczAPI? Połączenia aplikacji z serwerem zostaną natychmiastowo zakończone.", + "MessageConfirmRevokeApiKey": "Czy na pewno chcesz unieważnić klucz API? Połączenia aplikacji z serwerem zostaną natychmiastowo zakończone.", "MessageConfirmShutdown": "Czy na pewno chcesz zamknąć serwer?", "MessageContactAdminToResetPassword": "W celu wyczyszczenia hasła. skontaktuj się z administratorem systemu.", "MessageCreateAccountAt": "Utwórz konto na {0}", @@ -1383,7 +1383,7 @@ "StopPlayback": "Zatrzymaj odtwarzanie", "ButtonPlayer": "Odtwarzacz", "ButtonCast": "Obsada", - "EnableBlurHashHelp": "Obrazy które wciąż się ładują zostaną zastąpione rozmazanym symbolem", + "EnableBlurHashHelp": "Obrazy które wciąż się ładują zostaną zastąpione rozmazanym symbolem.", "EnableBlurHash": "Włącz rozmazane zamienniki dla obrazów", "UnsupportedPlayback": "Jellyfin nie może odszyfrować zawartości zabezpieczonej przy pomocy DRM, ale spróbuje pomimo tego. Niektóre pliki mogą pojawiać się jako zupełnie czarne z powodu szyfrowania lub innych nie wspieranych funkcji jak np. interaktywne tytuły.", "OnApplicationStartup": "Przy starcie aplikacji", @@ -1475,5 +1475,6 @@ "SubtitleVerticalPositionHelp": "Numer wiersza, w którym pojawia się tekst. Liczby dodatnie wskazują z góry na dół. Liczby ujemne wskazują od dołu do góry.", "LabelSubtitleVerticalPosition": "Pozycja pionowa:", "MessageGetInstalledPluginsError": "Wystąpił błąd podczas pobierania listy aktualnie zainstalowanych wtyczek.", - "MessagePluginInstallError": "Wystąpił błąd podczas instalacji wtyczki." + "MessagePluginInstallError": "Wystąpił błąd podczas instalacji wtyczki.", + "PlaybackRate": "Szybkość odtwarzania" } From 468f8601b933705c6a19ae1d3ae567e0cc77d849 Mon Sep 17 00:00:00 2001 From: nextlooper42 Date: Tue, 18 Aug 2020 21:13:57 +0000 Subject: [PATCH 133/285] Translated using Weblate (Slovak) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sk/ --- src/strings/sk.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/sk.json b/src/strings/sk.json index 7aef8eb515..4df5f1a07d 100644 --- a/src/strings/sk.json +++ b/src/strings/sk.json @@ -1475,5 +1475,6 @@ "MessageGetInstalledPluginsError": "Pri načítaní zoznamu nainštalovaných zásuvných modulov došlo k chybe.", "MessagePluginInstallError": "Pri inštalácií zásuvného modulu došlo k chybe.", "NextTrack": "Ďalšia", - "LabelUnstable": "Nestabilný" + "LabelUnstable": "Nestabilný", + "PlaybackRate": "Rýchlosť prehrávania" } From 2499833ef1555cbc2c78d7e75fb5297a38320864 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 19 Aug 2020 00:59:19 +0000 Subject: [PATCH 134/285] Bump hls.js from 0.14.8 to 0.14.9 Bumps [hls.js](https://github.com/video-dev/hls.js) from 0.14.8 to 0.14.9. - [Release notes](https://github.com/video-dev/hls.js/releases) - [Changelog](https://github.com/video-dev/hls.js/blob/master/docs/release-process.md) - [Commits](https://github.com/video-dev/hls.js/compare/v0.14.8...v0.14.9) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index a6f3e8724d..1c6d7e7486 100644 --- a/package.json +++ b/package.json @@ -63,7 +63,7 @@ "fast-text-encoding": "^1.0.3", "flv.js": "^1.5.0", "headroom.js": "^0.11.0", - "hls.js": "^0.14.8", + "hls.js": "^0.14.9", "howler": "^2.2.0", "intersection-observer": "^0.11.0", "jellyfin-apiclient": "^1.4.1", diff --git a/yarn.lock b/yarn.lock index b507238470..9ca57b0f53 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5455,10 +5455,10 @@ hex-color-regex@^1.1.0: resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== -hls.js@^0.14.8: - version "0.14.8" - resolved "https://registry.yarnpkg.com/hls.js/-/hls.js-0.14.8.tgz#c2c6ca7005524c81eece316c2a4a199258bd0590" - integrity sha512-4fh8k/sl1SmYXsT4Om8AY5fKa5tUUtAxup2sffrSMh5MNk4Kt4FOZxbjqTGL5VwkroY1oJ9twSciNQNFbPA/WQ== +hls.js@^0.14.9: + version "0.14.9" + resolved "https://registry.yarnpkg.com/hls.js/-/hls.js-0.14.9.tgz#e85be87d94385ed9947155716578f7c568957d15" + integrity sha512-5j1ONTvIzcIxCtg2eafikFbZ3b/9fDhR6u871LmK7jZ44/Qdc2G4xaSBCwcVK61gz7kTyiobaAhB++2M4J58rQ== dependencies: eventemitter3 "^4.0.3" url-toolkit "^2.1.6" From bfb1ef1673a8e1da7f8e78a1396bb16022d7298c Mon Sep 17 00:00:00 2001 From: NunzioArdi Date: Wed, 19 Aug 2020 10:20:14 +0000 Subject: [PATCH 135/285] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index 4bab5a6179..f6037770be 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -1475,5 +1475,6 @@ "SubtitleVerticalPositionHelp": "Numéro de ligne où le texte apparaît. Un nombre positif compte les lignes de haut en bas. Un nombre négatif, de bas en haut.", "LabelSubtitleVerticalPosition": "Position verticale :", "MessageGetInstalledPluginsError": "Une erreur est survenue lors de la récupération de la liste des extensions installées.", - "MessagePluginInstallError": "Une erreur est survenue durant l'installation de l'extension." + "MessagePluginInstallError": "Une erreur est survenue durant l'installation de l'extension.", + "PlaybackRate": "Vitesse de lecture" } From 009a6d48c5a6ee7afe29050fb6b385b8747a7174 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pedro=20Dur=C3=A1n?= Date: Wed, 19 Aug 2020 08:28:39 +0000 Subject: [PATCH 136/285] Translated using Weblate (Spanish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/es/ --- src/strings/es.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/es.json b/src/strings/es.json index 09e5f5fcf4..69c19d8dce 100644 --- a/src/strings/es.json +++ b/src/strings/es.json @@ -451,7 +451,7 @@ "LabelDay": "Día:", "LabelDeathDate": "Fecha de muerte:", "LabelDefaultUser": "Usuario por defecto:", - "LabelDefaultUserHelp": "Determina de qúe usuario se utilizará su biblioteca de medios para mostrarla por defecto en los dipositivos conectados. Esto puede cambiarse para cada dispositivo mediante el uso de perfiles.", + "LabelDefaultUserHelp": "Determina de qué usuario se utilizará su biblioteca de medios para mostrarla por defecto en los dipositivos conectados. Esto puede cambiarse para cada dispositivo mediante el uso de perfiles.", "LabelDeviceDescription": "Descripción del dispositivo", "LabelDidlMode": "Modo DIDL:", "LabelDiscNumber": "Número de disco:", From 5e1d4edd87cd4c0fbd42af0c1a6bdbcfba7698a5 Mon Sep 17 00:00:00 2001 From: Bill Thornton Date: Wed, 19 Aug 2020 13:02:09 -0400 Subject: [PATCH 137/285] Set background color on blurhash image load --- src/components/images/imageLoader.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/components/images/imageLoader.js b/src/components/images/imageLoader.js index 39dc6c2622..3dc91ffa91 100644 --- a/src/components/images/imageLoader.js +++ b/src/components/images/imageLoader.js @@ -87,6 +87,7 @@ import 'css!./style'; requestAnimationFrame(() => { if (elem.tagName !== 'IMG') { elem.style.backgroundImage = "url('" + url + "')"; + elem.style.backgroundColor = '#fff'; } else { elem.setAttribute('src', url); } @@ -108,6 +109,7 @@ import 'css!./style'; if (elem.tagName !== 'IMG') { url = elem.style.backgroundImage.slice(4, -1).replace(/"/g, ''); elem.style.backgroundImage = 'none'; + elem.style.backgroundColor = null; } else { url = elem.getAttribute('src'); elem.setAttribute('src', ''); From e5198a6328d9880e30776fcb72af3d6a09a8872e Mon Sep 17 00:00:00 2001 From: Bill Thornton Date: Wed, 19 Aug 2020 13:36:29 -0400 Subject: [PATCH 138/285] Skip adding background color for non-blurhashable items --- src/components/images/imageLoader.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/components/images/imageLoader.js b/src/components/images/imageLoader.js index 3dc91ffa91..17ec55d7ac 100644 --- a/src/components/images/imageLoader.js +++ b/src/components/images/imageLoader.js @@ -87,7 +87,9 @@ import 'css!./style'; requestAnimationFrame(() => { if (elem.tagName !== 'IMG') { elem.style.backgroundImage = "url('" + url + "')"; - elem.style.backgroundColor = '#fff'; + if (!elem.classList.contains('non-blurhashable')) { + elem.style.backgroundColor = '#fff'; + } } else { elem.setAttribute('src', url); } From f4a329433efe9c0cca5bd0b694cc586386620566 Mon Sep 17 00:00:00 2001 From: Bill Thornton Date: Wed, 19 Aug 2020 13:47:16 -0400 Subject: [PATCH 139/285] Only add background color to blurhashed items --- src/components/images/imageLoader.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/images/imageLoader.js b/src/components/images/imageLoader.js index 17ec55d7ac..b0ffecd64f 100644 --- a/src/components/images/imageLoader.js +++ b/src/components/images/imageLoader.js @@ -87,7 +87,7 @@ import 'css!./style'; requestAnimationFrame(() => { if (elem.tagName !== 'IMG') { elem.style.backgroundImage = "url('" + url + "')"; - if (!elem.classList.contains('non-blurhashable')) { + if (elem.classList.contains('blurhashed')) { elem.style.backgroundColor = '#fff'; } } else { From c32f83a19ed6f43fbc9e10a0f364610a0fe56087 Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Thu, 13 Aug 2020 00:15:02 +0300 Subject: [PATCH 140/285] Reorder CSS loading --- src/scripts/site.js | 14 +++++++++----- src/scripts/themeManager.js | 26 ++++++++++++++++++-------- 2 files changed, 27 insertions(+), 13 deletions(-) diff --git a/src/scripts/site.js b/src/scripts/site.js index 48a5044f5e..f1d24374e7 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -384,11 +384,15 @@ function initClient() { return response.text(); }) .then(function(css) { - // Inject the branding css as a dom element in body so it will take - // precedence over other stylesheets - var style = document.createElement('style'); - style.appendChild(document.createTextNode(css)); - document.body.appendChild(style); + let style = document.querySelector('#cssBranding'); + if (!style) { + // Inject the branding css as a dom element in body so it will take + // precedence over other stylesheets + style = document.createElement('style'); + style.id = 'cssBranding'; + document.body.appendChild(style); + } + style.textContent = css; }) .catch(function(err) { console.warn('Error applying custom css', err); diff --git a/src/scripts/themeManager.js b/src/scripts/themeManager.js index d61e9ef67e..03ca621749 100644 --- a/src/scripts/themeManager.js +++ b/src/scripts/themeManager.js @@ -1,13 +1,12 @@ import * as webSettings from 'webSettings'; -var themeStyleElement; +var themeStyleElement = document.querySelector('#cssTheme'); var currentThemeId; function unloadTheme() { var elem = themeStyleElement; if (elem) { - elem.parentNode.removeChild(elem); - themeStyleElement = null; + elem.removeAttribute('href'); currentThemeId = null; } } @@ -45,15 +44,26 @@ function setTheme(id) { var linkUrl = info.stylesheetPath; unloadTheme(); - var link = document.createElement('link'); - link.setAttribute('rel', 'stylesheet'); - link.setAttribute('type', 'text/css'); - link.onload = function () { + let link = themeStyleElement; + + if (!link) { + // Inject the theme css as a dom element in body so it will take + // precedence over other stylesheets + link = document.createElement('link'); + link.id = 'cssTheme'; + link.setAttribute('rel', 'stylesheet'); + link.setAttribute('type', 'text/css'); + document.body.appendChild(link); + } + + const onLoad = function (e) { + e.target.removeEventListener('load', onLoad); resolve(); }; + link.addEventListener('load', onLoad); + link.setAttribute('href', linkUrl); - document.head.appendChild(link); themeStyleElement = link; currentThemeId = info.themeId; }); From 53539f86c27d9e3a57a36d130ae6631066a93981 Mon Sep 17 00:00:00 2001 From: IR0NCaT Date: Wed, 19 Aug 2020 21:51:25 +0000 Subject: [PATCH 141/285] Translated using Weblate (Russian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ru/ --- src/strings/ru.json | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/strings/ru.json b/src/strings/ru.json index 28e47b7cc8..74c054c99b 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -221,7 +221,7 @@ "FolderTypeMovies": "Фильмы", "FolderTypeMusic": "Музыка", "FolderTypeMusicVideos": "Музыкальные видео", - "FolderTypeTvShows": "ТВ-передачи", + "FolderTypeTvShows": "Сериалы", "FolderTypeUnset": "Разнородное содержание", "Folders": "Папки", "FormatValue": "Формат: {0}", @@ -1251,7 +1251,7 @@ "OptionResElement": "res-элемент", "AuthProviderHelp": "Выберите поставщика аутентификации, который будет использоваться для аутентификации пароля этого пользователя.", "HeaderFavoriteMovies": "Избранные фильмы", - "HeaderFavoriteShows": "Избранные передачи", + "HeaderFavoriteShows": "Избранные сериалы", "HeaderFavoriteEpisodes": "Избранные эпизоды", "HeaderFavoriteAlbums": "Избранные альбомы", "HeaderFavoriteArtists": "Избранные исполнители", @@ -1441,5 +1441,6 @@ "SubtitleVerticalPositionHelp": "Номер строки, где появляется текст. Положительные числа означают сверху вниз. Отрицательные числа означают снизу вверх.", "Preview": "Предварительный просмотр", "MessageGetInstalledPluginsError": "Произошла ошибка при получении списка установленных плагинов.", - "MessagePluginInstallError": "Во время установки плагина произошла ошибка." + "MessagePluginInstallError": "Во время установки плагина произошла ошибка.", + "PlaybackRate": "Рейтинг" } From 4419ee6f4ec286add266bb65ddb8929aa2d2fe14 Mon Sep 17 00:00:00 2001 From: Adam Bokor Date: Wed, 19 Aug 2020 18:18:49 +0000 Subject: [PATCH 142/285] Translated using Weblate (Hungarian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/hu/ --- src/strings/hu.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/hu.json b/src/strings/hu.json index 2217ceb7df..c49b1ffad3 100644 --- a/src/strings/hu.json +++ b/src/strings/hu.json @@ -1441,5 +1441,6 @@ "Preview": "Előnézet", "LabelSubtitleVerticalPosition": "Függőleges pozíció:", "MessageGetInstalledPluginsError": "Hiba történt a jelenleg telepített bővítmények lekérdezése során.", - "MessagePluginInstallError": "Hiba történt a bővítmény telepítése során." + "MessagePluginInstallError": "Hiba történt a bővítmény telepítése során.", + "PlaybackRate": "Lejátszási sebesség" } From dc162aca95711b119ddb1e331b86cd3666dd0467 Mon Sep 17 00:00:00 2001 From: Ian Walton Date: Wed, 19 Aug 2020 19:19:23 -0400 Subject: [PATCH 143/285] Use strict equality check. Co-authored-by: Matjaz Zavski --- src/components/remotecontrol/remotecontrol.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/remotecontrol/remotecontrol.js b/src/components/remotecontrol/remotecontrol.js index 6a1355047c..ed463f67fe 100644 --- a/src/components/remotecontrol/remotecontrol.js +++ b/src/components/remotecontrol/remotecontrol.js @@ -332,8 +332,8 @@ export default function () { buttonVisible(context.querySelector('.btnNextTrack'), item != null); buttonVisible(context.querySelector('.btnPreviousTrack'), item != null); if (layoutManager.mobile) { - const playingVideo = playbackManager.isPlayingVideo() && item != null; - const playingAudio = !playbackManager.isPlayingVideo() && item != null; + const playingVideo = playbackManager.isPlayingVideo() && item !== null; + const playingAudio = !playbackManager.isPlayingVideo() && item !== null; buttonVisible(context.querySelector('.btnRepeat'), playingAudio); buttonVisible(context.querySelector('.btnShuffleQueue'), playingAudio); buttonVisible(context.querySelector('.btnRewind'), playingVideo); From 670d42cb9cc0b2a4a3d96950362a54d4cb48b82e Mon Sep 17 00:00:00 2001 From: Moritz Date: Thu, 20 Aug 2020 10:30:17 +0000 Subject: [PATCH 144/285] Translated using Weblate (German) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/de/ --- src/strings/de.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/de.json b/src/strings/de.json index 896830849c..756aa99ab4 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -1441,5 +1441,6 @@ "Preview": "Vorschau", "LabelSubtitleVerticalPosition": "Vertikale Position:", "MessageGetInstalledPluginsError": "Beim Abrufen der Liste der derzeit installierten Plugins ist ein Fehler aufgetreten.", - "MessagePluginInstallError": "Bei der Installation des Plugins ist ein Fehler aufgetreten." + "MessagePluginInstallError": "Bei der Installation des Plugins ist ein Fehler aufgetreten.", + "PlaybackRate": "Wiedergabegeschwindigkeit" } From a0f302816df7866e1aee3ae2aeaee469e54f9e77 Mon Sep 17 00:00:00 2001 From: Hilman Maulana Date: Thu, 20 Aug 2020 10:20:29 +0000 Subject: [PATCH 145/285] Translated using Weblate (Indonesian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/id/ --- src/strings/id.json | 66 +++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 61 insertions(+), 5 deletions(-) diff --git a/src/strings/id.json b/src/strings/id.json index aa2b8a92ee..fed8694ca2 100644 --- a/src/strings/id.json +++ b/src/strings/id.json @@ -25,7 +25,7 @@ "ThisWizardWillGuideYou": "Panduan ini akan memandu Anda melalui proses setup. Untuk memulai, silahkan pilih bahasa yang Anda gunakan.", "UserProfilesIntro": "Jellyfin mendukung profil pengguna, memungkinkan setiap pengguna memiliki tampilan mereka sendiri, kondisi pemutaran dan pengawasan orang tua.", "WelcomeToProject": "Selamat datang di Jellyfin!", - "WizardCompleted": "Itu semua yang kami butuhkan saat ini. Jellyfin sudah memulai mengkoleksi informasi pustaka media. Lihatlah beberapa aplikasi kami, kemudian klik Selesai untuk menuju ke Dashboard Server", + "WizardCompleted": "Hanya itu yang kami butuhkan untuk saat ini. Jellyfin mulai mengumpulkan informasi tentang perpustakaan media Anda. Lihat beberapa aplikasi kami, lalu klik Selesai untuk melihat Dasbor.", "Collections": "Koleksi", "Folders": "Folder", "Albums": "Album", @@ -82,7 +82,7 @@ "ButtonSettings": "Pengaturan", "ButtonSend": "Kirim", "ButtonSelectView": "Pilih tampilan", - "ButtonSelectServer": "Pilih Peladen", + "ButtonSelectServer": "Pilih Server", "ButtonSelectDirectory": "Pilih Direktori", "ButtonScanAllLibraries": "Pindai Semua Pustaka", "ButtonResume": "Lanjutkan", @@ -105,14 +105,14 @@ "ButtonFullscreen": "Layar penuh", "ButtonForgotPassword": "Lupa Kata Sandi", "ButtonEditOtherUserPreferences": "Ubah profil, gambar, dan preferensi pribadi pengguna ini.", - "ButtonChangeServer": "Ubah Peladen", + "ButtonChangeServer": "Ubah Server", "ButtonCancel": "Batalkan", "ButtonBack": "Kembali", "ButtonAudioTracks": "Trek Audio", "ButtonArrowRight": "Kanan", "ButtonArrowLeft": "Kiri", "ButtonAddUser": "Tambah Pengguna", - "ButtonAddServer": "Tambah Peladen", + "ButtonAddServer": "Tambah Server", "ButtonAddScheduledTaskTrigger": "Tambah Pemicu", "ButtonAddMediaLibrary": "Tambah Pustaka Media", "ButtonAddImage": "Tamba gambar", @@ -242,5 +242,61 @@ "AllowFfmpegThrottlingHelp": "Saat transcode atau remux cukup jauh dari posisi pemutaran saat ini, jeda prosesnya sehingga akan mengkonsumsi lebih sedikit sumber daya. Ini paling berguna saat menonton tanpa sering mencari. Matikan ini jika Anda mengalami masalah pemutaran.", "AllowHWTranscodingHelp": "Izinkan tuner untuk mentranskode aliran dengan cepat. Ini dapat membantu mengurangi transcoding yang dibutuhkan oleh server.", "AlbumArtist": "Album Artis", - "Album": "Album" + "Album": "Album", + "ButtonRevoke": "Mencabut", + "TabServer": "Server", + "ServerUpdateNeeded": "Server ini perlu diperbarui. Untuk mengunduh versi terbaru, kunjungi {0}", + "ServerRestartNeededAfterPluginInstall": "Jellyfin perlu direstart setelah menginstal plugin.", + "ServerNameIsShuttingDown": "Server di {0} sedang dimatikan.", + "ServerNameIsRestarting": "Server di {0} sedang memulai ulang.", + "MessagePluginInstalled": "Plugin berhasil diinstal. Server perlu dimulai ulang agar perubahan diterapkan.", + "PleaseRestartServerName": "Harap mulai ulang Jellyfin di {0}.", + "PlaybackErrorNoCompatibleStream": "Klien ini tidak kompatibel dengan media dan server tidak mengirimkan format media yang kompatibel.", + "OptionSaveMetadataAsHiddenHelp": "Mengubah ini akan diterapkan ke metadata baru yang disimpan di masa mendatang. File metadata yang ada akan diperbarui pada saat disimpan oleh server.", + "OptionReportByteRangeSeekingWhenTranscoding": "Laporkan bahwa server mendukung pencarian byte saat melakukan transcoding", + "OptionDisableUserHelp": "Server tidak akan mengizinkan koneksi apa pun dari pengguna ini. Koneksi yang ada akan dihentikan secara tiba-tiba.", + "OptionAllowUserToManageServer": "Izinkan pengguna ini untuk mengelola server", + "MessageUnableToConnectToServer": "Kami tidak dapat terhubung ke server yang dipilih sekarang. Harap pastikan itu berjalan dan coba lagi.", + "MessagePluginInstallDisclaimer": "Plugin yang dibuat oleh anggota komunitas adalah cara terbaik untuk meningkatkan pengalaman Anda dengan fitur dan manfaat tambahan. Sebelum menginstal, perhatikan efeknya pada server Anda, seperti pemindaian perpustakaan yang lebih lama, pemrosesan latar belakang tambahan, dan penurunan stabilitas sistem.", + "MessagePluginConfigurationRequiresLocalAccess": "Untuk mengkonfigurasi plugin ini, harap masuk ke server lokal Anda secara langsung.", + "MessagePlayAccessRestricted": "Pemutaran konten ini saat ini dibatasi. Silakan hubungi administrator server Anda untuk informasi lebih lanjut.", + "MessageNoServersAvailable": "Tidak ada server yang ditemukan menggunakan penemuan server otomatis.", + "LabelRepositoryNameHelp": "Nama khusus untuk membedakan repositori ini dari yang lain yang ditambahkan ke server Anda.", + "MessageForgotPasswordFileCreated": "File berikut telah dibuat di server Anda dan berisi petunjuk tentang cara melanjutkan :", + "MessageConfirmShutdown": "Apakah Anda yakin ingin mematikan server?", + "MessageConfirmRevokeApiKey": "Apakah Anda yakin ingin mencabut kunci API ini? Koneksi aplikasi ke server ini akan tiba-tiba dihentikan.", + "LanNetworksHelp": "Daftar alamat IP atau entri IP / netmask yang dipisahkan koma untuk jaringan yang akan dipertimbangkan di jaringan lokal saat memberlakukan pembatasan bandwidth. Jika disetel, semua alamat IP lainnya akan dianggap berada di jaringan eksternal dan tunduk pada pembatasan bandwidth eksternal. Jika dibiarkan kosong, hanya subnet server yang dianggap berada di jaringan lokal.", + "DashboardServerName": "Server : {0}", + "LabelUserRemoteClientBitrateLimitHelp": "Ganti nilai global default yang ditetapkan di pengaturan pemutaran server.", + "LabelTranscodingTempPathHelp": "Tentukan jalur kustom untuk file transcode yang disajikan ke klien. Biarkan kosong untuk menggunakan default server.", + "LabelSyncPlayTimeOffset": "Pengimbangan waktu dengan server :", + "LabelServerName": "Nama Server :", + "LabelServerHostHelp": "192.168.1.100:8096 atau https://myserver.com", + "LabelServerHost": "Host :", + "LabelRequireHttpsHelp": "Jika dicentang, server akan secara otomatis mengalihkan semua permintaan melalui HTTP ke HTTPS. Ini tidak berpengaruh jika server tidak mendengarkan di HTTPS.", + "LabelRemoteClientBitrateLimitHelp": "Batas kecepatan bit per-aliran opsional untuk semua perangkat di luar jaringan. Ini berguna untuk mencegah perangkat meminta bitrate yang lebih tinggi daripada yang dapat ditangani koneksi internet Anda. Hal ini dapat mengakibatkan peningkatan beban CPU pada server Anda untuk mentranskode video dengan cepat ke bitrate yang lebih rendah.", + "LabelRecordingPathHelp": "Tentukan lokasi default untuk menyimpan rekaman. Jika dibiarkan kosong, folder data program server akan digunakan.", + "LabelMoviePrefixHelp": "Jika prefiks diterapkan pada judul film, masukkan di sini agar server dapat menanganinya dengan benar.", + "LabelLocalHttpServerPortNumberHelp": "Nomor port TCP untuk server HTTP.", + "LabelLocalHttpServerPortNumber": "Nomor port HTTP lokal :", + "LabelKodiMetadataEnablePathSubstitutionHelp": "Mengaktifkan substitusi jalur dari jalur gambar menggunakan pengaturan substitusi jalur server.", + "LabelHttpsPortHelp": "Nomor port TCP untuk server HTTPS.", + "LabelServerNameHelp": "Nama ini akan digunakan untuk mengidentifikasi server dan akan menggunakan nama host server secara default.", + "LabelBaseUrlHelp": "Tambahkan subdirektori khusus ke URL server. Misalnya: http://example.com/<baseurl> ", + "LabelEnableDlnaServerHelp": "Mengizinkan perangkat UPnP di jaringan Anda untuk menelusuri dan memutar konten.", + "LabelEnableDlnaServer": "Aktifkan server DLNA", + "LabelEnableBlastAliveMessagesHelp": "Aktifkan ini jika server tidak terdeteksi dengan andal oleh perangkat UPnP lain di jaringan Anda.", + "LabelEnableAutomaticPortMapHelp": "Secara otomatis meneruskan port publik di router Anda ke port lokal di server Anda melalui UPnP. Ini mungkin tidak berfungsi dengan beberapa model router atau konfigurasi jaringan. Perubahan tidak akan berlaku sampai server dimulai ulang.", + "LabelCachePathHelp": "Tentukan lokasi khusus untuk file cache server seperti gambar. Biarkan kosong untuk menggunakan default server.", + "LabelBindToLocalNetworkAddressHelp": "Ganti alamat IP lokal untuk server HTTP. Jika dibiarkan kosong, server akan mengikat ke semua alamat yang tersedia. Mengubah nilai ini membutuhkan restart.", + "LabelAbortedByServerShutdown": "(Dibatalkan oleh penghentian server)", + "HeaderServerSettings": "Pengaturan Server", + "HeaderServerAddressSettings": "Pengaturan Alamat Server", + "HeaderSelectServerCachePathHelp": "Jelajahi atau masukkan jalur yang akan digunakan untuk file cache server. Folder harus dapat akses.", + "HeaderSelectServerCachePath": "Pilih lokasi Cache Server", + "HeaderSelectServer": "Pilih Server", + "HeaderProfileServerSettingsHelp": "Nilai-nilai ini mengontrol bagaimana server akan menampilkan dirinya kepada klien.", + "HeaderConnectToServer": "Sambungkan ke server", + "HeaderApiKeysHelp": "Aplikasi eksternal diharuskan memiliki kunci API untuk berkomunikasi dengan server. Kunci dikeluarkan dengan masuk dengan akun pengguna biasa atau secara manual memberi aplikasi kunci.", + "ErrorDeletingItem": "Terjadi kesalahan saat menghapus item dari server. Harap periksa apakah Jellyfin memiliki akses tulis ke folder media dan coba lagi." } From c3d458b1482ec221058ed9b05a3304fda7b1b639 Mon Sep 17 00:00:00 2001 From: Bill Thornton Date: Thu, 20 Aug 2020 11:38:06 -0400 Subject: [PATCH 146/285] Remove unused styles and unneeded class --- src/components/cardbuilder/card.css | 24 ----------------------- src/components/cardbuilder/cardBuilder.js | 4 ---- src/controllers/session/login/index.js | 4 ++-- 3 files changed, 2 insertions(+), 30 deletions(-) diff --git a/src/components/cardbuilder/card.css b/src/components/cardbuilder/card.css index ef5ea6604c..8130087f89 100644 --- a/src/components/cardbuilder/card.css +++ b/src/components/cardbuilder/card.css @@ -239,35 +239,11 @@ button::-moz-focus-inner { border: none; } -.cardImage-img { - max-height: 100%; - max-width: 100%; - - /* This is simply for lazy image purposes, to ensure the image is visible sooner when scrolling */ - min-height: 70%; - min-width: 70%; - margin: auto; -} - -.coveredImage-img { - width: 100%; - height: 100%; -} - -.coveredImage-noscale-img { - max-height: none; - max-width: none; -} - .coveredImage { background-size: cover; background-position: center center; } -.coveredImage-noScale { - background-size: cover; -} - .cardFooter { padding: 0.3em 0.3em 0.5em 0.3em; position: relative; diff --git a/src/components/cardbuilder/cardBuilder.js b/src/components/cardbuilder/cardBuilder.js index d0a8c67f94..49ba27c5dd 100644 --- a/src/components/cardbuilder/cardBuilder.js +++ b/src/components/cardbuilder/cardBuilder.js @@ -1211,10 +1211,6 @@ import 'programStyles'; if (coveredImage) { cardImageContainerClass += ' coveredImage'; - - if (item.MediaType === 'Photo' || item.Type === 'PhotoAlbum' || item.Type === 'Folder' || item.ProgramInfo || item.Type === 'Program' || item.Type === 'Recording') { - cardImageContainerClass += ' coveredImage-noScale'; - } } if (!imgUrl) { diff --git a/src/controllers/session/login/index.js b/src/controllers/session/login/index.js index 8bac557a20..e8541563f0 100644 --- a/src/controllers/session/login/index.js +++ b/src/controllers/session/login/index.js @@ -115,11 +115,11 @@ import 'emby-checkbox'; tag: user.PrimaryImageTag, type: 'Primary' }); - html += '
    "; + html += '
    "; } else { const background = getMetroColor(user.Id); imgUrl = 'assets/img/avatar.png'; - html += '
    '; + html += '
    '; } html += '
    '; From 8194b19d0cb66be6b68e4635dd67411bf1b0e266 Mon Sep 17 00:00:00 2001 From: Bill Thornton Date: Thu, 20 Aug 2020 11:42:09 -0400 Subject: [PATCH 147/285] Fix background size for TV channel logos --- src/components/cardbuilder/card.css | 4 ++++ src/components/cardbuilder/cardBuilder.js | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/src/components/cardbuilder/card.css b/src/components/cardbuilder/card.css index 8130087f89..0fc4571e94 100644 --- a/src/components/cardbuilder/card.css +++ b/src/components/cardbuilder/card.css @@ -244,6 +244,10 @@ button::-moz-focus-inner { background-position: center center; } +.coveredImage.coveredImage-contain { + background-size: contain; +} + .cardFooter { padding: 0.3em 0.3em 0.5em 0.3em; position: relative; diff --git a/src/components/cardbuilder/cardBuilder.js b/src/components/cardbuilder/cardBuilder.js index 49ba27c5dd..c2141295ee 100644 --- a/src/components/cardbuilder/cardBuilder.js +++ b/src/components/cardbuilder/cardBuilder.js @@ -1211,6 +1211,10 @@ import 'programStyles'; if (coveredImage) { cardImageContainerClass += ' coveredImage'; + + if (item.Type === 'TvChannel') { + cardImageContainerClass += ' coveredImage-contain'; + } } if (!imgUrl) { From e7dbbaa36f01ea6eef094b22fce9a54c3f0c449f Mon Sep 17 00:00:00 2001 From: Bill Thornton Date: Thu, 20 Aug 2020 14:00:37 -0400 Subject: [PATCH 148/285] Make fallback text on cards less tiny --- src/components/cardbuilder/card.css | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/components/cardbuilder/card.css b/src/components/cardbuilder/card.css index ef5ea6604c..854ed6a5f7 100644 --- a/src/components/cardbuilder/card.css +++ b/src/components/cardbuilder/card.css @@ -372,6 +372,8 @@ button::-moz-focus-inner { .cardDefaultText { white-space: normal; text-align: center; + font-size: 2em; + font-weight: bold; } .cardImageContainer .cardImageIcon { From 35156850f26556375ab7829531731a64cadbd1d3 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Thu, 20 Aug 2020 19:11:52 +0000 Subject: [PATCH 149/285] Bump @babel/core from 7.11.1 to 7.11.4 Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.11.1 to 7.11.4. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.11.4/packages/babel-core) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 28 ++++++++++++++-------------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/package.json b/package.json index a6f3e8724d..71bbe7d9ef 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "repository": "https://github.com/jellyfin/jellyfin-web", "license": "GPL-2.0-or-later", "devDependencies": { - "@babel/core": "^7.11.1", + "@babel/core": "^7.11.4", "@babel/eslint-parser": "^7.11.3", "@babel/eslint-plugin": "^7.11.3", "@babel/plugin-proposal-class-properties": "^7.10.1", diff --git a/yarn.lock b/yarn.lock index b507238470..3f8e93a15d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -18,16 +18,16 @@ invariant "^2.2.4" semver "^5.5.0" -"@babel/core@>=7.2.2", "@babel/core@>=7.9.0", "@babel/core@^7.11.1": - version "7.11.1" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.11.1.tgz#2c55b604e73a40dc21b0e52650b11c65cf276643" - integrity sha512-XqF7F6FWQdKGGWAzGELL+aCO1p+lRY5Tj5/tbT3St1G8NaH70jhhDIKknIZaDans0OQBG5wRAldROLHSt44BgQ== +"@babel/core@>=7.2.2", "@babel/core@>=7.9.0", "@babel/core@^7.11.4": + version "7.11.4" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.11.4.tgz#4301dfdfafa01eeb97f1896c5501a3f0655d4229" + integrity sha512-5deljj5HlqRXN+5oJTY7Zs37iH3z3b++KjiKtIsJy1NrjOOVSEaJHEetLBhyu0aQOSNNZ/0IuEAan9GzRuDXHg== dependencies: "@babel/code-frame" "^7.10.4" - "@babel/generator" "^7.11.0" + "@babel/generator" "^7.11.4" "@babel/helper-module-transforms" "^7.11.0" "@babel/helpers" "^7.10.4" - "@babel/parser" "^7.11.1" + "@babel/parser" "^7.11.4" "@babel/template" "^7.10.4" "@babel/traverse" "^7.11.0" "@babel/types" "^7.11.0" @@ -56,10 +56,10 @@ dependencies: eslint-rule-composer "^0.3.0" -"@babel/generator@^7.11.0": - version "7.11.0" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.11.0.tgz#4b90c78d8c12825024568cbe83ee6c9af193585c" - integrity sha512-fEm3Uzw7Mc9Xi//qU20cBKatTfs2aOtKqmvy/Vm7RkJEGFQ4xc9myCfbXxqK//ZS8MR/ciOHw6meGASJuKmDfQ== +"@babel/generator@^7.11.0", "@babel/generator@^7.11.4": + version "7.11.4" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.11.4.tgz#1ec7eec00defba5d6f83e50e3ee72ae2fee482be" + integrity sha512-Rn26vueFx0eOoz7iifCN2UHT6rGtnkSGWSoDRIy8jZN3B91PzeSULbswfLoOWuTuAcNwpG/mxy+uCTDnZ9Mp1g== dependencies: "@babel/types" "^7.11.0" jsesc "^2.5.1" @@ -281,10 +281,10 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.10.4", "@babel/parser@^7.11.0", "@babel/parser@^7.11.1": - version "7.11.1" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.11.1.tgz#d91a387990b21e5d20047b336bb19b0553f02ff5" - integrity sha512-u9QMIRdKVF7hfEkb3nu2LgZDIzCQPv+yHD9Eg6ruoJLjkrQ9fFz4IBSlF/9XwoNri9+2F1IY+dYuOfZrXq8t3w== +"@babel/parser@^7.10.4", "@babel/parser@^7.11.0", "@babel/parser@^7.11.4": + version "7.11.4" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.11.4.tgz#6fa1a118b8b0d80d0267b719213dc947e88cc0ca" + integrity sha512-MggwidiH+E9j5Sh8pbrX5sJvMcsqS5o+7iB42M9/k0CD63MjYbdP4nhSh7uB5wnv2/RVzTZFTxzF/kIa5mrCqA== "@babel/plugin-proposal-async-generator-functions@^7.10.4": version "7.10.4" From e841c55e85b6afa8c16cd8b7afd13c39f63a5d33 Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Thu, 20 Aug 2020 21:54:46 +0200 Subject: [PATCH 150/285] Fix cards without title --- src/components/cardbuilder/cardBuilder.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/components/cardbuilder/cardBuilder.js b/src/components/cardbuilder/cardBuilder.js index e644365906..c5e25bd182 100644 --- a/src/components/cardbuilder/cardBuilder.js +++ b/src/components/cardbuilder/cardBuilder.js @@ -986,6 +986,10 @@ import 'programStyles'; lines = []; } + if (overlayText && showTitle) { + lines = [item.Name]; + } + const addRightTextMargin = isOuterFooter && options.cardLayout && !options.centerText && options.cardFooterAside !== 'none' && layoutManager.mobile; html += getCardTextLines(lines, cssClass, !options.overlayText, isOuterFooter, options.cardLayout, addRightTextMargin, options.lines); From 0c8a39e30630cb9180ec8f314707d5b4bc619a8f Mon Sep 17 00:00:00 2001 From: movamcr Date: Fri, 21 Aug 2020 01:54:03 +0000 Subject: [PATCH 151/285] Translated using Weblate (Japanese) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ja/ --- src/strings/ja.json | 88 ++++++++++++++++++++++++++++++++++++++------- 1 file changed, 75 insertions(+), 13 deletions(-) diff --git a/src/strings/ja.json b/src/strings/ja.json index 30413c2ad6..9652e85a18 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -118,7 +118,7 @@ "ColorSpace": "カラースペース", "CommunityRating": "コミュニティ評価", "Composer": "作曲者", - "ConfigureDateAdded": "日時を設定します", + "ConfigureDateAdded": "追加日時の設定はダッシュボードからライブラリー設定で変えられます", "ConfirmDeleteImage": "イメージを削除しますか?", "ConfirmDeleteItem": "このアイテムを削除すると、ファイルシステムとメディアライブラリの両方から削除されます。 続行しますか?", "ConfirmDeleteItems": "これらの項目を削除すると、ファイルシステムとメディアライブラリの両方からそれらが削除されます。 続行しますか?", @@ -148,7 +148,7 @@ "DeviceAccessHelp": "これは、識別できるデバイスにのみ適用され、ブラウザへのアクセスを妨げることはありません。 ユーザーのデバイスアクセスをフィルタリングすると、ここで承認されるまで新しいデバイスを使用できなくなります。", "DirectPlaying": "ダイレクト再生", "DirectStreamHelp1": "メディアは、解像度と種類 (H.264, AC3など)がお使いのデバイスに対応していますが、ファイルコンテナ(.mkv, .avi, .wmvなど)が対応していません。ビデオはデバイスに送信される前に、再パッケージされます。", - "DirectStreamHelp2": "ファイルのダイレクトストリーミングは、ビデオ品質を損なうことなく、Jellyfin Serverにもほとんど負荷がありません。", + "DirectStreamHelp2": "ダイレクトストリーミングは、ビデオ品質を損なうことなく、Jellyfin Serverにもほとんど負荷がありません。", "DirectStreaming": "ダイレクトストリーミング", "Director": "ディレクター", "Directors": "ディレクターズ", @@ -199,10 +199,10 @@ "DeathDateValue": "死亡日:{0}", "Depressed": "陰鬱", "ErrorAddingListingsToSchedulesDirect": "Schedules Directのアカウントにラインナップを追加中にエラーが発生しました。 スケジュールダイレクトでは、アカウントごとに限られた数のラインナップしか許可されません。続けるには、Schedules Direct にログインしてアカウントから他のリストを削除する必要があります。", - "ErrorAddingMediaPathToVirtualFolder": "メディアパスの追加中にエラーが発生しました。 パスが有効で、Jellyfin サーバープロセスがその場所にアクセスできることを確認してください。", + "ErrorAddingMediaPathToVirtualFolder": "メディアパスの追加中にエラーが発生しました。 パスが有効で、Jellyfin がその場所にアクセスできることを確認してください。", "ErrorAddingTunerDevice": "チューナーデバイスの追加中にエラーが発生しました。 アクセス可能であることを確認して、もう一度やり直してください。", "ErrorAddingXmlTvFile": "XMLTV ファイルへのアクセス中にエラーが発生しました。 ファイルが存在することを確認して、やり直してください。", - "ErrorDeletingItem": "Jellyfin サーバーからアイテムを削除中にエラーが発生しました。 Jellyfin サーバーがメディアフォルダーへの書き込みアクセス権を持っていることを確認して、もう一度やり直してください。", + "ErrorDeletingItem": "サーバーからアイテムを削除中にエラーが発生しました。 Jellyfinがメディアフォルダーへの書き込みアクセス権を持っていることを確認して、もう一度やり直してください。", "ErrorGettingTvLineups": "TV ラインナップ のダウンロード中にエラーが発生しました。 あなたの情報が正しいことを確認してもう一度やり直してください。", "ErrorStartHourGreaterThanEnd": "終了時間は開始時間より長くなければなりません。", "ErrorPleaseSelectLineup": "ラインナップを選択してもう一度やり直してください。 ラインナップが利用できない場合は、あなたのユーザー名、パスワード、および郵便番号が正しいことを確認してください。", @@ -490,7 +490,7 @@ "LabelNewPassword": "新しいパスワード:", "LabelNewPasswordConfirm": "新しいパスワードを確認:", "LabelNotificationEnabled": "この通知を有効化", - "LabelOptionalNetworkPath": "(任意) 共有ネットワークフォルダー:", + "LabelOptionalNetworkPath": "共有ネットワークフォルダー:", "LabelOriginalAspectRatio": "元のアスペクト比:", "LabelServerName": "サーバー名:", "LabelSupportedMediaTypes": "サポートされているメディアタイプ:", @@ -615,7 +615,7 @@ "LabelKidsCategories": "子供のカテゴリ:", "LabelLanNetworks": "LANネットワーク:", "LabelLanguage": "言語:", - "LabelLocalHttpServerPortNumberHelp": "JellyfinのHTTPサーバーがバインドするTCPポート番号。", + "LabelLocalHttpServerPortNumberHelp": "HTTPサーバーのTCPポート番号。", "LabelLoginDisclaimer": "ログイン免責事項:", "LabelSendNotificationToUsers": "通知を送る:", "LabelVideoCodec": "映像コーデック:", @@ -812,7 +812,7 @@ "LabelMonitorUsers": "アクティビティをモニター:", "LabelMovieCategories": "ムービーカテゴリ:", "LabelMoviePrefix": "ムービー接頭辞:", - "LabelMovieRecordingPath": "ムービー録画パス (任意):", + "LabelMovieRecordingPath": "ムービー録画パス:", "LabelOriginalTitle": "原題:", "LabelOverview": "概要:", "LabelParentNumber": "親番号:", @@ -826,7 +826,7 @@ "LabelPublicHttpsPort": "公開HTTPSポート番号:", "LabelReleaseDate": "公開日:", "LabelRemoteClientBitrateLimit": "インターネットストリーミングビットレートリミット (Mbps):", - "LabelRuntimeMinutes": "実行時間 (分):", + "LabelRuntimeMinutes": "実行時間:", "LabelScreensaver": "スクリーンセーバー:", "LabelSeasonNumber": "シーズン数:", "LabelSelectUsers": "ユーザーを選択:", @@ -1035,7 +1035,7 @@ "LabelCustomCertificatePathHelp": "カスタムドメインでTLSサポートを有効にするための証明書と秘密鍵を含むPKCS #12ファイルのパス。", "LabelCachePathHelp": "画像などのサーバーキャッシュファイルの場所を指定します。空欄にしておくと、サーバーのデフォルトを使います。", "LabelBlastMessageIntervalHelp": "ブラスト アライブ メッセージ間の時間を秒単位で指定します。", - "LabelBindToLocalNetworkAddressHelp": "HTTP サーバー用のローカル IP アドレスを上書きします。空のままにしておくと、サーバーは利用可能なすべてのアドレスにバインドします。この値の変更を反映するには、Jellyfin サーバーの再起動が必要です。", + "LabelBindToLocalNetworkAddressHelp": "HTTP サーバー用のローカル IP アドレスを上書きします。空のままにしておくと、サーバーは利用可能なすべてのアドレスにバインドします。この値の変更を反映するには再起動が必要です。", "LabelAlbumArtMaxWidthHelp": "upnp:albumArtURI で公開するアルバムアートの最大解像度。", "LabelAlbumArtMaxHeightHelp": "upnp:albumArtURI で公開するアルバムアートの最大解像度。", "LabelAlbumArtHelp": "upnp:albumArtURI の dlna:profileID 属性で、アルバムアートに使われるPN。デバイスによっては、画像のサイズと無関係に特定の値を要求するものもあります。", @@ -1059,7 +1059,7 @@ "LabelEnableDlnaPlayToHelp": "ネットワーク内のデバイスを検出し、それらをリモートで操作できるようにします。", "LabelEnableDlnaPlayTo": "DLNA 再生を有効にする", "LabelEnableDlnaDebugLoggingHelp": "巨大なログファイルを作成します。トラブルシューティングでの必要な際にだけ使用してください。", - "LabelEnableDlnaClientDiscoveryIntervalHelp": "Jellyfin が実行する SSDP 検索の間隔を決めます(秒単位)。", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "SSDP 検索の間隔を決めます(秒単位)。", "LabelGroupMoviesIntoCollectionsHelp": "ムービー リストを表示する際、コレクションに属するムービーは1つのグループとして表示します。", "LabelServerNameHelp": "この名前はサーバーを識別するために使用します。デフォルトではサーバーのホスト名です。", "LabelExtractChaptersDuringLibraryScanHelp": "ライブラリー スキャン中に動画を取り込んだときに、チャプター画像を生成します。もしくは、スケジュールタスクの中でチャプター画像を抽出することで、通常のライブラリー スキャンをより速く完了させることができます。", @@ -1078,7 +1078,7 @@ "LabelPlayDefaultAudioTrack": "言語に関係なくデフォルトの音声トラックを再生", "LabelPersonRoleHelp": "例: アイスクリームトラックドライバー", "LabelPasswordResetProvider": "パスワードリセットの提供:", - "LabelOptionalNetworkPathHelp": "ネットワーク内の共有フォルダの場合,ネットワーク共有のパスが他デバイスのJellyfinアプリからメディアファイルに直接アクセスできるようになります。例えば {0} や {1}です。", + "LabelOptionalNetworkPathHelp": "ネットワーク内の共有フォルダの場合,ネットワーク共有のパスが他デバイスのクライアントからメディアファイルに直接アクセスできるようになります。例えば {0} や {1}です。", "LabelNumberOfGuideDaysHelp": "多くの日数分のガイドデータをダウンロードするとより先のスケジュールとリストを見ることができるようになりますが,ダウンロードに時間がかかるようになります。自動に設定するとチャンネル数を基に選択されます。", "LabelNumberOfGuideDays": "ガイドデータをダウンロードする日数:", "LabelNewsCategories": "ニュースのカテゴリ:", @@ -1092,7 +1092,7 @@ "LabelMinResumeDurationHelp": "動画で再生している場所を記録してレジュームできるようにする,最短の時間です。", "LabelMinResumeDuration": "レジューム再生する最小時間:", "LabelMinBackdropDownloadWidth": "ダウンロードする背景の最小幅:", - "LabelMetadataSaversHelp": "メタデータを保存するファイルのフォーマットを選択します。", + "LabelMetadataSaversHelp": "メタデータを保存する際に使うファイルのフォーマットを選択します。", "LabelMetadataReadersHelp": "ローカルメタデータ取得先の優先度を並び替えます。最初に見つかったファイルが読み込まれます。", "LabelMetadataDownloadersHelp": "優先度順にオンラインメタデータ取得先を並び替えます。低い優先度のメタデータ取得先は,欠落した情報を補うためのみに使われるようになります。", "LabelMetadataPathHelp": "ダウンロードされたアートワークとメタデータの保存先を自分で指定します。", @@ -1115,5 +1115,67 @@ "LabelInNetworkSignInWithEasyPasswordHelp": "ローカルネットワーク内では簡単なPINコードを利用してサインインするようにします。ローカル以外からのアクセスのときのみ通常のパスワードが必要になります。PINコードを空欄にした場合,ローカルネットワーク内からのアクセスではパスワードが不要になります。", "LabelInNetworkSignInWithEasyPassword": "簡単なPINコードを利用してネットワーク内からサインインする機能の有効化", "LabelIconMaxWidthHelp": "upnp:icon として表示されるアイコンの最大解像度(幅)。", - "LabelIconMaxHeightHelp": "upnp:icon として表示されるアイコンの最大解像度(高さ)。" + "LabelIconMaxHeightHelp": "upnp:icon として表示されるアイコンの最大解像度(高さ)。", + "ManageRecording": "録画管理", + "LeaveBlankToNotSetAPassword": "このフィールドを空欄にすることでパスワード不要にできます。", + "Large": "ラージ", + "LabelffmpegPathHelp": "ffmpegアプリケーションファイルかffmpegを含有するフォルダのパス。", + "LabelZipCode": "郵便番号:", + "LabelYoureDone": "全て完了です!", + "LabelXDlnaDoc": "X-DLNA doc:", + "LabelXDlnaCap": "X-DLNA cap:", + "LabelVideoResolution": "動画解像度:", + "LabelValue": "値:", + "LabelVaapiDevice": "VA APIデバイス:", + "LabelUserRemoteClientBitrateLimitHelp": "サーバープレイバック設定のデフォルトグローバル値をオーバーライド。", + "LabelUserLoginAttemptsBeforeLockout": "ユーザーがロックされる前にログイン試行が失敗:", + "LabelUserLibraryHelp": "デバイスに表示されるユーザーライブラリを選択してください。空欄の場合デフォルト設定が引き継がれます。", + "LabelUseNotificationServices": "以下のサービスを使用:", + "LabelTypeMetadataDownloaders": "{0} メタデータダウンローダー:", + "LabelTunerType": "チューナータイプ:", + "LabelTunerIpAddress": "チューナーIPアドレス:", + "LabelTriggerType": "トリガータイプ:", + "LabelTextBackgroundColor": "テキスト背景色:", + "LabelSyncPlayAccess": "SyncPlayアクセス", + "LabelSyncPlayAccessNone": "このユーザーには無効", + "LabelSyncPlayAccessJoinGroups": "ユーザーによるグループの参加を許可", + "LabelSyncPlayAccessCreateAndJoinGroups": "ユーザーによるグループの作成/参加を許可", + "LabelSyncPlayLeaveGroupDescription": "SyncPlay無効", + "LabelSyncPlayLeaveGroup": "グループを離れる", + "LabelSyncPlayNewGroupDescription": "新しいグループ作成", + "LabelSyncPlayNewGroup": "新しいグループ", + "LabelSyncPlaySyncMethod": "同期方法:", + "LabelSyncPlayPlaybackDiff": "プレイバック時間差分:", + "MillisecondsUnit": "ミリ秒", + "LabelSyncPlayTimeOffset": "タイムオフセット:", + "LabelSubtitleFormatHelp": "例: srt", + "LabelSubtitleDownloaders": "字幕ダウンローダー:", + "LabelStreamType": "ストリームタイプ:", + "LabelStopWhenPossible": "可能次第停止:", + "LabelStartWhenPossible": "可能次第開始:", + "LabelSpecialSeasonsDisplayName": "スペシャルシーズン表示名:", + "LabelSortBy": "ソート順:", + "LabelSonyAggregationFlags": "SONYアグリゲーションフラグ:", + "LabelSkipIfGraphicalSubsPresent": "もし動画に埋め込み字幕がある時スキップ", + "LabelSkipIfAudioTrackPresent": "デフォルト音声トラックとダウンロード言語が同じ時スキップ", + "LabelSkipForwardLength": "スキップ(進み)時間:", + "LabelSkipBackLength": "スキップ(戻り)時間:", + "LabelSimultaneousConnectionLimit": "同時ストリーム制限:", + "LabelSeriesRecordingPath": "シリーズ録画パス:", + "EnableFasterAnimationsHelp": "高速アニメーションとページ遷移を使う", + "EnableFasterAnimations": "高速アニメーション", + "LabelScheduledTaskLastRan": "最終実行は{0}、実行時間は{1}。", + "LabelRequireHttpsHelp": "チェック時、全てのHTTPリクエストをHTTPSに自動リダイレクトします。サーバーがHTTPS対応していない時は何もしません。", + "LabelRequireHttps": "HTTPS必須", + "LabelRefreshMode": "リフレッシュモード:", + "LabelRecordingPath": "デフォルト録画パス:", + "LabelReasonForTranscoding": "トランスコード理由:", + "LabelProtocolInfoHelp": "この値はデバイスからのGetProtocolInfoリクエスト応答に使われます。", + "LabelProfileContainersHelp": "カンマ区切り。空欄にすることで全てのコンテナに適用されます。", + "LabelProfileContainer": "コンテナ:", + "LabelProfileCodecsHelp": "カンマ区切り。空欄にすることで全てのコーデックに適用されます。", + "LabelPlayerDimensions": "プレーヤーサイズ:", + "LabelUnstable": "不安定", + "LabelMaxParentalRating": "最大許容ペアレントレイティング:", + "LabelKodiMetadataEnablePathSubstitutionHelp": "サーバーのパス補完を使った画像パスの補完を有効にする。" } From 90ced9cf522d37d3b9fd33636358f8d9031c9103 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Fri, 21 Aug 2020 06:52:43 +0000 Subject: [PATCH 152/285] Bump @babel/eslint-parser from 7.11.3 to 7.11.4 Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.11.3 to 7.11.4. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.11.4/eslint/babel-eslint-parser) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 71bbe7d9ef..5d461c74c0 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "license": "GPL-2.0-or-later", "devDependencies": { "@babel/core": "^7.11.4", - "@babel/eslint-parser": "^7.11.3", + "@babel/eslint-parser": "^7.11.4", "@babel/eslint-plugin": "^7.11.3", "@babel/plugin-proposal-class-properties": "^7.10.1", "@babel/plugin-proposal-private-methods": "^7.10.1", diff --git a/yarn.lock b/yarn.lock index 3f8e93a15d..e1841f2d59 100644 --- a/yarn.lock +++ b/yarn.lock @@ -40,10 +40,10 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/eslint-parser@^7.11.3": - version "7.11.3" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.11.3.tgz#ceb94cb6e2457c4a4d2d87db29925e6b48d20786" - integrity sha512-OdCt/CVXdR/eTNTYDEobf4e55m/AAc04ki+/Oe2/GE8ivh2FxX4yDab48lA6t7ysP4M7luap6Fxx3hUVNTwzFQ== +"@babel/eslint-parser@^7.11.4": + version "7.11.4" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.11.4.tgz#f79bac69088097a8418f5c67fc462c89a72c2f48" + integrity sha512-syIzsqEUvmc6WEYbLqrvBODCM1wMo3SQ4h4G9gtCcQctv1VUlA5davRAWHFm7ncQlxcJs4I7kaflsnAP8iA8Aw== dependencies: eslint-scope "5.1.0" eslint-visitor-keys "^1.3.0" From f8d880afe37ebac236268780d0930823f0fc5d8b Mon Sep 17 00:00:00 2001 From: SaddFox Date: Fri, 21 Aug 2020 21:00:50 +0000 Subject: [PATCH 153/285] Translated using Weblate (Slovenian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sl/ --- src/strings/sl-si.json | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/strings/sl-si.json b/src/strings/sl-si.json index ca1a5d6648..e4cc58de6d 100644 --- a/src/strings/sl-si.json +++ b/src/strings/sl-si.json @@ -72,7 +72,7 @@ "AllowMediaConversionHelp": "Dovoli ali zavrni dostop do pretvarjanja predstavnosti.", "AllowOnTheFlySubtitleExtraction": "Dovoli sprotno izluščenje podnapisov", "AllowOnTheFlySubtitleExtractionHelp": "Vdelani podnapisi so lahko izluščeni iz videa in poslani odjemalcem kot navaden tekst, kar zmanjša potrebo po prekodiranju. Na nekaterih napravah lahko to traja dalj časa in povzroča zatikanje med predvajanjem. Onemogočite to možnost, za vžig vdelanih podnapisov v video s prekodiranjem, za naprave ki sicer ne podpirajo podnapisov.", - "AllowRemoteAccess": "Dovoli oddaljene povezave s tem Jellyfin strežnikom.", + "AllowRemoteAccess": "Dovoli oddaljene povezave s tem strežnikom.", "AllowRemoteAccessHelp": "Če ni označeno, bodo vse oddaljene povezave blokirane.", "Artists": "Izvajalci", "Books": "Knjige", @@ -173,7 +173,7 @@ "ColorTransfer": "Prenos barve", "CommunityRating": "Ocena skupnosti", "Composer": "Skladatelj", - "ConfigureDateAdded": "Nastavi kako je določen datum dodajanja v nadzorni plošči Jellyfin Server-ja v kategoriji Knjižnice", + "ConfigureDateAdded": "Nastavite kako je določen datum dodajanja v nadzorni plošči v kategoriji Knjižnice", "ConfirmDeleteImage": "Izbriši sliko?", "ConfirmDeleteItem": "Brisanje tega elementa ga bo izbrisalo iz datotečnega sistema in medijske knjižnice. Ste prepričani da želite nadaljevati?", "ConfirmDeleteItems": "Brisanje teh elementov jih bo izbrisalo iz datotečnega sistema in medijske knjižnice. Ste prepričani da želite nadaljevati?", @@ -407,9 +407,9 @@ "DropShadow": "Senca", "EveryNDays": "Vsakih {0} dni", "ErrorStartHourGreaterThanEnd": "Čas konca mora biti večji od časa začetka.", - "ErrorDeletingItem": "Prišlo je do težave pri brisanju predstavnosti s strežnika. Preverite ali ima Jellyfin strežnik dovoljenje za pisanje v mapi s predstavnostjo in poskusite znova.", + "ErrorDeletingItem": "Prišlo je do težave pri brisanju predstavnosti s strežnika. Preverite ali ima Jellyfin dovoljenje za pisanje v mapi s predstavnostjo in poskusite znova.", "ErrorAddingXmlTvFile": "Prišlo je do težave pri dostopu do XMLTV datoteke. Preverite ali datoteka obstaja in poskusite znova.", - "ErrorAddingMediaPathToVirtualFolder": "Prišlo je do težave pri dodajanju poti predstavnosti. Preverite ali je pot veljavna in da ima Jellyfin strežnik dovoljenja za dostop.", + "ErrorAddingMediaPathToVirtualFolder": "Prišlo je do težave pri dodajanju poti predstavnosti. Preverite ali je pot veljavna in da ima Jellyfin dovoljenja za dostop.", "Episodes": "Epizode", "EndsAtValue": "Konec ob {0}", "Ended": "Končano", @@ -550,7 +550,7 @@ "LabelBitrate": "Bitna hitrost:", "LabelBlastMessageInterval": "Interval sporočila o dostopnosti", "LabelDefaultUserHelp": "Določi knjižnica katerega uporabnika bo prikazana na povezanih napravah. To lahko preglasite s profili za posamezno napravo.", - "LabelEnableDlnaClientDiscoveryIntervalHelp": "Določi trajanje v sekundah med SSDP iskanji, ki jih izvede Jellyfin.", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "Določi trajanje v sekundah med SSDP iskanji.", "LabelEnableDlnaClientDiscoveryInterval": "Interval odkrivanja odjemalcev", "LabelEnableBlastAliveMessagesHelp": "Omogočite, če imajo UPnP naprave težave z zaznavanjem strežnika v omrežju.", "LabelEnableBlastAliveMessages": "Oddajaj sporočila o dostopnosti", @@ -566,7 +566,7 @@ "LabelDisplayOrder": "Vrstni red prikaza:", "LabelDisplayName": "Prikazano ime:", "LabelDisplayMode": "Način prikaza:", - "LabelBindToLocalNetworkAddressHelp": "Preglasi lokalni IP naslov za HTTP strežnik. V kolikor pustite prazno se strežnik poveže z vsemi možnimi naslovi. Sprememba vrednosti zahteva ponovni zagon Jellyfin strežnika.", + "LabelBindToLocalNetworkAddressHelp": "Preglasi lokalni IP naslov za HTTP strežnik. V kolikor pustite prazno se strežnik poveže z vsemi možnimi naslovi. Sprememba vrednosti zahteva ponovni zagon.", "InstallingPackage": "Nameščanje {0} (različica {1})", "ImportMissingEpisodesHelp": "Podatki o manjkajočih epizodah bodo dodani v bazo podatkov in prikazani znotraj sezon in serij. To lahko občutno podaljša čas uvoza v knjižnjico.", "ImportFavoriteChannelsHelp": "Uvoženi bodo zgolj programi, ki so na sprejemniku označeni kot priljubljeni.", @@ -761,7 +761,7 @@ "PleaseConfirmPluginInstallation": "Prosimo kliknite OK, da potrdite, da se strinjate z zgoraj napisanim in želite nadaljevati z namestitvijo dodatka.", "Programs": "Programi", "LabelTunerIpAddress": "IP naslov TV/radio sprejemnika:", - "PleaseRestartServerName": "Prosimo ponovno zaženite Jellyfin strežnik - {0}.", + "PleaseRestartServerName": "Prosimo ponovno zaženite Jellyfin na {0}.", "ProductionLocations": "Kraj produkcije", "OptionAllowRemoteSharedDevices": "Dovoli daljinsko upravljanje skupnih naprav", "OptionAllowRemoteSharedDevicesHelp": "DLNA naprave veljajo za skupne, dokler jih ne začne nadzirati uporabnik.", @@ -861,7 +861,7 @@ "OptionArtist": "Izvajalec", "OptionAllowUserToManageServer": "Dovoli temu uporabniku upravljanje strežnika", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Naslednja mesta predstavnosti bodo odstranjena iz vaše knjižnice:", - "MessagePluginInstallDisclaimer": "Dodatki ustvarjeni s strani članov Jellyfin skupnosti so odličen način za izboljšanje vaše izkušnje z Jellyfin z dodatnimi funkcijami in prednostmi. Preden namestite dodatke se zavedajte, da imajo lahko ti različne vplive na vaš Jellyfin strežnik, kot na primer počasnejše preiskovanje knjižnic, dodatna obdelava podatkov v ozadju in zmanjšana stabilnost sistema.", + "MessagePluginInstallDisclaimer": "Dodatki ustvarjeni s strani članov skupnosti so odličen način za izboljšanje vaše izkušnje z dodatnimi funkcijami in prednostmi. Preden namestite dodatke se zavedajte, da imajo lahko ti različne vplive na vaš strežnik, kot na primer počasnejše preiskovanje knjižnic, dodatna obdelava podatkov v ozadju in zmanjšana stabilnost sistema.", "MessagePleaseWait": "Prosimo, počakajte. To lahko traja nekaj minut.", "MessagePleaseEnsureInternetMetadata": "Prosimo poskrbite, da je prenašanje spletnih metapodatkov omogočeno.", "MessageNothingHere": "Tu ni nič.", @@ -878,13 +878,13 @@ "MessageEnablingOptionLongerScans": "Če omogočite to možnost, se lahko trajanje preiskovanja knjižnic občutno podaljša.", "MessageDownloadQueued": "Prenos na čakanju.", "MessageDirectoryPickerLinuxInstruction": "Za Linux na sistemu Arch Linux, CentOS, Debian, Fedora, openSUSE ali Ubuntu morate uporabniku storitve dodeliti vsaj dovoljenje za branje vaših shramb.", - "MessageDirectoryPickerBSDInstruction": "Za BSD boste morda morali nastaviti shrambo znotraj vašega FreeNAS Jail-a, da omogočite Jellyfin dostop.", + "MessageDirectoryPickerBSDInstruction": "Za BSD boste morda morali nastaviti shrambo znotraj vašega FreeNAS Jail-a, da omogočite Jellyfin dostop do predstavnosti.", "MessageDeleteTaskTrigger": "Ali ste prepričani, da želite izbrisati ta sprožilec opravil?", "MessageCreateAccountAt": "Ustvarite račun pri {0}", "MessageContactAdminToResetPassword": "Za ponastavitev gesla se obrnite na skrbnika sistema.", "MessageConfirmShutdown": "Ali ste prepričani, da želite zaustaviti strežnik?", - "MessageConfirmRevokeApiKey": "Ali ste prepričani, da želite razveljaviti ta API ključ? Povezava aplikacije z Jellyfin strežnikom bo nenadoma prekinjena.", - "MessageConfirmRestart": "Ali ste prepričani, da želite ponovno zagnati Jellyfin strežnik?", + "MessageConfirmRevokeApiKey": "Ali ste prepričani, da želite razveljaviti ta API ključ? Povezava aplikacije s strežnikom bo nenadoma prekinjena.", + "MessageConfirmRestart": "Ali ste prepričani, da želite ponovno zagnati Jellyfin?", "MessageConfirmRemoveMediaLocation": "Ali ste prepričani, da želite odstraniti to mesto?", "MessageConfirmRecordingCancellation": "Prekliči snemanje?", "MessageConfirmProfileDeletion": "Ali ste prepričani, da želite izbrisati ta profil?", @@ -946,7 +946,7 @@ "LabelVersion": "Različica:", "LabelSelectVersionToInstall": "Izberite različico za namestitev:", "Never": "Nikoli", - "ServerUpdateNeeded": "Jellyfin strežnik je potrebno posodobiti. Za prenos najnovejše različice prosimo obiščite {0}", + "ServerUpdateNeeded": "Ta strežnik je potrebno posodobiti. Za prenos najnovejše različice prosimo obiščite {0}", "LatestFromLibrary": "Najnovejši {0}", "LabelScheduledTaskLastRan": "Nazadnje zagnano {0}. Čas trajanja {1}.", "OptionRandom": "Naključno", @@ -1268,7 +1268,7 @@ "TabScheduledTasks": "Načrtovana opravila", "HeaderUninstallPlugin": "Odstrani dodatek", "UninstallPluginConfirmation": "Ali ste prepričan, da želite odstraniti {0}?", - "ServerRestartNeededAfterPluginInstall": "Po namestitvi dodatka bo potreben ponoven zagon jellyfin strežnika.", + "ServerRestartNeededAfterPluginInstall": "Po namestitvi dodatka bo potreben ponoven zagon jellyfin.", "TabResponses": "Odzivi", "TabPlugins": "Dodatki", "TabOther": "Ostalo", From e88f29ac3706b7f4f1d9a6fce45ca5c68f11396d Mon Sep 17 00:00:00 2001 From: MrTimscampi Date: Sat, 22 Aug 2020 19:10:08 +0200 Subject: [PATCH 154/285] Restore focusPreventScroll --- package.json | 1 - src/bundle.js | 5 --- src/elements/emby-scroller/emby-scroller.js | 10 ++--- src/legacy/focusPreventScroll.js | 42 +++++++++++++++++++++ src/scripts/site.js | 8 ++-- yarn.lock | 5 --- 6 files changed, 51 insertions(+), 20 deletions(-) create mode 100644 src/legacy/focusPreventScroll.js diff --git a/package.json b/package.json index ff58c6e66c..8f706b83f0 100644 --- a/package.json +++ b/package.json @@ -62,7 +62,6 @@ "epubjs": "^0.3.85", "fast-text-encoding": "^1.0.3", "flv.js": "^1.5.0", - "focus-options-polyfill": "^1.5.0", "headroom.js": "^0.11.0", "hls.js": "^0.14.8", "howler": "^2.2.0", diff --git a/src/bundle.js b/src/bundle.js index 8559f3943b..5a7ffed075 100644 --- a/src/bundle.js +++ b/src/bundle.js @@ -10,11 +10,6 @@ _define('fetch', function() { return fetch; }); -var focusPreventScroll = require('focus-options-polyfill'); -_define('focus-options-polyfill', function() { - return focusPreventScroll; -}); - // Blurhash const blurhash = require('blurhash'); _define('blurhash', function() { diff --git a/src/elements/emby-scroller/emby-scroller.js b/src/elements/emby-scroller/emby-scroller.js index b2bb51e202..d7133e317a 100644 --- a/src/elements/emby-scroller/emby-scroller.js +++ b/src/elements/emby-scroller/emby-scroller.js @@ -17,12 +17,10 @@ import 'css!./emby-scroller'; function initCenterFocus(elem, scrollerInstance) { dom.addEventListener(elem, 'focus', function (e) { - setTimeout(function() { - const focused = focusManager.focusableParent(e.target); - if (focused) { - scrollerInstance.toCenter(focused); - } - }, 0); + const focused = focusManager.focusableParent(e.target); + if (focused) { + scrollerInstance.toCenter(focused); + } }, { capture: true, passive: true diff --git a/src/legacy/focusPreventScroll.js b/src/legacy/focusPreventScroll.js new file mode 100644 index 0000000000..93f53dca29 --- /dev/null +++ b/src/legacy/focusPreventScroll.js @@ -0,0 +1,42 @@ +// Polyfill to add support for preventScroll by focus function + +if (HTMLElement.prototype.nativeFocus === undefined) { + (function () { + var supportsPreventScrollOption = false; + try { + var focusElem = document.createElement('div'); + + focusElem.addEventListener('focus', function(event) { + event.preventDefault(); + event.stopPropagation(); + }, true); + + var opts = Object.defineProperty({}, 'preventScroll', { + // eslint-disable-next-line getter-return + get: function () { + supportsPreventScrollOption = true; + } + }); + + focusElem.focus(opts); + } catch (e) { + console.error('error checking preventScroll support'); + } + + if (!supportsPreventScrollOption) { + HTMLElement.prototype.nativeFocus = HTMLElement.prototype.focus; + + HTMLElement.prototype.focus = function(options) { + var scrollX = window.scrollX; + var scrollY = window.scrollY; + + this.nativeFocus(); + + // Restore window scroll if preventScroll + if (options && options.preventScroll) { + window.scroll(scrollX, scrollY); + } + }; + } + })(); +} diff --git a/src/scripts/site.js b/src/scripts/site.js index bb7e133df7..fa0aaf7c76 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -221,6 +221,7 @@ function initClient() { keyboardnavigation.enable(); }); require(['mouseManager']); + require(['focusPreventScroll']); require(['autoFocuser'], function(autoFocuser) { autoFocuser.enable(); }); @@ -462,6 +463,7 @@ function initClient() { datetime: 'scripts/datetime', globalize: 'scripts/globalize', dfnshelper: 'scripts/dfnshelper', + libraryMenu: 'scripts/libraryMenu', playlisteditor: componentsPath + '/playlisteditor/playlisteditor', medialibrarycreator: componentsPath + '/mediaLibraryCreator/mediaLibraryCreator', @@ -520,8 +522,7 @@ function initClient() { 'events', 'credentialprovider', 'connectionManagerFactory', - 'appStorage', - 'focus-options-polyfill' + 'appStorage' ] }, urlArgs: urlArgs, @@ -530,7 +531,7 @@ function initClient() { }); promise = require(['fetch']) - .then(() => require(['jQuery', 'polyfill', 'fast-text-encoding', 'intersection-observer', 'classlist-polyfill', 'focus-options-polyfill', 'css!assets/css/site', 'jellyfin-noto'], (jQuery) => { + .then(() => require(['jQuery', 'polyfill', 'fast-text-encoding', 'intersection-observer', 'classlist-polyfill', 'css!assets/css/site', 'jellyfin-noto'], (jQuery) => { // Expose jQuery globally window.$ = jQuery; window.jQuery = jQuery; @@ -650,6 +651,7 @@ function initClient() { return viewManager; }); define('slideshow', [componentsPath + '/slideshow/slideshow'], returnFirstDependency); + define('focusPreventScroll', ['legacy/focusPreventScroll'], returnFirstDependency); define('userdataButtons', [componentsPath + '/userdatabuttons/userdatabuttons'], returnFirstDependency); define('listView', [componentsPath + '/listview/listview'], returnFirstDependency); define('indicators', [componentsPath + '/indicators/indicators'], returnFirstDependency); diff --git a/yarn.lock b/yarn.lock index 0dfcf0c15d..b507238470 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4598,11 +4598,6 @@ flv.js@^1.5.0: es6-promise "^4.2.5" webworkify "^1.5.0" -focus-options-polyfill@^1.5.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/focus-options-polyfill/-/focus-options-polyfill-1.5.0.tgz#fd2e6a0d6d8f828346726a5adf02f3d2bdfece5f" - integrity sha512-HiMSaXGUz2OFjOuoGTWXlp+YjZCGnVXPu6vPeccgaSOzGmqLVz8tJRcKXWfMJnj16LXf/IM1rJI0zrZMVc9q7g== - follow-redirects@1.5.10: version "1.5.10" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.10.tgz#7b7a9f9aea2fdff36786a94ff643ed07f4ff5e2a" From e690a879ce7452892ae0d07e1069475e785ce27b Mon Sep 17 00:00:00 2001 From: Julien Machiels Date: Sat, 22 Aug 2020 20:55:17 +0200 Subject: [PATCH 155/285] Update src/scripts/site.js Co-authored-by: Dmitry Lyzo <56478732+dmitrylyzo@users.noreply.github.com> --- src/scripts/site.js | 1 - 1 file changed, 1 deletion(-) diff --git a/src/scripts/site.js b/src/scripts/site.js index fa0aaf7c76..48a5044f5e 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -463,7 +463,6 @@ function initClient() { datetime: 'scripts/datetime', globalize: 'scripts/globalize', dfnshelper: 'scripts/dfnshelper', - libraryMenu: 'scripts/libraryMenu', playlisteditor: componentsPath + '/playlisteditor/playlisteditor', medialibrarycreator: componentsPath + '/mediaLibraryCreator/mediaLibraryCreator', From 79fcf4ebea80bb7a4cf44ab798c1eb25d07ffc72 Mon Sep 17 00:00:00 2001 From: rethi61 Date: Sun, 23 Aug 2020 03:21:16 +0000 Subject: [PATCH 156/285] Translated using Weblate (French (Canada)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr_CA/ --- src/strings/fr-ca.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/fr-ca.json b/src/strings/fr-ca.json index 09585df2bd..0ad88bb7cf 100644 --- a/src/strings/fr-ca.json +++ b/src/strings/fr-ca.json @@ -154,7 +154,7 @@ "AskAdminToCreateLibrary": "Demander un administrateur de créer une médiathèque.", "Artist": "Artiste", "AllowFfmpegThrottlingHelp": "Quand un transcodage ou rémux se déplace après la position de relecture, suspendre le processus pour consommer moins de ressources. Ceci est le plus utile pour chercher moins. Désactiver s'il y a des problèmes de relecture.", - "AllowFfmpegThrottling": "Restreindre la vitesse de transcodage", + "AllowFfmpegThrottling": "Limiter la vitesse de transcodage", "AlbumArtist": "Artiste de l'Album", "Album": "Album", "AuthProviderHelp": "Sélectionner un fournisseur d'authentification pour authentifier le mot de passe de cet utilisateur.", From 81ddb1529d87d8bda5f8b2c037e47800484ad5ed Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Sun, 23 Aug 2020 06:23:09 +0000 Subject: [PATCH 157/285] Bump gulp-terser from 1.3.2 to 1.4.0 Bumps [gulp-terser](https://github.com/duan602728596/gulp-terser) from 1.3.2 to 1.4.0. - [Release notes](https://github.com/duan602728596/gulp-terser/releases) - [Commits](https://github.com/duan602728596/gulp-terser/compare/v1.3.2...v1.4.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 03c4259eac..654845113c 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "gulp-postcss": "^8.0.0", "gulp-sass": "^4.0.2", "gulp-sourcemaps": "^2.6.5", - "gulp-terser": "^1.3.2", + "gulp-terser": "^1.4.0", "html-webpack-plugin": "^4.3.0", "lazypipe": "^1.0.2", "node-sass": "^4.13.1", diff --git a/yarn.lock b/yarn.lock index 4b8529b4b9..5f962daee2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5252,10 +5252,10 @@ gulp-sourcemaps@^2.6.5: strip-bom-string "1.X" through2 "2.X" -gulp-terser@^1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/gulp-terser/-/gulp-terser-1.3.2.tgz#c91a71c31de0c40a94330bfd43b20c2a40df9a6b" - integrity sha512-hLx9Ww9PX304R3E7pMyL+jFftH47QXQCgKE6IZajbz7OoqAPMdr+sTxBpaujgIVkdbnJwJ7AFhfrcyy/cjBgZQ== +gulp-terser@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/gulp-terser/-/gulp-terser-1.4.0.tgz#0ac4dfdbed4ab46906007c5b358810c1642b9764" + integrity sha512-7df9leJna3WOmj76tYHxjpn7BSU+vmKVjVSd6bz3uLEyrzCfZI97KPhRcIabrSNzs0UY/UXTt+JwkxPw3sF85w== dependencies: is-promise "^4.0.0" plugin-error "^1.0.1" From 0133db0d5f8b8d476c694c9511dbf67c95a95735 Mon Sep 17 00:00:00 2001 From: rethi61 Date: Sun, 23 Aug 2020 03:36:46 +0000 Subject: [PATCH 158/285] Translated using Weblate (French (Canada)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr_CA/ --- src/strings/fr-ca.json | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/src/strings/fr-ca.json b/src/strings/fr-ca.json index 0ad88bb7cf..bcbba8eb66 100644 --- a/src/strings/fr-ca.json +++ b/src/strings/fr-ca.json @@ -72,7 +72,7 @@ "WelcomeToProject": "Bienvenue dans Jellyfin !", "WizardCompleted": "C'est tout ce dont nous avons besoin pour l'instant. Jellyfin a commencé à collecter les informations de votre bibliothèque de médias. Jetez un oeil à quelques unes de nos applications, puis cliquez sur Terminer pour consulter le Tableau de bord du serveur.", "Absolute": "Absolu", - "AccessRestrictedTryAgainLater": "L'accès est actuellement restreint. Veuillez réessayer plus tard.", + "AccessRestrictedTryAgainLater": "Accès restreint. Veuillez réessayer plus tard.", "Actor": "Acteur(trice)", "AddToPlayQueue": "Ajouter à la file d'attente", "AddedOnValue": "Ajouté le {0}", @@ -91,7 +91,7 @@ "AllowMediaConversionHelp": "Autoriser ou refuser l'accès à la fonctionnalité de conversion des médias.", "AllowOnTheFlySubtitleExtraction": "Autoriser l'extraction des sous-titres à la volée", "AllowOnTheFlySubtitleExtractionHelp": "Les sous-titres intégrés peuvent être extraits des vidéos et distribués aux clients en format texte pour éviter le transcodage. Sur certains systèmes, cela peut prendre du temps et arrêter la lecture de la vidéo pendant le processus d'extraction. Désactivez cette option pour graver les sous-titres avec un transcodage quand l'appareil ne les prend pas en charge nativement.", - "AllowRemoteAccess": "Autoriser les connexions distantes à ce serveur Jellyfin.", + "AllowRemoteAccess": "Autoriser les connexions à distance sur ce serveur Jellyfin.", "AllowRemoteAccessHelp": "Si l'option est désactivée, toutes les connexions distantes seront bloquées.", "Artists": "Artistes", "Books": "Livres", @@ -108,11 +108,11 @@ "Songs": "Chansons", "Sync": "Synchroniser", "AllowedRemoteAddressesHelp": "Liste d'adresses IP ou d'IP/masque de sous-réseau séparées par des virgules qui seront autorisées à se connecter à distance. Si la liste est vide, toutes les adresses distantes seront autorisées.", - "AlwaysPlaySubtitles": "Toujours afficher les sous-titres", - "AlwaysPlaySubtitlesHelp": "Les sous-titres correspondant à la préférence linguistique seront chargés indépendamment de la langue de l'audio.", + "AlwaysPlaySubtitles": "Toujours afficher", + "AlwaysPlaySubtitlesHelp": "Les sous-titres correspondant à la préférence linguistique seront chargés sans tenir compte de la langue de l'audio.", "AnyLanguage": "N'importe quelle langue", "Anytime": "N'importe quand", - "AroundTime": "Aux environs de {0}", + "AroundTime": "Environ", "Art": "Illustration", "AsManyAsPossible": "Autant que possible", "Ascending": "Croissant", @@ -150,10 +150,10 @@ "ButtonManualLogin": "Connexion manuelle", "ButtonMore": "Plus", "ButtonNetwork": "Réseau", - "AspectRatio": "Format de visionnement", + "AspectRatio": "Format de l'image", "AskAdminToCreateLibrary": "Demander un administrateur de créer une médiathèque.", "Artist": "Artiste", - "AllowFfmpegThrottlingHelp": "Quand un transcodage ou rémux se déplace après la position de relecture, suspendre le processus pour consommer moins de ressources. Ceci est le plus utile pour chercher moins. Désactiver s'il y a des problèmes de relecture.", + "AllowFfmpegThrottlingHelp": "Quand un transcodage ou un remultiplexage a traité une période suffisamment longue depuis la position de lecture, le processus sera interrompu afin d'économiser des ressources. Ceci est utile principalement lors de lectures continues. À désactiver si vous éprouvez des problèmes de lecture.", "AllowFfmpegThrottling": "Limiter la vitesse de transcodage", "AlbumArtist": "Artiste de l'Album", "Album": "Album", @@ -184,7 +184,7 @@ "Categories": "Catégories", "CancelSeries": "Annuler la série", "CancelRecording": "Annuler l'enregistrement", - "ButtonWebsite": "Site web", + "ButtonWebsite": "Site Web", "ButtonUninstall": "Désinstaller", "ButtonTogglePlaylist": "Liste de lecture", "ButtonSubmit": "Soumettre", @@ -212,5 +212,9 @@ "ButtonOk": "OK", "ButtonNextTrack": "Prochaine piste", "ButtonAddImage": "Ajouter l'image", - "BoxSet": "Coffret" + "BoxSet": "Coffret", + "ChangingMetadataImageSettingsNewContent": "Les modifications aux paramètres de téléchargement de métadonnées et d'illustrations seront appliquées seulement au nouveau contenu de votre médiathèque. Vous devrez actualiser les métadonnées manuellement pour que les changements soient appliqués à l'ensemble de votre contenu.", + "ButtonTrailer": "Bande-annonce", + "ButtonSplit": "Couper", + "ButtonSelectView": "Sélectionner l'affichage" } From bd5441b53cc2019ed9523cd2e6f9d6637c71bd5a Mon Sep 17 00:00:00 2001 From: rethi61 Date: Sun, 23 Aug 2020 03:38:05 +0000 Subject: [PATCH 159/285] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index 5bc4f9cd35..ad0c997ba7 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -25,7 +25,7 @@ "AllowRemoteAccess": "Autoriser les connexions distantes à ce serveur.", "AllowRemoteAccessHelp": "Si l'option est désactivée, toutes les connexions distantes seront bloquées.", "AllowedRemoteAddressesHelp": "Liste d'adresses IP ou d'IP/masque de sous-réseau séparées par des virgules qui seront autorisées à se connecter à distance. Si la liste est vide, toutes les adresses distantes seront autorisées.", - "AlwaysPlaySubtitles": "Toujours afficher les sous-titres", + "AlwaysPlaySubtitles": "Toujours afficher", "AlwaysPlaySubtitlesHelp": "Les sous-titres correspondant à la préférence linguistique seront chargés indépendamment de la langue de l'audio.", "AnyLanguage": "N'importe quel langage", "Anytime": "N'importe quand", From 955d7464ffc8459f34f20f5aed6245ccd80cb0dc Mon Sep 17 00:00:00 2001 From: dkanada Date: Mon, 24 Aug 2020 08:20:29 +0900 Subject: [PATCH 160/285] remove translations with duplicate values --- .../filterdialog/filterdialog.template.html | 14 +++++++------- .../imageOptionsEditor.template.html | 10 +++++----- src/components/notifications/notifications.js | 2 +- src/controllers/dashboard/dashboard.html | 2 +- src/controllers/dashboard/dashboard.js | 2 +- src/controllers/dashboard/dlna/profile.html | 12 ++++++------ src/controllers/dashboard/dlna/profiles.js | 2 +- src/controllers/dashboard/dlna/settings.html | 2 +- src/controllers/dashboard/dlna/settings.js | 2 +- src/controllers/dashboard/encodingsettings.html | 4 ++-- src/controllers/dashboard/general.html | 2 +- src/controllers/dashboard/library.js | 2 +- .../dashboard/plugins/installed/index.js | 2 +- src/controllers/dashboard/users/useredit.html | 2 +- .../dashboard/users/userlibraryaccess.html | 2 +- .../dashboard/users/userparentalcontrol.html | 2 +- .../dashboard/users/userparentalcontrol.js | 6 +++--- src/controllers/dashboard/users/userpassword.html | 4 ++-- src/controllers/livetvsettings.html | 2 +- src/controllers/movies/movies.js | 2 +- src/controllers/music/musicalbums.js | 2 +- src/controllers/music/songs.js | 8 ++++---- src/controllers/playback/queue/index.html | 2 +- src/controllers/shows/episodes.js | 2 +- src/controllers/user/menu/index.html | 4 ++-- src/controllers/user/profile/index.html | 2 +- src/scripts/libraryBrowser.js | 4 ++-- src/scripts/libraryMenu.js | 4 ++-- 28 files changed, 53 insertions(+), 53 deletions(-) diff --git a/src/components/filterdialog/filterdialog.template.html b/src/components/filterdialog/filterdialog.template.html index 1d61f3923e..e98c71bf39 100644 --- a/src/components/filterdialog/filterdialog.template.html +++ b/src/components/filterdialog/filterdialog.template.html @@ -6,12 +6,12 @@
    @@ -68,11 +68,11 @@
    diff --git a/src/controllers/livetvsettings.html b/src/controllers/livetvsettings.html index ad3a9de7af..374ab9a4a0 100644 --- a/src/controllers/livetvsettings.html +++ b/src/controllers/livetvsettings.html @@ -11,7 +11,7 @@
    ' + globalize.translate('OptionAscending') + ''; + html += ''; isChecked = options.query.SortOrder == 'Descending' ? ' checked' : ''; - html += ''; + html += ''; html += '
    '; html += '
    '; dlg.innerHTML = html; diff --git a/src/scripts/libraryMenu.js b/src/scripts/libraryMenu.js index e1b0ff780d..e6b96e7447 100644 --- a/src/scripts/libraryMenu.js +++ b/src/scripts/libraryMenu.js @@ -293,10 +293,10 @@ import 'flexStyles'; html += ''; if (appHost.supports('multiserver')) { - html += '' + globalize.translate('ButtonSelectServer') + ''; + html += '' + globalize.translate('HeaderSelectServer') + ''; } - html += '' + globalize.translate('ButtonSettings') + ''; + html += '' + globalize.translate('Settings') + ''; html += '' + globalize.translate('ButtonSignOut') + ''; html += '
    '; } From b8e99661c735e02e1e2205414b1e24ae648ad0b4 Mon Sep 17 00:00:00 2001 From: dkanada Date: Mon, 24 Aug 2020 08:29:19 +0900 Subject: [PATCH 161/285] update translation files --- src/strings/af.json | 2 -- src/strings/ar.json | 33 --------------------------------- src/strings/bg-bg.json | 33 --------------------------------- src/strings/bn_BD.json | 4 ---- src/strings/ca.json | 29 ----------------------------- src/strings/cs.json | 33 --------------------------------- src/strings/da.json | 33 --------------------------------- src/strings/de.json | 33 --------------------------------- src/strings/el.json | 32 -------------------------------- src/strings/en-gb.json | 33 --------------------------------- src/strings/en-us.json | 33 --------------------------------- src/strings/es-ar.json | 33 --------------------------------- src/strings/es-mx.json | 33 --------------------------------- src/strings/es.json | 33 --------------------------------- src/strings/es_419.json | 33 --------------------------------- src/strings/fa.json | 33 --------------------------------- src/strings/fi.json | 32 -------------------------------- src/strings/fr-ca.json | 6 ------ src/strings/fr.json | 33 --------------------------------- src/strings/gsw.json | 12 ------------ src/strings/he.json | 32 -------------------------------- src/strings/hi-in.json | 1 - src/strings/hr.json | 33 --------------------------------- src/strings/hu.json | 33 --------------------------------- src/strings/id.json | 7 ------- src/strings/is-is.json | 12 ------------ src/strings/it.json | 33 --------------------------------- src/strings/ja.json | 30 ------------------------------ src/strings/kk.json | 33 --------------------------------- src/strings/ko.json | 33 --------------------------------- src/strings/lt-lt.json | 31 ------------------------------- src/strings/lv.json | 29 ----------------------------- src/strings/mr.json | 3 --- src/strings/ms.json | 1 - src/strings/nb.json | 33 --------------------------------- src/strings/nl.json | 33 --------------------------------- src/strings/pl.json | 33 --------------------------------- src/strings/pr.json | 1 - src/strings/pt-br.json | 33 --------------------------------- src/strings/pt-pt.json | 33 --------------------------------- src/strings/pt.json | 33 --------------------------------- src/strings/ro.json | 33 --------------------------------- src/strings/ru.json | 33 --------------------------------- src/strings/sk.json | 33 --------------------------------- src/strings/sl-si.json | 32 -------------------------------- src/strings/sr.json | 6 ------ src/strings/sv.json | 33 --------------------------------- src/strings/ta.json | 33 --------------------------------- src/strings/tr.json | 27 --------------------------- src/strings/uk.json | 13 ------------- src/strings/vi.json | 15 --------------- src/strings/zh-cn.json | 33 --------------------------------- src/strings/zh-hk.json | 29 ----------------------------- src/strings/zh-tw.json | 33 --------------------------------- 54 files changed, 1409 deletions(-) diff --git a/src/strings/af.json b/src/strings/af.json index df3ca17f3f..6ac06df748 100644 --- a/src/strings/af.json +++ b/src/strings/af.json @@ -122,12 +122,10 @@ "TellUsAboutYourself": "Vertel ons van jouself", "TabUpcoming": "Komende", "TabStreaming": "Stroom", - "TabSettings": "Instellings", "TabServer": "Bediener", "TabScheduledTasks": "Geskeduleerde Take", "TabResponses": "Reaksies", "TabProfiles": "Profiele", - "TabProfile": "Profiel", "TabParentalControl": "Ouer Beheer", "TabOther": "Ander", "TabNotifications": "Kennisgewings", diff --git a/src/strings/ar.json b/src/strings/ar.json index ba172b57ae..41b96b0c4d 100644 --- a/src/strings/ar.json +++ b/src/strings/ar.json @@ -24,7 +24,6 @@ "ButtonEditOtherUserPreferences": "اضبط إعدادات حساب المستخدم هذا، وصورته وتفضيلاته الشخصية.", "ButtonForgotPassword": "نسيت كلمة السر", "ButtonFullscreen": "ملء الشاشة", - "ButtonGuide": "الدليل", "ButtonInfo": "معلومات", "ButtonLibraryAccess": "صلاحيات المكتبة", "ButtonManualLogin": "الدخول اليدوي", @@ -36,21 +35,16 @@ "ButtonParentalControl": "التحكم الأبوي", "ButtonPause": "توقف مؤقت", "ButtonPreviousTrack": "المقطوعة السابقة", - "ButtonProfile": "حساب", "ButtonQuickStartGuide": "دليل بدء الاستخدام السريع", "ButtonRefreshGuideData": "إعادة تنشيط بيانات الدليل", "ButtonRemove": "إزالة", "ButtonRename": "إعادة التسمية", "ButtonResetEasyPassword": "إعادة تهيئة الرمز الشخصي الميسر", - "ButtonResetPassword": "إعادة تهيئة كلمة السر", - "ButtonRestart": "إعادة التشغيل", "ButtonResume": "استأنف", "ButtonRevoke": "أرفض", "ButtonSelectDirectory": "إختر الدليلة", - "ButtonSelectServer": "إختر الخادم", "ButtonSelectView": "إختر طريقة عرض", "ButtonSend": "إرسال", - "ButtonSettings": "الإعدادات", "ButtonShutdown": "إنهاء التشغيل", "ButtonSignIn": "تسجيل الدخول", "ButtonSignOut": "تسجيل الخروج", @@ -213,7 +207,6 @@ "HeaderSelectTranscodingPathHelp": "تصفح أو أدخل المسار الذي ترغب أن يُستخدم لملفات التشفير البيني. يجب أن يكون هذا المجلد قابل للكتابة فيه.", "HeaderSendMessage": "أرسل رسالة", "HeaderServerSettings": "إعدادات الخادم", - "HeaderSettings": "الإعدادات", "HeaderSetupLibrary": "ضبط مكتبة المحتوى الخاصة بك", "HeaderSortBy": "ترتيب حسب", "HeaderSortOrder": "تسلسل الترتيب", @@ -570,8 +563,6 @@ "NumLocationsValue": "{0} مجلد(ات)", "Option3D": "ثلاثي أبعاد", "OptionAdminUsers": "المدراء", - "OptionAlbum": "الألبوم", - "OptionAlbumArtist": "ألبوم الفنان", "OptionAllUsers": "جميع المستخدمين", "OptionAllowAudioPlaybackTranscoding": "تمكين تشغيل الصوت الذي يحتاج تشفيراً بينياً", "OptionAllowBrowsingLiveTv": "السماح للوصول إلى قنوات التلفزة الحية", @@ -586,21 +577,14 @@ "OptionAllowUserToManageServer": "إسمح لهذا المستخدم بالتحكم بالخادم", "OptionAllowVideoPlaybackRemuxing": "تمكين تشغيل الفيديو الذي يحتاج إلى التحويل من غير تشفير", "OptionAllowVideoPlaybackTranscoding": "تمكين تشغيل الفيديو الذي يحتاج تشفيراً بينياً", - "OptionArtist": "الفنان", - "OptionAscending": "تصاعدي", - "OptionAuto": "آلي", "OptionAutomaticallyGroupSeries": "إدمج الحلقات الموزعة بين عدة مجلدات إلى مجلد واحد تلقائياً.", "OptionAutomaticallyGroupSeriesHelp": "في حال التفعيل فإن الحلقات الموزعة بين عدة مجلدات ستدمج تلقائياً في مجلد مسلسل واحد.", - "OptionBlockBooks": "الكتب", "OptionBlockChannelContent": "محتوى قنوات الإنترنت", "OptionBlockLiveTvChannels": "قنوات التلفاز المباشر", - "OptionBlockMovies": "الأفلام", - "OptionBlockMusic": "الموسيقى", "OptionBlockTrailers": "العروض الإعلانية", "OptionBlockTvShows": "المسلسلات التلفزيونية", "OptionCaptionInfoExSamsung": "CaptionInfoEx (أجهزة سامسونج)", "OptionCommunityRating": "تقييم المجتمع", - "OptionContinuing": "متابعة", "OptionCriticRating": "تقييم النقاد", "OptionCustomUsers": "مخصوص", "OptionDaily": "يومي", @@ -608,17 +592,11 @@ "OptionDateAddedFileTime": "استخدم تاريخ إنشاء الملف", "OptionDateAddedImportTime": "استخدم تاريخ التمشيط في المكتبة", "OptionDatePlayed": "تاريخ التشغيل", - "OptionDescending": "تنازلي", "OptionDisableUser": "تعطيل هذا المستخدم", "OptionDisableUserHelp": "عند التعطيل، فلن يسمح الخادم لهذا المستخدم بالاتصال. وسيتم قطع الاتصالات الموجودة بشكل فوري.", "OptionDislikes": "المنكورات", "OptionDisplayFolderView": "استعراض المجلد كمجلد وسائط بسيطة", "OptionDisplayFolderViewHelp": "عند التفعيل، فإن تطبيقات أمبي ستعرض تصنيفات المجلدات إلى جانب إظهار مكتبة وسائطك. سيكون ذلك مفيد إن كنت تحب أن تستعرض المجلدات كمجلدات عرض بسيطة", - "OptionDownloadArtImage": "فنيات", - "OptionDownloadBackImage": "للخلف", - "OptionDownloadBannerImage": "اليافطة", - "OptionDownloadBoxImage": "الصندوق", - "OptionDownloadDiscImage": "القرص", "OptionDownloadImagesInAdvance": "أنزل الصور مسبقاً", "OptionDownloadLogoImage": "اللوغو", "OptionDownloadMenuImage": "القائمة", @@ -633,22 +611,17 @@ "OptionEnableForAllTuners": "تمكين كل أجهزة المولفات", "OptionEnableM2tsMode": "تفعيل طور M2ts", "OptionEnableM2tsModeHelp": "تفعيل طور M2ts عند التشفير إلى صيغة mpegts.", - "OptionEnded": "إنتهى", "OptionEquals": "تساوي", "OptionEstimateContentLength": "توقّع طور المحتوى حال التشفير", "OptionEveryday": "كل يوم", "OptionExternallyDownloaded": "الإنزال من الخارج", "OptionExtractChapterImage": "تفعيل استخلاص صور الأبواب", - "OptionFavorite": "المفضلات", "OptionHasSpecialFeatures": "المحتويات الخاصة", - "OptionHasSubtitles": "الترجمة", "OptionHasThemeSong": "أغنية الشارة", "OptionHasThemeVideo": "فيديو الشارة", - "OptionHasTrailer": "العرض الإعلاني", "OptionHideUser": "أخفي هذا المستخدم من شاشة الدخول", "OptionHideUserFromLoginHelp": "هذه مفيدة لحسابات المدراء المتخفّين أو الخصوصيين. على المستخدم في هذه الحالة أن يدخل بياناته يدوياً عبر إدخال اسم المستخدم وكلمة السر.", "OptionHlsSegmentedSubtitles": "ترجمات hsl مقطّعة", - "OptionHomeVideos": "الفيديوهات والصور المنزلية", "OptionIgnoreTranscodeByteRangeRequests": "تجاهل طلبات مديات البايتات أثناء التشفير البيني", "OptionIgnoreTranscodeByteRangeRequestsHelp": "عند التفعيل، فسيلتزم بهذه الطلبات ولكن سيتم تجاهل رؤوس مديات البايتات.", "OptionImdbRating": "تقييم IMDb", @@ -666,9 +639,7 @@ "OptionPlainVideoItems": "إظهار جميع الفيديوهات كعناصر فيديو بسيطة", "OptionPlainVideoItemsHelp": "عند التفعيل، فإن جميع الفيديوهات ستُمثّل في مخطط DIDL كالتالي: \"كائن.عنصر.عنصر_فيديو\" بدلاً من النوع الأكثر تخصيصاً كما يلي \"كائن.عنصر.عنصر_فيديو.فيلم\".", "OptionPlayCount": "مرات التشغيل", - "OptionPlayed": "معزوف", "OptionPremiereDate": "تاريخ العرض", - "OptionProfileAudio": "الصوتيات", "OptionProfilePhoto": "صور", "OptionProfileVideo": "الفيديو", "OptionProfileVideoAudio": "صوتي مرئي", @@ -679,14 +650,12 @@ "OptionRequirePerfectSubtitleMatch": "نزّل فقط الترجمات التي توافق بدقة ملفات الفيديو الخاصة بي", "OptionResElement": "عناصر res", "OptionResumable": "إمكانية التكملة", - "OptionRuntime": "زمن التشغيل", "OptionSaveMetadataAsHidden": "حفظ واصفات البيانات والصور كملفات مخفية", "OptionSaveMetadataAsHiddenHelp": "إن تغيير هذه سيطبق على واصفات البيانات الجديدة من الآن. أما واصفات البيانات الموجودة مسبقاً، فهي ستحدث من قبل الخادم في المرة القادمة التي يتم حفظها.", "OptionSpecialEpisode": "حصريات", "OptionTrackName": "اسم المقطوعة", "OptionTvdbRating": "تقييم Tvdb", "OptionUnairedEpisode": "حلفة لم تبثّ", - "OptionUnplayed": "غير معزوف", "OptionWakeFromSleep": "استيقظ من السبات", "OptionWeekdays": "أيام الأسبوع", "OptionWeekends": "أيام العطلة", @@ -741,12 +710,10 @@ "TabOther": "أخرى", "TabParentalControl": "التحكم الأبوي", "TabPlugins": "الملحقات", - "TabProfile": "عريضة", "TabProfiles": "الحسابات", "TabResponses": "الردود", "TabScheduledTasks": "المهام المجدولة", "TabServer": "الخادم", - "TabSettings": "الإعدادات", "TabStreaming": "التشغيل التدفقي", "TabUpcoming": "القادم", "TellUsAboutYourself": "اخبرنا عن نفسك", diff --git a/src/strings/bg-bg.json b/src/strings/bg-bg.json index a79650546c..43fa593637 100644 --- a/src/strings/bg-bg.json +++ b/src/strings/bg-bg.json @@ -30,7 +30,6 @@ "ButtonCancel": "Отмяна", "ButtonForgotPassword": "Забравена парола", "ButtonGotIt": "Добре", - "ButtonGuide": "Справочник", "ButtonInfo": "Сведения", "ButtonLibraryAccess": "Достъп до библиотеката", "ButtonManualLogin": "Вход с име и парола", @@ -41,18 +40,14 @@ "ButtonParentalControl": "Родителски контрол", "ButtonPause": "Пауза", "ButtonPreviousTrack": "Предишна пътека", - "ButtonProfile": "Профил", "ButtonQuickStartGuide": "Първи стъпки", "ButtonRefreshGuideData": "Обновяване на данните в справочника", "ButtonRemove": "Премахване", "ButtonRename": "Преименуване", - "ButtonResetPassword": "Зануляване на паролата", - "ButtonRestart": "Повторно пускане", "ButtonResume": "Продължаване", "ButtonScanAllLibraries": "Сканиране на всички библиотеки", "ButtonSelectDirectory": "Изберете папка", "ButtonSend": "Изпращане", - "ButtonSettings": "Настройки", "ButtonShutdown": "Загасяне", "ButtonSignIn": "Вписване", "ButtonSignOut": "Отписване", @@ -202,7 +197,6 @@ "HeaderSelectPath": "Изберете път", "HeaderSendMessage": "Изпращане на съобщение", "HeaderServerSettings": "Настройки на сървъра", - "HeaderSettings": "Настройки", "HeaderSetupLibrary": "Настройте своите медийни библиотеки", "HeaderSortBy": "Подреждане по", "HeaderSortOrder": "Ред на подреждане", @@ -454,8 +448,6 @@ "Off": "Изключено", "Option3D": "Триизмерни", "OptionAdminUsers": "Администратори", - "OptionAlbum": "Албум", - "OptionAlbumArtist": "Изпълнител на албума", "OptionAllUsers": "Всички потребители", "OptionAllowBrowsingLiveTv": "Разрешаване на телевизия на живо", "OptionAllowLinkSharing": "Разрешаване на споделяне в социалните медии", @@ -465,29 +457,17 @@ "OptionAllowRemoteSharedDevices": "Разрешаване на отдалечен контрол на споделени устройства", "OptionAllowRemoteSharedDevicesHelp": "DLNA устройства се считат за споделени докато някой потребител не започне да ги контролира.", "OptionAllowUserToManageServer": "Разрешаване на този потребител да управлява сървъра", - "OptionArtist": "Изпълнител", - "OptionAscending": "Възходящо", - "OptionAuto": "Автоматично", - "OptionBlockBooks": "Книги", - "OptionBlockMovies": "Филми", "OptionBlockTvShows": "Телевизионни сериали", "OptionCommunityRating": "Обществена ощенка", - "OptionContinuing": "Продължаващо", "OptionCriticRating": "Оценка на критиците", "OptionCustomUsers": "По избор", "OptionDaily": "Ежедневно", "OptionDateAdded": "Дата на добавяне", "OptionDatePlayed": "Дата на пускане", - "OptionDescending": "Низходящо", "OptionDisableUser": "Дезактивирайте този потребител", "OptionDisableUserHelp": "Ако е дезактивиран, сървърът няма да позволи каквито и да било връзки от този потребител. Съществуващите връзки ще бъдат внезапно прекратени.", "OptionDislikes": "Нехаресвания", "OptionDisplayFolderView": "Показване на изглед в папки", - "OptionDownloadArtImage": "Картина", - "OptionDownloadBackImage": "Задна част", - "OptionDownloadBannerImage": "Банер", - "OptionDownloadBoxImage": "Кутия", - "OptionDownloadDiscImage": "Диск", "OptionDownloadImagesInAdvance": "Предварително изтегляне на изображения", "OptionDownloadLogoImage": "Логотип", "OptionDownloadMenuImage": "Меню", @@ -497,18 +477,13 @@ "OptionEnableAccessFromAllDevices": "Позволяване на достъпа от всички устройства", "OptionEnableAccessToAllChannels": "Позволяване на достъпа до всички канали", "OptionEnableAccessToAllLibraries": "Позволяване на достъпа до всички библиотеки", - "OptionEnded": "Приключило", "OptionEveryday": "Всеки ден", "OptionExternallyDownloaded": "Външно сваляне", - "OptionFavorite": "Любими", "OptionHasSpecialFeatures": "Специални функции", - "OptionHasSubtitles": "Субтитри", "OptionHasThemeSong": "Фонова песен", "OptionHasThemeVideo": "Фоново видео", - "OptionHasTrailer": "Трейлър", "OptionHideUser": "Скриване на потребителя от страниците за вход", "OptionHideUserFromLoginHelp": "Полезно за частни или скрити администраторски профили. Потребителят ще трябва да влезе ръчно чрез въвеждане на потребителско име и парола.", - "OptionHomeVideos": "Снимки", "OptionImdbRating": "Оценка в IMDb", "OptionIsHD": "ВК", "OptionIsSD": "СК", @@ -522,20 +497,16 @@ "OptionPlainStorageFolders": "Показвай всички папки като папки за обикновено съхранение", "OptionPlainVideoItems": "Показвай всички видео клипове като обикновени", "OptionPlayCount": "Брой пускания", - "OptionPlayed": "Пускани", "OptionPremiereDate": "Дата на премиера", - "OptionProfileAudio": "Звук", "OptionProfilePhoto": "Снимка", "OptionProfileVideo": "Видео", "OptionProfileVideoAudio": "Видео Аудио", "OptionReleaseDate": "Дата на издаване", "OptionRequirePerfectSubtitleMatch": "Да се изтеглят само субтитри, които пасват идеално на файловете ми", "OptionResumable": "Възобновляемост", - "OptionRuntime": "Времетраене", "OptionSpecialEpisode": "Специални", "OptionTrackName": "Име на песента", "OptionUnairedEpisode": "Неизлъчени епизоди", - "OptionUnplayed": "Непускано", "OptionWakeFromSleep": "Събуждане от сън", "OptionWeekly": "Ежеседмично", "OriginalAirDateValue": "Дата на първоначално излъчване: {0}", @@ -626,12 +597,10 @@ "TabOther": "Други", "TabParentalControl": "Родителски контрол", "TabPlugins": "Приставки", - "TabProfile": "Профил", "TabProfiles": "Профили", "TabResponses": "Отговори", "TabScheduledTasks": "Планирани задачи", "TabServer": "Сървър", - "TabSettings": "Настройки", "TabStreaming": "Излъчване", "TabUpcoming": "Предстоящи", "Tags": "Етикети", @@ -719,7 +688,6 @@ "ButtonTrailer": "Предварителен откъс", "ButtonStart": "Пускане", "ButtonSelectView": "Изберете изглед", - "ButtonSelectServer": "Изберете сървър", "ButtonNetwork": "Мрежа", "ButtonFullscreen": "На цял екран", "AllowOnTheFlySubtitleExtraction": "Позволява моментално извличане на поднадписи", @@ -1369,7 +1337,6 @@ "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", "OptionBluray": "Блу-рей", "OptionBlockTrailers": "Трейлъри", - "OptionBlockMusic": "Музика", "OptionBlockLiveTvChannels": "Телевизионни канали на живо", "OptionBlockChannelContent": "Съдържание на интернет канала", "OptionBanner": "Банер", diff --git a/src/strings/bn_BD.json b/src/strings/bn_BD.json index 3f11b4f050..bd7a5f30c3 100644 --- a/src/strings/bn_BD.json +++ b/src/strings/bn_BD.json @@ -26,7 +26,6 @@ "ButtonMore": "আরও", "ButtonLibraryAccess": "লাইব্রেরি অ্যাক্সেস", "ButtonInfo": "তথ্য", - "ButtonGuide": "গাইড", "ButtonGotIt": "বুঝেছি", "ButtonFullscreen": "ফুলস্ক্রিন", "ButtonForgotPassword": "পাসওয়ার্ড ভুলে গেছি", @@ -77,10 +76,7 @@ "Aired": "উন্মুক্ত করন", "Add": "যোগ", "ButtonPreviousTrack": "পূর্ববর্তী ট্র্যাক", - "ButtonProfile": "প্রোফাইল", "ButtonResume": "রিসিউম", - "ButtonRestart": "রিস্টার্ট", - "ButtonResetPassword": "পাসওয়ার্ড রিসেট করুন", "ButtonResetEasyPassword": "সহজ পিন কোডটি রিসেট করুন", "ButtonRename": "নামান্তর", "ButtonRemove": "সরান", diff --git a/src/strings/ca.json b/src/strings/ca.json index c199cb2cbe..58677fbb8d 100644 --- a/src/strings/ca.json +++ b/src/strings/ca.json @@ -26,7 +26,6 @@ "ButtonEditOtherUserPreferences": "Edita el perfil, la imatge i les preferències d'aquest usuari.", "ButtonForgotPassword": "He oblidat la contrasenya", "ButtonGotIt": "Entesos", - "ButtonGuide": "Guia", "ButtonLibraryAccess": "Accés a la biblioteca", "ButtonManualLogin": "Inici de sessió manual", "ButtonMore": "Més", @@ -36,18 +35,13 @@ "ButtonParentalControl": "Control parental", "ButtonPause": "Pausa", "ButtonPreviousTrack": "Pista anterior", - "ButtonProfile": "Perfil", "ButtonQuickStartGuide": "Guia d'inici ràpid", "ButtonRefreshGuideData": "Refresca les Dades de la Guia", "ButtonRemove": "Elimina", "ButtonResetEasyPassword": "Reinicia el codi pin senzill", - "ButtonResetPassword": "Reiniciar Contrasenya", - "ButtonRestart": "Reiniciar", "ButtonResume": "Reprèn", "ButtonSelectDirectory": "Selecciona Directori", - "ButtonSelectServer": "Seleccionar servidor", "ButtonSend": "Envia", - "ButtonSettings": "Preferències", "ButtonShutdown": "Atura", "ButtonSignIn": "Inicia Sessió", "ButtonSignOut": "Tanca sessió", @@ -193,7 +187,6 @@ "HeaderSendMessage": "Enviar Missatge", "HeaderSeriesOptions": "Opcions de Sèries", "HeaderServerSettings": "Preferències del Servidor", - "HeaderSettings": "Preferències", "HeaderSetupLibrary": "Configura les teves biblioteques multimèdia", "HeaderSortBy": "Ordena per", "HeaderSortOrder": "Ordre de Classificació", @@ -440,7 +433,6 @@ "OnlyForcedSubtitles": "Només subtítols forçats", "OnlyForcedSubtitlesHelp": "Només es carregaran aquells subtítols marcats com a forçats.", "OptionAdminUsers": "Administradors", - "OptionAlbum": "Àlbum", "OptionAllUsers": "Tots els usuaris", "OptionAllowBrowsingLiveTv": "Permetre accés a TV en directe", "OptionAllowContentDownloading": "Permetre descàrrega de mitjans", @@ -452,26 +444,16 @@ "OptionAllowRemoteSharedDevices": "Permetre el control remot de dispositius compartits", "OptionAllowRemoteSharedDevicesHelp": "Els dispositius dlna es consideren compartits fins que un usuari comença a controlar-los.", "OptionAllowUserToManageServer": "Permet aquest usuari gestionar el servidor", - "OptionArtist": "Artista", - "OptionAscending": "Ascendent", - "OptionAuto": "Automàtc", - "OptionBlockBooks": "Llibres", - "OptionBlockMovies": "Pel·lícules", - "OptionBlockMusic": "Música", "OptionBlockTrailers": "Tràilers", "OptionCommunityRating": "Valoració de la Comunitat", - "OptionContinuing": "Continuant", "OptionCriticRating": "Valoració dels Crítics", "OptionDaily": "Diari", "OptionDateAdded": "Data Afegida", "OptionDateAddedImportTime": "Empra la data d'escaneig", "OptionDatePlayed": "Data de Reproducció", - "OptionDescending": "Descendent", "OptionDisableUser": "Desactiva aquest usuari", "OptionDisableUserHelp": "Si es desactiva el servidor no permetrà cap connexió des d'aquest usuari. Les connexions existents seran interrompudes abruptament.", "OptionDislikes": "No m'agrada", - "OptionDownloadBackImage": "Contra", - "OptionDownloadBoxImage": "Capsa", "OptionDownloadMenuImage": "Menú", "OptionDownloadPrimaryImage": "Primària", "OptionDownloadThumbImage": "Miniatura", @@ -480,19 +462,14 @@ "OptionEnableAccessToAllChannels": "Habilita l'accés a tots els canals", "OptionEnableAccessToAllLibraries": "Habilita l'accés a totes les biblioteques", "OptionEnableExternalContentInSuggestionsHelp": "Permet incloure tràilers d'internet i programes de TV en directe amb el continguts suggerits.", - "OptionEnded": "Acabades", "OptionEquals": "Equival", "OptionEveryday": "Cada dia", "OptionExternallyDownloaded": "Descàrrega externa", - "OptionFavorite": "Preferits", "OptionHasSpecialFeatures": "Característiques Especials", - "OptionHasSubtitles": "Subtítols", "OptionHasThemeSong": "Cançó Temàtica", "OptionHasThemeVideo": "Vídeo Temàtic", - "OptionHasTrailer": "Tràiler", "OptionHideUser": "Oculta aquest usuari de les pantalles de login", "OptionHideUserFromLoginHelp": "Pràctic per a comptes d'administrador ocults o privats. L'usuari necessitarà accedir manualment introduint el seu nom d'usuari i contrasenya.", - "OptionHomeVideos": "Fotos i vídeos domèstics", "OptionImdbRating": "Qualificació IMDb", "OptionLikes": "M'agrada", "OptionMissingEpisode": "Episodis Perduts", @@ -502,19 +479,15 @@ "OptionOnInterval": "En un interval", "OptionParentalRating": "Classificació Parental", "OptionPlayCount": "Nombre de Reproduccions", - "OptionPlayed": "Reproduït", - "OptionProfileAudio": "Àudio", "OptionProfilePhoto": "Foto", "OptionProfileVideo": "Vídeo", "OptionReleaseDate": "Data de Publicació", "OptionResumable": "Continuable", - "OptionRuntime": "Temps d'exec.", "OptionSaveMetadataAsHidden": "Desa les metadades i les imatges com a fitxers ocults", "OptionSpecialEpisode": "Especials", "OptionSubstring": "Subcadena", "OptionTvdbRating": "Valoració TVDB", "OptionUnairedEpisode": "Episodis No Emesos", - "OptionUnplayed": "No reproduït", "OptionWakeFromSleep": "Despertar", "OptionWeekdays": "Entre setmana", "OptionWeekends": "Cap de setmana", @@ -596,12 +569,10 @@ "TabOther": "Altres", "TabParentalControl": "Control Parental", "TabPlugins": "Complements", - "TabProfile": "Perfil", "TabProfiles": "Perfils", "TabResponses": "Respostes", "TabScheduledTasks": "Tasques Programades", "TabServer": "Servidor", - "TabSettings": "Preferències", "TabUpcoming": "Properament", "Tags": "Etiquetes", "TellUsAboutYourself": "Explica'ns sobre tu", diff --git a/src/strings/cs.json b/src/strings/cs.json index cf7b3cf2e9..198a8c32d1 100644 --- a/src/strings/cs.json +++ b/src/strings/cs.json @@ -47,7 +47,6 @@ "ButtonForgotPassword": "Zapomenuté heslo", "ButtonFullscreen": "Celá obrazovka", "ButtonGotIt": "Mám to", - "ButtonGuide": "Programový průvodce", "ButtonLibraryAccess": "Přístup ke knihovně", "ButtonManualLogin": "Manuální přihlášení", "ButtonMore": "Více", @@ -57,20 +56,16 @@ "ButtonParentalControl": "Rodičovská kontrola", "ButtonPause": "Pozastavit", "ButtonPreviousTrack": "Předchozí stopa", - "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Rychlý průvodce", "ButtonRefreshGuideData": "Obnovit data programového průvodce", "ButtonRemove": "Odstranit", "ButtonRename": "Přejmenovat", "ButtonResetEasyPassword": "Obnovit easy pin kód", - "ButtonResetPassword": "Obnovit heslo", "ButtonResume": "Pokračovat", "ButtonRevoke": "Odvolat", "ButtonSelectDirectory": "Vybrat složku", - "ButtonSelectServer": "Výběr serveru", "ButtonSelectView": "Výběr zobrazení", "ButtonSend": "Odeslat", - "ButtonSettings": "Nastavení", "ButtonShutdown": "Vypnout", "ButtonSignIn": "Přihlásit se", "ButtonSignOut": "Odhlásit se", @@ -318,7 +313,6 @@ "HeaderSendMessage": "Poslat zprávu", "HeaderSeriesOptions": "Nastavení seriálu", "HeaderServerSettings": "Nastavení serveru", - "HeaderSettings": "Nastavení", "HeaderSetupLibrary": "Nastavení Vašich knihoven médií", "HeaderSortBy": "Třídit dle", "HeaderSortOrder": "Pořadí třídění", @@ -758,7 +752,6 @@ "OnlyForcedSubtitles": "Pouze vynucené", "OnlyForcedSubtitlesHelp": "Jen vynucené titulky budou nahrány.", "OptionAdminUsers": "Administrátoři", - "OptionAlbumArtist": "Umělec Alba", "OptionAllUsers": "Všichni uživatelé", "OptionAllowAudioPlaybackTranscoding": "Povolit přehrávání audia, které vyžaduje překódování", "OptionAllowBrowsingLiveTv": "Povolit přístup k televiznímu vysílání", @@ -773,20 +766,13 @@ "OptionAllowUserToManageServer": "Povolit tomuto uživateli správu serveru", "OptionAllowVideoPlaybackRemuxing": "Umožní přehrávání videa, která vyžaduje konverzi bez opětovného překódování", "OptionAllowVideoPlaybackTranscoding": "Povolit přehrávání videa, které vyžaduje překódování", - "OptionArtist": "Umělec", - "OptionAscending": "Vzestupně", - "OptionAuto": "Automaticky", "OptionAutomaticallyGroupSeries": "Automatické sloučení k seriálu, které jsou ve více složkách", "OptionAutomaticallyGroupSeriesHelp": "Seriály uložené ve více složkách v této knihovně budou automaticky sloučeny do jednoho seriálu.", - "OptionBlockBooks": "Knihy", "OptionBlockChannelContent": "Obsah internetového kanálu", "OptionBlockLiveTvChannels": "Televizní kanály", - "OptionBlockMovies": "Filmy", - "OptionBlockMusic": "Hudba", "OptionBlockTrailers": "Upoutávky", "OptionBlockTvShows": "Televizní pořady", "OptionCommunityRating": "Hodnocení komunity", - "OptionContinuing": "Pokračování", "OptionCriticRating": "Hodnocení kritiků", "OptionCustomUsers": "Vlastní", "OptionDaily": "Denní", @@ -794,15 +780,11 @@ "OptionDateAddedFileTime": "Dle data vytvoření souboru", "OptionDateAddedImportTime": "Dle data přidání do knihovny", "OptionDatePlayed": "Datum přehrání", - "OptionDescending": "Sestupně", "OptionDisableUser": "Zablokovat tohoto uživatele", "OptionDisableUserHelp": "Server nedovolí tomuto uživateli žádné připojení. Existující připojení bude okamžitě přerušeno.", "OptionDislikes": "Nelíbí se", "OptionDisplayFolderView": "Zobrazit složku s originálním zobrazením složek médií", "OptionDisplayFolderViewHelp": "Zobrazte složky vedle vašich ostatních knihoven médií. To může být užitečné, pokud si přejete mít prosté zobrazení složky.", - "OptionDownloadArtImage": "Obal", - "OptionDownloadBackImage": "Zadek", - "OptionDownloadDiscImage": "Disk", "OptionDownloadImagesInAdvance": "Stáhnout obrázky pokročilejším způsobem", "OptionDownloadImagesInAdvanceHelp": "Ve výchozím nastavení se většina obrázků stahuje pouze na žádost klienta. Povolením této možnosti dojde ke stažení všech obrázků předem současně s importem nových médií. Může způsobit výrazně delší skenování knihoven.", "OptionDownloadMenuImage": "Nabídka", @@ -818,22 +800,17 @@ "OptionEnableForAllTuners": "Povolit pro všechna zařízení tunerů", "OptionEnableM2tsMode": "Povolit M2ts mód", "OptionEnableM2tsModeHelp": "Povolit režim M2TS při kódování do MPEGTS.", - "OptionEnded": "Ukončeno", "OptionEquals": "Je rovno", "OptionEstimateContentLength": "Odhadnout délku obsahu při překódování", "OptionEveryday": "Každý den", "OptionExternallyDownloaded": "Externí stažení", "OptionExtractChapterImage": "Povolit extrakci obrázků z videa", - "OptionFavorite": "Oblíbené", "OptionHasSpecialFeatures": "Speciální funkce", - "OptionHasSubtitles": "Titulky", "OptionHasThemeSong": "Tematická hudba", "OptionHasThemeVideo": "Tematické video", - "OptionHasTrailer": "Upoutávka", "OptionHideUser": "Skrýt tohoto uživatele z přihlašovacích obrazovek", "OptionHideUserFromLoginHelp": "Vhodné pro soukromé a administrátorské účty. Pro přihlášení musí uživatel manuálně zadat uživatelské jméno a heslo.", "OptionHlsSegmentedSubtitles": "Segmentované titulky HLS", - "OptionHomeVideos": "Fotky", "OptionIgnoreTranscodeByteRangeRequests": "Ignorovat požadavky na překódování rozsahy bajtů", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Tyto žádosti budou nadále plněny, ale budou ignorovány hlavičky bajtových rozsahů.", "OptionImdbRating": "Hodnocení IMDb", @@ -849,7 +826,6 @@ "OptionPlainVideoItems": "Zobrazit všechna videa jako s obyčejné video položky", "OptionPlainVideoItemsHelp": "Všechna videa jsou prezentována v DIDL jako \"object.item.videoItem\" místo konkrétnějšího typu, například \"object.item.videoItem.movie\".", "OptionPlayCount": "Počet přehrání", - "OptionPlayed": "Shlédnuto", "OptionPremiereDate": "Datum premiéry", "OptionProfilePhoto": "Fotografie", "OptionRegex": "Regexp", @@ -859,7 +835,6 @@ "OptionRequirePerfectSubtitleMatch": "Stahovat jen titulky, které perfektně sedí k mým video souborům", "OptionResElement": "Prvek \"res\"", "OptionResumable": "Pozastavavitelný", - "OptionRuntime": "Délka", "OptionSaveMetadataAsHidden": "Ukládat metadata a obrázky jako skryté soubory", "OptionSaveMetadataAsHiddenHelp": "Změna se projeví u všech nově uložených metadat. Existující soubory metadat se aktualizují při příštím uložení serverem.", "OptionSpecialEpisode": "Speciální", @@ -867,7 +842,6 @@ "OptionTrackName": "Název skladby", "OptionTvdbRating": "Tvdb hodnocení", "OptionUnairedEpisode": "Neodvysílané epizody", - "OptionUnplayed": "Neshlédnuto", "OptionWakeFromSleep": "Probuzení ze spánku", "OptionWeekdays": "Pracovní dny", "OptionWeekends": "Víkendy", @@ -1001,11 +975,9 @@ "TabOther": "Další", "TabParentalControl": "Rodičovská kontrola", "TabPlugins": "Zásuvné moduly", - "TabProfile": "Profil", "TabProfiles": "Profily", "TabResponses": "Odpovědi", "TabScheduledTasks": "Naplánované úlohy", - "TabSettings": "Nastavení", "TabStreaming": "Streamování", "TabUpcoming": "Nadcházející", "Tags": "Tagy", @@ -1082,7 +1054,6 @@ "BurnSubtitlesHelp": "Určuje, zda má server při překódování videa vypálit titulky do obrazu. Tato funkce má velký negativní vliv na výkon. Chcete-li vypálit grafické formáty titulků (VOBSUB, PGS, SUB, IDX, atd.) a některé titulky ASS nebo SSA, vyberte možnost Automaticky.", "ButtonInfo": "Info", "ButtonOk": "Ok", - "ButtonRestart": "Restart", "ButtonScanAllLibraries": "Skenovat všechny knihovny", "ButtonStart": "Start", "ChangingMetadataImageSettingsNewContent": "Změny nastavení metadat nebo stahování médií se budou týkat pouze nového obsahu přidaného do vaší knihovny. Chcete-li aplikovat změny na existující položky, musíte je aktualizovat ručně.", @@ -1222,20 +1193,16 @@ "NoNewDevicesFound": "Nebyla nalezena žádná nová zařízení. Chcete-li přidat nový tuner, zavřete tento dialog a zadejte informace o zařízení ručně.", "OnlyImageFormats": "Pouze obrazové formáty (VOBSUB, PGS, SUB, atd.)", "Option3D": "3D", - "OptionAlbum": "Album", "OptionAllowMediaPlaybackTranscodingHelp": "Omezení přístupu k překódování může způsobit selhání přehrávání v klientech kvůli nepodporovaným formátům médií.", "OptionAllowSyncTranscoding": "Povolit stahování a synchronizaci médií, které vyžaduje překódování", "OptionBluray": "Blu-ray", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", - "OptionDownloadBannerImage": "Banner", - "OptionDownloadBoxImage": "Krabice", "OptionDownloadLogoImage": "Logo", "OptionIsHD": "HD", "OptionIsSD": "SD", "OptionLoginAttemptsBeforeLockout": "Určuje, kolik chybných pokusů o přihlášení lze provést před zablokováním.", "OptionLoginAttemptsBeforeLockoutHelp": "0 znamená zdědění výchozí hodnoty 3 pokusů pro běžné uživatele a 5 pro administrátory. Nastavení na -1 deaktivuje funkci.", "OptionMax": "Max", - "OptionProfileAudio": "Audio", "OptionProfileVideo": "Video", "OptionProfileVideoAudio": "Video Audio", "OptionProtocolHls": "Přímý přenos z internetu", diff --git a/src/strings/da.json b/src/strings/da.json index e097d93dd2..fc16caa032 100644 --- a/src/strings/da.json +++ b/src/strings/da.json @@ -52,21 +52,16 @@ "ButtonOpen": "Åben", "ButtonParentalControl": "Forældrekontrol", "ButtonPreviousTrack": "Forrige spor", - "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Hurtig-start guide", "ButtonRefreshGuideData": "Opdater Guide data", "ButtonRemove": "Fjern", "ButtonRename": "Omdøb", "ButtonResetEasyPassword": "Nulstil pinkode", - "ButtonResetPassword": "Nulstil adgangskode", - "ButtonRestart": "Genstart", "ButtonResume": "Genoptag", "ButtonRevoke": "Invalider", "ButtonScanAllLibraries": "Skan Alle Biblioteker", "ButtonSelectDirectory": "Vælg mappe", - "ButtonSelectServer": "Vælg server", "ButtonSelectView": "Vælg visning", - "ButtonSettings": "Indstillinger", "ButtonShutdown": "Luk", "ButtonSignIn": "Log Ind", "ButtonSignOut": "Log ud", @@ -288,7 +283,6 @@ "HeaderSendMessage": "Send besked", "HeaderSeriesOptions": "Serieindstillinger", "HeaderServerSettings": "Serverindstillinger", - "HeaderSettings": "Indstillinger", "HeaderSetupLibrary": "Opsæt dine mediebiblioteker", "HeaderSortBy": "Sorter Efter", "HeaderSortOrder": "Sorteringsorden", @@ -699,7 +693,6 @@ "NumLocationsValue": "{0} mapper", "OneChannel": "En kanal", "OptionAdminUsers": "Administratore", - "OptionAlbumArtist": "Album-artist", "OptionAllUsers": "Alle brugere", "OptionAllowAudioPlaybackTranscoding": "Tillad lydafspilning der kræver transkodning", "OptionAllowBrowsingLiveTv": "Tillad adgang til live TV", @@ -716,18 +709,13 @@ "OptionAllowUserToManageServer": "Tillad denne bruger at administrere serveren", "OptionAllowVideoPlaybackRemuxing": "Tillad videoafspilning som kræver konvertering uden omkodning", "OptionAllowVideoPlaybackTranscoding": "Tillad videoafspilning der kræver transkodning", - "OptionAscending": "Stigende", "OptionAutomaticallyGroupSeries": "Flet automatisk serier der er spredt over adskillige mapper", "OptionAutomaticallyGroupSeriesHelp": "Hvis aktiveret, vil serier der er spredt over adskillige mapper i dette bibliotek blive samlet i én enkelt serie.", - "OptionBlockBooks": "Bøger", "OptionBlockChannelContent": "Internet kanalindhold", "OptionBlockLiveTvChannels": "Live TV-kanaler", - "OptionBlockMovies": "Film", - "OptionBlockMusic": "Musik", "OptionBlockTrailers": "Trailere", "OptionBlockTvShows": "TV serier", "OptionCommunityRating": "Fællesskabsvurdering", - "OptionContinuing": "Forsættes", "OptionCriticRating": "Kritikervurdering", "OptionCustomUsers": "Brugerdefineret", "OptionDaily": "Daglig", @@ -735,16 +723,11 @@ "OptionDateAddedFileTime": "Brug filen oprettelsesdato", "OptionDateAddedImportTime": "Brug datoen for indskanning", "OptionDatePlayed": "Dato for afspilning", - "OptionDescending": "Faldende", "OptionDisableUser": "Deaktiver denne bruger", "OptionDisableUserHelp": "Hvis deaktiveret vil serveren ikke tillade forbindelser fra denne bruger. Eksisterende forbindelser vil blive afbrudt øjeblikkeligt.", "OptionDislikes": "Ikke-Lide", "OptionDisplayFolderView": "Få vist en mappevisning til at se enkle mediemapper", "OptionDisplayFolderViewHelp": "Vis mapper sammen med dine andre mediebiblioteker. Dette kan være nyttigt, hvis du gerne vil have en almindelig mappevisning.", - "OptionDownloadArtImage": "Billede", - "OptionDownloadBackImage": "Bagside", - "OptionDownloadBoxImage": "Boks", - "OptionDownloadDiscImage": "Disk", "OptionDownloadImagesInAdvance": "Download billeder på forhånd", "OptionDownloadImagesInAdvanceHelp": "Som standard downloades de fleste billeder kun, når de anmodes fra en Jellyfin-app. Aktivér denne mulighed for at downloade alle billeder på forhånd, da nye medier importeres. Dette kan forårsage betydeligt længere biblioteksscanninger.", "OptionDownloadPrimaryImage": "Primær", @@ -759,21 +742,17 @@ "OptionEnableForAllTuners": "Aktiver for alle tuner-enheder", "OptionEnableM2tsMode": "Aktiver M2ts tilstand", "OptionEnableM2tsModeHelp": "Aktiver M2ts tilstand når der omkodes til mpegts.", - "OptionEnded": "Færdig", "OptionEquals": "Lig med", "OptionEstimateContentLength": "Estimer længden af indholdet når der transkodes", "OptionEveryday": "Hver dag", "OptionExternallyDownloaded": "Ekstern hentning", "OptionExtractChapterImage": "Aktiver udvinding af kapitelbillede", - "OptionFavorite": "Favoritter", "OptionHasSpecialFeatures": "Specielle egenskaber", - "OptionHasSubtitles": "Undertekster", "OptionHasThemeSong": "Temasang", "OptionHasThemeVideo": "Temavideo", "OptionHideUser": "Vis ikke denne bruger på loginsiden", "OptionHideUserFromLoginHelp": "Nyttigt for private kontoer eller skjulte administratorkontoer. Brugeren skal logge ind ved at skive sit brugernavn og adgangskode.", "OptionHlsSegmentedSubtitles": "HLS segmenterede undertekster", - "OptionHomeVideos": "Billeder", "OptionIgnoreTranscodeByteRangeRequests": "Ignorer forespørgsler vedrørende transcode byte interval", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Hvis aktiveret vil disse forespørgsler blive efterkommet, men byte range headeren ignoreret.", "OptionImdbRating": "IMDB bedømmelse", @@ -789,9 +768,7 @@ "OptionPlainVideoItems": "Vis alle videoer som standardvideo", "OptionPlainVideoItemsHelp": "Når dette er aktiveret, bliver alle videoer vist i DIDL som \"object.item.videoItem\" i stedet for mere specifikke typer, som f. eks. \"object.item.videoItem.movie\".", "OptionPlayCount": "Gange afspillet", - "OptionPlayed": "Afspillet", "OptionPremiereDate": "Præmieredato", - "OptionProfileAudio": "Lyd", "OptionProfilePhoto": "Foto", "OptionProfileVideoAudio": "Video lyd", "OptionReleaseDate": "Udgivelsesdato", @@ -799,7 +776,6 @@ "OptionReportByteRangeSeekingWhenTranscodingHelp": "Dette er krævet for nogle enheder der ikke er særligt gode til tidssøgning.", "OptionRequirePerfectSubtitleMatch": "Download kun undertekster der er perfekte matches for mine videofiler", "OptionResumable": "Kan genoptages", - "OptionRuntime": "Varighed", "OptionSaveMetadataAsHidden": "Gem metadata og billeder som skjulte filer", "OptionSaveMetadataAsHiddenHelp": "Ændring af dette vil blive anvendt på nyt metadata gemt fremadrettet. Allerede eksisterende metadata-filer opdateres næste gang de gemmes af Jellyfin Server.", "OptionSpecialEpisode": "Særudsendelser", @@ -807,7 +783,6 @@ "OptionTrackName": "Nummerets navn", "OptionTvdbRating": "TVDB bedømmelse", "OptionUnairedEpisode": "Ikke sendte episoder", - "OptionUnplayed": "Ikke afspillet", "OptionWakeFromSleep": "Vågner fra dvale", "OptionWeekdays": "Hverdage", "OptionWeekends": "Weekender", @@ -925,11 +900,9 @@ "TabOther": "Andet", "TabParentalControl": "Forældrekontrol", "TabPlugins": "Tilføjelser", - "TabProfile": "Profil", "TabProfiles": "Profiler", "TabResponses": "Svar", "TabScheduledTasks": "Planlagte opgaver", - "TabSettings": "Indstillinger", "TabUpcoming": "Kommende", "TellUsAboutYourself": "Fortæl os lidt om dig selv", "ThisWizardWillGuideYou": "Denne guide vil hjælpe dig igennem opsætningen. For at begynde, vælg venligst dit fortrukne sprog.", @@ -1003,7 +976,6 @@ "Box": "Boks", "BoxRear": "Boks (bagside)", "BurnSubtitlesHelp": "Bestemmer om serveren skal brænde undertekster, når der afspilles transcoding videoer. Undgå dette vil forbedre ydelsen meget. Vælg Auto for at brænde billedbaserede formater (VOBSUB, PGS, SUB, IDX) og bestemte ASS- eller SSA-undertekster.", - "ButtonGuide": "Vejledning", "ButtonInfo": "Information", "ButtonOk": "Ok", "ButtonPause": "Pause", @@ -1175,16 +1147,11 @@ "OnlyForcedSubtitlesHelp": "Kun undertekster markeret som tvungne vil blive indlæst.", "OnlyImageFormats": "Kun billedformater (VOBSUB, PGS, SUB)", "Option3D": "3D", - "OptionAlbum": "Album", - "OptionArtist": "Kunstner", - "OptionAuto": "Automatisk", "OptionBanner": "Banner", "OptionBluray": "Blu-Ray", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", - "OptionDownloadBannerImage": "Bannere", "OptionDownloadLogoImage": "Logo", "OptionDownloadMenuImage": "Menu", - "OptionHasTrailer": "Forfilm", "OptionIsHD": "HD", "OptionIsSD": "SD", "OptionLikes": "Favoritter", diff --git a/src/strings/de.json b/src/strings/de.json index 756aa99ab4..54c8f4a539 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -59,7 +59,6 @@ "ButtonForgotPassword": "Passwort vergessen", "ButtonFullscreen": "Vollbild", "ButtonGotIt": "Verstanden", - "ButtonGuide": "TV Guide", "ButtonLibraryAccess": "Bibliothekszugang", "ButtonManualLogin": "Manuelle Anmeldung", "ButtonMore": "Mehr", @@ -68,22 +67,17 @@ "ButtonOpen": "Öffnen", "ButtonParentalControl": "Kindersicherung", "ButtonPreviousTrack": "Vorheriges Stück", - "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Schnellstart Anleitung", "ButtonRefreshGuideData": "Aktualisiere TV-Programmdaten", "ButtonRemove": "Entfernen", "ButtonRename": "Umbenennen", "ButtonResetEasyPassword": "Einfachen PIN zurücksetzen", - "ButtonResetPassword": "Passwort zurücksetzten", - "ButtonRestart": "Neustart", "ButtonResume": "Fortsetzen", "ButtonRevoke": "Zurücknehmen", "ButtonScanAllLibraries": "Scanne alle Bibliotheken", "ButtonSelectDirectory": "Wähle Verzeichnis", - "ButtonSelectServer": "Wähle Server", "ButtonSelectView": "Ansicht wählen", "ButtonSend": "senden", - "ButtonSettings": "Einstellungen", "ButtonShutdown": "Herunterfahren", "ButtonSignIn": "Einloggen", "ButtonSignOut": "Abmelden", @@ -361,7 +355,6 @@ "HeaderSeriesOptions": "Serienoptionen", "HeaderSeriesStatus": "Serienstatus", "HeaderServerSettings": "Server Einstellungen", - "HeaderSettings": "Einstellungen", "HeaderSetupLibrary": "Medienbibliotheken einrichten", "HeaderSortBy": "Sortiert nach", "HeaderSortOrder": "Sortierreihenfolge", @@ -831,7 +824,6 @@ "OnlyForcedSubtitlesHelp": "Nur Untertitel, die als erzwungen markiert wurden, werden geladen.", "OnlyImageFormats": "Nur Bildformate (VOBSUB, PGS, SUB)", "OptionAdminUsers": "Administratoren", - "OptionAlbumArtist": "Album-Interpret", "OptionAllUsers": "Alle Benutzer", "OptionAllowAudioPlaybackTranscoding": "Erlaube Audio-Wiedergabe die Transkodierung benötigt", "OptionAllowBrowsingLiveTv": "Erlaube Live TV Zugriff", @@ -848,19 +840,13 @@ "OptionAllowUserToManageServer": "Dieser Benutzer kann den Server managen", "OptionAllowVideoPlaybackRemuxing": "Erlaube Video-Wiedergabe mittels Konvertierung ohne Neu-Enkodierung", "OptionAllowVideoPlaybackTranscoding": "Erlaube Video-Wiedergabe die Transkodierung benötigt", - "OptionArtist": "Interpret", - "OptionAscending": "Aufsteigend", "OptionAutomaticallyGroupSeries": "Vermische Serieninhalte, die in verschiedenen Ordnern abgelegt sind", "OptionAutomaticallyGroupSeriesHelp": "Inhalte einer Serie in verschiedenen Ordnern werden innerhalb einer Bibliothek als eine Serie angezeigt.", - "OptionBlockBooks": "Bücher", "OptionBlockChannelContent": "Internet Channelinhalte", "OptionBlockLiveTvChannels": "Live-TV Kanäle", - "OptionBlockMovies": "Filme", - "OptionBlockMusic": "Musik", "OptionBlockTrailers": "Trailer", "OptionBlockTvShows": "TV Serien", "OptionCommunityRating": "Community Bewertung", - "OptionContinuing": "Fortlaufend", "OptionCriticRating": "Kritiker Bewertung", "OptionCustomUsers": "Benutzer", "OptionDaily": "Täglich", @@ -868,15 +854,11 @@ "OptionDateAddedFileTime": "Benutze das Erstellungsdatum der Datei", "OptionDateAddedImportTime": "Benutze das Scandatum vom Hinzufügen in die Bibliothek", "OptionDatePlayed": "Gesehen am", - "OptionDescending": "Absteigend", "OptionDisableUser": "Sperre diesen Benutzer", "OptionDisableUserHelp": "Der Server keine Verbindung von diesem Benutzer erlauben. Bestehende Verbindungen werden sofort beendet.", "OptionDislikes": "Mag ich nicht", "OptionDisplayFolderView": "Darstellung in Verzeichnisansicht zeigt Medien Verzechnisse", "OptionDisplayFolderViewHelp": "Zeige eine Verzeichnisansicht neben deinen Bibliotheken an. Dies kann praktisch sein, wenn man nur Verzeichnisansichten verwendet.", - "OptionDownloadArtImage": "Kunst", - "OptionDownloadBackImage": "Zurück", - "OptionDownloadDiscImage": "Disk", "OptionDownloadImagesInAdvance": "Bilder vorab herunterladen", "OptionDownloadImagesInAdvanceHelp": "Standardmäßig werden die meisten Bilder erst dann heruntergeladen, wenn ein Client diese anfragt. Schalten Sie diese Option ein um alle Bilder im Voraus herunterzuladen, wenn neue Medien importiert werden. Diese Einstellung kann zu signifikant längeren Bibliothekscans führen.", "OptionDownloadMenuImage": "Menü", @@ -891,21 +873,17 @@ "OptionEnableForAllTuners": "Aktiviere für alle Tuner", "OptionEnableM2tsMode": "Aktiviere M2TS Modus", "OptionEnableM2tsModeHelp": "Aktiviere M2TS Modus beim Encodieren nach MPEGTS.", - "OptionEnded": "Beendent", "OptionEquals": "Gleiche", "OptionEstimateContentLength": "Voraussichtliche Inhaltslänge beim Transkodieren", "OptionEveryday": "Täglich", "OptionExternallyDownloaded": "Externer Download", "OptionExtractChapterImage": "Aktiviere Kapitelbild-Extrahierung", - "OptionFavorite": "Favoriten", "OptionHasSpecialFeatures": "Besonderes Merkmal", - "OptionHasSubtitles": "Untertitel", "OptionHasThemeSong": "Titellied", "OptionHasThemeVideo": "Titelvideo", "OptionHideUser": "Verberge diesen Benutzer in den Anmeldebildschirmen", "OptionHideUserFromLoginHelp": "Hilfreich für private oder versteckte Administrator-Konten. Der Benutzer muss sich manuell mit der Eingabe des Benutzernamens und Passworts anmelden.", "OptionHlsSegmentedSubtitles": "HLS segmentierte Untertitel", - "OptionHomeVideos": "Fotos", "OptionIgnoreTranscodeByteRangeRequests": "Ignoriere Anfragen für Transkodierbytebereiche", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Diese Anfragen werden berücksichtigt, aber den Byte-Range-Header ignorieren.", "OptionImdbRating": "IMDb Bewertung", @@ -920,7 +898,6 @@ "OptionPlainVideoItems": "Zeige alle Videos als reine Videodateien an", "OptionPlainVideoItemsHelp": "Alle Videos werden in DIDL als \"object.item.videoItem\" angezeigt, anstatt eines spezifischen Typs wie beispielsweise \"object.item.videoItem.movie\".", "OptionPlayCount": "Zähler", - "OptionPlayed": "Gesehen", "OptionPremiereDate": "Premiere", "OptionReleaseDate": "Veröffentlichungsdatum", "OptionReportByteRangeSeekingWhenTranscoding": "Teilt die Unterstützung der Bytesuche während des transkodierens auf dem Server mit", @@ -929,12 +906,10 @@ "OptionRequirePerfectSubtitleMatchHelp": "Perfektes Ergebnis wählt beim Filtern nur Untertitel, welche getestet und für deine exakte Videodatei verifiziert wurden. Die Abwahl dieser Option erhöht die Chance, dass Untertitel heruntergeladen werden, die Möglichkeit falscher Untertitel oder dass Text an falschen Positionen angezeigt wird ist aber ebenfalls größer.", "OptionResElement": "Res Element", "OptionResumable": "Fortsetzen", - "OptionRuntime": "Dauer", "OptionSaveMetadataAsHidden": "Speichere Metadaten und Bilder als versteckte Dateien", "OptionSaveMetadataAsHiddenHelp": "Änderungen werden sich auf neue Metadaten angewendet. Bereits existierende Metadaten werden bei der nächsten Speicherung des Servers auf den neusten Stand gebracht.", "OptionTvdbRating": "TVDB Bewertung", "OptionUnairedEpisode": "Nicht ausgestrahlte Episoden", - "OptionUnplayed": "Ungesehen", "OptionWakeFromSleep": "Aufwachen nach dem Schlafen", "OptionWeekdays": "Wöchentlich", "OptionWeekends": "An Wochenenden", @@ -1082,11 +1057,9 @@ "TabNotifications": "Benachrichtigungen", "TabOther": "Andere", "TabParentalControl": "Kindersicherung", - "TabProfile": "Profil", "TabProfiles": "Profile", "TabResponses": "Antworten", "TabScheduledTasks": "Geplante Aufgaben", - "TabSettings": "Einstellungen", "TabUpcoming": "Bevorstehend", "TellUsAboutYourself": "Sagen Sie uns etwas über sich selbst", "ThemeSongs": "Titelsongs", @@ -1205,17 +1178,12 @@ "MediaInfoInterlaced": "Interlaced/Zeilensprungverfahren", "MediaInfoLevel": "Level", "Option3D": "3D", - "OptionAlbum": "Album", - "OptionAuto": "Auto", "OptionBluray": "Blu-ray", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", - "OptionDownloadBannerImage": "Banner", "OptionDownloadLogoImage": "Logo", - "OptionHasTrailer": "Trailer", "OptionIsHD": "HD", "OptionIsSD": "SD", "OptionNameSort": "Name", - "OptionProfileAudio": "Audio", "OptionProfilePhoto": "Foto", "OptionProfileVideo": "Video", "OptionProtocolHls": "HTTP-Live-Streaming", @@ -1273,7 +1241,6 @@ "MediaInfoStreamTypeSubtitle": "Untertitel", "MediaInfoStreamTypeVideo": "Video", "MessageNoCollectionsAvailable": "Sammlungen ermöglichen es, personalisierte Gruppierungen von Filmen, Serien und Alben zu genießen. Klicken Sie auf die Schaltfläche +, um mit der Erstellung von Sammlungen zu beginnen.", - "OptionDownloadBoxImage": "Box", "OptionLoginAttemptsBeforeLockout": "Legt fest, wie viele falsche Anmeldeversuche durchgeführt werden können, bevor es zur Sperrung kommt.", "OptionLoginAttemptsBeforeLockoutHelp": "Null (0) bedeutet den Standardwert von drei Versuchen für normale, sowie fünf für Administrator-Benutzer zu übernehmen. Ein Wert von -1 deaktiviert die Funktion.", "PasswordResetProviderHelp": "Wählen Sie einen Password Reset Provider, der verwendet werden soll, wenn dieser Benutzer ein Passwort zurücksetzen möchte.", diff --git a/src/strings/el.json b/src/strings/el.json index 7ee61d2b62..3abf40e981 100644 --- a/src/strings/el.json +++ b/src/strings/el.json @@ -57,7 +57,6 @@ "ButtonForgotPassword": "Ξέχασα τον κωδικό", "ButtonFullscreen": "Πλήρης οθόνη", "ButtonGotIt": "Το κατάλαβα", - "ButtonGuide": "Οδηγός", "ButtonInfo": "Πληροφορία", "ButtonLibraryAccess": "Πρόσβαση στη βιβλιοθήκη", "ButtonManualLogin": "Χειροκίνητη Είσοδος", @@ -67,22 +66,17 @@ "ButtonParentalControl": "Γονικός έλεγχος", "ButtonPause": "Παύση", "ButtonPreviousTrack": "Προηγουμενο", - "ButtonProfile": "Προφίλ", "ButtonQuickStartGuide": "Οδηγός Γρήγορης Εκκίνησης", "ButtonRefreshGuideData": "Ανανέωση Δεδομένων Οδηγού", "ButtonRemove": "Κατάργηση", "ButtonRename": "Μετονομασία", "ButtonResetEasyPassword": "Επαναφορά εύκολου κωδικού PIN", - "ButtonResetPassword": "Επαναφορά του κωδικού πρόσβασης", - "ButtonRestart": "Επανεκκίνηση", "ButtonResume": "Συνέχιση", "ButtonRevoke": "Ανακαλώ", "ButtonScanAllLibraries": "Σάρωση όλων των βιβλιοθηκών", "ButtonSelectDirectory": "Επιλογή Φακέλου", - "ButtonSelectServer": "Επιλογή Διακομιστή", "ButtonSelectView": "Επιλέξτε Προβολή", "ButtonSend": "Αποστολή", - "ButtonSettings": "Ρυθμίσεις", "ButtonShutdown": "Απενεργοποίηση", "ButtonSignIn": "Είσοδος", "ButtonSignOut": "Έξοδος", @@ -331,7 +325,6 @@ "HeaderSeriesOptions": "Επιλογές Σειρών", "HeaderSeriesStatus": "Κατάσταση Σειράς", "HeaderServerSettings": "Ρυθμίσεις διακομιστή", - "HeaderSettings": "Ρυθμίσεις", "HeaderSetupLibrary": "Ρυθμίστε τις βιβλιοθήκες πολυμέσων σας", "HeaderSortBy": "Ταξινόμηση κατά", "HeaderSortOrder": "Σειρά ταξινόμησης", @@ -738,8 +731,6 @@ "OnlyForcedSubtitlesHelp": "Μόνο οι υπότιτλοι που έχουν επισημανθεί ως αναγκασμένοι θα φορτωθούν.", "OnlyImageFormats": "Μόνο μορφές εικόνων (VOBSUB, PGS, SUB / IDX κ.λπ.)", "OptionAdminUsers": "Διαχειριστές", - "OptionAlbum": "Άλμπουμ", - "OptionAlbumArtist": "άλμπουμ Καλλιτέχνες", "OptionAllUsers": "Ολοι οι χρήστες", "OptionAllowAudioPlaybackTranscoding": "Επέτρεψε την αναπαραγωγή μουσικής που χρειάζεται αναπροσαρμογή", "OptionAllowBrowsingLiveTv": "ΖΩΝΤΑΝΗ ΤΗΛΕΩΡΑΣΗ", @@ -756,34 +747,21 @@ "OptionAllowUserToManageServer": "Επιτρέψτε σε αυτόν τον χρήστη να διαχειρίζεται το διακομιστή", "OptionAllowVideoPlaybackRemuxing": "Επέτρεψε την αναπαραγωγή βίντεο που χρειάζεται αναπροσαρμογή", "OptionAllowVideoPlaybackTranscoding": "Επέτρεψε την αναπαραγωγή βίντεο που χρειάζεται αναπροσαρμογή", - "OptionArtist": "Καλλιτέχνες", - "OptionAscending": "Αύξουσα", - "OptionAuto": "Αυτόματο", - "OptionBlockBooks": "Βιβλία", "OptionBlockChannelContent": "Περιεχόμενο Διαδικτυακών Καναλιών", "OptionBlockLiveTvChannels": "ΚΑΝΑΛΙΑ ΖΩΝΤΑΝΗΣ ΤΗΛΕΟΡΑΣΗΣ", - "OptionBlockMovies": "Ταινίες", - "OptionBlockMusic": "Μουσική", "OptionBlockTvShows": "Τηλεοπτικά προγράμματα", "OptionCommunityRating": "Βαθμολογία Κοινότητας", - "OptionContinuing": "Συνέχιση", "OptionCriticRating": "Βαθμολογία κριτικών", "OptionCustomUsers": "Προσαρμοσμένο", "OptionDaily": "Καθημερινά", "OptionDateAdded": "Ημερομηνία Προσθήκης", "OptionDateAddedFileTime": "Χρήση της ημερομηνίας δημιουργίας αρχείου", "OptionDatePlayed": "Ημερομηνία Αναπαραγωγής", - "OptionDescending": "Φθίνουσα", "OptionDisableUser": "Απενεργοποιήση Χρήστη", "OptionDisableUserHelp": "Αν απενεργοποιηθεί, ο διακομιστής δεν θα επιτρέψει οποιεσδήποτε συνδέσεις από αυτόν τον χρήστη. Οι υπάρχουσες συνδέσεις τερματίζονται απότομα.", "OptionDislikes": "Αντιπαθεί", "OptionDisplayFolderView": "Εμφάνιση μιας προβολής φακέλου για την εμφάνιση φακέλων απλού μέσου", "OptionDisplayFolderViewHelp": "Εάν ενεργοποιηθεί, οι εφαρμογές Jellyfin θα εμφανίζουν μια κατηγορία φακέλων παράλληλα με τη βιβλιοθήκη πολυμέσων. Αυτό είναι χρήσιμο αν θέλετε να έχετε προβολές απλού φακέλου.", - "OptionDownloadArtImage": "Τέχνη", - "OptionDownloadBackImage": "Πίσω", - "OptionDownloadBannerImage": "Πανό", - "OptionDownloadBoxImage": "Κουτί", - "OptionDownloadDiscImage": "Δίσκος", "OptionDownloadImagesInAdvance": "Κατεβάστε εικόνες εκ των προτέρων", "OptionDownloadImagesInAdvanceHelp": "Από προεπιλογή, οι περισσότερες εικόνες μεταφορτώνονται μόνο όταν ζητούνται από μια εφαρμογή Jellyfin. Ενεργοποιήστε αυτήν την επιλογή για να κάνετε λήψη όλων των εικόνων εκ των προτέρων, καθώς εισάγονται νέα μέσα. Αυτό μπορεί να προκαλέσει σημαντικά μεγαλύτερες σαρώσεις βιβλιοθήκης.", "OptionDownloadMenuImage": "Μενού", @@ -794,19 +772,14 @@ "OptionEnableAccessToAllLibraries": "Πρόσβαση σε όλες τις Βιβλιοθήκες", "OptionEnableExternalContentInSuggestionsHelp": "Να επιτρέπεται η συμπερίληψη internet trailers και προγράμματα live tv στο προτεινόμενο περιεχόμενο.", "OptionEnableM2tsMode": "Ενεργοποίηση λειτουργίας M2ts", - "OptionEnded": "Τέλος", "OptionEquals": "Ίσα", "OptionEveryday": "Κάθε μέρα", "OptionExternallyDownloaded": "Εξωτερική λήψη", - "OptionFavorite": "Αγαπημένα", "OptionHasSpecialFeatures": "Ειδικά Χαρακτηριστικά", - "OptionHasSubtitles": "Υπότιτλοι", "OptionHasThemeSong": "Θεματικό Τραγούδι", "OptionHasThemeVideo": "Θεματικό Βίντεο", - "OptionHasTrailer": "Τρέϊλερ", "OptionHideUser": "Απόκρυψη αυτού του χρήστη από τις οθόνες σύνδεσης", "OptionHideUserFromLoginHelp": "Χρήσιμο για ιδιωτικούς ή κρυφό λογαριασμούς διαχειριστή. Ο χρήστης θα πρέπει να συνδεθεί χειροκίνητα εισάγοντας το όνομα χρήστη και τον κωδικό πρόσβασής του.", - "OptionHomeVideos": "Προσωπικά βίντεο & φωτογραφίες", "OptionImdbRating": "Βαθμολογία IMDb", "OptionLikes": "Συμπαθεί", "OptionMax": "Μέγιστο", @@ -821,9 +794,7 @@ "OptionPlainVideoItems": "Εμφάνιση όλων των βίντεο ως στοιχείων απλού βίντεο", "OptionPlainVideoItemsHelp": "Εάν ενεργοποιηθεί, όλα τα βίντεο αντιπροσωπεύονται στο DIDL ως \"object.item.videoItem\" αντί για έναν πιο συγκεκριμένο τύπο, όπως \"object.item.videoItem.movie\".", "OptionPlayCount": "Φορές Αναπαραγωγής", - "OptionPlayed": "Αναπαράχθηκε", "OptionPremiereDate": "Ημερομηνία πρεμιέρας", - "OptionProfileAudio": "Ήχος", "OptionProfileVideo": "Βίντεο", "OptionReleaseDate": "Ημερομηνία Προβολής", "OptionResumable": "Αναληπτέος", @@ -832,7 +803,6 @@ "OptionTrackName": "Όνομα Αρχείου", "OptionTvdbRating": "Tvdb Βαθμολογία", "OptionUnairedEpisode": "Επεισόδια που δεν προβλήθηκαν", - "OptionUnplayed": "Δεν παίχθηκε", "OptionWakeFromSleep": "Επανεργοποιήση", "OptionWeekdays": "Καθημερινές", "OptionWeekends": "Σαββατοκύριακα", @@ -971,12 +941,10 @@ "TabOther": "Άλλα", "TabParentalControl": "Γονικός έλεγχος", "TabPlugins": "Πρόσθετα", - "TabProfile": "Προφίλ", "TabProfiles": "Προφίλ", "TabResponses": "Απαντήσεις", "TabScheduledTasks": "Προγραμματισμένες Εργασίες", "TabServer": "Διακομιστής", - "TabSettings": "Ρυθμισεις", "TabStreaming": "Ροή", "TabUpcoming": "Επερχόμενα", "Tags": "Ετικέτες", diff --git a/src/strings/en-gb.json b/src/strings/en-gb.json index d44183a4a8..62893a62fb 100644 --- a/src/strings/en-gb.json +++ b/src/strings/en-gb.json @@ -21,7 +21,6 @@ "NewCollectionHelp": "Collections allow you to create personalized groupings of movies and other library content.", "NoNewDevicesFound": "No new devices found. To add a new tuner, close this dialogueand enter the device information manually.", "OptionEnableExternalContentInSuggestionsHelp": "Allow internet trailers and live TV programs to be included within suggested content.", - "OptionFavorite": "Favourites", "OptionIgnoreTranscodeByteRangeRequestsHelp": "If enabled, these requests will be honoured but will ignore the byte range header.", "PlaceFavoriteChannelsAtBeginning": "Place favourite channels at the beginning", "Programs": "Programs", @@ -109,7 +108,6 @@ "ButtonForgotPassword": "Forgot Password", "ButtonFullscreen": "Fullscreen", "ButtonGotIt": "Got It", - "ButtonGuide": "Guide", "ButtonInfo": "Info", "ButtonLibraryAccess": "Library access", "ButtonManualLogin": "Manual Login", @@ -121,22 +119,17 @@ "ButtonParentalControl": "Parental control", "ButtonPause": "Pause", "ButtonPreviousTrack": "Previous track", - "ButtonProfile": "Profile", "ButtonQuickStartGuide": "Quick Start Guide", "ButtonRefreshGuideData": "Refresh Guide Data", "ButtonRemove": "Remove", "ButtonRename": "Rename", "ButtonResetEasyPassword": "Reset easy pin code", - "ButtonResetPassword": "Reset Password", - "ButtonRestart": "Restart", "ButtonResume": "Resume", "ButtonRevoke": "Revoke", "ButtonScanAllLibraries": "Scan All Libraries", "ButtonSelectDirectory": "Select Directory", - "ButtonSelectServer": "Select Server", "ButtonSelectView": "Select view", "ButtonSend": "Send", - "ButtonSettings": "Settings", "ButtonShutdown": "Shutdown", "ButtonSignIn": "Sign In", "ButtonSignOut": "Sign Out", @@ -423,7 +416,6 @@ "Thursday": "Thursday", "ThisWizardWillGuideYou": "This wizard will help guide you through the setup process. To begin, please select your preferred language.", "TheseSettingsAffectSubtitlesOnThisDevice": "These settings affect subtitles on this device", - "TabSettings": "Settings", "TabServer": "Server", "TabScheduledTasks": "Scheduled Tasks", "TabResponses": "Responses", @@ -546,7 +538,6 @@ "OptionWeekends": "Weekends", "OptionWeekdays": "Weekdays", "OptionWakeFromSleep": "Wake from sleep", - "OptionUnplayed": "Unplayed", "OptionUnairedEpisode": "Unaired Episodes", "OptionTrackName": "Track Name", "OptionThumbCard": "Thumb card", @@ -555,7 +546,6 @@ "OptionSpecialEpisode": "Specials", "OptionSaveMetadataAsHiddenHelp": "Changing this will apply to new metadata saved going forward. Existing metadata files will be updated the next time they are saved by Jellyfin Server.", "OptionSaveMetadataAsHidden": "Save metadata and images as hidden files", - "OptionRuntime": "Runtime", "OptionResumable": "Resumable", "OptionResElement": "res element", "OptionRequirePerfectSubtitleMatchHelp": "Requiring a perfect match will filter subtitles to include only those that have been tested and verified with your exact video file. Unchecking this will increase the likelihood of subtitles being downloaded, but will increase the chances of mistimed or incorrect subtitle text.", @@ -564,7 +554,6 @@ "OptionReportByteRangeSeekingWhenTranscoding": "Report that the server supports byte seeking when transcoding", "OptionRegex": "Regex", "OptionProfileVideo": "Video", - "OptionProfileAudio": "Audio", "OptionPremiereDate": "Premiere Date", "OptionPlayCount": "Play Count", "OptionPlainVideoItemsHelp": "If enabled, all videos are represented in DIDL as \"object.item.videoItem\" instead of a more specific type, such as \"object.item.videoItem.movie\".", @@ -582,12 +571,10 @@ "OptionDatePlayed": "Date Played", "OptionBlockTvShows": "TV Shows", "OptionBlockTrailers": "Trailers", - "OptionBlockMovies": "Movies", "OptionBlockChannelContent": "Internet Channel Content", "OptionBanner": "Banner", "OptionAutomaticallyGroupSeriesHelp": "If enabled, series that are spread across multiple folders within this library will be automatically merged into a single series.", "OptionAutomaticallyGroupSeries": "Automatically merge series that are spread across multiple folders", - "OptionArtist": "Artist", "OptionAllowVideoPlaybackTranscoding": "Allow video playback that requires transcoding", "OptionAllowVideoPlaybackRemuxing": "Allow video playback that requires conversion without re-encoding", "OptionAllowUserToManageServer": "Allow this user to manage the server", @@ -603,8 +590,6 @@ "OptionAllowBrowsingLiveTv": "Allow Live TV access", "OptionAllowAudioPlaybackTranscoding": "Allow audio playback that requires transcoding", "OptionAllUsers": "All users", - "OptionAlbumArtist": "Album Artist", - "OptionAlbum": "Album", "Option3D": "3D", "OnlyImageFormats": "Only Image Formats (VOBSUB, PGS, SUB)", "OnlyForcedSubtitlesHelp": "Only subtitles marked as forced will be loaded.", @@ -859,7 +844,6 @@ "LabelDefaultUserHelp": "Determines which user library should be displayed on connected devices. This can be overridden for each device using profiles.", "TabStreaming": "Streaming", "TabProfiles": "Profiles", - "TabProfile": "Profile", "TabPlugins": "Plugins", "TabNfoSettings": "NFO Settings", "TabNetworking": "Networking", @@ -1113,7 +1097,6 @@ "OptionProfileVideoAudio": "Video Audio", "OptionPosterCard": "Poster card", "OptionPoster": "Poster", - "OptionPlayed": "Played", "OneChannel": "One channel", "MediaInfoChannels": "Channels", "MediaInfoBitDepth": "Bit depth", @@ -1154,7 +1137,6 @@ "OptionDisableUserHelp": "If disabled the server will not allow any connections from this user. Existing connections will be abruptly terminated.", "OptionDateAdded": "Date Added", "OptionDaily": "Daily", - "OptionContinuing": "Continuing", "OptionCommunityRating": "Community Rating", "MessageUnsetContentHelp": "Content will be displayed as plain folders. For best results use the metadata manager to set the content types of sub-folders.", "LabelSelectVersionToInstall": "Select version to install:", @@ -1164,19 +1146,15 @@ "OptionIsHD": "HD", "OptionImdbRating": "IMDb Rating", "OptionIgnoreTranscodeByteRangeRequests": "Ignore transcode byte range requests", - "OptionHomeVideos": "Photos", "OptionHlsSegmentedSubtitles": "HLS segmented subtitles", "OptionHideUserFromLoginHelp": "Useful for private or hidden administrator accounts. The user will need to sign in manually by entering their username and password.", "OptionHideUser": "Hide this user from login screens", - "OptionHasTrailer": "Trailer", "OptionHasThemeVideo": "Theme Video", "OptionHasThemeSong": "Theme Song", - "OptionHasSubtitles": "Subtitles", "OptionHasSpecialFeatures": "Special Features", "OptionExtractChapterImage": "Enable chapter image extraction", "OptionExternallyDownloaded": "External download", "OptionEquals": "Equals", - "OptionEnded": "Ended", "OptionEnableM2tsModeHelp": "Enable m2ts mode when encoding to mpegts.", "OptionEnableM2tsMode": "Enable M2ts mode", "OptionEnableExternalContentInSuggestions": "Enable external content in suggestions", @@ -1190,11 +1168,6 @@ "OptionDownloadLogoImage": "Logo", "OptionDownloadImagesInAdvanceHelp": "By default, most images are only downloaded when requested by a Jellyfin app. Enable this option to download all images in advance, as new media is imported. This may cause significantly longer library scans.", "OptionDownloadImagesInAdvance": "Download images in advance", - "OptionDownloadDiscImage": "Disc", - "OptionDownloadBoxImage": "Box", - "OptionDownloadBannerImage": "Banner", - "OptionDownloadBackImage": "Back", - "OptionDownloadArtImage": "Art", "OptionDisplayFolderView": "Display a folder view to show plain media folders", "LabelMovieRecordingPath": "Movie recording path (optional):", "LabelMoviePrefixHelp": "If a prefix is applied to movie titles, enter it here so the server can handle it properly.", @@ -1233,18 +1206,13 @@ "OptionDisplayFolderViewHelp": "Display folders alongside your other media libraries. This can be useful if you'd like to have a plain folder view.", "OptionDislikes": "Dislikes", "OptionDisableUser": "Disable this user", - "OptionDescending": "Descending", "OptionDateAddedImportTime": "Use date scanned into the library", "OptionDateAddedFileTime": "Use file creation date", "OptionCustomUsers": "Custom", "OptionCriticRating": "Critic Rating", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", "OptionBluray": "Blu-ray", - "OptionBlockMusic": "Music", "OptionBlockLiveTvChannels": "Live TV Channels", - "OptionBlockBooks": "Books", - "OptionAuto": "Auto", - "OptionAscending": "Ascending", "OptionAdminUsers": "Administrators", "NoSubtitleSearchResultsFound": "No results found.", "News": "News", @@ -1277,7 +1245,6 @@ "HeaderSortOrder": "Sort Order", "HeaderSortBy": "Sort By", "HeaderSetupLibrary": "Setup your media libraries", - "HeaderSettings": "Settings", "HeaderServerSettings": "Server Settings", "HeaderSeriesStatus": "Series Status", "HeaderSeriesOptions": "Series Options", diff --git a/src/strings/en-us.json b/src/strings/en-us.json index f87c1a326e..7fbdfe4d1f 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -75,7 +75,6 @@ "ButtonForgotPassword": "Forgot Password", "ButtonFullscreen": "Fullscreen", "ButtonGotIt": "Got It", - "ButtonGuide": "Guide", "ButtonInfo": "Info", "ButtonLibraryAccess": "Library access", "ButtonManualLogin": "Manual Login", @@ -87,22 +86,17 @@ "ButtonParentalControl": "Parental control", "ButtonPause": "Pause", "ButtonPreviousTrack": "Previous track", - "ButtonProfile": "Profile", "ButtonQuickStartGuide": "Quick Start Guide", "ButtonRefreshGuideData": "Refresh Guide Data", "ButtonRemove": "Remove", "ButtonRename": "Rename", "ButtonResetEasyPassword": "Reset easy pin code", - "ButtonResetPassword": "Reset Password", - "ButtonRestart": "Restart", "ButtonResume": "Resume", "ButtonRevoke": "Revoke", "ButtonScanAllLibraries": "Scan All Libraries", "ButtonSelectDirectory": "Select Directory", - "ButtonSelectServer": "Select Server", "ButtonSelectView": "Select view", "ButtonSend": "Send", - "ButtonSettings": "Settings", "ButtonShutdown": "Shutdown", "ButtonSignIn": "Sign In", "ButtonSignOut": "Sign Out", @@ -425,7 +419,6 @@ "HeaderSeriesStatus": "Series Status", "HeaderServerAddressSettings": "Server Address Settings", "HeaderServerSettings": "Server Settings", - "HeaderSettings": "Settings", "HeaderSetupLibrary": "Setup your media libraries", "HeaderSortBy": "Sort By", "HeaderSortOrder": "Sort Order", @@ -1028,8 +1021,6 @@ "OnlyImageFormats": "Only Image Formats (VOBSUB, PGS, SUB)", "Option3D": "3D", "OptionAdminUsers": "Administrators", - "OptionAlbum": "Album", - "OptionAlbumArtist": "Album Artist", "OptionAllUsers": "All users", "OptionAllowAudioPlaybackTranscoding": "Allow audio playback that requires transcoding", "OptionForceRemoteSourceTranscoding": "Force transcoding of remote media sources (like LiveTV)", @@ -1047,23 +1038,16 @@ "OptionAllowUserToManageServer": "Allow this user to manage the server", "OptionAllowVideoPlaybackRemuxing": "Allow video playback that requires conversion without re-encoding", "OptionAllowVideoPlaybackTranscoding": "Allow video playback that requires transcoding", - "OptionArtist": "Artist", - "OptionAscending": "Ascending", - "OptionAuto": "Auto", "OptionAutomaticallyGroupSeries": "Automatically merge series that are spread across multiple folders", "OptionAutomaticallyGroupSeriesHelp": "Series that are spread across multiple folders within this library will be automatically merged into a single series.", "OptionBanner": "Banner", - "OptionBlockBooks": "Books", "OptionBlockChannelContent": "Internet Channel Content", "OptionBlockLiveTvChannels": "Live TV Channels", - "OptionBlockMovies": "Movies", - "OptionBlockMusic": "Music", "OptionBlockTrailers": "Trailers", "OptionBlockTvShows": "TV Shows", "OptionBluray": "Blu-ray", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", "OptionCommunityRating": "Community Rating", - "OptionContinuing": "Continuing", "OptionCriticRating": "Critic Rating", "OptionCustomUsers": "Custom", "OptionDaily": "Daily", @@ -1071,17 +1055,11 @@ "OptionDateAddedFileTime": "Use file creation date", "OptionDateAddedImportTime": "Use date scanned into the library", "OptionDatePlayed": "Date Played", - "OptionDescending": "Descending", "OptionDisableUser": "Disable this user", "OptionDisableUserHelp": "The server will not allow any connections from this user. Existing connections will be abruptly terminated.", "OptionDislikes": "Dislikes", "OptionDisplayFolderView": "Display a folder view to show plain media folders", "OptionDisplayFolderViewHelp": "Display folders alongside your other media libraries. This can be useful if you'd like to have a plain folder view.", - "OptionDownloadArtImage": "Art", - "OptionDownloadBackImage": "Back", - "OptionDownloadBannerImage": "Banner", - "OptionDownloadBoxImage": "Box", - "OptionDownloadDiscImage": "Disc", "OptionDownloadImagesInAdvance": "Download images in advance", "OptionDownloadImagesInAdvanceHelp": "By default, most images are only downloaded when requested by a client. Enable this option to download all images in advance, as new media is imported. This may cause significantly longer library scans.", "OptionDownloadLogoImage": "Logo", @@ -1098,22 +1076,17 @@ "OptionEnableForAllTuners": "Enable for all tuner devices", "OptionEnableM2tsMode": "Enable M2ts mode", "OptionEnableM2tsModeHelp": "Enable m2ts mode when encoding to mpegts.", - "OptionEnded": "Ended", "OptionEquals": "Equals", "OptionEstimateContentLength": "Estimate content length when transcoding", "OptionEveryday": "Every day", "OptionExternallyDownloaded": "External download", "OptionExtractChapterImage": "Enable chapter image extraction", - "OptionFavorite": "Favorites", "OptionHasSpecialFeatures": "Special Features", - "OptionHasSubtitles": "Subtitles", "OptionHasThemeSong": "Theme Song", "OptionHasThemeVideo": "Theme Video", - "OptionHasTrailer": "Trailer", "OptionHideUser": "Hide this user from login screens", "OptionHideUserFromLoginHelp": "Useful for private or hidden administrator accounts. The user will need to sign in manually by entering their username and password.", "OptionHlsSegmentedSubtitles": "HLS segmented subtitles", - "OptionHomeVideos": "Photos", "OptionIgnoreTranscodeByteRangeRequests": "Ignore transcode byte range requests", "OptionIgnoreTranscodeByteRangeRequestsHelp": "These requests will be honored but will ignore the byte range header.", "OptionImdbRating": "IMDb Rating", @@ -1135,11 +1108,9 @@ "OptionPlainVideoItems": "Display all videos as plain video items", "OptionPlainVideoItemsHelp": "All videos are represented in DIDL as \"object.item.videoItem\" instead of a more specific type, such as \"object.item.videoItem.movie\".", "OptionPlayCount": "Play Count", - "OptionPlayed": "Played", "OptionPoster": "Poster", "OptionPosterCard": "Poster card", "OptionPremiereDate": "Premiere Date", - "OptionProfileAudio": "Audio", "OptionProfilePhoto": "Photo", "OptionProfileVideo": "Video", "OptionProfileVideoAudio": "Video Audio", @@ -1154,7 +1125,6 @@ "OptionRequirePerfectSubtitleMatchHelp": "Requiring a perfect match will filter subtitles to include only those that have been tested and verified with your exact video file. Unchecking this will increase the likelihood of subtitles being downloaded, but will increase the chances of mistimed or incorrect subtitle text.", "OptionResElement": "res element", "OptionResumable": "Resumable", - "OptionRuntime": "Runtime", "OptionSaveMetadataAsHidden": "Save metadata and images as hidden files", "OptionSaveMetadataAsHiddenHelp": "Changing this will apply to new metadata saved going forward. Existing metadata files will be updated the next time they are saved by the server.", "OptionSpecialEpisode": "Specials", @@ -1164,7 +1134,6 @@ "OptionTrackName": "Track Name", "OptionTvdbRating": "TVDB Rating", "OptionUnairedEpisode": "Unaired Episodes", - "OptionUnplayed": "Unplayed", "OptionWakeFromSleep": "Wake from sleep", "OptionWeekdays": "Weekdays", "OptionWeekends": "Weekends", @@ -1340,12 +1309,10 @@ "TabOther": "Other", "TabParentalControl": "Parental Control", "TabPlugins": "Plugins", - "TabProfile": "Profile", "TabProfiles": "Profiles", "TabResponses": "Responses", "TabScheduledTasks": "Scheduled Tasks", "TabServer": "Server", - "TabSettings": "Settings", "TabStreaming": "Streaming", "TabUpcoming": "Upcoming", "Tags": "Tags", diff --git a/src/strings/es-ar.json b/src/strings/es-ar.json index ce3a0c4b7a..cd1ed540b5 100644 --- a/src/strings/es-ar.json +++ b/src/strings/es-ar.json @@ -100,7 +100,6 @@ "ButtonForgotPassword": "Olvidé mi contraseña", "ButtonFullscreen": "Pantalla completa", "ButtonGotIt": "Lo entendí", - "ButtonGuide": "Guía", "ButtonInfo": "Información", "ButtonLibraryAccess": "Acceso a la biblioteca", "ButtonManualLogin": "Inicio de sesión manual", @@ -112,21 +111,16 @@ "ButtonParentalControl": "Control parental", "ButtonPause": "Pausar", "ButtonPreviousTrack": "Pista anterior", - "ButtonProfile": "Perfil", "ButtonRefreshGuideData": "Actualizar datos de la guía", "ButtonRemove": "Quitar", "ButtonRename": "Renombrar", "ButtonResetEasyPassword": "Restablecer código PIN", - "ButtonResetPassword": "Restablecer contraseña", - "ButtonRestart": "Reiniciar", "ButtonResume": "Resumir", "ButtonRevoke": "Revocar", "ButtonScanAllLibraries": "Escanear todas las bibliotecas", "ButtonSelectDirectory": "Seleccionar directorio", - "ButtonSelectServer": "Seleccionar servidor", "ButtonSelectView": "Seleccionar vista", "ButtonSend": "Enviar", - "ButtonSettings": "Configuraciones", "ButtonShutdown": "Apagar", "ButtonSignIn": "Iniciar sesión", "ButtonStart": "Iniciar", @@ -452,7 +446,6 @@ "HeaderSortOrder": "Orden de clasificación", "HeaderSortBy": "Ordenar por", "HeaderSetupLibrary": "Configura tus bibliotecas de medios", - "HeaderSettings": "Configuraciones", "HeaderServerSettings": "Configuración del servidor", "HeaderServerAddressSettings": "Configuración de la dirección del servidor", "HeaderSeriesStatus": "Estado de la serie", @@ -801,13 +794,9 @@ "LabelLibraryPageSize": "Tamaño de página de la biblioteca:", "LabelLanguage": "Idioma:", "LabelLanNetworks": "Redes LAN:", - "OptionBlockBooks": "Libros", "OptionBanner": "Pancarta", "OptionAutomaticallyGroupSeriesHelp": "Si está habilitado, las series que se distribuyen en varias carpetas dentro de esta biblioteca se fusionarán automáticamente en una sola serie.", "OptionAutomaticallyGroupSeries": "Combinar automáticamente series que se extienden a través de múltiples carpetas", - "OptionAuto": "Auto", - "OptionAscending": "Ascendente", - "OptionArtist": "Artista", "OptionAllowVideoPlaybackTranscoding": "Permitir reproducción de video que requiere transcodificación", "OptionAllowVideoPlaybackRemuxing": "Permitir reproducción de video que requiere conversión sin volver a codificar", "OptionAllowUserToManageServer": "Permitir a este usuario administrar el servidor", @@ -825,8 +814,6 @@ "OptionForceRemoteSourceTranscoding": "Forzar la transcodificación de fuentes de medios remotos (como LiveTV)", "OptionAllowAudioPlaybackTranscoding": "Permitir reproducción de audio que requiere transcodificación", "OptionAllUsers": "Todos los usuarios", - "OptionAlbumArtist": "Artista del álbum", - "OptionAlbum": "Álbum", "OptionAdminUsers": "Administradores", "Option3D": "3D", "OnlyImageFormats": "Solo formatos de imagen (VOBSUB, PGS, SUB)", @@ -1054,17 +1041,11 @@ "OptionDownloadLogoImage": "Logo", "OptionDownloadImagesInAdvanceHelp": "Por defecto, la mayoría de las imágenes solo se descargan cuando lo solicita una aplicación Jellyfin. Active esta opción para descargar todas las imágenes de antemano, ya que se importan nuevos medios. Esto puede causar escaneos de biblioteca significativamente más largos.", "OptionDownloadImagesInAdvance": "Descargar imágenes por adelantado", - "OptionDownloadDiscImage": "Disco", - "OptionDownloadBoxImage": "Caja", - "OptionDownloadBannerImage": "Pancarta", - "OptionDownloadBackImage": "Volver", - "OptionDownloadArtImage": "Arte", "OptionDisplayFolderViewHelp": "Mostrar carpetas junto con sus otras bibliotecas de medios. Esto puede ser útil si desea tener una vista de carpeta simple.", "OptionDisplayFolderView": "Mostrar una vista de carpeta para mostrar carpetas de medios simples", "OptionDislikes": "No me gustas", "OptionDisableUserHelp": "Si está deshabilitado, el servidor no permitirá ninguna conexión de este usuario. Las conexiones existentes se terminarán abruptamente.", "OptionDisableUser": "Deshabilitar este usuario", - "OptionDescending": "Descendente", "OptionDatePlayed": "Fecha de reproducción", "OptionDateAddedImportTime": "Use la fecha escaneada en la biblioteca", "OptionDateAddedFileTime": "Usar fecha de creación de archivo", @@ -1072,14 +1053,11 @@ "OptionDaily": "Diario", "OptionCustomUsers": "Personalizado", "OptionCriticRating": "Valoración crítica", - "OptionContinuing": "Continuo", "OptionCommunityRating": "Calificación de la comunidad", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", "OptionBluray": "Blu-ray", "OptionBlockTvShows": "Programas de televisión", "OptionBlockTrailers": "Avances", - "OptionBlockMusic": "Música", - "OptionBlockMovies": "Películas", "OptionBlockLiveTvChannels": "Canales de TV en vivo", "OptionBlockChannelContent": "Contenido del canal de internet", "MusicLibraryHelp": "Revise la {0}guía de nomenclatura musical{1}.", @@ -1179,7 +1157,6 @@ "OptionWeekends": "Fines de semana", "OptionWeekdays": "Días de la semana", "OptionWakeFromSleep": "Despertarse del sueño", - "OptionUnplayed": "No reproducido", "OptionTvdbRating": "Calificación de TVDB", "OptionTrackName": "Nombre de la pista", "OptionThumbCard": "Tarjeta del pulgar", @@ -1188,7 +1165,6 @@ "OptionSpecialEpisode": "Especiales", "OptionSaveMetadataAsHiddenHelp": "Cambiar esto se aplicará a los nuevos metadatos guardados en el futuro. Los archivos de metadatos existentes se actualizarán la próxima vez que el servidor Jellyfin los guarde.", "OptionSaveMetadataAsHidden": "Guardar metadatos e imágenes como archivos ocultos", - "OptionRuntime": "Tiempo de ejecución", "OptionResumable": "Reanudable", "OptionResElement": "elemento res", "OptionRequirePerfectSubtitleMatchHelp": "Requerir una combinación perfecta filtrará los subtítulos para incluir solo aquellos que han sido probados y verificados con su archivo de video exacto. Desmarcar esto aumentará la probabilidad de que se descarguen los subtítulos, pero aumentará las posibilidades de texto de subtítulos incorrecto o incorrecto.", @@ -1203,11 +1179,9 @@ "OptionProfileVideoAudio": "Video Audio", "OptionProfileVideo": "Video", "OptionProfilePhoto": "Foto", - "OptionProfileAudio": "Audio", "OptionPremiereDate": "Fecha de estreno", "OptionPosterCard": "Tarjeta de póster", "OptionPoster": "Póster", - "OptionPlayed": "Reproducido", "OptionPlayCount": "Cuento de reproducciones", "OptionPlainVideoItemsHelp": "Si está habilitado, todos los videos se representan en DIDL como \"object.item.videoItem\" en lugar de un tipo más específico, como \"object.item.videoItem.movie\".", "OptionPlainVideoItems": "Mostrar todos los videos como elementos de video simples", @@ -1228,22 +1202,17 @@ "OptionImdbRating": "Calificación de IMDb", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Si está habilitado, estas solicitudes serán atendidas pero ignorarán el encabezado del rango de bytes.", "OptionIgnoreTranscodeByteRangeRequests": "Ignorar las solicitudes de rango de bytes de transcodificación", - "OptionHomeVideos": "Fotos", "OptionHlsSegmentedSubtitles": "Subtítulos segmentados HLS", "OptionHideUserFromLoginHelp": "Útil para cuentas de administrador privadas u ocultas. El usuario deberá iniciar sesión manualmente ingresando su nombre de usuario y contraseña.", "OptionHideUser": "Ocultar a este usuario de las pantallas de inicio de sesión", - "OptionHasTrailer": "Avance", "OptionHasThemeVideo": "Video temático", "OptionHasThemeSong": "Tema musical", - "OptionHasSubtitles": "Subtítulos", "OptionHasSpecialFeatures": "Características especiales", - "OptionFavorite": "Favoritos", "OptionExtractChapterImage": "Habilitar la extracción de imágenes de capítulos", "OptionExternallyDownloaded": "Descarga externa", "OptionEveryday": "Cada día", "OptionEstimateContentLength": "Estimar la longitud del contenido al transcodificar", "OptionEquals": "Igual a", - "OptionEnded": "Terminó", "OptionEnableM2tsModeHelp": "Habilite el modo m2ts al codificar en mpegts.", "ReplaceExistingImages": "Reemplazar imágenes existentes", "ReplaceAllMetadata": "Reemplazar todos los metadatos", @@ -1335,12 +1304,10 @@ "LabelSkipForwardLength": "Saltar hacia adelante longitud:", "Trailers": "Avances", "TabStreaming": "Transmisión", - "TabSettings": "Configuraciones", "TabServer": "Servidor", "TabScheduledTasks": "Tareas programadas", "TabResponses": "Respuestas", "TabProfiles": "Perfiles", - "TabProfile": "Perfil", "TabPlugins": "Complementos", "TabParentalControl": "Control parental", "TabOther": "Otro", diff --git a/src/strings/es-mx.json b/src/strings/es-mx.json index 7c392f04b6..acefd39d05 100644 --- a/src/strings/es-mx.json +++ b/src/strings/es-mx.json @@ -63,7 +63,6 @@ "ButtonForgotPassword": "Olvidé mi contraseña", "ButtonFullscreen": "Pantalla completa", "ButtonGotIt": "Hecho", - "ButtonGuide": "Guía", "ButtonLibraryAccess": "Acceso a biblioteca(s)", "ButtonManualLogin": "Inicio de sesión manual", "ButtonMore": "Más", @@ -73,22 +72,17 @@ "ButtonParentalControl": "Control parental", "ButtonPause": "Pausar", "ButtonPreviousTrack": "Pista anterior", - "ButtonProfile": "Perfil", "ButtonQuickStartGuide": "Guía de inicio rápido", "ButtonRefreshGuideData": "Actualizar datos de la guía", "ButtonRemove": "Remover", "ButtonRename": "Renombrar", "ButtonResetEasyPassword": "Restablecer código PIN sencillo", - "ButtonResetPassword": "Restablecer contraseña", - "ButtonRestart": "Reiniciar", "ButtonResume": "Continuar", "ButtonRevoke": "Revocar", "ButtonScanAllLibraries": "Escanear todas las bibliotecas", "ButtonSelectDirectory": "Seleccionar directorio", - "ButtonSelectServer": "Seleccionar servidor", "ButtonSelectView": "Seleccionar vista", "ButtonSend": "Enviar", - "ButtonSettings": "Configuración", "ButtonShutdown": "Apagar", "ButtonSignIn": "Iniciar sesión", "ButtonSignOut": "Cerrar sesión", @@ -376,7 +370,6 @@ "HeaderSeriesOptions": "Opciones de serie", "HeaderSeriesStatus": "Estado de la serie", "HeaderServerSettings": "Configuración del servidor", - "HeaderSettings": "Configuración", "HeaderSetupLibrary": "Configura tus bibliotecas de medios", "HeaderSortBy": "Ordenar por", "HeaderSortOrder": "Clasificar ordenado", @@ -869,8 +862,6 @@ "OnlyForcedSubtitlesHelp": "Solo se cargarán subtítulos marcados como forzados.", "OnlyImageFormats": "Solo formatos de imagen (VOBSUB, PGS, SUB)", "OptionAdminUsers": "Administradores", - "OptionAlbum": "Álbum", - "OptionAlbumArtist": "Artista del álbum", "OptionAllUsers": "Todos los usuarios", "OptionAllowAudioPlaybackTranscoding": "Permitir la reproducción de audio que requiera transcodificación", "OptionAllowBrowsingLiveTv": "Permitir acceso a TV en vivo", @@ -887,20 +878,13 @@ "OptionAllowUserToManageServer": "Permitir a este usuario administrar el servidor", "OptionAllowVideoPlaybackRemuxing": "Permitir reproducción de video que requiera conversión sin recodificar", "OptionAllowVideoPlaybackTranscoding": "Permitir la reproducción de video que requiera de transcodificación", - "OptionArtist": "Artista", - "OptionAscending": "Ascendente", - "OptionAuto": "Automático", "OptionAutomaticallyGroupSeries": "Fusionar automáticamente series esparcidas a través de múltiples carpetas", "OptionAutomaticallyGroupSeriesHelp": "Si se habilita, las series que se reparten a través de múltiples carpetas dentro de esta biblioteca serán fusionadas en una sola serie.", - "OptionBlockBooks": "Libros", "OptionBlockChannelContent": "Contenido de canales de Internet", "OptionBlockLiveTvChannels": "Canales de TV en vivo", - "OptionBlockMovies": "Películas", - "OptionBlockMusic": "Música", "OptionBlockTrailers": "Trailers", "OptionBlockTvShows": "Programas de TV", "OptionCommunityRating": "Calificación de la comunidad", - "OptionContinuing": "Continuando", "OptionCriticRating": "Calificación de los críticos", "OptionCustomUsers": "Personalizado", "OptionDaily": "Diario", @@ -908,17 +892,11 @@ "OptionDateAddedFileTime": "Usar la fecha de creación del archivo", "OptionDateAddedImportTime": "Usar la fecha de escaneo en la biblioteca", "OptionDatePlayed": "Fecha de reproducción", - "OptionDescending": "Descendente", "OptionDisableUser": "Desactivar este usuario", "OptionDisableUserHelp": "Si se desactiva, el servidor no aceptará conexiones de este usuario. Las conexiones existentes serán finalizadas abruptamente.", "OptionDislikes": "No me gusta", "OptionDisplayFolderView": "Mostrar una vista de carpetas para mostrar las carpetas simples de los medios", "OptionDisplayFolderViewHelp": "Muestra las carpetas junto con sus otras bibliotecas de medios. Esto puede ser útil si deseas tener una vista simple de carpeta.", - "OptionDownloadArtImage": "Arte", - "OptionDownloadBackImage": "Parte trasera", - "OptionDownloadBannerImage": "Banner", - "OptionDownloadBoxImage": "Caja", - "OptionDownloadDiscImage": "Disco", "OptionDownloadImagesInAdvance": "Descargar las imágenes con antelación", "OptionDownloadImagesInAdvanceHelp": "Por defecto, la mayoría de las imágenes solo son descargadas cuando son solicitadas por una aplicación Jellyfin. Habilita esta opción para descargar todas las imágenes por adelantado, a medida que se agreguen nuevos medios. Esto podría causar escaneos de bibliotecas significativamente más largos.", "OptionDownloadMenuImage": "Menú", @@ -934,22 +912,17 @@ "OptionEnableForAllTuners": "Habilitar para todos los dispositivos sintonizadores", "OptionEnableM2tsMode": "Habilitar modo M2TS", "OptionEnableM2tsModeHelp": "Habilita el modo m2ts cuando se codifican mpegts.", - "OptionEnded": "Finalizado", "OptionEquals": "Igual a", "OptionEstimateContentLength": "Estimar la duración del contenido cuando se transcodifica", "OptionEveryday": "Todos los días", "OptionExternallyDownloaded": "Descarga externa", "OptionExtractChapterImage": "Habilitar la extracción de imágenes de los capítulos", - "OptionFavorite": "Favoritos", "OptionHasSpecialFeatures": "Características especiales", - "OptionHasSubtitles": "Subtítulos", "OptionHasThemeSong": "Canción temática", "OptionHasThemeVideo": "Video temático", - "OptionHasTrailer": "Trailer", "OptionHideUser": "Ocultar este usuario de las pantallas de inicio de sesión", "OptionHideUserFromLoginHelp": "Útil para cuentas privadas o de administrador ocultas. El usuario tendrá que iniciar sesión manualmente introduciendo su nombre de usuario y contraseña.", "OptionHlsSegmentedSubtitles": "Subtítulos segmentados HLS", - "OptionHomeVideos": "Fotos", "OptionIgnoreTranscodeByteRangeRequests": "Ignorar solicitudes de transcodificación de rango de bytes", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Si se habilita, estas solicitudes serán honradas pero se ignorará el encabezado de rango de bytes.", "OptionImdbRating": "Calificación de IMDb", @@ -966,7 +939,6 @@ "OptionPlainVideoItems": "Mostrar todos los videos como elementos de video simples", "OptionPlainVideoItemsHelp": "Si se habilita, todos los videos serán representados en DIDL como «object.item.videoItem» en lugar de un tipo más específico, como «object.item.videoItem.movie».", "OptionPlayCount": "Contador de reproducciones", - "OptionPlayed": "Reproducido", "OptionPremiereDate": "Fecha de estreno", "OptionProfilePhoto": "Foto", "OptionProfileVideoAudio": "Audio del video", @@ -978,7 +950,6 @@ "OptionRequirePerfectSubtitleMatchHelp": "Solicitar una coincidencia perfecta filtrará los subtítulos para incluir solo aquellos que han sido probados y verificados exactamente con tu archivo de video. Desmarcar esta opción incrementará las probabilidades de que se descarguen subtítulos, pero incrementará las posibilidades de obtener subtítulos mal sincronizados o con texto incorrecto.", "OptionResElement": "Elemento res", "OptionResumable": "Reanudable", - "OptionRuntime": "Duración", "OptionSaveMetadataAsHidden": "Guardar metadatos e imágenes como archivos ocultos", "OptionSaveMetadataAsHiddenHelp": "Cambiar esto se aplicará a los nuevos metadatos guardados en el futuro. Los archivos de metadatos existentes serán actualizados la próxima vez que sean guardados por el servidor Jellyfin.", "OptionSpecialEpisode": "Especiales", @@ -986,7 +957,6 @@ "OptionTrackName": "Nombre de la pista", "OptionTvdbRating": "Calificación de TVDB", "OptionUnairedEpisode": "Episodios no emitidos", - "OptionUnplayed": "No reproducido", "OptionWakeFromSleep": "Despertar de la suspensión", "OptionWeekdays": "Días de semana", "OptionWeekends": "Fines de semana", @@ -1138,12 +1108,10 @@ "TabOther": "Otros", "TabParentalControl": "Control parental", "TabPlugins": "Complementos", - "TabProfile": "Perfil", "TabProfiles": "Perfiles", "TabResponses": "Respuestas", "TabScheduledTasks": "Tareas programadas", "TabServer": "Servidor", - "TabSettings": "Configuración", "TabStreaming": "Transmisión", "TabUpcoming": "Próximamente", "Tags": "Etiquetas", @@ -1274,7 +1242,6 @@ "OptionLoginAttemptsBeforeLockoutHelp": "Un valor de cero significa heredar el valor predeterminado de tres intentos para los usuarios normales y cinco para los administradores. Ajustar esto a -1 deshabilitará la función.", "OptionPoster": "Póster", "OptionPosterCard": "Ficha de póster", - "OptionProfileAudio": "Audio", "OptionProfileVideo": "Video", "OptionProtocolHttp": "HTTP", "OptionRegex": "Expresión regular", diff --git a/src/strings/es.json b/src/strings/es.json index b77192611c..7e19b57228 100644 --- a/src/strings/es.json +++ b/src/strings/es.json @@ -53,7 +53,6 @@ "ButtonForgotPassword": "Contraseña olvidada", "ButtonFullscreen": "Pantalla completa", "ButtonGotIt": "Entendido", - "ButtonGuide": "Guía", "ButtonLibraryAccess": "Acceso a la biblioteca", "ButtonManualLogin": "Acceder manualmente", "ButtonMore": "Más", @@ -64,22 +63,17 @@ "ButtonParentalControl": "Control parental", "ButtonPause": "Pausa", "ButtonPreviousTrack": "Pista anterior", - "ButtonProfile": "Perfil", "ButtonQuickStartGuide": "Guía de inicio rápido", "ButtonRefreshGuideData": "Actualizar datos de la guía", "ButtonRemove": "Quitar", "ButtonRename": "Renombrar", "ButtonResetEasyPassword": "Restablecer código PIN", - "ButtonResetPassword": "Reiniciar Contraseña", - "ButtonRestart": "Reiniciar", "ButtonResume": "Continuar", "ButtonRevoke": "Revocar", "ButtonScanAllLibraries": "Escanear todas las bibliotecas", "ButtonSelectDirectory": "Seleccionar directorio", - "ButtonSelectServer": "Elegir servidor", "ButtonSelectView": "Seleccionar vista", "ButtonSend": "Enviar", - "ButtonSettings": "Opciones", "ButtonShutdown": "Apagar", "ButtonSignIn": "Iniciar sesión", "ButtonSignOut": "Desconectarse", @@ -329,7 +323,6 @@ "HeaderSendMessage": "Enviar mensaje", "HeaderSeriesOptions": "Opciones de series", "HeaderServerSettings": "Ajustes del servidor", - "HeaderSettings": "Ajustes", "HeaderSetupLibrary": "Configure sus bibliotecas de medios", "HeaderSortBy": "Ordenar por", "HeaderSortOrder": "Orden", @@ -797,8 +790,6 @@ "OnlyForcedSubtitlesHelp": "Solo se cargarán los subtítulos marcados como forzados.", "OnlyImageFormats": "Solo formatos de imagen (VOBSUB, PGS, SUB)", "OptionAdminUsers": "Administradores", - "OptionAlbum": "Álbum", - "OptionAlbumArtist": "Artista de álbum", "OptionAllUsers": "Todos los usuarios", "OptionAllowAudioPlaybackTranscoding": "Activar la conversión del audio", "OptionAllowBrowsingLiveTv": "Permitir acceso a la televisión en directo", @@ -815,18 +806,12 @@ "OptionAllowUserToManageServer": "Permite a este usuario administrar el servidor", "OptionAllowVideoPlaybackRemuxing": "Activar el cambio de contenedor para el contenido cuyo audio y vídeo es compatible, pero no lo es su contenedor", "OptionAllowVideoPlaybackTranscoding": "Activar la conversión del vídeo", - "OptionArtist": "Artista", - "OptionAscending": "Ascendente", "OptionAutomaticallyGroupSeries": "Combinar automáticamente series que se distribuyen en varias carpetas", "OptionAutomaticallyGroupSeriesHelp": "Si está activada, las series que se distribuyen entre varias carpetas dentro de esta biblioteca se fusionarán automáticamente en una sola serie.", - "OptionBlockBooks": "Libros", "OptionBlockChannelContent": "Contenido de canales de Internet", "OptionBlockLiveTvChannels": "Canales de televisión en directo", - "OptionBlockMovies": "Películas", - "OptionBlockMusic": "Música", "OptionBlockTvShows": "Programas de televisión", "OptionCommunityRating": "Valoración de la comunidad", - "OptionContinuing": "Continuando", "OptionCriticRating": "Valoración de la crítica", "OptionCustomUsers": "A medida", "OptionDaily": "Diario", @@ -834,17 +819,11 @@ "OptionDateAddedFileTime": "Usar fecha de creación del archivo", "OptionDateAddedImportTime": "Usar fecha escaneada de la biblioteca", "OptionDatePlayed": "Fecha de reproducción", - "OptionDescending": "Descendente", "OptionDisableUser": "Deshabilitar este usuario", "OptionDisableUserHelp": "Si está deshabilitado, el servidor no aceptará conexiones de este usuario. Si existen conexiones de este usuario, finalizarán inmediatamente.", "OptionDislikes": "No me gusta", "OptionDisplayFolderView": "Mostrar una vista de carpeta para ver las carpetas de medios en plano", "OptionDisplayFolderViewHelp": "Mostrar carpetas junto con tus otras bibliotecas de medios. Esto es útil si te gustar tener una vista plana de carpetas.", - "OptionDownloadArtImage": "Arte", - "OptionDownloadBackImage": "Atrás", - "OptionDownloadBannerImage": "Pancarta", - "OptionDownloadBoxImage": "Caja", - "OptionDownloadDiscImage": "Disco", "OptionDownloadImagesInAdvance": "Descargar imágenes con antelación", "OptionDownloadImagesInAdvanceHelp": "Por defecto, la mayoría de las imágenes solo se descargan cuando lo solicita una aplicación Jellyfin. Activa esta opción para descargar todas las imágenes por adelantado, a medida que se importan nuevos medios. Esto puede causar escaneos de biblioteca significativamente más largos.", "OptionDownloadMenuImage": "Menú", @@ -859,21 +838,17 @@ "OptionEnableForAllTuners": "Activar para todos los dispositivos sintonizadores", "OptionEnableM2tsMode": "Activar modo M2TS", "OptionEnableM2tsModeHelp": "Activar modo M2TS cuando se codifique a MPEGTS.", - "OptionEnded": "Finalizado", "OptionEquals": "Igual", "OptionEstimateContentLength": "Estimar la longitud del contenido al convertirse", "OptionEveryday": "Todos los días", "OptionExternallyDownloaded": "Descarga externa", "OptionExtractChapterImage": "Habilitar la extracción de imágenes de los capítulos", - "OptionFavorite": "Favoritos", "OptionHasSpecialFeatures": "Características especiales", - "OptionHasSubtitles": "Subtítulos", "OptionHasThemeSong": "Banda sonora", "OptionHasThemeVideo": "Vídeo temático", "OptionHideUser": "Ocultar este usuario en las pantallas de inicio de sesión", "OptionHideUserFromLoginHelp": "Útil para privado o cuentas de administradores escondidos. El usuario tendrá que acceder entrando su nombre de usuario y contraseña manualmente.", "OptionHlsSegmentedSubtitles": "Subtítulos segmentados HLS", - "OptionHomeVideos": "Fotos", "OptionIgnoreTranscodeByteRangeRequests": "En las conversiones, ignorar las solicitudes de un intervalo específico de bytes", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Si está activado, estas solicitudes serán atendidas pero ignorarán el encabezado de intervalo de bytes.", "OptionImdbRating": "Valoración IMDb", @@ -890,7 +865,6 @@ "OptionPlainVideoItems": "Mostrar todos los videos como elementos de video sin formato", "OptionPlainVideoItemsHelp": "Si está habilitado, todos los vídeos están representados en DIDL como \"object.item.videoItem\" en lugar de un tipo más específico, como por ejemplo \"object.item.videoItem.movie\".", "OptionPlayCount": "Número de reproducciones", - "OptionPlayed": "Reproducido", "OptionPremiereDate": "Fecha de estreno", "OptionProfilePhoto": "Foto", "OptionProfileVideoAudio": "Vídeo y audio", @@ -902,14 +876,12 @@ "OptionRequirePerfectSubtitleMatchHelp": "Requerir una coincidencia perfecta filtra los subtítulos para incluir sólo aquellos que coinciden con el archivo de vídeo. Desmarcando esta opción, aumentará la probabilidad de que los subtítulos se descarguen, pero puede que el texto del subtítulo no coincida con el vídeo.", "OptionResElement": "Elemento res", "OptionResumable": "Se puede continuar", - "OptionRuntime": "Tiempo", "OptionSaveMetadataAsHidden": "Guardar las etiquetas e imágenes como archivos ocultos", "OptionSaveMetadataAsHiddenHelp": "La configuración se aplicará a las nuevas etiquetas que se creen. Las etiquetas existentes se actualizarán la próxima vez que sean guardadas por Jellyfin.", "OptionSpecialEpisode": "Especiales", "OptionTrackName": "Nombre de pista", "OptionTvdbRating": "Valoración TVDB", "OptionUnairedEpisode": "Episodios no emitidos", - "OptionUnplayed": "No reproducido", "OptionWakeFromSleep": "Despertar", "OptionWeekdays": "Días de la semana", "OptionWeekends": "Fines de semana", @@ -1043,12 +1015,10 @@ "TabNotifications": "Notificaciones", "TabOther": "Otros", "TabParentalControl": "Control parental", - "TabProfile": "Perfil", "TabProfiles": "Perfiles", "TabResponses": "Respuestas", "TabScheduledTasks": "Tareas programadas", "TabServer": "Servidor", - "TabSettings": "Opciones", "TabStreaming": "Transmisión", "TabUpcoming": "Próximos", "Tags": "Etiquetas", @@ -1207,13 +1177,11 @@ "Normal": "Normal", "Off": "Apagado", "Option3D": "3D", - "OptionAuto": "Automático", "OptionBanner": "Cabecera", "OptionBlockTrailers": "Tráilers", "OptionBluray": "Blu-ray", "OptionDownloadLogoImage": "Logo", "OptionDvd": "DVD", - "OptionHasTrailer": "Tráiler", "OptionIsHD": "HD", "OptionIsSD": "SD", "AuthProviderHelp": "Selecciona un proveedor de autenticación a utilizar para autenticar la contraseña de este usuario.", @@ -1251,7 +1219,6 @@ "OptionLoginAttemptsBeforeLockoutHelp": "El valor cero implica heredar el valor por defecto de tres intentos para usuarios y cinco intentos para administradores. El valor -1 desactiva esta funcionalidad.", "OptionPoster": "Póster", "OptionPosterCard": "Cartelera", - "OptionProfileAudio": "Audio", "OptionProfileVideo": "Vídeo", "OptionProtocolHttp": "HTTP", "OptionRegex": "Regex (expresión regular)", diff --git a/src/strings/es_419.json b/src/strings/es_419.json index 5197f3d813..68a6fb9200 100644 --- a/src/strings/es_419.json +++ b/src/strings/es_419.json @@ -129,12 +129,10 @@ "Tags": "Etiquetas", "TabUpcoming": "Próximamente", "TabStreaming": "Transmisión", - "TabSettings": "Configuración", "TabServer": "Servidor", "TabScheduledTasks": "Tareas programadas", "TabResponses": "Respuestas", "TabProfiles": "Perfiles", - "TabProfile": "Perfil", "TabPlugins": "Complementos", "TabParentalControl": "Control parental", "TabOther": "Otros", @@ -151,7 +149,6 @@ "TabCodecs": "Códecs", "TabCatalog": "Catálogo", "OptionPoster": "Póster", - "OptionPlayed": "Reproducido", "OptionPlayCount": "Contador de reproducciones", "OptionPlainVideoItemsHelp": "Todos los videos serán representados en DIDL como «object.item.videoItem» en lugar de un tipo más específico, como «object.item.videoItem.movie».", "OptionPlainVideoItems": "Mostrar todos los videos como elementos de video simples", @@ -173,22 +170,17 @@ "OptionImdbRating": "Calificación de IMDb", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Estas solicitudes serán consideradas pero se ignorará el encabezado de rango de bytes.", "OptionIgnoreTranscodeByteRangeRequests": "Ignorar solicitudes de transcodificación de rango de bytes", - "OptionHomeVideos": "Fotos", "OptionHlsSegmentedSubtitles": "Subtítulos segmentados HLS", "OptionHideUserFromLoginHelp": "Útil para cuentas privadas o de administrador ocultas. El usuario tendrá que iniciar sesión manualmente introduciendo su nombre de usuario y contraseña.", "OptionHideUser": "Ocultar este usuario de las pantallas de inicio de sesión", - "OptionHasTrailer": "Trailer", "OptionHasThemeVideo": "Video temático", "OptionHasThemeSong": "Canción temática", - "OptionHasSubtitles": "Subtítulos", "OptionHasSpecialFeatures": "Características especiales", - "OptionFavorite": "Favoritos", "OptionExtractChapterImage": "Habilitar la extracción de imágenes de los capítulos", "OptionExternallyDownloaded": "Descarga externa", "OptionEveryday": "Todos los días", "OptionEstimateContentLength": "Estimar la duración del contenido cuando se transcodifica", "OptionEquals": "Igual a", - "OptionEnded": "Finalizado", "OptionEnableM2tsModeHelp": "Habilita el modo m2ts cuando se codifican mpegts.", "OptionEnableM2tsMode": "Habilitar modo M2TS", "OptionEnableForAllTuners": "Habilitar para todos los dispositivos sintonizadores", @@ -205,17 +197,11 @@ "OptionDownloadLogoImage": "Logo", "OptionDownloadImagesInAdvanceHelp": "Por defecto, la mayoría de las imágenes se descargan cuando son solicitadas por un cliente. Habilita esta opción para descargarlas todas por adelantado, a medida que se agreguen nuevos medios. Esto podría causar que los escaneos de bibliotecas sean significativamente más largos.", "OptionDownloadImagesInAdvance": "Descargar las imágenes con antelación", - "OptionDownloadDiscImage": "Disco", - "OptionDownloadBoxImage": "Caja", - "OptionDownloadBannerImage": "Banner", - "OptionDownloadBackImage": "Parte trasera", - "OptionDownloadArtImage": "Arte", "OptionDisplayFolderViewHelp": "Muestra las carpetas junto con sus otras bibliotecas de medios. Esto puede ser útil si deseas tener una vista simple de carpeta.", "OptionDisplayFolderView": "Mostrar una vista de carpetas para mostrar las carpetas simples de los medios", "OptionDislikes": "No me gusta", "OptionDisableUserHelp": "El servidor no aceptará conexiones de este usuario. Las conexiones existentes serán finalizadas abruptamente.", "OptionDisableUser": "Desactivar este usuario", - "OptionDescending": "Descendente", "OptionDatePlayed": "Fecha de reproducción", "OptionDateAddedImportTime": "Usar la fecha de escaneo en la biblioteca", "OptionDateAddedFileTime": "Usar la fecha de creación del archivo", @@ -223,20 +209,13 @@ "OptionDaily": "Diario", "OptionCustomUsers": "Personalizado", "OptionCriticRating": "Calificación de los críticos", - "OptionContinuing": "Continuando", "OptionCommunityRating": "Calificación de la comunidad", "OptionBlockTvShows": "Programas de TV", - "OptionBlockMusic": "Música", - "OptionBlockMovies": "Películas", "OptionBlockLiveTvChannels": "Canales de TV en vivo", "OptionBlockChannelContent": "Contenido de canales de Internet", - "OptionBlockBooks": "Libros", "OptionBanner": "Banner", "OptionAutomaticallyGroupSeriesHelp": "Series que estén repartidas en múltiples carpetas dentro de esta biblioteca serán automáticamente fusionadas en una sola serie.", "OptionAutomaticallyGroupSeries": "Fusionar automáticamente series esparcidas a través de múltiples carpetas", - "OptionAuto": "Automático", - "OptionAscending": "Ascendente", - "OptionArtist": "Artista", "OptionAllowVideoPlaybackTranscoding": "Permitir la reproducción de video que requiera de transcodificación", "OptionAllowVideoPlaybackRemuxing": "Permitir reproducción de video que requiera conversión sin recodificar", "OptionAllowUserToManageServer": "Permitir a este usuario administrar el servidor", @@ -254,8 +233,6 @@ "OptionForceRemoteSourceTranscoding": "Forzar transcodificación de fuentes remotas (como TV en vivo)", "OptionAllowAudioPlaybackTranscoding": "Permitir la reproducción de audio que requiera transcodificación", "OptionAllUsers": "Todos los usuarios", - "OptionAlbumArtist": "Artista del álbum", - "OptionAlbum": "Álbum", "OptionAdminUsers": "Administradores", "Option3D": "3D", "OnlyImageFormats": "Solo formatos de imagen (VOBSUB, PGS, SUB)", @@ -590,7 +567,6 @@ "OptionWeekends": "Fines de semana", "OptionWeekdays": "Días de semana", "OptionWakeFromSleep": "Despertar de la suspensión", - "OptionUnplayed": "No reproducido", "OptionUnairedEpisode": "Episodios no emitidos", "OptionTvdbRating": "Calificación de TVDB", "OptionTrackName": "Nombre de la pista", @@ -599,7 +575,6 @@ "OptionSpecialEpisode": "Especiales", "OptionSaveMetadataAsHiddenHelp": "Cambiar esto se aplicará a los nuevos metadatos guardados en el futuro. Los archivos de metadatos existentes serán actualizados la próxima vez que sean guardados por el servidor.", "OptionSaveMetadataAsHidden": "Guardar metadatos e imágenes como archivos ocultos", - "OptionRuntime": "Duración", "OptionResumable": "Reanudable", "OptionRequirePerfectSubtitleMatchHelp": "Solicitar una coincidencia perfecta filtrará los subtítulos para incluir solo aquellos que han sido probados y verificados exactamente con tu archivo de video. Desmarcar esta opción incrementará las probabilidades de que se descarguen subtítulos, pero incrementará las posibilidades de obtener subtítulos mal sincronizados o con texto incorrecto.", "OptionRequirePerfectSubtitleMatch": "Solo descargar subtítulos que coincidan perfectamente con mis archivos de video", @@ -613,7 +588,6 @@ "OptionProfileVideoAudio": "Audio del video", "OptionProfileVideo": "Video", "OptionProfilePhoto": "Foto", - "OptionProfileAudio": "Audio", "OptionPremiereDate": "Fecha de estreno", "OptionPosterCard": "Ficha de póster", "LabelSize": "Tamaño:", @@ -978,7 +952,6 @@ "HeaderSortOrder": "Clasificar ordenado", "HeaderSortBy": "Ordenar por", "HeaderSetupLibrary": "Configura tus bibliotecas de medios", - "HeaderSettings": "Configuración", "HeaderServerSettings": "Configuración del servidor", "HeaderSelectServerCachePathHelp": "Explora o introduce la ruta a utilizar para los archivos caché del servidor. Se debe tener permisos de escritura en dicha carpeta.", "HeaderSelectServerCachePath": "Seleccionar ruta para la caché del servidor", @@ -1323,22 +1296,17 @@ "ButtonSignOut": "Cerrar sesión", "ButtonSignIn": "Iniciar sesión", "ButtonShutdown": "Apagar", - "ButtonSettings": "Configuración", "ButtonSend": "Enviar", "ButtonSelectView": "Seleccionar vista", - "ButtonSelectServer": "Seleccionar servidor", "ButtonSelectDirectory": "Seleccionar directorio", "ButtonScanAllLibraries": "Escanear todas las bibliotecas", "ButtonRevoke": "Revocar", "ButtonResume": "Continuar", - "ButtonRestart": "Reiniciar", - "ButtonResetPassword": "Restablecer contraseña", "ButtonResetEasyPassword": "Restablecer código PIN sencillo", "ButtonRename": "Renombrar", "ButtonRemove": "Remover", "ButtonRefreshGuideData": "Actualizar datos de la guía", "ButtonQuickStartGuide": "Guía de inicio rápido", - "ButtonProfile": "Perfil", "ButtonPreviousTrack": "Pista anterior", "ButtonPause": "Pausar", "ButtonParentalControl": "Control parental", @@ -1350,7 +1318,6 @@ "ButtonManualLogin": "Inicio de sesión manual", "ButtonLibraryAccess": "Acceso a biblioteca(s)", "ButtonInfo": "Info", - "ButtonGuide": "Guía", "ButtonGotIt": "Hecho", "ButtonFullscreen": "Pantalla completa", "ButtonForgotPassword": "Olvidé mi contraseña", diff --git a/src/strings/fa.json b/src/strings/fa.json index c68bab1124..fd7402a209 100644 --- a/src/strings/fa.json +++ b/src/strings/fa.json @@ -9,7 +9,6 @@ "ButtonCancel": "لغو کردن", "ButtonOk": "خوب", "ButtonQuickStartGuide": "راهنمای شروع سریع", - "ButtonResetPassword": "تنظیم مجدد رمز", "ButtonSignOut": "Sign out", "DeleteMedia": "حذف رسانه", "Disabled": "غیرفعال شده", @@ -61,24 +60,18 @@ "MoreUsersCanBeAddedLater": "بعدا میتوانید کاربران بیشتری را در داشبورد اضافه کنید.", "NextUp": "بعدی چیه", "MessageNoNextUpItems": "چیزی یافت نشد. دیدن سریال ها یتان را شروع کنید!", - "OptionAscending": "صعودی", - "OptionDescending": "نزولی", "OptionDislikes": "پسندیده نشده ها", "OptionEnableAccessFromAllDevices": "فعالسازی دسترسی از همه ی دستگاه ها", "OptionEnableAccessToAllChannels": "فعالسازی دسترسی به همه ی کانال ها", "OptionEnableAccessToAllLibraries": "فعالسازی دسترسی به همه ی کتابخانه ها", - "OptionFavorite": "مورد علاقه ها", "OptionLikes": "پسندها", - "OptionPlayed": "پخش شده", "OptionProfileVideo": "ویدیو", - "OptionUnplayed": "پخش نشده", "ShowAdvancedSettings": "نمایش تنظیمات پیشرفته", "TabAccess": "دسترسی", "TabAdvanced": "پیشرفته", "TabLatest": "جدیدترین‌ها", "TabNetworks": "شبکه ها", "TabNotifications": "اعلان ها", - "TabProfile": "پروفایل", "TabProfiles": "پروفایل ها", "TabUpcoming": "بزودی", "TellUsAboutYourself": "در مورد خودتان به ما بگویید", @@ -115,19 +108,15 @@ "Add": "افزودن", "Actor": "بازیگر", "AccessRestrictedTryAgainLater": "دسترسی در حال حاضر محدود شده است. لطفا دوباره تلاش کنید.", - "ButtonSettings": "تنظیمات", "ButtonSend": "ارسال", "ButtonSelectView": "انتخاب نما", - "ButtonSelectServer": "انتخاب سرور", "ButtonScanAllLibraries": "اسکن تمام کتابخانه‌ها", "ButtonRevoke": "ابطال", "ButtonResume": "ادامه", - "ButtonRestart": "راه اندازی مجدد", "ButtonResetEasyPassword": "بازنشانی کد پین آسان", "ButtonRename": "تغییر نام", "ButtonRemove": "حذف", "ButtonRefreshGuideData": "به‌روز‌رسانی داده‌ی راهنما", - "ButtonProfile": "نمایه", "ButtonNextTrack": "ترانه پسین", "ButtonPreviousTrack": "ترانه پیشین", "ButtonPause": "مکث", @@ -138,7 +127,6 @@ "ButtonManualLogin": "ورود دستی", "ButtonLibraryAccess": "دسترسی به کتابخانه", "ButtonInfo": "اطلاعات", - "ButtonGuide": "راهنما", "ButtonGotIt": "متوجه شدم", "ButtonFullscreen": "تمام صفحه", "ButtonForgotPassword": "فراموشی گذرواژه", @@ -538,7 +526,6 @@ "OptionSubstring": "زیررشته", "OptionSpecialEpisode": "ویژه‌ها", "OptionSaveMetadataAsHidden": "ذخیره فراداده‌ها و عکس‌ها به عنوان فایل‌های پنهان", - "OptionRuntime": "زمان اجرا", "OptionResumable": "قابل از سرگیری", "OptionResElement": "عنصر res", "OptionReleaseDate": "تاریخ انتشار", @@ -548,7 +535,6 @@ "OptionProtocolHls": "پخش مستقیم HTTP", "OptionProfileVideoAudio": "صوتی تصویری", "OptionProfilePhoto": "عکس", - "OptionProfileAudio": "صدا", "OptionPremiereDate": "تاریخ پخش", "OptionPosterCard": "کارتِ پوستر", "OptionPoster": "پوستر", @@ -579,7 +565,6 @@ "ButtonTogglePlaylist": "لیست پخش", "TheseSettingsAffectSubtitlesOnThisDevice": "این تنظیمات روی زیرنویس‌ها در این دستگاه تأثیر می‌گذارد", "TabStreaming": "در حال پخش", - "TabSettings": "تنظیمات", "TabServer": "سرور", "TabScheduledTasks": "وظایف زمان بندی شده", "TabResponses": "پاسخ‌ها", @@ -877,8 +862,6 @@ "OnlyImageFormats": "Only Image Formats (VOBSUB, PGS, SUB)", "Option3D": "3D", "OptionAdminUsers": "Administrators", - "OptionAlbum": "Album", - "OptionAlbumArtist": "Album Artist", "OptionAllUsers": "All users", "OptionAllowAudioPlaybackTranscoding": "Allow audio playback that requires transcoding", "OptionForceRemoteSourceTranscoding": "Force transcoding of remote media sources (like LiveTV)", @@ -896,22 +879,16 @@ "OptionAllowUserToManageServer": "Allow this user to manage the server", "OptionAllowVideoPlaybackRemuxing": "Allow video playback that requires conversion without re-encoding", "OptionAllowVideoPlaybackTranscoding": "Allow video playback that requires transcoding", - "OptionArtist": "Artist", - "OptionAuto": "Auto", "OptionAutomaticallyGroupSeries": "Automatically merge series that are spread across multiple folders", "OptionAutomaticallyGroupSeriesHelp": "If enabled, series that are spread across multiple folders within this library will be automatically merged into a single series.", "OptionBanner": "Banner", - "OptionBlockBooks": "Books", "OptionBlockChannelContent": "Internet Channel Content", "OptionBlockLiveTvChannels": "Live TV Channels", - "OptionBlockMovies": "Movies", - "OptionBlockMusic": "Music", "OptionBlockTrailers": "Trailers", "OptionBlockTvShows": "TV Shows", "OptionBluray": "Blu-ray", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", "OptionCommunityRating": "Community Rating", - "OptionContinuing": "Continuing", "OptionCriticRating": "Critic Rating", "OptionCustomUsers": "Custom", "OptionDaily": "Daily", @@ -923,11 +900,6 @@ "OptionDisableUserHelp": "If disabled the server will not allow any connections from this user. Existing connections will be abruptly terminated.", "OptionDisplayFolderView": "Display a folder view to show plain media folders", "OptionDisplayFolderViewHelp": "Display folders alongside your other media libraries. This can be useful if you'd like to have a plain folder view.", - "OptionDownloadArtImage": "Art", - "OptionDownloadBackImage": "Back", - "OptionDownloadBannerImage": "Banner", - "OptionDownloadBoxImage": "Box", - "OptionDownloadDiscImage": "Disc", "OptionDownloadImagesInAdvance": "Download images in advance", "OptionDownloadImagesInAdvanceHelp": "By default, most images are only downloaded when requested by a Jellyfin app. Enable this option to download all images in advance, as new media is imported. This may cause significantly longer library scans.", "OptionDownloadLogoImage": "Logo", @@ -941,17 +913,14 @@ "OptionEnableForAllTuners": "Enable for all tuner devices", "OptionEnableM2tsMode": "Enable M2ts mode", "OptionEnableM2tsModeHelp": "Enable m2ts mode when encoding to mpegts.", - "OptionEnded": "Ended", "OptionEquals": "Equals", "OptionEstimateContentLength": "Estimate content length when transcoding", "OptionEveryday": "Every day", "OptionExternallyDownloaded": "External download", "OptionExtractChapterImage": "Enable chapter image extraction", "OptionHasSpecialFeatures": "Special Features", - "OptionHasSubtitles": "Subtitles", "OptionHasThemeSong": "Theme Song", "OptionHasThemeVideo": "Theme Video", - "OptionHasTrailer": "Trailer", "OptionHideUser": "Hide this user from login screens", "OptionHideUserFromLoginHelp": "Useful for private or hidden administrator accounts. The user will need to sign in manually by entering their username and password.", "HeaderSendMessage": "Send Message", @@ -959,7 +928,6 @@ "HeaderSeriesStatus": "Series Status", "HeaderServerAddressSettings": "Server Address Settings", "HeaderServerSettings": "Server Settings", - "HeaderSettings": "Settings", "HeaderSortBy": "Sort By", "HeaderSortOrder": "Sort Order", "HeaderSpecialEpisodeInfo": "Special Episode Info", @@ -1032,7 +1000,6 @@ "LabelAppNameExample": "Example: Sickbeard, Sonarr", "LabelArtists": "Artists:", "OptionHlsSegmentedSubtitles": "HLS segmented subtitles", - "OptionHomeVideos": "Photos", "OptionIgnoreTranscodeByteRangeRequests": "Ignore transcode byte range requests", "OptionIgnoreTranscodeByteRangeRequestsHelp": "If enabled, these requests will be honored but will ignore the byte range header.", "OptionImdbRating": "IMDb Rating", diff --git a/src/strings/fi.json b/src/strings/fi.json index 9481f59b4f..b915ebd9c5 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -2,7 +2,6 @@ "MessageBrowsePluginCatalog": "Selaa lisäosakuvastoamme katsoaksesi saatavilla olevia lisäosia.", "ButtonAddUser": "Lisää Käyttäjä", "ButtonCancel": "Peruuta", - "ButtonResetPassword": "Nollaa salasana", "ButtonSignOut": "Sign out", "Delete": "Poista", "DeleteImage": "Poista Kuva", @@ -34,7 +33,6 @@ "PasswordSaved": "Salasana tallennettu.", "Save": "Tallenna", "SettingsSaved": "Asetukset tallennettu.", - "TabProfile": "Profiili", "TabProfiles": "Profiilit", "TellUsAboutYourself": "Kerro meille itsestäsi", "ThisWizardWillGuideYou": "Tämä työkalu auttaa sinua asennusprosessin aikana. Valitse kieli aloittaaksesi.", @@ -104,7 +102,6 @@ "ButtonForgotPassword": "Unohtuiko salasana", "ButtonFullscreen": "Kokonäyttötila", "ButtonGotIt": "Selvä", - "ButtonGuide": "Opas", "ButtonInfo": "Tiedot", "ButtonLibraryAccess": "Kiraston pääsy", "ButtonManualLogin": "Manuaalinen kirjautuminen", @@ -117,21 +114,17 @@ "ButtonParentalControl": "Lapsilukko", "ButtonPause": "Tauko", "ButtonPreviousTrack": "Edellinen raita", - "ButtonProfile": "Profiili", "ButtonQuickStartGuide": "Pikaopas", "ButtonRefreshGuideData": "Päivitä oppaan tiedot", "ButtonRemove": "Poista", "ButtonRename": "Nimeä uudelleen", "ButtonResetEasyPassword": "Nollaa helppo PIN-koodi", - "ButtonRestart": "Käynnistä uudelleen", "ButtonResume": "Jatka", "ButtonRevoke": "Peruuta", "ButtonScanAllLibraries": "Skannaa kaikki kirjastot", "ButtonSelectDirectory": "Valitse hakemisto", - "ButtonSelectServer": "Valitse palvelin", "ButtonSelectView": "Valitse näkymä", "ButtonSend": "Lähetä", - "ButtonSettings": "Asetukset", "ButtonShutdown": "Sammuta", "ButtonSignIn": "Kirjaudu sisään", "ButtonStart": "Käynnistä", @@ -274,7 +267,6 @@ "OptionSubstring": "Substring", "OptionSpecialEpisode": "Erikoisjaksot", "OptionSaveMetadataAsHidden": "Tallenna metadata ja kuvat piilotettuina tiedostoina", - "OptionRuntime": "Kesto", "OptionResumable": "Jatkettavissa oleva", "OptionResElement": "res element", "OptionReleaseDate": "Julkaisupäivä", @@ -285,12 +277,10 @@ "OptionProfileVideoAudio": "Video Audio", "OptionProfileVideo": "Video", "OptionProfilePhoto": "Kuva", - "OptionProfileAudio": "Audio", "OptionPremiereDate": "Ensi-iltapäivä", "OptionPosterCard": "Julistekortti", "OptionPoster": "Juliste", "OptionPlayCount": "Toistokerrat", - "OptionPlayed": "Toistettu", "OptionNew": "Uusi…", "OptionNameSort": "Nimi", "OptionMissingEpisode": "Puuttuvat jaksot", @@ -300,18 +290,13 @@ "OptionIsSD": "SD", "OptionIsHD": "HD", "OptionImdbRating": "IMDb Luokitus", - "OptionHomeVideos": "Kuvat", "OptionHideUser": "Piilota tämä käyttäjä kirjautumisnäkymästä", - "OptionHasTrailer": "Traileri", "OptionHasThemeVideo": "Tunnusvideo", "OptionHasThemeSong": "Tunnuskappale", - "OptionHasSubtitles": "Tekstitykset", "OptionHasSpecialFeatures": "Erikoisominaisuudet", - "OptionFavorite": "Suosikit", "OptionExtractChapterImage": "Ota käyttöön kappalekuvien luonti", "OptionExternallyDownloaded": "Ulkoinen lataus", "OptionEveryday": "Joka päivä", - "OptionEnded": "Loppuneet", "OptionEnableM2tsMode": "Ota käyttöön M2ts tila", "OptionEnableForAllTuners": "Ota käyttöön kaikille viritinlaitteille", "OptionEnableAccessToAllLibraries": "Salli pääsy kaikkiin kirjastoihin", @@ -326,7 +311,6 @@ "OptionDislikes": "Disliket", "OptionCustomUsers": "Mukautettu", "OptionCriticRating": "Kriitikoiden luokitus", - "OptionContinuing": "Jatkuvat", "OptionCommunityRating": "Yhteisön luokitus", "OptionBlockLiveTvChannels": "Live-TV kanavat", "OptionBanner": "Lippu", @@ -444,13 +428,7 @@ "HeaderAlert": "Hälytys", "HeaderActivity": "Toiminta", "HDPrograms": "HD-ohjelmat", - "OptionDownloadArtImage": "Taide", - "OptionDownloadDiscImage": "Levy", - "OptionDownloadBoxImage": "Laatikko", - "OptionDownloadBannerImage": "Lippu", - "OptionDownloadBackImage": "Tausta", "OptionDisableUser": "Poista tämä käyttäjä käytöstä", - "OptionDescending": "Laskeva", "OptionDatePlayed": "Toistopäivä", "OptionDateAddedImportTime": "Käytä kirjastoon skannauspäivää", "OptionDateAddedFileTime": "Käytä tiedoston luontipäivää", @@ -459,8 +437,6 @@ "OptionBluray": "Blu-ray", "OptionBlockTvShows": "TV-sarjat", "OptionBlockTrailers": "Trailerit", - "OptionBlockMusic": "Musiikki", - "OptionBlockMovies": "Elokuvat", "HeaderMoreLikeThis": "Lisää tällaista", "HeaderMetadataSettings": "Metadata-asetukset", "MoreMediaInfo": "Mediainfo", @@ -476,7 +452,6 @@ "HeaderFrequentlyPlayed": "Usein toistetut", "HeaderFetcherSettings": "Hakijan asetukset", "HeaderFetchImages": "Hae kuvia:", - "OptionBlockBooks": "Kirjat", "Filters": "Suodattimet", "FastForward": "Hyppää eteenpäin", "YadifBob": "YADIF Bob", @@ -616,7 +591,6 @@ "TagsValue": "Tunnisteet: {0}", "Tags": "Tunnisteet", "TabUpcoming": "Tulevat", - "TabSettings": "Asetukset", "TabServer": "Palvelin", "TabScheduledTasks": "Ajastetut tehtävät", "TabResponses": "Vastaukset", @@ -681,9 +655,6 @@ "RecordingCancelled": "Tallennus peruttu.", "RecordSeries": "Tallenna sarja", "Record": "Tallenna", - "OptionAuto": "Auto", - "OptionAscending": "Nousevassa järjestyksessä", - "OptionArtist": "Artisti", "OptionAllowVideoPlaybackTranscoding": "Salli transkoodausta vaativan videon toistaminen", "OptionAllowVideoPlaybackRemuxing": "Salli videon toistaminen, joka vaatii muuntamista ilman koodausta", "OptionAllowMediaPlaybackTranscodingHelp": "Transkoodauksen estäminen voi aiheuttaa toistovirheitä Jellyfin-sovelluksissa ei-tuettujen mediaformaattien takia.", @@ -704,8 +675,6 @@ "OptionAllowLinkSharing": "Salli jakaminen sosiaaliseen mediaan", "OptionAllowAudioPlaybackTranscoding": "Salli äänen toistaminen joka vaatii uudelleenpakkausta", "OptionAllUsers": "Kaikki käyttäjät", - "OptionAlbumArtist": "Albumin artisti", - "OptionAlbum": "Albumi", "OptionAdminUsers": "Järjestelmänvalvojat", "Option3D": "3D", "MusicVideo": "Musiikkivideo", @@ -825,7 +794,6 @@ "HeaderSubtitleAppearance": "Tekstityksen ulkonäkö", "HeaderStatus": "Tila", "HeaderServerSettings": "Palvelimen asetukset", - "HeaderSettings": "Asetukset", "HeaderSendMessage": "Lähetä viesti", "HeaderSelectServer": "Valitse palvelin", "HeaderSeasons": "Kaudet", diff --git a/src/strings/fr-ca.json b/src/strings/fr-ca.json index bcbba8eb66..8ac6d94679 100644 --- a/src/strings/fr-ca.json +++ b/src/strings/fr-ca.json @@ -5,7 +5,6 @@ "ButtonCancel": "Annuler", "ButtonGotIt": "J'ai compris", "ButtonQuickStartGuide": "Guide de démarrage rapide", - "ButtonRestart": "Redémarrer", "ButtonSignOut": "Sign out", "ConfirmDeleteItem": "La suppression de cet élément le supprimera à la fois du système de fichiers et de votre médiathèque. Êtes-vous sûr de vouloir continuer ?", "Delete": "Supprimer", @@ -144,7 +143,6 @@ "ButtonEditOtherUserPreferences": "Modifier ce profil utilisateur, son avatar et ses préférences personnelles.", "ButtonForgotPassword": "Mot de passe oublié", "ButtonFullscreen": "Plein écran", - "ButtonGuide": "Guide", "ButtonInfo": "Informations", "ButtonLibraryAccess": "Accès à la médiathèque", "ButtonManualLogin": "Connexion manuelle", @@ -192,19 +190,15 @@ "ButtonStart": "Démarrer", "ButtonSignIn": "Se connecter", "ButtonShutdown": "Éteindre", - "ButtonSettings": "Paramètres", "ButtonSend": "Envoyer", - "ButtonSelectServer": "Sélectionner le serveur", "ButtonSelectDirectory": "Sélectionner le répertoire", "ButtonScanAllLibraries": "Analyser toutes les médiathèques", "ButtonRevoke": "Révoquer", "ButtonResume": "Reprendre la lecture", - "ButtonResetPassword": "Réinitialiser le mot de passe", "ButtonResetEasyPassword": "Remettre à nouveau le code NIP facile", "ButtonRename": "Renommer", "ButtonRemove": "Enlever", "ButtonRefreshGuideData": "Rafraîchir les données de guide", - "ButtonProfile": "Profil", "ButtonPreviousTrack": "Piste précédente", "ButtonPause": "Pause", "ButtonParentalControl": "Contrôle parentale", diff --git a/src/strings/fr.json b/src/strings/fr.json index ad0c997ba7..7bc943a1c8 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -72,22 +72,17 @@ "ButtonOpen": "Ouvrir", "ButtonParentalControl": "Contrôle parental", "ButtonPreviousTrack": "Piste précédente", - "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Guide de démarrage rapide", "ButtonRefreshGuideData": "Actualiser les données du guide", "ButtonRemove": "Supprimer", "ButtonRename": "Renommer", "ButtonResetEasyPassword": "Réinitialiser le code easy PIN", - "ButtonResetPassword": "Réinitialiser le mot de passe", - "ButtonRestart": "Redémarrer", "ButtonResume": "Reprendre", "ButtonRevoke": "Révoquer", "ButtonScanAllLibraries": "Actualiser toutes les médiathèques", "ButtonSelectDirectory": "Sélectionner le répertoire", - "ButtonSelectServer": "Sélectionner le serveur", "ButtonSelectView": "Sélectionnez une vue", "ButtonSend": "Envoyer", - "ButtonSettings": "Paramètres", "ButtonShutdown": "Éteindre", "ButtonSignIn": "Se connecter", "ButtonSignOut": "Se déconnecter", @@ -375,7 +370,6 @@ "HeaderSeriesOptions": "Options de la série", "HeaderSeriesStatus": "Statut de la série", "HeaderServerSettings": "Paramètres du serveur", - "HeaderSettings": "Paramètres", "HeaderSetupLibrary": "Configurer vos médiathèques", "HeaderSortBy": "Trier par", "HeaderSortOrder": "Ordre de tri", @@ -869,7 +863,6 @@ "OnlyForcedSubtitlesHelp": "Seuls les sous-titres marqués comme forcés seront chargés.", "OnlyImageFormats": "Seulement les formats image (VOBSUB, PGS, SUB)", "OptionAdminUsers": "Administrateurs", - "OptionAlbumArtist": "Artiste de l'album", "OptionAllUsers": "Tous les utilisateurs", "OptionAllowAudioPlaybackTranscoding": "Permettre la lecture audio nécessitant un transcodage", "OptionAllowBrowsingLiveTv": "Autoriser l'accès à la TV en direct", @@ -886,20 +879,13 @@ "OptionAllowUserToManageServer": "Autoriser la gestion du serveur à cet utilisateur", "OptionAllowVideoPlaybackRemuxing": "Autoriser la lecture de vidéos nécessitant une conversion sans réencodage", "OptionAllowVideoPlaybackTranscoding": "Autoriser la lecture de vidéos nécessitant un transcodage", - "OptionArtist": "Artiste", - "OptionAscending": "Croissant", - "OptionAuto": "Automatique", "OptionAutomaticallyGroupSeries": "Fusionner automatiquement les séries qui sont réparties en plusieurs dossiers", "OptionAutomaticallyGroupSeriesHelp": "Les séries qui sont réparties en plusieurs dossiers dans la médiathèque seront automatiquement fusionnées en une seule série.", - "OptionBlockBooks": "Livres", "OptionBlockChannelContent": "Chaînes Internet", "OptionBlockLiveTvChannels": "Chaînes TV en direct", - "OptionBlockMovies": "Films", - "OptionBlockMusic": "Musique", "OptionBlockTrailers": "Bandes-annonces", "OptionBlockTvShows": "Émissions TV", "OptionCommunityRating": "Note de la communauté", - "OptionContinuing": "En cours", "OptionCriticRating": "Note des critiques", "OptionCustomUsers": "Personnalisé", "OptionDaily": "Quotidien", @@ -907,16 +893,11 @@ "OptionDateAddedFileTime": "Utiliser la date de création du fichier", "OptionDateAddedImportTime": "Utiliser la date d'ajout dans la médiathèque", "OptionDatePlayed": "Date de lecture", - "OptionDescending": "Décroissant", "OptionDisableUser": "Désactiver cet utilisateur", "OptionDisableUserHelp": "Le serveur n'autorisera pas de connexion de cet utilisateur. Les connexions existantes seront interrompues.", "OptionDislikes": "Pas aimés", "OptionDisplayFolderView": "Afficher une vue de dossiers pour montrer les dossiers multimédia en intégralité", "OptionDisplayFolderViewHelp": "Afficher les dossier au côté de votre médiathèque. Cela peut être utile si vous souhaitez avoir une vue complète des dossiers.", - "OptionDownloadBackImage": "Dos", - "OptionDownloadBannerImage": "Bannière", - "OptionDownloadBoxImage": "Boîtier", - "OptionDownloadDiscImage": "Disque", "OptionDownloadImagesInAdvance": "Télécharger les images en avance", "OptionDownloadImagesInAdvanceHelp": "Par défaut, la plupart des images sont téléchargées seulement lorsqu'un client le demande. Sélectionnez cette option pour télécharger toutes les images à l'avance, lorsqu'un nouveau média est importé. Cela peut allonger significativement la durée d'actualisation de la médiathèque.", "OptionDownloadPrimaryImage": "Principal", @@ -931,22 +912,17 @@ "OptionEnableForAllTuners": "Autoriser pour tous les tuners", "OptionEnableM2tsMode": "Activer le mode M2TS", "OptionEnableM2tsModeHelp": "Active le mode M2TS lors d'encodage en MPEGTS.", - "OptionEnded": "Terminé", "OptionEquals": "Égal", "OptionEstimateContentLength": "Estimer la taille du contenu lors d'encodage", "OptionEveryday": "Tous les jours", "OptionExternallyDownloaded": "Téléchargement externe", "OptionExtractChapterImage": "Activer l'extraction des images de chapitres", - "OptionFavorite": "Favoris", "OptionHasSpecialFeatures": "Bonus", - "OptionHasSubtitles": "Sous-titres", "OptionHasThemeSong": "Chanson thème", "OptionHasThemeVideo": "Vidéo du générique", - "OptionHasTrailer": "Bande-annonce", "OptionHideUser": "Ne pas afficher cet utilisateur dans les écrans de connexion", "OptionHideUserFromLoginHelp": "Recommandé pour les comptes administrateurs privés ou cachés. L'utilisateur devra s'authentifier manuellement en saisissant son nom d'utilisateur et son mot de passe.", "OptionHlsSegmentedSubtitles": "Sous-titres segmentés HLS", - "OptionHomeVideos": "Photos", "OptionIgnoreTranscodeByteRangeRequests": "Ignore les requêtes de transcodage de plage d'octets", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Ces requêtes seront honorées mais l'en-tête de plage d'octets sera ignoré.", "OptionImdbRating": "Note IMDb", @@ -963,7 +939,6 @@ "OptionPlainVideoItems": "Afficher les vidéos en tant que simples éléments vidéos", "OptionPlainVideoItemsHelp": "Toutes les vidéos seront affichées dans le DIDL en tant que \"object.item.videoItem\" au lieu de formats plus spécifiques comme, par exemple \"object.item.videoItem.movie\".", "OptionPlayCount": "Nombre de lectures", - "OptionPlayed": "Lu", "OptionPremiereDate": "Date de la première", "OptionProfileVideo": "Vidéo", "OptionProfileVideoAudio": "Vidéo Audio", @@ -975,7 +950,6 @@ "OptionRequirePerfectSubtitleMatchHelp": "En activant cette option, seuls les sous-titres ayant été testés et vérifiés avec votre fichier vidéo seront téléchargés. En désactivant cette option, vous aurez plus de chance que des sous-titres soient téléchargés, mais ils risquent d'être décalés ou incorrects.", "OptionResElement": "Résolution d'élément", "OptionResumable": "Reprise possible", - "OptionRuntime": "Durée", "OptionSaveMetadataAsHidden": "Enregistrer les métadonnées et les images en tant que fichier cachés", "OptionSaveMetadataAsHiddenHelp": "La modification s'appliquera aux nouvelles métadonnées enregistrées à l'avenir. Les fichiers de métadonnées existants seront mis à jour la prochaine fois qu'ils seront enregistrés par le serveur.", "OptionSpecialEpisode": "Spéciaux", @@ -983,7 +957,6 @@ "OptionTrackName": "Titre", "OptionTvdbRating": "Note d'évaluation TVDB", "OptionUnairedEpisode": "Épisodes non diffusés", - "OptionUnplayed": "Non lu", "OptionWakeFromSleep": "Sortie de veille", "OptionWeekdays": "Jours de la semaine", "OptionWeekends": "Week-ends", @@ -1129,12 +1102,10 @@ "TabNfoSettings": "Paramètres NFO", "TabOther": "Autre", "TabParentalControl": "Contrôle Parental", - "TabProfile": "Profil", "TabProfiles": "Profils", "TabResponses": "Réponses", "TabScheduledTasks": "Tâches planifiées", "TabServer": "Serveur", - "TabSettings": "Paramètres", "TabUpcoming": "À venir", "Tags": "Étiquettes", "TagsValue": "Mots clés: {0}", @@ -1204,7 +1175,6 @@ "Art": "Illustration", "Audio": "Audio", "Auto": "Auto", - "ButtonGuide": "Guide", "ButtonPause": "Pause", "Collections": "Collections", "Extras": "Extras", @@ -1225,14 +1195,11 @@ "MessageImageTypeNotSelected": "Veuillez sélectionner un type d'image dans le menu déroulant.", "Normal": "Normal", "Option3D": "3D", - "OptionAlbum": "Album", "OptionBluray": "Blu-ray", - "OptionDownloadArtImage": "Illustration", "OptionDownloadLogoImage": "Logo", "OptionDownloadMenuImage": "Menu", "OptionIsHD": "HD", "OptionIsSD": "SD", - "OptionProfileAudio": "Audio", "OptionProfilePhoto": "Photo", "OptionProtocolHttp": "HTTP", "OptionRegex": "Expression régulière", diff --git a/src/strings/gsw.json b/src/strings/gsw.json index a16a28910c..06ea542d33 100644 --- a/src/strings/gsw.json +++ b/src/strings/gsw.json @@ -3,7 +3,6 @@ "ButtonCancel": "Abbreche", "ButtonOk": "OK", "ButtonQuickStartGuide": "Schnellstart Instruktione", - "ButtonResetPassword": "Passwort zrug setze", "ButtonSignOut": "Uslogge", "ChannelAccessHelp": "Wähl en Kanal us, um de mit dem User z'teile. Administratore werded immer d'Möglichkeit ha alli Kanäl mitm Metadate Manager z'bearbeite.", "Continuing": "Fortlaufend", @@ -47,31 +46,21 @@ "MoreUsersCanBeAddedLater": "Meh User chönt spöter im Dashboard hinzuegfüegt werde.", "NewCollectionNameExample": "Biispell: Star Wars Sammlig", "MessageNoNextUpItems": "Nix da. Fang mal a Serie luege!", - "OptionAlbumArtist": "Album-Artist", - "OptionAscending": "Ufstiigend", "OptionBluray": "BluRay", "OptionCommunityRating": "Community Bewertig", - "OptionContinuing": "Fortlaufend", "OptionCriticRating": "Kritiker Bewertig", "OptionDateAdded": "Dezue gfüegt am", "OptionDatePlayed": "Abgspellt am", - "OptionDescending": "Abstiigend", "OptionDvd": "DVD", "OptionEnableAccessFromAllDevices": "Aktiviere de Zuegriff vo allne Grät", "OptionEnableAccessToAllChannels": "Aktiviere de Zuegriff zu allne Kanäl", "OptionEnableAccessToAllLibraries": "Aktiviere de Zuegriff zu allne Bibliotheke", - "OptionEnded": "Beendent", - "OptionFavorite": "Favorite", - "OptionHasSubtitles": "Undertitel", "OptionImdbRating": "IMDB Bewertig", "OptionParentalRating": "Altersfriigab", "OptionPlayCount": "Zähler", - "OptionPlayed": "Gspellt", "OptionPremiereDate": "Premiere Datum", "OptionReleaseDate": "Release Ziit", "OptionResumable": "Chan fortgsetzt werde", - "OptionRuntime": "Laufziit", - "OptionUnplayed": "Ungspellt", "ParentalRating": "Parental Rating", "Saturday": "Samstig", "Save": "Speichere", @@ -84,7 +73,6 @@ "TabMyPlugins": "Miini Plugins", "TabNetworks": "Studios", "TabNotifications": "Mitteilige", - "TabProfile": "Profil", "TabProfiles": "Profil", "TabUpcoming": "Usstehend", "TellUsAboutYourself": "Verzell was über dech selber", diff --git a/src/strings/he.json b/src/strings/he.json index 828f140465..ef2740ba8c 100644 --- a/src/strings/he.json +++ b/src/strings/he.json @@ -23,8 +23,6 @@ "ButtonQuickStartGuide": "מדריך מהיר", "ButtonRefreshGuideData": "רענן את מדריך השידור", "ButtonRemove": "הסר", - "ButtonResetPassword": "איפוס סיסמא", - "ButtonRestart": "הפעל מחדש", "ButtonSelectDirectory": "בחר תיקיות", "ButtonShutdown": "כבה", "ButtonSignIn": "היכנס", @@ -275,44 +273,28 @@ "NoSubtitleSearchResultsFound": "לא נמצאו תוצאות.", "Option3D": "תלת מימד", "OptionAdminUsers": "מנהלים", - "OptionAlbum": "אלבום", - "OptionAlbumArtist": "אמן אלבום", "OptionAllUsers": "כל המשתמשים", "OptionAllowLinkSharing": "אפשר שיתוף ברשתות חברתיות", "OptionAllowMediaPlayback": "אפשר ניגון מדיה", "OptionAllowUserToManageServer": "אפשר למשתמש זה לנהל את השרת", - "OptionArtist": "אמן", - "OptionAscending": "סדר עולה", - "OptionBlockMovies": "סרטים", "OptionBlockTvShows": "תוכניות טלויזיה", "OptionBluray": "בלו-ריי", "OptionCommunityRating": "דירוג הקהילה", - "OptionContinuing": "ממשיך", "OptionCriticRating": "ציון מבקרים", "OptionCustomUsers": "מותאם אישית", "OptionDaily": "כל יום", "OptionDateAdded": "תאריך הוספה", "OptionDatePlayed": "תאריך ניגון", - "OptionDescending": "סדר יורד", "OptionDisableUser": "בטל משתמש זה", "OptionDisableUserHelp": "השרת לא יאפשר חיבורים ממשתמש זה. חיבורים פעילים יבוטלו מייד.", "OptionDislikes": "לא אוהב", - "OptionDownloadArtImage": "עטיפה", - "OptionDownloadBackImage": "גב", - "OptionDownloadBannerImage": "באנר", - "OptionDownloadBoxImage": "מארז", - "OptionDownloadDiscImage": "דיסק", "OptionDownloadLogoImage": "לוגו", "OptionDownloadMenuImage": "תפריט", "OptionDownloadPrimaryImage": "ראשי", "OptionDvd": "DVD", - "OptionEnded": "הסתיים", - "OptionFavorite": "מועדפים", "OptionHasSpecialFeatures": "מאפיינים מיוחדים", - "OptionHasSubtitles": "כתוביות", "OptionHasThemeSong": "שיר נושא", "OptionHasThemeVideo": "סרט נושא", - "OptionHasTrailer": "קדימון", "OptionHideUser": "הסתר משתמש זה בחלון ההתחברות", "OptionImdbRating": "דירוג IMDb", "OptionLikes": "נבחרים", @@ -322,19 +304,15 @@ "OptionOnInterval": "כל פרק זמן", "OptionParentalRating": "דירוג בקרת הורים", "OptionPlayCount": "כמות ניגונים", - "OptionPlayed": "נוגן", "OptionPremiereDate": "תאריך בכורה", - "OptionProfileAudio": "צליל", "OptionProfilePhoto": "תמונה", "OptionProfileVideo": "וידאו", "OptionProfileVideoAudio": "צליל וידאו", "OptionResumable": "ניתן להמשיך", - "OptionRuntime": "זמן ריצה", "OptionSpecialEpisode": "ספיישלים", "OptionTrackName": "שם הרצועה", "OptionTvdbRating": "דירוג TVDB", "OptionUnairedEpisode": "פרקים שלא שודרו", - "OptionUnplayed": "לא נוגן", "OptionWakeFromSleep": "הער ממצב שינה", "OptionWeekly": "כל שבוע", "OriginalAirDateValue": "תאריך אוויר מקורי: {0}", @@ -414,10 +392,8 @@ "TabMyPlugins": "התוספים שלי", "TabNetworks": "רשתות", "TabNotifications": "התראות", - "TabProfile": "פרופיל", "TabProfiles": "פרופילים", "TabServer": "שרת", - "TabSettings": "הגדרות", "TabUpcoming": "בקרוב", "Tags": "מילות מפתח", "TellUsAboutYourself": "ספר לנו על עצמך", @@ -509,10 +485,8 @@ "ButtonTrailer": "קדימון", "ButtonSplit": "פיצול", "ButtonStop": "עצור", - "ButtonSettings": "הגדרות", "ButtonSend": "שלח", "ButtonSelectView": "בחר תצוגה", - "ButtonSelectServer": "בחר שרת", "ButtonRename": "שנה שם", "ButtonPause": "השהה", "ButtonParentalControl": "בקרת הורים", @@ -533,7 +507,6 @@ "HeaderStopRecording": "עצור הקלטה", "HeaderSortOrder": "סדר מיון", "HeaderSortBy": "מיין לפי", - "HeaderSettings": "הגדרות", "HeaderSendMessage": "שלח הודעה", "HeaderSelectServer": "בחר שרת", "HeaderSecondsValue": "{0} שניות", @@ -626,12 +599,10 @@ "ButtonRevoke": "בטל", "TabScheduledTasks": "משימות מתוזמנות", "ButtonResume": "המשך", - "ButtonProfile": "פרופיל", "ButtonOpen": "פתח", "HeaderTracks": "רצועות", "ButtonPreviousTrack": "הרצועה הקודמת", "ButtonNextTrack": "הרצועה הבאה", - "ButtonGuide": "מדריך", "ButtonForgotPassword": "שחזור סיסמה", "ButtonEditOtherUserPreferences": "ערוך את הפרופיל, התמונה וההגדרות האישיות של משתמש זה.", "ButtonChangeServer": "החלף שרת", @@ -724,9 +695,7 @@ "OptionDateAddedImportTime": "השתמש בתאריך הסריקה לתוך הספרייה", "OptionDateAddedFileTime": "השתמש בתאריך יצירת הקובץ", "OptionBlockTrailers": "קדימונים", - "OptionBlockMusic": "מוזיקה", "OptionBlockLiveTvChannels": "ערוצי שידורים חיים", - "OptionBlockBooks": "ספרים", "OptionAllowRemoteSharedDevices": "אפשר שליטה מרחוק על מכשירים משותפים", "OptionAllowRemoteControlOthers": "אפשר שליטה מרחוק על משתמשים אחרים", "SelectAdminUsername": "נא לבחור שם משתמש עבור חשבון המנהל.", @@ -736,7 +705,6 @@ "HeaderAdmin": "מנהל", "Suggestions": "המלצות", "MessageSyncPlayNoGroupsAvailable": "אין קבוצות זמינות. התחל לנגן משהו קודם.", - "OptionHomeVideos": "תמונות", "Home": "בית", "LabelServerName": "שם השרת:", "TabPlugins": "תוספים", diff --git a/src/strings/hi-in.json b/src/strings/hi-in.json index bacff9aca2..3e17566d5a 100644 --- a/src/strings/hi-in.json +++ b/src/strings/hi-in.json @@ -38,7 +38,6 @@ "ButtonManualLogin": "मैनुअल लॉगिन", "ButtonLibraryAccess": "पुस्तकालय का उपयोग", "ButtonInfo": "जानकारी", - "ButtonGuide": "मार्गदर्शक", "ButtonGotIt": "समझ गया", "ButtonFullscreen": "पूर्ण स्क्रीन", "ButtonForgotPassword": "पासवर्ड भूल गए", diff --git a/src/strings/hr.json b/src/strings/hr.json index 169d50ad6c..2bde808701 100644 --- a/src/strings/hr.json +++ b/src/strings/hr.json @@ -29,7 +29,6 @@ "ButtonForgotPassword": "Zaboravili ste lozinku", "ButtonFullscreen": "Puni zaslon", "ButtonGotIt": "Shvaćam", - "ButtonGuide": "Vodič", "ButtonLibraryAccess": "Pristup biblioteci", "ButtonManualLogin": "Ručna prijava", "ButtonMore": "Više", @@ -40,21 +39,16 @@ "ButtonParentalControl": "Roditeljska kontrola", "ButtonPause": "Pauza", "ButtonPreviousTrack": "Prethodna pjesma", - "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Vodič za brzi početak", "ButtonRefreshGuideData": "Osvježi TV vodič", "ButtonRemove": "Ukloni", "ButtonRename": "Preimenuj", "ButtonResetEasyPassword": "Poništi jednostavan PIN kod", - "ButtonResetPassword": "Resetiraj lozinku", - "ButtonRestart": "Ponovo pokreni", "ButtonResume": "Nastavi", "ButtonRevoke": "Opozvati", "ButtonSelectDirectory": "Odaberi mapu", - "ButtonSelectServer": "Odaberi Server", "ButtonSelectView": "Odaberi pogled", "ButtonSend": "Pošalji", - "ButtonSettings": "Postavke", "ButtonShutdown": "Ugasi", "ButtonSignIn": "Prijava", "ButtonSignOut": "Odjava", @@ -244,7 +238,6 @@ "HeaderSendMessage": "Pošalji poruku", "HeaderSeriesOptions": "Opcije serija", "HeaderServerSettings": "Postavke Servera", - "HeaderSettings": "Postavke", "HeaderSetupLibrary": "Postavite vaše medijske biblioteke", "HeaderSortBy": "Složi po", "HeaderSortOrder": "Redoslijed", @@ -633,8 +626,6 @@ "NoSubtitleSearchResultsFound": "Nije ništa pronađeno.", "NumLocationsValue": "{0} mape", "OptionAdminUsers": "Administratori", - "OptionAlbum": "Albumu", - "OptionAlbumArtist": "Albumu izvođača", "OptionAllUsers": "Svi korisnici", "OptionAllowAudioPlaybackTranscoding": "Dopusti audio reprodukciju koja zahtijeva konvertiranje", "OptionAllowBrowsingLiveTv": "Dopusti pristup TV uživo", @@ -649,18 +640,11 @@ "OptionAllowUserToManageServer": "Dopusti ovom korisniku da upravlja serverom", "OptionAllowVideoPlaybackRemuxing": "Dopusti video reprodukciju koja zahtijeva konvertiranje bez ponovnog kodiranja", "OptionAllowVideoPlaybackTranscoding": "Dopusti video reprodukciju koja zahtijeva konvertiranje", - "OptionArtist": "Izvođaču", - "OptionAscending": "Uzlazno", - "OptionAuto": "Automatski", - "OptionBlockBooks": "Knjige", "OptionBlockChannelContent": "Sadržaj Internet kanala", "OptionBlockLiveTvChannels": "TV kanali uživo", - "OptionBlockMovies": "Filmovi", - "OptionBlockMusic": "Glazba", "OptionBlockTrailers": "Kratki filmovi", "OptionBlockTvShows": "TV emisije", "OptionCommunityRating": "Ocjeni zajednice", - "OptionContinuing": "Nastavlja se", "OptionCriticRating": "Ocjeni kritike", "OptionCustomUsers": "Prilagođeno", "OptionDaily": "Dnevno", @@ -668,17 +652,11 @@ "OptionDateAddedFileTime": "Koristi datum stvaranja datoteke", "OptionDateAddedImportTime": "Koristi skenirano datumom u biblioteku", "OptionDatePlayed": "Datumu izvođenja", - "OptionDescending": "Silazno", "OptionDisableUser": "Onemogući ovog korisnika", "OptionDisableUserHelp": "Ako je onemogućen server neće dopustiti nikakve veze od ovog korisnika. Postojeće veze će odmah biti prekinute.", "OptionDislikes": "Nevolim", "OptionDisplayFolderView": "Prikaz pogleda mape za prikaz obične medijske mape", "OptionDisplayFolderViewHelp": "Ako je omogućeno, Jellyfin aplikacija će prikazati kategoriju mape uz vašu medijsku biblioteku. To je korisno ako želite imati običan pogled mapa.", - "OptionDownloadArtImage": "Grafike", - "OptionDownloadBackImage": "Druga str.", - "OptionDownloadBannerImage": "Zaglavlje", - "OptionDownloadBoxImage": "Kutija", - "OptionDownloadDiscImage": "Disk", "OptionDownloadImagesInAdvance": "Preuzmi slike unaprijed", "OptionDownloadMenuImage": "Meni", "OptionDownloadPrimaryImage": "Primarno", @@ -692,22 +670,17 @@ "OptionEnableForAllTuners": "Omogući za sve TV/Radio uređaje", "OptionEnableM2tsMode": "Omogući M2ts način", "OptionEnableM2tsModeHelp": "Omogući M2ts način kada se kodira u mpegts.", - "OptionEnded": "Završeno", "OptionEquals": "Jednako", "OptionEstimateContentLength": "Procjena duljine sadržaja kada se konvertira", "OptionEveryday": "Svaki dan", "OptionExternallyDownloaded": "Vanjsko preuzimanje", "OptionExtractChapterImage": "Omogući preuzimanje slika iz poglavlja", - "OptionFavorite": "Omiljeni", "OptionHasSpecialFeatures": "Specijalne opcije", - "OptionHasSubtitles": "Titlovi", "OptionHasThemeSong": "Pjesma teme", "OptionHasThemeVideo": "Video teme", - "OptionHasTrailer": "Kratki video", "OptionHideUser": "Sakrij korisnika sa prozora prijave", "OptionHideUserFromLoginHelp": "Korisno za privatne ili skrivene administratorske račune. Korisnik će se morati prijaviti ručno unosom svojeg korisničkog imena i lozinke.", "OptionHlsSegmentedSubtitles": "Hls dijelovi titlova prijevoda", - "OptionHomeVideos": "Kućni videi i slike", "OptionIgnoreTranscodeByteRangeRequests": "Zanemari raspon zahtjeva prikrivenog bajta", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Ako je omogućeno, zahtjevi će biti poštovani, ali će ignorirati zaglavlja raspona bajta.", "OptionImdbRating": "IMDb ocjena", @@ -724,7 +697,6 @@ "OptionPlainVideoItems": "Prikaži sve video zapise kao jednostavne video stavke", "OptionPlainVideoItemsHelp": "Ako je omogućeno, sav video se prezentira u DIDL-u kao \"objekt.stavka.videoStavka\" umjesto više specijaliziranog tipa kao \"objekt.stavka.videoStavka.film\".", "OptionPlayCount": "Broju izvođenja", - "OptionPlayed": "Izvođeni", "OptionPremiereDate": "Datum premijere", "OptionProfilePhoto": "Slika", "OptionProtocolHls": "Http strujanje uživo", @@ -733,7 +705,6 @@ "OptionReportByteRangeSeekingWhenTranscodingHelp": "To je potrebno za neke uređaje koji ne mogu dobro koristiti pretraživanje vremena.", "OptionRequirePerfectSubtitleMatch": "Samo preuzimanje titlova prijevoda koji su savršen izbor za moje video datoteke", "OptionResumable": "Nastavi", - "OptionRuntime": "Trajanje", "OptionSaveMetadataAsHidden": "Spremite meta-podatke i slike kao skrivene datoteke", "OptionSaveMetadataAsHiddenHelp": "Promjena ovoga će se primjenjivati na nove meta-podatke spremljene unaprijed. Postojeće datoteke meta-podataka će se ažurirati sljedeći puta kada ih spremi Jellyfin Server.", "OptionSpecialEpisode": "Specijal", @@ -741,7 +712,6 @@ "OptionTrackName": "Nazivu pjesme", "OptionTvdbRating": "Ocjeni Tvdb", "OptionUnairedEpisode": "Ne emitirane epizode", - "OptionUnplayed": "Neizvođeni", "OptionWakeFromSleep": "Pokreni iz stanja mirovanja", "OptionWeekdays": "Radni dani", "OptionWeekends": "Vikendi", @@ -844,11 +814,9 @@ "TabOther": "Ostalo", "TabParentalControl": "Roditeljska kontrola", "TabPlugins": "Dodaci", - "TabProfile": "Profil", "TabProfiles": "Profili", "TabResponses": "Odazivi", "TabScheduledTasks": "Zakazani zadaci", - "TabSettings": "Postavke", "TabStreaming": "Strujanje", "TabUpcoming": "Uskoro", "Tags": "Oznake", @@ -967,7 +935,6 @@ "OptionThumb": "Sličica", "OptionProtocolHttp": "HTTP", "OptionProfileVideo": "Video", - "OptionProfileAudio": "Audio", "OptionPoster": "Poster", "OptionList": "Lista", "OptionIsSD": "SD", diff --git a/src/strings/hu.json b/src/strings/hu.json index c49b1ffad3..921cc3c64d 100644 --- a/src/strings/hu.json +++ b/src/strings/hu.json @@ -31,19 +31,14 @@ "ButtonParentalControl": "Szülői felügyelet", "ButtonPause": "Szünet", "ButtonPreviousTrack": "Előző sáv", - "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Gyorsbeállítás varázsló", "ButtonRemove": "Eltávolítás", "ButtonRename": "Átnevezés", "ButtonResetEasyPassword": "Pin kód visszaállítása", - "ButtonResetPassword": "Jelszó visszaállítás", - "ButtonRestart": "Újraindítás", "ButtonResume": "Folytatás", "ButtonScanAllLibraries": "Minden könyvtár beolvasása", "ButtonSelectDirectory": "Könyvtár választása", - "ButtonSelectServer": "Szerver Kiválasztás", "ButtonSend": "Küldés", - "ButtonSettings": "Beállítások", "ButtonShutdown": "Leállítás", "ButtonSignIn": "Bejelentkezés", "ButtonSignOut": "Kijelentkezés", @@ -158,7 +153,6 @@ "HeaderSelectMetadataPath": "Válaszd ki a metaadat útvonalat", "HeaderSelectServer": "Szerver Kiválasztás", "HeaderSendMessage": "Üzenet küldése", - "HeaderSettings": "Beállítások", "HeaderSetupLibrary": "Média könyvtárak beállítása", "HeaderSortBy": "Megjelenítés", "HeaderSortOrder": "Sorrend", @@ -327,34 +321,24 @@ "OptionAllowRemoteControlOthers": "Egyéb felhasználók távoli irányításának engedélyezése", "OptionAllowRemoteSharedDevices": "Megosztott eszközök távirányításának engedélyezése", "OptionAllowUserToManageServer": "Szerver kezelés engedélyezése a felhasználónak", - "OptionAscending": "Növekvő", - "OptionBlockMovies": "Filmek", "OptionBlockTrailers": "Előzetesek", "OptionCommunityRating": "Közösségi értékelés", "OptionCriticRating": "Kritikusok értékelése", "OptionDaily": "Napi", "OptionDateAdded": "Hozzáadva", "OptionDatePlayed": "Lejátszási dátum", - "OptionDescending": "Csökkenő", "OptionDisableUser": "Felhasználó letiltása", "OptionDislikes": "Nemtetszések", - "OptionDownloadBackImage": "Vissza", - "OptionDownloadBoxImage": "Doboz", - "OptionDownloadDiscImage": "Lemez", "OptionDownloadLogoImage": "Logó", "OptionDownloadMenuImage": "Menü", "OptionEnableAccessFromAllDevices": "Hozzáférés engedélyezése minden eszközről", "OptionEnableAccessToAllChannels": "Hozzáférés engedélyezése minden csatornához", "OptionEnableAccessToAllLibraries": "Hozzáférés engedélyezése minden könyvtárhoz", "OptionExternallyDownloaded": "Külső letöltés", - "OptionFavorite": "Kedvencek", "OptionHasSpecialFeatures": "Speciális lehetőségek", - "OptionHasSubtitles": "Feliratok", "OptionHasThemeSong": "Főcímdal", "OptionHasThemeVideo": "Filmzene", - "OptionHasTrailer": "Előzetes", "OptionHideUser": "Felhasználó elrejtése a bejelentkezési képernyőn", - "OptionHomeVideos": "Fényképek", "OptionImdbRating": "IMDb értékelés", "OptionLikes": "Kedveltek", "OptionMissingEpisode": "Hiányzó Epizódok", @@ -362,15 +346,11 @@ "OptionNew": "Új…", "OptionParentalRating": "Korhatár besorolás", "OptionPlayCount": "Lejátszások száma", - "OptionPlayed": "Megnézett", - "OptionProfileAudio": "Audió", "OptionProfileVideo": "Videó", "OptionReleaseDate": "Megjelenés dátuma", "OptionResumable": "Folytatható", - "OptionRuntime": "Játékidő", "OptionTrackName": "Sáv Címe", "OptionUnairedEpisode": "Nem vetített Epizódok", - "OptionUnplayed": "Nemjátszott", "OptionWeekly": "Heti", "OriginalAirDateValue": "Eredeti vetítés dátuma: {0}", "PackageInstallCancelled": "{0} ({1} verzió) telepítése megszakítva.", @@ -444,11 +424,9 @@ "TabOther": "Egyéb", "TabParentalControl": "Szülői Felügyelet", "TabPlugins": "Bővítmények", - "TabProfile": "Profil", "TabProfiles": "Profilok", "TabScheduledTasks": "Ütemezett feladatok", "TabServer": "Szerver", - "TabSettings": "Beállítások", "TabUpcoming": "Hamarosan érkezik", "Tags": "Címkék", "TellUsAboutYourself": "Mondj valamit magadról", @@ -965,8 +943,6 @@ "OneChannel": "Egy csatorna", "OnlyImageFormats": "Csak képformátumok (VOBSUB, PGS, SUB)", "Option3D": "3D", - "OptionAlbum": "Album", - "OptionAlbumArtist": "Album előadó", "OptionAllowAudioPlaybackTranscoding": "Engedélyezze az átkódolást igénylő audió lejátszást", "OptionAllowContentDownloading": "Média letöltésének és szinkronizálásának engedélyezése", "OptionAllowLinkSharingHelp": "Csak a médiaadatokat tartalmazó weboldalak oszthatók meg. A médiafájlok soha nem oszthatók meg nyilvánosan. A megosztás időlimithez van kötve, és lejár {0} nap elteltével.", @@ -976,17 +952,12 @@ "OptionAllowSyncTranscoding": "Engedélyezze a média letöltését és szinkronizálását, amely átkódolást igényel", "OptionAllowVideoPlaybackRemuxing": "Olyan videólejátszás engedélyezése, amely átalakítást igényel újrakódolás nélkül", "OptionAllowVideoPlaybackTranscoding": "Engedélyezze az átkódolást igénylő videó lejátszást", - "OptionArtist": "Előadó", - "OptionAuto": "Auto", "OptionAutomaticallyGroupSeries": "A több mappában elosztott sorozat automatikus összevonása", "OptionAutomaticallyGroupSeriesHelp": "A több mappában elosztott sorozat automatikusan egyesül egy sorozatba.", - "OptionBlockBooks": "Könyvek", "OptionBlockLiveTvChannels": "Élő TV csatornák", - "OptionBlockMusic": "Zene", "OptionBlockTvShows": "TV műsorok", "OptionBluray": "Blu-ray", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", - "OptionContinuing": "Folytatva", "OptionDateAddedImportTime": "Használja a könyvtárba beolvasási dátumot", "OptionDisableUserHelp": "A szerver nem engedélyezi a felhasználó csatlakozását. A meglévő kapcsolatok azonnal megszűnnek.", "OptionDisplayFolderView": "Az egyszerű média mappák mappanézetének megjelenítése", @@ -1008,7 +979,6 @@ "MessageNoTrailersFound": "Telepítsd a Trailer csatornát, hogy javítsd a filmélményt az internetes előzetesek könyvtárának hozzáadásával.", "OptionEnableM2tsMode": "M2ts mód engedélyezése", "OptionEnableM2tsModeHelp": "Engedélyezze az m2ts módot amikor mpegts kódolás történik.", - "OptionEnded": "Befejezett", "OptionEstimateContentLength": "Az átkódolás során becsülje meg a tartalom hosszát", "OptionEveryday": "Minden nap", "OptionHideUserFromLoginHelp": "Hasznos a privát vagy a rejtett rendszergazdák számára. A felhasználónak kézzel kell bejelentkeznie a felhasználónevének és jelszavának megadásával.", @@ -1170,7 +1140,6 @@ "AuthProviderHelp": "Válaszd ki az azonosítási szolgáltatást amely ezen felhasználó jelszavának ellenőrzését valósítja meg.", "BurnSubtitlesHelp": "Meghatározza, hogy a szervernek be kell-e égetnie a feliratot videó átkódolás esetén a felirat típusának függvényében. Ennek elkerülésével a szerver teljesítménye javul. Válaszd az Auto lehetőséget a kép alapú feliratok (pl. VOBSUB, PGS, SUB/IDX, stb.) és bizonyos ASS/SSA feliratok beégetéséhez.", "ButtonAddScheduledTaskTrigger": "Vezérlő Hozzáadása", - "ButtonGuide": "Műsorújság", "ButtonRefreshGuideData": "Műsorújság Frissítése", "ColorPrimaries": "Alapszínek", "DefaultSubtitlesHelp": "A feliratok a beágyazott metaadatok alapértelmezett és forced jelölői által meghatározottak alapján kerülnek betöltésre. A nyelvi beállítások akkor kerülnek figyelembe vételre, ha több lehetőség is rendelkezésre áll.", @@ -1268,8 +1237,6 @@ "OptionLoginAttemptsBeforeLockoutHelp": "A 0 érték beállítással az alapértelmezett beállítások lesznek bekapcsolva. A sima felhasználóknak 3, az adminisztrátoroknak 5 lehetőségük lesz. A -1 érték kikapcsolja ezt a funkciót.", "OptionList": "Lista", "OptionDownloadThumbImage": "Miniatűr", - "OptionDownloadBannerImage": "Banner", - "OptionDownloadArtImage": "Grafika", "OptionCustomUsers": "Egyéni", "OptionBlockChannelContent": "Internetes csatornatartalmak", "OptionBanner": "Banner", diff --git a/src/strings/id.json b/src/strings/id.json index fed8694ca2..9c7283c93d 100644 --- a/src/strings/id.json +++ b/src/strings/id.json @@ -20,7 +20,6 @@ "OptionEnableAccessToAllLibraries": "Aktifkan akses ke semua pustaka", "ParentalRating": "Parental Rating", "TabAccess": "Akses", - "TabProfile": "Profil", "TellUsAboutYourself": "Beritahu kami tentang anda", "ThisWizardWillGuideYou": "Panduan ini akan memandu Anda melalui proses setup. Untuk memulai, silahkan pilih bahasa yang Anda gunakan.", "UserProfilesIntro": "Jellyfin mendukung profil pengguna, memungkinkan setiap pengguna memiliki tampilan mereka sendiri, kondisi pemutaran dan pengawasan orang tua.", @@ -79,19 +78,15 @@ "ButtonStart": "Mulai", "ButtonSignIn": "Masuk", "ButtonShutdown": "Matikan", - "ButtonSettings": "Pengaturan", "ButtonSend": "Kirim", "ButtonSelectView": "Pilih tampilan", - "ButtonSelectServer": "Pilih Server", "ButtonSelectDirectory": "Pilih Direktori", "ButtonScanAllLibraries": "Pindai Semua Pustaka", "ButtonResume": "Lanjutkan", - "ButtonResetPassword": "Atur ulang Kata sandi", "ButtonResetEasyPassword": "Atur ulang kode pin mudah", "ButtonRename": "Ubah nama", "ButtonRemove": "Hapus", "ButtonRefreshGuideData": "Muat ulang Data Panduan", - "ButtonProfile": "Profil", "ButtonPause": "Jeda", "ButtonParentalControl": "Kendali orang tua", "ButtonOpen": "Buka", @@ -100,7 +95,6 @@ "ButtonMore": "Lebih banyak", "ButtonLibraryAccess": "Akses pustaka", "ButtonInfo": "Info", - "ButtonGuide": "Panduan", "ButtonGotIt": "Paham", "ButtonFullscreen": "Layar penuh", "ButtonForgotPassword": "Lupa Kata Sandi", @@ -231,7 +225,6 @@ "ButtonTogglePlaylist": "Daftar Putar", "ButtonSubtitles": "Subtitle", "ButtonSplit": "Membagi", - "ButtonRestart": "Muat ulang", "ButtonPreviousTrack": "Lagu sebelumnya", "ButtonNextTrack": "Lagu berikutnya", "ButtonManualLogin": "Login Manual", diff --git a/src/strings/is-is.json b/src/strings/is-is.json index 4b48774a2b..b0919f6c7e 100644 --- a/src/strings/is-is.json +++ b/src/strings/is-is.json @@ -33,10 +33,7 @@ "ButtonAddUser": "Bæta við notenda", "ButtonArrowLeft": "Vinstri", "ButtonArrowRight": "Hægri", - "OptionBlockBooks": "Bækur", - "OptionContinuing": "Heldur áfram", "OptionBlockTvShows": "Sjónvarpsþættir", - "OptionBlockMusic": "Tónlist", "OptionBlockTrailers": "Sýnishorn", "AllowOnTheFlySubtitleExtractionHelp": "Hægt er að sækja texta sem eru innbyggðir í myndaskrá og senda þá beint til notanda á textaformi til þess að sleppa við að umbreyta (transcode) myndaskránni. Í sumum tölvum getur þetta tekið langan tíma og valdið hikstum á meðan verið er að sækja textan. Afvirkjaðu þetta til þess að láta alla texta vera brennda inn í myndaskránna ef tæki notenda styður ekki að spila skránna beint.", "AccessRestrictedTryAgainLater": "Aðgangur bannaður í augnablikinu. Vinsamlegast reynið síðar.", @@ -107,7 +104,6 @@ "Channels": "Stöðvar", "Collections": "Söfn", "OptionUnairedEpisode": "Ófrumsýndir þættir", - "OptionUnplayed": "Óspilað", "OptionWeekdays": "Vikudagar", "OptionWeekends": "Helgar", "PackageInstallFailed": "{0} tókst ekki að setja upp.", @@ -190,15 +186,10 @@ "ButtonUninstall": "Fjarlægja", "ButtonTrailer": "Sýnishorn", "ButtonSignIn": "Innskráning", - "ButtonSettings": "Stillingar", "ButtonSend": "Senda", - "ButtonSelectServer": "Velja netþjón", "ButtonSelectDirectory": "Velja möppu", - "ButtonRestart": "Endurræsa", - "ButtonResetPassword": "Endurstilla lykilorð", "ButtonOpen": "Opna", "Songs": "Lög", - "ButtonProfile": "Prófíll", "ButtonPreviousTrack": "Fyrra lag", "ButtonPause": "Pása", "ButtonRemove": "Fjarlægja", @@ -216,7 +207,6 @@ "ButtonManualLogin": "Handvirkt Auðkenni", "ButtonLibraryAccess": "Aðgangur að safni", "ButtonInfo": "Upplýsingar", - "ButtonGuide": "Sjónvarpsvísir", "ButtonGotIt": "Skilið", "ButtonFullscreen": "Fylla upp í skjá", "ButtonForgotPassword": "Gleymt Lykilorð", @@ -363,7 +353,6 @@ "Saturday": "Laugardagur", "Rewind": "Spóla til baka", "AlbumArtist": "Höfundur plötu", - "OptionHasTrailer": "Sýnishorn", "ValueSongCount": "{0} lög", "ValueSeriesCount": "{0} Þáttaraðir", "ValueSeconds": "{0} sekúndur", @@ -384,7 +373,6 @@ "ThemeSongs": "Þemu lög", "TellUsAboutYourself": "Segðu okkur frá sjálfum þér", "TabUpcoming": "Væntanlegt", - "TabProfile": "Prófíll", "TabPlugins": "Viðbætur", "TabOther": "Annað", "TabNetworks": "Netkerfi", diff --git a/src/strings/it.json b/src/strings/it.json index 536437773c..b259f57a2f 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -57,7 +57,6 @@ "ButtonForgotPassword": "Password Dimenticata", "ButtonFullscreen": "Schermo Intero", "ButtonGotIt": "Ho capito", - "ButtonGuide": "Guida", "ButtonLibraryAccess": "Accesso biblioteca", "ButtonManualLogin": "Accesso Manuale", "ButtonMore": "Altro", @@ -67,22 +66,17 @@ "ButtonParentalControl": "Controllo parentale", "ButtonPause": "Pausa", "ButtonPreviousTrack": "Traccia Precedente", - "ButtonProfile": "Profilo", "ButtonQuickStartGuide": "Guida rapida", "ButtonRefreshGuideData": "Aggiorna la guida", "ButtonRemove": "Rimuovi", "ButtonRename": "Rinomina", "ButtonResetEasyPassword": "Resetta codice PIN", - "ButtonResetPassword": "Reset Password", - "ButtonRestart": "Riavvia", "ButtonResume": "Riprendi", "ButtonRevoke": "Revocare", "ButtonScanAllLibraries": "Scansiona Tutte le Librerie", "ButtonSelectDirectory": "Seleziona cartella", - "ButtonSelectServer": "Scegli Server", "ButtonSelectView": "Seleziona vista", "ButtonSend": "Invia", - "ButtonSettings": "Impostazioni", "ButtonShutdown": "Arresta Server", "ButtonSignIn": "Accedi", "ButtonSignOut": "Esci", @@ -361,7 +355,6 @@ "HeaderSeriesOptions": "Impostazioni Serie TV", "HeaderSeriesStatus": "Stato Serie TV", "HeaderServerSettings": "Impostazioni server", - "HeaderSettings": "Impostazioni", "HeaderSetupLibrary": "Imposta le tue librerie multimediali", "HeaderSortBy": "Ordina per", "HeaderSortOrder": "Ordinamento", @@ -834,7 +827,6 @@ "OnlyForcedSubtitlesHelp": "Solo i sottotitoli contrassegnati come forzati saranno caricati.", "OnlyImageFormats": "Solo formati immagine (VOBSUB, PGS, SUB)", "OptionAdminUsers": "Amministratori", - "OptionAlbumArtist": "Artista Album", "OptionAllUsers": "Tutti gli utenti", "OptionAllowAudioPlaybackTranscoding": "Abilita la riproduzione di audio che necessita di transcodifica", "OptionAllowBrowsingLiveTv": "Consenti accesso alla TV in Diretta", @@ -851,20 +843,13 @@ "OptionAllowUserToManageServer": "Consenti a questo utente di accedere alle impostazioni del server", "OptionAllowVideoPlaybackRemuxing": "Consenti la riproduzione di video che necessitano di conversione ma non di ricodifica", "OptionAllowVideoPlaybackTranscoding": "Abilita la riproduzione di video che necessita di transcodifica", - "OptionArtist": "Artista", - "OptionAscending": "Crescente", - "OptionAuto": "Automatico", "OptionAutomaticallyGroupSeries": "Fondi automaticamente le serie sparse su più cartelle", "OptionAutomaticallyGroupSeriesHelp": "Le Serie TV distribuite su più cartelle di questa libreria saranno automaticamente combinate in un'unica Serie TV.", - "OptionBlockBooks": "Libri", "OptionBlockChannelContent": "Contenuto di Canali Internet", "OptionBlockLiveTvChannels": "Canali TV in onda", - "OptionBlockMovies": "Film", - "OptionBlockMusic": "Musica", "OptionBlockTrailers": "Trailer", "OptionBlockTvShows": "Serie TV", "OptionCommunityRating": "Voto del pubblico", - "OptionContinuing": "In corso", "OptionCriticRating": "Voto della critica", "OptionCustomUsers": "Personalizza", "OptionDaily": "Giornaliero", @@ -872,14 +857,11 @@ "OptionDateAddedFileTime": "Utilizzare la data di creazione del file", "OptionDateAddedImportTime": "Utilizza la data di scansione nella libreria", "OptionDatePlayed": "Visto il", - "OptionDescending": "Decrescente", "OptionDisableUser": "Disabilita questo utente", "OptionDisableUserHelp": "Il server non sarà disponibile per questo utente. Le connessioni esistenti verranno terminate.", "OptionDislikes": "Non mi piace", "OptionDisplayFolderView": "Visualizza cartelle come normali cartelle dei media", "OptionDisplayFolderViewHelp": "Visualizza le cartelle accanto alle librerie multimediali. Questo può essere utile se si desidera avere una vista di cartelle semplici.", - "OptionDownloadBackImage": "Indietro", - "OptionDownloadDiscImage": "Disco", "OptionDownloadImagesInAdvance": "Scarica preventivamente le immagini", "OptionDownloadImagesInAdvanceHelp": "Di default, la maggior parte delle immagini vengono scaricate solo quando richieste dai client. Abilita questa opzione per scaricare tutte le immagini in anticipo, quando nuovi file multimediali vengono importati. Ciò può causare scansioni delle librerie molto più lunghe.", "OptionDownloadMenuImage": "Menù", @@ -894,21 +876,17 @@ "OptionEnableForAllTuners": "Abilita per tutti i sintonizzatori", "OptionEnableM2tsMode": "Attiva modalità M2TS", "OptionEnableM2tsModeHelp": "Attivare la modalità m2ts durante la codifica di mpegts.", - "OptionEnded": "Finito", "OptionEquals": "Uguale", "OptionEstimateContentLength": "Stimare la lunghezza contenuto durante la transcodifica", "OptionEveryday": "Tutti i giorni", "OptionExternallyDownloaded": "Download Esterno", "OptionExtractChapterImage": "Abilita estrazione dell'immagine dei capitoli", - "OptionFavorite": "Preferiti", "OptionHasSpecialFeatures": "Contenuti speciali", - "OptionHasSubtitles": "Sottotitoli", "OptionHasThemeSong": "Sigla", "OptionHasThemeVideo": "Video Sigla", "OptionHideUser": "Nascondi questo utente dalla schermata di accesso", "OptionHideUserFromLoginHelp": "Utile per account nascosti o amministratore. L'utente avrà bisogno di accedere manualmente utilizzando la propria username e password.", "OptionHlsSegmentedSubtitles": "HLS sottotitoli segmentati", - "OptionHomeVideos": "Foto", "OptionIgnoreTranscodeByteRangeRequests": "Ignorare le richieste di intervallo di byte di trascodifica", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Queste richieste saranno onorate, ma ignoreranno l'intervallo di byte.", "OptionImdbRating": "Voto IMDB", @@ -924,7 +902,6 @@ "OptionPlainVideoItems": "Mostra tutti i video come normali file video", "OptionPlainVideoItemsHelp": "Tutti i video sono rappresentati in DIDL come \"object.item.videoItem\" invece che di tipo più specifico, come \"object.item.videoItem.movie\".", "OptionPlayCount": "Riproduzioni", - "OptionPlayed": "Visto", "OptionPremiereDate": "Data della prima", "OptionProfilePhoto": "Foto", "OptionReleaseDate": "Data di Uscita", @@ -934,7 +911,6 @@ "OptionRequirePerfectSubtitleMatchHelp": "La richiesta di una corrispondenza perfetta filtrerà i sottotitoli per includere solo quelli che sono stati testati e verificati con il file video esatto. Deselezionando questo aumenterà la probabilità che i sottotitoli vengono scaricati, ma aumenteranno le probabilità di testo sottotitolato impreciso o errato.", "OptionResElement": "res element", "OptionResumable": "Interrotto", - "OptionRuntime": "Durata", "OptionSaveMetadataAsHidden": "Salvare i metadati e le immagini come file nascosti", "OptionSaveMetadataAsHiddenHelp": "La modifica di questo si applicherà ai nuovi metadati che verranno salvati in avanti. I file di metadati esistenti verranno aggiornati la prossima volta che verranno salvati dal server.", "OptionSpecialEpisode": "Speciali", @@ -942,7 +918,6 @@ "OptionTrackName": "Titolo Traccia", "OptionTvdbRating": "Voto TVDB", "OptionUnairedEpisode": "Episodi mai andati in onda", - "OptionUnplayed": "Non visto", "OptionWakeFromSleep": "Risveglio", "OptionWeekdays": "Feriali", "OptionWeekends": "Il Weekend", @@ -1090,11 +1065,9 @@ "TabNotifications": "Notifiche", "TabOther": "Altro", "TabParentalControl": "Controllo Genitore", - "TabProfile": "Profilo", "TabProfiles": "Profili", "TabResponses": "Risposte", "TabScheduledTasks": "Operazioni Pianificate", - "TabSettings": "Impostazioni", "TabUpcoming": "In Arrivo", "Tags": "Tag", "TellUsAboutYourself": "Parlaci di te", @@ -1217,7 +1190,6 @@ "MessageNoCollectionsAvailable": "Le collezioni ti consentono di fruire di raggruppamenti personalizzati di Film, Serie e Album. Clicca il tasto + per iniziare a creare collezioni.", "MessageNoServersAvailable": "Nessun server è stato trovato usando la ricerca automatica di server.", "LabelBaseUrlHelp": "Aggiunge una cartella personalizzata all'URL del server, ad esempio http://example.com/<baseurl>", - "OptionAlbum": "Album", "LabelPasswordResetProvider": "Provider per il Reset della Password:", "LabelServerName": "Nome del Server:", "LabelSonyAggregationFlags": "Flag di aggregazione Sony:", @@ -1225,9 +1197,7 @@ "DashboardOperatingSystem": "Sistema Operativo: {0}", "LabelXDlnaCap": "X-DLNA cap:", "MessageImageTypeNotSelected": "Per favore seleziona un'immagine dal menù a tendina.", - "OptionDownloadBannerImage": "Banner", "OptionProtocolHls": "Streaming in Diretta HTTP", - "OptionDownloadArtImage": "Art", "OptionMax": "Massimo", "PasswordResetProviderHelp": "Scegli un provider di reset password da utilizzare quando questo utente ne richiederà il reset.", "PlaybackData": "Dati di Riproduzione", @@ -1287,17 +1257,14 @@ "Option3D": "3D", "OptionBanner": "Banner", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", - "OptionDownloadBoxImage": "Box", "OptionDownloadLogoImage": "Logo", "OptionDvd": "DVD", - "OptionHasTrailer": "Trailer", "OptionIsSD": "SD", "OptionList": "Lista", "OptionLoginAttemptsBeforeLockout": "Determina quanti tentativi di accesso errati possono essere fatti prima che avvenga il blocco.", "OptionLoginAttemptsBeforeLockoutHelp": "Se imposti qui zero verranno considerati i valori di default, ossia tre tentativi per gli utenti normali e cinque per gli amministratori. Impostare questo a -1 disabiliterà la funzione.", "OptionPoster": "Locandina", "OptionPosterCard": "Carte/locandina", - "OptionProfileAudio": "Audio", "OptionRegex": "Espressioni Regolari", "OptionThumb": "Icona", "OptionThumbCard": "Carte/icone", diff --git a/src/strings/ja.json b/src/strings/ja.json index 9652e85a18..66382a168d 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -67,7 +67,6 @@ "ButtonForgotPassword": "パスワードを忘れた", "ButtonFullscreen": "フルスクリーン", "ButtonGotIt": "了解", - "ButtonGuide": "ガイド", "ButtonInfo": "情報", "ButtonLibraryAccess": "ライブラリへアクセス", "ButtonManualLogin": "マニュアルログイン", @@ -79,22 +78,17 @@ "ButtonParentalControl": "ペアレンタルコントロール", "ButtonPause": "一時停止", "ButtonPreviousTrack": "前のトラック", - "ButtonProfile": "プロフィール", "ButtonQuickStartGuide": "クイックスタートガイド", "ButtonRefreshGuideData": "ガイドデータの更新", "ButtonRemove": "削除", "ButtonRename": "名前の変更", "ButtonResetEasyPassword": "easy pin code をリセット", - "ButtonResetPassword": "パスワードをリセット", - "ButtonRestart": "再起動", "ButtonResume": "レジューム", "ButtonRevoke": "取り消す", "ButtonScanAllLibraries": "すべてのライブラリをスキャン", "ButtonSelectDirectory": "ディレクトリの選択", - "ButtonSelectServer": "サーバーの選択", "ButtonSelectView": "ビューを選択", "ButtonSend": "送る", - "ButtonSettings": "設定", "ButtonShutdown": "シャットダウン", "ButtonSignIn": "サインイン", "ButtonSignOut": "サインアウト", @@ -398,7 +392,6 @@ "HeaderSeriesOptions": "シリーズオプション", "HeaderSeriesStatus": "シリーズの状態", "HeaderServerSettings": "サーバー設定", - "HeaderSettings": "設定", "HeaderSetupLibrary": "メディアライブラリを設定する", "HeaderSortBy": "ソート", "HeaderSortOrder": "ソート順", @@ -508,21 +501,15 @@ "MessageReenableUser": "最有効するためには以下を参照してください", "Name": "名前", "NewCollection": "新しいコレクション", - "OptionAscending": "昇順", - "OptionAuto": "自動", - "OptionBlockBooks": "ブック", "OptionDatePlayed": "再生日", "OptionMissingEpisode": "所有してないエピソード", "OptionPoster": "ポスター", - "OptionProfileAudio": "オーディオ", "OptionProfilePhoto": "フォト", "OptionProfileVideo": "ビデオ", "OptionProfileVideoAudio": "ビデオオーディオ", "OptionProtocolHttp": "HTTP", "OptionRegex": "正規表現", "OptionReleaseDate": "公開日", - "OptionRuntime": "実行時間", - "OptionUnplayed": "未再生", "OptionUnairedEpisode": "未放送のエピソード", "OptionWakeFromSleep": "スリープから起動", "OptionWeekdays": "平日", @@ -549,7 +536,6 @@ "MediaInfoAspectRatio": "アスペクト比", "MediaInfoBitDepth": "ビット深度", "Menu": "メニュー", - "OptionBlockMovies": "ムービー", "OptionImdbRating": "IMDb評価", "ReplaceAllMetadata": "すべてのメタデータを置き換える", "ResumeAt": "{0} から再生", @@ -917,40 +903,26 @@ "NumLocationsValue": "{0} フォルダー", "Option3D": "3D", "OptionAdminUsers": "管理者", - "OptionAlbum": "アルバム", - "OptionAlbumArtist": "アルバムアーティスト", "OptionAllowBrowsingLiveTv": "ライブTVアクセスを許可", "OptionAllowLinkSharing": "SNSシェアを許可", "OptionAllowRemoteControlOthers": "他のユーザーのリモートコントロールを許可", "OptionAllowUserToManageServer": "このユーザーにサーバーの管理を許可", - "OptionArtist": "アーティスト", "OptionBlockLiveTvChannels": "ライブTVチャンネル", - "OptionBlockMusic": "ミュージック", "OptionBlockTrailers": "トレーラー", "OptionBlockTvShows": "テレビ番組", "OptionCommunityRating": "コミュニティ評価", "OptionCriticRating": "評論家の評価", "OptionCustomUsers": "カスタム", - "OptionDescending": "降順", "DashboardOperatingSystem": "オペレーションシステム: {0}", "OptionDisableUser": "このユーザーを無効化", "OptionDislikes": "いいね取り消し", - "OptionDownloadArtImage": "アート", - "OptionDownloadBackImage": "前へ", - "OptionDownloadBannerImage": "バナー", - "OptionDownloadBoxImage": "ボックス", - "OptionDownloadDiscImage": "ディスク", "OptionDownloadMenuImage": "メニュー", "OptionEnableExternalContentInSuggestions": "おすすめの欄に外部のコンテンツを使う", "OptionEnableM2tsMode": "M2TSモードを有効化", - "OptionFavorite": "お気に入り", "OptionHasSpecialFeatures": "特別な機能", - "OptionHasSubtitles": "字幕", "OptionHasThemeSong": "テーマ曲", "OptionHasThemeVideo": "テーマ映像", - "OptionHasTrailer": "トレーラー", "OptionHideUser": "ログインスクリーンからこのユーザーを隠す", - "OptionHomeVideos": "フォト", "OptionIsHD": "HD", "OptionProtocolHls": "HTTPライブストリーミング", "MediaInfoDefault": "デフォルト", @@ -966,11 +938,9 @@ "TabOther": "その他", "TabParentalControl": "ペアレンタルコントロール", "TabPlugins": "プラグイン", - "TabProfile": "プロフィール", "TabProfiles": "プロフィール", "TabResponses": "レスポンス", "TabServer": "サーバー", - "TabSettings": "設定", "TabStreaming": "ストリーミング", "MessageContactAdminToResetPassword": "パスワードをリセットするためにシステムの管理者に連絡してください。", "TagsValue": "タグ: {0}", diff --git a/src/strings/kk.json b/src/strings/kk.json index 90176b0335..2ddc55c867 100644 --- a/src/strings/kk.json +++ b/src/strings/kk.json @@ -66,7 +66,6 @@ "ButtonForgotPassword": "Paróldi eske salý", "ButtonFullscreen": "Tolyq ekran", "ButtonGotIt": "Túsinikti", - "ButtonGuide": "Telegıd", "ButtonInfo": "Aqparatqa", "ButtonLibraryAccess": "Tasyǵyshhanǵa qatynaý", "ButtonManualLogin": "Qolmen kirý", @@ -78,22 +77,17 @@ "ButtonParentalControl": "Mazmundy basqarý", "ButtonPause": "Úzý", "ButtonPreviousTrack": "Aldyńǵy jolshyqqa", - "ButtonProfile": "Profaıl", "ButtonQuickStartGuide": "Tez bastaý nusqaýlyǵy", "ButtonRefreshGuideData": "Telegıd derekterin jańǵyrtý", "ButtonRemove": "Alastaý", "ButtonRename": "Qaıta ataý", "ButtonResetEasyPassword": "Ońaıtylǵan PIN-kodty ysyrý", - "ButtonResetPassword": "Paróldi ysyrý", - "ButtonRestart": "Qaıta iske qosý", "ButtonResume": "Jalǵastyrý", "ButtonRevoke": "Bas tartý", "ButtonScanAllLibraries": "Barlyq tasyǵyshhanalardy skanerleý", "ButtonSelectDirectory": "Qatalogty tańdaý", - "ButtonSelectServer": "Serverdi tańdaý", "ButtonSelectView": "Kórinisti tańdaý", "ButtonSend": "Jiberý", - "ButtonSettings": "Parametrlerge", "ButtonShutdown": "Jumysty aıaqtaý", "ButtonSignIn": "Kirý", "ButtonSignOut": "Shyǵý", @@ -387,7 +381,6 @@ "HeaderSeriesOptions": "Telehıkaıa opsıalary", "HeaderSeriesStatus": "Telehıkaıa kúıi", "HeaderServerSettings": "Server parametrleri", - "HeaderSettings": "Parametrler", "HeaderSetupLibrary": "Tasyǵyshhanalardy ornatý jáne teńsheý", "HeaderSortBy": "Suryptaý tásili", "HeaderSortOrder": "Suryptaý reti", @@ -887,8 +880,6 @@ "OnlyForcedSubtitlesHelp": "Tek qana májbúrli dep belgilengen sýbtıtrler júkteledi.", "OnlyImageFormats": "Tek keskin pishimder (VOBSUB, PGS jáne SUB)", "OptionAdminUsers": "Ákimshiler", - "OptionAlbum": "Álbom", - "OptionAlbumArtist": "Álbom oryndaýshysy", "OptionAllUsers": "Barlyq paıdalanýshylar", "OptionAllowAudioPlaybackTranscoding": "Qaıta kodtaýǵa talaby bar dybys oınatý úshin ruqsat etý", "OptionAllowBrowsingLiveTv": "Efırlik TD qatynaýǵa ruqsat etý", @@ -905,21 +896,14 @@ "OptionAllowUserToManageServer": "Býl paıdalanýshyǵa serverdi basqarý úshin ruqsat etý", "OptionAllowVideoPlaybackRemuxing": "Qaıta kodtaýsyz túrlendirý talaby bar beıne oınatý úshin ruqsat etý", "OptionAllowVideoPlaybackTranscoding": "Qaıta kodtaýǵa talaby bar beıne oınatý úshin ruqsat etý", - "OptionArtist": "Oryndaýshy", - "OptionAscending": "Artýy boıynsha", - "OptionAuto": "Avtomatty", "OptionAutomaticallyGroupSeries": "Birneshe qaltalar arasynda taralǵan telehıkaıany avtomatty bir telehıkaıaǵa biriktirý", "OptionAutomaticallyGroupSeriesHelp": "Qosylǵanda, osy tasyǵyshhana ishindegi birneshe qaltalar arasynda taralǵan telehıkaıasy avtomatty bir telehıkaıaǵa biriktiriletin bolady.", - "OptionBlockBooks": "Kitaptar", "OptionBlockChannelContent": "Internet arna mazmuny", "OptionBlockLiveTvChannels": "Efırlik TD arnalary", - "OptionBlockMovies": "Fılmder", - "OptionBlockMusic": "Mýzyka", "OptionBlockTrailers": "Treılerler", "OptionBlockTvShows": "TD-kórsetimder", "OptionBluray": "BluRay", "OptionCommunityRating": "Qaýym baǵalaýy", - "OptionContinuing": "Jalǵasýda", "OptionCriticRating": "Synshylar baǵalaýy", "OptionCustomUsers": "Teńsheýli", "OptionDaily": "Kún saıyn", @@ -927,17 +911,11 @@ "OptionDateAddedFileTime": "Faıldyń jasalǵan kúnin paıdalaný", "OptionDateAddedImportTime": "Tasyǵyshhana ishine skanerleý kúnin paıdalaný", "OptionDatePlayed": "Oınatylǵan kúni", - "OptionDescending": "Kemýi boıynsha", "OptionDisableUser": "Bul paıdalanýshyǵa tyıym salý", "OptionDisableUserHelp": "Eger tyıym salynsa, server bul paıdalanýshydan eshqandaı baılanystarǵa ruqsat etpeıdi. Bar qosylymdar kenet úziledi.", "OptionDislikes": "Unatpaýlar", "OptionDisplayFolderView": "Kádimgi tasyǵysh qaltalaryn kórsetý úshin Qalta aspektin beıneleý", "OptionDisplayFolderViewHelp": "Basqa tasyǵyshhanalaryńyzben birge Qaltalar kórsetiledi. Bul qarapaıym qalta kórinisin alǵyńyz kelse paıdaly bolýy múmkin.", - "OptionDownloadArtImage": "Oıý sýret", - "OptionDownloadBackImage": "Artqy muqaba", - "OptionDownloadBannerImage": "Baner", - "OptionDownloadBoxImage": "Qorap", - "OptionDownloadDiscImage": "Dıski", "OptionDownloadImagesInAdvance": "Sýretterdi aldyn ala júktep alý", "OptionDownloadImagesInAdvanceHelp": "Ádepkide, sýretterdiń kóbi tek qana Jellyfin-qoldanbasy surasa júkteledi. Jańa tasyǵyshderekter ımporttalǵan kezde aldyn ala barlyq sýretterdi júktep alý úshin, osy opsıany qosyńyz. Tasyǵyshhana skanerleýde bul aıtarlyqtaı uzaq ýaqyt alýy múmkin.", "OptionDownloadLogoImage": "Logotıp", @@ -954,22 +932,17 @@ "OptionEnableForAllTuners": "Barlyq túner qurylǵylary úshin qosý", "OptionEnableM2tsMode": "M2ts rejimin qosý", "OptionEnableM2tsModeHelp": "Mpegts úshin kodtaý kezinde m2ts rejimin qosý.", - "OptionEnded": "Aıaqtaldy", "OptionEquals": "Teń", "OptionEstimateContentLength": "Qaıta kodtaý kezinde mazmun uzyndyǵyn baǵalaý", "OptionEveryday": "Kún saıyn", "OptionExternallyDownloaded": "Syrttan júktelgen", "OptionExtractChapterImage": "Sahna sýretin bólip alýdy qosý", - "OptionFavorite": "Tańdaýlylar", "OptionHasSpecialFeatures": "Arnaıy múmkindikter", - "OptionHasSubtitles": "Sýbtıtrler", "OptionHasThemeSong": "Taqyryptyq áýen", "OptionHasThemeVideo": "Taqyryptyq beıne", - "OptionHasTrailer": "Treıler", "OptionHideUser": "Bul paıdalanýshyny kirý ekrandarynan jasyrý", "OptionHideUserFromLoginHelp": "Jeke nemese jasyryn ákimshi tirkelgileri úshin paıdaly. Paıdalanýshy aty men paróldi engizý arqyly paıdalanýshyǵa qolmen kirý qajet bolady.", "OptionHlsSegmentedSubtitles": "HLS bólshektelgen sýbtıtrler", - "OptionHomeVideos": "Fotosýretter", "OptionIgnoreTranscodeByteRangeRequests": "Qaıta kodtaý baıt aýqymy suranystaryn elemeý", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Qosylǵanda, osy suranystarmen sanasý bolady, biraq baıt aýqymynyń bas derektemesi elep eskerilmeıdi.", "OptionImdbRating": "IMDb baǵalaýy", @@ -986,9 +959,7 @@ "OptionPlainVideoItems": "Barlyq beınelerdi kádimgi beıne tarmaqtary retinde beıneleý", "OptionPlainVideoItemsHelp": "Qosylǵanda, barlyq qaltalar DIDL ishinde \"object.item.videoItem.movie\" sıaqty naqtylaý túriniń ornyna \"object.item.videoItem\" bolyp beınelenedi.", "OptionPlayCount": "Oınatý esebi", - "OptionPlayed": "Oınatylǵan", "OptionPremiereDate": "Tusaýkeser kún-aıy", - "OptionProfileAudio": "Dybys", "OptionProfilePhoto": "Foto", "OptionProfileVideo": "Beıne", "OptionProfileVideoAudio": "Beıne Dybys", @@ -1001,7 +972,6 @@ "OptionRequirePerfectSubtitleMatch": "Beıne faıldarym úshin tek qana kemeldi sáıkes kelgen sýbtıtrlerdi júktep alý", "OptionRequirePerfectSubtitleMatchHelp": "Keremet sáıkestik talap etilgende tek qana naqty beıne faılyńyzben synaqtaýdan jáne tekserýden ótken sýbtıtrler súziledi. Belgini alastaý sýbtıtrlerdi júkteý yqtımaldyǵyn arttyrady, biraq qate ýaqyty bar nemese burys bolý sýbtıtrler mátininiń múmkindikterin ósiredi.", "OptionResumable": "Jalǵastyralatyn", - "OptionRuntime": "Uzaqtyǵy", "OptionSaveMetadataAsHidden": "Metaderekter men sýretterdi jasyryn faıldar retinde saqtaý", "OptionSaveMetadataAsHiddenHelp": "Osy ózgertý bolashaqta saqtalatyn jańa metaderekter úshin qoldanylady. Bar metaderek faıldar olar Jellyfin serveri arqyly saqtalǵanda kelesi joly jańartylady.", "OptionSpecialEpisode": "Arnaıy bólimder", @@ -1009,7 +979,6 @@ "OptionTrackName": "Jolshyq aty", "OptionTvdbRating": "TVDB baǵalaýy", "OptionUnairedEpisode": "Kórsetilmegen bólimder", - "OptionUnplayed": "Oınatylmaǵan", "OptionWakeFromSleep": "Uıqydan oıatýda", "OptionWeekdays": "Jumys kúnderi", "OptionWeekends": "Demalys kúnderi", @@ -1164,12 +1133,10 @@ "TabOther": "Basqalar", "TabParentalControl": "Mazmundy basqarý", "TabPlugins": "Plagınder", - "TabProfile": "Profaıl", "TabProfiles": "Profaıldar", "TabResponses": "Ún qatýlar", "TabScheduledTasks": "Josparlaýshy", "TabServer": "Server", - "TabSettings": "Parametrler", "TabStreaming": "Tasymaldaný", "TabUpcoming": "Kútilgen", "Tags": "Tegter", diff --git a/src/strings/ko.json b/src/strings/ko.json index cdb2711a48..c310737fd1 100644 --- a/src/strings/ko.json +++ b/src/strings/ko.json @@ -24,7 +24,6 @@ "ButtonEditOtherUserPreferences": "이 사용자의 프로필, 이미지, 개인 설정을 수정합니다.", "ButtonForgotPassword": "비밀번호 분실", "ButtonGotIt": "알겠습니다", - "ButtonGuide": "가이드", "ButtonInfo": "정보", "ButtonManualLogin": "수동 로그인", "ButtonMore": "더 보기", @@ -34,20 +33,15 @@ "ButtonOpen": "열기", "ButtonPause": "일시 중지", "ButtonPreviousTrack": "이전 트랙", - "ButtonProfile": "프로필", "ButtonQuickStartGuide": "빠른 시작 가이드", "ButtonRefreshGuideData": "가이드 데이터 새로 고침", "ButtonRemove": "제거", "ButtonRename": "이름 변경", "ButtonResetEasyPassword": "간편 PIN 코드 재설정", - "ButtonResetPassword": "비밀번호 재설정", - "ButtonRestart": "다시 시작", "ButtonResume": "이어서 재생", "ButtonSelectDirectory": "디렉터리 선택", - "ButtonSelectServer": "서버 선택", "ButtonSelectView": "보기 선택", "ButtonSend": "전송", - "ButtonSettings": "설정", "ButtonShutdown": "종료", "ButtonSignIn": "로그인", "ButtonSignOut": "로그아웃", @@ -185,7 +179,6 @@ "HeaderSelectTranscodingPathHelp": "트랜스코딩 임시 파일에 사용할 경로를 탐색 또는 입력하세요. 쓰기 가능한 폴더여야 합니다.", "HeaderSendMessage": "메시지 전송", "HeaderServerSettings": "서버 설정", - "HeaderSettings": "설정", "HeaderSetupLibrary": "미디어 라이브러리 설정", "HeaderSpecialEpisodeInfo": "스페셜 에피소드 정보", "HeaderSpecialFeatures": "특별 배역", @@ -469,8 +462,6 @@ "NewCollection": "새 컬렉션", "MessageNoNextUpItems": "아무도 찾지 못했어요. 여러분의 쇼를 보기 시작하세요!", "OptionAdminUsers": "관리자", - "OptionAlbum": "앨범", - "OptionAlbumArtist": "앨범 아티스트", "OptionAllUsers": "모든 사용자", "OptionAllowAudioPlaybackTranscoding": "트랜스코딩이 필요한 오디오 재생 허용", "OptionAllowBrowsingLiveTv": "TV 방송 접속 허용", @@ -484,20 +475,13 @@ "OptionAllowRemoteSharedDevicesHelp": "사용자가 제어를 시작할 때까지 DLNA 기기가 공유된 것으로 간주됩니다.", "OptionAllowUserToManageServer": "이 사용자에게 이 서버의 관리를 허용합니다", "OptionAllowVideoPlaybackTranscoding": "트랜스코딩이 필요한 비디오 재생 허용", - "OptionArtist": "아티스트", - "OptionAscending": "오름차순", - "OptionAuto": "자동", - "OptionBlockBooks": "도서", "OptionBlockChannelContent": "인터넷 채널 콘텐츠", "OptionBlockLiveTvChannels": "실시간 TV 방송 채널", - "OptionBlockMovies": "영화", - "OptionBlockMusic": "음악", "OptionBlockTrailers": "예고편", "OptionBlockTvShows": "TV 쇼", "OptionBluray": "블루레이", "OptionCaptionInfoExSamsung": "CaptionInfoEx (삼성)", "OptionCommunityRating": "커뮤니티 평점", - "OptionContinuing": "계속하기", "OptionCriticRating": "Critic 평점", "OptionCustomUsers": "사용자 정의", "OptionDaily": "매일", @@ -505,16 +489,10 @@ "OptionDateAddedFileTime": "파일 생성 날짜 사용", "OptionDateAddedImportTime": "라이브러리에 추가된 날짜 사용", "OptionDatePlayed": "재생한 날짜", - "OptionDescending": "내림차순", "OptionDisableUser": "이 사용자 사용 안 함", "OptionDisableUserHelp": "서버가 이 사용자의 연결을 허용하지 않습니다. 현재 연결이 예고없이 종료됩니다.", "OptionDislikes": "싫어함", "OptionDisplayFolderViewHelp": "미디어 라이브러리 옆에 폴더를 표시합니다. 이는 일반적인 폴더 보기를 원하는 경우에 유용합니다.", - "OptionDownloadArtImage": "아트", - "OptionDownloadBackImage": "배경", - "OptionDownloadBannerImage": "배너", - "OptionDownloadBoxImage": "박스", - "OptionDownloadDiscImage": "디스크", "OptionDownloadLogoImage": "로고", "OptionDownloadMenuImage": "메뉴", "OptionDownloadPrimaryImage": "기본적인", @@ -525,15 +503,11 @@ "OptionEnableAccessToAllChannels": "모든 채널에 접속 허용", "OptionEnableAccessToAllLibraries": "모든 라이브러리에 접속 허용", "OptionEnableM2tsMode": "M2ts 모드 활성화", - "OptionEnded": "종료됨", "OptionEveryday": "매일", "OptionExternallyDownloaded": "외부 다운로드", - "OptionFavorite": "즐겨찾기", "OptionHasSpecialFeatures": "특별한 기능", - "OptionHasSubtitles": "자막", "OptionHasThemeSong": "테마송", "OptionHasThemeVideo": "테마 비디오", - "OptionHasTrailer": "예고편", "OptionHideUser": "로그인 화면에서 이 사용자 숨김", "OptionHideUserFromLoginHelp": "비공개 또는 숨겨진 관리자 계정에 유용합니다. 사용자는 수동으로 사용자 이름과 비밀번호를 입력하여 로그인해야 합니다.", "OptionHlsSegmentedSubtitles": "HLS 분할된 자막", @@ -552,9 +526,7 @@ "OptionPlainVideoItems": "모든 비디오를 일반 비디오 항목으로 표시", "OptionPlainVideoItemsHelp": "활성화 된 경우 모든 비디오는 \"object.item.videoItem.movie\"와 같이보다 구체적인 유형 대신 \"object.item.videoItem\"로 DIDL에 표시됩니다.", "OptionPlayCount": "재생 횟수", - "OptionPlayed": "재생함", "OptionPremiereDate": "Premiere 일자", - "OptionProfileAudio": "오디오", "OptionProfilePhoto": "사진", "OptionProfileVideo": "비디오", "OptionProfileVideoAudio": "비디오 오디오", @@ -562,13 +534,11 @@ "OptionReleaseDate": "개봉일", "OptionResElement": "res 요소", "OptionResumable": "이어보기", - "OptionRuntime": "상영 시간", "OptionSaveMetadataAsHidden": "메타데이터와 이미지를 숨김 파일로 저장", "OptionSpecialEpisode": "스페셜", "OptionTrackName": "트랙 이름", "OptionTvdbRating": "TVDb 평점", "OptionUnairedEpisode": "방송하지 않은 에피소드", - "OptionUnplayed": "재생되지 않음", "OptionWakeFromSleep": "슬립모드에서 깨우기", "OptionWeekdays": "주중", "OptionWeekends": "주말", @@ -637,12 +607,10 @@ "TabOther": "기타", "TabParentalControl": "자녀 보호", "TabPlugins": "플러그인", - "TabProfile": "프로필", "TabProfiles": "프로필", "TabResponses": "반응", "TabScheduledTasks": "예약 작업", "TabServer": "서버", - "TabSettings": "설정", "TabStreaming": "스트리밍", "TabUpcoming": "방송 예정", "Tags": "태그", @@ -862,7 +830,6 @@ "OptionList": "목록", "OptionIsSD": "SD", "OptionIsHD": "HD", - "OptionHomeVideos": "사진", "OptionEnableForAllTuners": "모든 튜너 장치 활성화", "OptionBanner": "배너", "Option3D": "3D", diff --git a/src/strings/lt-lt.json b/src/strings/lt-lt.json index 2d890a4fca..1f2940ba35 100644 --- a/src/strings/lt-lt.json +++ b/src/strings/lt-lt.json @@ -26,10 +26,7 @@ "ButtonQuickStartGuide": "Greitos pradžios gidas", "ButtonRefreshGuideData": "Atnaujinti gido duomenis", "ButtonRemove": "Pašalinti", - "ButtonResetPassword": "Atstatyti slaptažodį", - "ButtonRestart": "Iš naujo", "ButtonSelectDirectory": "Rinktis direktoriją", - "ButtonSettings": "Nustatymai", "ButtonSignIn": "Prisijungti", "ButtonSignOut": "Atsijungti", "ButtonStop": "Stabdyti", @@ -293,8 +290,6 @@ "MessageNoNextUpItems": "Nieko neradau. Pradėkite žiūrėti laidas!", "NoSubtitleSearchResultsFound": "Nieko neradau.", "OptionAdminUsers": "Administratoriai", - "OptionAlbum": "Albumas", - "OptionAlbumArtist": "Albumo atlikėjas", "OptionAllUsers": "Visi vartotojai", "OptionAllowBrowsingLiveTv": "Leisti žiūrėti tiesioginę TV", "OptionAllowLinkSharing": "Leisti dalintis socialinėse aplinkose", @@ -305,24 +300,15 @@ "OptionAllowRemoteSharedDevices": "Leisti nuotoliniu būdu valdyti bendrus įrenginius", "OptionAllowRemoteSharedDevicesHelp": "Dlna įrenginiai yra laikomi bendrais kol vartotojas nepradeda jų kontroliuoti.", "OptionAllowUserToManageServer": "Leisti šiam vartotojui valdyti serverį", - "OptionArtist": "Atlikėjas", - "OptionAscending": "Didėjančia tvarka", "OptionCommunityRating": "Bendruomenės vertinimas", - "OptionContinuing": "Tęsiamas", "OptionCriticRating": "Kritikų vertinimas", "OptionCustomUsers": "Kita", "OptionDaily": "Kasdienis", "OptionDateAdded": "Pridėjimo data", "OptionDatePlayed": "Žiūrėjimo data", - "OptionDescending": "Mažėjančia tvarka", "OptionDisableUser": "Išjungti šį vartotoją", "OptionDisableUserHelp": "Išjungus serveris neleis prisijungti šiam vartotojui. Esami prisijungimai bus nutraukti.", "OptionDislikes": "Nepatinka", - "OptionDownloadArtImage": "Menas", - "OptionDownloadBackImage": "Nugarėlė", - "OptionDownloadBannerImage": "Juosta", - "OptionDownloadBoxImage": "Viršelis", - "OptionDownloadDiscImage": "Diskas", "OptionDownloadLogoImage": "Logotipas", "OptionDownloadMenuImage": "Meniu", "OptionDownloadPrimaryImage": "Pirminis", @@ -331,13 +317,9 @@ "OptionEnableAccessFromAllDevices": "Leisti prieigą iš visų įrenginių", "OptionEnableAccessToAllChannels": "Leisti prieigą prie visų kanalų", "OptionEnableAccessToAllLibraries": "Leisti prieigą prie visų bibliotekos", - "OptionEnded": "Pasibaigė", - "OptionFavorite": "Mėgstami", "OptionHasSpecialFeatures": "Ypatingos serijos", - "OptionHasSubtitles": "Subtitrai", "OptionHasThemeSong": "Teminė daina", "OptionHasThemeVideo": "Teminis video", - "OptionHasTrailer": "Anonsas", "OptionHideUser": "Paslėpti šį vartotoją iš prisijungimo ekrano", "OptionHideUserFromLoginHelp": "Naudinga privačioms ar slaptoms administratorių paskyroms. Vartotojui reikės rankiniu būdu įvesti vartotoją vardą ir slaptažodį.", "OptionIgnoreTranscodeByteRangeRequests": "Ignoruot transkodavimo baitų ruožo užklausas", @@ -351,16 +333,13 @@ "OptionOnInterval": "Pasikartojantis", "OptionParentalRating": "Tėvų reitingas", "OptionPlayCount": "Rodymų kiekis", - "OptionPlayed": "Rodyta", "OptionPremiereDate": "Premjeros data", "OptionReleaseDate": "Išleidimo data", "OptionResumable": "Pratęsiamas", - "OptionRuntime": "Trukmė", "OptionSpecialEpisode": "Ypatingos", "OptionTrackName": "Dainos pavadinimas", "OptionTvdbRating": "Tvdb vertinimas", "OptionUnairedEpisode": "Nerodytos serijos", - "OptionUnplayed": "Nerodyta", "OptionWakeFromSleep": "Žadinti iš miego", "OptionWeekly": "Savaitinis", "OriginalAirDateValue": "Pirmo eterio data: {0}", @@ -435,10 +414,8 @@ "TabNetworks": "Tinklai", "TabNotifications": "Pranešimai", "TabOther": "Kita", - "TabProfile": "Profilis", "TabProfiles": "Profiliai", "TabServer": "Serveris", - "TabSettings": "Nustatymai", "TabUpcoming": "Būsimi", "Tags": "Žymės", "TellUsAboutYourself": "Papasakokite apie save", @@ -493,19 +470,16 @@ "ButtonChangeServer": "Keisti serverį", "ButtonForgotPassword": "Pamiršau slaptažodį", "ButtonFullscreen": "Per visą ekraną", - "ButtonGuide": "Gidas", "ButtonInfo": "Info", "ButtonLibraryAccess": "Mediatekos prieiga", "ButtonMore": "Daugiau", "ButtonNetwork": "Tinklas", "ButtonOpen": "Atidaryti", "ButtonParentalControl": "Tėvų kontrolė", - "ButtonProfile": "Profilis", "ButtonRename": "Pervadinti", "ButtonResume": "Tęsti", "ButtonRevoke": "Panaikinti", "ButtonScanAllLibraries": "Nuskaityti Visas Bibliotekas", - "ButtonSelectServer": "Rinktis Serverį", "ButtonSelectView": "Pasirinkti rodinį", "ButtonSend": "Siųsti", "ButtonShutdown": "Išjungti", @@ -585,7 +559,6 @@ "CopyStreamURL": "Kopijuoti srauto nuorodą", "HeaderConfirmPluginInstallation": "Patvirtinti įskiepio diegimą", "HeaderError": "Klaida", - "OptionBlockMovies": "Filmai", "Songs": "Kūriniai", "Art": "Menas", "ButtonAddImage": "Pridėti vaizdą", @@ -615,10 +588,8 @@ "HeaderDeleteTaskTrigger": "Ištrinti užduoties trigerį", "HeaderFavoriteVideos": "Mėgstami video įrašai", "Absolute": "Visiškas", - "OptionBlockBooks": "Knygos", "OptionBlockChannelContent": "Internetinio kanalo turinys", "OptionBlockLiveTvChannels": "TV kanalai gyvai", - "OptionBlockMusic": "Muzika", "OptionBlockTrailers": "Anonsai", "OptionBlockTvShows": "TV Serialai", "HeaderCastAndCrew": "Aktoriai", @@ -650,7 +621,6 @@ "HeaderIdentification": "Identifikacija", "HeaderIdentificationHeader": "Identifikavimo antraštė", "HeaderHttpHeaders": "HTTP-antraštės", - "OptionAuto": "Auto", "OptionAutomaticallyGroupSeriesHelp": "Jei įjungta - serijos skirtinguose bibliotekos aplankaluose bus apjungtos į vieną serialą.", "OptionBanner": "Juosta", "Playlists": "Grojaraštis", @@ -702,7 +672,6 @@ "FolderTypeUnset": "Įvairus turinys", "HeaderAddUpdateImage": "Pridėti/Įkelti atvaizdą", "LabelAlbumArtPN": "Albumo iliustracijos PN:", - "HeaderSettings": "Nustatymai", "LabelMatchType": "Atitikties tipas:", "LabelMaxChromecastBitrate": "„Chromecast“ transliacijos kokybė:", "ExitFullscreen": "Išeiti iš viso ekrano režimo", diff --git a/src/strings/lv.json b/src/strings/lv.json index de3b8475d3..1c92b24710 100644 --- a/src/strings/lv.json +++ b/src/strings/lv.json @@ -241,7 +241,6 @@ "HeaderSortOrder": "Kārtošanas Secība", "HeaderSortBy": "Kārtot Pēc", "HeaderSetupLibrary": "Uzstādīt multvides bibliotēkas", - "HeaderSettings": "Iestatījumi", "HeaderServerSettings": "Servera Iestatījumi", "HeaderSeriesStatus": "Sēriju Status", "HeaderSeriesOptions": "Sēriju Opcijas", @@ -459,21 +458,16 @@ "ButtonSignOut": "Iziet", "ButtonSignIn": "Ieiet", "ButtonShutdown": "Izslēgt", - "ButtonSettings": "Iestatījumi", "ButtonSend": "Nosūtīt", "ButtonSelectView": "Izvēlies Skatu", - "ButtonSelectServer": "Izvēlies Serveri", "ButtonSelectDirectory": "Izvēlies Mapi", "ButtonScanAllLibraries": "Skanēt Visas Bibliotēkas", "ButtonRevoke": "Atsaukt", "ButtonResume": "Turpināt", - "ButtonRestart": "Restartēt", - "ButtonResetPassword": "Nomainīt Paroli", "ButtonResetEasyPassword": "Nomainīt vieglo pin kodu", "ButtonRename": "Pārsaukt", "ButtonRemove": "Noņemt", "ButtonRefreshGuideData": "Atjaunot Gida Datus", - "ButtonProfile": "Profils", "ButtonPreviousTrack": "Iepriekšējais celiņš", "ButtonPause": "Pauzēt", "ButtonParentalControl": "Vecāku Pārvaldība", @@ -484,7 +478,6 @@ "ButtonMore": "Vairāk", "ButtonLibraryAccess": "Bibliotēku piekļuve", "ButtonInfo": "Info", - "ButtonGuide": "Gids", "ButtonGotIt": "Sapratu", "ButtonFullscreen": "Pilnekrāna", "ButtonForgotPassword": "Aizmirsu Paroli", @@ -567,8 +560,6 @@ "MySubtitles": "Mani subtitri", "MusicVideo": "Mūzikas Video", "OptionAllUsers": "Visi lietotāji", - "OptionAlbumArtist": "Albuma Izpildītājs", - "OptionAlbum": "Albums", "OptionAdminUsers": "Administratori", "OnlyImageFormats": "Tikai attēlu formāti (VOBSUB, PGS, SUB, utt.)", "Option3D": "3D", @@ -642,11 +633,9 @@ "TagsValue": "Tagi: {0}", "Tags": "Tagi", "TabStreaming": "Straumēšana", - "TabSettings": "Iestatījumi", "TabServer": "Serveris", "TabResponses": "Atbildes", "TabProfiles": "Profili", - "TabProfile": "Profils", "TabPlugins": "Paplašinājumi", "TabParentalControl": "Vecāku Pārvaldība", "TabOther": "Cits", @@ -702,8 +691,6 @@ "OptionProtocolHttp": "HTTP", "OptionProfileVideoAudio": "Video Audio", "OptionProfileVideo": "Video", - "OptionProfileAudio": "Audio", - "OptionPlayed": "Atskaņots", "OptionParentalRating": "Vecāku Reitings", "OptionOnInterval": "Pēc intervāla", "OptionNone": "Neviens", @@ -712,27 +699,15 @@ "OptionLikes": "Patīk", "OptionIsSD": "SD", "OptionIsHD": "HD", - "OptionHasTrailer": "Treileris", - "OptionHasSubtitles": "Subtitri", - "OptionFavorite": "Favorīti", "OptionEveryday": "Katru dienu", - "OptionEnded": "Beidzies", "OptionEnableAccessToAllLibraries": "Iespējot piekļuvi visām bibliotēkām", "OptionDvd": "DVD", "OptionDownloadMenuImage": "Izvēlne", "OptionDownloadLogoImage": "Logo", - "OptionDownloadDiscImage": "Disks", - "OptionDownloadBoxImage": "Kaste", "OptionDaily": "Ikdienas", - "OptionContinuing": "Turpina", "OptionBluray": "Blu-ray", "OptionBlockTvShows": "TV Raidījumi", "OptionBlockTrailers": "Treileri", - "OptionBlockMusic": "Mūzika", - "OptionBlockMovies": "Filmas", - "OptionBlockBooks": "Grāmatas", - "OptionAuto": "Auto", - "OptionArtist": "Izpildītājs", "MessageNoPluginConfiguration": "Šim paplašinājumam nav konfigurējamu iestatījumu.", "NoCreatedLibraries": "Izskatās ka tu vēl neesi izveidojis nevienu bibliotēku. {0}Vai tu vēlies izveidot vienu tagad?{1}", "NextUp": "Nākamais", @@ -1037,7 +1012,6 @@ "OptionWeekends": "Nedēļas nogalēs", "OptionWeekdays": "Darba dienās", "OptionWakeFromSleep": "Modināt no miega", - "OptionUnplayed": "Neatskaņots", "OptionTrackName": "Celiņa Nosaukums", "OptionThumb": "Sīktēls", "OptionSaveMetadataAsHidden": "Saglabāt metadatus un attēlus kā paslēptas datnes", @@ -1056,7 +1030,6 @@ "OptionImdbRating": "IMDb Vērtējums", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Ja iespējots, šie pieprasījumi tiks veikti bet ignorēs baitu diapazona hederu.", "OptionIgnoreTranscodeByteRangeRequests": "Ignorēt trans-kodēšanas baitu diapazona pieprasījumus", - "OptionHomeVideos": "Attēli", "OptionHlsSegmentedSubtitles": "HLS segmentēti subtitri", "OptionHideUserFromLoginHelp": "Noderīgs lai paslēptu privātus vai paslēptus administratora kontus. Šim lietotājam būs jāieiet manuāli, ievadot savu lietotājvārdu un paroli.", "OptionHideUser": "Paslēpt šo lietotāju no piekļuves ekrāniem", @@ -1076,8 +1049,6 @@ "OptionDownloadPrimaryImage": "Galvenais", "OptionDownloadImagesInAdvanceHelp": "Noklusējumā, lielākā daļa attēlu tiek lejupielādēti kad tie ir pieprasīti Jellyfin lietotnē. Iespējo šo opciju lai iepriekšēji lejupielādētu visus attēlus, kad jauns saturs tiek importēts. Tas var radīt ievērojami ilgākus bibliotēkas skenējumus.", "OptionDownloadImagesInAdvance": "Lejupielādēt attēlus iepriekš", - "OptionDownloadBackImage": "Aizmugure", - "OptionDownloadArtImage": "Māksla", "OptionDisableUserHelp": "Ja atspējots, serveris neatļaus nekādus savienojumus no šī lietotāja. Esošie savienojumi tiks pēkšņi apturēti.", "OptionDisableUser": "Atspējot šo lietotāju", "OptionDatePlayed": "Atskaņošanas Datums", diff --git a/src/strings/mr.json b/src/strings/mr.json index 88a0a9cfe5..051a671abb 100644 --- a/src/strings/mr.json +++ b/src/strings/mr.json @@ -5,7 +5,6 @@ "ButtonNetwork": "नेटवर्क", "ButtonMore": "अजून", "ButtonInfo": "माहिती", - "ButtonGuide": "गाईड", "ButtonGotIt": "समजले", "ButtonForgotPassword": "पासवर्ड विसरलो", "ButtonChangeServer": "सर्व्हर बदला", @@ -68,10 +67,8 @@ "ButtonTrailer": "ट्रेलर", "ButtonStop": "थांबा", "ButtonStart": "सुरू करा", - "ButtonSettings": "सेटिंग्झ", "ButtonSend": "पाठवा", "ButtonSelectView": "दृष्य निवडा", - "ButtonSelectServer": "सर्व्हर निवडा", "ButtonSelectDirectory": "डिरेक्टरी निवडा", "ButtonScanAllLibraries": "सर्व संग्रहालय स्कॅन करा", "ButtonRename": "नाव बदला", diff --git a/src/strings/ms.json b/src/strings/ms.json index e9d03a73f0..d2364510ce 100644 --- a/src/strings/ms.json +++ b/src/strings/ms.json @@ -64,7 +64,6 @@ "ButtonChangeServer": "Tukar pelayan", "ButtonLibraryAccess": "Akses pustaka", "ButtonInfo": "Info", - "ButtonGuide": "Panduan", "ButtonGotIt": "Terima", "ButtonFullscreen": "Paparan skrin penuh", "ButtonForgotPassword": "Lupa Kata Laluan", diff --git a/src/strings/nb.json b/src/strings/nb.json index 591af23502..7a3de4f4a6 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -55,21 +55,16 @@ "ButtonOpen": "Åpne", "ButtonParentalControl": "Foreldrekontroll", "ButtonPreviousTrack": "Forrige spor", - "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Hurtigveiledning", "ButtonRefreshGuideData": "Oppdater TV-guidedata", "ButtonRemove": "Fjern", "ButtonRename": "Endre navn", "ButtonResetEasyPassword": "Tilbakestill PIN-kode", - "ButtonResetPassword": "Tilbakestill passord", - "ButtonRestart": "Omstart", "ButtonResume": "Fortsett", "ButtonRevoke": "Kall tilbake", "ButtonScanAllLibraries": "Skann alle biblioteker", "ButtonSelectDirectory": "Velg katalog", - "ButtonSelectServer": "Velg server", "ButtonSelectView": "Velg visning", - "ButtonSettings": "Innstillinger", "ButtonShutdown": "Slå av", "ButtonSignIn": "Logg inn", "ButtonSignOut": "Logg ut", @@ -297,7 +292,6 @@ "HeaderSendMessage": "Send melding", "HeaderSeriesOptions": "Serievalg", "HeaderServerSettings": "Serverinnstillinger", - "HeaderSettings": "Innstillinger", "HeaderSetupLibrary": "Konfigurer dine mediebibliotek", "HeaderSortBy": "Sorter etter", "HeaderSortOrder": "Sorteringsrekkefølge", @@ -719,18 +713,13 @@ "OptionAllowUserToManageServer": "Tillatt denne brukeren å administrere serveren", "OptionAllowVideoPlaybackRemuxing": "Tillat avspilling av video som krever konvertering uten omkoding", "OptionAllowVideoPlaybackTranscoding": "Tillat filmavspilling som krever omkoding", - "OptionAscending": "Økende", "OptionAutomaticallyGroupSeries": "Slå sammen serier som er spredt over flere mapper automatisk", "OptionAutomaticallyGroupSeriesHelp": "Serier som er spredt over flere mapper innenfor dette biblioteket bli slått sammen automatisk til en enkelt serie.", - "OptionBlockBooks": "Bøker", "OptionBlockChannelContent": "Innhold fra Internettkanal", "OptionBlockLiveTvChannels": "Direkte-TV-kanaler", - "OptionBlockMovies": "Filmer", - "OptionBlockMusic": "Musikk", "OptionBlockTrailers": "Trailere", "OptionBlockTvShows": "TV-serier", "OptionCommunityRating": "Fellesskapets vurdering", - "OptionContinuing": "Fortsetter", "OptionCriticRating": "Kritikervurdering", "OptionCustomUsers": "Tilpasset", "OptionDaily": "Daglig", @@ -738,15 +727,11 @@ "OptionDateAddedFileTime": "Bruk filopprettelsesdato", "OptionDateAddedImportTime": "Bruk datoen som samsvarer med skanningen inn i biblioteket", "OptionDatePlayed": "Dato avspilt", - "OptionDescending": "Fallende", "OptionDisableUser": "Deaktiver denne brukeren", "OptionDisableUserHelp": "Serveren vil ikke godta noen tilkoblinger fra denne brukeren. Eksisterende tilkoblinger vil avsluttes umiddelbart.", "OptionDislikes": "Misliker", "OptionDisplayFolderView": "Vis en mappevisning for å vise enkle mediemapper", "OptionDisplayFolderViewHelp": "Vis mapper ved siden av andre mediebibliotek. Dette kan være nyttig hvis du vil ha en enkel mappevisning.", - "OptionDownloadBackImage": "Bakside", - "OptionDownloadBoxImage": "Boks", - "OptionDownloadDiscImage": "Plate", "OptionDownloadImagesInAdvance": "Last ned bilder på forhånd", "OptionDownloadMenuImage": "Meny", "OptionDownloadPrimaryImage": "Primær", @@ -760,15 +745,12 @@ "OptionEnableForAllTuners": "Aktiver for alle mottakerenheter", "OptionEnableM2tsMode": "Aktiver M2ts-modus", "OptionEnableM2tsModeHelp": "Aktiver m2ts-modus for koding til mpegts.", - "OptionEnded": "Avsluttet", "OptionEquals": "Lik", "OptionEstimateContentLength": "Estimer innholdslengde ved omkoding", "OptionEveryday": "Hver dag", "OptionExternallyDownloaded": "Ekstern nedlasting", "OptionExtractChapterImage": "Aktiver uthenting av kapittelbilder", - "OptionFavorite": "Favoritter", "OptionHasSpecialFeatures": "Spesialfunksjoner", - "OptionHasSubtitles": "Undertekster", "OptionHasThemeSong": "Temasang", "OptionHasThemeVideo": "Temavideo", "OptionHideUser": "Skjul denne brukeren fra innloggingsskjermene", @@ -790,9 +772,7 @@ "OptionPlainVideoItems": "Vis alle videoer som enkle videoelementer", "OptionPlainVideoItemsHelp": "Alle videoer representerer i DIDL som \"object.item.videoItem\" i stedet for en mer bestemt type, for eksempel \"object.item.videoItem.movie\".", "OptionPlayCount": "Antall avspillinger", - "OptionPlayed": "Avspilt", "OptionPremiereDate": "Premieredato", - "OptionProfileAudio": "Lyd", "OptionProfilePhoto": "Bilde", "OptionProfileVideoAudio": "Videolyd", "OptionReleaseDate": "Utgivelsesdato", @@ -801,7 +781,6 @@ "OptionRequirePerfectSubtitleMatch": "Last kun ned undertekster som er en perfekt match for mine filer", "OptionRequirePerfectSubtitleMatchHelp": "Å kreve en perfekt match vil filtrere bort undertekster slik at kun de som har blitt testet og verifisert mot nøyaktig samme video-fil gjenstår. Dersom du deaktiverer innstillingen øker sannsynligheten for at undertekster lastes ned, men sjansen øker også for at feilsynkronisert eller feilaktig undertekst lastes ned.", "OptionResumable": "Kan gjenopptas", - "OptionRuntime": "Spilletid", "OptionSaveMetadataAsHidden": "Lagre metadata og bilder som skjulte filer", "OptionSaveMetadataAsHiddenHelp": "Endring av denne innstillingen vil gjelde ny metadata som lagres fra nå av. Eksisterende metadata vil bli oppdatert neste gang de lagres av serveren.", "OptionSpecialEpisode": "Spesialepisoder", @@ -809,7 +788,6 @@ "OptionTrackName": "Låtnavn", "OptionTvdbRating": "TVDB-vurdering", "OptionUnairedEpisode": "Kommende episoder", - "OptionUnplayed": "Ikke sett", "OptionWakeFromSleep": "Våkne fra dvale", "OptionWeekdays": "Ukedager", "OptionWeekends": "Helger", @@ -936,11 +914,9 @@ "TabOther": "Annet", "TabParentalControl": "Foreldrekontroll", "TabPlugins": "Programtillegg", - "TabProfile": "Profil", "TabProfiles": "Profiler", "TabResponses": "Svar", "TabScheduledTasks": "Planlagte oppgaver", - "TabSettings": "Innstillinger", "TabUpcoming": "Kommende", "Tags": "Tagger", "TellUsAboutYourself": "Fortell oss litt om deg selv", @@ -1006,7 +982,6 @@ "ButtonSend": "Send", "ButtonPause": "Pause", "ButtonInfo": "Informasjon", - "ButtonGuide": "Guide", "AirDate": "Sendedato", "Browse": "Bla", "BoxRear": "Eske (bakside)", @@ -1050,7 +1025,6 @@ "MediaInfoStreamTypeEmbeddedImage": "Integrert bilde", "MediaInfoStreamTypeSubtitle": "Undertekst", "MediaInfoStreamTypeVideo": "Video", - "OptionDownloadBannerImage": "Banner", "CopyStreamURLSuccess": "URLen ble kopiert.", "OptionThumb": "Miniatyrbilde", "LabelInternetQuality": "Internettkvalitet:", @@ -1073,8 +1047,6 @@ "MediaInfoStreamTypeData": "Data", "Option3D": "3D", "LabelVideo": "Video", - "OptionAlbum": "Album", - "OptionAlbumArtist": "Albumartist", "Filters": "Filtre", "HeaderExternalIds": "Eksterne IDer:", "HeaderFavoriteVideos": "Favorittvideoer", @@ -1111,22 +1083,18 @@ "ExtractChapterImagesHelp": "Uthenting av kapittelbilder vil gjøre det mulig for klienter å vise bilder i menyer for å velge kapitel. Denne prosessen kan være treg, ressurskrevende, og kan kreve flere gigabyte med lagringsplass. Prosessen kjører når videoer oppdages, samt som en daglig planlagt hendelse. Tidsplanen kan endres i innstillinger for planlagte hendelser. Det anbefales ikke at denne prosessen kjøres når det er mange aktive brukere innlogget.", "Extras": "Ekstramateriale", "HeaderKodiMetadataHelp": "For å aktivere eller deaktivere NFO-metadata, endre biblioteket og finn valgene for lagring av metadata.", - "OptionArtist": "Artist", "HeaderPhotoAlbums": "Fotoalbum", "HeaderSecondsValue": "{0} sekunder", "LabelAllowedRemoteAddresses": "Filter for eksterne IP-adresser:", "LabelAllowedRemoteAddressesMode": "Modus for filter for eksterne IP-adresser:", "LabelDiscNumber": "Platenummer:", "LabelDisplayLanguage": "Visningsspråk:", - "OptionAuto": "Automatisk", - "OptionHomeVideos": "Fotografier", "Photos": "Bilder", "Thumb": "Miniatyrbilde", "OptionBluray": "Blu-Ray", "HeaderAlbumArtists": "Albumartister", "HeaderFavoriteShows": "Favorittserier", "MusicLibraryHelp": "Se igjennom {0}veiledningen for navngivelse av musikk{1}.", - "OptionDownloadArtImage": "Omslagsbilde", "LabelAudioBitDepth": "Bitdybde for lyd:", "LabelAudioBitrate": "Bithastighet for lyd:", "LabelAudioChannels": "Lydkanaler:", @@ -1263,7 +1231,6 @@ "OptionDownloadImagesInAdvanceHelp": "Som standard vil de fleste bilder kun lastes ned når de blir forespurt av en klient. Aktiver denne innstillingen for å laste ned alle bilder på forhånd når ny media oppdages. Dette kan føre til at skanning av biblioteket tar betydelig lenger tid.", "OptionDownloadLogoImage": "Logo", "OptionDownloadThumbImage": "Miniatyrbilde", - "OptionHasTrailer": "Trailer", "OptionIsSD": "SD", "OptionList": "Liste", "OptionLoginAttemptsBeforeLockout": "Bestemmer hvor mange mislykkede innloggingsførsøk som kan finne sted før brukeren blir utestengt.", diff --git a/src/strings/nl.json b/src/strings/nl.json index 6258f7c216..dadd77d4e1 100644 --- a/src/strings/nl.json +++ b/src/strings/nl.json @@ -61,7 +61,6 @@ "ButtonForgotPassword": "Wachtwoord Vergeten", "ButtonFullscreen": "Volledig scherm", "ButtonGotIt": "Begrepen", - "ButtonGuide": "Gids", "ButtonLibraryAccess": "Bibliotheek toegang", "ButtonManualLogin": "Handmatige Aanmelding", "ButtonMore": "Meer", @@ -71,22 +70,17 @@ "ButtonParentalControl": "Ouderlijk toezicht", "ButtonPause": "Pauze", "ButtonPreviousTrack": "Vorige track", - "ButtonProfile": "Profiel", "ButtonQuickStartGuide": "Snelstart gids", "ButtonRefreshGuideData": "Gidsgegevens Vernieuwen", "ButtonRemove": "Verwijderen", "ButtonRename": "Naam wijzigen", "ButtonResetEasyPassword": "Reset eenvoudige pincode", - "ButtonResetPassword": "Wachtwoord resetten", - "ButtonRestart": "Herstart", "ButtonResume": "Hervatten", "ButtonRevoke": "Herroepen", "ButtonScanAllLibraries": "Scan alle bibliotheken", "ButtonSelectDirectory": "Selecteer map", - "ButtonSelectServer": "Server Selecteren", "ButtonSelectView": "Selecteer weergave", "ButtonSend": "Stuur", - "ButtonSettings": "Instellingen", "ButtonShutdown": "Afsluiten", "ButtonSignIn": "Aanmelden", "ButtonSignOut": "Afmelden", @@ -367,7 +361,6 @@ "HeaderSeriesOptions": "Series Opties", "HeaderSeriesStatus": "Seriestatus", "HeaderServerSettings": "Server Instellingen", - "HeaderSettings": "Instellingen", "HeaderSetupLibrary": "Stel uw mediabibliotheken in", "HeaderSortBy": "Sorteren op", "HeaderSortOrder": "Sorteer volgorde", @@ -827,7 +820,6 @@ "OnlyForcedSubtitlesHelp": "Alleen als geforceerd gemarkeerde ondertitels worden geladen.", "OnlyImageFormats": "Alleen beeld formaten (VOBSUP, PGS, SUB, etc.)", "OptionAdminUsers": "Beheerders", - "OptionAlbumArtist": "Albumartiest", "OptionAllUsers": "Alle gebruikers", "OptionAllowAudioPlaybackTranscoding": "Afspelen van geluid via transcoding toestaan", "OptionAllowBrowsingLiveTv": "Live TV toegang toestaan", @@ -844,19 +836,13 @@ "OptionAllowUserToManageServer": "Deze gebruiker kan de server beheren", "OptionAllowVideoPlaybackRemuxing": "Sta afspelen toe van video die conversie vereist zonder re-encoding", "OptionAllowVideoPlaybackTranscoding": "Afspelen van video die transcoderen vereisen toestaan", - "OptionArtist": "Artiest", - "OptionAscending": "Oplopend", "OptionAutomaticallyGroupSeries": "Automatisch samenvoegen serie die zijn verspreid over meerdere mappen", "OptionAutomaticallyGroupSeriesHelp": "Serie die verspreid zijn over meerdere mappen binnen deze bibliotheek worden automatisch samengevoegd tot één serie.", - "OptionBlockBooks": "Boeken", "OptionBlockChannelContent": "Internet kanaal Inhoud", "OptionBlockLiveTvChannels": "Live TV Kanalen", - "OptionBlockMovies": "Films", - "OptionBlockMusic": "Muziek", "OptionBlockTvShows": "TV Series", "OptionBluray": "Blu-ray", "OptionCommunityRating": "Algemene Waardering", - "OptionContinuing": "Wordt vervolgd", "OptionCriticRating": "Kritieken", "OptionCustomUsers": "Aangepast", "OptionDaily": "Dagelijks", @@ -864,14 +850,11 @@ "OptionDateAddedFileTime": "Gebruik aanmaak datum bestand", "OptionDateAddedImportTime": "Gebruik scan datum", "OptionDatePlayed": "Datum afgespeeld", - "OptionDescending": "Aflopend", "OptionDisableUser": "Deze gebruiker uitschakelen", "OptionDisableUserHelp": "De server staat geen verbindingen van deze gebruiker toe. Bestaande verbindingen zullen abrupt worden beëindigd.", "OptionDislikes": "Niet leuk", "OptionDisplayFolderView": "Toon een mappenweergave als u gewoon Mediamappen wilt weergeven", "OptionDisplayFolderViewHelp": "Geef folders weer naast uw andere media bibliotheken. Dit kan handig zijn als u een oppervlakkig folder aanzicht wilt hebben.", - "OptionDownloadBackImage": "Terug", - "OptionDownloadDiscImage": "Schijf", "OptionDownloadImagesInAdvance": "Download afbeeldingen van tevoren", "OptionDownloadImagesInAdvanceHelp": "Standaard worden de meeste afbeeldingen alleen gedownload wanneer ze opgevraagd worden door een client. Activeer deze optie om alle afbeeldingen van tevoren te downloaden bij het importeren van nieuwe media. Dit kan aanzienlijk langere bibliotheekscans veroorzaken.", "OptionDownloadPrimaryImage": "Primair", @@ -885,21 +868,17 @@ "OptionEnableForAllTuners": "Inschakelen voor alle tuners", "OptionEnableM2tsMode": "M2ts-modus inschakelen", "OptionEnableM2tsModeHelp": "M2ts-modus bij het encoderen naar mpegts inschakelen.", - "OptionEnded": "Gestopt", "OptionEquals": "Is gelijk aan", "OptionEstimateContentLength": "Lengte inschatten van de inhoud bij het transcoderen", "OptionEveryday": "Elke dag", "OptionExternallyDownloaded": "Externe download", "OptionExtractChapterImage": "Inschakelen uitpakken van hoofdstuk afbeeldingen", - "OptionFavorite": "Favorieten", "OptionHasSpecialFeatures": "Extra's", - "OptionHasSubtitles": "Ondertiteling", "OptionHasThemeSong": "Thema Lied", "OptionHasThemeVideo": "Thema Video", "OptionHideUser": "Verberg deze gebruiker op de aanmeldschermen", "OptionHideUserFromLoginHelp": "Handig voor pivé of verborgen beheer accounts. De gebruiker zal handmatig moeten inloggen met een gebruikersnaam en wachtwoord.", "OptionHlsSegmentedSubtitles": "HLS gesegmenteerde ondertiteling", - "OptionHomeVideos": "Foto's", "OptionIgnoreTranscodeByteRangeRequests": "Transcodeer byte range-aanvragen negeren", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Indien ingeschakeld, zullen deze verzoeken worden gehonoreerd, maar zal de byte bereik header worden genegeerd.", "OptionImdbRating": "IMDb Waardering", @@ -915,9 +894,7 @@ "OptionPlainVideoItems": "Alle video's weergeven als gewone video items", "OptionPlainVideoItemsHelp": "Indien ingeschakeld worden alle video's in DIDL weergegeven als 'object.item.videoItem' in plaats van een meer specifiek type, zoals 'object.item.videoItem.movie'.", "OptionPlayCount": "Afspeel telling", - "OptionPlayed": "Afgespeeld", "OptionPremiereDate": "Première Datum", - "OptionProfileAudio": "Geluid", "OptionProfilePhoto": "Foto", "OptionProfileVideoAudio": "Video geluid", "OptionReleaseDate": "Uitgave datum", @@ -926,14 +903,12 @@ "OptionRequirePerfectSubtitleMatch": "Alleen ondertitels downloaden die een perfecte match geven voor mijn video bestanden", "OptionRequirePerfectSubtitleMatchHelp": "Een perfecte match vereisen zal de ondertitels filteren om alleen ondertitels te downloaden die getest en geverifieerd zijn met je exacte videobestand. Dit uitvinken zal de kans om ondertitels te vinden vergroten, maar ook de kans op een niet gesynchroniseerd of foute ondertitel vergroten.", "OptionResumable": "Hervatbaar", - "OptionRuntime": "Speelduur", "OptionSaveMetadataAsHidden": "Metagegevens en afbeeldingen opslaan als verborgen bestanden", "OptionSaveMetadataAsHiddenHelp": "Het veranderen van dit zal gelden voor nieuwe metadata die wordt opgeslagen. Bestaande metadata bestanden zullen de volgende keer dat ze worden opgeslagen door Jellyfin Server worden bijgewerkt.", "OptionSubstring": "Subtekenreeks", "OptionTrackName": "Naam van Nummer", "OptionTvdbRating": "TVDB Waardering", "OptionUnairedEpisode": "Toekomstige Afleveringen", - "OptionUnplayed": "Niet afgespeeld", "OptionWakeFromSleep": "Uit slaapstand halen", "OptionWeekdays": "Week dagen", "OptionWeekends": "Weekend", @@ -1080,11 +1055,9 @@ "TabNotifications": "Meldingen", "TabOther": "Overig", "TabParentalControl": "Ouderlijk toezicht", - "TabProfile": "Profiel", "TabProfiles": "Profielen", "TabResponses": "Reacties", "TabScheduledTasks": "Geplande taken", - "TabSettings": "Instellingen", "TabUpcoming": "Binnenkort op TV", "Tags": "Labels", "TagsValue": "Labels: {0}", @@ -1199,7 +1172,6 @@ "FetchingData": "Meer data op aan het halen", "HeaderFavoriteBooks": "Favoriete Boeken", "LabelUserLoginAttemptsBeforeLockout": "Mislukte aanmeld pogingen voordat de gebruiker buitengesloten wordt:", - "OptionHasTrailer": "Trailer", "OptionMax": "Max", "LabelBaseUrl": "Basis URL:", "LabelTranscodingProgress": "Transcoderen voortgang:", @@ -1211,9 +1183,6 @@ "MusicArtist": "Muziek Artiest", "MusicVideo": "Muziek Video", "Option3D": "3D", - "OptionAlbum": "Album", - "OptionDownloadArtImage": "Kunst", - "OptionDownloadBannerImage": "Banner", "OptionDownloadLogoImage": "Logo", "OptionDownloadMenuImage": "Menu", "OptionPosterCard": "Poster kaart", @@ -1307,14 +1276,12 @@ "OptionBanner": "Banner", "OptionBlockTrailers": "Trailers", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", - "OptionDownloadBoxImage": "Hoes", "OptionLoginAttemptsBeforeLockoutHelp": "Een waarde van nul betekent dat de standaard waarden van drie pogingen voor normale gebruikers en vijf voor administratoren gebruikt zullen worden. Een waarde van -1 zal deze functionaliteit uit zetten.", "OptionPoster": "Poster", "OptionProtocolHls": "HTTP Live Streaming", "OptionRegex": "Regex", "TabServer": "Server", "TabStreaming": "Streamen", - "OptionAuto": "Auto", "OptionProfileVideo": "Video", "AlbumArtist": "Album Artiest", "Album": "Album", diff --git a/src/strings/pl.json b/src/strings/pl.json index 7337edae72..eaf4a60fc3 100644 --- a/src/strings/pl.json +++ b/src/strings/pl.json @@ -66,7 +66,6 @@ "ButtonForgotPassword": "Zapomniałem hasła", "ButtonFullscreen": "Pełny ekran", "ButtonGotIt": "Rozumiem", - "ButtonGuide": "Przewodnik", "ButtonInfo": "Informacje", "ButtonLibraryAccess": "Dostęp do biblioteki", "ButtonManualLogin": "Logowanie manualne", @@ -77,22 +76,17 @@ "ButtonParentalControl": "Kontrola rodzicielska", "ButtonPause": "Pauza", "ButtonPreviousTrack": "Poprzedni utwór", - "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Skrócona Instrukcja Obsługi", "ButtonRefreshGuideData": "Odśwież dane przewodnika", "ButtonRemove": "Usuń", "ButtonRename": "Zmień nazwę", "ButtonResetEasyPassword": "Wyczyść kod PIN", - "ButtonResetPassword": "Wyczyść hasło", - "ButtonRestart": "Uruchom ponownie", "ButtonResume": "Wznów", "ButtonRevoke": "Odwołaj", "ButtonScanAllLibraries": "Skanuj biblioteki", "ButtonSelectDirectory": "Wybierz folder", - "ButtonSelectServer": "Serwery", "ButtonSelectView": "Wybierz widok", "ButtonSend": "Wyślij", - "ButtonSettings": "Ustawienia", "ButtonShutdown": "Zamknij", "ButtonSignIn": "Zaloguj się", "ButtonSignOut": "Wyloguj", @@ -385,7 +379,6 @@ "HeaderSeriesOptions": "Opcje nagrywania serialu", "HeaderSeriesStatus": "Stan serialu", "HeaderServerSettings": "Ustawienia serwera", - "HeaderSettings": "Ustawienia", "HeaderSetupLibrary": "Skonfiguruj swoje biblioteki mediów", "HeaderSortBy": "Sortuj według", "HeaderSortOrder": "Porządek sortowania", @@ -880,7 +873,6 @@ "OnlyForcedSubtitlesHelp": "Tylko napisy oznaczone jako wymuszone będą wczytywane.", "OnlyImageFormats": "Tylko Formaty Graficzne (VOBSUB, PGS, SUB)", "OptionAdminUsers": "Administratorzy", - "OptionAlbumArtist": "Wykonawca albumu", "OptionAllUsers": "Wszyscy użytkownicy", "OptionAllowAudioPlaybackTranscoding": "Zezwalaj na odtwarzanie dźwięku, które wymaga transkodowania", "OptionAllowBrowsingLiveTv": "Udostępniaj telewizję", @@ -897,21 +889,14 @@ "OptionAllowUserToManageServer": "Zezwalaj temu użytkownikowi na zarządzanie serwerem", "OptionAllowVideoPlaybackRemuxing": "Zezwalaj na odtwarzanie video, które wymaga konwersji, bez ponownego kodowania", "OptionAllowVideoPlaybackTranscoding": "Zezwalaj na odtwarzanie wideo, które wymaga transkodowania", - "OptionArtist": "Wykonawca", - "OptionAscending": "Rosnąco", - "OptionAuto": "Automatycznie", "OptionAutomaticallyGroupSeries": "Scalaj seriale znajdujące się w wielu folderach", "OptionAutomaticallyGroupSeriesHelp": "Serie rozmieszczone w wielu folderach w tej bibliotece zostaną automatycznie połączone w jedną serię.", - "OptionBlockBooks": "Książki", "OptionBlockChannelContent": "Kanały internetowe", "OptionBlockLiveTvChannels": "Kanały telewizyjne", - "OptionBlockMovies": "Filmy", - "OptionBlockMusic": "Muzyka", "OptionBlockTrailers": "Zwiastuny", "OptionBlockTvShows": "Seriale", "OptionBluray": "Płyta Blu-ray", "OptionCommunityRating": "Ocena społeczności", - "OptionContinuing": "Kontynuuj", "OptionCriticRating": "Ocena krytyków", "OptionCustomUsers": "Własne", "OptionDaily": "Codziennie", @@ -919,17 +904,11 @@ "OptionDateAddedFileTime": "Używaj daty utworzenia pliku", "OptionDateAddedImportTime": "Używaj daty dodania do biblioteki", "OptionDatePlayed": "Data odtwarzania", - "OptionDescending": "Malejąco", "OptionDisableUser": "Deaktywuj tego użytkownika", "OptionDisableUserHelp": "Serwer nie zezwoli na żadne połączenia od tego użytkownika. Istniejące połączenia zostaną nagle przerwane.", "OptionDislikes": "Nie Lubie", "OptionDisplayFolderView": "Wyświetlaj widok folderów z listą foldery mediów", "OptionDisplayFolderViewHelp": "Wyświetl foldery obok innych bibliotek multimediów. Może to być przydatne, jeśli chcesz mieć prosty widok folderu.", - "OptionDownloadArtImage": "Przezrocze", - "OptionDownloadBackImage": "Wstecz", - "OptionDownloadBannerImage": "Baner", - "OptionDownloadBoxImage": "Pudełko", - "OptionDownloadDiscImage": "Dysk", "OptionDownloadImagesInAdvance": "Pobieraj obrazy z wyprzedzeniem", "OptionDownloadImagesInAdvanceHelp": "Domyślnie większość obrazów jest pobierana tylko na żądanie klienta. Włącz tę opcję, aby pobierać wszystkie obrazy z wyprzedzeniem podczas importowania nowych multimediów. Może to spowodować znacznie dłuższe skanowanie biblioteki.", "OptionDownloadPrimaryImage": "Podstawowy", @@ -944,22 +923,17 @@ "OptionEnableForAllTuners": "Aktywuj dla wszystkich tunerów", "OptionEnableM2tsMode": "Aktywuj tryb M2ts", "OptionEnableM2tsModeHelp": "Aktywuj tryb m2ts podczas kodowania do mpegts.", - "OptionEnded": "Zakończony", "OptionEquals": "Równy", "OptionEstimateContentLength": "Określa długość zawartości podczas transkodowania", "OptionEveryday": "Każdego dnia", "OptionExternallyDownloaded": "Pobieranie zewnętrzne", "OptionExtractChapterImage": "Wydobywaj obrazy rozdziałów", - "OptionFavorite": "Ulubione", "OptionHasSpecialFeatures": "Funkcje Specjalne", - "OptionHasSubtitles": "Napisy", "OptionHasThemeSong": "Piosenka Przewodnia", "OptionHasThemeVideo": "Wideo Przewodnie", - "OptionHasTrailer": "Zwiastun", "OptionHideUser": "Ukrywaj tego użytkownika na ekranie logowania", "OptionHideUserFromLoginHelp": "Przydatne dla prywatności lub ukrycia kont administratorów. Użytkownik będzie musiał wprowadzić nazwę użytkownika i hasło manualnie.", "OptionHlsSegmentedSubtitles": "Napisy dostosowane do HLS", - "OptionHomeVideos": "Zdjęcia", "OptionIgnoreTranscodeByteRangeRequests": "Ignoruj żądanie zakresu byte transkodowania", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Te żądania będą uznane ale będzie ignorowany nagłówek zakresu byte.", "OptionImdbRating": "Ocena IMDb", @@ -976,9 +950,7 @@ "OptionPlainVideoItems": "Wyświetlaj wszystkie wideo jako zwyczajne pozycje", "OptionPlainVideoItemsHelp": "Wszystkie wideo są reprezentowane w DIDL jako \"object.item.videoitem\" zamiast bardziej dokładnych typów takich jak \"object.item.videoitem.movie\".", "OptionPlayCount": "Liczba odtworzeń", - "OptionPlayed": "Obejrzany", "OptionPremiereDate": "Data premiery", - "OptionProfileAudio": "Dźwięk", "OptionProfilePhoto": "Fotografia", "OptionProfileVideo": "Wideo", "OptionProfileVideoAudio": "Wideo Audio", @@ -992,7 +964,6 @@ "OptionRequirePerfectSubtitleMatchHelp": "Wymaganie perfekcyjnego dopasowania ograniczy listę napisów tylko do tych, które zostały przetestowane i zweryfikowane jako dokładnie pasujące. Odznaczenie tej opcji zwiększy szansę pobrania napisów, ale zwiększy także szansę na pobranie napisów błędnych lub o błędnej sygnaturze czasowej.", "OptionResElement": "Element res", "OptionResumable": "Do wznowienia", - "OptionRuntime": "Długość filmu", "OptionSaveMetadataAsHidden": "Zapisuj metadane i obrazy jako pliki ukryte", "OptionSaveMetadataAsHiddenHelp": "Zmiana ta będzie miała zastosowanie do nowych metadanych zapisanych w przyszłości. Istniejące pliki metadanych zostaną zaktualizowane przy następnym zapisie przez serwer.", "OptionSpecialEpisode": "Specjalne", @@ -1000,7 +971,6 @@ "OptionTrackName": "Nazwa utworu", "OptionTvdbRating": "Ocena TVDB", "OptionUnairedEpisode": "Odcinki o planowanej emisji", - "OptionUnplayed": "Nieobejrzany", "OptionWakeFromSleep": "Wybudź z uspienia", "OptionWeekdays": "Dni Tygodnia", "OptionWeekends": "Weekendy", @@ -1155,12 +1125,10 @@ "TabOther": "Inne", "TabParentalControl": "Kontrola rodzicielska", "TabPlugins": "Wtyczki", - "TabProfile": "Profil", "TabProfiles": "Profile", "TabResponses": "Odpowiedzi", "TabScheduledTasks": "Harmonogram zadań", "TabServer": "Serwer", - "TabSettings": "Ustawienia", "TabStreaming": "Transmitowanie", "TabUpcoming": "Wkrótce", "Tags": "Znaczniki", @@ -1270,7 +1238,6 @@ "MusicArtist": "Artysta Muzyczny", "MusicVideo": "Teledysk", "Option3D": "3D", - "OptionAlbum": "Album", "OptionBanner": "Baner", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", "OptionDownloadLogoImage": "Logo", diff --git a/src/strings/pr.json b/src/strings/pr.json index 4c99a4556c..e5a0cfbbbb 100644 --- a/src/strings/pr.json +++ b/src/strings/pr.json @@ -8,7 +8,6 @@ "HeaderMusicQuality": "Sea Shanty Strength", "HeaderLatestMusic": "Latest Sea Shanties", "FolderTypeMusic": "Sea Shanties", - "OptionBlockBooks": "Tall Tales", "HeaderFavoriteBooks": "Fav'rit Tales", "HeaderAudioBooks": "Spoken Tales", "FolderTypeBooks": "Tall Tales", diff --git a/src/strings/pt-br.json b/src/strings/pt-br.json index 8019cf9eeb..fa0b290762 100644 --- a/src/strings/pt-br.json +++ b/src/strings/pt-br.json @@ -62,7 +62,6 @@ "ButtonForgotPassword": "Esqueci a Senha", "ButtonFullscreen": "Tela Cheia", "ButtonGotIt": "Feito", - "ButtonGuide": "Guia", "ButtonLibraryAccess": "Acesso à biblioteca", "ButtonManualLogin": "Login Manual", "ButtonMore": "Mais", @@ -73,22 +72,17 @@ "ButtonParentalControl": "Controle dos pais", "ButtonPause": "Pausar", "ButtonPreviousTrack": "Faixa anterior", - "ButtonProfile": "Perfil", "ButtonQuickStartGuide": "Guia Rápido", "ButtonRefreshGuideData": "Atualizar Dados do Guia", "ButtonRemove": "Remover", "ButtonRename": "Renomear", "ButtonResetEasyPassword": "Redefinir código pin fácil", - "ButtonResetPassword": "Redefinir Senha", - "ButtonRestart": "Reiniciar", "ButtonResume": "Retomar", "ButtonRevoke": "Revogar", "ButtonScanAllLibraries": "Rastrear Todas as Bibliotecas", "ButtonSelectDirectory": "Selecionar Diretório", - "ButtonSelectServer": "Selecionar Servidor", "ButtonSelectView": "Selecionar visualização", "ButtonSend": "Enviar", - "ButtonSettings": "Configurações", "ButtonShutdown": "Desligar", "ButtonSignIn": "Entrar", "ButtonSignOut": "Sair", @@ -373,7 +367,6 @@ "HeaderSeriesOptions": "Opções da Série", "HeaderSeriesStatus": "Status da Série", "HeaderServerSettings": "Configurações de Servidor", - "HeaderSettings": "Configurações", "HeaderSetupLibrary": "Configurar suas bibliotecas de mídias", "HeaderSortBy": "Ordenar Por", "HeaderSortOrder": "Ordem", @@ -857,8 +850,6 @@ "OnlyForcedSubtitlesHelp": "Apenas legendas marcadas como forçadas serão carregadas.", "OnlyImageFormats": "Apenas formatos de imagens (VOBSUB, PGS, SUB, etc.)", "OptionAdminUsers": "Administradores", - "OptionAlbum": "Álbum", - "OptionAlbumArtist": "Artista do Álbum", "OptionAllUsers": "Todos os usuários", "OptionAllowAudioPlaybackTranscoding": "Permitir reprodução de áudio que necessite de transcodificação", "OptionAllowBrowsingLiveTv": "Permitir acesso à TV ao Vivo", @@ -875,18 +866,12 @@ "OptionAllowUserToManageServer": "Permitir este usuário administrar o servidor", "OptionAllowVideoPlaybackRemuxing": "Permitir reprodução de vídeos que requerem conversão sem recodificar", "OptionAllowVideoPlaybackTranscoding": "Permitir reprodução de vídeo que necessite de transcodificação", - "OptionArtist": "Artista", - "OptionAscending": "Crescente", "OptionAutomaticallyGroupSeries": "Mesclar automaticamente séries que estão em várias pastas", "OptionAutomaticallyGroupSeriesHelp": "Se ativado, séries que estiverem em várias pastas dentro desta biblioteca serão automaticamente mescladas em uma única série.", - "OptionBlockBooks": "Livros", "OptionBlockChannelContent": "Conteúdo do Canal de Internet", "OptionBlockLiveTvChannels": "Canais de TV ao Vivo", - "OptionBlockMovies": "Filmes", - "OptionBlockMusic": "Música", "OptionBlockTvShows": "Séries", "OptionCommunityRating": "Avaliação da Comunidade", - "OptionContinuing": "Continuando", "OptionCriticRating": "Avaliação da Crítica", "OptionCustomUsers": "Personalizado", "OptionDaily": "Diário", @@ -894,16 +879,11 @@ "OptionDateAddedFileTime": "Usar a data de criação do arquivo", "OptionDateAddedImportTime": "Usar a data obtida na biblioteca", "OptionDatePlayed": "Data de Reprodução", - "OptionDescending": "Decrescente", "OptionDisableUser": "Desativar este usuário", "OptionDisableUserHelp": "Se desativado, o servidor não permitirá nenhuma conexão deste usuário. Conexões existentes serão encerradas imediatamente.", "OptionDislikes": "Não gostei", "OptionDisplayFolderView": "Exibe visualização em pastas para exibir pastas de mídias", "OptionDisplayFolderViewHelp": "Exibição em pastas ao lado das biblioteca de mídia. Isto pode ser útil para visualizar por pastas.", - "OptionDownloadArtImage": "Arte", - "OptionDownloadBackImage": "Traseira", - "OptionDownloadBoxImage": "Caixa", - "OptionDownloadDiscImage": "Disco", "OptionDownloadImagesInAdvance": "Fazer download de imagens antecipadamente", "OptionDownloadImagesInAdvanceHelp": "Por padrão, a maioria das imagens são baixadas somente quando um app Jellyfin solicita. Ativar esta opção, baixará todas as imagens antecipadamente, ao importar novas mídias. Isto pode ocasionar um tempo maior para escanear a biblioteca.", "OptionDownloadPrimaryImage": "Principal", @@ -918,21 +898,17 @@ "OptionEnableForAllTuners": "Ativar para todos os sintonizadores", "OptionEnableM2tsMode": "Ativar modo M2ts", "OptionEnableM2tsModeHelp": "Ative o modo m2ts quando codificar para mpegts.", - "OptionEnded": "Finalizada", "OptionEquals": "Igual", "OptionEstimateContentLength": "Estimar o tamanho do conteúdo quando transcodificar", "OptionEveryday": "Todos os dias", "OptionExternallyDownloaded": "Download externo", "OptionExtractChapterImage": "Ativar extração de imagens de capítulos", - "OptionFavorite": "Favoritos", "OptionHasSpecialFeatures": "Recursos Especiais", - "OptionHasSubtitles": "Legendas", "OptionHasThemeSong": "Música-Tema", "OptionHasThemeVideo": "Vídeo-Tema", "OptionHideUser": "Ocultar este usuário das telas de login", "OptionHideUserFromLoginHelp": "Útil para contas de administrador privadas ou ocultas. O usuário necessitará entrar manualmente, digitando seu usuário e senha.", "OptionHlsSegmentedSubtitles": "Legendas segmentadas HLS", - "OptionHomeVideos": "Fotos", "OptionIgnoreTranscodeByteRangeRequests": "Ignorar requisições de extensão do byte de transcodificação", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Se ativado, estas requisições serão honradas mas irão ignorar o cabeçalho da extensão do byte.", "OptionImdbRating": "Avaliação IMDb", @@ -949,9 +925,7 @@ "OptionPlainVideoItems": "Exibir todos os vídeos como itens de vídeo", "OptionPlainVideoItemsHelp": "Se ativado, todos os vídeos são representados no DIDL como \"object.item.videoItem\" ao invés de um tipo mais específico como, por exemplo, \"object.item.videoItem.movie\".", "OptionPlayCount": "Contagem de Reproduções", - "OptionPlayed": "Reproduzido", "OptionPremiereDate": "Data da Estréia", - "OptionProfileAudio": "Áudio", "OptionProfilePhoto": "Foto", "OptionProfileVideo": "Vídeo", "OptionProfileVideoAudio": "Áudio do Vídeo", @@ -962,14 +936,12 @@ "OptionRequirePerfectSubtitleMatchHelp": "Ao solicitar uma combinação perfeita, filtrará as legendas para incluir somente aquelas que foram testadas e verificadas com o arquivo de vídeo. Ao desmarcar isto, aumentará a quantidade de legendas baixadas, mas aumentará as chances de ter legendas que não estejam sincronizadas.", "OptionResElement": "elemento res", "OptionResumable": "Retomável", - "OptionRuntime": "Duração", "OptionSaveMetadataAsHidden": "Salvar metadados e imagens como arquivos ocultos", "OptionSaveMetadataAsHiddenHelp": "Isto será aplicado sobre novos metadados salvos. Os arquivos de metadados existentes serão atualizados na próxima vez que forem salvos no Servidor Jellyfin.", "OptionSpecialEpisode": "Especiais", "OptionTrackName": "Nome da Faixa", "OptionTvdbRating": "Avaliação TVDB", "OptionUnairedEpisode": "Episódios a Estrear", - "OptionUnplayed": "Não reproduzido", "OptionWakeFromSleep": "Despertar da hibernação", "OptionWeekdays": "Dias da semana", "OptionWeekends": "Fins de semana", @@ -1116,12 +1088,10 @@ "TabNotifications": "Notificações", "TabOther": "Outros", "TabParentalControl": "Controle dos Pais", - "TabProfile": "Perfil", "TabProfiles": "Perfis", "TabResponses": "Respostas", "TabScheduledTasks": "Tarefas Agendadas", "TabServer": "Servidor", - "TabSettings": "Configurações", "TabUpcoming": "A Seguir", "TellUsAboutYourself": "Conte-nos sobre você", "ThemeSongs": "Músicas-tema", @@ -1215,7 +1185,6 @@ "MessageImageTypeNotSelected": "Por favor, selecione um tipo de imagem do menu.", "Normal": "Normal", "Option3D": "3D", - "OptionAuto": "Automático", "AuthProviderHelp": "Selecione um provedor de autenticação que será usado para autenticar a senha do usuário.", "HeaderFavoriteMovies": "Filmes Favoritos", "HeaderFavoriteShows": "Séries favoritas", @@ -1252,10 +1221,8 @@ "OptionBanner": "Banner", "OptionBlockTrailers": "Trailers", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", - "OptionDownloadBannerImage": "Banner", "OptionDownloadLogoImage": "Logo", "OptionDownloadMenuImage": "Menu", - "OptionHasTrailer": "Trailer", "OptionIsHD": "HD", "OptionIsSD": "SD", "OptionList": "Lista", diff --git a/src/strings/pt-pt.json b/src/strings/pt-pt.json index d421efa30d..b86359921b 100644 --- a/src/strings/pt-pt.json +++ b/src/strings/pt-pt.json @@ -27,20 +27,16 @@ "ButtonOpen": "Abrir", "ButtonPause": "Pausar", "ButtonPreviousTrack": "Faixa anterior", - "ButtonProfile": "Perfil", "ButtonQuickStartGuide": "Guia de Início Rápido", "ButtonRefreshGuideData": "Atualizar Programação de TV", "ButtonRemove": "Remover", "ButtonResetEasyPassword": "Redefinir código PIN", - "ButtonResetPassword": "Redefinir palavra-passe", - "ButtonRestart": "Reiniciar", "ButtonResume": "Retomar", "ButtonRevoke": "Revogar", "ButtonScanAllLibraries": "Analisar todas as Bibliotecas", "ButtonSelectDirectory": "Selecione a Pasta", "ButtonSelectView": "Selecionar visualização", "ButtonSend": "Enviar", - "ButtonSettings": "Configurações", "ButtonShutdown": "Encerrar", "ButtonSignIn": "Iniciar Sessão", "ButtonSignOut": "Sair", @@ -186,7 +182,6 @@ "HeaderSelectTranscodingPathHelp": "Procure ou introduza a localização da pasta para guardar os ficheiros temporários de transcodificação. O Servidor Jellyfin deve ter acesso de escrita a essa pasta.", "HeaderSendMessage": "Enviar mensagem", "HeaderServerSettings": "Configurações do Servidor", - "HeaderSettings": "Configurações", "HeaderSetupLibrary": "Configurar Bibliotecas Multimédia", "HeaderSpecialEpisodeInfo": "Informação do Episódio Especial", "HeaderSpecialFeatures": "Extras", @@ -475,8 +470,6 @@ "NewCollectionNameExample": "Exemplo: Coleção Guerra das Estrelas", "MessageNoNextUpItems": "Nenhum encontrado. Comece a ver os seus programas!", "OptionAdminUsers": "Administradores", - "OptionAlbum": "Álbum", - "OptionAlbumArtist": "Artista do Álbum", "OptionAllUsers": "Todos os utilizadores", "OptionAllowAudioPlaybackTranscoding": "Permitir reprodução de áudio que necessite de transcodificação", "OptionAllowBrowsingLiveTv": "Permitir acesso a TV em Direto", @@ -490,16 +483,10 @@ "OptionAllowRemoteSharedDevicesHelp": "Dispositivos DLNA são considerados como partilhados até que um utilizador comece a controlá-lo.", "OptionAllowUserToManageServer": "Permitir a este utilizador gerir o servidor", "OptionAllowVideoPlaybackTranscoding": "Permitir reprodução de vídeo que necessite de transcodificação", - "OptionArtist": "Artista", - "OptionAscending": "Ascendente", - "OptionBlockBooks": "Livros", "OptionBlockChannelContent": "Conteúdo do Canal de Internet", "OptionBlockLiveTvChannels": "Canais de TV em Direto", - "OptionBlockMovies": "Filmes", - "OptionBlockMusic": "Música", "OptionBlockTvShows": "Programas de TV", "OptionCommunityRating": "Classificação da Comunidade", - "OptionContinuing": "A Continuar", "OptionCriticRating": "Classificação dos críticos", "OptionCustomUsers": "Personalizado", "OptionDaily": "Diariamente", @@ -507,14 +494,9 @@ "OptionDateAddedFileTime": "Usar a data de criação do ficheiro", "OptionDateAddedImportTime": "Usar a data de importação para a biblioteca", "OptionDatePlayed": "Data de reprodução", - "OptionDescending": "Descendente", "OptionDisableUser": "Desativar este utilizador", "OptionDisableUserHelp": "Se desativado, o servidor não permite nenhuma ligação com este nome de utilizador. Ligações existentes serão terminadas.", "OptionDislikes": "Não gostos", - "OptionDownloadArtImage": "Arte", - "OptionDownloadBackImage": "Traseira", - "OptionDownloadBoxImage": "Caixa", - "OptionDownloadDiscImage": "Disco", "OptionDownloadImagesInAdvanceHelp": "Por defeito, a maioria das imagens são transferidas só quando uma aplicação do Jellyfin as solicita. Ative esta opção para descarregar todas as imagens antencipadamente, assim que os novos ficheiros multimédia são importados. Isto pode aumentar significativamente a duração da análise da biblioteca.", "OptionDownloadPrimaryImage": "Principal", "OptionDownloadThumbImage": "Miniatura", @@ -525,14 +507,11 @@ "OptionEnableAccessToAllLibraries": "Permitir acesso a todas as bibliotecas", "OptionEnableM2tsMode": "Ativar modo M2ts", "OptionEnableM2tsModeHelp": "Ativar o modo m2ts durante a transcodificação para mpegts.", - "OptionEnded": "Terminado", "OptionEquals": "Iguais", "OptionEstimateContentLength": "Estimar o tamanho do conteúdo ao transcodificar", "OptionEveryday": "Todos os dias", "OptionExternallyDownloaded": "Download Externo", - "OptionFavorite": "Favoritos", "OptionHasSpecialFeatures": "Extras", - "OptionHasSubtitles": "Legendas", "OptionHasThemeSong": "Música de Tema", "OptionHasThemeVideo": "Vídeo de Tema", "OptionHideUser": "Ocultar este utilizador nos formulários de início de sessão", @@ -554,9 +533,7 @@ "OptionPlainVideoItems": "Mostrar todos os vídeos como itens de vídeo simples", "OptionPlainVideoItemsHelp": "Se ativado, todos os vídeos são representados no DIDL como \"object.item.videoItem\" ao invés de um tipo mais específico como, por exemplo, \"object.item.videoItem.movie\".", "OptionPlayCount": "N.º de Visualizações", - "OptionPlayed": "Reproduzido", "OptionPremiereDate": "Data de Estreia", - "OptionProfileAudio": "Áudio", "OptionProfilePhoto": "Fotografia", "OptionProfileVideo": "Vídeo", "OptionProfileVideoAudio": "Áudio do Vídeo", @@ -565,13 +542,11 @@ "OptionReportByteRangeSeekingWhenTranscodingHelp": "Isto é necessário para alguns dispositivos que não procuram o tempo muito bem.", "OptionResElement": "elemento res", "OptionResumable": "Retomável", - "OptionRuntime": "Duração", "OptionSaveMetadataAsHidden": "Guardar metadados e imagens como ficheiros ocultos", "OptionSpecialEpisode": "Especiais", "OptionTrackName": "Nome da pista", "OptionTvdbRating": "Classificação no TVDB", "OptionUnairedEpisode": "Episódios por Estrear", - "OptionUnplayed": "Por reproduzir", "OptionWakeFromSleep": "Retomar da suspensão", "OptionWeekdays": "Dias da semana", "OptionWeekends": "Fins-de-semana", @@ -631,12 +606,10 @@ "TabOther": "Outro", "TabParentalControl": "Controlo Parental", "TabPlugins": "Extensões", - "TabProfile": "Perfil", "TabProfiles": "Perfis", "TabResponses": "Respostas", "TabScheduledTasks": "Tarefas Agendadas", "TabServer": "Servidor", - "TabSettings": "Configurações", "TabUpcoming": "Próximos", "TellUsAboutYourself": "Fale-nos sobre si", "ThisWizardWillGuideYou": "Este assistente irá ajudá-lo durante o processo de configuração. Para começar, selecione o idioma.", @@ -724,12 +697,10 @@ "CancelRecording": "Cancelar gravação", "ButtonWebsite": "Website", "ButtonTrailer": "Trailer", - "ButtonSelectServer": "Selecionar servidor", "ButtonRename": "Alterar o nome", "ButtonParentalControl": "Controlo parental", "ButtonOk": "OK", "ButtonLibraryAccess": "Acesso à biblioteca", - "ButtonGuide": "Programação", "ButtonGotIt": "Entendido", "ButtonAudioTracks": "Faixas de Áudio", "Browse": "Procurar", @@ -1100,8 +1071,6 @@ "OptionList": "Lista", "OptionIsSD": "SD", "OptionIsHD": "HD", - "OptionHomeVideos": "Fotografias", - "OptionHasTrailer": "Trailer", "OptionExtractChapterImage": "Ativar extração de imagens do capítulo", "OptionEnableForAllTuners": "Ativar para todos os sintonizadores", "OptionEnableExternalContentInSuggestions": "Ativar conteúdo externo nas sugestões", @@ -1111,7 +1080,6 @@ "OptionBlockTrailers": "Trailers", "OptionAutomaticallyGroupSeriesHelp": "Se ativado, sérias que estejam espalhadas por várias pastas nesta biblioteca, serão automaticamente combinadas numa única série.", "OptionAutomaticallyGroupSeries": "Combinar automaticamente séries que estejam espalhadas por várias pastas", - "OptionAuto": "Auto", "OptionAllowVideoPlaybackRemuxing": "Permitir a reprodução de vídeo que requeira conversão sem transcodificação", "OptionAllowSyncTranscoding": "Permitir a transferência e sincronização de conteúdos que requeiram transcodificação", "OptionAllowLinkSharingHelp": "Apenas serão partilhadas páginas que contenham informação sobre os conteúdos. Os conteúdos nunca serão partilhados. As partilhas são limitadas no tempo e expiram após {0} dias.", @@ -1278,7 +1246,6 @@ "OptionThumb": "Miniatura", "OptionPosterCard": "Poster cartão", "OptionPoster": "Poster", - "OptionDownloadBannerImage": "Cartaz", "OptionDisplayFolderView": "Mostre em vista de pasta para ver pastas de mídia", "OptionBanner": "Cartaz", "NewCollectionHelp": "Coleções permitem criar grupos personalizados de filmes e outros tipos de conteúdo.", diff --git a/src/strings/pt.json b/src/strings/pt.json index 733044c2bf..750dd61c70 100644 --- a/src/strings/pt.json +++ b/src/strings/pt.json @@ -35,12 +35,10 @@ "TellUsAboutYourself": "Fale-nos sobre si", "TabUpcoming": "Próximos", "TabStreaming": "Transmissão", - "TabSettings": "Configurações", "TabServer": "Servidor", "TabScheduledTasks": "Tarefas Agendadas", "TabResponses": "Respostas", "TabProfiles": "Perfis", - "TabProfile": "Perfil", "TabPlugins": "Extensões", "TabParentalControl": "Controlo Parental", "TabOther": "Outro", @@ -148,14 +146,12 @@ "OptionWeekends": "Fins-de-semana", "OptionWeekdays": "Dias da semana", "OptionWakeFromSleep": "Retomar da suspensão", - "OptionUnplayed": "Por reproduzir", "OptionUnairedEpisode": "Episódios por Estrear", "OptionTvdbRating": "Classificação no TVDB", "OptionTrackName": "Nome da pista", "OptionSubstring": "Subcadeia", "OptionSpecialEpisode": "Especiais", "OptionSaveMetadataAsHidden": "Guardar metadados e imagens como ficheiros ocultos", - "OptionRuntime": "Duração", "OptionResumable": "Retomável", "OptionResElement": "elemento res", "OptionReportByteRangeSeekingWhenTranscodingHelp": "Isto é necessário para alguns dispositivos que não pesquisam o tempo muito bem.", @@ -166,9 +162,7 @@ "OptionProfileVideoAudio": "Áudio do Vídeo", "OptionProfileVideo": "Vídeo", "OptionProfilePhoto": "Fotografia", - "OptionProfileAudio": "Áudio", "OptionPremiereDate": "Data de Estreia", - "OptionPlayed": "Reproduzido", "OptionPlayCount": "N.º de Visualizações", "OptionPlainVideoItemsHelp": "Quando activado, todos os vídeos são representados no DIDL como \"object.item.videoItem\" ao invés de um tipo mais específico como, por exemplo, \"object.item.videoItem.movie\".", "OptionPlainVideoItems": "Mostrar todos os vídeos como itens de vídeo simples", @@ -478,7 +472,6 @@ "HeaderSortOrder": "Direcção de Ordenação", "HeaderSortBy": "Ordenar Por", "HeaderSetupLibrary": "Configurar Bibliotecas Multimédia", - "HeaderSettings": "Configurações", "HeaderServerSettings": "Configurações do Servidor", "HeaderSeriesStatus": "Estado da Série", "HeaderSeriesOptions": "Opções da Série", @@ -569,13 +562,9 @@ "OptionDownloadPrimaryImage": "Principal", "OptionDownloadImagesInAdvanceHelp": "Por omissão, a maioria das imagens são transferidas apenas quando uma aplicação do Jellyfin as solicita. Active esta opção para descarregar todas as imagens antecipadamente, assim que novos ficheiros multimédia sejam importados. Isto pode aumentar significativamente a duração da análise da biblioteca.", "OptionDownloadImagesInAdvance": "Transferir imagens antecipadamente", - "OptionDownloadBoxImage": "Caixa", - "OptionDownloadBackImage": "Traseira", - "OptionDownloadArtImage": "Arte", "OptionDislikes": "Não gostos", "OptionDisableUserHelp": "Se desactivado, o servidor não permite nenhuma ligação a este utilizador. Ligações existentes serão imediatamente terminadas.", "OptionDisableUser": "Desactivar este utilizador", - "OptionDescending": "Descendente", "OptionDatePlayed": "Data de reprodução", "OptionDateAddedImportTime": "Usar a data de importação para a biblioteca", "OptionDateAddedFileTime": "Usar a data de criação do ficheiro", @@ -583,16 +572,10 @@ "OptionDaily": "Diariamente", "OptionCustomUsers": "Personalizado", "OptionCriticRating": "Classificação dos críticos", - "OptionContinuing": "A Continuar", "OptionCommunityRating": "Classificação da Comunidade", "OptionBlockTvShows": "Programas de TV", - "OptionBlockMusic": "Música", - "OptionBlockMovies": "Filmes", "OptionBlockLiveTvChannels": "Canais de TV em Directo", "OptionBlockChannelContent": "Conteúdo do Canal de Internet", - "OptionBlockBooks": "Livros", - "OptionAscending": "Ascendente", - "OptionArtist": "Artista", "OptionAllowVideoPlaybackTranscoding": "Permitir reprodução de vídeo que necessite de transcodificação", "OptionAllowUserToManageServer": "Permitir a este utilizador gerir o servidor", "OptionAllowRemoteSharedDevicesHelp": "Dispositivos DLNA são considerados partilhados até que um utilizador comece a controlá-lo.", @@ -613,8 +596,6 @@ "OptionAllowBrowsingLiveTv": "Permitir acesso a TV em Directo", "OptionAllowAudioPlaybackTranscoding": "Permitir reprodução de áudio que necessite transcodificação", "OptionAllUsers": "Todos os utilizadores", - "OptionAlbumArtist": "Artista do Álbum", - "OptionAlbum": "Álbum", "OptionAdminUsers": "Administradores", "OneChannel": "Um canal", "MessageNoPluginConfiguration": "Esta extensão não é configurável.", @@ -890,21 +871,16 @@ "ButtonSignIn": "Iniciar Sessão", "ButtonShutdown": "Encerrar", "ButtonSend": "Enviar", - "ButtonSettings": "Configurações", "ButtonSelectView": "Seleccionar visualização", - "ButtonSelectServer": "Seleccionar servidor", "ButtonSelectDirectory": "Seleccione a Pasta", "ButtonScanAllLibraries": "Analisar todas as Bibliotecas", "ButtonRevoke": "Revogar", "ButtonResume": "Retomar", - "ButtonRestart": "Reiniciar", - "ButtonResetPassword": "Redefinir palavra-passe", "ButtonResetEasyPassword": "Redefinir código PIN", "ButtonRename": "Alterar o nome", "ButtonRemove": "Remover", "ButtonRefreshGuideData": "Actualizar Programação de TV", "ButtonQuickStartGuide": "Guia de Início Rápido", - "ButtonProfile": "Perfil", "ButtonPreviousTrack": "Faixa anterior", "ButtonPause": "Pausar", "ButtonParentalControl": "Controlo parental", @@ -923,7 +899,6 @@ "AlwaysPlaySubtitles": "Mostrar sempre legendas", "AllowMediaConversionHelp": "Permitir ou negar acesso à funcionalidade de conversão multimédia.", "AllowMediaConversion": "Permitir conversão multimédia", - "ButtonGuide": "Programação", "ButtonGotIt": "Entendido", "ButtonChangeServer": "Alterar Servidor", "ButtonCancel": "Cancelar", @@ -938,14 +913,11 @@ "OptionHideUser": "Ocultar este utilizador nos formulários de início de sessão", "OptionHasThemeVideo": "Vídeo de Tema", "OptionHasThemeSong": "Música de Tema", - "OptionHasSubtitles": "Legendas", "OptionHasSpecialFeatures": "Extras", - "OptionFavorite": "Favoritos", "OptionExternallyDownloaded": "Download Externo", "OptionEveryday": "Todos os dias", "OptionEstimateContentLength": "Estimar o tamanho do conteúdo ao transcodificar", "OptionEquals": "Igual a", - "OptionEnded": "Terminado", "OptionEnableM2tsModeHelp": "Activar o modo m2ts ao codificar para mpegts.", "OptionEnableM2tsMode": "Activar modo M2ts", "OptionEnableExternalContentInSuggestionsHelp": "Permitir que trailers da Internet e programas de TV em Directo sejam incluídos no conteúdo sugerido.", @@ -1085,7 +1057,6 @@ "FolderTypeMovies": "Filmes", "OptionIgnoreTranscodeByteRangeRequests": "Ignorar requisições de extensão do byte de transcodificação", "OptionEnableAccessToAllChannels": "Permitir acesso a todos os canais", - "OptionDownloadDiscImage": "Disco", "FetchingData": "Buscando Dados Adicionais", "EnableStreamLooping": "Habilitar loop do streaming", "Down": "Baixar", @@ -1214,17 +1185,13 @@ "OptionList": "Listar", "OptionIsSD": "Definição padrão", "OptionIsHD": "Alta definição", - "OptionHomeVideos": "Fotos", - "OptionHasTrailer": "Trailer", "OptionEnableExternalContentInSuggestions": "Habilitar sugestão de conteúdo externo", "OptionDownloadMenuImage": "Menu", "OptionDownloadLogoImage": "Logotipo", - "OptionDownloadBannerImage": "Encarte", "OptionDisplayFolderViewHelp": "Exiba pastas ao lado de outras bibliotecas de mídia. Isso pode ser útil se você quiser ter uma visualização simples de pastas.", "OptionDisplayFolderView": "Exibir uma exibição de pasta para mostrar pastas de mídia simples", "OptionBluray": "Bluray", "OptionBanner": "Poster", - "OptionAuto": "Automático", "OptionAllowVideoPlaybackRemuxing": "Permitir execução de vídeo que requer conversão sem recodificar", "OptionAllowLinkSharingHelp": "Somente páginas da web que contêm informações sobre mídia são compartilhadas. Os arquivos de mídia nunca são compartilhados publicamente. O tempo de compartilhamento é limitado e expira após {0} dias.", "Option3D": "3D", diff --git a/src/strings/ro.json b/src/strings/ro.json index 962862324d..8bd26fb4dd 100644 --- a/src/strings/ro.json +++ b/src/strings/ro.json @@ -7,7 +7,6 @@ "ButtonQuickStartGuide": "Ghid rapid de Start", "ButtonRefreshGuideData": "Reîmprospătează Ghidul", "ButtonRemove": "Elimină", - "ButtonResetPassword": "Resetează parola", "ButtonSelectDirectory": "Selectați Director", "ButtonSignIn": "Autentificare", "ButtonSignOut": "Delogare", @@ -103,21 +102,14 @@ "OptionAllowRemoteSharedDevices": "Permite controlul la distanță a dispozitivelor partajate", "OptionAllowRemoteSharedDevicesHelp": "Dispozitivele DLNA sunt considerate partajate până ce un utilizator începe să le controleze.", "OptionAllowUserToManageServer": "Permite acestui utilizator să administreze serverul", - "OptionAscending": "Ascendent", "OptionCommunityRating": "Rating Comunitate", - "OptionContinuing": "Continuă", "OptionCriticRating": "Rating Critic", "OptionDaily": "Zilnic", "OptionDateAdded": "Dată Adăugare", "OptionDatePlayed": "Dată Rulare", - "OptionDescending": "Descrescător", "OptionDisableUser": "Dezactivați acest utilizator", "OptionDisableUserHelp": "Serverul nu va permite nici o conexiune de la acest utilizator. Conexiunile existente vor fi terminate brusc.", "OptionDislikes": "Dislike-uri", - "OptionDownloadArtImage": "Fundal", - "OptionDownloadBackImage": "Înapoi", - "OptionDownloadBannerImage": "Baner", - "OptionDownloadBoxImage": "Casetă", "OptionDownloadMenuImage": "Meniu", "OptionDownloadPrimaryImage": "Primar", "OptionDownloadThumbImage": "Miniatură", @@ -125,10 +117,7 @@ "OptionEnableAccessFromAllDevices": "Activează accesul de la toate dispozitivele", "OptionEnableAccessToAllChannels": "Activează accesul la toate canalele", "OptionEnableAccessToAllLibraries": "Activează accesul la toate bibliotecile", - "OptionEnded": "Anulat", - "OptionFavorite": "Favorite", "OptionHasSpecialFeatures": "Caracteristici Speciale", - "OptionHasSubtitles": "Subtitrări", "OptionHasThemeSong": "Audio de Fundal", "OptionHasThemeVideo": "Video de Fundal", "OptionHideUser": "Ascunde acest utilizator din pagina de autentificare", @@ -138,13 +127,10 @@ "OptionNameSort": "Nume", "OptionParentalRating": "Limită de vârstă", "OptionPlayCount": "Contorizare rulări", - "OptionPlayed": "Rulat", "OptionPremiereDate": "Data Premierei", "OptionReleaseDate": "Dată Lansare", "OptionResumable": "Poate fi continuat", - "OptionRuntime": "Timp Rulare", "OptionTrackName": "Nume melodie", - "OptionUnplayed": "Nerulat", "ParentalRating": "Parental Rating", "Saturday": "Sâmbătă", "Save": "Salveaza", @@ -158,9 +144,7 @@ "TabNetworks": "Rețele TV", "TabNotifications": "Notificări", "TabOther": "Altele", - "TabProfile": "Profil", "TabProfiles": "Profile", - "TabSettings": "Setări", "TabUpcoming": "Urmează să apară", "TellUsAboutYourself": "Spune-ne despre tine", "ThisWizardWillGuideYou": "Acest asistent vă va ghida prin procesul de configurare. Pentru a începe, vă rugăm să selectați limba preferată.", @@ -235,7 +219,6 @@ "BurnSubtitlesHelp": "Determină dacă serverul ar trebui să includă subtitrări când face transcodarea video. Evitând acest lucru va îmbunătăți performanța serverului. Selectează Auto pentru includerea formaturilor bazate pe imagini (VOBSUB, PGS, SUB, IDX, ...) și anumitor subtitrări ASS sau SSA.", "ButtonPreviousTrack": "Calea anterioară", "ButtonRevoke": "Revocă", - "ButtonSettings": "Setări", "ChangingMetadataImageSettingsNewContent": "Modificări ale metadatelor sau ale setărilor de descărcare a operelor de artă se va aplica doar conținutului nou adăugat în librăriile tale. Pentru a aplica modificările titlurilor deja existente va trebui reîmprospătată manual metadata lor.", "CinemaModeConfigurationHelp": "Mod cinema aduce experiența cinematografică în sufrageria dumneavoastră prin abilitatea de a rula trailere sau introuri personalizate înaintea titlului principal.", "ConfigureDateAdded": "Configurează cum este determinată data adaugării în tabloul de bord din setările librariei", @@ -263,7 +246,6 @@ "ButtonForgotPassword": "Parolă uitată", "ButtonFullscreen": "Umple ecranul", "ButtonGotIt": "Am înțeles", - "ButtonGuide": "Ghid", "ButtonInfo": "Info", "ButtonLibraryAccess": "Acces Librarie", "ButtonMore": "Mai mult", @@ -273,7 +255,6 @@ "ButtonOpen": "Deschide", "ButtonParentalControl": "Control parental", "ButtonPause": "Pauză", - "ButtonProfile": "Profil", "ConfirmEndPlayerSession": "Dorești să oprești serverul Jellyfin pe {0}?", "Connect": "Conectare", "ContinueWatching": "Continuă vizionarea", @@ -284,10 +265,8 @@ "DeleteImageConfirmation": "Sigur doriți să ștergeți această imagine?", "ButtonRename": "Redenumește", "ButtonResetEasyPassword": "Resetează codul Easy PIN", - "ButtonRestart": "Redemarează", "ButtonResume": "Continuă", "ButtonScanAllLibraries": "Scanează Toate Librariile", - "ButtonSelectServer": "Selectați Server", "ButtonSelectView": "Selectați perspectivă", "ButtonSend": "Trimite", "ButtonShutdown": "Oprește", @@ -539,7 +518,6 @@ "HeaderSeriesOptions": "Opțiuni Seriale", "HeaderSeriesStatus": "Starea Serialelor", "HeaderServerSettings": "Setările Serverului", - "HeaderSettings": "Setări", "HeaderSortBy": "Sortează după", "HeaderSortOrder": "Ordinea de sortare", "LabelTranscodingThreadCount": "Numărul de threaduri ale transcodării:", @@ -872,16 +850,11 @@ "OptionBluray": "BluRay", "OptionBlockTvShows": "Seriale TV", "OptionBlockTrailers": "Trailere", - "OptionBlockMusic": "Muzică", - "OptionBlockMovies": "Filme", "OptionBlockLiveTvChannels": "Canale Live TV", "OptionBlockChannelContent": "Conținut canal Internet", - "OptionBlockBooks": "Cărți", "OptionBanner": "Steag", "OptionAutomaticallyGroupSeriesHelp": "Seriile distribuite pe mai multe foldere din această bibliotecă vor fi comasate automat într-o singură serie.", "OptionAutomaticallyGroupSeries": "Fuzionează automat seriile care sunt răspândite pe mai multe foldere", - "OptionAuto": "Auto", - "OptionArtist": "Artist", "OptionAllowVideoPlaybackTranscoding": "Permiteți redarea video care necesită transcodare", "OptionAllowVideoPlaybackRemuxing": "Permiteți redarea video care necesită conversie fără re-codificare", "OptionAllowSyncTranscoding": "Permiteți descărcarea și sincronizarea media care necesită transcodare", @@ -889,8 +862,6 @@ "OptionAllowContentDownloading": "Permiteți descărcarea și sincronizarea media", "OptionAllowAudioPlaybackTranscoding": "Permiteți redarea audio care necesită transcodare", "OptionAllUsers": "Toți utilizatorii", - "OptionAlbumArtist": "Artistul albumului", - "OptionAlbum": "Album", "OptionAdminUsers": "Administratorii", "Option3D": "3D", "OnlyImageFormats": "Numai formate de imagine (VOBSUB, PGS, SUB)", @@ -1203,7 +1174,6 @@ "OptionProfileVideoAudio": "Audioul videoclipului", "OptionProfileVideo": "Video", "OptionProfilePhoto": "Fotografie", - "OptionProfileAudio": "Audio", "OptionPosterCard": "Carte de afiș", "OptionPoster": "Afiș", "OptionPlainVideoItemsHelp": "Toate videoclipurile sunt reprezentate în DIDL ca „object.item.videoItem” în loc de un tip mai specific, cum ar fi „object.item.videoItem.movie”.", @@ -1222,9 +1192,7 @@ "OptionIsHD": "HD", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Aceste solicitări vor fi respectate, dar vor ignora antetul intervalului de octeți.", "OptionIgnoreTranscodeByteRangeRequests": "Ignorați solicitările pentru transcodarea intervalului de octeți", - "OptionHomeVideos": "Fotografii", "OptionHlsSegmentedSubtitles": "Subtitrare segmentată HLS", - "OptionHasTrailer": "Trailer", "OptionExtractChapterImage": "Activați extragerea imaginii pentru capitole", "OptionExternallyDownloaded": "Descărcare externă", "OptionEveryday": "Zilnic", @@ -1239,7 +1207,6 @@ "OptionDownloadLogoImage": "Siglă", "OptionDownloadImagesInAdvanceHelp": "În mod implicit, majoritatea imaginilor sunt descărcate numai la cererea unei aplicații Jellyfin. Activați această opțiune pentru a descărca în avans toate imaginile, pe măsură ce fișiere media noi sunt importate. Acest lucru poate duce la mărirea semnificativă a timpilor de scanare a bibliotecii.", "OptionDownloadImagesInAdvance": "Descărcați imaginile în avans", - "OptionDownloadDiscImage": "Disc", "OptionDisplayFolderViewHelp": "Afișați dosarele alături de celelalte biblioteci media. Acest lucru poate fi util dacă doriți să aveți o vizualizare direct în dosar.", "OptionDisplayFolderView": "Afișați o vizualizare de dosar pentru a afișa dosarele media simple", "OptionDateAddedImportTime": "Utilizați data scanării în bibliotecă", diff --git a/src/strings/ru.json b/src/strings/ru.json index 74c054c99b..ed437496bb 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -66,7 +66,6 @@ "ButtonForgotPassword": "Напомнить пароль", "ButtonFullscreen": "Полный экран", "ButtonGotIt": "Понятно", - "ButtonGuide": "Телегид", "ButtonInfo": "Инфо", "ButtonLibraryAccess": "Доступ к медиатеке", "ButtonManualLogin": "Войти вручную", @@ -78,22 +77,17 @@ "ButtonParentalControl": "Родительский контроль", "ButtonPause": "Пауза", "ButtonPreviousTrack": "Предыдущая дорожка", - "ButtonProfile": "Профиль", "ButtonQuickStartGuide": "Руководство по запуску", "ButtonRefreshGuideData": "Обновить данные телегида", "ButtonRemove": "Изъять", "ButtonRename": "Переименовать", "ButtonResetEasyPassword": "Сбросить простой PIN-код", - "ButtonResetPassword": "Сбросить пароль", - "ButtonRestart": "Перезапустить", "ButtonResume": "Возобновить", "ButtonRevoke": "Отозвать", "ButtonScanAllLibraries": "Сканировать все медиатеки", "ButtonSelectDirectory": "Выбрать каталог", - "ButtonSelectServer": "Выбрать сервер", "ButtonSelectView": "Выбрать представление", "ButtonSend": "Передать", - "ButtonSettings": "Параметры", "ButtonShutdown": "Завершить работу", "ButtonSignIn": "Вход", "ButtonSignOut": "Выйти", @@ -388,7 +382,6 @@ "HeaderSeriesOptions": "Опции сериала", "HeaderSeriesStatus": "Статус сериала", "HeaderServerSettings": "Параметры сервера", - "HeaderSettings": "Параметры", "HeaderSetupLibrary": "Установка и настройка медиатеки", "HeaderSortBy": "Сортировка по", "HeaderSortOrder": "Порядок сортировки", @@ -889,8 +882,6 @@ "OnlyForcedSubtitlesHelp": "Загружены будут только форсированные субтитры.", "OnlyImageFormats": "Только графические форматы (VOBSUB, PGS и SUB)", "OptionAdminUsers": "Администраторы", - "OptionAlbum": "Альбом", - "OptionAlbumArtist": "Исп. альбома", "OptionAllUsers": "Все пользователи", "OptionAllowAudioPlaybackTranscoding": "Разрешить воспроизведение аудио, для которого потребуется перекодировка", "OptionAllowBrowsingLiveTv": "Разрешить доступ к эфиру", @@ -907,21 +898,14 @@ "OptionAllowUserToManageServer": "Разрешить этому пользователю управлять сервером", "OptionAllowVideoPlaybackRemuxing": "Разрешить воспроизведение видео, для которого потребуется преобразование без перекодировки", "OptionAllowVideoPlaybackTranscoding": "Разрешить воспроизведение видео, для которого потребуется перекодировка", - "OptionArtist": "Исполнитель", - "OptionAscending": "По возрастанию", - "OptionAuto": "Авто", "OptionAutomaticallyGroupSeries": "Автоматически сливать вместе сериалы, которые разбросаны по нескольким папкам", "OptionAutomaticallyGroupSeriesHelp": "Части сериала, которые разбросаны по нескольким папкам данной медиатеки, будут автоматически слиты в единый сериал.", - "OptionBlockBooks": "Книги", "OptionBlockChannelContent": "Содержание интернет-канала", "OptionBlockLiveTvChannels": "Эфирные каналы", - "OptionBlockMovies": "Фильмы", - "OptionBlockMusic": "Музыка", "OptionBlockTrailers": "Трейлеры", "OptionBlockTvShows": "ТВ-передачи", "OptionBluray": "Blu-ray", "OptionCommunityRating": "Пользовательский рейтинг", - "OptionContinuing": "Продолжающееся", "OptionCriticRating": "Оценка критиков", "OptionCustomUsers": "Настраиваемые", "OptionDaily": "Ежедневно", @@ -929,17 +913,11 @@ "OptionDateAddedFileTime": "Дата создания файла", "OptionDateAddedImportTime": "Дата сканирования внутрь медиатеки", "OptionDatePlayed": "Дата воспроизведения", - "OptionDescending": "По убыванию", "OptionDisableUser": "Заблокировать пользователя", "OptionDisableUserHelp": "Этому пользователю не разрешаются любые подключения к серверу. Имеющиеся соединения будут разорваны.", "OptionDislikes": "Не нравящиеся", "OptionDisplayFolderView": "Отображать аспект Папки для просмотра обычных медиапапок", "OptionDisplayFolderViewHelp": "Отображение аспекта \"Папки\" рядом с другими вашими медиатеками. Это может быть полезно, если вы хотите вид обычных папок.", - "OptionDownloadArtImage": "Виньетка", - "OptionDownloadBackImage": "Фон", - "OptionDownloadBannerImage": "Баннер", - "OptionDownloadBoxImage": "DVD-бокс", - "OptionDownloadDiscImage": "Диск", "OptionDownloadImagesInAdvance": "Загружать изображения заблаговременно", "OptionDownloadImagesInAdvanceHelp": "По умолчанию, большинство изображений загружаются только при запросе от клиента. Включите данную опцию, чтобы загружать все изображения заблаговременно, при импорте новых медиаданных. Это может привести к существенно длительным сканированиям медиатеки.", "OptionDownloadLogoImage": "Логотип", @@ -956,22 +934,17 @@ "OptionEnableForAllTuners": "Включить для всех тюнерных устройств", "OptionEnableM2tsMode": "Включить режим M2ts", "OptionEnableM2tsModeHelp": "Включайте режим M2ts при кодировании для mpegts.", - "OptionEnded": "Прекращённое", "OptionEquals": "Равно", "OptionEstimateContentLength": "Рассчитывать длину содержимого при перекодировке", "OptionEveryday": "Ежедневно", "OptionExternallyDownloaded": "Внешние загружаемые", "OptionExtractChapterImage": "Включить извлечение изображений сцен", - "OptionFavorite": "Избранное", "OptionHasSpecialFeatures": "Доп. материалы", - "OptionHasSubtitles": "Субтитры", "OptionHasThemeSong": "Тематическая мелодия", "OptionHasThemeVideo": "Тематическое видео", - "OptionHasTrailer": "Трейлер", "OptionHideUser": "Скрыть этого пользователя с экрана входа", "OptionHideUserFromLoginHelp": "Целесообразно для личных или скрытых администраторских учётных записей. Пользователю будет нужно входить в систему вручную, вводя своё имя пользователя и пароль.", "OptionHlsSegmentedSubtitles": "Сегмент. субтитры HLS", - "OptionHomeVideos": "Фотографии", "OptionIgnoreTranscodeByteRangeRequests": "Игнорировать запросы диапазона байтов перекодировки", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Эти запросы будут учтены, но заголовок диапазона байтов будет проигнорирован.", "OptionImdbRating": "Оценка IMDb", @@ -988,9 +961,7 @@ "OptionPlainVideoItems": "Отображать все видео, как обычные видео элементы", "OptionPlainVideoItemsHelp": "Все видео описываются в DIDL как «object.item.videoItem», вместо более специфичного типа, например, «object.item.videoItem.movie».", "OptionPlayCount": "Кол. воспроизведений", - "OptionPlayed": "Воспроизведённые", "OptionPremiereDate": "Дата премьеры", - "OptionProfileAudio": "Аудио", "OptionProfilePhoto": "Фото", "OptionProfileVideo": "Видео", "OptionProfileVideoAudio": "Видео Аудио", @@ -1003,7 +974,6 @@ "OptionRequirePerfectSubtitleMatch": "Загружать только субтитры, которые наиболее соответствуют моим видеофайлам", "OptionRequirePerfectSubtitleMatchHelp": "Требование полного соответствия, при котором будут отфильтровываться только те субтитры, которые были проверены и подтверждены на соответствие с вашим видеофайлом. Если снять данный флажок, повысится вероятность загрузки субтитров, но увеличатся шансы несовпадения по времени или неверного текста субтитров.", "OptionResumable": "Возможно возобновление", - "OptionRuntime": "Длительность", "OptionSaveMetadataAsHidden": "Сохранять метаданные и изображения в виде скрытых файлов", "OptionSaveMetadataAsHiddenHelp": "Это изменение будет применено к новым метаданным сохраняемым в будущем. Существующие файлы метаданных будут обновлены в следующий раз, когда они будут сохраняться на сервере.", "OptionSpecialEpisode": "Спецэпизоды", @@ -1011,7 +981,6 @@ "OptionTrackName": "Название трека", "OptionTvdbRating": "Оценка TVDB", "OptionUnairedEpisode": "Ожидаемые эпизоды", - "OptionUnplayed": "Невоспроизведённое", "OptionWakeFromSleep": "Выход из спящего режима", "OptionWeekdays": "В будни", "OptionWeekends": "Выходные", @@ -1168,12 +1137,10 @@ "TabOther": "Другое", "TabParentalControl": "Управление содержанием", "TabPlugins": "Плагины", - "TabProfile": "Профиль", "TabProfiles": "Профили", "TabResponses": "Отклики", "TabScheduledTasks": "Планировщик", "TabServer": "Сервер", - "TabSettings": "Параметры", "TabStreaming": "Трансляция", "TabUpcoming": "Ожидаемое", "Tags": "Теги", diff --git a/src/strings/sk.json b/src/strings/sk.json index 6a604e3e29..af22004944 100644 --- a/src/strings/sk.json +++ b/src/strings/sk.json @@ -47,20 +47,15 @@ "ButtonParentalControl": "Rodičovská kontrola", "ButtonPause": "Pozastaviť", "ButtonPreviousTrack": "Predchádzajúca stopa", - "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Príručka rýchleho štartu", "ButtonRefreshGuideData": "Obnoviť údaje sprievodcu", "ButtonRemove": "Odstrániť", "ButtonRename": "Premenovať", "ButtonResetEasyPassword": "Obnoviť jednoduchý PIN kód", - "ButtonResetPassword": "Obnoviť heslo", - "ButtonRestart": "Reštartovať", "ButtonResume": "Pokračovať", "ButtonScanAllLibraries": "Prehľadať všetky knižnice", "ButtonSelectDirectory": "Vybrať priečinok", - "ButtonSelectServer": "Vybrať server", "ButtonSend": "Odoslať", - "ButtonSettings": "Nastavenia", "ButtonShutdown": "Vypnúť", "ButtonSignIn": "Prihlásiť sa", "ButtonSignOut": "Odhlásiť sa", @@ -231,7 +226,6 @@ "HeaderSelectServer": "Vybrať server", "HeaderSendMessage": "Poslať správu", "HeaderServerSettings": "Nastavenia servera", - "HeaderSettings": "Nastavenia", "HeaderSetupLibrary": "Nastavte Vaše knižnice médií", "HeaderSortBy": "Zoradiť podľa", "HeaderStartNow": "Začať teraz", @@ -536,16 +530,9 @@ "OptionAllowRemoteSharedDevicesHelp": "DLNA zariadenia sa považujú za zdieľané, dokým ich nejaký používateľ nezačne ovládať.", "OptionAllowUserToManageServer": "Povoliť tomuto používateľovi spravovať server", "OptionAllowVideoPlaybackTranscoding": "Povoliť prehrávanie videa, ktoré vyžaduje prekódovanie", - "OptionArtist": "Umelec", - "OptionAscending": "Vzostupne", - "OptionAuto": "Automaticky", "OptionAutomaticallyGroupSeries": "Automaticky zlúčiť série, ktoré sú uložené v rôznych priečinkoch", - "OptionBlockBooks": "Knihy", - "OptionBlockMovies": "Filmy", - "OptionBlockMusic": "Hudba", "OptionBlockTrailers": "Trailery", "OptionCommunityRating": "Hodnotenie komunity", - "OptionContinuing": "Pokračuje", "OptionCriticRating": "Hodnotenie kritikov", "OptionCustomUsers": "Vlastné", "OptionDaily": "Denne", @@ -553,13 +540,9 @@ "OptionDateAddedFileTime": "Použiť dátum vytvorenia súboru", "OptionDateAddedImportTime": "Podľa dátumu pridania do knižnice", "OptionDatePlayed": "Dátum prehrania", - "OptionDescending": "Zostupne", "OptionDisableUser": "Zakázať tohto používateľa", "OptionDisableUserHelp": "Server nepovolí žiadne pripojenia od tohto používateľa. Aktívne pripojenia budú ihneď ukončené.", "OptionDislikes": "Nepáči sa", - "OptionDownloadArtImage": "Obal", - "OptionDownloadBackImage": "Späť", - "OptionDownloadDiscImage": "Disk", "OptionDownloadImagesInAdvance": "Sťahovať obrázky dopredu", "OptionDownloadThumbImage": "Miniatúra", "OptionEmbedSubtitles": "Vložené v kontajneri", @@ -568,16 +551,12 @@ "OptionEnableAccessToAllLibraries": "Povoliť prístup ku všetkým knižniciam", "OptionEnableM2tsMode": "Povoliť M2ts mód", "OptionEnableM2tsModeHelp": "Povoliť režim M2TS pri kódovaní do MPEGTS.", - "OptionEnded": "Ukončené", "OptionEquals": "Sa rovná", "OptionEveryday": "Každý deň", - "OptionFavorite": "Obľúbené", - "OptionHasSubtitles": "Titulky", "OptionHasThemeSong": "Tématická hudba", "OptionHasThemeVideo": "Tématické video", "OptionHideUser": "Nezobrazovať tohto používateľa v prihlasovacích obrazovkách", "OptionHideUserFromLoginHelp": "Užitočné pre súkromné alebo ukryté administrátorské účty. Používateľ sa bude musieť prihlásiť manuálne zadaním mena a hesla.", - "OptionHomeVideos": "Fotky", "OptionImdbRating": "Hodnotenie IMDb", "OptionLikes": "Páči sa", "OptionMissingEpisode": "Chýbajúce epizódy", @@ -587,18 +566,15 @@ "OptionParentalRating": "Rodičovské hodnotenie", "OptionPlainVideoItems": "Zobraziť všetky videá ako obyčajné video položky", "OptionPlayCount": "Počet prehraní", - "OptionPlayed": "Prehrané", "OptionPremiereDate": "Dátum premiéry", "OptionProfilePhoto": "Fotografie", "OptionProtocolHttp": "HTTP", "OptionReleaseDate": "Dátum vydania", "OptionResumable": "Pozastaviteľný", - "OptionRuntime": "Dĺžka", "OptionSaveMetadataAsHidden": "Uložiť metadáta a obrázky ako skryté súbory", "OptionTrackName": "Názov skladby", "OptionTvdbRating": "TVDB hodnotenie", "OptionUnairedEpisode": "Nevysielané epizódy", - "OptionUnplayed": "Neprehrané", "OptionWakeFromSleep": "Zobudiť zo spánku", "OptionWeekdays": "Pracovné dni", "OptionWeekends": "Víkendy", @@ -711,11 +687,9 @@ "TabOther": "Iné", "TabParentalControl": "Rodičovská kontrola", "TabPlugins": "Zásuvné moduly", - "TabProfile": "Profil", "TabProfiles": "Profily", "TabResponses": "Odpovede", "TabScheduledTasks": "Naplánované úlohy", - "TabSettings": "Nastavenia", "TabUpcoming": "Nadchádzajúce", "TellUsAboutYourself": "Povedzte nám niečo o sebe", "ThisWizardWillGuideYou": "Tento sprievodca Vám pomôže prejsť inštalačným procesom. Pre začatie zvoľte preferovaný jazyk.", @@ -765,7 +739,6 @@ "Anytime": "Kedykoľvek", "Audio": "Zvuk", "Backdrop": "Pozadie", - "ButtonGuide": "Sprievodca", "ButtonRevoke": "Odvolať", "ButtonSelectView": "Výber zobrazenia", "CancelRecording": "Zrušiť nahrávanie", @@ -856,7 +829,6 @@ "LabelDisplayMode": "Režim zobrazenia:", "LabelDisplaySpecialsWithinSeasons": "Zobraziť špeciálne epizódy v sérií, v ktorej boli odvysielané", "Option3D": "3D", - "OptionAlbum": "Album", "OptionBluray": "Blu-ray", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", "OptionDownloadLogoImage": "Logo", @@ -865,13 +837,11 @@ "OptionDvd": "DVD", "OptionExtractChapterImage": "Povoliť extrakciu obrázkov z videa", "OptionHasSpecialFeatures": "Bonusové materiály", - "OptionHasTrailer": "Trailer", "OptionIsHD": "HD", "OptionIsSD": "SD", "OptionList": "Zoznam", "OptionMax": "Max", "OptionPoster": "Plagát", - "OptionProfileAudio": "Zvuk", "OptionProfileVideo": "Video", "OptionProtocolHls": "Živý HTTP stream", "OptionRequirePerfectSubtitleMatch": "Sťahovať iba titulky, ktoré perfektne sedia k mojim video súborom", @@ -1130,8 +1100,6 @@ "OptionExternallyDownloaded": "Externé sťahovanie", "OptionEnableExternalContentInSuggestionsHelp": "Povoliť zahrnutie internetových trailerov a živých TV programov do navrhovaného obsahu.", "OptionDownloadImagesInAdvanceHelp": "Vo východzom stave sa väčšina obrázkov sťahuje až po vyžiadaní klientom. Povolením tejto možnosti sa budú všetky obrázky sťahovať popredu, keď sa budú importovať nové médiá. Toto môže spôsobiť výrazne dlhšie skenovanie knižnice.", - "OptionDownloadBoxImage": "Krabica", - "OptionDownloadBannerImage": "Banner", "OptionDisplayFolderViewHelp": "Zobraziť priečinky popri ostatných médiách v knižnici. Toto môže byť užitočné, pokiaľ chcete vidieť jednoduché zobrazenie priečinku.", "OptionDisplayFolderView": "Zobraziť priečinok s jednoduchým zobrazením priečinkov medií", "OptionBlockTvShows": "Seriál", @@ -1146,7 +1114,6 @@ "LabelUserAgent": "User agent:", "LabelEnableBlastAliveMessagesHelp": "Povolte v prípade, že server nie je viditeľný inými UPnP zariadeniami na vašej sieti.", "XmlTvSportsCategoriesHelp": "Programy s týmito kategóriami budú zobrazené ako športové programy. Viacej kategórií oddelte \"|\".", - "OptionAlbumArtist": "Umelec albumu", "NoSubtitlesHelp": "Vo východzom nastavení nebudú titulky načítané. Stále však môžu byť manuálne zapnuté počas prehrávania.", "MessageLeaveEmptyToInherit": "Zanechajte prázdne pre zdedenie nastavení z rodičovskej položky alebo z východzej globálnej hodnoty.", "NoNewDevicesFound": "Nebolo nájdené žiadne nové zariadenie. Pre pridanie nového tunera, zatvorte tento dialóg a zadajte informácie o zariadení manuálne.", diff --git a/src/strings/sl-si.json b/src/strings/sl-si.json index e4cc58de6d..d3ea5381fc 100644 --- a/src/strings/sl-si.json +++ b/src/strings/sl-si.json @@ -1,7 +1,6 @@ { "ButtonAddUser": "Dodaj Uporabnika", "ButtonQuickStartGuide": "Vodnik za hiter zacetek", - "ButtonResetPassword": "Ponastavitev gesla", "ButtonSignOut": "Odjava", "FolderTypeTvShows": "TV", "HeaderAddToCollection": "Dodaj v Zbirko", @@ -9,7 +8,6 @@ "HeaderFrequentlyPlayed": "Pogosto Predvajano", "HeaderPaths": "Poti", "HeaderRecentlyPlayed": "Nazadnje Predvajano", - "HeaderSettings": "Nastavitve", "HeaderUser": "Uporabnik", "LabelArtists": "Izvajalci:", "LabelContentType": "Tip vsebine:", @@ -28,12 +26,8 @@ "OptionEnableAccessFromAllDevices": "Omogoči dostop iz vseh naprav", "OptionEnableAccessToAllChannels": "Omogoci dostop do vseh kanalov", "OptionEnableAccessToAllLibraries": "Omogoci dostop do vseh knjiznic", - "OptionFavorite": "Priljubljene", - "OptionHasSubtitles": "Podnapisi", "OptionLikes": "Všeč mi je", - "OptionPlayed": "Predvajano", "OptionReleaseDate": "Datum izida", - "OptionUnplayed": "Nepredvajano", "ParentalRating": "Ocena za starše", "Settings": "Nastavitve", "TabAccess": "Dostop", @@ -42,7 +36,6 @@ "TabMusic": "Glasba", "TabMyPlugins": "Moji dodatki", "TabNetworks": "Omrezja", - "TabProfile": "Profil", "TabProfiles": "Profili", "TabUpcoming": "Prihajajoče", "TellUsAboutYourself": "Povej nam nekaj o sebi", @@ -127,7 +120,6 @@ "ButtonForgotPassword": "Pozabljeno geslo", "ButtonFullscreen": "Polni zaslon", "ButtonGotIt": "Razumem", - "ButtonGuide": "Vodič", "ButtonInfo": "Info", "ButtonLibraryAccess": "Dostop do knjižnic", "ButtonManualLogin": "Ročna prijava", @@ -139,20 +131,16 @@ "ButtonParentalControl": "Starševski nadzor", "ButtonPause": "Premor", "ButtonPreviousTrack": "Prejšnja skladba", - "ButtonProfile": "Profil", "ButtonRefreshGuideData": "Osveži TV vodič", "ButtonRemove": "Odstrani", "ButtonRename": "Preimenuj", "ButtonResetEasyPassword": "Ponastavi preprosto PIN kodo", - "ButtonRestart": "Ponovno zaženi", "ButtonResume": "Nadaljuj", "ButtonRevoke": "Razveljavi", "ButtonScanAllLibraries": "Preišči vse knjižnice", "ButtonSelectDirectory": "Izberi mapo", - "ButtonSelectServer": "Izberi strežnik", "ButtonSelectView": "Izberi pogled", "ButtonSend": "Pošlji", - "ButtonSettings": "Nastavitve", "ButtonShutdown": "Ugasni", "ButtonSignIn": "Prijava", "ButtonStart": "Začetek", @@ -798,7 +786,6 @@ "Premieres": "Premiere", "Producer": "Producent", "Premiere": "Premiera", - "OptionRuntime": "Trajanje", "MediaInfoLayout": "Razporeditev", "Like": "Všeč mi je", "LabelPlayDefaultAudioTrack": "Predvajaj privzeti zvočni posnetek ne glede na jezik", @@ -837,7 +824,6 @@ "LabelPasswordConfirm": "Potrditev gesla:", "LabelPassword": "Geslo:", "OptionDisableUserHelp": "Strežnik ne bo dovolil nobenih povezav od tega uporabnika. Obstoječe povezave bodo prekinjene.", - "OptionDescending": "Padajoče", "OptionDatePlayed": "Datum predvajanja", "OptionDateAddedImportTime": "Uporabi datum dodajanja v knjižnico", "OptionDateAddedFileTime": "Uporabi datum nastanka datoteke", @@ -845,20 +831,14 @@ "OptionDaily": "Dnevno", "OptionCustomUsers": "Po meri", "OptionCriticRating": "Ocena kritikov", - "OptionContinuing": "Se nadaljuje", "OptionCommunityRating": "Ocena skupnosti", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", "OptionBluray": "Blu-ray", "OptionBlockTvShows": "TV serije", "OptionBlockTrailers": "Napovedniki", - "OptionBlockMusic": "Glasba", - "OptionBlockMovies": "Filmi", - "OptionBlockBooks": "Knjige", "OptionBanner": "Pasica", "OptionAutomaticallyGroupSeriesHelp": "Serije, ki so razdeljene v več mapah znotraj knjižnice bodo samodejno združene v eno serijo.", "OptionAutomaticallyGroupSeries": "Samodejno združi serije, ki so razdeljene po več mapah", - "OptionAscending": "Naraščajoče", - "OptionArtist": "Izvajalec", "OptionAllowUserToManageServer": "Dovoli temu uporabniku upravljanje strežnika", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Naslednja mesta predstavnosti bodo odstranjena iz vaše knjižnice:", "MessagePluginInstallDisclaimer": "Dodatki ustvarjeni s strani članov skupnosti so odličen način za izboljšanje vaše izkušnje z dodatnimi funkcijami in prednostmi. Preden namestite dodatke se zavedajte, da imajo lahko ti različne vplive na vaš strežnik, kot na primer počasnejše preiskovanje knjižnic, dodatna obdelava podatkov v ozadju in zmanjšana stabilnost sistema.", @@ -952,7 +932,6 @@ "OptionRandom": "Naključno", "OptionProtocolHttp": "HTTP", "OptionProfilePhoto": "Slika", - "OptionProfileAudio": "Zvok", "OptionPremiereDate": "Datum premiere", "OptionOnInterval": "V intervalu", "OptionNew": "Novo…", @@ -962,9 +941,7 @@ "OptionIsSD": "SD", "OptionIsHD": "HD", "OptionImdbRating": "IMDb ocena", - "OptionHomeVideos": "Slike", "OptionHideUser": "Skrij tega uporabnika z vstopne strani", - "OptionHasTrailer": "Napovednik", "OptionEveryday": "Vsak dan", "OptionDvd": "DVD", "OptionDownloadMenuImage": "Meni", @@ -977,8 +954,6 @@ "OptionAllowLinkSharing": "Dovoli deljenje na družbenih omrežjih", "OptionAllowContentDownloading": "Dovoli prenašanje in sinhronizacijo predstavnosti", "OptionAllUsers": "Vsi uporabniki", - "OptionAlbumArtist": "Izvajalec albuma", - "OptionAlbum": "Album", "OptionAdminUsers": "Skrbniki", "Option3D": "3D", "NumLocationsValue": "{0} mape", @@ -1227,11 +1202,6 @@ "OptionList": "Seznam", "OptionHasThemeSong": "Uvodna špica", "OptionDownloadPrimaryImage": "Primarno", - "OptionDownloadDiscImage": "Zgoščenka", - "OptionDownloadBoxImage": "Ovitek", - "OptionDownloadBannerImage": "Pasica", - "OptionDownloadBackImage": "Nazaj", - "OptionAuto": "Samodejno", "NextUp": "Sledi", "Next": "Naslednji", "MusicVideo": "Videospot", @@ -1263,7 +1233,6 @@ "OptionProfileVideoAudio": "Video zvok", "ThemeSongs": "Glavne pesmi", "TabStreaming": "Pretakanje", - "TabSettings": "Nastavitve", "TabServer": "Strežnik", "TabScheduledTasks": "Načrtovana opravila", "HeaderUninstallPlugin": "Odstrani dodatek", @@ -1321,7 +1290,6 @@ "OptionExtractChapterImage": "Omogoči ekstrakcijo slik poglavij", "OptionEstimateContentLength": "Oceni dolžino vsebine pri prekodiranju", "OptionEquals": "Je enako", - "OptionEnded": "Zaključeno", "OptionEnableM2tsModeHelp": "Omogoči m2ts način pri kodiranju v mpegts.", "OptionEnableM2tsMode": "Omogoči M2ts način", "OptionDisplayFolderViewHelp": "Prikaže mape poleg ostalih knjižnic predstavnosti. Uporabno za preprost ogled map.", diff --git a/src/strings/sr.json b/src/strings/sr.json index 90cbd0d9df..494b88401c 100644 --- a/src/strings/sr.json +++ b/src/strings/sr.json @@ -38,7 +38,6 @@ "ButtonManualLogin": "Ручни логин", "ButtonLibraryAccess": "Приступ библиотеци", "ButtonInfo": "Информације", - "ButtonGuide": "Водич", "ButtonGotIt": "У реду", "ButtonFullscreen": "Пун екран", "ButtonForgotPassword": "Заборављена шифра", @@ -119,22 +118,17 @@ "ButtonSignOut": "Одјавите се", "ButtonSignIn": "Пријавите се", "ButtonShutdown": "Искључи", - "ButtonSettings": "Подешавања", "ButtonSend": "Пошаљи", "ButtonSelectView": "Изаберите приказ", - "ButtonSelectServer": "Иѕаберите сервер", "ButtonSelectDirectory": "Изаберите Директоријум", "ButtonScanAllLibraries": "Скенирај све библиотеке", "ButtonRevoke": "Опозови", "ButtonResume": "Настави", - "ButtonRestart": "Покрени поново", - "ButtonResetPassword": "Ресетуј шифру", "ButtonResetEasyPassword": "Ресетујте једноставан ПИН код", "ButtonRename": "Преименуј", "ButtonRemove": "Уклони", "ButtonRefreshGuideData": "Освежи податке водича", "ButtonQuickStartGuide": "Кратки водич за почетак", - "ButtonProfile": "Профил", "ButtonPreviousTrack": "Претходна нумера", "ButtonEditOtherUserPreferences": "Уредите профил корисника, слику и личне поставке.", "BurnSubtitlesHelp": "Одређује да ли сервер треба да кодира титлове приликом транскодирања видео записа. Избегавање тога увелико ће побољшати перформансе. Изаберите Аутоматски да бисте снимили формате засноване на слици (VOBSUB, PGS, SUB, IDX) и одређене ASS или SSA титлове.", diff --git a/src/strings/sv.json b/src/strings/sv.json index c5f82a59d7..41c6862945 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -68,22 +68,17 @@ "ButtonParentalControl": "Föräldralås", "ButtonPause": "Paus", "ButtonPreviousTrack": "Föregående spår", - "ButtonProfile": "Profil", "ButtonQuickStartGuide": "Snabbstartguide", "ButtonRefreshGuideData": "Uppdatera programguiden", "ButtonRemove": "Ta bort", "ButtonRename": "Ändra namn", "ButtonResetEasyPassword": "Återställ enkel pin-kod", - "ButtonResetPassword": "Återställ lösenord", - "ButtonRestart": "Starta om", "ButtonResume": "Återuppta", "ButtonRevoke": "Återkalla", "ButtonScanAllLibraries": "Scanna alla bibliotek", "ButtonSelectDirectory": "Välj mapp", - "ButtonSelectServer": "Välj server", "ButtonSelectView": "Välj vy", "ButtonSend": "Skicka", - "ButtonSettings": "Inställningar", "ButtonShutdown": "Stäng av", "ButtonSignIn": "Logga in", "ButtonSignOut": "Logga ut", @@ -350,7 +345,6 @@ "HeaderSeriesOptions": "Seriealternativ", "HeaderSeriesStatus": "Seriestatus", "HeaderServerSettings": "Serverinställningar", - "HeaderSettings": "Inställningar", "HeaderSetupLibrary": "Sätt upp dina mediabibliotek", "HeaderSortBy": "Sortera efter", "HeaderSortOrder": "Sortering", @@ -820,7 +814,6 @@ "OnlyForcedSubtitlesHelp": "Endast undertexter markerade som tvingande kommer att laddas.", "OnlyImageFormats": "Endast bildbaserade format (VOBSUB, PGS, SUB, etc)", "OptionAdminUsers": "Administratörer", - "OptionAlbumArtist": "Albumartist", "OptionAllUsers": "Alla användare", "OptionAllowAudioPlaybackTranscoding": "Tillåt ljuduppspelning som kräver omkodning", "OptionAllowBrowsingLiveTv": "Tillåt Live-TV åtkomst", @@ -837,18 +830,13 @@ "OptionAllowUserToManageServer": "Tillåt denna användare att administrera servern", "OptionAllowVideoPlaybackRemuxing": "Tillåt videouppspelning som kräver konvertering utan omkodning", "OptionAllowVideoPlaybackTranscoding": "Tillåt videouppspelning som kräver omkodning", - "OptionAscending": "Stigande", "OptionAutomaticallyGroupSeries": "Slå ihop serier automatiskt som ligger utspritt under flera kataloger", "OptionAutomaticallyGroupSeriesHelp": "Serier som är spridda över flera mappar i det här biblioteket kommer automatiskt att slås ihop till en enda serie.", - "OptionBlockBooks": "Böcker", "OptionBlockChannelContent": "Kanalinnehåll från Internet", "OptionBlockLiveTvChannels": "TV-kanaler", - "OptionBlockMovies": "Filmer", - "OptionBlockMusic": "Musik", "OptionBlockTvShows": "TV-serier", "OptionBluray": "Blu-ray", "OptionCommunityRating": "Allmänhetens betyg", - "OptionContinuing": "Pågående", "OptionCriticRating": "Kritikerbetyg", "OptionCustomUsers": "Anpassad", "OptionDaily": "Dagligen", @@ -856,17 +844,11 @@ "OptionDateAddedFileTime": "Använd datum då filen skapades", "OptionDateAddedImportTime": "Använd datum för inläsning i biblioteket", "OptionDatePlayed": "Senast visad", - "OptionDescending": "Sjunkande", "OptionDisableUser": "Spärra den här användaren", "OptionDisableUserHelp": "Spärrade användare tillåts ej kontakta servern. Eventuella pågående anslutningar avbryts omedelbart.", "OptionDislikes": "Ogillar", "OptionDisplayFolderView": "Visa en mappvy för att visa enkla mediamappar", "OptionDisplayFolderViewHelp": "Visa mappar jämsides med dina andra media bibliotek. Detta kan vara bra om du vill ha en enkel mapp visning.", - "OptionDownloadArtImage": "Grafik", - "OptionDownloadBackImage": "Baksida", - "OptionDownloadBannerImage": "Banderoll", - "OptionDownloadBoxImage": "Konvolut", - "OptionDownloadDiscImage": "Skiva", "OptionDownloadImagesInAdvance": "Hämta bilder i förväg", "OptionDownloadImagesInAdvanceHelp": "Som standard hämtas de flesta bilder endast när en Jellyfin-app begär det. Aktivera den här inställningen för att hämta alla bilder i förväg när nya filer importeras till biblioteket. Detta kan innebära längre bibliotekssökningar.", "OptionDownloadLogoImage": "Logotyp", @@ -883,21 +865,17 @@ "OptionEnableForAllTuners": "Aktivera för alla TV-mottagare", "OptionEnableM2tsMode": "Tillåt M2ts-läge", "OptionEnableM2tsModeHelp": "Aktivera m2ts-läge när omkodning sker till mpegts.", - "OptionEnded": "Avslutad", "OptionEquals": "Lika med", "OptionEstimateContentLength": "Upskattad innehållslängd vid omkodning", "OptionEveryday": "Varje dag", "OptionExternallyDownloaded": "Extern nerladdning", "OptionExtractChapterImage": "Aktivera extrahering av kapitelbilder", - "OptionFavorite": "Favoriter", "OptionHasSpecialFeatures": "Extramaterial", - "OptionHasSubtitles": "Undertexter", "OptionHasThemeSong": "Ledmotiv", "OptionHasThemeVideo": "Temavideo", "OptionHideUser": "Visa inte den här användaren på inloggningssidorna", "OptionHideUserFromLoginHelp": "Användbart för privata konton eller gömda administratörskonton. Användaren beöver logga in manuellt genom att skriva sitt användarnamn och lösenord.", "OptionHlsSegmentedSubtitles": "HLS-segmenterade undertexter", - "OptionHomeVideos": "Foton", "OptionIgnoreTranscodeByteRangeRequests": "Ignorera begäran om \"byte range\" vid omkodning", "OptionIgnoreTranscodeByteRangeRequestsHelp": "Om aktiverad kommer begäran att uppfyllas, men \"byte range\"-rubriken ignoreras.", "OptionImdbRating": "Betyg på IMDB", @@ -913,9 +891,7 @@ "OptionPlainVideoItems": "Visa alla videor som objekt utan specifikt format", "OptionPlainVideoItemsHelp": "Om aktiverad representeras alla videor i DIDL som \"object.item.videoItem\" i stället för en mera specifik typ, t ex \"object.item.videoItem.movie\".", "OptionPlayCount": "Antal visningar", - "OptionPlayed": "Visad", "OptionPremiereDate": "Premiärdatum", - "OptionProfileAudio": "Ljud", "OptionProfilePhoto": "Foto", "OptionProfileVideoAudio": "Videoljudspår", "OptionProtocolHls": "Live-strömning via Http", @@ -925,14 +901,12 @@ "OptionRequirePerfectSubtitleMatch": "Ladda endast ner undertexter som matchar mina videofiler exakt", "OptionRequirePerfectSubtitleMatchHelp": "Att kräva en perfekt matchning filtrerar undertexter till att bara inkludera de som testats och verifierats med din exakta videofil. Stänger du av detta ökas chansen att undertexter laddas ned, men ökar chanserna att de är osynkade eller felaktiga.", "OptionResumable": "Kan återupptas", - "OptionRuntime": "Speltid", "OptionSaveMetadataAsHidden": "Spara metadata och bilder som dolda filer", "OptionSpecialEpisode": "Specialavsnitt", "OptionSubstring": "Delsträng", "OptionTrackName": "Spårnamn", "OptionTvdbRating": "TVDB-betyg", "OptionUnairedEpisode": "Ej sända avsnitt", - "OptionUnplayed": "Ej visad", "OptionWakeFromSleep": "Vakna ur energisparläge", "OptionWeekdays": "Veckodagar", "OptionWeekends": "Helger", @@ -1078,11 +1052,9 @@ "TabOther": "Övrigt", "TabParentalControl": "Föräldralås", "TabPlugins": "Tillägg", - "TabProfile": "Profil", "TabProfiles": "Profiler", "TabResponses": "Svar", "TabScheduledTasks": "Schemalagda aktiviteter", - "TabSettings": "Inställningar", "TabStreaming": "Strömning", "TabUpcoming": "Kommande", "Tags": "Etiketter", @@ -1168,7 +1140,6 @@ "ButtonTrailer": "Trailer", "ButtonStart": "Börja", "ButtonInfo": "Information", - "ButtonGuide": "Guide", "Blacklist": "Svartlista", "Auto": "Automatisk", "AuthProviderHelp": "Välj en autentiseringsleverantör som ska användas för att autentisera denna användarens lösenord.", @@ -1273,14 +1244,10 @@ "OptionList": "List", "OptionIsSD": "SD", "OptionIsHD": "HD", - "OptionHasTrailer": "Trailer", "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", "OptionBlockTrailers": "Trailers", "OptionBanner": "Banner", - "OptionAuto": "Auto", - "OptionArtist": "Artist", "OptionForceRemoteSourceTranscoding": "Tvinga omkodning på fjärr media källor (som LiveTV)", - "OptionAlbum": "Album", "Option3D": "3D", "Normal": "Normal", "NoCreatedLibraries": "Ser ut som du inte har skapat några bibliotek än. {0}Vill du skapa ett nu?{1}", diff --git a/src/strings/ta.json b/src/strings/ta.json index 439231e2c7..09d9c1318f 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -118,22 +118,17 @@ "ButtonSignIn": "உள்நுழைக", "ButtonShutdown": "பணிநிறுத்தம்", "ButtonShuffle": "கலக்கு", - "ButtonSettings": "அமைப்புகள்", "ButtonSend": "அனுப்புக", "ButtonSelectView": "பார்வையைத் தேர்ந்தெடுக்கவும்", - "ButtonSelectServer": "சேவையகத்தைத் தேர்ந்தெடுக்கவும்", "ButtonSelectDirectory": "கோப்பகத்தைத் தேர்ந்தெடுக்கவும்", "ButtonScanAllLibraries": "அனைத்து நூலகங்களையும் ஸ்கேன் செய்யுங்கள்", "ButtonRevoke": "திரும்பப் பெறு", "ButtonResume": "மீண்டும் தொடர்", - "ButtonRestart": "மறுதொடக்கம்", - "ButtonResetPassword": "கடவுச்சொல்லை மீட்டமைக்க", "ButtonResetEasyPassword": "எளிதான முள் குறியீட்டை மீட்டமைக்கவும்", "ButtonRename": "மறுபெயரிடு", "ButtonRemove": "அகற்று", "ButtonRefreshGuideData": "வழிகாட்டி தரவைப் புதுப்பிக்கவும்", "ButtonQuickStartGuide": "விரைவு தொடக்க வழிகாட்டி", - "ButtonProfile": "சுயவிவரம்", "ButtonPreviousTrack": "முந்தைய பாடல்", "ButtonPause": "இடைநிறுத்தம்", "ButtonParentalControl": "பெற்றோர் கட்டுப்பாடு", @@ -146,7 +141,6 @@ "ButtonManualLogin": "கைமுறை புகுபதிகை", "ButtonLibraryAccess": "நூலக அனுமதி", "ButtonInfo": "தகவல்", - "ButtonGuide": "வழிகாட்டி", "Categories": "பிரிவுகள்", "CancelSeries": "தொடரை ரத்துசெய்", "CancelRecording": "பதிவை ரத்துசெய்", @@ -358,7 +352,6 @@ "HeaderConfirmProfileDeletion": "சுயவிவர நீக்குதலை உறுதிப்படுத்தவும்", "HeaderSortBy": "மூலம் வரிசைப்படுத்து", "HeaderSetupLibrary": "உங்கள் மீடியா நூலகங்களை அமைக்கவும்", - "HeaderSettings": "அமைப்புகள்", "HeaderServerSettings": "சேவையக அமைப்புகள்", "HeaderServerAddressSettings": "சேவையக முகவரி அமைப்புகள்", "HeaderSeriesStatus": "தொடர் நிலை", @@ -1015,7 +1008,6 @@ "OptionEveryday": "தினமும்", "OptionEstimateContentLength": "டிரான்ஸ்கோடிங் செய்யும் போது உள்ளடக்க நீளத்தை மதிப்பிடுங்கள்", "OptionEquals": "சமம்", - "OptionEnded": "முடிந்தது", "OptionEnableM2tsModeHelp": "Mpegts க்கு குறியாக்கம் செய்யும் போது m2ts பயன்முறையை இயக்கவும்.", "OptionEnableM2tsMode": "M2ts பயன்முறையை இயக்கு", "OptionEnableForAllTuners": "அனைத்து ட்யூனர் சாதனங்களுக்கும் இயக்கு", @@ -1032,17 +1024,11 @@ "OptionDownloadLogoImage": "லோகோ", "OptionDownloadImagesInAdvanceHelp": "இயல்பாக, பெரும்பாலான படங்கள் கிளையன்ட் கோரியபோது மட்டுமே பதிவிறக்கப்படும். புதிய மீடியா இறக்குமதி செய்யப்படுவதால், எல்லா படங்களையும் முன்கூட்டியே பதிவிறக்க இந்த விருப்பத்தை இயக்கவும். இது கணிசமாக நீண்ட நூலக ஸ்கேன்களை ஏற்படுத்தக்கூடும்.", "OptionDownloadImagesInAdvance": "படங்களை முன்கூட்டியே பதிவிறக்கவும்", - "OptionDownloadDiscImage": "வட்டு", - "OptionDownloadBoxImage": "பெட்டி", - "OptionDownloadBannerImage": "பதாகை", - "OptionDownloadBackImage": "பின்னால்", - "OptionDownloadArtImage": "கலை", "OptionDisplayFolderViewHelp": "உங்கள் பிற ஊடக நூலகங்களுடன் கோப்புறைகளைக் காண்பி. நீங்கள் ஒரு எளிய கோப்புறை காட்சியைப் பெற விரும்பினால் இது பயனுள்ளதாக இருக்கும்.", "OptionDisplayFolderView": "எளிய மீடியா கோப்புறைகளைக் காட்ட கோப்புறை காட்சியைக் காண்பி", "OptionDislikes": "வெறுப்புகள்", "OptionDisableUserHelp": "இந்த பயனரிடமிருந்து எந்த இணைப்பையும் சேவையகம் அனுமதிக்காது. தற்போதுள்ள இணைப்புகள் திடீரென நிறுத்தப்படும்.", "OptionDisableUser": "இந்த பயனரை முடக்கு", - "OptionDescending": "இறங்கு", "OptionDatePlayed": "உடன் தேதி", "OptionDateAddedImportTime": "நூலகத்தில் ஸ்கேன் செய்யப்பட்ட தேதியைப் பயன்படுத்தவும்", "OptionDateAddedFileTime": "கோப்பு உருவாக்கும் தேதியைப் பயன்படுத்தவும்", @@ -1050,23 +1036,16 @@ "OptionDaily": "தினசரி", "OptionCustomUsers": "தனிப்பயன்", "OptionCriticRating": "விமர்சன மதிப்பீடு", - "OptionContinuing": "தொடர்கிறது", "OptionCommunityRating": "சமூக மதிப்பீடு", "OptionCaptionInfoExSamsung": "CaptionInfoEx (சாம்சங்)", "OptionBluray": "ப்ளூ-ரே", "OptionBlockTvShows": "தொலைக்காட்சி நிகழ்ச்சிகள்", "OptionBlockTrailers": "டிரெய்லர்கள்", - "OptionBlockMusic": "இசை", - "OptionBlockMovies": "திரைப்படங்கள்", "OptionBlockLiveTvChannels": "நேரடி தொலைக்காட்சி சேனல்கள்", "OptionBlockChannelContent": "இணைய சேனல் உள்ளடக்கம்", - "OptionBlockBooks": "புத்தகங்கள்", "OptionBanner": "பதாகை", "OptionAutomaticallyGroupSeriesHelp": "இந்த நூலகத்திற்குள் பல கோப்புறைகளில் பரவியிருக்கும் தொடர்கள் தானாக ஒரு தொடராக ஒன்றிணைக்கப்படும்.", "OptionAutomaticallyGroupSeries": "பல கோப்புறைகளில் பரவியிருக்கும் தொடர்களை தானாக இணைக்கவும்", - "OptionAuto": "தானாக", - "OptionAscending": "ஏறுதல்", - "OptionArtist": "கலைஞர்", "OptionAllowVideoPlaybackTranscoding": "டிரான்ஸ்கோடிங் தேவைப்படும் வீடியோ பிளேபேக்கை அனுமதிக்கவும்", "OptionAllowVideoPlaybackRemuxing": "மறு குறியாக்கம் இல்லாமல் மாற்றம் தேவைப்படும் வீடியோ பிளேபேக்கை அனுமதிக்கவும்", "OptionAllowUserToManageServer": "சேவையகத்தை நிர்வகிக்க இந்த பயனரை அனுமதிக்கவும்", @@ -1084,8 +1063,6 @@ "OptionForceRemoteSourceTranscoding": "தொலைநிலை ஊடக மூலங்களின் டிரான்ஸ்கோடிங்கை கட்டாயப்படுத்தவும் (லைடிவி போன்றவை)", "OptionAllowAudioPlaybackTranscoding": "டிரான்ஸ்கோடிங் தேவைப்படும் ஆடியோ பிளேபேக்கை அனுமதிக்கவும்", "OptionAllUsers": "அனைத்து பயனாளர்கள்", - "OptionAlbumArtist": "ஆல்பம் கலைஞர்", - "OptionAlbum": "ஆல்பம்", "OptionAdminUsers": "நிர்வாகிகள்", "OnlyImageFormats": "பட வடிவங்கள் மட்டுமே (VOBSUB, PGS, SUB)", "Option3D": "3D", @@ -1148,7 +1125,6 @@ "OptionWeekends": "வார இறுதி நாட்கள்", "OptionWeekdays": "வார நாட்கள்", "OptionWakeFromSleep": "தூக்கத்திலிருந்து விழிப்பதற்கு", - "OptionUnplayed": "காட்டப்படாதது", "OptionUnairedEpisode": "ஒளிபரப்பப்படாத அத்தியாயங்கள்", "OptionTvdbRating": "TVDB மதிப்பீடு", "OptionTrackName": "ட்ராக் பெயர்", @@ -1158,7 +1134,6 @@ "OptionSpecialEpisode": "சிறப்பு", "OptionSaveMetadataAsHiddenHelp": "இதை மாற்றுவது முன்னோக்கிச் செல்லும் புதிய மெட்டாடேட்டாவுக்கு பொருந்தும். தற்போதுள்ள மெட்டாடேட்டா கோப்புகள் அடுத்த முறை சேவையகத்தால் சேமிக்கப்படும் போது அவை புதுப்பிக்கப்படும்.", "OptionSaveMetadataAsHidden": "மெட்டாடேட்டா மற்றும் படங்களை மறைக்கப்பட்ட கோப்புகளாக சேமிக்கவும்", - "OptionRuntime": "இயக்க நேரம்", "OptionResumable": "மீண்டும் தொடங்கக்கூடியது", "OptionResElement": "res கூறு", "OptionRequirePerfectSubtitleMatchHelp": "சரியான பொருத்தம் தேவைப்பட்டால், உங்கள் சரியான வீடியோ கோப்புடன் சோதிக்கப்பட்ட மற்றும் சரிபார்க்கப்பட்டவற்றை மட்டுமே சேர்க்க வசன வரிகள் வடிகட்டப்படும். இதைத் தேர்வுசெய்வது வசன வரிகள் பதிவிறக்கம் செய்யப்படுவதற்கான வாய்ப்பை அதிகரிக்கும், ஆனால் தவறான அல்லது தவறான வசன உரைக்கான வாய்ப்புகளை அதிகரிக்கும்.", @@ -1173,11 +1148,9 @@ "OptionProfileVideoAudio": "வீடியோ ஆடியோ", "OptionProfileVideo": "காணொளி", "OptionProfilePhoto": "புகைப்படம்", - "OptionProfileAudio": "ஆடியோ", "OptionPremiereDate": "பிரீமியர் தேதி", "OptionPosterCard": "சுவரொட்டி அட்டை", "OptionPoster": "சுவரொட்டி", - "OptionPlayed": "வாசிக்கப்பட்டது", "OptionPlayCount": "ப்ளே கவுண்ட்", "OptionPlainVideoItemsHelp": "எல்லா வீடியோக்களும் டிஐடிஎல்லில் \"object.item.videoItem\" என குறிப்பிடப்படுகின்றன, அதாவது \"object.item.videoItem.movie\" போன்ற ஒரு குறிப்பிட்ட வகைக்கு பதிலாக.", "OptionPlainVideoItems": "எல்லா வீடியோக்களையும் எளிய வீடியோ உருப்படிகளாகக் காண்பி", @@ -1199,16 +1172,12 @@ "OptionImdbRating": "IMDb மதிப்பீடு", "OptionIgnoreTranscodeByteRangeRequestsHelp": "இந்த கோரிக்கைகள் மதிக்கப்படும், ஆனால் பைட் வரம்பு தலைப்பை புறக்கணிக்கும்.", "OptionIgnoreTranscodeByteRangeRequests": "டிரான்ஸ்கோட் பைட் வரம்பு கோரிக்கைகளை புறக்கணிக்கவும்", - "OptionHomeVideos": "புகைப்படங்கள்", "OptionHlsSegmentedSubtitles": "HLS பிரிக்கப்பட்ட வசன வரிகள்", "OptionHideUserFromLoginHelp": "தனிப்பட்ட அல்லது மறைக்கப்பட்ட நிர்வாகி கணக்குகளுக்கு பயனுள்ளதாக இருக்கும். பயனர் தங்கள் பயனர்பெயர் மற்றும் கடவுச்சொல்லை உள்ளிட்டு கைமுறையாக உள்நுழைய வேண்டும்.", "OptionHideUser": "உள்நுழைவு திரைகளிலிருந்து இந்த பயனரை மறைக்கவும்", - "OptionHasTrailer": "டிரெய்லர்", "OptionHasThemeVideo": "தீம் வீடியோ", "OptionHasThemeSong": "தீம் பாடல்", - "OptionHasSubtitles": "வசன வரிகள்", "OptionHasSpecialFeatures": "சிறப்பு அம்சங்கள்", - "OptionFavorite": "பிடித்தவை", "OptionExtractChapterImage": "அத்தியாயம் படத்தை பிரித்தெடுப்பதை இயக்கு", "OptionExternallyDownloaded": "வெளிப்புற பதிவிறக்க", "PlaybackData": "பின்னணி தரவு", @@ -1398,12 +1367,10 @@ "Tags": "குறிச்சொற்கள்", "TabUpcoming": "வரவிருக்கும்", "TabStreaming": "ஸ்ட்ரீமிங்", - "TabSettings": "அமைப்புகள்", "TabServer": "சேவையகம்", "TabScheduledTasks": "திட்டமிடப்பட்ட பணிகள்", "TabResponses": "பதில்கள்", "TabProfiles": "சுயவிவரங்கள்", - "TabProfile": "சுயவிவரம்", "TabPlugins": "செருகுநிரல்கள்", "TabParentalControl": "பெற்றோர் கட்டுப்பாடு", "TabOther": "மற்றவை", diff --git a/src/strings/tr.json b/src/strings/tr.json index 053da36a5e..05f9b1ceb9 100644 --- a/src/strings/tr.json +++ b/src/strings/tr.json @@ -16,11 +16,8 @@ "ButtonQuickStartGuide": "Hızlı başlangıç rehberi", "ButtonRefreshGuideData": "Kılavuzu Yinele", "ButtonRemove": "Sil", - "ButtonResetPassword": "Şifre Sıfırla", - "ButtonRestart": "Tekrar Başlat", "ButtonSelectDirectory": "Dosyayı Seç", "ButtonSend": "Gönder", - "ButtonSettings": "Ayarlar", "ButtonSignIn": "Giriş Yapın", "ButtonSignOut": "Çıkış Yap", "ButtonStop": "Durdur", @@ -114,52 +111,34 @@ "MessagePleaseEnsureInternetMetadata": "Lütfen internetten metadata indirmenin aktif olduğundan emin olun.", "Monday": "Pazartesi", "NewCollection": "Yeni Koleksiyon", - "OptionAlbum": "Albüm", - "OptionAlbumArtist": "Albüm Sanatçısı", "OptionAllowUserToManageServer": "Bu kullanıcıya sunucuyu yönetme izni ver", - "OptionArtist": "Sanatçı", - "OptionAscending": "Yükselen", - "OptionContinuing": "Topluluk", "OptionCriticRating": "Yorumcu Puanı", "OptionDaily": "Günlük", "OptionDateAdded": "Eklenme Tarihi", "OptionDatePlayed": "Oynatma Tarihi", - "OptionDescending": "Düşen", "OptionDisableUser": "Kullanıcı Devre Dışı Bırak", "OptionDislikes": "Beğenilmeyenler", - "OptionDownloadArtImage": "Galeri", - "OptionDownloadBackImage": "Geri", - "OptionDownloadBoxImage": "Kutu", - "OptionDownloadDiscImage": "Disk", "OptionDownloadMenuImage": "Menü", "OptionDownloadPrimaryImage": "Birincil", "OptionDownloadThumbImage": "Küçük Resim", "OptionEnableAccessFromAllDevices": "Bütün cihazlardan erişime izin ver", "OptionEnableAccessToAllChannels": "Bütün kanallara erişim izni ver", "OptionEnableAccessToAllLibraries": "Bütün kütüphanelere erişim izni ver", - "OptionEnded": "Bitmiş", - "OptionFavorite": "Favoriler", - "OptionHasSubtitles": "Altyazı", "OptionHasThemeSong": "Tema Şarkısı", "OptionHasThemeVideo": "Tema Videosu", - "OptionHasTrailer": "Tanıtım Video", "OptionHideUser": "Bu kullanıcıyı giriş ekranında gösterme", "OptionImdbRating": "İMDb Reyting", "OptionLikes": "Beğenilenler", "OptionNameSort": "İsim", "OptionPlayCount": "Oynatma sayacı", - "OptionPlayed": "Çalındı", - "OptionProfileAudio": "Ses", "OptionProfilePhoto": "Fotoğraf", "OptionProfileVideo": "Vidyo", "OptionProfileVideoAudio": "Video Sesi", "OptionReleaseDate": "Yayınlanma Tarihi", "OptionResumable": "Başlatılabilir", - "OptionRuntime": "Süresi", "OptionSpecialEpisode": "Özel", "OptionTrackName": "Parça İsmi", "OptionTvdbRating": "TVDB Puanı", - "OptionUnplayed": "Çalınmayan", "OptionWeekly": "Haftalık", "ParentalRating": "Ebeveyn değeri", "PasswordMatchError": "Parola ve Sifre Eslesmelidir.", @@ -182,10 +161,8 @@ "TabMyPlugins": "Eklentilerim", "TabNetworks": "Ağlar", "TabNotifications": "Bildirimler", - "TabProfile": "Profil", "TabProfiles": "Profiller", "TabServer": "Sunucu", - "TabSettings": "Ayarlar", "TabUpcoming": "Gelecek", "TellUsAboutYourself": "Kendinizden bahsedin", "ThisWizardWillGuideYou": "Bu sihirbaz kurulum işlemi boyunca size yardımcı olacaktır. Başlamak için, tercih ettiğiniz dili seçiniz.", @@ -236,7 +213,6 @@ "ColorSpace": "Renk uzayı", "ColorTransfer": "Renk transferi", "ButtonPreviousTrack": "Önceki parça", - "ButtonProfile": "Profil", "ButtonRename": "Yeniden Adlandır", "ButtonResume": "Devam Et", "ButtonRevoke": "Geri al", @@ -269,7 +245,6 @@ "EnableBackdropsHelp": "Kütüphaneye göz atarken arka plandaki bazı sayfaların arka planında görüntüleyin.", "AllowMediaConversionHelp": "Dönüştürme özelliğine erişim izni verme veya reddetme.", "AllowOnTheFlySubtitleExtraction": "Anında altyazı çıkartmaya izin ver", - "ButtonSelectServer": "Sunucu Seç", "Disc": "Disk", "ButtonAddImage": "Resim ekle", "ButtonAddScheduledTaskTrigger": "Tetikleyici ekle", @@ -283,7 +258,6 @@ "ButtonNextTrack": "Sonraki parça", "ButtonParentalControl": "Ebeveyn Kontrolü", "ButtonArrowLeft": "Sol", - "ButtonGuide": "Rehber", "ButtonLibraryAccess": "Kütüphane erişimi", "ButtonScanAllLibraries": "Tüm Kütüphaneleri Tara", "ButtonSelectView": "Görünüm seç", @@ -594,7 +568,6 @@ "HeaderSpecialEpisodeInfo": "Özel Bölüm Bilgisi", "HeaderSortOrder": "Sıralama Düzeni", "HeaderSortBy": "Sırala", - "HeaderSettings": "Ayarlar", "LabelLogs": "Günlük:", "HeaderSelectMetadataPathHelp": "İçinde meta veri depolamak istediğiniz yola göz atın veya bu yolu girin. Klasörün yazılabilir olması gerekir.", "HeaderResponseProfileHelp": "Yanıt profilleri, belirli media türlerini oynatırken aygıta gönderilen bilgileri özelleştirmek için bir yol sağlar.", diff --git a/src/strings/uk.json b/src/strings/uk.json index 893311884c..22a1e986c0 100644 --- a/src/strings/uk.json +++ b/src/strings/uk.json @@ -4,7 +4,6 @@ "ButtonAddUser": "Додати користувача", "ButtonCancel": "Скасувати", "ButtonRename": "Перейменувати", - "ButtonResetPassword": "Скинути пароль", "ButtonSignOut": "Вийти", "DeathDateValue": "Помер: {0}", "Dislike": "Не подобається", @@ -19,7 +18,6 @@ "HeaderLatestMovies": "Нещодавні фільми", "HeaderLatestMusic": "Остання музика", "HeaderSeasons": "Сезони", - "HeaderSettings": "Налаштування", "HeaderTracks": "Доріжки", "HeaderUsers": "Користувачі", "LabelBirthDate": "Дата народження:", @@ -42,13 +40,8 @@ "MediaInfoProfile": "Профіль", "MediaInfoSize": "Розмір", "MessageContactAdminToResetPassword": "Будь ласка, зверніться до адміністратора для скидання вашого паролю.", - "OptionAlbum": "Альбом", - "OptionArtist": "Актор", - "OptionBlockMovies": "Фільми", "OptionBlockTrailers": "Трейлери", "OptionDislikes": "Не подобається", - "OptionFavorite": "Улюблене", - "OptionHasSubtitles": "Субтитри", "OptionLikes": "Подобається", "OptionNameSort": "Ім’я", "ParentalRating": "Parental Rating", @@ -57,7 +50,6 @@ "TabNetworks": "Мережі", "TabNotifications": "Повідомлення", "TabPlugins": "Додатки", - "TabProfile": "Профіль", "TabProfiles": "Профілі", "ValueAlbumCount": "{0} альбомів", "ValueDiscNumber": "Диск {0}", @@ -182,20 +174,16 @@ "ButtonStart": "Почати", "ButtonSignIn": "Вхід", "ButtonShutdown": "Завершити роботу", - "ButtonSettings": "Налаштування", "ButtonSend": "Надіслати", "ButtonSelectView": "Вибрати вигляд", - "ButtonSelectServer": "Вибрати сервер", "ButtonSelectDirectory": "Вибрати каталог", "ButtonScanAllLibraries": "Сканувати всі медіатеки", "ButtonRevoke": "Відмінити", "ButtonResume": "Відновити", - "ButtonRestart": "Перезапустити", "ButtonResetEasyPassword": "Скинути простий пін-код", "ButtonRemove": "Видалити", "ButtonRefreshGuideData": "Оновити дані телегіда", "ButtonQuickStartGuide": "Посібник по швидкому запуску", - "ButtonProfile": "Профіль", "ButtonPreviousTrack": "Попередня доріжка", "ButtonPause": "Пауза", "ButtonParentalControl": "Батьківський контроль", @@ -207,7 +195,6 @@ "ButtonManualLogin": "Ввести ім’я користувача вручну", "ButtonLibraryAccess": "Доступ до медіатеки", "ButtonInfo": "Інформація", - "ButtonGuide": "Телегід", "ButtonGotIt": "Зрозуміло", "ButtonFullscreen": "Повноекранний режим", "ButtonForgotPassword": "Забув(ла) пароль", diff --git a/src/strings/vi.json b/src/strings/vi.json index 68718d4c5d..233bb5f0e2 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -5,7 +5,6 @@ "ButtonAddUser": "Thêm người dùng", "ButtonCancel": "Thoát", "ButtonRemove": "Gỡ bỏ", - "ButtonResetPassword": "Reset mật khẩu", "ButtonSelectDirectory": "Lựa chọn trực tiếp", "ButtonSignOut": "Sign out", "Delete": "Xóa", @@ -43,20 +42,14 @@ "MaxParentalRatingHelp": "Nội dung với đánh giá cao hơn sẽ được ẩn đi từ người dùng này.", "MessageNothingHere": "Không có gì ở đây.", "Monday": "Thứ Hai", - "OptionAlbumArtist": "Album nghệ sỹ", "OptionAllowUserToManageServer": "Cho phép người dùng này quản lý máy chủ", - "OptionArtist": "Nghệ sỹ", "OptionCommunityRating": "Đánh giá của cộng đồng", "OptionDateAdded": "Ngày thêm", "OptionDatePlayed": "Ngày phát", "OptionDisableUser": "Vô hiệu hóa người dùng này", "OptionDislikes": "Không thích", - "OptionDownloadBackImage": "Trở lại", - "OptionDownloadDiscImage": "Đĩa", "OptionDvd": "DVD", - "OptionFavorite": "Yêu thích", "OptionHasSpecialFeatures": "Tính năng đặc biệt", - "OptionHasSubtitles": "Phụ đề", "OptionHasThemeSong": "Hình nền bài hát", "OptionHasThemeVideo": "Hình nền Video", "OptionHideUser": "Ẩn người dùng này từ màn hình đăng nhập", @@ -66,7 +59,6 @@ "OptionLikes": "Thích", "OptionNameSort": "Tên", "OptionPlayCount": "Số lần phát", - "OptionRuntime": "Thời gian phát", "OptionTrackName": "Tên bài", "ParentalRating": "Parental Rating", "PasswordMatchError": "Mật khẩu và mật khẩu xác nhận cần phải khớp nhau .", @@ -81,7 +73,6 @@ "TabLatest": "Mới nhất", "TabMyPlugins": "Các plugin của tôi", "TabNetworks": "Các mạng", - "TabProfile": "Hồ sơ", "TabProfiles": "Hồ sơ", "TabServer": "Máy chủ", "TabUpcoming": "Sắp diễn ra", @@ -94,12 +85,10 @@ "Actor": "Diễn viên", "ButtonRevoke": "Thu hồi", "ButtonResume": "Tiếp tục", - "ButtonRestart": "Khởi động lại", "ButtonResetEasyPassword": "Đặt lại mã pin nhanh", "ButtonRename": "Đổi tên", "ButtonRefreshGuideData": "Làm mới dữ liệu hướng dẫn", "ButtonQuickStartGuide": "Hướng dẫn nhanh", - "ButtonProfile": "Hồ sơ", "ButtonPreviousTrack": "Bài trước", "ButtonPause": "Tạm dừng", "ButtonParentalControl": "Kiểm soát của cha mẹ", @@ -110,7 +99,6 @@ "ButtonManualLogin": "Đăng nhập thủ công", "ButtonLibraryAccess": "Truy cập thư viện", "ButtonInfo": "Thông tin", - "ButtonGuide": "Hướng dẫn", "ButtonGotIt": "Hiểu rồi", "ButtonFullscreen": "Toàn màn hình", "ButtonForgotPassword": "Quên mật khẩu", @@ -172,7 +160,6 @@ "Absolute": "Tuyệt đối", "ButtonSend": "Gửi", "ButtonSelectView": "Chọn chế độ xem", - "ButtonSelectServer": "Chọn máy chủ", "ButtonScanAllLibraries": "Quét tất cả các thư viện", "ButtonOk": "Đồng Ý", "Categories": "Phân loại", @@ -186,7 +173,6 @@ "ButtonStart": "Bắt đầu", "ButtonSignIn": "Đăng nhập", "ButtonShutdown": "Tắt", - "ButtonSettings": "Cài đặt", "ErrorDefault": "Có lỗi xảy ra trong lúc xử lý yêu cầu của bạn. Xin hãy thử lại sau.", "Default": "Mặc định", "DeathDateValue": "Không hoạt động: {0}", @@ -457,7 +443,6 @@ "HeaderDefaultRecordingSettings": "Thiết Lập Ghi Âm/Ghi Hình Mặc Định", "HeaderRecordingOptions": "Tuỳ Chọn Ghi Âm/Ghi Hình", "HeaderProfileServerSettingsHelp": "Những thông tin này về máy chủ Jellyfin sẽ hiển thị trên các thiết bị phát được kết nối.", - "HeaderSettings": "Cài Đặt", "HeaderServerSettings": "Cài Đặt Máy Chủ", "HeaderSeriesStatus": "Trạng Thái Series", "HeaderSeriesOptions": "Tuỳ Chọn Series", diff --git a/src/strings/zh-cn.json b/src/strings/zh-cn.json index a44b9ab992..74c0745822 100644 --- a/src/strings/zh-cn.json +++ b/src/strings/zh-cn.json @@ -60,7 +60,6 @@ "ButtonForgotPassword": "忘记密码", "ButtonFullscreen": "全屏", "ButtonGotIt": "知道了", - "ButtonGuide": "指南", "ButtonInfo": "详情", "ButtonLibraryAccess": "媒体库访问", "ButtonManualLogin": "手动登录", @@ -72,22 +71,17 @@ "ButtonParentalControl": "家长控制", "ButtonPause": "暂停", "ButtonPreviousTrack": "上一音轨", - "ButtonProfile": "配置", "ButtonQuickStartGuide": "快速入门指南", "ButtonRefreshGuideData": "刷新指南数据", "ButtonRemove": "移除", "ButtonRename": "重命名", "ButtonResetEasyPassword": "复位简易PIN码", - "ButtonResetPassword": "重置密码", - "ButtonRestart": "重启", "ButtonResume": "恢复播放", "ButtonRevoke": "撤销", "ButtonScanAllLibraries": "扫描所有媒体库", "ButtonSelectDirectory": "选择目录", - "ButtonSelectServer": "选择服务器", "ButtonSelectView": "选择视图", "ButtonSend": "发送", - "ButtonSettings": "设置", "ButtonShutdown": "关机", "ButtonSignIn": "登录", "ButtonSignOut": "退出", @@ -352,7 +346,6 @@ "HeaderSendMessage": "发送消息", "HeaderSeriesOptions": "系列选项", "HeaderServerSettings": "服务器设置", - "HeaderSettings": "设置", "HeaderSetupLibrary": "设置你的媒体库", "HeaderSortBy": "排序方式", "HeaderSortOrder": "排序顺序", @@ -843,8 +836,6 @@ "OnlyForcedSubtitlesHelp": "只有被标记为“强制”的字幕会被加载。", "OnlyImageFormats": "仅图像格式(VOBSUB, PGS, SUB 等)", "OptionAdminUsers": "管理员", - "OptionAlbum": "专辑", - "OptionAlbumArtist": "专辑艺术家", "OptionAllUsers": "所有用户", "OptionAllowAudioPlaybackTranscoding": "允许播放需要转码的音频", "OptionAllowBrowsingLiveTv": "允许访问电视直播", @@ -861,22 +852,15 @@ "OptionAllowUserToManageServer": "运行此用户管理服务器", "OptionAllowVideoPlaybackRemuxing": "允许播放需转换但无需重新编码的视频", "OptionAllowVideoPlaybackTranscoding": "允许播放需要转码的视频", - "OptionArtist": "艺术家", - "OptionAscending": "升序", - "OptionAuto": "自动", "OptionAutomaticallyGroupSeries": "自动合并分布在不同文件夹的电视剧", "OptionAutomaticallyGroupSeriesHelp": "在这个媒体库的多个文件夹中的同一部电视剧将会自动整合成一部电视剧。", - "OptionBlockBooks": "书籍", "OptionBlockChannelContent": "互联网频道内容", "OptionBlockLiveTvChannels": "电视直播频道", - "OptionBlockMovies": "电影", - "OptionBlockMusic": "音乐", "OptionBlockTrailers": "预告片", "OptionBlockTvShows": "电视节目", "OptionBluray": "蓝光", "OptionCaptionInfoExSamsung": "CaptionInfoEx(三星)", "OptionCommunityRating": "公众评分", - "OptionContinuing": "继续", "OptionCriticRating": "影评人评分", "OptionCustomUsers": "自定义", "OptionDaily": "每日", @@ -884,17 +868,11 @@ "OptionDateAddedFileTime": "使用文件创建日期", "OptionDateAddedImportTime": "使用加入媒体库时的扫描日期", "OptionDatePlayed": "播放日期", - "OptionDescending": "降序", "OptionDisableUser": "禁用此用户", "OptionDisableUserHelp": "服务器将不允许来自该用户的任何连接。现有的连接将立即被终止。", "OptionDislikes": "不喜欢", "OptionDisplayFolderView": "显示一个“文件夹”类别用于按文件夹分类浏览你的媒体文件夹", "OptionDisplayFolderViewHelp": "在你的媒体库列表中显示文件夹。如果你有按文件夹分类进行浏览的需求,这会非常有用。", - "OptionDownloadArtImage": "艺术图", - "OptionDownloadBackImage": "包装背面", - "OptionDownloadBannerImage": "横幅", - "OptionDownloadBoxImage": "包装", - "OptionDownloadDiscImage": "光盘", "OptionDownloadImagesInAdvance": "提前下载图片", "OptionDownloadImagesInAdvanceHelp": "默认大多数图片只在客户端请求时下载。开启此选项将在新媒体导入时预先下载所有图片。这可能大大延长媒体库扫描时间。", "OptionDownloadMenuImage": "菜单", @@ -910,22 +888,17 @@ "OptionEnableForAllTuners": "给所有调谐器开启", "OptionEnableM2tsMode": "启用M2ts模式", "OptionEnableM2tsModeHelp": "当编码为MPEGTS启用M2TS模式。", - "OptionEnded": "完结", "OptionEquals": "等于", "OptionEstimateContentLength": "转码时,估计内容长度", "OptionEveryday": "每天", "OptionExternallyDownloaded": "外部下载", "OptionExtractChapterImage": "开启剧集图片提取", - "OptionFavorite": "我的最爱", "OptionHasSpecialFeatures": "特殊功能", - "OptionHasSubtitles": "字幕", "OptionHasThemeSong": "主题曲", "OptionHasThemeVideo": "主题视频", - "OptionHasTrailer": "预告片", "OptionHideUser": "从登陆页面隐藏此用户", "OptionHideUserFromLoginHelp": "这个选项对于私人账户或是希望隐藏管理员账户的人是有帮助的。用户在登录时需要手动输入他们的用户名和密码。", "OptionHlsSegmentedSubtitles": "HLS分段字幕", - "OptionHomeVideos": "照片", "OptionIgnoreTranscodeByteRangeRequests": "忽略转码字节范围请求", "OptionIgnoreTranscodeByteRangeRequestsHelp": "这些请求会被兑现,但会忽略的字节范围标头。", "OptionImdbRating": "IMDb 评分", @@ -944,9 +917,7 @@ "OptionPlainVideoItems": "显示所有视频为一般视频项目", "OptionPlainVideoItemsHelp": "所有视频在DIDL中显示为 \"object.item.videoItem\" ,而不是一个更具体的类型,如 \"object.item.videoItem.movie\" 。", "OptionPlayCount": "播放次数", - "OptionPlayed": "已播放", "OptionPremiereDate": "首映日期", - "OptionProfileAudio": "音频", "OptionProfilePhoto": "图片", "OptionProfileVideo": "视频", "OptionProfileVideoAudio": "视频音频", @@ -960,7 +931,6 @@ "OptionRequirePerfectSubtitleMatchHelp": "需要一个完美的匹配将过滤字幕, 只包括那些已经测试和验证与您的确切视频文件。取消选中此项将增加字幕下载的可能性, 但会增加不合时宜或不正确字幕文本的几率。", "OptionResElement": "res 元素", "OptionResumable": "可恢复播放", - "OptionRuntime": "播放时长", "OptionSaveMetadataAsHidden": "保存媒体资料和图像为隐藏文件", "OptionSaveMetadataAsHiddenHelp": "更改此项将应用于以后保存的元数据。现有元数据文件将在下一次服务器保存它们时被更新。", "OptionSpecialEpisode": "特集", @@ -968,7 +938,6 @@ "OptionTrackName": "曲目名称", "OptionTvdbRating": "TVDB 评分", "OptionUnairedEpisode": "尚未发布的剧集", - "OptionUnplayed": "未播放", "OptionWakeFromSleep": "从睡眠中唤醒", "OptionWeekdays": "工作日", "OptionWeekends": "周末", @@ -1106,12 +1075,10 @@ "TabOther": "其他", "TabParentalControl": "家长控制", "TabPlugins": "插件", - "TabProfile": "个人配置", "TabProfiles": "配置", "TabResponses": "响应", "TabScheduledTasks": "计划任务", "TabServer": "服务器", - "TabSettings": "设置", "TabStreaming": "流媒体传输", "TabUpcoming": "即将发布", "Tags": "标签", diff --git a/src/strings/zh-hk.json b/src/strings/zh-hk.json index 21ac5f304c..4a4cb72ef8 100644 --- a/src/strings/zh-hk.json +++ b/src/strings/zh-hk.json @@ -9,8 +9,6 @@ "ButtonRefreshGuideData": "重新整理指南資料", "ButtonRemove": "清除", "ButtonRename": "重新命名", - "ButtonResetPassword": "重設密碼", - "ButtonRestart": "重新啟動", "ButtonSelectDirectory": "選擇目錄", "ButtonSignIn": "登入", "ButtonSignOut": "登出", @@ -158,8 +156,6 @@ "NewCollectionNameExample": "例如:星球大戰收藏庫", "MessageNoNextUpItems": "未有發現。開始欣賞您的節目!", "OptionAdminUsers": "管理員", - "OptionAlbum": "唱片", - "OptionAlbumArtist": "唱片歌手", "OptionAllUsers": "所有用戶", "OptionAllowBrowsingLiveTv": "允許訪問電視直播", "OptionAllowLinkSharing": "允許社交媒體分享", @@ -169,27 +165,16 @@ "OptionAllowRemoteSharedDevices": "允許遠程控制共享裝置", "OptionAllowRemoteSharedDevicesHelp": "DLNA 裝置會被認為是共享,直到用戶進行控制。", "OptionAllowUserToManageServer": "允許此用戶管理伺服器", - "OptionArtist": "歌手", - "OptionAscending": "遞升", - "OptionAuto": "自動", - "OptionBlockBooks": "書籍", "OptionBluray": "藍光", "OptionCommunityRating": "討論區評分", - "OptionContinuing": "繼續", "OptionCriticRating": "評論家評分", "OptionCustomUsers": "自訂", "OptionDaily": "每日", "OptionDateAdded": "已添加日期", "OptionDatePlayed": "已播放日期", - "OptionDescending": "遞降", "OptionDisableUser": "禁用此用戶", "OptionDisableUserHelp": "如果禁用此伺服器,將不允許此用戶的任何連接。現有的連接將被即時終止。", "OptionDislikes": "負評", - "OptionDownloadArtImage": "圖像", - "OptionDownloadBackImage": "媒體背面", - "OptionDownloadBannerImage": "橫幅", - "OptionDownloadBoxImage": "媒體裝飾", - "OptionDownloadDiscImage": "光碟", "OptionDownloadLogoImage": "標誌", "OptionDownloadMenuImage": "菜單", "OptionDownloadPrimaryImage": "主要圖像", @@ -199,13 +184,9 @@ "OptionEnableAccessFromAllDevices": "啟用所有裝置通行證", "OptionEnableAccessToAllChannels": "允許所有頻道通行", "OptionEnableAccessToAllLibraries": "允許所有媒體庫通行", - "OptionEnded": "完成", - "OptionFavorite": "我的最愛", "OptionHasSpecialFeatures": "特色", - "OptionHasSubtitles": "字幕", "OptionHasThemeSong": "主題曲", "OptionHasThemeVideo": "主題影片", - "OptionHasTrailer": "預告片", "OptionHideUser": "由登錄頁面隱藏此用戶", "OptionHideUserFromLoginHelp": "有效私人或隱藏的管理員帳戶。用戶需手動輸入用戶名和密碼登錄。", "OptionHlsSegmentedSubtitles": "Hls 字幕分段", @@ -218,18 +199,14 @@ "OptionOnInterval": "每個時段", "OptionParentalRating": "家長評級", "OptionPlayCount": "播放次數", - "OptionPlayed": "已播放", "OptionPremiereDate": "首映日期", - "OptionProfileAudio": "音訊", "OptionProfileVideo": "影片", "OptionReleaseDate": "發佈日期", "OptionResumable": "能夠恢復", - "OptionRuntime": "運行時間", "OptionSpecialEpisode": "特集", "OptionTrackName": "曲目名稱", "OptionTvdbRating": "Tvdb 評分", "OptionUnairedEpisode": "尚未播放的劇集", - "OptionUnplayed": "未播放", "OptionWakeFromSleep": "從休眠中恢復", "OptionWeekly": "每週", "ParentalRating": "Parental Rating", @@ -252,10 +229,8 @@ "TabNetworks": "網絡", "TabNotifications": "通知", "TabOther": "其它", - "TabProfile": "簡介", "TabProfiles": "簡介", "TabServer": "伺服器", - "TabSettings": "設定", "TabUpcoming": "即將發佈", "TellUsAboutYourself": "介紹一下自己", "ThisWizardWillGuideYou": "此教學協助您完成安裝過程。首先,請選擇您的語言。", @@ -376,21 +351,17 @@ "ButtonStop": "停止", "ButtonStart": "開始", "ButtonShutdown": "關閉", - "ButtonSettings": "設定", "ButtonSend": "傳送", - "ButtonSelectServer": "選擇伺服器", "ButtonScanAllLibraries": "掃瞄所有媒體櫃", "ButtonRevoke": "撤銷", "ButtonResume": "恢復", "ButtonResetEasyPassword": "重設PIN碼", - "ButtonProfile": "檔案", "ButtonPause": "暫停", "ButtonParentalControl": "家長控制", "ButtonOpen": "開啟", "ButtonNetwork": "網絡", "ButtonMore": "更多", "ButtonInfo": "資訊", - "ButtonGuide": "教學", "ButtonGotIt": "了解", "ButtonFullscreen": "全螢幕", "ButtonForgotPassword": "忘記密碼", diff --git a/src/strings/zh-tw.json b/src/strings/zh-tw.json index 52d960ba5c..7b3a03a9ff 100644 --- a/src/strings/zh-tw.json +++ b/src/strings/zh-tw.json @@ -9,14 +9,11 @@ "ButtonCancel": "取消", "ButtonForgotPassword": "忘記密碼", "ButtonGotIt": "我知道了", - "ButtonGuide": "節目表", "ButtonOk": "確定", "ButtonQuickStartGuide": "快速入門指南", "ButtonRefreshGuideData": "更新電視節目表", "ButtonRemove": "清除", - "ButtonResetPassword": "重設密碼", "ButtonSelectDirectory": "選擇目錄", - "ButtonSelectServer": "選擇伺服器", "ButtonSignIn": "登入", "ButtonSignOut": "登出", "ConfirmDeleteItem": "刪除此項目時,也會一併從檔案系統及媒體櫃中刪除。確定要刪除嗎?", @@ -134,37 +131,24 @@ "NewCollectionNameExample": "例子:星際大戰合集", "MessageNoNextUpItems": "沒有找到。開始看你的節目!", "NoSubtitleSearchResultsFound": "無結果。", - "OptionAlbum": "專輯", - "OptionAlbumArtist": "專輯歌手", "OptionAllowBrowsingLiveTv": "允許使用電視", "OptionAllowManageLiveTv": "允許管理電視節目錄影", "OptionAllowUserToManageServer": "允許該使用者管理伺服器", - "OptionArtist": "歌手", - "OptionAscending": "升序", "OptionBlockLiveTvChannels": "電視頻道", "OptionBluray": "藍光", "OptionCommunityRating": "社區評分", - "OptionContinuing": "持續", "OptionCriticRating": "影評人評價", "OptionDaily": "每日", "OptionDateAdded": "新增日期", "OptionDatePlayed": "播放日期", - "OptionDescending": "降序", "OptionDisableUser": "停用該使用者", "OptionDisableUserHelp": "被停用的使用者將被伺服器封鎖,現有的連線也將中斷。", "OptionDislikes": "不喜歡", - "OptionDownloadArtImage": "圖像", - "OptionDownloadBackImage": "媒體包裝背面", - "OptionDownloadBoxImage": "媒體包裝", - "OptionDownloadDiscImage": "光碟", "OptionDownloadLogoImage": "標誌", "OptionDownloadMenuImage": "菜單", "OptionDownloadPrimaryImage": "主要圖", "OptionDownloadThumbImage": "縮圖", "OptionDvd": "DVD", - "OptionEnded": "完結", - "OptionFavorite": "我的最愛", - "OptionHasSubtitles": "字幕", "OptionHasThemeSong": "主題曲", "OptionHasThemeVideo": "主題影片", "OptionHideUser": "在登入頁面隱藏此使用者", @@ -178,15 +162,12 @@ "OptionOnInterval": "每時段", "OptionParentalRating": "家長評級", "OptionPlayCount": "播放次數", - "OptionPlayed": "已播放", "OptionPremiereDate": "首映日期", "OptionResumable": "可恢復", - "OptionRuntime": "播放長度", "OptionSpecialEpisode": "特集", "OptionTrackName": "曲目名稱", "OptionTvdbRating": "TVDB 評分", "OptionUnairedEpisode": "還未發佈的單元", - "OptionUnplayed": "未播放", "OptionWakeFromSleep": "從休眠中回復", "OptionWeekly": "每週", "OriginalAirDateValue": "原始播出日期:{0}", @@ -222,10 +203,8 @@ "TabMusic": "音樂", "TabMyPlugins": "我的附加元件", "TabNetworks": "網路", - "TabProfile": "設定", "TabProfiles": "設定", "TabServer": "伺服器", - "TabSettings": "設定", "TabUpcoming": "接下來", "TellUsAboutYourself": "介紹一下自己", "ThisWizardWillGuideYou": "此精靈將帶你完成安裝過程,開始之前,請選擇您慣用的語言。", @@ -304,16 +283,13 @@ "ButtonParentalControl": "家長控制", "ButtonPause": "暫停", "ButtonPreviousTrack": "上一首", - "ButtonProfile": "個人首頁", "ButtonRename": "重新命名", "ButtonResetEasyPassword": "重設簡單 PIN 碼", - "ButtonRestart": "重新啟動", "ButtonResume": "繼續播放", "ButtonRevoke": "撤銷", "ButtonScanAllLibraries": "掃描所有媒體庫", "ButtonSelectView": "選擇顯示方式", "ButtonSend": "傳送", - "ButtonSettings": "設定", "ButtonShutdown": "關機", "ButtonStart": "開始", "ButtonStop": "停止", @@ -556,7 +532,6 @@ "HeaderSeriesOptions": "系列選項", "HeaderSeriesStatus": "系列狀態", "HeaderServerSettings": "伺服器設定", - "HeaderSettings": "設定", "HeaderSetupLibrary": "設置你的媒體庫", "HeaderSortBy": "分類", "HeaderSortOrder": "分類順序", @@ -818,13 +793,9 @@ "Off": "關閉", "OptionAdminUsers": "管理員", "OptionAllowRemoteControlOthers": "允許其他使用者遠端控制", - "OptionAuto": "自動", - "OptionBlockBooks": "書", "OptionBlockChannelContent": "網路頻道內容", - "OptionHasTrailer": "預告", "OptionNone": "無", "OptionPosterCard": "海報卡片", - "OptionProfileAudio": "音訊", "OptionProfileVideo": "影片", "OptionProfileVideoAudio": "影片與圖片", "OptionReleaseDate": "釋出日期", @@ -849,7 +820,6 @@ "MessageConfirmRestart": "您確定要重新啟動 Jellyfin 嗎?", "Metadata": "中繼資料", "OptionAllUsers": "所有使用者", - "OptionHomeVideos": "圖片", "OptionPoster": "海報", "OptionProfilePhoto": "圖片", "OptionRegex": "正則表達式", @@ -893,7 +863,6 @@ "Normal": "正常", "OptionAllowContentDownloading": "允許下載及同步媒體", "OptionAllowLinkSharing": "允許分享到社群媒體", - "OptionBlockMusic": "音樂", "OptionBlockTrailers": "預告", "OptionBlockTvShows": "電視節目", "OptionList": "清單", @@ -966,7 +935,6 @@ "Mute": "靜音", "MessageConfirmShutdown": "你確定要關閉伺服器嗎?", "Never": "從不", - "OptionBlockMovies": "電影", "CopyStreamURLSuccess": "連結複製成功。", "PerfectMatch": "最佳配對", "PictureInPicture": "浮窗播放", @@ -1011,7 +979,6 @@ "LabelNewsCategories": "新分類:", "LabelValue": "數值:", "OptionBanner": "橫幅", - "OptionDownloadBannerImage": "橫幅", "OptionEnableAccessToAllChannels": "允許存取所有頻道", "OptionEnableAccessToAllLibraries": "允許存取所有媒體庫", "OptionEnableForAllTuners": "開啟所有調諧器", From d9f286124d5d1645abba0d17d303f8158f3f5d33 Mon Sep 17 00:00:00 2001 From: dkanada Date: Mon, 24 Aug 2020 08:39:26 +0900 Subject: [PATCH 162/285] more string updates --- src/components/filterdialog/filterdialog.template.html | 2 +- .../imageOptionsEditor/imageOptionsEditor.template.html | 8 ++++---- src/controllers/dashboard/encodingsettings.html | 2 +- src/controllers/dashboard/metadatanfo.js | 2 +- src/controllers/dashboard/users/userparentalcontrol.js | 8 ++++---- src/controllers/itemDetails/index.html | 4 ++-- src/controllers/itemDetails/index.js | 2 +- src/controllers/movies/moviecollections.js | 2 +- src/controllers/movies/movies.js | 2 +- src/controllers/movies/movietrailers.js | 2 +- src/controllers/music/musicalbums.js | 2 +- src/controllers/shows/episodes.js | 2 +- src/controllers/shows/tvshows.js | 2 +- src/scripts/itembynamedetailpage.js | 2 +- src/strings/en-us.json | 3 +++ 15 files changed, 24 insertions(+), 21 deletions(-) diff --git a/src/components/filterdialog/filterdialog.template.html b/src/components/filterdialog/filterdialog.template.html index e98c71bf39..03aba5ee35 100644 --- a/src/components/filterdialog/filterdialog.template.html +++ b/src/components/filterdialog/filterdialog.template.html @@ -76,7 +76,7 @@
    diff --git a/src/controllers/dashboard/encodingsettings.html b/src/controllers/dashboard/encodingsettings.html index 2622841b71..fb89fd298a 100644 --- a/src/controllers/dashboard/encodingsettings.html +++ b/src/controllers/dashboard/encodingsettings.html @@ -11,7 +11,7 @@
    - ${OptionProfilePhoto} + ${Photo}
    @@ -144,19 +144,19 @@
    -
    ${LabelAlbumArtMaxWidthHelp}
    +
    ${LabelAlbumArtMaxResHelp}
    -
    ${LabelAlbumArtMaxHeightHelp}
    +
    ${LabelAlbumArtMaxResHelp}
    -
    ${LabelIconMaxWidthHelp}
    +
    ${LabelIconMaxResHelp}
    -
    ${LabelIconMaxHeightHelp}
    +
    ${LabelIconMaxResHelp}
    @@ -280,8 +280,8 @@
    @@ -328,8 +328,8 @@
    @@ -404,8 +404,8 @@
    @@ -434,8 +434,8 @@

    ${HeaderCodecProfileHelp}

    @@ -463,8 +463,8 @@
    diff --git a/src/controllers/dashboard/library.js b/src/controllers/dashboard/library.js index d2bf379ebc..0abda33b6e 100644 --- a/src/controllers/dashboard/library.js +++ b/src/controllers/dashboard/library.js @@ -218,29 +218,29 @@ import 'emby-itemrefreshindicator'; name: '', value: '' }, { - name: globalize.translate('FolderTypeMovies'), + name: globalize.translate('Movies'), value: 'movies', message: getLink('MovieLibraryHelp', 'https://docs.jellyfin.org/general/server/media/movies.html') }, { - name: globalize.translate('FolderTypeMusic'), + name: globalize.translate('TabMusic'), value: 'music', message: getLink('MusicLibraryHelp', 'https://docs.jellyfin.org/general/server/media/music.html') }, { - name: globalize.translate('FolderTypeTvShows'), + name: globalize.translate('Shows'), value: 'tvshows', message: getLink('TvLibraryHelp', 'https://docs.jellyfin.org/general/server/media/shows.html') }, { - name: globalize.translate('FolderTypeBooks'), + name: globalize.translate('Books'), value: 'books', message: getLink('BookLibraryHelp', 'https://docs.jellyfin.org/general/server/media/books.html') }, { name: globalize.translate('Photos'), value: 'homevideos' }, { - name: globalize.translate('FolderTypeMusicVideos'), + name: globalize.translate('MusicVideos'), value: 'musicvideos' }, { - name: globalize.translate('FolderTypeUnset'), + name: globalize.translate('Other'), value: 'mixed', message: globalize.translate('MessageUnsetContentHelp') }]; @@ -326,7 +326,7 @@ import 'emby-itemrefreshindicator'; let typeName = getCollectionTypeOptions().filter(function (t) { return t.value == virtualFolder.CollectionType; })[0]; - typeName = typeName ? typeName.name : globalize.translate('FolderTypeUnset'); + typeName = typeName ? typeName.name : globalize.translate('Other'); html += "
    "; if (virtualFolder.showType === false) { diff --git a/src/strings/en-us.json b/src/strings/en-us.json index 894a8aaefb..a6df7052d1 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -244,6 +244,7 @@ "General": "General", "Genre": "Genre", "Genres": "Genres", + "Other": "Other", "GroupBySeries": "Group by series", "GroupVersions": "Group versions", "GuestStar": "Guest star", @@ -467,6 +468,7 @@ "LabelAirsBeforeEpisode": "Airs before episode:", "LabelAirsBeforeSeason": "Airs before season:", "LabelAlbum": "Album:", + "LabelAlbumArtMaxResHelp": "Maximum resolution of album art exposed via the upnp:albumArtURI property.", "LabelAlbumArtHelp": "PN used for album art, within the dlna:profileID attribute on upnp:albumArtURI. Some devices require a specific value, regardless of the size of the image.", "LabelAlbumArtMaxHeight": "Album art max height:", "LabelAlbumArtMaxHeightHelp": "Max resolution of album art exposed via upnp:albumArtURI.", @@ -593,6 +595,7 @@ "LabelHomeScreenSectionValue": "Home screen section {0}:", "LabelHttpsPort": "Local HTTPS port number:", "LabelHttpsPortHelp": "The TCP port number for the HTTPS server.", + "LabelIconMaxResHelp": "Maximum resolution of icons exposed via the upnp:icon property.", "LabelIconMaxHeight": "Icon maximum height:", "LabelIconMaxHeightHelp": "Maximum resolution of icons exposed via upnp:icon.", "LabelIconMaxWidth": "Icon maximum width:", @@ -1115,6 +1118,7 @@ "PerfectMatch": "Perfect match", "Person": "Person", "Photos": "Photos", + "Photo": "Photo", "PictureInPicture": "Picture in picture", "PinCodeResetComplete": "The pin code has been reset.", "PinCodeResetConfirmation": "Are you sure you wish to reset the pin code?", @@ -1337,6 +1341,7 @@ "ValueVideoCodec": "Video Codec: {0}", "Vertical": "Vertical", "Video": "Video", + "VideoAudio": "Video Audio", "ViewAlbum": "View album", "ViewAlbumArtist": "View album artist", "ViewPlaybackInfo": "View playback info", From a1a149178e6b168d53e7f1989c02bd78096c5ec7 Mon Sep 17 00:00:00 2001 From: dkanada Date: Wed, 2 Sep 2020 14:58:56 +0900 Subject: [PATCH 257/285] update translation files --- src/strings/ar.json | 13 ------------- src/strings/bg-bg.json | 13 ------------- src/strings/ca.json | 8 -------- src/strings/cs.json | 13 ------------- src/strings/da.json | 13 ------------- src/strings/de.json | 13 ------------- src/strings/el.json | 11 ----------- src/strings/en-gb.json | 13 ------------- src/strings/en-us.json | 13 ------------- src/strings/es-ar.json | 13 ------------- src/strings/es-mx.json | 13 ------------- src/strings/es.json | 13 ------------- src/strings/es_419.json | 13 ------------- src/strings/fa.json | 13 ------------- src/strings/fi.json | 9 --------- src/strings/fr-ca.json | 1 - src/strings/fr.json | 13 ------------- src/strings/gsw.json | 5 ----- src/strings/he.json | 9 --------- src/strings/hr.json | 12 ------------ src/strings/hu.json | 13 ------------- src/strings/id.json | 6 ------ src/strings/is-is.json | 6 ------ src/strings/it.json | 13 ------------- src/strings/ja.json | 13 ------------- src/strings/kk.json | 13 ------------- src/strings/ko.json | 13 ------------- src/strings/lt-lt.json | 8 -------- src/strings/lv.json | 13 ------------- src/strings/ms.json | 1 - src/strings/nb.json | 13 ------------- src/strings/nl.json | 13 ------------- src/strings/pl.json | 13 ------------- src/strings/pr.json | 2 -- src/strings/pt-br.json | 13 ------------- src/strings/pt-pt.json | 13 ------------- src/strings/pt.json | 13 ------------- src/strings/ro.json | 13 ------------- src/strings/ru.json | 13 ------------- src/strings/sk.json | 13 ------------- src/strings/sl-si.json | 13 ------------- src/strings/sv.json | 13 ------------- src/strings/ta.json | 13 ------------- src/strings/tr.json | 9 --------- src/strings/uk.json | 4 ---- src/strings/vi.json | 10 ---------- src/strings/zh-cn.json | 13 ------------- src/strings/zh-hk.json | 6 ------ src/strings/zh-tw.json | 13 ------------- 49 files changed, 536 deletions(-) diff --git a/src/strings/ar.json b/src/strings/ar.json index 67845cc458..27966775fc 100644 --- a/src/strings/ar.json +++ b/src/strings/ar.json @@ -87,12 +87,6 @@ "FileNotFound": "الملف غير موجود.", "FileReadCancelled": "تم الغاء قراءة الملف.", "FileReadError": "حدث خطأ بقراءة الملف.", - "FolderTypeBooks": "كتب", - "FolderTypeMovies": "أفلام", - "FolderTypeMusic": "موسيقى", - "FolderTypeMusicVideos": "الفيديوهات الموسيقية", - "FolderTypeTvShows": "تلفاز", - "FolderTypeUnset": "غير مخصص (خليط محتويات)", "Friday": "الجمعة", "Fullscreen": "الشاشة كاملة", "GuideProviderLogin": "تسجيل الدخول", @@ -242,9 +236,7 @@ "LabelAlbum": "الألبوم:", "LabelAlbumArtHelp": "PN المستخدمة في رسومات الألبوم، داخل سمة dlna:profileID في upnp:albumArtURI. بعض الأجهزة تحتاج قيمة محددة، مهما كان حجم الصورة.", "LabelAlbumArtMaxHeight": "الارتفاع الأقصى لرسومات الألبوم:", - "LabelAlbumArtMaxHeightHelp": "الدقة القصوى لرسومات الألبوم المظهّرة عبر سمة upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "العرض الأقصى لرسوم الألبوم:", - "LabelAlbumArtMaxWidthHelp": "الدقة القصوى لرسومات الألبوم المظهّرة عبر سمة upnp:albumArtURI.", "LabelAlbumArtPN": "رسومات الألبوم PN:", "LabelAlbumArtists": "فنانو الألبومات:", "LabelAllowHWTranscoding": "السماح بالتشفير البيني بعتاد الحاسب", @@ -326,9 +318,7 @@ "LabelHttpsPort": "رقم منفذ https المحتلي:", "LabelHttpsPortHelp": "رقم منفذ tcp المتوجب على بروتوكول https أن يرتبط من خلاله في خادم أمبي.", "LabelIconMaxHeight": "الارتفاع الأقصى للأيقونة.", - "LabelIconMaxHeightHelp": "الدقة القصوى للأيقونة المظهّرة عبر سمة upnp:icon.", "LabelIconMaxWidth": "العرض الأقصى للأيقونة:", - "LabelIconMaxWidthHelp": "الدقة القصوى لرسومات الألبوم المظهّرة عبر سمة upnp:icon.", "LabelImageFetchersHelp": "مكّن ورتّب جالبات الصور التي تفضلها حسب أولوية التفضيل.", "LabelImageType": "صيغة الصورة:", "LabelImportOnlyFavoriteChannels": "أحصر العرض على القنوات المعلّمة كمفضلات", @@ -624,9 +614,6 @@ "OptionPlainVideoItemsHelp": "عند التفعيل، فإن جميع الفيديوهات ستُمثّل في مخطط DIDL كالتالي: \"كائن.عنصر.عنصر_فيديو\" بدلاً من النوع الأكثر تخصيصاً كما يلي \"كائن.عنصر.عنصر_فيديو.فيلم\".", "OptionPlayCount": "مرات التشغيل", "OptionPremiereDate": "تاريخ العرض", - "OptionProfilePhoto": "صور", - "OptionProfileVideo": "الفيديو", - "OptionProfileVideoAudio": "صوتي مرئي", "OptionProtocolHls": "البت الحي عبر http", "OptionReleaseDate": "تاريخ الإنتاج", "OptionReportByteRangeSeekingWhenTranscoding": "قرّر ما إذا كان الخادم يدعم البحث عن البايت حال التشفير", diff --git a/src/strings/bg-bg.json b/src/strings/bg-bg.json index b26c68f993..73180bb247 100644 --- a/src/strings/bg-bg.json +++ b/src/strings/bg-bg.json @@ -96,12 +96,6 @@ "Favorites": "Любими", "File": "Файл", "Filters": "Филтри", - "FolderTypeBooks": "Книги", - "FolderTypeMovies": "Филми", - "FolderTypeMusic": "Музика", - "FolderTypeMusicVideos": "Музикални клипове", - "FolderTypeTvShows": "Сериали", - "FolderTypeUnset": "Смесено съдържание", "FormatValue": "Формат: {0}", "Friday": "Петък", "Fullscreen": "Цял екран", @@ -484,9 +478,6 @@ "OptionPlainVideoItems": "Показвай всички видео клипове като обикновени", "OptionPlayCount": "Брой пускания", "OptionPremiereDate": "Дата на премиера", - "OptionProfilePhoto": "Снимка", - "OptionProfileVideo": "Видео", - "OptionProfileVideoAudio": "Видео Аудио", "OptionReleaseDate": "Дата на издаване", "OptionRequirePerfectSubtitleMatch": "Да се изтеглят само субтитри, които пасват идеално на файловете ми", "OptionResumable": "Възобновляемост", @@ -903,8 +894,6 @@ "LabelAllowedRemoteAddressesMode": "Режим на филтъра за външни ИП адреси:", "LabelAllowedRemoteAddresses": "Филтър за външни ИП адреси:", "LabelAllowHWTranscoding": "Разреши хардуерно транскодиране", - "LabelAlbumArtMaxWidthHelp": "Максимална резолюция на обложките за албуми показани чрез upnp:albumArtURI.", - "LabelAlbumArtMaxHeightHelp": "Максимална резолюция на обложките за албуми показани чрез upnp:albumArtURI.", "LabelAlbumArtMaxHeight": "Максимална височина на обложките за албуми:", "LabelAlbumArtHelp": "PN се използва за обложки на албуми dlna:profileID attribute on upnp:albumArtURI.Някои устройства се нуждаят от определена стойност ,независимо от размера на картината.", "LabelAirsBeforeSeason": "Ще бъде излъчен преди сезон:", @@ -998,9 +987,7 @@ "LabelInNetworkSignInWithEasyPassword": "Включи вписване в мрежата с лесен пин код", "LabelImportOnlyFavoriteChannels": "Ограничи до канали обозначени ,като любими", "LabelImageFetchersHelp": "Включете и подредете любимите ви услуги за извличане на изображения по важност.", - "LabelIconMaxWidthHelp": "Максимална резолюция на иконите показани чрез upnp:icon.", "LabelIconMaxWidth": "Максимална ширина на икона:", - "LabelIconMaxHeightHelp": "Максимална резолюция на иконите показани чрез upnp:icon.", "LabelIconMaxHeight": "Максимална височина на икона:", "LabelHardwareAccelerationTypeHelp": "Хардуерното ускорение се нуждае от допълнителни настройки.", "LabelEncoderPreset": "Шаблон за енкодиране чрез H264 и H265 :", diff --git a/src/strings/ca.json b/src/strings/ca.json index 0c660ca028..7c2356e87e 100644 --- a/src/strings/ca.json +++ b/src/strings/ca.json @@ -84,12 +84,6 @@ "FileNotFound": "Arxiu no trobat.", "FileReadCancelled": "La lectura de l'arxiu ha estat cancel·lada.", "FileReadError": "S'ha produït un error en llegir el fitxer.", - "FolderTypeBooks": "Llibres", - "FolderTypeMovies": "Pel·lícules", - "FolderTypeMusic": "Música", - "FolderTypeMusicVideos": "Vídeos musicals", - "FolderTypeTvShows": "TV", - "FolderTypeUnset": "No definit (contingut mesclat)", "Friday": "Divendres", "Fullscreen": "Pantalla completa", "Genres": "Gèneres", @@ -465,8 +459,6 @@ "OptionOnInterval": "En un interval", "OptionParentalRating": "Classificació Parental", "OptionPlayCount": "Nombre de Reproduccions", - "OptionProfilePhoto": "Foto", - "OptionProfileVideo": "Vídeo", "OptionReleaseDate": "Data de Publicació", "OptionResumable": "Continuable", "OptionSaveMetadataAsHidden": "Desa les metadades i les imatges com a fitxers ocults", diff --git a/src/strings/cs.json b/src/strings/cs.json index 6623993c6a..98000ccc87 100644 --- a/src/strings/cs.json +++ b/src/strings/cs.json @@ -162,12 +162,6 @@ "FileNotFound": "Soubor nebyl nalezen.", "FileReadCancelled": "Čtení souboru bylo zrušeno.", "FileReadError": "Nastala chyba při načítání souboru.", - "FolderTypeBooks": "Knihy", - "FolderTypeMovies": "Filmy", - "FolderTypeMusic": "Hudba", - "FolderTypeMusicVideos": "Hudební videa", - "FolderTypeTvShows": "TV", - "FolderTypeUnset": "Nenastaveno (smíšený obsah)", "FormatValue": "Formát: {0}", "Friday": "Pátek", "Fullscreen": "Celá obrazovka", @@ -364,9 +358,7 @@ "LabelAirsBeforeSeason": "Vysíláno před sezónou:", "LabelAlbumArtHelp": "PN používá obrázek alba v rámci technologie dlna:profileID atributu upnp:albumArtURI. Někteří klienti vyžadují konkrétní hodnoty, bez ohledu na velikost obrázku.", "LabelAlbumArtMaxHeight": "Maximální výška alba:", - "LabelAlbumArtMaxHeightHelp": "Maximální rozlišení alb nabízených prostřednictvím upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Maximální výška alba:", - "LabelAlbumArtMaxWidthHelp": "Maximální rozlišení alb nabízených prostřednictvím upnp:albumArtURI.", "LabelAlbumArtPN": "Alba PN:", "LabelAlbumArtists": "Alba umělce:", "LabelAllowHWTranscoding": "Povolit hardwarové překódování", @@ -458,9 +450,7 @@ "LabelHttpsPort": "Lokální HTTPS port:", "LabelHttpsPortHelp": "Číslo portu TCP serveru HTTPS.", "LabelIconMaxHeight": "Maximální výška ikon:", - "LabelIconMaxHeightHelp": "Maximální rozlišení ikon nabízené prostřednictvím upnp:icon.", "LabelIconMaxWidth": "Maximální šířka ikon:", - "LabelIconMaxWidthHelp": "Maximální rozlišení ikon nabízené prostřednictvím upnp:icon.", "LabelIdentificationFieldHelp": "Bez rozlišení velikosti písmen podřetězců nebo regulárních výrazů.", "LabelImageFetchersHelp": "Povolí řazení stahovačů obrázků dle priority.", "LabelImageType": "Typ obrázku:", @@ -811,7 +801,6 @@ "OptionPlainVideoItemsHelp": "Všechna videa jsou prezentována v DIDL jako \"object.item.videoItem\" místo konkrétnějšího typu, například \"object.item.videoItem.movie\".", "OptionPlayCount": "Počet přehrání", "OptionPremiereDate": "Datum premiéry", - "OptionProfilePhoto": "Fotografie", "OptionRegex": "Regexp", "OptionReleaseDate": "Datum vydání", "OptionReportByteRangeSeekingWhenTranscoding": "Hlásit, že server podporuje vyhledávání bajtů při překódování", @@ -1169,8 +1158,6 @@ "OptionLoginAttemptsBeforeLockout": "Určuje, kolik chybných pokusů o přihlášení lze provést před zablokováním.", "OptionLoginAttemptsBeforeLockoutHelp": "0 znamená zdědění výchozí hodnoty 3 pokusů pro běžné uživatele a 5 pro administrátory. Nastavení na -1 deaktivuje funkci.", "OptionMax": "Max", - "OptionProfileVideo": "Video", - "OptionProfileVideoAudio": "Video Audio", "OptionProtocolHls": "Přímý přenos z internetu", "OptionProtocolHttp": "HTTP", "OptionRequirePerfectSubtitleMatchHelp": "Vyžadování dokonalé shody filtruje titulky tak, aby obsahovaly pouze ty, které byly testovány a ověřeny s vaším přesným videosouborem. Zrušení zaškrtnutí tohoto políčka zvýší pravděpodobnost stahování titulků, ale zvýší pravděpodobnost chybného nebo nesprávného textu titulků.", diff --git a/src/strings/da.json b/src/strings/da.json index 3989da7ecb..a63a94b2ce 100644 --- a/src/strings/da.json +++ b/src/strings/da.json @@ -134,12 +134,6 @@ "FileNotFound": "Filen blev ikke fundet.", "FileReadCancelled": "Læsning af filen er annulleret.", "FileReadError": "Der opstod en fejl i forsøget på at læse filen.", - "FolderTypeBooks": "Bøger", - "FolderTypeMovies": "Film", - "FolderTypeMusic": "Musik", - "FolderTypeMusicVideos": "Musik Videoer", - "FolderTypeTvShows": "TV", - "FolderTypeUnset": "Blandet Indhold", "Friday": "Fredag", "Fullscreen": "Fuldskærm", "General": "Generel", @@ -328,9 +322,7 @@ "LabelAirsBeforeSeason": "Sendes før sæson:", "LabelAlbumArtHelp": "PN til album art, i dlna:profileID attributten på upnp:albumArtURI. Nogle enheder påkræver en specifik værdi uanset størrelsen på billedet.", "LabelAlbumArtMaxHeight": "Album billede max. højde:", - "LabelAlbumArtMaxHeightHelp": "Maksimumopløsningen på album billede der bliver vist med upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Album art max. bredde:", - "LabelAlbumArtMaxWidthHelp": "Maksimumopløsningen på album billede der bliver vist med upnp:albumArtURI.", "LabelAlbumArtPN": "Album billede PN:", "LabelAlbumArtists": "Albumartister:", "LabelAllowHWTranscoding": "Tillad hardware-omkodning", @@ -421,9 +413,7 @@ "LabelHttpsPort": "Lokalt HTTPS portnummer:", "LabelHttpsPortHelp": "Det TCP-portnummer, som Jellyfins HTTPS-server skal benytte.", "LabelIconMaxHeight": "Maximal højde af ikoner:", - "LabelIconMaxHeightHelp": "Maksimalopløsningen af ikoner, der bliver vist med upnp:icon.", "LabelIconMaxWidth": "Maximal bredde på ikoner:", - "LabelIconMaxWidthHelp": "Maksimalopløsningen på ikoner der bliver vist med upnp:icon.", "LabelIdentificationFieldHelp": "En case-insensitive substring eller regex ekspression.", "LabelImageFetchersHelp": "Aktiver og ranger dine fortrukne billede-hentere i en prioriteret rækkefølge.", "LabelImageType": "Billedtype:", @@ -754,8 +744,6 @@ "OptionPlainVideoItemsHelp": "Når dette er aktiveret, bliver alle videoer vist i DIDL som \"object.item.videoItem\" i stedet for mere specifikke typer, som f. eks. \"object.item.videoItem.movie\".", "OptionPlayCount": "Gange afspillet", "OptionPremiereDate": "Præmieredato", - "OptionProfilePhoto": "Foto", - "OptionProfileVideoAudio": "Video lyd", "OptionReleaseDate": "Udgivelsesdato", "OptionReportByteRangeSeekingWhenTranscoding": "Angiv at serveren understøtter bytes øgning nrdeå r transkodes", "OptionReportByteRangeSeekingWhenTranscodingHelp": "Dette er krævet for nogle enheder der ikke er særligt gode til tidssøgning.", @@ -1130,7 +1118,6 @@ "OptionIsHD": "HD", "OptionIsSD": "SD", "OptionLikes": "Favoritter", - "OptionProfileVideo": "Video", "OptionProtocolHls": "Web Live Streaming", "OptionProtocolHttp": "Web", "OptionRegex": "Regex", diff --git a/src/strings/de.json b/src/strings/de.json index 09b6ae3820..1f1a7a424d 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -190,11 +190,6 @@ "FileReadCancelled": "Dateiimport wurde abgebrochen.", "FileReadError": "Beim Lesen der Datei ist ein Fehler aufgetreten.", "Filters": "Filter", - "FolderTypeBooks": "Bücher", - "FolderTypeMovies": "Filme", - "FolderTypeMusic": "Musik", - "FolderTypeMusicVideos": "Musikvideos", - "FolderTypeUnset": "Keine Auswahl (gemischter Inhalt)", "Folders": "Verzeichnisse", "Friday": "Freitag", "Fullscreen": "Vollbild", @@ -405,9 +400,7 @@ "LabelAirsBeforeSeason": "Ausstrahlungen vor Staffel:", "LabelAlbumArtHelp": "Die genutzte PN für Alben-Fankunst innerhalb der dlna:profileID-Eigenschaften auf upnp:albumArtURL. Manche Abspielgeräte benötigen einen bestimmten Wert, unabhängig von der Bildgröße.", "LabelAlbumArtMaxHeight": "Maximale Höhe für Album Art:", - "LabelAlbumArtMaxHeightHelp": "Maximale Auflösung für durch UPnP übermittelte Album Art:albumArtURI.", "LabelAlbumArtMaxWidth": "Maximale Breite für Album Art:", - "LabelAlbumArtMaxWidthHelp": "Maximale Auflösung für durch UPnP übermittelte Album Art:albumArtURI.", "LabelAlbumArtPN": "Alben-Cover PN:", "LabelAlbumArtists": "Alben Interpreten:", "LabelAllowHWTranscoding": "Erlaube Hardware Transkodierung", @@ -511,9 +504,7 @@ "LabelHttpsPort": "Lokale HTTPS-Portnummer:", "LabelHttpsPortHelp": "Die TCP-Portnummer für den HTTPS-Server.", "LabelIconMaxHeight": "Maximale Iconhöhe:", - "LabelIconMaxHeightHelp": "Maximale Auflösung für durch UPnP übermittelte Icons:icon.", "LabelIconMaxWidth": "Maximale Iconbreite:", - "LabelIconMaxWidthHelp": "Maximale Auflösung der Icons, die über upnp:icon angezeigt werden.", "LabelIdentificationFieldHelp": "Ein Teilstring oder Regex Ausdruck, der keine Groß- und Kleinschreibung berücksichtigt.", "LabelImageFetchersHelp": "Aktiviere und ordne deine bevorzugten Bildquellen nach Präferenzen.", "LabelImageType": "Bildtyp:", @@ -1116,7 +1107,6 @@ "Desktop": "Desktop", "Download": "Download", "Extras": "Extras", - "FolderTypeTvShows": "TV Serien", "FormatValue": "Format: {0}", "Genre": "Genre", "Genres": "Genres", @@ -1164,8 +1154,6 @@ "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", "OptionIsHD": "HD", "OptionIsSD": "SD", - "OptionProfilePhoto": "Foto", - "OptionProfileVideo": "Video", "OptionProtocolHls": "HTTP-Live-Streaming", "OptionProtocolHttp": "HTTP", "OptionRegex": "Reguläre Ausdrücke", @@ -1188,7 +1176,6 @@ "LabelTag": "Tag:", "LabelTagline": "Markierungen:", "OptionMax": "Maximum", - "OptionProfileVideoAudio": "Video Audio", "OptionSubstring": "Teilzeichenfolge", "Premiere": "Premiere", "Smart": "Schlau", diff --git a/src/strings/el.json b/src/strings/el.json index 6c76672225..fe25734f1b 100644 --- a/src/strings/el.json +++ b/src/strings/el.json @@ -184,12 +184,6 @@ "FileReadCancelled": "Η ανάγνωση αρχείου ακυρώθηκε.", "FileReadError": "Παρουσιάστηκε σφάλμα κατά την ανάγνωση του αρχείου.", "Filters": "Φίλτρα", - "FolderTypeBooks": "Βιβλία", - "FolderTypeMovies": "Ταινίες", - "FolderTypeMusic": "Μουσική", - "FolderTypeMusicVideos": "Μουσικά Βίντεο", - "FolderTypeTvShows": "Τηλεόραση", - "FolderTypeUnset": "Αναίρεση (μικτό περιεχόμενο)", "Folders": "Φάκελοι", "FormatValue": "Φορμάτ: {0}", "Friday": "Παρασκευή", @@ -371,9 +365,7 @@ "LabelAlbum": "Άλμπουμ:", "LabelAlbumArtHelp": "PN που χρησιμοποιείται για την τέχνη άλμπουμ, μέσα στο χαρακτηριστικό dlna: profileID στο upnp: albumArtURI. Ορισμένες συσκευές απαιτούν συγκεκριμένη τιμή, ανεξάρτητα από το μέγεθος της εικόνας.", "LabelAlbumArtMaxHeight": "Μέγιστο ύψος του άλμπουμ art:", - "LabelAlbumArtMaxHeightHelp": "Μέγιστη ανάλυση του άλμπουμ art που εκτίθεται μέσω του upnp: albumArtURI.", "LabelAlbumArtMaxWidth": "Μέγιστο πλάτος του άλμπουμ art:", - "LabelAlbumArtMaxWidthHelp": "Μέγιστη ανάλυση του άλμπουμ art που εκτίθεται μέσω του upnp: albumArtURI.", "LabelAlbumArtPN": "PN άλμπουμ art:", "LabelAlbumArtists": "Καλλιτέχνες του 'Αλμπουμ:", "LabelAppName": "Όνομα App", @@ -464,9 +456,7 @@ "LabelHttpsPort": "Τοπικός αριθμός θύρας http:", "LabelHttpsPortHelp": "Ο αριθμός θύρας tcp που πρέπει να συνδέσει ο διακομιστής http του Jellyfin.", "LabelIconMaxHeight": "Μέγιστο ύψος εικονιδίου:", - "LabelIconMaxHeightHelp": "Μέγιστη ανάλυση των εικονιδίων που εκτίθενται μέσω του στοιχείου upnp: εικονίδιο.", "LabelIconMaxWidth": "Μέγιστο πλάτος εικονιδίου:", - "LabelIconMaxWidthHelp": "Μέγιστη ανάλυση των εικονιδίων που εκτίθενται μέσω του στοιχείου upnp: εικονίδιο.", "LabelImageType": "Τύπος Εικόνας:", "LabelInNetworkSignInWithEasyPassword": "Ενεργοποίηση εισόδου στο δίκτυο με τον εύκολο κωδικό PIN", "LabelInNetworkSignInWithEasyPasswordHelp": "Εάν ενεργοποιηθεί, θα μπορείτε να χρησιμοποιείται τον εύκολο κωδικό PIN για να συνδεθείτε στις εφαρμογές Jellyfin μέσα από το οικιακό σας δίκτυο. Ο κανονικός κωδικός πρόσβασής σας θα απαιτείται μόνο μακριά από το σπίτι. Εάν ο κωδικός PIN παραμείνει κενός, δεν θα χρειαστείτε κωδικό πρόσβασης στο οικιακό σας δίκτυο.", @@ -778,7 +768,6 @@ "OptionPlainVideoItemsHelp": "Εάν ενεργοποιηθεί, όλα τα βίντεο αντιπροσωπεύονται στο DIDL ως \"object.item.videoItem\" αντί για έναν πιο συγκεκριμένο τύπο, όπως \"object.item.videoItem.movie\".", "OptionPlayCount": "Φορές Αναπαραγωγής", "OptionPremiereDate": "Ημερομηνία πρεμιέρας", - "OptionProfileVideo": "Βίντεο", "OptionReleaseDate": "Ημερομηνία Προβολής", "OptionResumable": "Αναληπτέος", "OptionSaveMetadataAsHidden": "Αποθηκεύστε τα μεταδεδομένα και τις εικόνες ως κρυφά αρχεία", diff --git a/src/strings/en-gb.json b/src/strings/en-gb.json index 4ef5c732b4..234e900d61 100644 --- a/src/strings/en-gb.json +++ b/src/strings/en-gb.json @@ -241,12 +241,6 @@ "FileReadCancelled": "The file read has been cancelled.", "FileReadError": "An error occurred while reading the file.", "Filters": "Filters", - "FolderTypeBooks": "Books", - "FolderTypeMovies": "Movies", - "FolderTypeMusic": "Music", - "FolderTypeMusicVideos": "Music Videos", - "FolderTypeTvShows": "TV Shows", - "FolderTypeUnset": "Mixed Content", "FormatValue": "Format: {0}", "Friday": "Friday", "Fullscreen": "Full screen", @@ -538,7 +532,6 @@ "OptionReportByteRangeSeekingWhenTranscodingHelp": "This is required for some devices that don't time seek very well.", "OptionReportByteRangeSeekingWhenTranscoding": "Report that the server supports byte seeking when transcoding", "OptionRegex": "Regex", - "OptionProfileVideo": "Video", "OptionPremiereDate": "Premiere Date", "OptionPlayCount": "Play Count", "OptionPlainVideoItemsHelp": "All videos are represented in DIDL as \"object.item.videoItem\" instead of a more specific type, such as \"object.item.videoItem.movie\".", @@ -941,9 +934,7 @@ "LabelImageType": "Image type:", "LabelImageFetchersHelp": "Enable and rank your preferred image fetchers in order of priority.", "LabelIdentificationFieldHelp": "A case-insensitive substring or regex expression.", - "LabelIconMaxWidthHelp": "Maximum resolution of icons exposed via upnp:icon.", "LabelIconMaxWidth": "Icon maximum width:", - "LabelIconMaxHeightHelp": "Maximum resolution of icons exposed via upnp:icon.", "LabelIconMaxHeight": "Icon maximum height:", "LabelHttpsPortHelp": "The TCP port number for the HTTPS server.", "LabelHttpsPort": "Local HTTPS port number:", @@ -1019,8 +1010,6 @@ "LabelAllowHWTranscoding": "Allow hardware transcoding", "LabelAlbumArtists": "Album artists:", "LabelAlbumArtPN": "Album art PN:", - "LabelAlbumArtMaxWidthHelp": "Max resolution of album art exposed via upnp:albumArtURI.", - "LabelAlbumArtMaxHeightHelp": "Max resolution of album art exposed via upnp:albumArtURI.", "LabelAlbumArtHelp": "PN used for album art, within the dlna:profileID attribute on upnp:albumArtURI. Some devices require a specific value, regardless of the size of the image.", "LabelAirsBeforeSeason": "Airs before season:", "LabelAirsBeforeEpisode": "Airs before episode:", @@ -1068,7 +1057,6 @@ "Whitelist": "Whitelist", "ServerNameIsRestarting": "The server at {0} is restarting.", "OptionProtocolHls": "HTTP Live Streaming", - "OptionProfileVideoAudio": "Video Audio", "OneChannel": "One channel", "MediaInfoChannels": "Channels", "MediaInfoBitDepth": "Bit depth", @@ -1104,7 +1092,6 @@ "Studios": "Studios", "StopRecording": "Stop recording", "Sports": "Sports", - "OptionProfilePhoto": "Photo", "OptionPlainStorageFolders": "Display all folders as plain storage folders", "OptionDisableUserHelp": "The server will not allow any connections from this user. Existing connections will be abruptly terminated.", "OptionDateAdded": "Date Added", diff --git a/src/strings/en-us.json b/src/strings/en-us.json index a6df7052d1..b3e6a50fbf 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -231,12 +231,6 @@ "FileReadCancelled": "The file read has been canceled.", "FileReadError": "An error occurred while reading the file.", "Filters": "Filters", - "FolderTypeBooks": "Books", - "FolderTypeMovies": "Movies", - "FolderTypeMusic": "Music", - "FolderTypeMusicVideos": "Music Videos", - "FolderTypeTvShows": "TV Shows", - "FolderTypeUnset": "Mixed Content", "Folders": "Folders", "FormatValue": "Format: {0}", "Friday": "Friday", @@ -471,9 +465,7 @@ "LabelAlbumArtMaxResHelp": "Maximum resolution of album art exposed via the upnp:albumArtURI property.", "LabelAlbumArtHelp": "PN used for album art, within the dlna:profileID attribute on upnp:albumArtURI. Some devices require a specific value, regardless of the size of the image.", "LabelAlbumArtMaxHeight": "Album art max height:", - "LabelAlbumArtMaxHeightHelp": "Max resolution of album art exposed via upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Album art max width:", - "LabelAlbumArtMaxWidthHelp": "Max resolution of album art exposed via upnp:albumArtURI.", "LabelAlbumArtPN": "Album art PN:", "LabelAlbumArtists": "Album artists:", "LabelAllowHWTranscoding": "Allow hardware transcoding", @@ -597,9 +589,7 @@ "LabelHttpsPortHelp": "The TCP port number for the HTTPS server.", "LabelIconMaxResHelp": "Maximum resolution of icons exposed via the upnp:icon property.", "LabelIconMaxHeight": "Icon maximum height:", - "LabelIconMaxHeightHelp": "Maximum resolution of icons exposed via upnp:icon.", "LabelIconMaxWidth": "Icon maximum width:", - "LabelIconMaxWidthHelp": "Maximum resolution of icons exposed via upnp:icon.", "LabelIdentificationFieldHelp": "A case-insensitive substring or regex expression.", "LabelImageFetchersHelp": "Enable and rank your preferred image fetchers in order of priority.", "LabelImageType": "Image type:", @@ -1078,9 +1068,6 @@ "OptionPlainVideoItemsHelp": "All videos are represented in DIDL as \"object.item.videoItem\" instead of a more specific type, such as \"object.item.videoItem.movie\".", "OptionPlayCount": "Play Count", "OptionPremiereDate": "Premiere Date", - "OptionProfilePhoto": "Photo", - "OptionProfileVideo": "Video", - "OptionProfileVideoAudio": "Video Audio", "OptionProtocolHls": "HTTP Live Streaming", "OptionProtocolHttp": "HTTP", "OptionRandom": "Random", diff --git a/src/strings/es-ar.json b/src/strings/es-ar.json index 9b5420ac20..8f13415ab9 100644 --- a/src/strings/es-ar.json +++ b/src/strings/es-ar.json @@ -2,7 +2,6 @@ "ButtonQuickStartGuide": "Guía de inicio rápido", "ButtonSignOut": "Cerrar sesión", "EnableHardwareEncoding": "Habilitar la codificación de hardware", - "FolderTypeTvShows": "TV", "HeaderLatestEpisodes": "Últimos capítulos", "LabelFinish": "Terminar", "LabelYoureDone": "Ha terminado!", @@ -238,11 +237,6 @@ "FileReadCancelled": "La lectura del archivo se ha cancelado.", "FileReadError": "Ocurrió un error al leer el archivo.", "Filters": "Filtros", - "FolderTypeBooks": "Libros", - "FolderTypeMovies": "Películas", - "FolderTypeMusic": "Música", - "FolderTypeMusicVideos": "Vídeos Musicales", - "FolderTypeUnset": "Contenido Mixto", "FormatValue": "Formato: {0}", "Friday": "Viernes", "Fullscreen": "Pantalla Completa", @@ -515,9 +509,7 @@ "LabelImageType": "Tipo de imagen:", "LabelImageFetchersHelp": "Habilite y clasifique sus buscadores de imágenes preferidos en orden de prioridad.", "LabelIdentificationFieldHelp": "Una subcadena que no distingue entre mayúsculas y minúsculas o expresión regular.", - "LabelIconMaxWidthHelp": "Resolución máxima de íconos expuestos a través de comentarios UPnP.", "LabelIconMaxWidth": "Ancho máximo del ícono:", - "LabelIconMaxHeightHelp": "Resolución máxima de íconos expuestos a través de comentarios UPnP.", "LabelIconMaxHeight": "Altura máxima del ícono:", "LabelHttpsPortHelp": "El número de puerto TCP al que debe unirse el servidor HTTPS de Jellyfin.", "LabelHttpsPort": "Número de puerto HTTPS local:", @@ -604,9 +596,7 @@ "LabelCorruptedFrames": "Marcos corruptos:", "LabelCachePathHelp": "Especifique una ubicación personalizada para los archivos de caché del servidor, como las imágenes. Déjelo en blanco para usar el servidor predeterminado.", "LabelAppNameExample": "Ejemplo: Sickbeard, Sonarr", - "LabelAlbumArtMaxWidthHelp": "Resolución máxima de la carátula del álbum expuesta a través upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Ancho máximo de la carátula del álbum:", - "LabelAlbumArtMaxHeightHelp": "Resolución máxima de la carátula del álbum expuesta a través de upnp:albumArtURI.", "LabelAlbumArtMaxHeight": "Altura máxima de la carátula del álbum:", "ImportMissingEpisodesHelp": "Si está habilitado, la información sobre capítulos faltantes se importará a su base de datos Jellyfin y se mostrará dentro de temporadas y series. Esto puede causar escaneos de bibliotecas significativamente más largos.", "HeaderSyncPlayEnabled": "SyncPlay habilitado", @@ -1140,9 +1130,6 @@ "OptionRandom": "Aleatorio", "OptionProtocolHttp": "HTTP", "OptionProtocolHls": "Transmisión en vivo HTTP", - "OptionProfileVideoAudio": "Video Audio", - "OptionProfileVideo": "Video", - "OptionProfilePhoto": "Foto", "OptionPremiereDate": "Fecha de estreno", "OptionPlayCount": "Cuento de reproducciones", "OptionPlainVideoItemsHelp": "Si está habilitado, todos los videos se representan en DIDL como \"object.item.videoItem\" en lugar de un tipo más específico, como \"object.item.videoItem.movie\".", diff --git a/src/strings/es-mx.json b/src/strings/es-mx.json index b26683f77f..e7bc48b6af 100644 --- a/src/strings/es-mx.json +++ b/src/strings/es-mx.json @@ -201,12 +201,6 @@ "FileReadCancelled": "La lectura del archivo ha sido cancelada.", "FileReadError": "Ha ocurrido un error al leer el archivo.", "Filters": "Filtros", - "FolderTypeBooks": "Libros", - "FolderTypeMovies": "Películas", - "FolderTypeMusic": "Música", - "FolderTypeMusicVideos": "Videos musicales", - "FolderTypeTvShows": "Series de TV", - "FolderTypeUnset": "Contenido variado", "Folders": "Carpetas", "FormatValue": "Formato: {0}", "Friday": "Viernes", @@ -424,9 +418,7 @@ "LabelAlbum": "Álbum:", "LabelAlbumArtHelp": "PN usado para el arte del álbum, dentro del atributo dlna:profileID en upnp:albumArtURI. Algunos dispositivos requieren valores específicos, independientemente del tamaño de la imagen.", "LabelAlbumArtMaxHeight": "Altura máxima del arte del álbum:", - "LabelAlbumArtMaxHeightHelp": "Resolución máxima del arte del álbum expuesta vía upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Ancho máximo del arte del álbum:", - "LabelAlbumArtMaxWidthHelp": "Resolución máxima del arte del álbum expuesta vía upnp:albumArtURI.", "LabelAlbumArtPN": "PN del arte del álbum:", "LabelAlbumArtists": "Artistas del álbum:", "LabelAllowHWTranscoding": "Permitir transcodificación por hardware", @@ -533,9 +525,7 @@ "LabelHttpsPort": "Número de puerto local HTTPS:", "LabelHttpsPortHelp": "El número de puerto TCP al que el servidor HTTPS de Jellyfin debería enlazar.", "LabelIconMaxHeight": "Altura máxima del ícono:", - "LabelIconMaxHeightHelp": "Resolución máxima de los íconos expuestos vía upnp:icon.", "LabelIconMaxWidth": "Ancho máximo del ícono:", - "LabelIconMaxWidthHelp": "Resolución máxima de los íconos expuestos vía upnp:icon.", "LabelIdentificationFieldHelp": "Una subcadena indiferente a las mayúsculas y minúsculas o una expresión regular (regex).", "LabelImageFetchersHelp": "Habilita y prioriza tus recolectores de imágenes preferidos.", "LabelImageType": "Tipo de imagen:", @@ -922,8 +912,6 @@ "OptionPlainVideoItemsHelp": "Si se habilita, todos los videos serán representados en DIDL como «object.item.videoItem» en lugar de un tipo más específico, como «object.item.videoItem.movie».", "OptionPlayCount": "Contador de reproducciones", "OptionPremiereDate": "Fecha de estreno", - "OptionProfilePhoto": "Foto", - "OptionProfileVideoAudio": "Audio del video", "OptionProtocolHls": "Transmisión en vivo por HTTP", "OptionReleaseDate": "Fecha de estreno", "OptionReportByteRangeSeekingWhenTranscoding": "Reportar que el servidor soporta la búsqueda de bytes cuando se transcodifica", @@ -1205,7 +1193,6 @@ "OptionIsSD": "SD", "OptionLoginAttemptsBeforeLockout": "Determina cuantos intentos de inicio de sesión incorrectos se pueden hacer antes de que ocurra el bloqueo.", "OptionLoginAttemptsBeforeLockoutHelp": "Un valor de cero significa heredar el valor predeterminado de tres intentos para los usuarios normales y cinco para los administradores. Ajustar esto a -1 deshabilitará la función.", - "OptionProfileVideo": "Video", "OptionProtocolHttp": "HTTP", "OptionRegex": "Expresión regular", "PasswordResetProviderHelp": "Elige un proveedor de restablecimiento de contraseña para usar cuando este usuario solicite un restablecimiento de contraseña", diff --git a/src/strings/es.json b/src/strings/es.json index 36a01a72df..d1712ffbd2 100644 --- a/src/strings/es.json +++ b/src/strings/es.json @@ -163,12 +163,6 @@ "FileNotFound": "Archivo no encontrado.", "FileReadCancelled": "La lectura del archivo se ha cancelado.", "FileReadError": "Se encontró un error al leer el archivo.", - "FolderTypeBooks": "Libros", - "FolderTypeMovies": "Películas", - "FolderTypeMusic": "Música", - "FolderTypeMusicVideos": "Vídeos Musicales", - "FolderTypeTvShows": "Programas de TV", - "FolderTypeUnset": "Contenido Mixto", "FormatValue": "Formato: {0}", "Friday": "Viernes", "Fullscreen": "Pantalla completa", @@ -374,9 +368,7 @@ "LabelAlbum": "Álbum:", "LabelAlbumArtHelp": "PN utilizado para la carátula del álbum, dentro del atributo dlna: profileID en upnp: albumArtURI. Algunos dispositivos requieren un valor específico, independientemente del tamaño de la imagen.", "LabelAlbumArtMaxHeight": "Altura máxima de la carátula del album:", - "LabelAlbumArtMaxHeightHelp": "Resolución máxima de la carátula del álbum expuesta a través de upnp: albumArtURI.", "LabelAlbumArtMaxWidth": "Anchura máxima de la carátula del album:", - "LabelAlbumArtMaxWidthHelp": "Resolución máxima de la carátula del álbum expuesta a través de upnp: albumArtURI.", "LabelAlbumArtPN": "Carátula del album PN:", "LabelAlbumArtists": "Artistas de los álbumes:", "LabelAllowHWTranscoding": "Activar la conversión acelerada por hardware", @@ -477,9 +469,7 @@ "LabelHttpsPort": "Puerto local HTTPS:", "LabelHttpsPortHelp": "El número de puerto TCP para el servidor HTTPS.", "LabelIconMaxHeight": "Altura máxima de icono:", - "LabelIconMaxHeightHelp": "Resolución máxima de los iconos expuestos vía upnp:icon.", "LabelIconMaxWidth": "Anchura máxima de icono:", - "LabelIconMaxWidthHelp": "Resolución máxima de los iconos expuestos vía upnp:icon.", "LabelIdentificationFieldHelp": "Una subcadena insensible a mayúsculas o minúsculas o una expresión regex.", "LabelImageFetchersHelp": "Activa y ordena tus buscadores de imágenes en orden de prioridad.", "LabelImageType": "Tipo de imagen:", @@ -849,8 +839,6 @@ "OptionPlainVideoItemsHelp": "Todos los vídeos están representados en DIDL como \"object.item.videoItem\" en lugar de un tipo más específico, como por ejemplo \"object.item.videoItem.movie\".", "OptionPlayCount": "Número de reproducciones", "OptionPremiereDate": "Fecha de estreno", - "OptionProfilePhoto": "Foto", - "OptionProfileVideoAudio": "Vídeo y audio", "OptionProtocolHls": "Emisión HTTP en directo", "OptionReleaseDate": "Fecha de lanzamiento", "OptionReportByteRangeSeekingWhenTranscoding": "Indicar que el servidor soporta la búsqueda de byte al convertir", @@ -1182,7 +1170,6 @@ "OptionCaptionInfoExSamsung": "CaptionInfoEx (Samsung)", "OptionLoginAttemptsBeforeLockout": "Determina cuántos intentos de inicio de sesión fallidos se pueden realizar antes de que se produzca el bloqueo.", "OptionLoginAttemptsBeforeLockoutHelp": "El valor cero implica heredar el valor por defecto de tres intentos para usuarios y cinco intentos para administradores. El valor -1 desactiva esta funcionalidad.", - "OptionProfileVideo": "Vídeo", "OptionProtocolHttp": "HTTP", "OptionRegex": "Regex (expresión regular)", "OptionSubstring": "Subcadena", diff --git a/src/strings/es_419.json b/src/strings/es_419.json index 54ffbc53c2..56d8ff35a3 100644 --- a/src/strings/es_419.json +++ b/src/strings/es_419.json @@ -560,9 +560,6 @@ "OptionRandom": "Aleatorio", "OptionProtocolHttp": "HTTP", "OptionProtocolHls": "Transmisión en vivo por HTTP", - "OptionProfileVideoAudio": "Audio del video", - "OptionProfileVideo": "Video", - "OptionProfilePhoto": "Foto", "OptionPremiereDate": "Fecha de estreno", "LabelSize": "Tamaño:", "LabelSimultaneousConnectionLimit": "Límite de transmisiones simultáneas:", @@ -674,9 +671,7 @@ "LabelImageType": "Tipo de imagen:", "LabelImageFetchersHelp": "Habilita y prioriza tus recolectores de imágenes preferidos.", "LabelIdentificationFieldHelp": "Una subcadena indiferente a las mayúsculas y minúsculas o una expresión regular (regex).", - "LabelIconMaxWidthHelp": "Resolución máxima de los íconos expuestos vía upnp:icon.", "LabelIconMaxWidth": "Ancho máximo del ícono:", - "LabelIconMaxHeightHelp": "Resolución máxima de los íconos expuestos vía upnp:icon.", "LabelIconMaxHeight": "Altura máxima del ícono:", "LabelHttpsPortHelp": "El número de puerto TCP para el servidor HTTPS.", "LabelHttpsPort": "Número de puerto local HTTPS:", @@ -855,9 +850,7 @@ "LabelAllowHWTranscoding": "Permitir transcodificación por hardware", "LabelAlbumArtists": "Artistas del álbum:", "LabelAlbumArtPN": "PN del arte del álbum:", - "LabelAlbumArtMaxWidthHelp": "Resolución máxima del arte del álbum expuesta vía upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Ancho máximo del arte del álbum:", - "LabelAlbumArtMaxHeightHelp": "Resolución máxima del arte del álbum expuesta vía upnp:albumArtURI.", "LabelAlbumArtMaxHeight": "Altura máxima del arte del álbum:", "LabelAlbumArtHelp": "PN usado para el arte del álbum, dentro del atributo dlna:profileID en upnp:albumArtURI. Algunos dispositivos requieren valores específicos, independientemente del tamaño de la imagen.", "LabelAlbum": "Álbum:", @@ -1115,12 +1108,6 @@ "Fullscreen": "Pantalla completa", "Friday": "Viernes", "FormatValue": "Formato: {0}", - "FolderTypeUnset": "Contenido variado", - "FolderTypeTvShows": "Series de TV", - "FolderTypeMusicVideos": "Videos musicales", - "FolderTypeMusic": "Música", - "FolderTypeMovies": "Películas", - "FolderTypeBooks": "Libros", "Filters": "Filtros", "FileReadError": "Ha ocurrido un error al leer el archivo.", "FileReadCancelled": "La lectura del archivo ha sido cancelada.", diff --git a/src/strings/fa.json b/src/strings/fa.json index 663b4ef385..764e305b58 100644 --- a/src/strings/fa.json +++ b/src/strings/fa.json @@ -11,11 +11,6 @@ "ButtonQuickStartGuide": "راهنمای شروع سریع", "ButtonSignOut": "Sign out", "DeleteMedia": "حذف رسانه", - "FolderTypeBooks": "کتاب‌ها", - "FolderTypeMovies": "فیلم‌ها", - "FolderTypeMusic": "موسیقی‌ها", - "FolderTypeMusicVideos": "موزیک ویدیوها", - "FolderTypeTvShows": "سریال‌های تلویزیونی", "HeaderContinueWatching": "ادامه تماشا", "HeaderCustomDlnaProfiles": "پروفایل های سفارشی", "HeaderDeviceAccess": "دسترسی دستگاه", @@ -64,7 +59,6 @@ "OptionEnableAccessToAllChannels": "فعالسازی دسترسی به همه ی کانال ها", "OptionEnableAccessToAllLibraries": "فعالسازی دسترسی به همه ی کتابخانه ها", "OptionLikes": "پسندها", - "OptionProfileVideo": "ویدیو", "ShowAdvancedSettings": "نمایش تنظیمات پیشرفته", "TabAccess": "دسترسی", "TabAdvanced": "پیشرفته", @@ -372,7 +366,6 @@ "Fullscreen": "تمام صفحه", "Friday": "جمعه", "FormatValue": "قالب‌ها: {0}", - "FolderTypeUnset": "محتواهای مخلوط", "TabMyPlugins": "افزونه‌های من", "TabMusic": "موسیقی‌ها", "TabLogs": "واقعه نگار‌ها", @@ -516,8 +509,6 @@ "OptionRandom": "تصادفی", "OptionProtocolHttp": "HTTP", "OptionProtocolHls": "پخش مستقیم HTTP", - "OptionProfileVideoAudio": "صوتی تصویری", - "OptionProfilePhoto": "عکس", "OptionPremiereDate": "تاریخ پخش", "OptionPlayCount": "تعداد پخش", "OptionPlainVideoItems": "نمایش همه فیلم‌ها به عنوان موارد ویدیویی ساده", @@ -830,8 +821,6 @@ "LabelHardwareAccelerationType": "Hardware acceleration:", "LabelHomeScreenSectionValue": "Home screen section {0}:", "LabelHttpsPortHelp": "The TCP port number that Jellyfin's HTTPS server should bind to.", - "LabelIconMaxHeightHelp": "Maximum resolution of icons exposed via upnp:icon.", - "LabelIconMaxWidthHelp": "Maximum resolution of icons exposed via upnp:icon.", "LabelIdentificationFieldHelp": "A case-insensitive substring or regex expression.", "LabelImageFetchersHelp": "Enable and rank your preferred image fetchers in order of priority.", "LabelInNetworkSignInWithEasyPassword": "Enable in-network sign in with my easy pin code", @@ -957,9 +946,7 @@ "LabelAlbum": "Album:", "LabelAlbumArtHelp": "PN used for album art, within the dlna:profileID attribute on upnp:albumArtURI. Some devices require a specific value, regardless of the size of the image.", "LabelAlbumArtMaxHeight": "Album art max height:", - "LabelAlbumArtMaxHeightHelp": "Max resolution of album art exposed via upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Album art max width:", - "LabelAlbumArtMaxWidthHelp": "Max resolution of album art exposed via upnp:albumArtURI.", "LabelAlbumArtPN": "Album art PN:", "LabelAlbumArtists": "Album artists:", "LabelAllowHWTranscoding": "Allow hardware transcoding", diff --git a/src/strings/fi.json b/src/strings/fi.json index b48d5337d6..2782cfe8a4 100644 --- a/src/strings/fi.json +++ b/src/strings/fi.json @@ -11,7 +11,6 @@ "FileNotFound": "Tiedostoa ei löydy.", "FileReadCancelled": "Tiedoston luku on peruutettu.", "FileReadError": "Virhe tiedoston luvun aikana.", - "FolderTypeTvShows": "TV-sarjat", "LabelAudioLanguagePreference": "Äänen ensisijainen kieli:", "LabelCountry": "Maa:", "LabelCurrentPassword": "Tämän hetkinen salsana:", @@ -264,9 +263,6 @@ "OptionRandom": "Satunnainen", "OptionProtocolHttp": "HTTP", "OptionProtocolHls": "HTTP Suoratoisto", - "OptionProfileVideoAudio": "Video Audio", - "OptionProfileVideo": "Video", - "OptionProfilePhoto": "Kuva", "OptionPremiereDate": "Ensi-iltapäivä", "OptionPlayCount": "Toistokerrat", "OptionNew": "Uusi…", @@ -837,10 +833,6 @@ "LabelRuntimeMinutes": "Pituus (minuutteja):", "LabelReleaseDate": "Julkaisupäivä:", "Genre": "Tyylilaji", - "FolderTypeBooks": "Kirjat", - "FolderTypeMusicVideos": "Musiikkivideot", - "FolderTypeMusic": "Musiikki", - "FolderTypeMovies": "Elokuvat", "File": "Tiedosto", "Favorite": "Suosikki", "Extras": "Extrat", @@ -1022,7 +1014,6 @@ "DeinterlaceMethodHelp": "Valitse lomituksen poistomenetelmä, jota käytetään lomitetun sisällön transkoodaukseen.", "FormatValue": "Muoto: {0}", "General": "Yleinen", - "FolderTypeUnset": "Sekalainen sisältö", "FetchingData": "Noudetaan lisätietoja", "Features": "Ominaisuudet", "ErrorStartHourGreaterThanEnd": "Loppumisajan on oltava myöhemmin kuin aloitusaika.", diff --git a/src/strings/fr-ca.json b/src/strings/fr-ca.json index 08c47a9188..b1f78ad066 100644 --- a/src/strings/fr-ca.json +++ b/src/strings/fr-ca.json @@ -14,7 +14,6 @@ "EnableDisplayMirroring": "Duplication d'écran", "EndsAtValue": "Se termine à {0}", "File": "Fichier", - "FolderTypeTvShows": "Séries TV", "Friday": "Vendredi", "HeaderAddToCollection": "Ajouter à la Collection", "HeaderAddToPlaylist": "Ajouter à la liste de lecture", diff --git a/src/strings/fr.json b/src/strings/fr.json index 42419fbd62..fd60a53d27 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -202,12 +202,6 @@ "FileReadCancelled": "La lecture du fichier a été annulée.", "FileReadError": "Une erreur est survenue pendant la lecture du fichier.", "Filters": "Filtres", - "FolderTypeBooks": "Livres", - "FolderTypeMovies": "Films", - "FolderTypeMusic": "Musique", - "FolderTypeMusicVideos": "Vidéos musicales", - "FolderTypeTvShows": "TV", - "FolderTypeUnset": "Contenu mixte", "Folders": "Dossiers", "FormatValue": "Format : {0}", "Friday": "Vendredi", @@ -423,9 +417,7 @@ "LabelAlbum": "Album :", "LabelAlbumArtHelp": "PN utilisé pour les images d'album, dans l’attribut dlna:profileID de upnp:albumArtURi. Certains appareils nécessitent une valeur spécifique, peu importe la taille de l'image.", "LabelAlbumArtMaxHeight": "Hauteur maximum des images d'album :", - "LabelAlbumArtMaxHeightHelp": "Résolution maximum des images d'album exposée par upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Largeur maximum des images d'album :", - "LabelAlbumArtMaxWidthHelp": "Résolution maximum des images d'album exposée par upnp:albumArtURI.", "LabelAlbumArtPN": "PN d'images d'album :", "LabelAlbumArtists": "Artistes de l'album :", "LabelAllowHWTranscoding": "Autoriser le transcodage matériel", @@ -533,9 +525,7 @@ "LabelHttpsPort": "Numéro de port HTTPS local :", "LabelHttpsPortHelp": "Le numéro de port TCP pour le serveur HTTPS.", "LabelIconMaxHeight": "Hauteur maximum des icônes :", - "LabelIconMaxHeightHelp": "Résolution maximum des icônes exposée par upnp:icon.", "LabelIconMaxWidth": "Largeur maximum des icônes :", - "LabelIconMaxWidthHelp": "Résolution maximum des icônes exposée par upnp:icon.", "LabelIdentificationFieldHelp": "Une sous-chaîne ou expression régulière insensible à la casse.", "LabelImageFetchersHelp": "Activez cette option pour classer vos récupérateurs d'images par ordre de priorité.", "LabelImageType": "Type d'image :", @@ -922,8 +912,6 @@ "OptionPlainVideoItemsHelp": "Toutes les vidéos seront affichées dans le DIDL en tant que \"object.item.videoItem\" au lieu de formats plus spécifiques comme, par exemple \"object.item.videoItem.movie\".", "OptionPlayCount": "Nombre de lectures", "OptionPremiereDate": "Date de la première", - "OptionProfileVideo": "Vidéo", - "OptionProfileVideoAudio": "Vidéo Audio", "OptionProtocolHls": "Streaming Http en direct", "OptionReleaseDate": "Date de sortie", "OptionReportByteRangeSeekingWhenTranscoding": "Signaler que le serveur prend en charge la recherche d'octets lors du transcodage", @@ -1179,7 +1167,6 @@ "OptionBluray": "Blu-ray", "OptionIsHD": "HD", "OptionIsSD": "SD", - "OptionProfilePhoto": "Photo", "OptionProtocolHttp": "HTTP", "OptionRegex": "Expression régulière", "Premiere": "Première", diff --git a/src/strings/gsw.json b/src/strings/gsw.json index 21bf0bd51b..f55a860f3a 100644 --- a/src/strings/gsw.json +++ b/src/strings/gsw.json @@ -8,11 +8,6 @@ "Continuing": "Fortlaufend", "DeviceAccessHelp": "Das betrifft nur Grät wo einzigartig indentifiziert werded und tuet ned Browser Zuegriff verhindere. En Filter för Grät Zuegriff verhindered, dass neui Grät dezue gfüegt werded, bovor si ned überprüefd worde sind.", "Ended": "Beendent", - "FolderTypeBooks": "Büecher", - "FolderTypeMovies": "Film", - "FolderTypeMusic": "Musig", - "FolderTypeMusicVideos": "Musigvideos", - "FolderTypeTvShows": "TV", "Friday": "Friitig", "HeaderDeviceAccess": "Grät Zuegriff", "HeaderEasyPinCode": "Eifache Pin Code", diff --git a/src/strings/he.json b/src/strings/he.json index 1fd73d3906..9cd60a8a72 100644 --- a/src/strings/he.json +++ b/src/strings/he.json @@ -59,10 +59,6 @@ "FileNotFound": "קובץ לא נמצא.", "FileReadCancelled": "קריאת הקובץ בוטלה.", "FileReadError": "חלה שגיאה בקריאת הקובץ.", - "FolderTypeMovies": "סרטים", - "FolderTypeMusic": "מוזיקה", - "FolderTypeMusicVideos": "קליפים", - "FolderTypeTvShows": "תוכניות טלויזיה", "Friday": "שישי", "Genres": "ז'אנרים", "GroupVersions": "גרסאות קבוצתיות", @@ -295,9 +291,6 @@ "OptionParentalRating": "דירוג בקרת הורים", "OptionPlayCount": "כמות ניגונים", "OptionPremiereDate": "תאריך בכורה", - "OptionProfilePhoto": "תמונה", - "OptionProfileVideo": "וידאו", - "OptionProfileVideoAudio": "צליל וידאו", "OptionResumable": "ניתן להמשיך", "OptionSpecialEpisode": "ספיישלים", "OptionTrackName": "שם הרצועה", @@ -538,8 +531,6 @@ "Genre": "ז'אנר", "General": "כללי", "Fullscreen": "מסך מלא", - "FolderTypeUnset": "תוכן מעורבב", - "FolderTypeBooks": "ספרים", "Filters": "מסננים", "Rewind": "הרצה לאחור", "FastForward": "הרצה קדימה", diff --git a/src/strings/hr.json b/src/strings/hr.json index 93404cd222..d250eb449b 100644 --- a/src/strings/hr.json +++ b/src/strings/hr.json @@ -109,12 +109,6 @@ "FileNotFound": "Datoteka nije pronađena.", "FileReadCancelled": "Učitavanje datoteke je prekinuto.", "FileReadError": "Prilikom učitavanja datoteke dogodila se greška.", - "FolderTypeBooks": "Knjige", - "FolderTypeMovies": "Filmovi", - "FolderTypeMusic": "Glazba", - "FolderTypeMusicVideos": "Glazbeni spotovi", - "FolderTypeTvShows": "TV", - "FolderTypeUnset": "Miješani sadržaj", "Friday": "Petak", "Genres": "Žanrovi", "GroupVersions": "Verzija grupe", @@ -277,9 +271,7 @@ "LabelAirsBeforeSeason": "Emitiranje prije sezone:", "LabelAlbumArtHelp": "PN se koristi za grafiku albuma sa dlna:profileID atributom na upnp:albumArtURI. Neki uređaji zahtijevaju specifičnu vrijednost bez obzira na veličinu slike.", "LabelAlbumArtMaxHeight": "Maksimalna visina Album art-a:", - "LabelAlbumArtMaxHeightHelp": "Maksimalna rezolucija albuma izloženih putem UPnP:albumArtURI.", "LabelAlbumArtMaxWidth": "Maksimalna širina Album art-a:", - "LabelAlbumArtMaxWidthHelp": "Maksimalna rezolucija albuma izloženih putem UPnP:albumArtURI.", "LabelAlbumArtPN": "Grafika albuma PN:", "LabelAlbumArtists": "Izvođači albuma:", "LabelAllowHWTranscoding": "Dopusti hardversko konvertiranje", @@ -364,9 +356,7 @@ "LabelHttpsPort": "Lokalni broj https porta:", "LabelHttpsPortHelp": "Broj TCP porta na koji se Jellyfin https server treba vezati.", "LabelIconMaxHeight": "Maksimalna visina ikona:", - "LabelIconMaxHeightHelp": "Maksimalna rezolucija ikona izloženih putem UPnP:icon.", "LabelIconMaxWidth": "Maksimalna širina ikona:", - "LabelIconMaxWidthHelp": "Maksimalna rezolucija ikona izloženih putem UPnP:icon.", "LabelIdentificationFieldHelp": "Spis-neosjetljivi podniz ili regex izraz.", "LabelImageFetchersHelp": "Omogućite i poredajte željene dohvatače slika po redu prioriteta.", "LabelImageType": "Tip slike:", @@ -681,7 +671,6 @@ "OptionPlainVideoItemsHelp": "Ako je omogućeno, sav video se prezentira u DIDL-u kao \"objekt.stavka.videoStavka\" umjesto više specijaliziranog tipa kao \"objekt.stavka.videoStavka.film\".", "OptionPlayCount": "Broju izvođenja", "OptionPremiereDate": "Datum premijere", - "OptionProfilePhoto": "Slika", "OptionProtocolHls": "Http strujanje uživo", "OptionReleaseDate": "Datum izdavanja", "OptionReportByteRangeSeekingWhenTranscoding": "Izvješće da li poslužitelj podržava bajt traženja kada se konvertira", @@ -910,7 +899,6 @@ "AskAdminToCreateLibrary": "Traži administratora da kreira biblioteku.", "PictureInPicture": "Slika u slici", "OptionProtocolHttp": "HTTP", - "OptionProfileVideo": "Video", "OptionIsSD": "SD", "OptionIsHD": "HD", "OptionDvd": "DVD", diff --git a/src/strings/hu.json b/src/strings/hu.json index 4a846c67a3..7623ffbea2 100644 --- a/src/strings/hu.json +++ b/src/strings/hu.json @@ -79,12 +79,6 @@ "Features": "Jellemzők", "FileNotFound": "Fájl nem található.", "Filters": "Szűrők", - "FolderTypeBooks": "Könyvek", - "FolderTypeMovies": "Filmek", - "FolderTypeMusic": "Zenék", - "FolderTypeMusicVideos": "Zenei Videók", - "FolderTypeTvShows": "TV Műsorok", - "FolderTypeUnset": "Vegyes Tartalom", "Folders": "Könyvtárak", "Friday": "Péntek", "Fullscreen": "Teljes képernyő", @@ -333,7 +327,6 @@ "OptionNew": "Új…", "OptionParentalRating": "Korhatár besorolás", "OptionPlayCount": "Lejátszások száma", - "OptionProfileVideo": "Videó", "OptionReleaseDate": "Megjelenés dátuma", "OptionResumable": "Folytatható", "OptionTrackName": "Sáv Címe", @@ -974,8 +967,6 @@ "OptionPlainStorageFolders": "Az összes mappa megjelenítése egyszerű tároló mappaként", "OptionPlainVideoItems": "Az összes videó megjelenítése egyszerű videófelvételként", "OptionPremiereDate": "Premier dátuma", - "OptionProfilePhoto": "Fénykép", - "OptionProfileVideoAudio": "Videó Audió", "OptionProtocolHls": "HTTP Live Streaming", "OptionProtocolHttp": "HTTP", "OptionRegex": "Regex", @@ -1133,9 +1124,7 @@ "ImportFavoriteChannelsHelp": "Csak a tuner eszközön kedvencként megjelölt csatornák kerülnek importálásra.", "LabelAlbumArtHelp": "A használandó PN érték az albumborítók esetében, mely a upnp:albumArtURI dlna:profileID tulajdonságában szerepel. Néhány eszköz meghatározott értéket vár el, függetlenül a kép méretétől.", "LabelAlbumArtMaxHeight": "Albumborító maximális magasság:", - "LabelAlbumArtMaxHeightHelp": "Albumborító maximális magasság mely upnp:albumArtURI kiajánlásra kerül.", "LabelAlbumArtMaxWidth": "Albumborító maximális szélesség:", - "LabelAlbumArtMaxWidthHelp": "Albumborító maximális szélesség mely upnp:albumArtURI kiajánlásra kerül.", "LabelAlbumArtPN": "Albumborító PN:", "LabelAuthProvider": "Azonosítási Szolgáltató:", "LabelBurnSubtitles": "Feliratok beégetése:", @@ -1149,9 +1138,7 @@ "LabelEnableBlastAliveMessages": "Blast alive üzenetek", "LabelHttpsPortHelp": "A TCP port száma, melyen a HTTPS szerver figyel.", "LabelIconMaxHeight": "Ikon maximális magasság:", - "LabelIconMaxHeightHelp": "Ikon maximális magasság, mely az upnp:icon keresztül kiajánlásra kerül.", "LabelIconMaxWidth": "Ikon maximális szélesség:", - "LabelIconMaxWidthHelp": "Ikon maximális szélesség, mely az upnp:icon keresztül kiajánlásra kerül.", "LabelIdentificationFieldHelp": "Kis-és nagybetű különbséget figyelmen kívül hagyó szöveg vagy reguláris kifejezés.", "LabelKeepUpTo": "Őrizd meg:", "LabelKodiMetadataUser": "Mentsd el a következő felhasználó megtekintési adatát az NFO-ba:", diff --git a/src/strings/id.json b/src/strings/id.json index 57833761a4..1d5ef06332 100644 --- a/src/strings/id.json +++ b/src/strings/id.json @@ -1,7 +1,6 @@ { "ButtonQuickStartGuide": "Panduan cepat", "ButtonSignOut": "Sign out", - "FolderTypeTvShows": "TV", "HeaderEasyPinCode": "Kode Pin Mudah", "HeaderSetupLibrary": "Atur pustaka media Anda", "LabelContentType": "Tipe konten:", @@ -340,11 +339,6 @@ "Fullscreen": "Layar penuh", "Friday": "Jumat", "FormatValue": "Format: {0}", - "FolderTypeUnset": "Konten Campuran", - "FolderTypeMusicVideos": "Video musik", - "FolderTypeMusic": "Musik", - "FolderTypeMovies": "Film", - "FolderTypeBooks": "Buku", "Filters": "Filter", "FileReadError": "Terjadi kesalahan saat membaca file.", "FileReadCancelled": "Pembacaan file telah dibatalkan.", diff --git a/src/strings/is-is.json b/src/strings/is-is.json index 7c8757e141..fef4891499 100644 --- a/src/strings/is-is.json +++ b/src/strings/is-is.json @@ -5,11 +5,6 @@ "ButtonOk": "Í lagi", "ButtonSignOut": "Útskráning", "DeleteMedia": "Eyða margmiðlunarefni", - "FolderTypeBooks": "Bækur", - "FolderTypeMovies": "Kvikmyndir", - "FolderTypeMusic": "Tónlist", - "FolderTypeMusicVideos": "Tónlistarmyndbönd", - "FolderTypeTvShows": "Sjónvarpsþættir", "HeaderDeviceAccess": "Aðgangur tækja", "HeaderEasyPinCode": "Auðvelt Pin númer", "HeaderPaths": "Slóðir", @@ -140,7 +135,6 @@ "GuideProviderLogin": "Innskrá", "General": "Almennt", "Friday": "Föstudagur", - "FolderTypeUnset": "Blandað efni", "FileNotFound": "Skrá finnst ekki.", "File": "Skrá", "Episodes": "Þættir", diff --git a/src/strings/it.json b/src/strings/it.json index 0d71e75b05..d1710fafd3 100644 --- a/src/strings/it.json +++ b/src/strings/it.json @@ -192,11 +192,6 @@ "FileReadCancelled": "Il file letto è stato cancellato.", "FileReadError": "Errore durante la lettura del file.", "Filters": "Filtri", - "FolderTypeBooks": "Libri", - "FolderTypeMovies": "Film", - "FolderTypeMusic": "Musica", - "FolderTypeMusicVideos": "Video Musicali", - "FolderTypeUnset": "Contenuto Misto", "Folders": "Cartelle", "FormatValue": "Formato: {0}", "Friday": "Venerdì", @@ -408,9 +403,7 @@ "LabelAirsBeforeSeason": "In onda prima della stagione:", "LabelAlbumArtHelp": "PN utilizzato per le copertine degli album, all'interno dell'attributo dlna:profileID su upnp:albumArtURI. Alcuni dispositivi richiedono un valore specifico, indipendentemente dalla dimensione dell'immagine.", "LabelAlbumArtMaxHeight": "Altezza massima copertina Album:", - "LabelAlbumArtMaxHeightHelp": "Risoluzione massima copertina Album inviata tramite upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Larghezza massima copertina Album:", - "LabelAlbumArtMaxWidthHelp": "Risoluzione massima copertina album inviata tramite upnp:albumArtURI.", "LabelAlbumArtPN": "Copertine Album PN:", "LabelAlbumArtists": "Artisti album:", "LabelAllowHWTranscoding": "Consenti transcodifica hardware", @@ -515,9 +508,7 @@ "LabelHttpsPort": "Porta HTTPS locale:", "LabelHttpsPortHelp": "Porta TCP da associare al server HTTPS.", "LabelIconMaxHeight": "Altezza icona massima:", - "LabelIconMaxHeightHelp": "Risoluzione massima delle icone inviate tramite upnp:icon.", "LabelIconMaxWidth": "Larghezza massima icona:", - "LabelIconMaxWidthHelp": "Risoluzione massima delle icone esposte tramite upnp:icon.", "LabelIdentificationFieldHelp": "Una stringa o espressione regex sensibile a maiuscole e minuscole.", "LabelImageFetchersHelp": "Abilitare e classificare i tuoi Fetchers immagini preferite in ordine di priorità.", "LabelImageType": "Tipo immagine:", @@ -885,7 +876,6 @@ "OptionPlainVideoItemsHelp": "Tutti i video sono rappresentati in DIDL come \"object.item.videoItem\" invece che di tipo più specifico, come \"object.item.videoItem.movie\".", "OptionPlayCount": "Riproduzioni", "OptionPremiereDate": "Data della prima", - "OptionProfilePhoto": "Foto", "OptionReleaseDate": "Data di Uscita", "OptionReportByteRangeSeekingWhenTranscoding": "Segnala che il server supporta la ricerca di byte durante la transcodifica", "OptionReportByteRangeSeekingWhenTranscodingHelp": "Questo è necessario per alcuni dispositivi che non hanno l'avanzamento rapido che funziona bene.", @@ -1129,7 +1119,6 @@ "ChangingMetadataImageSettingsNewContent": "I cambiamenti alle impostazioni dei download dei metadati verranno applicati solamente ai nuovi contenuti aggiunti alla libreria. Per applicare i cambiamenti ai titoli già esistenti devi ricaricare i metadati manualmente.", "DownloadsValue": "{0} scaricati", "File": "File", - "FolderTypeTvShows": "Serie TV", "General": "Generale", "HeaderApp": "Applicazione", "HeaderAppearsOn": "Appare In", @@ -1188,8 +1177,6 @@ "LabelBitrate": "Bitrate:", "LabelSize": "Dimensione:", "LabelTranscodePath": "Percorso di trascodifica:", - "OptionProfileVideo": "Video", - "OptionProfileVideoAudio": "Video Audio", "LabelFont": "Font:", "HeaderIdentificationHeader": "Header di Identificazione", "LabelAudioChannels": "Canali audio:", diff --git a/src/strings/ja.json b/src/strings/ja.json index bb48b4d409..f63441ac9c 100644 --- a/src/strings/ja.json +++ b/src/strings/ja.json @@ -214,12 +214,6 @@ "FileReadCancelled": "ファイルの読み込みをキャンセルしました。", "FileReadError": "ファイルの読み込み中にエラーが発生しました。", "Filters": "フィルタ", - "FolderTypeBooks": "ブック", - "FolderTypeMovies": "ムービー", - "FolderTypeMusic": "音楽", - "FolderTypeMusicVideos": "ミュージックビデオ", - "FolderTypeTvShows": "テレビ番組", - "FolderTypeUnset": "ミックスコンテンツ", "Folders": "フォルダー", "FormatValue": "フォーマット: {0}", "Friday": "金曜日", @@ -488,9 +482,6 @@ "NewCollection": "新しいコレクション", "OptionDatePlayed": "再生日", "OptionMissingEpisode": "所有してないエピソード", - "OptionProfilePhoto": "フォト", - "OptionProfileVideo": "ビデオ", - "OptionProfileVideoAudio": "ビデオオーディオ", "OptionProtocolHttp": "HTTP", "OptionRegex": "正規表現", "OptionReleaseDate": "公開日", @@ -970,8 +961,6 @@ "LabelCachePathHelp": "画像などのサーバーキャッシュファイルの場所を指定します。空欄にしておくと、サーバーのデフォルトを使います。", "LabelBlastMessageIntervalHelp": "ブラスト アライブ メッセージ間の時間を秒単位で指定します。", "LabelBindToLocalNetworkAddressHelp": "HTTP サーバー用のローカル IP アドレスを上書きします。空のままにしておくと、サーバーは利用可能なすべてのアドレスにバインドします。この値の変更を反映するには再起動が必要です。", - "LabelAlbumArtMaxWidthHelp": "upnp:albumArtURI で公開するアルバムアートの最大解像度。", - "LabelAlbumArtMaxHeightHelp": "upnp:albumArtURI で公開するアルバムアートの最大解像度。", "LabelAlbumArtHelp": "upnp:albumArtURI の dlna:profileID 属性で、アルバムアートに使われるPN。デバイスによっては、画像のサイズと無関係に特定の値を要求するものもあります。", "HeaderSyncPlayEnabled": "SyncPlay を有効にしました", "HeaderSyncPlaySelectGroup": "グループに参加", @@ -1047,8 +1036,6 @@ "LabelKeepUpTo": "最新:", "LabelInNetworkSignInWithEasyPasswordHelp": "ローカルネットワーク内では簡単なPINコードを利用してサインインするようにします。ローカル以外からのアクセスのときのみ通常のパスワードが必要になります。PINコードを空欄にした場合,ローカルネットワーク内からのアクセスではパスワードが不要になります。", "LabelInNetworkSignInWithEasyPassword": "簡単なPINコードを利用してネットワーク内からサインインする機能の有効化", - "LabelIconMaxWidthHelp": "upnp:icon として表示されるアイコンの最大解像度(幅)。", - "LabelIconMaxHeightHelp": "upnp:icon として表示されるアイコンの最大解像度(高さ)。", "ManageRecording": "録画管理", "LeaveBlankToNotSetAPassword": "このフィールドを空欄にすることでパスワード不要にできます。", "Large": "ラージ", diff --git a/src/strings/kk.json b/src/strings/kk.json index 7e2c15167d..fa005f55b8 100644 --- a/src/strings/kk.json +++ b/src/strings/kk.json @@ -208,12 +208,6 @@ "FileReadCancelled": "Faıl oqýy boldyrylmady.", "FileReadError": "Faıldy oqyp jatqanda qate paıda boldy.", "Filters": "Súzgiler", - "FolderTypeBooks": "Kitaptar", - "FolderTypeMovies": "Kıno", - "FolderTypeMusic": "Mýzyka", - "FolderTypeMusicVideos": "Mýzykalyq beıneler", - "FolderTypeTvShows": "TD-kórsetimder", - "FolderTypeUnset": "Aralas mazmun", "Folders": "Qaltalar", "FormatValue": "Pishim: {0}", "Friday": "juma", @@ -437,9 +431,7 @@ "LabelAlbum": "Álbom:", "LabelAlbumArtHelp": "PN álbom sýreti úshin upnp:albumArtURI ishindegi dlna:profileID tólsıpatymen birge paıdalanylady. Keıbir qurylǵylar úshin, sýrettiń ólshemine ańǵarýsyz, naqty mán qajet.", "LabelAlbumArtMaxHeight": "Álbom sýretiniń eń joǵary bıigi:", - "LabelAlbumArtMaxHeightHelp": "upnp:albumArtURI arqyly kórsetetin álbom sýretiniń eń joǵary ajyratylymdyǵy.", "LabelAlbumArtMaxWidth": "Álbom sýretiniń eń joǵary eni:", - "LabelAlbumArtMaxWidthHelp": "upnp:albumArtURI arqyly kórsetetin álbom sýretiniń eń joǵary ajyratylymdyǵy.", "LabelAlbumArtPN": "Álbom sýreti PN:", "LabelAlbumArtists": "Álbom oryndaýshylary:", "LabelAllowHWTranscoding": "Apparattyq qaıta kodtaýǵa ruqsat etý", @@ -546,9 +538,7 @@ "LabelHttpsPort": "Jergilikti HTTPS-port nómiri:", "LabelHttpsPortHelp": "Jellyfin HTTPS-serveri baılastyrylýǵa tıisti TCP-port nómiri.", "LabelIconMaxHeight": "Belgisheniń eń joǵary bıigi:", - "LabelIconMaxHeightHelp": "upnp:icon arqyly kórsetetin belgisheleriniń eń joǵary ajyratylymdyǵy.", "LabelIconMaxWidth": "Belgisheniń eń joǵary eni:", - "LabelIconMaxWidthHelp": "upnp:icon arqyly kórsetetin belgisheleriniń eń joǵary ajyratylymdyǵy.", "LabelIdentificationFieldHelp": "Regıstr eskermeıtin ishki jol nemese udaıy órnek.", "LabelImageFetchersHelp": "Teńshelgen sýret irikteýshilerin qosyńyz jáne basymdylyq reti boıynsha dáreje berińiz.", "LabelImageType": "Sýret túri:", @@ -940,9 +930,6 @@ "OptionPlainVideoItemsHelp": "Qosylǵanda, barlyq qaltalar DIDL ishinde \"object.item.videoItem.movie\" sıaqty naqtylaý túriniń ornyna \"object.item.videoItem\" bolyp beınelenedi.", "OptionPlayCount": "Oınatý esebi", "OptionPremiereDate": "Tusaýkeser kún-aıy", - "OptionProfilePhoto": "Foto", - "OptionProfileVideo": "Beıne", - "OptionProfileVideoAudio": "Beıne Dybys", "OptionProtocolHls": "HTTP Тікелей Тасымалдау", "OptionProtocolHttp": "HTTP", "OptionRegex": "Udaıy órnek", diff --git a/src/strings/ko.json b/src/strings/ko.json index 5c5bb4d13a..9cc0f7f6ae 100644 --- a/src/strings/ko.json +++ b/src/strings/ko.json @@ -79,11 +79,6 @@ "FastForward": "빨리 감기", "FileNotFound": "파일을 찾을 수 없습니다.", "FileReadError": "파일을 읽는 동안 오류가 발생하였습니다.", - "FolderTypeBooks": "도서", - "FolderTypeMovies": "영화", - "FolderTypeMusic": "음악", - "FolderTypeMusicVideos": "뮤직 비디오", - "FolderTypeTvShows": "TV", "Friday": "금요일", "Fullscreen": "전체화면", "GuideProviderLogin": "로그인", @@ -211,9 +206,7 @@ "LabelAlbum": "앨범:", "LabelAlbumArtHelp": "PN은 upnp:albumArtURI의 dlna:profileID 속성 내에서 앨범 아트에 사용되었습니다.\n일부 장치는 이미지의 크기에 상관 없이 특정 값을 필요로 합니다.", "LabelAlbumArtMaxHeight": "앨범 아트 최대 높이:", - "LabelAlbumArtMaxHeightHelp": "upnp:albumArtURI를 통해 노출된 앨범 아트의 최대 해상도.", "LabelAlbumArtMaxWidth": "앨범 아트 최대 넓이:", - "LabelAlbumArtMaxWidthHelp": "upnp:albumArtURI를 통해 노출된 앨범 아트의 최대 해상도.", "LabelAlbumArtPN": "앨범 아트 PN:", "LabelAlbumArtists": "앨범 아티스트:", "LabelAppName": "앱 이름", @@ -284,9 +277,7 @@ "LabelHttpsPort": "로컬 HTTPS 포트 번호:", "LabelHttpsPortHelp": "Jellyfin의 HTTPS 서버가 바인딩해야하는 TCP포트 번호", "LabelIconMaxHeight": "아이콘 최대 높이:", - "LabelIconMaxHeightHelp": "upnp:icon를 통해 노출되는 앨범 아트의 최대 해상도", "LabelIconMaxWidth": "아이콘 최대 너비:", - "LabelIconMaxWidthHelp": "upnp:icon를 통해 노출되는 앨범 아트의 최대 해상도", "LabelIdentificationFieldHelp": "대소문자를 구별하지 않는 부분 문자열 또는 정규 표현식.", "LabelImageFetchersHelp": "선호하는 이미지 수집기를 우선순위대로 활성화합니다.", "LabelImageType": "이미지 유형:", @@ -509,9 +500,6 @@ "OptionPlainVideoItemsHelp": "활성화 된 경우 모든 비디오는 \"object.item.videoItem.movie\"와 같이보다 구체적인 유형 대신 \"object.item.videoItem\"로 DIDL에 표시됩니다.", "OptionPlayCount": "재생 횟수", "OptionPremiereDate": "Premiere 일자", - "OptionProfilePhoto": "사진", - "OptionProfileVideo": "비디오", - "OptionProfileVideoAudio": "비디오 오디오", "OptionProtocolHls": "HTTP 실시간 스트리밍", "OptionReleaseDate": "개봉일", "OptionResElement": "res 요소", @@ -1033,7 +1021,6 @@ "HeaderDateIssued": "발행일", "ConfigureDateAdded": "라이브러리 설정의 Jellyfin 서버 대시보드에서 추가된 날짜를 결정하는 방법 구성", "EnableStreamLoopingHelp": "라이브 스트림에 몇 초의 데이터만 포함되어 있고 지속적으로 요청해야하는 경우, 이 옵션을 활성화하십시오. 필요하지 않은 경우, 이 기능을 사용하면 문제가 발생할 수 있습니다.", - "FolderTypeUnset": "혼합 콘텐츠", "BurnSubtitlesHelp": "영상을 트랜스코딩할 때 자막 포맷에 따라 서버에서 영상 안에 자막을 입힐지를 결정합니다. 영상에 자막을 입히지 않으면 서버 성능이 향상됩니다. 일부 ASS/SSA 자막을 포함하여 자막 포맷(VOBSUB, PGS, SUB/IDX 등)에 따라 자막을 영상에 입히려면 자동을 선택하십시오.", "EnableNextVideoInfoOverlay": "재생 중에 다음 비디오 정보 표시", "EnablePhotosHelp": "이미지가 다른 미디어 파일과 함께 감지되어 표시됩니다.", diff --git a/src/strings/lt-lt.json b/src/strings/lt-lt.json index 8469c36c46..6c62ae9ca4 100644 --- a/src/strings/lt-lt.json +++ b/src/strings/lt-lt.json @@ -61,11 +61,6 @@ "ExtractChapterImagesHelp": "Skyrių paveikslų išgavimas padės Jellyfin programėlėms rodyti vaizdingas scenas pasirinkimo meniu. Procesas gana lėtas, naudoja daug procesoriaus pajėgumų ir gali sunaudoti kelis gigabaitus disko vietos. Jis vyksta atradus naujus vaizdo įrašus, bei atliekamas naktimis. Tvarkaraštį galima keisti numatytų užduočių skyriuje. Nerekomenduojama vykdyti šios užduoties vartojimo piko valandomis.", "Favorite": "Mėgstamas", "File": "Failas", - "FolderTypeBooks": "Knygos", - "FolderTypeMovies": "Filmai", - "FolderTypeMusic": "Muzika", - "FolderTypeMusicVideos": "Muzikiniai klipai", - "FolderTypeTvShows": "TV Serialai", "Friday": "Penktadienis", "Genres": "Žanrai", "GroupVersions": "Grupuoti versijas", @@ -644,7 +639,6 @@ "LabelDisplayLanguage": "Kalba:", "LabelDisplayName": "Rodomas vardas:", "EnableBackdropsHelp": "Rodyti fono dekoracijas naršant bibliotekoje.", - "FolderTypeUnset": "Įvairus turinys", "HeaderAddUpdateImage": "Pridėti/Įkelti atvaizdą", "LabelAlbumArtPN": "Albumo iliustracijos PN:", "LabelMatchType": "Atitikties tipas:", @@ -720,8 +714,6 @@ "Horizontal": "Horizontalus", "LabelAccessDay": "Savaitės diena:", "ImportMissingEpisodesHelp": "Jei įjungta, informacija apie trūkstamus epizodus bus importuota į jūsų „Jellyfin“ duomenų bazę ir rodoma serialuose. Tai gali įtakoti ilgesnį bibliotekos nuskaitymą.", - "LabelAlbumArtMaxHeightHelp": "Maksimali albumo iliustracijos, rodomos naudojant upnp:albumArtURI, skiriamoji geba.", - "LabelAlbumArtMaxWidthHelp": "Maksimali albumo iliustracijos, rodomos naudojant upnp:albumArtURI, skiriamoji geba.", "LabelAudioChannels": "Garso takeliai:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Automatiškai atnaujinti metaduomenis iš interneto:", "LabelAudioSampleRate": "Garso takelio diskr.sparta:", diff --git a/src/strings/lv.json b/src/strings/lv.json index f8e3daf2de..7ff61f2498 100644 --- a/src/strings/lv.json +++ b/src/strings/lv.json @@ -362,11 +362,6 @@ "Friday": "Piektdiena", "FormatValue": "Formāts: {0}", "Folders": "Mapes", - "FolderTypeTvShows": "TV Raidījumi", - "FolderTypeMusicVideos": "Mūzikas Video", - "FolderTypeMusic": "Mūzika", - "FolderTypeMovies": "Filmas", - "FolderTypeBooks": "Grāmatas", "Filters": "Filtri", "FileReadError": "Datnes lasīšanas laikā notika kļūda.", "FileReadCancelled": "Datnes lasīšana tika atcelta.", @@ -668,8 +663,6 @@ "OptionTvdbRating": "TVDB Reitings", "OptionRandom": "Nejaušs", "OptionProtocolHttp": "HTTP", - "OptionProfileVideoAudio": "Video Audio", - "OptionProfileVideo": "Video", "OptionParentalRating": "Vecāku Reitings", "OptionOnInterval": "Pēc intervāla", "OptionNew": "Jauns...", @@ -727,7 +720,6 @@ "LabelDeathDate": "Nāves datums:", "LabelDateTimeLocale": "Datuma un laika lokalizācija:", "LabelCustomCertificatePathHelp": "Ceļš uz PKCS #12 datni, kas satur sertifikātu un privāto atslēgu lai iespējotu TLS atbalstu uz sava domēna.", - "FolderTypeUnset": "Jaukts Saturs", "ErrorSavingTvProvider": "Kļūda saglabājot TV sniedzēju. Pārliecinies ka tas ir pieejams un mēģini vēlreiz.", "ErrorStartHourGreaterThanEnd": "Beigu laikam jābūt vēlākam par sākuma laiku.", "ErrorAddingXmlTvFile": "Kļūda atverot XMLTV datni. Lūdzu pārliecinies ka datne eksistē un mēģini vēlreiz.", @@ -746,9 +738,7 @@ "LabelAudioChannels": "Audio kanāli:", "LabelAudioBitrate": "Audio bitu-ātrums:", "LabelAllowHWTranscoding": "Atļaut aparatūras trans-kodēšanu", - "LabelAlbumArtMaxWidthHelp": "Maksimālā albumu vāku izšķirtspēja caur upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Albumu vāku maksimālais platums:", - "LabelAlbumArtMaxHeightHelp": "Maksimālā albumu vāku izšķirtspēja caur upnp:albumArtURI.", "LabelAlbumArtMaxHeight": "Albumu vāku maksimālais augstums:", "LabelAbortedByServerShutdown": "(Atcelts dēļ servera izslēgšanas)", "ImportFavoriteChannelsHelp": "Ja iespējots, tikai kanāli, kas atzīmēti kā favorīti uztvērēja ierīcē tiks importēti.", @@ -847,8 +837,6 @@ "AllowFfmpegThrottling": "Ierobežot Trans-kodējumus", "AllowHWTranscodingHelp": "Atļaut uztvērējam trans-kodēt straumes tiešsaistē. Tas var atvieglot trans-kodēšanu, kas jāveic serverim.", "AirDate": "Tiešraides datums", - "LabelIconMaxWidthHelp": "Maksimālā ikonu izšķirtspēja caur upnp:icon.", - "LabelIconMaxHeightHelp": "Maksimālā ikonu izšķirtspēja caur upnp:icon.", "LabelHardwareAccelerationTypeHelp": "Aparatūras paātrināšanai ir vajadzīga papildus konfigurācija.", "LabelEncoderPreset": "H264 un H265 kodēšanas noklusējumi:", "HardwareAccelerationWarning": "Iespējojot aparatūras paātrināšanu var veidot nestabilitāti dažās vidēs. Pārliecinies ka tava operētājsistēma un video draiveri it pilnībā atjaunināti. Ja tev ir problēmas ar video atskaņošanu pēc šī iestatījuma iespējošanas, tev vajadzēs pārmainīt to atpakaļ uz Neviens.", @@ -987,7 +975,6 @@ "OptionRequirePerfectSubtitleMatch": "Lejupielādēt tikai subtitrus, kas perfekti sakrīt ar manām video datnēm", "OptionRegex": "Regex", "OptionProtocolHls": "HTTP Tiešraides Straumes", - "OptionProfilePhoto": "Attēls", "OptionPremiereDate": "Pirmizrādes Datums", "OptionPlayCount": "Atskaņošanas Skaits", "OptionMissingEpisode": "Trūkstošās Epizodes", diff --git a/src/strings/ms.json b/src/strings/ms.json index a8755792a8..04c4a3e8d1 100644 --- a/src/strings/ms.json +++ b/src/strings/ms.json @@ -1,7 +1,6 @@ { "ButtonSignOut": "Sign out", "Delete": "Padam", - "FolderTypeTvShows": "TV", "LabelFinish": "Habis", "LabelYoureDone": "Kamu Selesai!", "ParentalRating": "Parental Rating", diff --git a/src/strings/nb.json b/src/strings/nb.json index 7bde7f6b3f..d86c6d9433 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -145,12 +145,6 @@ "FileNotFound": "Fil ikke funnet.", "FileReadCancelled": "Lesing av filen ble avbrutt.", "FileReadError": "Det oppstod en feil mens filen ble lest.", - "FolderTypeBooks": "Bøker", - "FolderTypeMovies": "Filmer", - "FolderTypeMusic": "Musikk", - "FolderTypeMusicVideos": "Musikkvideoer", - "FolderTypeTvShows": "TV", - "FolderTypeUnset": "Blandet innhold", "Friday": "Fredag", "Fullscreen": "Fullskjerm", "Genres": "Sjangre", @@ -335,9 +329,7 @@ "LabelAirsBeforeEpisode": "Sendes før episode:", "LabelAirsBeforeSeason": "Sendes før sesong:", "LabelAlbumArtMaxHeight": "Maks høyde for albumomslag:", - "LabelAlbumArtMaxHeightHelp": "Maksoppløsning på albumomslag er eksonert via upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Maks bredde for albumomslag:", - "LabelAlbumArtMaxWidthHelp": "Maksoppløsning av albumomslag er eksponert via upnp:albumArtURI.", "LabelAlbumArtists": "Albumartister:", "LabelAllowHWTranscoding": "Tillat maskinvare-omkoding", "LabelAppName": "Applikasjonsnavn", @@ -427,9 +419,7 @@ "LabelHttpsPort": "Lokal HTTPS-port:", "LabelHttpsPortHelp": "TCP-portnummeret for HTTPS-serveren.", "LabelIconMaxHeight": "Makshøyde for ikon:", - "LabelIconMaxHeightHelp": "Maks oppløsning for ikoner eksponert via upnp:icon.", "LabelIconMaxWidth": "Maksbredde for ikon:", - "LabelIconMaxWidthHelp": "Maks oppløsning for ikoner eksponert via upnp:icon.", "LabelIdentificationFieldHelp": "Et regex-uttrykk eller en deltekst (skiller ikke mellom store og små bokstaver).", "LabelImageFetchersHelp": "Aktiver og ranger dine foretrukne kilder for omslagsbilder i prioritert rekkefølge.", "LabelImageType": "Bildetype:", @@ -757,8 +747,6 @@ "OptionPlainVideoItemsHelp": "Alle videoer representerer i DIDL som \"object.item.videoItem\" i stedet for en mer bestemt type, for eksempel \"object.item.videoItem.movie\".", "OptionPlayCount": "Antall avspillinger", "OptionPremiereDate": "Premieredato", - "OptionProfilePhoto": "Bilde", - "OptionProfileVideoAudio": "Videolyd", "OptionReleaseDate": "Utgivelsesdato", "OptionReportByteRangeSeekingWhenTranscoding": "Rapporter at serveren støtter byte-søking ved omkoding", "OptionReportByteRangeSeekingWhenTranscodingHelp": "Dette kreves for noen enheter som ikke tidssøker særlig bra.", @@ -1195,7 +1183,6 @@ "OptionDownloadImagesInAdvanceHelp": "Som standard vil de fleste bilder kun lastes ned når de blir forespurt av en klient. Aktiver denne innstillingen for å laste ned alle bilder på forhånd når ny media oppdages. Dette kan føre til at skanning av biblioteket tar betydelig lenger tid.", "OptionIsSD": "SD", "OptionLoginAttemptsBeforeLockout": "Bestemmer hvor mange mislykkede innloggingsførsøk som kan finne sted før brukeren blir utestengt.", - "OptionProfileVideo": "Video", "OptionProtocolHls": "HTTP-direktestrømming", "OptionProtocolHttp": "HTTP", "PasswordResetProviderHelp": "Velg hvilken metode for tilbakestilling av passord som skal benyttes når denne brukeren ber om å tilbakestille passordet.", diff --git a/src/strings/nl.json b/src/strings/nl.json index 2c964bd49c..2326ccee2f 100644 --- a/src/strings/nl.json +++ b/src/strings/nl.json @@ -194,12 +194,6 @@ "FileNotFound": "Bestand niet gevonden.", "FileReadCancelled": "Bestand lezen is geannuleerd.", "FileReadError": "Er is een fout opgetreden bij het lezen van het bestand.", - "FolderTypeBooks": "Boeken", - "FolderTypeMovies": "Films", - "FolderTypeMusic": "Muziek", - "FolderTypeMusicVideos": "Muziek Video's", - "FolderTypeTvShows": "TV Series", - "FolderTypeUnset": "Gemengde Inhoud", "Folders": "Mappen", "FormatValue": "Formaat: {0}", "Friday": "Vrijdag", @@ -410,9 +404,7 @@ "LabelAirsBeforeSeason": "Uitgezonden voor seizoen:", "LabelAlbumArtHelp": "PN gebruikt voor album art, binnen het DLNA: profileID attribuut op UPnP: albumArtURI. Sommige apparaten vereisen een specifieke waarde, ongeacht de grootte van het beeld.", "LabelAlbumArtMaxHeight": "Albumhoes max. hoogte:", - "LabelAlbumArtMaxHeightHelp": "Max. resolutie van albumhoezen weergegeven via upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Albumhoes max. breedte:", - "LabelAlbumArtMaxWidthHelp": "Max. resolutie van albumhoezen weergegeven via upnp:albumArtURI.", "LabelAlbumArtPN": "Albumhoes PN:", "LabelAlbumArtists": "Album artiesten:", "LabelAllowHWTranscoding": "Hardware transcoding toestaan", @@ -516,9 +508,7 @@ "LabelHttpsPort": "Lokale HTTPS poort nummer:", "LabelHttpsPortHelp": "Het TCP poort nummer voor de HTTPS server.", "LabelIconMaxHeight": "Pictogram maximum hoogte:", - "LabelIconMaxHeightHelp": "Maximum resolutie van pictogrammen weergegeven via upnp:icon.", "LabelIconMaxWidth": "Pictogram maximum breedte:", - "LabelIconMaxWidthHelp": "Maximum resolutie van pictogrammen weergegeven via upnp:icon.", "LabelIdentificationFieldHelp": "Een niet-hoofdlettergevoelige subtekenreeks of regex expressie.", "LabelImageFetchersHelp": "Rangschik uw voorkeurs afbeeldingen downloader in volgorde van prioriteit.", "LabelImageType": "Afbeeldingstype:", @@ -879,8 +869,6 @@ "OptionPlainVideoItemsHelp": "Indien ingeschakeld worden alle video's in DIDL weergegeven als 'object.item.videoItem' in plaats van een meer specifiek type, zoals 'object.item.videoItem.movie'.", "OptionPlayCount": "Afspeel telling", "OptionPremiereDate": "Première Datum", - "OptionProfilePhoto": "Foto", - "OptionProfileVideoAudio": "Video geluid", "OptionReleaseDate": "Uitgave datum", "OptionReportByteRangeSeekingWhenTranscoding": "Rapporteer dat de server byte zoeken tijdens transcoderen ondersteunt", "OptionReportByteRangeSeekingWhenTranscodingHelp": "Dit is vereist voor bepaalde apparaten die zo goed op tijd zoeken.", @@ -1241,7 +1229,6 @@ "OptionRegex": "Regex", "TabServer": "Server", "TabStreaming": "Streamen", - "OptionProfileVideo": "Video", "AlbumArtist": "Album Artiest", "Album": "Album", "DeinterlaceMethodHelp": "Selecteer de deinterlacingmethode die u wilt gebruiken bij het transcoderen van geïnterlinieerde inhoud.", diff --git a/src/strings/pl.json b/src/strings/pl.json index 5885911680..34d4112b4f 100644 --- a/src/strings/pl.json +++ b/src/strings/pl.json @@ -207,12 +207,6 @@ "FileReadCancelled": "Odczytywanie pliku zostało anulowane.", "FileReadError": "Podczas odczytywania pliku wystąpił błąd.", "Filters": "Filtry", - "FolderTypeBooks": "Książki", - "FolderTypeMovies": "Filmy", - "FolderTypeMusic": "Muzyka", - "FolderTypeMusicVideos": "Teledyski", - "FolderTypeTvShows": "Seriale", - "FolderTypeUnset": "Zawartość mieszana", "Folders": "Foldery", "Friday": "Piątek", "Fullscreen": "Pełny ekran", @@ -435,9 +429,7 @@ "LabelAlbum": "Album:", "LabelAlbumArtHelp": "PN używany jako okładka albumu z dlna:profileID w atrybucie upnp:albumArtURI. Niektóre urządzenia wymagają konkretnych wartości, niezależnie od rozmiaru obrazu.", "LabelAlbumArtMaxHeight": "Maksymalna wysokość okładki albumu:", - "LabelAlbumArtMaxHeightHelp": "Maksymalna rozdzielczość okładki albumu wystawiana przez upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Maksymalna szerokość okładki albumu:", - "LabelAlbumArtMaxWidthHelp": "Maksymalna rozdzielczość okładki albumu wystawiana przez upnp:albumArtURI.", "LabelAlbumArtPN": "PN okładki albumu:", "LabelAlbumArtists": "Wykonawcy albumów:", "LabelAllowHWTranscoding": "Zezwalaj na sprzętowe transkodowanie", @@ -543,9 +535,7 @@ "LabelHttpsPort": "Lokalny numer portu HTTPS:", "LabelHttpsPortHelp": "Numer portu TCP dla serwera HTTPS.", "LabelIconMaxHeight": "Maksymalna wysokość ikon:", - "LabelIconMaxHeightHelp": "Maksymalna rozdzielczość ikon wystawianych przez upnp:icon.", "LabelIconMaxWidth": "Maksymalna szerokość ikony:", - "LabelIconMaxWidthHelp": "Maksymalna rozdzielczość ikon wystawianych przez upnp:icon.", "LabelIdentificationFieldHelp": "String lub regex nie wrażliwy na wielkość liter.", "LabelImageFetchersHelp": "Aktywuj i uporządkuj preferowane źródła obrazów według ich priorytetu.", "LabelImageType": "Typ obrazu:", @@ -933,9 +923,6 @@ "OptionPlainVideoItemsHelp": "Wszystkie wideo są reprezentowane w DIDL jako \"object.item.videoitem\" zamiast bardziej dokładnych typów takich jak \"object.item.videoitem.movie\".", "OptionPlayCount": "Liczba odtworzeń", "OptionPremiereDate": "Data premiery", - "OptionProfilePhoto": "Fotografia", - "OptionProfileVideo": "Wideo", - "OptionProfileVideoAudio": "Wideo Audio", "OptionProtocolHls": "Strumieniowanie HTTP", "OptionProtocolHttp": "HTTP", "OptionRegex": "Wyrażenie regularne", diff --git a/src/strings/pr.json b/src/strings/pr.json index 579f867fc5..e95a323780 100644 --- a/src/strings/pr.json +++ b/src/strings/pr.json @@ -7,9 +7,7 @@ "HeaderCastAndCrew": "Mateys", "HeaderMusicQuality": "Sea Shanty Strength", "HeaderLatestMusic": "Latest Sea Shanties", - "FolderTypeMusic": "Sea Shanties", "HeaderAudioBooks": "Spoken Tales", - "FolderTypeBooks": "Tall Tales", "Books": "Tall Tales", "LabelHomeNetworkQuality": "Sail strength:", "Home": "Poop Deck", diff --git a/src/strings/pt-br.json b/src/strings/pt-br.json index e219a92231..3e749fdfe7 100644 --- a/src/strings/pt-br.json +++ b/src/strings/pt-br.json @@ -197,12 +197,6 @@ "FileReadCancelled": "A leitura do arquivo foi cancelada.", "FileReadError": "Ocorreu um erro ao ler o arquivo.", "Filters": "Filtros", - "FolderTypeBooks": "Livros", - "FolderTypeMovies": "Filmes", - "FolderTypeMusic": "Música", - "FolderTypeMusicVideos": "Videoclipes", - "FolderTypeTvShows": "Séries", - "FolderTypeUnset": "Conteúdo Misto", "Folders": "Pastas", "FormatValue": "Formato: {0}", "Friday": "Sexta-feira", @@ -420,9 +414,7 @@ "LabelAlbum": "Álbum:", "LabelAlbumArtHelp": "PN usado para a arte do álbum, dentro do atributo dlna:profileID em upnp:albumArtURI. Alguns dispositivos requerem um valor específico, independente do tamanho da imagem.", "LabelAlbumArtMaxHeight": "Altura máxima da arte do álbum:", - "LabelAlbumArtMaxHeightHelp": "Resolução máxima da arte do álbum exposta via upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Largura máxima da arte do álbum:", - "LabelAlbumArtMaxWidthHelp": "Resolução máxima da arte do álbum exposta via upnp:albumArtURI.", "LabelAlbumArtPN": "PN da arte do álbum:", "LabelAlbumArtists": "Artistas do álbum:", "LabelAllowHWTranscoding": "Permitir a transcodificação de hardware", @@ -529,9 +521,7 @@ "LabelHttpsPort": "Número da porta local de HTTPS:", "LabelHttpsPortHelp": "O número da porta TCP do servidor HTTPS.", "LabelIconMaxHeight": "Altura máxima do ícone:", - "LabelIconMaxHeightHelp": "Resolução máxima do ícone que é exposto via upnp:icon.", "LabelIconMaxWidth": "Largura máxima do ícone:", - "LabelIconMaxWidthHelp": "Resolução máxima do ícone que é exposto via upnp:icon.", "LabelIdentificationFieldHelp": "Uma substring ou expressão regex que não diferencia maiúsculas de minúsculas.", "LabelImageFetchersHelp": "Ativa e classifica por ordem de prioridade seus buscadores de imagem preferidos.", "LabelImageType": "Tipo de imagem:", @@ -909,9 +899,6 @@ "OptionPlainVideoItemsHelp": "Todos os vídeos são representados no DIDL como \"object.item.videoItem\" ao invés de um tipo mais específico como, por exemplo, \"object.item.videoItem.movie\".", "OptionPlayCount": "Contagem de Reproduções", "OptionPremiereDate": "Data da Estréia", - "OptionProfilePhoto": "Foto", - "OptionProfileVideo": "Vídeo", - "OptionProfileVideoAudio": "Áudio do Vídeo", "OptionReleaseDate": "Data de Lançamento", "OptionReportByteRangeSeekingWhenTranscoding": "Reportar que o servidor suporta busca de byte quando transcodificar", "OptionReportByteRangeSeekingWhenTranscodingHelp": "Isto é necessário para avançar ou retroceder o tempo em alguns dispositivos.", diff --git a/src/strings/pt-pt.json b/src/strings/pt-pt.json index ebb9e5dae8..502f2952ba 100644 --- a/src/strings/pt-pt.json +++ b/src/strings/pt-pt.json @@ -74,11 +74,6 @@ "FileNotFound": "Ficheiro não encontrado.", "FileReadCancelled": "A leitura do ficheiro foi cancelada.", "FileReadError": "Ocorreu um erro ao ler o ficheiro.", - "FolderTypeBooks": "Livros", - "FolderTypeMovies": "Filmes", - "FolderTypeMusic": "Música", - "FolderTypeMusicVideos": "Videoclips", - "FolderTypeTvShows": "Programas TV", "Friday": "Sexta", "Fullscreen": "Ecrã inteiro", "GuideProviderSelectListings": "Selecionar Listas", @@ -217,9 +212,7 @@ "LabelAirsBeforeSeason": "Estreou antes da temporada:", "LabelAlbum": "Álbum:", "LabelAlbumArtMaxHeight": "Altura máxima da capa do álbum:", - "LabelAlbumArtMaxHeightHelp": "Resolução máxima da capa do álbum exposta via upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Largura máxima da capa do álbum:", - "LabelAlbumArtMaxWidthHelp": "Resolução máxima da capa do álbum exposta via upnp:albumArtURI.", "LabelAlbumArtPN": "PN da capa do álbum:", "LabelAlbumArtists": "Artistas do Álbum:", "LabelAppName": "Nome da aplicação", @@ -298,9 +291,7 @@ "LabelHttpsPort": "Número do porto HTTPS local:", "LabelHttpsPortHelp": "Número do porto TCP em que o servidor HTTPS do Jellyfin ficará à escuta.", "LabelIconMaxHeight": "Altura máxima do ícone:", - "LabelIconMaxHeightHelp": "Resolução máxima do ícone que é exposto via upnp:icon.", "LabelIconMaxWidth": "Largura máxima do ícone:", - "LabelIconMaxWidthHelp": "Resolução máxima do ícone que é exposto via upnp:icon.", "LabelIdentificationFieldHelp": "Uma substring ou expressão regex que não diferencia maiúscula de minúsculas.", "LabelImageType": "Tipo de imagem:", "LabelImportOnlyFavoriteChannels": "Restringir a canais marcados como favoritos", @@ -521,9 +512,6 @@ "OptionPlainVideoItemsHelp": "Se ativado, todos os vídeos são representados no DIDL como \"object.item.videoItem\" ao invés de um tipo mais específico como, por exemplo, \"object.item.videoItem.movie\".", "OptionPlayCount": "N.º de Visualizações", "OptionPremiereDate": "Data de Estreia", - "OptionProfilePhoto": "Fotografia", - "OptionProfileVideo": "Vídeo", - "OptionProfileVideoAudio": "Áudio do Vídeo", "OptionReleaseDate": "Data de Lançamento", "OptionReportByteRangeSeekingWhenTranscoding": "Reportar que o servidor suporta busca de byte quando transcodificar", "OptionReportByteRangeSeekingWhenTranscodingHelp": "Isto é necessário para alguns dispositivos que não procuram o tempo muito bem.", @@ -724,7 +712,6 @@ "Genre": "Género", "General": "Geral", "FormatValue": "Formato: {0}", - "FolderTypeUnset": "Conteúdo Misto", "Filters": "Filtros", "File": "Ficheiro", "Favorite": "Favoritos", diff --git a/src/strings/pt.json b/src/strings/pt.json index 90aa1a5fd0..dd3dc6e960 100644 --- a/src/strings/pt.json +++ b/src/strings/pt.json @@ -157,9 +157,6 @@ "OptionReleaseDate": "Data de Lançamento", "OptionProtocolHttp": "HTTP", "OptionProtocolHls": "Emissão HTTP em direto", - "OptionProfileVideoAudio": "Áudio do Vídeo", - "OptionProfileVideo": "Vídeo", - "OptionProfilePhoto": "Fotografia", "OptionPremiereDate": "Data de Estreia", "OptionPlayCount": "N.º de Visualizações", "OptionPlainVideoItemsHelp": "Quando activado, todos os vídeos são representados no DIDL como \"object.item.videoItem\" ao invés de um tipo mais específico como, por exemplo, \"object.item.videoItem.movie\".", @@ -282,9 +279,7 @@ "LabelImportOnlyFavoriteChannels": "Restringir a canais marcados como favoritos", "LabelImageType": "Tipo de imagem:", "LabelIdentificationFieldHelp": "Uma subcadeia ou expressão regex que não diferencia maiúscula de minúsculas.", - "LabelIconMaxWidthHelp": "Resolução máxima do ícone que é exposto via upnp:icon.", "LabelIconMaxWidth": "Largura máxima do ícone:", - "LabelIconMaxHeightHelp": "Resolução máxima do ícone que é exposto via upnp:icon.", "LabelIconMaxHeight": "Altura máxima do ícone:", "LabelHttpsPortHelp": "Número da porta TCP em que o servidor HTTPS do Jellyfin ficará à escuta.", "LabelHttpsPort": "Número da porta HTTPS local:", @@ -406,9 +401,7 @@ "LabelAllowHWTranscoding": "Permitir transcodificação por hardware", "LabelAlbumArtists": "Artistas do Álbum:", "LabelAlbumArtPN": "PN da capa do álbum:", - "LabelAlbumArtMaxWidthHelp": "Resolução máxima da capa do álbum exposta via upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Largura máxima da capa do álbum:", - "LabelAlbumArtMaxHeightHelp": "Resolução máxima da capa do álbum exposta via upnp:albumArtURI.", "LabelAlbumArtMaxHeight": "Altura máxima da capa do álbum:", "LabelAlbumArtHelp": "PN utilizado para a capa do álbum no atributo dlna:profileID/upnp:albumArtURI. Alguns dispositivos requerem um valor específico, independentemente do tamanho da imagem.", "LabelAlbum": "Álbum:", @@ -722,7 +715,6 @@ "HeaderDetectMyDevices": "Detectar os Meus Dispositivos", "HeaderDeleteProvider": "Apagar Provedor", "HeaderDeleteItems": "Remover Itens", - "FolderTypeBooks": "Livros", "Filters": "Filtros", "FileReadError": "Ocorreu um erro ao ler o ficheiro.", "FileReadCancelled": "A leitura do ficheiro foi cancelada.", @@ -1020,11 +1012,6 @@ "Friday": "Sexta", "FormatValue": "Formato: {0}", "Folders": "Directórios", - "FolderTypeUnset": "Conteúdo Misto", - "FolderTypeTvShows": "Programas TV", - "FolderTypeMusicVideos": "Videoclips", - "FolderTypeMusic": "Música", - "FolderTypeMovies": "Filmes", "OptionIgnoreTranscodeByteRangeRequests": "Ignorar requisições de extensão do byte de transcodificação", "OptionEnableAccessToAllChannels": "Permitir acesso a todos os canais", "FetchingData": "Buscando Dados Adicionais", diff --git a/src/strings/ro.json b/src/strings/ro.json index 19834ac399..f0bc6f47b8 100644 --- a/src/strings/ro.json +++ b/src/strings/ro.json @@ -17,11 +17,6 @@ "DeviceAccessHelp": "Aceasta se aplică numai pentru dispozitive care pot fi identificate în mod unic și nu va împiedica accesul din navigatorul de internet. Filtrând accesul dispozitivelor utilizatorului va împiedica utilizarea noilor dispozitive până când acestea nu vor fi aprobate aici.", "Ended": "S-a sfârșit", "ExtractChapterImagesHelp": "Extragerea de imagini de capitol va permite aplicației client Jellyfin sa afișeze un meniu grafic de selecție a scenelor. Procesul poate fi lent, intensiv pentru procesor și poate necesita câțiva gigaocteți de spațiu de stocare. Acesta rulează atunci când fișiere media noi sunt detectate, și de asemenea ca o sarcină programată nocturnă. Programarea poate fi configurată în zona de activități programate. Nu este recomandat ca această sarcină să ruleze în timpul perioadelor de utilizare intensă de către utilizatori.", - "FolderTypeBooks": "Cărți", - "FolderTypeMovies": "Filme", - "FolderTypeMusic": "Muzică", - "FolderTypeMusicVideos": "Videoclipuri Muzicale", - "FolderTypeTvShows": "Seriale TV", "Friday": "Vineri", "HeaderActiveRecordings": "Înregistrări active", "HeaderContinueWatching": "Vizionează în continuare", @@ -306,7 +301,6 @@ "File": "Fișier", "FileReadError": "A apărut o eroare la citirea fișierului.", "Filters": "Filtre", - "FolderTypeUnset": "Conținut Mix", "Fullscreen": "Ecran Complet", "General": "General", "GuideProviderLogin": "Autentificare", @@ -656,9 +650,7 @@ "LabelImageType": "Tipul imaginii:", "LabelImageFetchersHelp": "Activați și clasificați colectorul de imagini preferat în ordinea priorității.", "LabelIdentificationFieldHelp": "Un substring cu majuscule, minuscule sau expresie regex.", - "LabelIconMaxWidthHelp": "Rezoluția maximă a pictogramelor expuse via upnp:icon.", "LabelIconMaxWidth": "Lățimea maximă a pictogramei:", - "LabelIconMaxHeightHelp": "Rezoluția maximă a pictogramelor expuse via upnp:icon.", "LabelIconMaxHeight": "Înălțimea maximă a pictogramei:", "LabelHttpsPortHelp": "Portul TCP pentru serverul HTTPS.", "LabelHttpsPort": "Portul local HTTPS:", @@ -765,9 +757,7 @@ "LabelAllowHWTranscoding": "Permite transcodare hardware", "LabelAlbumArtists": "Artiști album:", "LabelAlbumArtPN": "Artă album PN:", - "LabelAlbumArtMaxWidthHelp": "Rezoluție maximă a artei albumului expusă via upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Artă album lățime maximă:", - "LabelAlbumArtMaxHeightHelp": "Rezoluție maximă a artei albumului expusă via upnp:albumArtURI.", "LabelAlbumArtMaxHeight": "Artă album înălțime maximă:", "LabelAlbumArtHelp": "PN utilizat pentru art albumelor, în atributul dlna:profileID pe upnp:albumArtURI. Unele dispozitive necesită o valoare specifică, indiferent de dimensiunea imaginii.", "LabelAlbum": "Album:", @@ -1135,9 +1125,6 @@ "OptionRandom": "Aleator", "OptionProtocolHttp": "HTTP", "OptionProtocolHls": "Transmitere în direct HTTP", - "OptionProfileVideoAudio": "Audioul videoclipului", - "OptionProfileVideo": "Video", - "OptionProfilePhoto": "Fotografie", "OptionPlainVideoItemsHelp": "Toate videoclipurile sunt reprezentate în DIDL ca „object.item.videoItem” în loc de un tip mai specific, cum ar fi „object.item.videoItem.movie”.", "OptionPlainVideoItems": "Afișați toate videoclipurile ca elemente video simple", "OptionPlainStorageFoldersHelp": "Toate dosarele sunt reprezentate în DIDL ca „object.container.storageFolder” în loc de un tip mai specific, cum ar fi „object.container.person.musicArtist”.", diff --git a/src/strings/ru.json b/src/strings/ru.json index e005e26c83..828bdcacfd 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -209,12 +209,6 @@ "FileReadCancelled": "Чтение файла было отменено.", "FileReadError": "Произошла ошибка при чтении файла.", "Filters": "Фильтры", - "FolderTypeBooks": "Книги", - "FolderTypeMovies": "Фильмы", - "FolderTypeMusic": "Музыка", - "FolderTypeMusicVideos": "Музыкальные видео", - "FolderTypeTvShows": "Сериалы", - "FolderTypeUnset": "Разнородное содержание", "Folders": "Папки", "FormatValue": "Формат: {0}", "Friday": "пятница", @@ -438,9 +432,7 @@ "LabelAlbum": "Альбом:", "LabelAlbumArtHelp": "PN используемое для альбомных обложек, внутри атрибута dlna:profileID при upnp:albumArtURI. Некоторым устройствам требуется специфическое значение, вне зависимости от размера изображения.", "LabelAlbumArtMaxHeight": "Макс. высота облома альбома:", - "LabelAlbumArtMaxHeightHelp": "Максимальное разрешение обложек альбома, представляемых с помощью upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Макс. ширина обложки альбома:", - "LabelAlbumArtMaxWidthHelp": "Максимальное разрешение альбомных обложек представляемых с помощью upnp:albumArtURI.", "LabelAlbumArtPN": "PN альбомной обложки:", "LabelAlbumArtists": "Исполнители альбома:", "LabelAllowHWTranscoding": "Разрешить аппаратную перекодировку", @@ -547,9 +539,7 @@ "LabelHttpsPort": "Номер локального HTTPS-порта:", "LabelHttpsPortHelp": "Номер TCP-порта для HTTPS-сервера.", "LabelIconMaxHeight": "Макс. высота значка:", - "LabelIconMaxHeightHelp": "Максимальное разрешение значков представляемых с помощью upnp:icon.", "LabelIconMaxWidth": "Макс. ширина значка:", - "LabelIconMaxWidthHelp": "Максимальное разрешение значков представляемых с помощью upnp:icon.", "LabelIdentificationFieldHelp": "Подстрока без учёта регистра, либо регулярное выражение.", "LabelImageFetchersHelp": "Включите и ранжируйте предпочитаемые отборщики изображений в порядке приоритета.", "LabelImageType": "Тип изображения:", @@ -942,9 +932,6 @@ "OptionPlainVideoItemsHelp": "Все видео описываются в DIDL как «object.item.videoItem», вместо более специфичного типа, например, «object.item.videoItem.movie».", "OptionPlayCount": "Кол. воспроизведений", "OptionPremiereDate": "Дата премьеры", - "OptionProfilePhoto": "Фото", - "OptionProfileVideo": "Видео", - "OptionProfileVideoAudio": "Видео Аудио", "OptionProtocolHls": "Прямая трансляция по HTTP (HLS)", "OptionProtocolHttp": "HTTP", "OptionRegex": "Рег. выражение", diff --git a/src/strings/sk.json b/src/strings/sk.json index bc688de054..69e57a9569 100644 --- a/src/strings/sk.json +++ b/src/strings/sk.json @@ -122,12 +122,6 @@ "FileNotFound": "Súbor nebol nájdený.", "FileReadError": "Pri čítaní súboru nastala chyba.", "Filters": "Filtre", - "FolderTypeBooks": "Knihy", - "FolderTypeMovies": "Filmy", - "FolderTypeMusic": "Hudba", - "FolderTypeMusicVideos": "Hudobné videá", - "FolderTypeTvShows": "Seriály", - "FolderTypeUnset": "Zmiešaný obsah", "FormatValue": "Formát: {0}", "Friday": "Piatok", "Fullscreen": "Celá obrazovka", @@ -557,7 +551,6 @@ "OptionPlainVideoItems": "Zobraziť všetky videá ako obyčajné video položky", "OptionPlayCount": "Počet prehraní", "OptionPremiereDate": "Dátum premiéry", - "OptionProfilePhoto": "Fotografie", "OptionProtocolHttp": "HTTP", "OptionReleaseDate": "Dátum vydania", "OptionResumable": "Pozastaviteľný", @@ -812,7 +805,6 @@ "OptionIsHD": "HD", "OptionIsSD": "SD", "OptionMax": "Max", - "OptionProfileVideo": "Video", "OptionProtocolHls": "Živý HTTP stream", "OptionRequirePerfectSubtitleMatch": "Sťahovať iba titulky, ktoré perfektne sedia k mojim video súborom", "Rate": "Hodnotenie", @@ -1051,7 +1043,6 @@ "OptionReportByteRangeSeekingWhenTranscodingHelp": "Toto je vyžadované pre niektoré zariadenia, ktoré nevedia moc dobre časovo pretáčať.", "OptionReportByteRangeSeekingWhenTranscoding": "Hlásiť, že server podporuje bajtové pretáčanie pri transkódovaní", "OptionRandom": "Náhodne", - "OptionProfileVideoAudio": "Video Zvuk", "OptionPlainVideoItemsHelp": "Všetky videá sú reprezentované v DIDL ako \"object.item.videoItem\" namiesto viac špecifického typu, ako napríklad \"object.item.videoItem.movie\".", "OptionPlainStorageFoldersHelp": "Všetky priečinky sú reprezentované v DIDL ako \"object.container.storageFolder\" namiesto viac špecifického typu, ako napríklad \"object.container.person.musicArtist\".", "OptionPlainStorageFolders": "Zobraziť všetky priečinky ako jednoduché priečinky pre ukladanie", @@ -1215,8 +1206,6 @@ "LabelInternetQuality": "Internetová kvalita:", "LabelImageFetchersHelp": "Povolí a ohodnotí vaše preferované sťahovače obrázkov podľa priority.", "LabelIdentificationFieldHelp": "Podreťazec citlivý na veľkosť písmen alebo na regulárne výrazy.", - "LabelIconMaxWidthHelp": "Maximálne rozlíšenie ikon pomocou prostredníctvom upnp:icon.", - "LabelIconMaxHeightHelp": "Maximálne rozlíšenie ikon pomocou prostredníctvom upnp:icon.", "LabelHttpsPortHelp": "Číslo portu TCP serveru HTTPS.", "LabelHomeNetworkQuality": "Kvalita na domácej sieti:", "LabelEncoderPreset": "Prednastavené H264 enkódovanie:", @@ -1238,8 +1227,6 @@ "LabelBlastMessageIntervalHelp": "Určuje dobu v sekundách medzi vysielaniami správ o serveri.", "LabelBindToLocalNetworkAddressHelp": "Prepísať lokálnu IP adresu http serveru. Pokiaľ zostane prázdna, server sa naviaže na všetky dostupné adresy. Pri zmene tejto hodnoty sa vyžaduje reštart.", "LabelAlbumArtPN": "Obrázok albumu PN:", - "LabelAlbumArtMaxWidthHelp": "Maximálne rozlíšenie obrázku albumu prostredníctvom upnp:albumArtURI.", - "LabelAlbumArtMaxHeightHelp": "Maximálne rozlíšenie obrázku albumu prostredníctvom upnp:albumArtURI.", "LabelAlbumArtHelp": "PN používa obrázok albumu, vrámci dlna:profileID atribútu upnp:albumArtURI. Niektoré zariadenia vyžadujú špecifickú hodnotu, bez ohľadu na veľkosť obrázku.", "HeaderDirectPlayProfileHelp": "Pridať profil priameho prehrávania pre definovanie, ktorý formát môže zariadenie natívne zvládnuť.", "LabelInNetworkSignInWithEasyPasswordHelp": "Použite jednoduchý PIN kód na prihlásenie v klientoch vo vnútri lokálnej siete. Vaše bežné heslo bude potrebné len pokiaľ ste mimo domova. Pokiaľ je PIN kód ponechaný prázdny, tak nebude potrebovať heslo vo vašej domácej sieti.", diff --git a/src/strings/sl-si.json b/src/strings/sl-si.json index eae23136b9..9bd38a5d74 100644 --- a/src/strings/sl-si.json +++ b/src/strings/sl-si.json @@ -2,7 +2,6 @@ "ButtonAddUser": "Dodaj Uporabnika", "ButtonQuickStartGuide": "Vodnik za hiter zacetek", "ButtonSignOut": "Odjava", - "FolderTypeTvShows": "TV", "HeaderAddToCollection": "Dodaj v Zbirko", "HeaderEasyPinCode": "Enostavna Pin koda", "HeaderFrequentlyPlayed": "Pogosto Predvajano", @@ -353,11 +352,6 @@ "Fullscreen": "Celoten zaslon", "Friday": "Petek", "FormatValue": "Format: {0}", - "FolderTypeUnset": "Mešane vsebine", - "FolderTypeMusicVideos": "Videospoti", - "FolderTypeMusic": "Glasba", - "FolderTypeMovies": "Filmi", - "FolderTypeBooks": "Knjige", "Filters": "Filtri", "FileReadError": "Prišlo je do napake pri branju datoteke.", "FileReadCancelled": "Branje datoteke je bilo preklicano.", @@ -459,11 +453,9 @@ "LabelAbortedByServerShutdown": "(Prekinjeno zaradi zaustavitve strežnika)", "LabelAirsBeforeEpisode": "Predvajanje pred epizodo:", "LabelAlbumArtMaxWidth": "Največja širina slike albuma:", - "LabelAlbumArtMaxWidthHelp": "Največja ločljivost slike albuma dostopna preko UPnP:albumArtURI.", "LabelAlbumArtPN": "Slika albuma PN:", "LabelAlbum": "Album:", "LabelAlbumArtMaxHeight": "Največja višina slike albuma:", - "LabelAlbumArtMaxHeightHelp": "Največja ločljivost slike albuma dostopna preko UPnP:albumArtURI.", "LabelAudioBitDepth": "Bitna globina zvoka:", "LabelAllowedRemoteAddresses": "Filter oddaljenih IP naslovov:", "LabelAllowedRemoteAddressesMode": "Način filtra oddaljenih IP naslovov:", @@ -590,8 +582,6 @@ "LabelGroupMoviesIntoCollectionsHelp": "Pri prikazovanju seznama filmov bodo filmi iz iste zbirke prikazani kot en združen element.", "LabelH264Crf": "H264 kodiranje CRF:", "LabelIconMaxHeight": "Največja višina ikone:", - "LabelIconMaxHeightHelp": "Največja resolucija ikon dostopnih prek upnp:icon.", - "LabelIconMaxWidthHelp": "Največja resolucija ikon dostopnih prek upnp:icon.", "LabelIdentificationFieldHelp": "Za velike ali male črke neobčutljiv podizraz ali regex izraz.", "LabelImageFetchersHelp": "Omogoči in razvrsti vire za pridobivanje slik po prioriteti.", "LabelImageType": "Tip slike:", @@ -900,7 +890,6 @@ "LabelScheduledTaskLastRan": "Nazadnje zagnano {0}. Čas trajanja {1}.", "OptionRandom": "Naključno", "OptionProtocolHttp": "HTTP", - "OptionProfilePhoto": "Slika", "OptionPremiereDate": "Datum premiere", "OptionOnInterval": "V intervalu", "OptionNew": "Novo…", @@ -1159,7 +1148,6 @@ "RememberMe": "Zapomni si me", "RecommendationDirectedBy": "Režija", "Person": "Oseba", - "OptionProfileVideo": "Video", "OptionMax": "Maks.", "OptionHasThemeSong": "Uvodna špica", "NextUp": "Sledi", @@ -1190,7 +1178,6 @@ "TabCodecs": "Kodeki", "OptionRegex": "Regex", "OptionProtocolHls": "HTTP pretakanje v živo", - "OptionProfileVideoAudio": "Video zvok", "ThemeSongs": "Glavne pesmi", "TabStreaming": "Pretakanje", "TabServer": "Strežnik", diff --git a/src/strings/sv.json b/src/strings/sv.json index aff41b96e6..e6dbb2409e 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -185,12 +185,6 @@ "FileReadCancelled": "Inläsningen av filen har avbrutits.", "FileReadError": "Ett fel inträffade vid inläsningen av filen.", "Filters": "Filter", - "FolderTypeBooks": "Böcker", - "FolderTypeMovies": "Filmer", - "FolderTypeMusic": "Musik", - "FolderTypeMusicVideos": "Musikvideor", - "FolderTypeTvShows": "TV Serier", - "FolderTypeUnset": "Blandat Innehåll", "Folders": "Mappar", "Friday": "Fredag", "Fullscreen": "Fullskärm", @@ -395,9 +389,7 @@ "LabelAirsBeforeSeason": "Sänds före säsong:", "LabelAlbumArtHelp": "PN som används för omslagsbilder, inom attributet dlna:profileID hos upnp:albumArtURI. Vissa enheter kräver ett specifikt värde, oavsett bildens storlek.", "LabelAlbumArtMaxHeight": "Skivomslagens maxhöjd:", - "LabelAlbumArtMaxHeightHelp": "Högsta upplösning hos omslagsbilder presenterade via upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Maximal bredd för omslagsbilder:", - "LabelAlbumArtMaxWidthHelp": "Högsta upplösning hos omslagsbilder presenterade via upnp:albumArtURI.", "LabelAlbumArtPN": "PN för omslagsbilder:", "LabelAlbumArtists": "Albumartist:", "LabelAllowHWTranscoding": "Tillåt hårdvaruomkodning", @@ -501,9 +493,7 @@ "LabelHttpsPort": "Lokalt portnummer för HTTPS:", "LabelHttpsPortHelp": "Den lokala tcp-port som Jellyfin Server ska lyssna på https.", "LabelIconMaxHeight": "Maxhöjd på ikoner:", - "LabelIconMaxHeightHelp": "Högsta upplösning hos ikoner som visas via upnp:icon.", "LabelIconMaxWidth": "Maxbredd på ikoner:", - "LabelIconMaxWidthHelp": "Högsta upplösning på ikoner som visas via upnp:icon.", "LabelIdentificationFieldHelp": "En skiftlägesokänslig delsträng eller regex-uttryck.", "LabelImageFetchersHelp": "Aktivera och rangordna dina hämtare baserat på prioritet.", "LabelImageType": "Typ av bild:", @@ -874,8 +864,6 @@ "OptionPlainVideoItemsHelp": "Om aktiverad representeras alla videor i DIDL som \"object.item.videoItem\" i stället för en mera specifik typ, t ex \"object.item.videoItem.movie\".", "OptionPlayCount": "Antal visningar", "OptionPremiereDate": "Premiärdatum", - "OptionProfilePhoto": "Foto", - "OptionProfileVideoAudio": "Videoljudspår", "OptionProtocolHls": "Live-strömning via Http", "OptionReleaseDate": "Premiärdatum", "OptionReportByteRangeSeekingWhenTranscoding": "Meddela att servern stödjer bytebaserad sökning vid omkodning", @@ -1205,7 +1193,6 @@ "OptionRegex": "Regex", "OptionRandom": "Slumpmässig", "OptionProtocolHttp": "HTTP", - "OptionProfileVideo": "Video", "OptionMax": "Max", "OptionLoginAttemptsBeforeLockoutHelp": "Ett värde av noll menas att använda standard av tre försök för normala användare och fem för administratörer. -1 kommer att stänga av denna funktion.", "OptionLoginAttemptsBeforeLockout": "Avgör hur många felaktiga inloggnings försök som kan utföras innan kontot låses.", diff --git a/src/strings/ta.json b/src/strings/ta.json index 920265f15b..6f7a8f060d 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -288,12 +288,6 @@ "Fullscreen": "முழு திரை", "Friday": "வெள்ளி", "FormatValue": "வடிவம்: {0}", - "FolderTypeUnset": "கலப்பு உள்ளடக்கம்", - "FolderTypeTvShows": "தொலைக்காட்சி நிகழ்ச்சிகள்", - "FolderTypeMusicVideos": "இசை கானொளி", - "FolderTypeMusic": "இசை", - "FolderTypeMovies": "திரைப்படங்கள்", - "FolderTypeBooks": "புத்தகங்கள்", "Filters": "வடிப்பான்கள்", "FileReadError": "கோப்பைப் படிக்கும்போது பிழை ஏற்பட்டது.", "FileReadCancelled": "படித்த கோப்பு ரத்து செய்யப்பட்டது.", @@ -506,9 +500,7 @@ "LabelAllowHWTranscoding": "வன்பொருள் டிரான்ஸ்கோடிங்கை அனுமதிக்கவும்", "LabelAlbumArtists": "ஆல்பம் கலைஞர்கள்:", "LabelAlbumArtPN": "ஆல்பம் படம் PN:", - "LabelAlbumArtMaxWidthHelp": "ஆல்பம் படத்தின் அதிகபட்ச தெளிவுத்திறன் upnp வழியாக வெளிப்படுத்தப்படுகிறது: albumArtURI.", "LabelAlbumArtMaxWidth": "ஆல்பம் படம் அதிகபட்ச அகலம்:", - "LabelAlbumArtMaxHeightHelp": "ஆல்பம் படத்தின் அதிகபட்ச தெளிவுத்திறன் upnp வழியாக வெளிப்படுத்தப்படுகிறது: albumArtURI.", "LabelAlbumArtMaxHeight": "ஆல்பம் படம் அதிகபட்ச உயரம்:", "LabelAlbumArtHelp": "ஆல்பம் கலைக்கு PN பயன்படுத்தப்படுகிறது, dlna: profileID பண்புக்கூறு upnp: albumArtURI. சில சாதனங்களுக்கு படத்தின் அளவைப் பொருட்படுத்தாமல் ஒரு குறிப்பிட்ட மதிப்பு தேவைப்படுகிறது.", "LabelAlbum": "ஆல்பம்:", @@ -669,9 +661,7 @@ "LabelImageType": "பட வகை:", "LabelImageFetchersHelp": "முன்னுரிமைக்கு ஏற்ப உங்களுக்கு விருப்பமான பட பெறுபவர்களை இயக்கவும் தரவரிசைப்படுத்தவும்.", "LabelIdentificationFieldHelp": "ஒரு வழக்கு-உணர்வற்ற அடி மூலக்கூறு அல்லது ரீஜெக்ஸ் வெளிப்பாடு.", - "LabelIconMaxWidthHelp": "Upnp: ஐகான் வழியாக வெளிப்படும் ஐகான்களின் அதிகபட்ச தீர்மானம்.", "LabelIconMaxWidth": "ஐகான் அதிகபட்ச அகலம்:", - "LabelIconMaxHeightHelp": "Upnp: ஐகான் வழியாக வெளிப்படும் ஐகான்களின் அதிகபட்ச தீர்மானம்.", "LabelIconMaxHeight": "ஐகான் அதிகபட்ச உயரம்:", "LabelHttpsPortHelp": "HTTPS சேவையகத்திற்கான TCP போர்ட் எண்.", "LabelHttpsPort": "உள்ளூர் HTTPS போர்ட் எண்:", @@ -1109,9 +1099,6 @@ "OptionRandom": "சீரற்ற", "OptionProtocolHttp": "HTTP", "OptionProtocolHls": "HTTP நேரடி ஒளிபரப்பு", - "OptionProfileVideoAudio": "வீடியோ ஆடியோ", - "OptionProfileVideo": "காணொளி", - "OptionProfilePhoto": "புகைப்படம்", "OptionPremiereDate": "பிரீமியர் தேதி", "OptionPlayCount": "ப்ளே கவுண்ட்", "OptionPlainVideoItemsHelp": "எல்லா வீடியோக்களும் டிஐடிஎல்லில் \"object.item.videoItem\" என குறிப்பிடப்படுகின்றன, அதாவது \"object.item.videoItem.movie\" போன்ற ஒரு குறிப்பிட்ட வகைக்கு பதிலாக.", diff --git a/src/strings/tr.json b/src/strings/tr.json index bcac3e6109..f480257f69 100644 --- a/src/strings/tr.json +++ b/src/strings/tr.json @@ -33,11 +33,6 @@ "FileNotFound": "Dosya Bulunamadı.", "FileReadCancelled": "Dosya Okuma İptal Edildi.", "FileReadError": "Dosya okunurken bir hata oluştu.", - "FolderTypeBooks": "Kitaplar", - "FolderTypeMovies": "Filmler", - "FolderTypeMusic": "Müzik", - "FolderTypeMusicVideos": "Müzik Videoları", - "FolderTypeTvShows": "TV", "Friday": "Cuma", "HeaderActiveRecordings": "Aktif Kayıtlar", "HeaderCodecProfile": "Codec Profili", @@ -126,9 +121,6 @@ "OptionImdbRating": "İMDb Reyting", "OptionLikes": "Beğenilenler", "OptionPlayCount": "Oynatma sayacı", - "OptionProfilePhoto": "Fotoğraf", - "OptionProfileVideo": "Vidyo", - "OptionProfileVideoAudio": "Video Sesi", "OptionReleaseDate": "Yayınlanma Tarihi", "OptionResumable": "Başlatılabilir", "OptionSpecialEpisode": "Özel", @@ -403,7 +395,6 @@ "General": "Genel", "Fullscreen": "Tam ekran", "FormatValue": "Biçim: {0}", - "FolderTypeUnset": "Karışık içerik", "Filters": "Filtreler", "File": "Dosya", "FetchingData": "Ek veri alınıyor", diff --git a/src/strings/uk.json b/src/strings/uk.json index 4d07b08a65..75bee799e4 100644 --- a/src/strings/uk.json +++ b/src/strings/uk.json @@ -7,10 +7,6 @@ "ButtonSignOut": "Вийти", "DeathDateValue": "Помер: {0}", "Favorite": "Улюблене", - "FolderTypeBooks": "Книги", - "FolderTypeMovies": "Фільми", - "FolderTypeMusic": "Музика", - "FolderTypeTvShows": "ТБ", "HeaderDeleteDevice": "Видалить пристрій", "HeaderLatestEpisodes": "Нещодавно переглянуті серії", "HeaderLatestMedia": "Нещодавно переглянуті", diff --git a/src/strings/vi.json b/src/strings/vi.json index 731c86bd2b..57333b5a3a 100644 --- a/src/strings/vi.json +++ b/src/strings/vi.json @@ -14,7 +14,6 @@ "FileNotFound": "Không tìm thấy tệp tin.", "FileReadCancelled": "Tệp tin đọc đã bị hủy.", "FileReadError": "Có một lỗi xảy ra khi đọc tệp tin này.", - "FolderTypeTvShows": "TV", "HeaderCustomDlnaProfiles": "Hồ sơ khách hàng", "HeaderFeatureAccess": "Truy cập tính năng", "HeaderFrequentlyPlayed": "Phát thường xuyên", @@ -309,11 +308,6 @@ "Friday": "Thứ Sáu", "FormatValue": "Định dạng: {0}", "Folders": "Thư mục", - "FolderTypeUnset": "Nội Dung Tổng Hợp", - "FolderTypeMusicVideos": "Video Âm Nhạc", - "FolderTypeMusic": "Nhạc", - "FolderTypeMovies": "Phim lẻ", - "FolderTypeBooks": "Sách", "Filters": "Bộ lọc", "File": "Tập tin", "FetchingData": "Đang tải thêm thông tin", @@ -507,9 +501,7 @@ "LabelAllowHWTranscoding": "Cho phép chuyển mã bằng phần cứng", "LabelAlbumArtists": "Nghệ sĩ album:", "LabelAlbumArtPN": "Bìa album PN:", - "LabelAlbumArtMaxWidthHelp": "Độ phân giải cao nhất của bìa album thông qua upnp:albumArtURI.", "LabelAlbumArtMaxWidth": "Chiều ngang lớn nhất của bìa album:", - "LabelAlbumArtMaxHeightHelp": "Độ phân giải cao nhất của bìa album thông qua upnp:albumArtURI.", "LabelAlbumArtMaxHeight": "Chiều cao lớn nhất của bìa album:", "LabelAlbumArtHelp": "PN được sử dụng cho bìa album, trong dlna:profileID thuộc tính upnp:albumArtURI. Một vài thiết bị phát cần một giá trị đặc biệt, không ảnh hưởng đến kích thước của hình ảnh.", "LabelAlbum": "Album:", @@ -642,9 +634,7 @@ "LabelImageType": "Loại hình ảnh:", "LabelImageFetchersHelp": "Kích hoạt và xếp hạng chương trình tải hình ảnh theo thứ tự ưu tiên.", "LabelIdentificationFieldHelp": "Một phần chuỗi không phân biệt viết hoa/thường hoặc regex expression.", - "LabelIconMaxWidthHelp": "Độ phân giải tối đa của biểu tượng hiển thị thông qua upnp:icon.", "LabelIconMaxWidth": "Chiều ngang tối đa của biểu tượng:", - "LabelIconMaxHeightHelp": "Độ phân giải tối đa của biểu tượng hiển thị thông qua upnp:icon.", "LabelIconMaxHeight": "Chiều cao tối đa của biểu tượng:", "LabelHttpsPortHelp": "TCP port mà máy chủ Jellyfin HTTPS nên kết nối vào.", "LabelHttpsPort": "HTTPS port trên máy chủ:", diff --git a/src/strings/zh-cn.json b/src/strings/zh-cn.json index a824ee506b..75c8cb5a3e 100644 --- a/src/strings/zh-cn.json +++ b/src/strings/zh-cn.json @@ -188,12 +188,6 @@ "FileReadCancelled": "文件读取已被取消。", "FileReadError": "读取文件发生错误。", "Filters": "筛选", - "FolderTypeBooks": "有声读物", - "FolderTypeMovies": "电影", - "FolderTypeMusic": "音乐", - "FolderTypeMusicVideos": "MV", - "FolderTypeTvShows": "电视节目", - "FolderTypeUnset": "混合内容", "Folders": "文件夹", "FormatValue": "格式:{0}", "Friday": "星期五", @@ -398,9 +392,7 @@ "LabelAlbum": "专辑:", "LabelAlbumArtHelp": "PN 在 upnp:albumArtURI 里的 dlna:profileID 属性用于专辑封面。某些设备不管图像的尺寸大小,都会要求特定的值。", "LabelAlbumArtMaxHeight": "专辑封面最大高度:", - "LabelAlbumArtMaxHeightHelp": "通过UPnP显示的专辑封面超链接的最大分辨率。", "LabelAlbumArtMaxWidth": "专辑封面最大宽度:", - "LabelAlbumArtMaxWidthHelp": "通过UPnP显示的专辑封面超链接的最大分辨率。", "LabelAlbumArtPN": "专辑封面PN:", "LabelAlbumArtists": "专辑作家:", "LabelAllowHWTranscoding": "允许硬件转码", @@ -510,9 +502,7 @@ "LabelHttpsPort": "本地 HTTPS 端口号:", "LabelHttpsPortHelp": "HTTPS 服务器监听的 TCP 端口号。", "LabelIconMaxHeight": "图标最大高度:", - "LabelIconMaxHeightHelp": "通过UPnP显示的图标最大分辨率。", "LabelIconMaxWidth": "图标最大宽度:", - "LabelIconMaxWidthHelp": "通过UPnP显示的图标最大分辨率。", "LabelIdentificationFieldHelp": "不区分大小写的字符串或正则表达式。", "LabelImageFetchersHelp": "启用你首选的图片获取程序的优先级排序。", "LabelImageType": "图片类型:", @@ -900,9 +890,6 @@ "OptionPlainVideoItemsHelp": "所有视频在DIDL中显示为 \"object.item.videoItem\" ,而不是一个更具体的类型,如 \"object.item.videoItem.movie\" 。", "OptionPlayCount": "播放次数", "OptionPremiereDate": "首映日期", - "OptionProfilePhoto": "图片", - "OptionProfileVideo": "视频", - "OptionProfileVideoAudio": "视频音频", "OptionProtocolHls": "HTTP 直播串流", "OptionProtocolHttp": "HTTP", "OptionRegex": "正则表达式", diff --git a/src/strings/zh-hk.json b/src/strings/zh-hk.json index b286be00f2..eb1e4d6376 100644 --- a/src/strings/zh-hk.json +++ b/src/strings/zh-hk.json @@ -21,11 +21,6 @@ "Edit": "編輯", "EditSubtitles": "編輯字幕", "Ended": "完成", - "FolderTypeBooks": "書藉", - "FolderTypeMovies": "電影", - "FolderTypeMusic": "音樂", - "FolderTypeMusicVideos": "MV", - "FolderTypeTvShows": "電視節目", "Friday": "星期五", "HeaderActiveDevices": "生效裝置", "HeaderActiveRecordings": "正在錄影的節目", @@ -191,7 +186,6 @@ "OptionParentalRating": "家長評級", "OptionPlayCount": "播放次數", "OptionPremiereDate": "首映日期", - "OptionProfileVideo": "影片", "OptionReleaseDate": "發佈日期", "OptionResumable": "能夠恢復", "OptionSpecialEpisode": "特集", diff --git a/src/strings/zh-tw.json b/src/strings/zh-tw.json index 8c276c3711..bd702640c6 100644 --- a/src/strings/zh-tw.json +++ b/src/strings/zh-tw.json @@ -33,10 +33,6 @@ "File": "檔案", "FileNotFound": "未找到檔案。", "FileReadError": "在讀取檔案時發生錯誤。", - "FolderTypeMovies": "電影", - "FolderTypeMusic": "音樂", - "FolderTypeMusicVideos": "MV", - "FolderTypeTvShows": "TV", "Friday": "星期五", "GuideProviderLogin": "登入", "HeaderActiveRecordings": "正在錄影的節目", @@ -381,8 +377,6 @@ "Features": "功能", "FileReadCancelled": "檔案讀取已取消。", "Filters": "濾鏡", - "FolderTypeBooks": "書籍", - "FolderTypeUnset": "混合內容", "Folders": "資料夾", "FormatValue": "格式:{0}", "Fullscreen": "全螢幕", @@ -583,9 +577,7 @@ "LabelAlbum": "專輯:", "LabelAlbumArtHelp": "PN 在 upnp:albumArtURI 裡的 dlna:profileID 屬性用於專輯封面。某些設備不管圖像的尺寸大小,都會要求特定的值。", "LabelAlbumArtMaxHeight": "專輯封面最大高度:", - "LabelAlbumArtMaxHeightHelp": "通過 upnp:albumArtURI 顯示的專輯封面超連結的最大解析度。", "LabelAlbumArtMaxWidth": "專輯封面最大寬度:", - "LabelAlbumArtMaxWidthHelp": "通過 upnp:albumArtURI 顯示的專輯封面超連結的最大解析度。", "LabelAlbumArtPN": "專輯封面 PN :", "LabelAlbumArtists": "專輯作家:", "LabelAllowHWTranscoding": "允許硬體轉檔", @@ -644,7 +636,6 @@ "LabelBaseUrl": "根路徑:", "LabelIconMaxHeight": "圖示最高高度:", "LabelHttpsPortHelp": "HTTPS 伺服器的 TCP 埠。", - "LabelIconMaxHeightHelp": "通過 upnp:icon 的圖示最大解析度。", "CopyStreamURL": "複製串流連結", "MediaInfoDefault": "預設", "LabelDateAddedBehaviorHelp": "若原本就有中繼資料,將會優先使用。", @@ -767,8 +758,6 @@ "Off": "關閉", "OptionAdminUsers": "管理員", "OptionAllowRemoteControlOthers": "允許其他使用者遠端控制", - "OptionProfileVideo": "影片", - "OptionProfileVideoAudio": "影片與圖片", "OptionReleaseDate": "釋出日期", "OptionWeekends": "假日", "PlayNextEpisodeAutomatically": "自動播放下一集", @@ -791,7 +780,6 @@ "MessageConfirmRestart": "您確定要重新啟動 Jellyfin 嗎?", "Metadata": "中繼資料", "OptionAllUsers": "所有使用者", - "OptionProfilePhoto": "圖片", "OptionRegex": "正則表達式", "RecommendationBecauseYouWatched": "因為您看過 {0}", "RepeatMode": "重複模式", @@ -839,7 +827,6 @@ "LabelGroupMoviesIntoCollectionsHelp": "顯示電影清單時,屬於相同集合的電影將作為分組項目顯示。", "LabelEncoderPreset": "H264 解碼品質:", "LabelHardwareAccelerationType": "硬體加速:", - "LabelIconMaxWidthHelp": "通過 upnp:icon 的圖示最大解析度。", "LabelImportOnlyFavoriteChannels": "僅限收藏的頻道", "LabelInNetworkSignInWithEasyPassword": "啟用以簡易密碼進行區域網路登入", "LabelH264Crf": "H264 編碼 CRF:", From fe5ff12cf286cab7386707bd40c7827d8ba756b1 Mon Sep 17 00:00:00 2001 From: Cameron Date: Wed, 2 Sep 2020 10:05:51 +0100 Subject: [PATCH 258/285] Apply Suggestions --- src/themes/appletv/theme.css | 2 +- src/themes/blueradiance/theme.css | 2 +- src/themes/dark/theme.css | 2 +- src/themes/light/theme.css | 2 +- src/themes/purplehaze/theme.css | 2 +- src/themes/wmc/theme.css | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/themes/appletv/theme.css b/src/themes/appletv/theme.css index 463065b849..3ea8fa9bce 100644 --- a/src/themes/appletv/theme.css +++ b/src/themes/appletv/theme.css @@ -62,7 +62,7 @@ html { background: #f0f0f0; } -@media (hover: hover) { +@media (hover: hover) and (pointer: fine) { .paper-icon-button-light:hover:not(:disabled) { color: #00a4dc; background-color: rgba(0, 164, 220, 0.2); diff --git a/src/themes/blueradiance/theme.css b/src/themes/blueradiance/theme.css index 1c13803034..ed4b62dddb 100644 --- a/src/themes/blueradiance/theme.css +++ b/src/themes/blueradiance/theme.css @@ -64,7 +64,7 @@ html { } } -@media (hover: hover) { +@media (hover: hover) and (pointer: fine) { .paper-icon-button-light:hover:not(:disabled) { color: #00a4dc; background-color: rgba(0, 164, 220, 0.2); diff --git a/src/themes/dark/theme.css b/src/themes/dark/theme.css index 15ab434a85..8bd4417f23 100644 --- a/src/themes/dark/theme.css +++ b/src/themes/dark/theme.css @@ -46,7 +46,7 @@ html { background-color: rgba(0, 0, 0, 0.86); } -@media (hover: hover) { +@media (hover: hover) and (pointer: fine) { .paper-icon-button-light:hover:not(:disabled) { color: #00a4dc; background-color: rgba(0, 164, 220, 0.2); diff --git a/src/themes/light/theme.css b/src/themes/light/theme.css index 766dd95359..48ceaaddae 100644 --- a/src/themes/light/theme.css +++ b/src/themes/light/theme.css @@ -61,7 +61,7 @@ html { color: #000; } -@media (hover: hover) { +@media (hover: hover) and (pointer: fine) { .paper-icon-button-light:hover:not(:disabled) { color: #00a4dc; background-color: rgba(0, 164, 220, 0.2); diff --git a/src/themes/purplehaze/theme.css b/src/themes/purplehaze/theme.css index 8fe9baae24..352e569eb5 100644 --- a/src/themes/purplehaze/theme.css +++ b/src/themes/purplehaze/theme.css @@ -59,7 +59,7 @@ html { } } -@media (hover: hover) { +@media (hover: hover) and (pointer: fine) { .paper-icon-button-light:hover:not(:disabled) { color: rgb(12, 232, 214); background-color: rgba(0, 164, 220, 0.2); diff --git a/src/themes/wmc/theme.css b/src/themes/wmc/theme.css index 277421e144..e97bdc171b 100644 --- a/src/themes/wmc/theme.css +++ b/src/themes/wmc/theme.css @@ -62,7 +62,7 @@ html { background: rgba(17, 98, 164, 0.9); } -@media (hover: hover) { +@media (hover: hover) and (pointer: fine) { .paper-icon-button-light:hover:not(:disabled) { color: #00a4dc; background-color: rgba(0, 164, 220, 0.2); From f45217337ab4cfa4b6155b868404e823cc7456e7 Mon Sep 17 00:00:00 2001 From: Cameron Date: Wed, 2 Sep 2020 10:56:03 +0100 Subject: [PATCH 259/285] Remove message Appearing when reloading after changing user settings --- src/controllers/user/display/index.js | 10 ++-------- src/controllers/user/home/index.js | 10 ++-------- src/controllers/user/playback/index.js | 10 ++-------- src/controllers/user/subtitles/index.js | 10 ++-------- 4 files changed, 8 insertions(+), 32 deletions(-) diff --git a/src/controllers/user/display/index.js b/src/controllers/user/display/index.js index a400c50ccf..54f71ad571 100644 --- a/src/controllers/user/display/index.js +++ b/src/controllers/user/display/index.js @@ -8,19 +8,13 @@ import autoFocuser from 'autoFocuser'; const UserSettings = userSettings.UserSettings; export default function (view, params) { - function onBeforeUnload(e) { - if (hasChanges) { - e.returnValue = 'You currently have unsaved changes. Are you sure you wish to leave?'; - } - } - let settingsInstance; let hasChanges; + const userId = params.userId || ApiClient.getCurrentUserId(); const currentSettings = userId === ApiClient.getCurrentUserId() ? userSettings : new UserSettings(); - view.addEventListener('viewshow', function () { - window.addEventListener('beforeunload', onBeforeUnload); + view.addEventListener('viewshow', function () { if (settingsInstance) { settingsInstance.loadData(); } else { diff --git a/src/controllers/user/home/index.js b/src/controllers/user/home/index.js index f811aa52b9..539365ff97 100644 --- a/src/controllers/user/home/index.js +++ b/src/controllers/user/home/index.js @@ -9,19 +9,13 @@ import 'listViewStyle'; const UserSettings = userSettings.UserSettings; export default function (view, params) { - function onBeforeUnload(e) { - if (hasChanges) { - e.returnValue = 'You currently have unsaved changes. Are you sure you wish to leave?'; - } - } - let homescreenSettingsInstance; let hasChanges; + const userId = params.userId || ApiClient.getCurrentUserId(); const currentSettings = userId === ApiClient.getCurrentUserId() ? userSettings : new UserSettings(); - view.addEventListener('viewshow', function () { - window.addEventListener('beforeunload', onBeforeUnload); + view.addEventListener('viewshow', function () { if (homescreenSettingsInstance) { homescreenSettingsInstance.loadData(); } else { diff --git a/src/controllers/user/playback/index.js b/src/controllers/user/playback/index.js index 16c50a1980..34a5ae0b1d 100644 --- a/src/controllers/user/playback/index.js +++ b/src/controllers/user/playback/index.js @@ -9,19 +9,13 @@ import 'listViewStyle'; const UserSettings = userSettings.UserSettings; export default function (view, params) { - function onBeforeUnload(e) { - if (hasChanges) { - e.returnValue = 'You currently have unsaved changes. Are you sure you wish to leave?'; - } - } - let settingsInstance; let hasChanges; + const userId = params.userId || ApiClient.getCurrentUserId(); const currentSettings = userId === ApiClient.getCurrentUserId() ? userSettings : new UserSettings(); - view.addEventListener('viewshow', function () { - window.addEventListener('beforeunload', onBeforeUnload); + view.addEventListener('viewshow', function () { if (settingsInstance) { settingsInstance.loadData(); } else { diff --git a/src/controllers/user/subtitles/index.js b/src/controllers/user/subtitles/index.js index 82f5270a4e..efa2f1bead 100644 --- a/src/controllers/user/subtitles/index.js +++ b/src/controllers/user/subtitles/index.js @@ -8,19 +8,13 @@ import autoFocuser from 'autoFocuser'; const UserSettings = userSettings.UserSettings; export default function (view, params) { - function onBeforeUnload(e) { - if (hasChanges) { - e.returnValue = 'You currently have unsaved changes. Are you sure you wish to leave?'; - } - } - let subtitleSettingsInstance; let hasChanges; + const userId = params.userId || ApiClient.getCurrentUserId(); const currentSettings = userId === ApiClient.getCurrentUserId() ? userSettings : new UserSettings(); - view.addEventListener('viewshow', function () { - window.addEventListener('beforeunload', onBeforeUnload); + view.addEventListener('viewshow', function () { if (subtitleSettingsInstance) { subtitleSettingsInstance.loadData(); } else { From f0bab2d3aae3dbf65630658e2c1997413e4500fd Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 2 Sep 2020 10:53:08 +0000 Subject: [PATCH 260/285] Bump @babel/eslint-parser from 7.11.4 to 7.11.5 Bumps [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) from 7.11.4 to 7.11.5. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.11.5/eslint/babel-eslint-parser) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 8fcc233578..350923f2c1 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "license": "GPL-2.0-or-later", "devDependencies": { "@babel/core": "^7.11.5", - "@babel/eslint-parser": "^7.11.4", + "@babel/eslint-parser": "^7.11.5", "@babel/eslint-plugin": "^7.11.3", "@babel/plugin-proposal-class-properties": "^7.10.1", "@babel/plugin-proposal-private-methods": "^7.10.1", diff --git a/yarn.lock b/yarn.lock index 0ea2a07b9f..11d6f90627 100644 --- a/yarn.lock +++ b/yarn.lock @@ -40,10 +40,10 @@ semver "^5.4.1" source-map "^0.6.1" -"@babel/eslint-parser@^7.11.4": - version "7.11.4" - resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.11.4.tgz#f79bac69088097a8418f5c67fc462c89a72c2f48" - integrity sha512-syIzsqEUvmc6WEYbLqrvBODCM1wMo3SQ4h4G9gtCcQctv1VUlA5davRAWHFm7ncQlxcJs4I7kaflsnAP8iA8Aw== +"@babel/eslint-parser@^7.11.5": + version "7.11.5" + resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.11.5.tgz#398192b8d1cd3678efb709f5ab09d9aa2a2218fd" + integrity sha512-DZ3maD3ciwRg1pOzEpJ1outlV1DA/A8XHDQoyL69fC3RIJMlMq1UPudgfRkW0YFqmQPR6OPvu8chaT7Yq2Mm8A== dependencies: eslint-scope "5.1.0" eslint-visitor-keys "^1.3.0" From ff2210eabbbd88f7f185d7c55809260b10c4b7f6 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 2 Sep 2020 11:16:36 +0000 Subject: [PATCH 261/285] Bump @babel/polyfill from 7.10.4 to 7.11.5 Bumps [@babel/polyfill](https://github.com/babel/babel/tree/HEAD/packages/babel-polyfill) from 7.10.4 to 7.11.5. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.11.5/packages/babel-polyfill) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 41fcce6638..1841f75cb8 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "@babel/plugin-proposal-class-properties": "^7.10.1", "@babel/plugin-proposal-private-methods": "^7.10.1", "@babel/plugin-transform-modules-amd": "^7.10.5", - "@babel/polyfill": "^7.8.7", + "@babel/polyfill": "^7.11.5", "@babel/preset-env": "^7.11.5", "autoprefixer": "^9.8.6", "babel-loader": "^8.0.6", diff --git a/yarn.lock b/yarn.lock index ab3073dc48..ea78374d35 100644 --- a/yarn.lock +++ b/yarn.lock @@ -729,10 +729,10 @@ "@babel/helper-create-regexp-features-plugin" "^7.10.4" "@babel/helper-plugin-utils" "^7.10.4" -"@babel/polyfill@^7.8.7": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/polyfill/-/polyfill-7.10.4.tgz#915e5bfe61490ac0199008e35ca9d7d151a8e45a" - integrity sha512-8BYcnVqQ5kMD2HXoHInBH7H1b/uP3KdnwCYXOqFnXqguOyuu443WXusbIUbWEfY3Z0Txk0M1uG/8YuAMhNl6zg== +"@babel/polyfill@^7.11.5": + version "7.11.5" + resolved "https://registry.yarnpkg.com/@babel/polyfill/-/polyfill-7.11.5.tgz#df550b2ec53abbc2ed599367ec59e64c7a707bb5" + integrity sha512-FunXnE0Sgpd61pKSj2OSOs1D44rKTD3pGOfGilZ6LGrrIH0QEtJlTjqOqdF8Bs98JmjfGhni2BBkTfv9KcKJ9g== dependencies: core-js "^2.6.5" regenerator-runtime "^0.13.4" From 43f9fda29f4e7efa23afbf50271ac5633c3f774f Mon Sep 17 00:00:00 2001 From: Cameron Date: Wed, 2 Sep 2020 12:18:49 +0100 Subject: [PATCH 262/285] Update dependabot to weekly --- .dependabot/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.dependabot/config.yml b/.dependabot/config.yml index 4ee827471a..02dfd18aac 100644 --- a/.dependabot/config.yml +++ b/.dependabot/config.yml @@ -2,4 +2,4 @@ version: 1 update_configs: - package_manager: "javascript" directory: "/" - update_schedule: "live" + update_schedule: "weekly" From b7d1d0c7532fb3f6fab5e9215453ad43c05095f5 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 2 Sep 2020 11:19:38 +0000 Subject: [PATCH 263/285] Bump @babel/eslint-plugin from 7.11.3 to 7.11.5 Bumps [@babel/eslint-plugin](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-plugin) from 7.11.3 to 7.11.5. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.11.5/eslint/babel-eslint-plugin) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index ccc3a8de40..9d37d1773d 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "devDependencies": { "@babel/core": "^7.11.5", "@babel/eslint-parser": "^7.11.5", - "@babel/eslint-plugin": "^7.11.3", + "@babel/eslint-plugin": "^7.11.5", "@babel/plugin-proposal-class-properties": "^7.10.1", "@babel/plugin-proposal-private-methods": "^7.10.1", "@babel/plugin-transform-modules-amd": "^7.10.5", diff --git a/yarn.lock b/yarn.lock index 05b6a7d8a6..110327b20d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -49,10 +49,10 @@ eslint-visitor-keys "^1.3.0" semver "^6.3.0" -"@babel/eslint-plugin@^7.11.3": - version "7.11.3" - resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.11.3.tgz#66b531f90592f8f0621d072b59ea2c37c91e8d0d" - integrity sha512-gmi3lgaWlYpNb+h7qPfv5GVz2ZVwzCDyV+kAGj+3il+Mv5uan5Yccvdw7m14UAAY2tdTbB0VgRF6ZLjUbrUm0g== +"@babel/eslint-plugin@^7.11.5": + version "7.11.5" + resolved "https://registry.yarnpkg.com/@babel/eslint-plugin/-/eslint-plugin-7.11.5.tgz#651fed485493cee8ae803d6a22e3b4f21315f328" + integrity sha512-klliWjB6CeMeqZ7IeJporPr7raD3Ttc8MF9HPNyTvddmBB9Bg7gbiN43rZvaqvsYiktPQLHZrD/Of7vtl6EYpw== dependencies: eslint-rule-composer "^0.3.0" From bf9c8778b0d52fb636e859d138fee8a291fa5689 Mon Sep 17 00:00:00 2001 From: dkanada Date: Wed, 2 Sep 2020 20:50:32 +0900 Subject: [PATCH 264/285] allow plugin config changes on standalone --- src/components/appRouter.js | 4 +++- src/components/viewContainer.js | 8 ++++---- .../dashboard/plugins/installed/index.js | 2 +- src/plugins/comicsPlayer/plugin.js | 3 +-- src/scripts/clientUtils.js | 18 +++--------------- src/scripts/libraryMenu.js | 4 ++-- 6 files changed, 14 insertions(+), 25 deletions(-) diff --git a/src/components/appRouter.js b/src/components/appRouter.js index 75199fc639..a6bb6da618 100644 --- a/src/components/appRouter.js +++ b/src/components/appRouter.js @@ -308,7 +308,9 @@ class AppRouter { url = route.contentPath || route.path; } - if (url.indexOf('://') === -1) { + if (url.includes('configurationpage')) { + url = ApiClient.getUrl('/web' + url); + } else if (url.indexOf('://') === -1) { // Put a slash at the beginning but make sure to avoid a double slash if (url.indexOf('/') !== 0) { url = '/' + url; diff --git a/src/components/viewContainer.js b/src/components/viewContainer.js index 9d64130cdb..c39ad2ba84 100644 --- a/src/components/viewContainer.js +++ b/src/components/viewContainer.js @@ -13,8 +13,9 @@ import 'css!components/viewManager/viewContainer'; controllerUrl = controllerUrl.substring('__plugin/'.length); } - controllerUrl = Dashboard.getConfigurationResourceUrl(controllerUrl); - return import(controllerUrl).then((ControllerFactory) => { + controllerUrl = Dashboard.getPluginUrl(controllerUrl); + let apiUrl = ApiClient.getUrl('/web/' + controllerUrl); + return import(apiUrl).then((ControllerFactory) => { options.controllerFactory = ControllerFactory; }); } @@ -32,7 +33,7 @@ import 'css!components/viewManager/viewContainer'; pageIndex = 0; } - const isPluginpage = options.url.toLowerCase().indexOf('/configurationpage') !== -1; + const isPluginpage = options.url.includes('configurationpage'); const newViewInfo = normalizeNewView(options, isPluginpage); const newView = newViewInfo.elem; @@ -243,4 +244,3 @@ export default { reset: reset, setOnBeforeChange: setOnBeforeChange }; - diff --git a/src/controllers/dashboard/plugins/installed/index.js b/src/controllers/dashboard/plugins/installed/index.js index 4eb5477a2d..cdf21d6a3c 100644 --- a/src/controllers/dashboard/plugins/installed/index.js +++ b/src/controllers/dashboard/plugins/installed/index.js @@ -39,7 +39,7 @@ function getPluginCardHtml(plugin, pluginConfigurationPages) { const configPage = pluginConfigurationPages.filter(function (pluginConfigurationPage) { return pluginConfigurationPage.PluginId == plugin.Id; })[0]; - const configPageUrl = configPage ? Dashboard.getConfigurationPageUrl(configPage.Name) : null; + const configPageUrl = configPage ? Dashboard.getPluginUrl(configPage.Name) : null; let html = ''; html += "
    "; html += '
    '; diff --git a/src/plugins/comicsPlayer/plugin.js b/src/plugins/comicsPlayer/plugin.js index 5f9546b9fe..7d0ac92df9 100644 --- a/src/plugins/comicsPlayer/plugin.js +++ b/src/plugins/comicsPlayer/plugin.js @@ -1,4 +1,3 @@ -import connectionManager from 'connectionManager'; import loading from 'loading'; import dialogHelper from 'dialogHelper'; import keyboardnavigation from 'keyboardnavigation'; @@ -94,7 +93,7 @@ export class ComicsPlayer { loading.show(); let serverId = item.ServerId; - let apiClient = connectionManager.getApiClient(serverId); + let apiClient = window.connectionManager.getApiClient(serverId); libarchive.Archive.init({ workerUrl: appRouter.baseUrl() + '/libraries/worker-bundle.js' diff --git a/src/scripts/clientUtils.js b/src/scripts/clientUtils.js index 28421c59b9..4d3c049e8c 100644 --- a/src/scripts/clientUtils.js +++ b/src/scripts/clientUtils.js @@ -62,20 +62,10 @@ export function logout() { }); } -export function getConfigurationPageUrl(name) { +export function getPluginUrl(name) { return 'configurationpage?name=' + encodeURIComponent(name); } -export function getConfigurationResourceUrl(name) { - if (AppInfo.isNativeApp) { - return ApiClient.getUrl('web/ConfigurationPage', { - name: name - }); - } - - return getConfigurationPageUrl(name); -} - export function navigate(url, preserveQueryString) { if (!url) { throw new Error('url cannot be null or empty'); @@ -196,8 +186,7 @@ window.Dashboard = { alert, capabilities, confirm, - getConfigurationPageUrl, - getConfigurationResourceUrl, + getPluginUrl, getCurrentUser, getCurrentUserId, hideLoadingMsg, @@ -216,8 +205,7 @@ export default { alert, capabilities, confirm, - getConfigurationPageUrl, - getConfigurationResourceUrl, + getPluginUrl, getCurrentUser, getCurrentUserId, hideLoadingMsg, diff --git a/src/scripts/libraryMenu.js b/src/scripts/libraryMenu.js index c0e277a75b..04edecf198 100644 --- a/src/scripts/libraryMenu.js +++ b/src/scripts/libraryMenu.js @@ -484,8 +484,8 @@ import 'flexStyles'; links.push({ name: pluginItem.DisplayName, icon: pluginItem.MenuIcon || 'folder', - href: Dashboard.getConfigurationPageUrl(pluginItem.Name), - pageUrls: [Dashboard.getConfigurationPageUrl(pluginItem.Name)] + href: Dashboard.getPluginUrl(pluginItem.Name), + pageUrls: [Dashboard.getPluginUrl(pluginItem.Name)] }); } } From 819bd0e02043a826d53b9a4cc6ac938d46ce4341 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 2 Sep 2020 14:38:37 +0000 Subject: [PATCH 265/285] Bump webpack-stream from 6.0.0 to 6.1.0 Bumps [webpack-stream](https://github.com/shama/webpack-stream) from 6.0.0 to 6.1.0. - [Release notes](https://github.com/shama/webpack-stream/releases) - [Commits](https://github.com/shama/webpack-stream/compare/v6.0.0...v6.1.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/package.json b/package.json index a489192c64..4dc74d6275 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ "stylelint-order": "^4.1.0", "webpack": "^4.44.1", "webpack-merge": "^4.2.2", - "webpack-stream": "^6.0.0", + "webpack-stream": "^6.1.0", "worker-plugin": "^5.0.0" }, "dependencies": { diff --git a/yarn.lock b/yarn.lock index 52a1a3d873..da0a07c5ae 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10964,10 +10964,10 @@ supports-color@^6.1.0: dependencies: has-flag "^3.0.0" -supports-color@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" - integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g== +supports-color@^7.1.0, supports-color@^7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== dependencies: has-flag "^4.0.0" @@ -11981,17 +11981,17 @@ webpack-sources@^1.4.0, webpack-sources@^1.4.1: source-list-map "^2.0.0" source-map "~0.6.1" -webpack-stream@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/webpack-stream/-/webpack-stream-6.0.0.tgz#0524b739a3c3a487362ee2e97522d0b8d366a510" - integrity sha512-bYv7apmGB1j0JBpa5Fgyky/1mWyzHOnUPXv+RmkgpK4FXPWCMBspgnYFmhE7Ly68JSp77eonFzm6WArWy4afpQ== +webpack-stream@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/webpack-stream/-/webpack-stream-6.1.0.tgz#047348e36793432f329c7b5ff13e6e9b6872c152" + integrity sha512-kFMnDzFTzyvVmn4ajaj0xEJavvYizd3I/KmQ6C5aUstcAkNwZUidxkk/uEaEPSydaAn66v8ZcP1+bhKSshNJUQ== dependencies: fancy-log "^1.3.3" lodash.clone "^4.3.2" lodash.some "^4.2.2" memory-fs "^0.5.0" plugin-error "^1.0.1" - supports-color "^7.1.0" + supports-color "^7.2.0" through "^2.3.8" vinyl "^2.1.0" webpack "^4.26.1" From 4e4175c0883e506affa13dfca658b7727437d618 Mon Sep 17 00:00:00 2001 From: Moritz Date: Wed, 2 Sep 2020 15:14:09 +0000 Subject: [PATCH 266/285] Translated using Weblate (German) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/de/ --- src/strings/de.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/de.json b/src/strings/de.json index 09b6ae3820..1e6c6a6032 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -1375,5 +1375,7 @@ "Profile": "Profil", "MusicVideos": "Musikvideos", "Image": "Bild", - "Data": "Daten" + "Data": "Daten", + "SpecialFeatures": "Besonderheiten", + "Poster": "Poster" } From d4534b7962ed8350179e5e6657c2cf7d0e904ea1 Mon Sep 17 00:00:00 2001 From: Leon So Date: Wed, 2 Sep 2020 15:15:59 +0000 Subject: [PATCH 267/285] Translated using Weblate (Chinese (Traditional)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/zh_Hant/ --- src/strings/zh-tw.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/strings/zh-tw.json b/src/strings/zh-tw.json index 8c276c3711..80f6fa14ba 100644 --- a/src/strings/zh-tw.json +++ b/src/strings/zh-tw.json @@ -1365,5 +1365,11 @@ "LabelSubtitleVerticalPosition": "垂直位置:", "PreviousTrack": "上一首", "NextTrack": "下一首", - "LabelUnstable": "不穩定" + "LabelUnstable": "不穩定", + "Restart": "重新啟動", + "ResetPassword": "重設密碼", + "Poster": "海報", + "MusicVideos": "音樂影片", + "Image": "圖片", + "Data": "資料" } From 8bbb7ba747a91547a1cabba6c8232c064c1b4dd8 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 2 Sep 2020 17:13:51 +0000 Subject: [PATCH 268/285] Bump eslint from 7.8.0 to 7.8.1 Bumps [eslint](https://github.com/eslint/eslint) from 7.8.0 to 7.8.1. - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v7.8.0...v7.8.1) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 24 +++++++++++++++--------- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/package.json b/package.json index 4dc74d6275..5ca5c15151 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "css-loader": "^4.2.2", "cssnano": "^4.1.10", "del": "^5.1.0", - "eslint": "^7.8.0", + "eslint": "^7.8.1", "eslint-plugin-compat": "^3.5.1", "eslint-plugin-eslint-comments": "^3.2.0", "eslint-plugin-import": "^2.21.2", diff --git a/yarn.lock b/yarn.lock index da0a07c5ae..afb0f040a6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -867,14 +867,20 @@ resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7" integrity sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw== -"@eslint/eslintrc@^0.1.0": - version "0.1.0" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.1.0.tgz#3d1f19fb797d42fb1c85458c1c73541eeb1d9e76" - integrity sha512-bfL5365QSCmH6cPeFT7Ywclj8C7LiF7sO6mUGzZhtAMV7iID1Euq6740u/SRi4C80NOnVz/CEfK8/HO+nCAPJg== +"@eslint/eslintrc@^0.1.3": + version "0.1.3" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.1.3.tgz#7d1a2b2358552cc04834c0979bd4275362e37085" + integrity sha512-4YVwPkANLeNtRjMekzux1ci8hIaH5eGKktGqR0d3LWsKNn5B2X/1Z6Trxy7jQXl9EBGE6Yj02O+t09FMeRllaA== dependencies: ajv "^6.12.4" debug "^4.1.1" + espree "^7.3.0" + globals "^12.1.0" + ignore "^4.0.6" import-fresh "^3.2.1" + js-yaml "^3.13.1" + lodash "^4.17.19" + minimatch "^3.0.4" strip-json-comments "^3.1.1" "@gulp-sourcemaps/identity-map@1.X": @@ -4051,13 +4057,13 @@ eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== -eslint@^7.8.0: - version "7.8.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.8.0.tgz#9a3e2e6e4d0a3f8c42686073c25ebf2e91443e8a" - integrity sha512-qgtVyLZqKd2ZXWnLQA4NtVbOyH56zivOAdBFWE54RFkSZjokzNrcP4Z0eVWsZ+84ByXv+jL9k/wE1ENYe8xRFw== +eslint@^7.8.1: + version "7.8.1" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.8.1.tgz#e59de3573fb6a5be8ff526c791571646d124a8fa" + integrity sha512-/2rX2pfhyUG0y+A123d0ccXtMm7DV7sH1m3lk9nk2DZ2LReq39FXHueR9xZwshE5MdfSf0xunSaMWRqyIA6M1w== dependencies: "@babel/code-frame" "^7.0.0" - "@eslint/eslintrc" "^0.1.0" + "@eslint/eslintrc" "^0.1.3" ajv "^6.10.0" chalk "^4.0.0" cross-spawn "^7.0.2" From 108f5a9ae3bf6a57309a8672dcbd724711b81f11 Mon Sep 17 00:00:00 2001 From: Airichan Date: Wed, 2 Sep 2020 17:34:08 +0000 Subject: [PATCH 269/285] Added translation using Weblate (Thai) --- src/strings/th.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 src/strings/th.json diff --git a/src/strings/th.json b/src/strings/th.json new file mode 100644 index 0000000000..0967ef424b --- /dev/null +++ b/src/strings/th.json @@ -0,0 +1 @@ +{} From f26e90ba0aa0885953ed13bdf03b5903274a226d Mon Sep 17 00:00:00 2001 From: Sverre Date: Wed, 2 Sep 2020 17:53:12 +0000 Subject: [PATCH 270/285] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegi?= =?UTF-8?q?an=20Bokm=C3=A5l)=20Translation:=20Jellyfin/Jellyfin=20Web=20Tr?= =?UTF-8?q?anslate-URL:=20https://translate.jellyfin.org/projects/jellyfin?= =?UTF-8?q?/jellyfin-web/nb=5FNO/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/strings/nb.json | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/strings/nb.json b/src/strings/nb.json index 7bde7f6b3f..36210fb9f9 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -1365,5 +1365,19 @@ "LabelSubtitleVerticalPosition": "Vertikal posisjon:", "PreviousTrack": "Hopp til forrige", "MessageGetInstalledPluginsError": "En feil oppstod under henting av listen over installerte tillegg.", - "MessagePluginInstallError": "En feil oppstod under installasjon av tillegget." + "MessagePluginInstallError": "En feil oppstod under installasjon av tillegget.", + "ThumbCard": "Miniatyrbildekort", + "SpecialFeatures": "Spesialfunksjoner", + "PosterCard": "Plakatkort", + "Video": "Video", + "Subtitle": "Undertekst", + "SelectServer": "Velg tjener", + "Restart": "Restart", + "ResetPassword": "Tilbakestill passord", + "Profile": "Profil", + "Poster": "Plakat", + "PlaybackRate": "Avspillingshastighet", + "MusicVideos": "Musikkvideoer", + "Image": "Bilde", + "Data": "Data" } From 9ff7512bb49860d751a396afbc4f2ba99d8be23f Mon Sep 17 00:00:00 2001 From: Airichan Date: Wed, 2 Sep 2020 17:35:19 +0000 Subject: [PATCH 271/285] Translated using Weblate (Thai) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/th/ --- src/strings/th.json | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/strings/th.json b/src/strings/th.json index 0967ef424b..8eff59cd82 100644 --- a/src/strings/th.json +++ b/src/strings/th.json @@ -1 +1,8 @@ -{} +{ + "AddToPlayQueue": "เพิ่มไปยังคิวเล่น", + "AddToCollection": "เพิ่มไปยังคอลเลกชัน", + "Add": "เพิ่ม", + "Actor": "นักแสดง", + "AccessRestrictedTryAgainLater": "ขณะนี้การเข้าถึงถูกจำกัด โปรดลองอีกครั้งในภายหลัง", + "Absolute": "แน่นอน" +} From 258456875c4cd417b30d31f77614284d1f017588 Mon Sep 17 00:00:00 2001 From: Sverre Date: Wed, 2 Sep 2020 18:57:04 +0000 Subject: [PATCH 272/285] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegi?= =?UTF-8?q?an=20Bokm=C3=A5l)=20Translation:=20Jellyfin/Jellyfin=20Web=20Tr?= =?UTF-8?q?anslate-URL:=20https://translate.jellyfin.org/projects/jellyfin?= =?UTF-8?q?/jellyfin-web/nb=5FNO/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/strings/nb.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/nb.json b/src/strings/nb.json index 36210fb9f9..b53bb49c4b 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -1268,7 +1268,7 @@ "LabelDeinterlaceMethod": "Deinterlacing metode:", "DeinterlaceMethodHelp": "Velg deinterlacing metoden som skal bli brukt når man transkoder interlaced innhold.", "ButtonTogglePlaylist": "Spilleliste", - "EnableBlurHashHelp": "Bilder som fortsatt lastes inn vil vises med en tåkete plassholder", + "EnableBlurHashHelp": "Bilder som fortsatt lastes inn vil vises med en unik plassholder.", "EnableBlurHash": "Aktiver tåkete plassholdere for bilder", "UnsupportedPlayback": "Jellyfin kan ikke dekryptere innhold beskyttet med DRM, men alt innhold vil bli forsøkt uansett, inkludert beskyttede titler. Noen filer kan fremstå helt svarte grunnet kryptering eller andre ikke støttede funksjoner, som interaktive titler.", "OnApplicationStartup": "Ved oppstart av applikasjonen", From 388b33a6b440b31dd5ff57aa4567ac605d3949cb Mon Sep 17 00:00:00 2001 From: Thomas Schwery Date: Wed, 2 Sep 2020 20:23:28 +0000 Subject: [PATCH 273/285] Translated using Weblate (French) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/fr/ --- src/strings/fr.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/strings/fr.json b/src/strings/fr.json index 42419fbd62..b38811d66a 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -1368,12 +1368,13 @@ "MessagePluginInstallError": "Une erreur est survenue durant l'installation de l'extension.", "PlaybackRate": "Vitesse de lecture", "Subtitle": "Sous-titre", - "SelectServer": "Choisissez un serveur", + "SelectServer": "Sélectionnez un serveur", "Restart": "Redémarrer", "ResetPassword": "Réinitialiser le mot de passe", "Profile": "Profil", "Poster": "Affiche", "MusicVideos": "Clips musicaux", "Image": "Image", - "Data": "Données" + "Data": "Données", + "Video": "Vidéo" } From 9f1ba992d0eb3642ba31b22a49b050b1dc254bdb Mon Sep 17 00:00:00 2001 From: Elliot Moore Date: Wed, 2 Sep 2020 23:35:15 +0000 Subject: [PATCH 274/285] Translated using Weblate (English (United Kingdom)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/en_GB/ --- src/strings/en-gb.json | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/strings/en-gb.json b/src/strings/en-gb.json index 4ef5c732b4..e1746ae656 100644 --- a/src/strings/en-gb.json +++ b/src/strings/en-gb.json @@ -1366,5 +1366,18 @@ "MessagePluginInstallError": "An error occurred while installing the plugin.", "PlaybackRate": "Playback Rate", "NextTrack": "Skip to next", - "LabelUnstable": "Unstable" + "LabelUnstable": "Unstable", + "Video": "Video", + "ThumbCard": "Thumb Card", + "Subtitle": "Subtitle", + "SpecialFeatures": "Special Features", + "SelectServer": "Select Server", + "Restart": "Restart", + "ResetPassword": "Reset Password", + "Profile": "Profile", + "PosterCard": "Poster Card", + "Poster": "Poster", + "MusicVideos": "Music Videos", + "Image": "Image", + "Data": "Data" } From 41ff177d7281c7d408033bd89796f93b7ddedef7 Mon Sep 17 00:00:00 2001 From: Elliot Moore Date: Wed, 2 Sep 2020 23:36:30 +0000 Subject: [PATCH 275/285] Translated using Weblate (English (United Kingdom)) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/en_GB/ --- src/strings/en-gb.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/en-gb.json b/src/strings/en-gb.json index e1746ae656..a97b010175 100644 --- a/src/strings/en-gb.json +++ b/src/strings/en-gb.json @@ -1296,7 +1296,7 @@ "ApiKeysCaption": "List of the currently enabled API keys", "ButtonCast": "Cast", "ButtonSyncPlay": "SyncPlay", - "EnableBlurHashHelp": "Images that are still being loaded will be displayed with a blurred placeholder", + "EnableBlurHashHelp": "Images that are still being loaded will be displayed with a blurred placeholder.", "EnableBlurHash": "Enable blurred placeholders for images", "TabRepositories": "Repositories", "SyncPlayAccessHelp": "Select the level of access this user has to the SyncPlay feature. SyncPlay enables to sync playback with other devices.", From b522b63442b7e3994e21600fcdef886f71fbc0b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcin=20Woli=C5=84ski?= Date: Thu, 3 Sep 2020 05:55:36 +0000 Subject: [PATCH 276/285] Translated using Weblate (Polish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/pl/ --- src/strings/pl.json | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/strings/pl.json b/src/strings/pl.json index 5885911680..e2130dc4eb 100644 --- a/src/strings/pl.json +++ b/src/strings/pl.json @@ -1366,5 +1366,18 @@ "LabelSubtitleVerticalPosition": "Pozycja pionowa:", "MessageGetInstalledPluginsError": "Wystąpił błąd podczas pobierania listy aktualnie zainstalowanych wtyczek.", "MessagePluginInstallError": "Wystąpił błąd podczas instalacji wtyczki.", - "PlaybackRate": "Szybkość odtwarzania" + "PlaybackRate": "Szybkość odtwarzania", + "Image": "Obraz", + "Data": "Data", + "Video": "Wideo", + "ThumbCard": "Karta miniaturki", + "Subtitle": "Napisy", + "SpecialFeatures": "Specjalne funkcje programu", + "SelectServer": "Wybierz serwer", + "Restart": "Ponowne uruchomienie", + "ResetPassword": "Reset hasła", + "Profile": "Profil", + "PosterCard": "Widokówka", + "Poster": "Plakat", + "MusicVideos": "Teledyski" } From 02bcc830c15392558c98926f7f11a328293d1d6d Mon Sep 17 00:00:00 2001 From: Claus Vium Date: Thu, 3 Sep 2020 12:20:02 +0200 Subject: [PATCH 277/285] Fix task filter for the scan task button --- src/scripts/taskbutton.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/scripts/taskbutton.js b/src/scripts/taskbutton.js index 6df7ee848d..fc56bbfaae 100644 --- a/src/scripts/taskbutton.js +++ b/src/scripts/taskbutton.js @@ -14,7 +14,7 @@ export default function (options) { function updateTasks(tasks) { const task = tasks.filter(function (t) { - return t.Key == options.taskKey; + return t.ScheduledTask.Key == options.taskKey; })[0]; if (options.panel) { From 2a36ec463b19c260c8b2f7627038fc4ee77bcf9a Mon Sep 17 00:00:00 2001 From: josteinh Date: Thu, 3 Sep 2020 08:40:28 +0000 Subject: [PATCH 278/285] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegi?= =?UTF-8?q?an=20Bokm=C3=A5l)=20Translation:=20Jellyfin/Jellyfin=20Web=20Tr?= =?UTF-8?q?anslate-URL:=20https://translate.jellyfin.org/projects/jellyfin?= =?UTF-8?q?/jellyfin-web/nb=5FNO/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/strings/nb.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/strings/nb.json b/src/strings/nb.json index 546f94f638..4ff5a55ea3 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -855,7 +855,7 @@ "Share": "Del", "ShowAdvancedSettings": "Vis avanserte innstillinger", "ShowIndicatorsFor": "Vis indikatorer for:", - "Shows": "Programmer", + "Shows": "Program", "SkipEpisodesAlreadyInMyLibrary": "Ikke ta opp episoder som allerede finnes i biblioteket mitt", "SkipEpisodesAlreadyInMyLibraryHelp": "Episoder vil bli sammenlignet med sesong- og episodenummer når de er tilgjengelige.", "Songs": "Sanger", From fdb181d15df7493f15ce66e7f609d237c32ee7bc Mon Sep 17 00:00:00 2001 From: Mithilesh Zavar Date: Thu, 3 Sep 2020 16:29:12 +0000 Subject: [PATCH 279/285] Translated using Weblate (Hindi) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/hi/ --- src/strings/hi-in.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/strings/hi-in.json b/src/strings/hi-in.json index 3e17566d5a..5e26c9ad69 100644 --- a/src/strings/hi-in.json +++ b/src/strings/hi-in.json @@ -93,5 +93,7 @@ "MessageBrowsePluginCatalog": "उपलब्ध प्लगिन्स देखने के लिए हमारे कैटलॉग को ब्राउज़ करें।", "Browse": "ब्राउज़", "BoxSet": "बॉक्स सेट", - "BurnSubtitlesHelp": "निर्धारित करता है कि वीडियो ट्रांसकोडिंग करते समय सर्वर को उपशीर्षक बर्न-इन करना चाहिए। इससे बचने से प्रदर्शन में बहुत सुधार होगा। छवि आधारित उपशीर्षक (VOBSUB, PGS, SUB, IDX, …) एवं ASS अथवा SSA जैसे उपशीर्षक बर्न-इन करने के लिए ऑटो का चयन करें।" + "BurnSubtitlesHelp": "निर्धारित करता है कि वीडियो ट्रांसकोडिंग करते समय सर्वर को उपशीर्षक बर्न-इन करना चाहिए। इससे बचने से प्रदर्शन में बहुत सुधार होगा। छवि आधारित उपशीर्षक (VOBSUB, PGS, SUB, IDX, …) एवं ASS अथवा SSA जैसे उपशीर्षक बर्न-इन करने के लिए ऑटो का चयन करें।", + "ButtonRemove": "हटाना", + "ButtonOpen": "खोलो" } From 986be16d984ef7a11828a10ec5ca58036d034b22 Mon Sep 17 00:00:00 2001 From: Adam Bokor Date: Thu, 3 Sep 2020 15:34:09 +0000 Subject: [PATCH 280/285] Translated using Weblate (Hungarian) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/hu/ --- src/strings/hu.json | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/strings/hu.json b/src/strings/hu.json index 7623ffbea2..8d87260ccc 100644 --- a/src/strings/hu.json +++ b/src/strings/hu.json @@ -1353,5 +1353,20 @@ "LabelSubtitleVerticalPosition": "Függőleges pozíció:", "MessageGetInstalledPluginsError": "Hiba történt a jelenleg telepített bővítmények lekérdezése során.", "MessagePluginInstallError": "Hiba történt a bővítmény telepítése során.", - "PlaybackRate": "Lejátszási sebesség" + "PlaybackRate": "Lejátszási sebesség", + "VideoAudio": "Videó hang", + "Video": "Videó", + "ThumbCard": "Miniatűr kártya", + "Subtitle": "Felirat", + "SelectServer": "Szerver kiválasztása", + "Restart": "Újraindítás", + "ResetPassword": "Jelszó visszaállítása", + "Profile": "Profil", + "PosterCard": "Poszter kártya", + "Poster": "Poszter", + "Photo": "Kép", + "MusicVideos": "Zenei videóklippek", + "Image": "Kép", + "Other": "További", + "Data": "Adat" } From 78ec90c03e04e1afa57619838a8839c95dcab936 Mon Sep 17 00:00:00 2001 From: josteinh Date: Thu, 3 Sep 2020 15:34:12 +0000 Subject: [PATCH 281/285] =?UTF-8?q?Translated=20using=20Weblate=20(Norwegi?= =?UTF-8?q?an=20Bokm=C3=A5l)=20Translation:=20Jellyfin/Jellyfin=20Web=20Tr?= =?UTF-8?q?anslate-URL:=20https://translate.jellyfin.org/projects/jellyfin?= =?UTF-8?q?/jellyfin-web/nb=5FNO/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/strings/nb.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/nb.json b/src/strings/nb.json index 4ff5a55ea3..c50d95c872 100644 --- a/src/strings/nb.json +++ b/src/strings/nb.json @@ -1366,5 +1366,6 @@ "PlaybackRate": "Avspillingshastighet", "MusicVideos": "Musikkvideoer", "Image": "Bilde", - "Data": "Data" + "Data": "Data", + "Other": "Annet" } From 265608ba3f04983a60aee2a48e8e2f4fd6fe914d Mon Sep 17 00:00:00 2001 From: wille1101 Date: Thu, 3 Sep 2020 16:01:54 +0000 Subject: [PATCH 282/285] Translated using Weblate (Swedish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sv/ --- src/strings/sv.json | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/src/strings/sv.json b/src/strings/sv.json index e6dbb2409e..4f940171d7 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -16,7 +16,7 @@ "AllEpisodes": "Alla avsnitt", "AllLanguages": "Alla språk", "AllLibraries": "Alla bibliotek", - "AllowHWTranscodingHelp": "Tillåt TV-mottagaren att omkoda strömmar. Det kan minska behovet av omkodning på Jellyfin Servern.", + "AllowHWTranscodingHelp": "Tillåt TV-mottagaren att omkoda strömmar. Det kan minska behovet av omkodning på Jellyfin-servern.", "AllowOnTheFlySubtitleExtraction": "Tillåt undertextsextrahering under uppspelning", "AllowOnTheFlySubtitleExtractionHelp": "Inbäddade undertexter kan extraheras ur videor och skickas till klienter i textformat för att förhindra omkodning. I vissa system kan detta ta en lång tid och förhindra videouppspelningen under extraheringsprocessen. Avaktivera detta för att bränna in inbäddade undertexter genom omkodning när de inte stöds av klienten.", "AllowRemoteAccess": "Tillåt fjärranslutningar till denna server.", @@ -126,7 +126,7 @@ "DeviceAccessHelp": "Detta tillämpas endast för enheter som kan bli unikt identifierade och som inte förhindrar åtkomst till browsern. Filtering av användarenheter kommer att blockera dom från att använda nya enheter tills dom har blivit godkända här.", "DirectPlaying": "Direktuppspelning", "DirectStreamHelp1": "Innehållet har en kompatibel upplösning och mediatyp (H.264, AC3, osv.) för enheten, men är i en inkompatibel filbehållare (mkv, avi, wmv, osv.). Videofilen kommer att packas om i realtid innan den strömmas till enheten.", - "DirectStreamHelp2": "Direktströmning av en fil använder väldigt lite resurser av CPU'n utan att bildkvaliten försämras.", + "DirectStreamHelp2": "Direktströmning använder väldigt lite processorkraft och har en försumbar påverkan på bildkvaliten.", "DirectStreaming": "Direktströmning", "Director": "Regissör", "Directors": "Regi", @@ -165,9 +165,9 @@ "Ended": "Avslutad", "EndsAtValue": "Slutar vid: {0}", "Episodes": "Avsnitt", - "ErrorAddingMediaPathToVirtualFolder": "Det gick inte att lägga till sökvägen. Kontrollera att sökvägen är korrekt och att Jellyfin Server har rättigheter till sökvägen.", + "ErrorAddingMediaPathToVirtualFolder": "Det gick inte att lägga till sökvägen. Kontrollera att sökvägen är korrekt och att Jellyfin har rättigheter till sökvägen.", "ErrorAddingTunerDevice": "Det gick inte att lågga till den här TV-mottagaren. Säkerställ att den går att nå och försök igen.", - "ErrorDeletingItem": "Det gick inte att ta bort det här objektet från Jellyfin-servern. Kontrollera att Jellyfin-servern har skrivrättigheter till media-mappen och försök igen.", + "ErrorDeletingItem": "Det gick inte att ta bort det här objektet från servern. Kontrollera att Jellyfin har skrivrättigheter till media-mappen och försök igen.", "ErrorGettingTvLineups": "Ett fel uppstod vid nedladdningen utav TV-sortimentet. Se till så att uppgifterna stämmer och försök igen.", "ErrorStartHourGreaterThanEnd": "Sluttiden måste vara senare än starttiden.", "ErrorPleaseSelectLineup": "Välj en lineup och försök igen. Om inga lineups finns tillgängliga, kolla så att användarnamn, lösenord och postnummer stämmer.", @@ -212,7 +212,7 @@ "HeaderAllowMediaDeletionFrom": "Tillåt mediaborttagning från", "HeaderApiKey": "API-nyckel", "HeaderApiKeys": "API-nycklar", - "HeaderApiKeysHelp": "Externa applikationer behöver en API-nyckel för att kommunicera med Jellyfin servern. Nycklar skapas genom att logga in med ett Jellyfin-konto eller genom att manuellt skapa en nyckel till applikationen.", + "HeaderApiKeysHelp": "Externa applikationer behöver en API-nyckel för att kommunicera med servern. Nycklar skapas genom att logga in med ett vanligt användarkonto eller genom att manuellt skapa en nyckel till applikationen.", "HeaderAudioBooks": "Ljudböcker", "HeaderAudioSettings": "Ljudinställningar", "HeaderBlockItemsWithNoRating": "Blockera innehåll med ingen eller okänd åldersgräns:", @@ -269,7 +269,7 @@ "HeaderInstantMix": "Direktmix", "HeaderKeepRecording": "Fortsätt spela in", "HeaderKeepSeries": "Behåll serie", - "HeaderKodiMetadataHelp": "Jellyfin har stöd för NFO-metadatafiler. För att aktivera eller inaktivera NFO-metadata, använd Metadata-fliken för att konfigurera NFO-stöd för dina mediatyper.", + "HeaderKodiMetadataHelp": "För att aktivera eller inaktivera NFO-metadata, redigera ett bibliotek och använd Metadata-fliken.", "HeaderLatestEpisodes": "Senaste avsnitten", "HeaderLatestMedia": "Nytillkommet", "HeaderLatestMovies": "Nytillkomna filmer", @@ -1113,8 +1113,8 @@ "AuthProviderHelp": "Välj en autentiseringsleverantör som ska användas för att autentisera denna användarens lösenord.", "Ascending": "Stigande", "AllowedRemoteAddressesHelp": "Kommaavgränsad lista av IP-adresser eller IP/nätmask poster för nätverk som kommer bli tillåtna att ansluta avlägset. Om fältet lämnas tomt så kommer alla avlägsna adresser tillåtas.", - "AllowMediaConversionHelp": "Tillåt eller neka tillgång till media konvertings funktionen.", - "AllowMediaConversion": "Tillåt media konvertering", + "AllowMediaConversionHelp": "Tillåt eller neka tillgång till mediakonvertingsfunktionen.", + "AllowMediaConversion": "Tillåt mediakonvertering", "Alerts": "Alarm", "HeaderMedia": "Media", "FormatValue": "Format: {0}", @@ -1344,5 +1344,7 @@ "MessageSyncPlayDisabled": "SyncPlay avaktiverat.", "MessageSyncPlayEnabled": "SyncPlay aktiverat.", "MessageNoGenresAvailable": "Aktivera vissa metadataleverantörer att hämta genrer från internet.", - "LabelRepositoryNameHelp": "Ett eget namn för att särskilja denna förvaringsplats från andra tillagda på din server." + "LabelRepositoryNameHelp": "Ett eget namn för att särskilja denna förvaringsplats från andra tillagda på din server.", + "Other": "Annat", + "Preview": "Förhandsvisning" } From 67c91a29e381ab3174eab11dfd658e6f6a50a045 Mon Sep 17 00:00:00 2001 From: Oatavandi Date: Thu, 3 Sep 2020 15:58:23 +0000 Subject: [PATCH 283/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index 6f7a8f060d..db550c1930 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -1380,5 +1380,10 @@ "Poster": "சுவரொட்டி", "MusicVideos": "இசை கானொளி", "Image": "படம்", - "Data": "தகவல்கள்" + "Data": "தகவல்கள்", + "VideoAudio": "வீடியோ ஆடியோ", + "Photo": "புகைப்படம்", + "LabelIconMaxResHelp": "Upnp: ஐகான் வழியாக வெளிப்படும் ஐகான்களின் அதிகபட்ச தீர்மானம்.", + "LabelAlbumArtMaxResHelp": "ஆல்பம் படத்தின் அதிகபட்ச தெளிவுத்திறன் upnp: albumArtURI வழியாக வெளிப்படும்.", + "Other": "மற்றவை" } From fddcd1b56ee3e536d3a28c85de742e2a2fd80ce2 Mon Sep 17 00:00:00 2001 From: wille1101 Date: Thu, 3 Sep 2020 16:41:11 +0000 Subject: [PATCH 284/285] Translated using Weblate (Swedish) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/sv/ --- src/strings/sv.json | 58 +++++++++++++++++++++++++-------------------- 1 file changed, 32 insertions(+), 26 deletions(-) diff --git a/src/strings/sv.json b/src/strings/sv.json index 4f940171d7..bfa628ef65 100644 --- a/src/strings/sv.json +++ b/src/strings/sv.json @@ -307,7 +307,7 @@ "HeaderPluginInstallation": "Installation av tillägg", "HeaderPreferredMetadataLanguage": "Önskat språk för metadata", "HeaderProfileInformation": "Profilinformation", - "HeaderProfileServerSettingsHelp": "Dessa inställningar kontrollerar hur Jellyfin Server presenterar sig för enheten.", + "HeaderProfileServerSettingsHelp": "Dessa inställningar bestämmer hur servern presenterar sig för enheter.", "HeaderRecentlyPlayed": "Nyligen spelade", "HeaderRecordingOptions": "Inspelningsalternativ", "HeaderRecordingPostProcessing": "Post-proccessing för inspelningar", @@ -328,7 +328,7 @@ "HeaderSelectServerCachePath": "Välj plats för serverns cache", "HeaderSelectServerCachePathHelp": "Bläddra fram till eller ange plats för serverns cache. Katalogen måste vara tillgänglig för skrivning.", "HeaderSelectTranscodingPath": "Välj plats för mellanlagring vid omkodning", - "HeaderSelectTranscodingPathHelp": "Bläddra fram till eller ange plats för omkodarens mellanlagring. Katalogen måste vara tillgänglig för skrivning.", + "HeaderSelectTranscodingPathHelp": "Bläddra fram till eller ange plats för lagringen av omkodningsfiler. Katalogen måste vara tillgänglig för skrivning.", "HeaderSendMessage": "Skicka meddelande", "HeaderSeriesOptions": "Seriealternativ", "HeaderSeriesStatus": "Seriestatus", @@ -370,8 +370,8 @@ "Horizontal": "Horisontell", "Identify": "Identifiera", "Images": "Bilder", - "ImportFavoriteChannelsHelp": "Aktivera för att endast importera kanaler som är märkta som favoriter på den här TV-mottagaren.", - "ImportMissingEpisodesHelp": "Om aktiverat importeras information om saknade episoder till din Jellyfin-databas och visas i seriesäsongerna. Detta kan innebära längre tidsåtgång för biblioteksskanningar.", + "ImportFavoriteChannelsHelp": "Endast kanaler som är märkta som favoriter på den här TV-mottagaren kommer att importeras.", + "ImportMissingEpisodesHelp": "Information om saknade episoder kommer att importeras till din Jellyfin-databas och visas i seriesäsongerna. Detta kan innebära att biblioteksskanningar tar en avsevärt längre tid.", "InstallingPackage": "Installerar {0} (version {1})", "InstantMix": "Omedelbar mix", "ItemCount": "{0} objekt", @@ -396,14 +396,14 @@ "LabelAppName": "Appens namn", "LabelAppNameExample": "Exempel: Sickbeard, Sonarr", "LabelArtists": "Artister:", - "LabelArtistsHelp": "Separera med vid flera ;", + "LabelArtistsHelp": "Separera flera artister med ett semikolon.", "LabelAudioLanguagePreference": "Önskat ljudspråk:", "LabelAutomaticallyRefreshInternetMetadataEvery": "Uppdatera metadata automatiskt ifrån internet:", "LabelBindToLocalNetworkAddress": "Knyt till lokal nätverksadress:", - "LabelBindToLocalNetworkAddressHelp": "Valfri. Skriv över den lokala IP-adressen att binda http-servern till. Om den är tom, kommer server knytas till alla tillgängliga adresser. Ändring kräver omstart av Jellyfin server.", + "LabelBindToLocalNetworkAddressHelp": "Skriv över den lokala IP-adressen för HTTP-servern. Om den är tom kommer servern knytas till alla tillgängliga adresser. Ändring av detta värde kräver en omstart.", "LabelBirthDate": "Födelsedatum:", "LabelBirthYear": "Födelseår:", - "LabelBlastMessageInterval": "Sändningsintervall i sekunder för \"jag lever\"-meddelanden", + "LabelBlastMessageInterval": "Sändningsintervall för \"jag lever\"-meddelanden", "LabelBlastMessageIntervalHelp": "Anger tid i sekunder mellan varje \"jag lever\"-meddelande.", "LabelBlockContentWithTags": "Blockera innehåll med etiketterna:", "LabelBurnSubtitles": "Bränn untertexter:", @@ -427,7 +427,7 @@ "LabelCustomRating": "Anpassad åldersgräns:", "LabelDateAdded": "Inlagd den:", "LabelDateAddedBehavior": "Hantering av datum för nytt innehåll:", - "LabelDateAddedBehaviorHelp": "Om ett metadatavärde finns kommer det att användas i stället för dessa.", + "LabelDateAddedBehaviorHelp": "Om ett metadatavärde finns kommer det alltid att användas i stället för dessa alternativ.", "LabelDateTimeLocale": "Språktidsformat:", "LabelDay": "Dag:", "LabelDeathDate": "Död:", @@ -456,8 +456,8 @@ "LabelEnableAutomaticPortMapHelp": "För automatiskt vidare publika portar från din router till lokala portar på din server via UPnP. Detta fungerar inte med alla router modeller eller nätverkskonfigurationer. Ändringar kommer inte appliceras inte tills server startats om.", "LabelEnableBlastAliveMessages": "Skicka ut \"jag lever\"-meddelanden", "LabelEnableBlastAliveMessagesHelp": "Aktivera detta om andra UPnP-enheter på nätverket har problem att upptäcka servern.", - "LabelEnableDlnaClientDiscoveryInterval": "Intervall för upptäckt av klienter (i sekunder)", - "LabelEnableDlnaClientDiscoveryIntervalHelp": "Ange hur ofta Jellyfin Server söker efter nya DLNA-klienter med hjälp av SSDP-protokollet.", + "LabelEnableDlnaClientDiscoveryInterval": "Intervall för att upptäcka klienter", + "LabelEnableDlnaClientDiscoveryIntervalHelp": "Ange hur ofta det söks efter nya DLNA-klienter med hjälp av SSDP-protokollet.", "LabelEnableDlnaDebugLogging": "Aktivera DLNA felsökningsloggning", "LabelEnableDlnaDebugLoggingHelp": "Detta resulterar i mycket stora loggfiler och rekommenderas bara vid felsökning.", "LabelEnableDlnaPlayTo": "Använd DLNA spela-upp-på", @@ -481,7 +481,7 @@ "LabelFont": "Typsnitt:", "LabelForgotPasswordUsernameHelp": "Skriv ditt användarnamn, om du kommer ihåg det.", "LabelFriendlyName": "Visningsnamn:", - "LabelServerNameHelp": "Det här namnet används för att identifiera servern. Ifall det lämnas tomt används datorns namn.", + "LabelServerNameHelp": "Det här namnet används för att identifiera servern. Ifall det lämnas tomt används serverns värdnamn.", "LabelGroupMoviesIntoCollections": "Gruppera filmer i samlingsboxar", "LabelGroupMoviesIntoCollectionsHelp": "I filmlistor visas filmer som ingår i en samlingsbox som ett enda objekt.", "LabelH264Crf": "H264-omkodning CRF:", @@ -491,7 +491,7 @@ "LabelHomeNetworkQuality": "Hemnätverkskvalitet:", "LabelHomeScreenSectionValue": "Hemskärmsdel {0}:", "LabelHttpsPort": "Lokalt portnummer för HTTPS:", - "LabelHttpsPortHelp": "Den lokala tcp-port som Jellyfin Server ska lyssna på https.", + "LabelHttpsPortHelp": "Den lokala TCP-porten för HTTPS-servern.", "LabelIconMaxHeight": "Maxhöjd på ikoner:", "LabelIconMaxWidth": "Maxbredd på ikoner:", "LabelIdentificationFieldHelp": "En skiftlägesokänslig delsträng eller regex-uttryck.", @@ -517,7 +517,7 @@ "LabelLanguage": "Språk:", "LabelLineup": "Uppsättning:", "LabelLocalHttpServerPortNumber": "Lokalt portnummer för HTTP:", - "LabelLocalHttpServerPortNumberHelp": "Den lokala tcp-port som Jellyfin Server ska lyssna på http.", + "LabelLocalHttpServerPortNumberHelp": "Den lokala TCP-porten för HTTP-servern.", "LabelLockItemToPreventChanges": "Lås det här objektet för att förhindra ändringar", "LabelLoginDisclaimer": "Ansvarsbegränsning vid inloggning:", "LabelLoginDisclaimerHelp": "Detta visas längst ned på inloggningssidan.", @@ -558,7 +558,7 @@ "LabelMovieCategories": "Filmkategorier:", "LabelMoviePrefix": "Film prefix:", "LabelMoviePrefixHelp": "Om ett prefix har lagts till filmertitlarna, skriv in det här så att servern kan hantera dessa korrekt.", - "LabelMovieRecordingPath": "Inspelningssökväg för film (valfri):", + "LabelMovieRecordingPath": "Inspelningssökväg för film:", "LabelMusicStreamingTranscodingBitrate": "Bithastighet vid omkodning av musik:", "LabelMusicStreamingTranscodingBitrateHelp": "Ange högsta bithastighet vid strömning av musik.", "LabelName": "Namn:", @@ -570,8 +570,8 @@ "LabelNumber": "Nr:", "LabelNumberOfGuideDays": "Antal dagars tablå att hämta:", "LabelNumberOfGuideDaysHelp": "Hämtning av en längre periods tablå ger möjlighet att boka inspelningar och se program längre fram i tiden, men ger längre nedladdningstid. \"Auto\" väljer baserat på antalet kanaler.", - "LabelOptionalNetworkPath": "(Valfri) Delad nätverksmapp:", - "LabelOptionalNetworkPathHelp": "Om denna mappen delas på ditt nätverk, kan den delade sökvägen tillåta Jellyfin-appar på andra enheter att streama mediafiler direkt. Som exempel, {0} eller {1}.", + "LabelOptionalNetworkPath": "Delad nätverksmapp:", + "LabelOptionalNetworkPathHelp": "Om denna mappen delas på ditt nätverk, kan den delade sökvägen tillåta klienter på andra enheter att streama mediafiler direkt. Till exempel, {0} eller {1}.", "LabelOriginalAspectRatio": "Ursprungligt bildförhållande:", "LabelOriginalTitle": "Original titel:", "LabelOverview": "Synopsis:", @@ -609,7 +609,7 @@ "LabelReleaseDate": "Premiärdatum:", "LabelRemoteClientBitrateLimit": "Maximal hastighet för strömning till Internet (Mbps):", "LabelRemoteClientBitrateLimitHelp": "En valfri bitfrekvensgräns för enskilda strömmar utanför det lokala nätverket. Detta är användbart för att förhindra enheter från att begära högre bitfrekvens än din internetuppkoppling kan hantera. Detta kan innebära högre processorbelastning för att omkoda videor till lägre bitfrekvens.", - "LabelRuntimeMinutes": "Speltid (min):", + "LabelRuntimeMinutes": "Speltid:", "LabelSaveLocalMetadata": "Spara grafik till mediamapparna", "LabelSaveLocalMetadataHelp": "Om grafik sparas tillsammans med media är de enkelt åtkomliga för redigering.", "LabelScheduledTaskLastRan": "Senast körd {0}, tog {1}.", @@ -621,7 +621,7 @@ "LabelSelectVersionToInstall": "Välj version att installera:", "LabelSendNotificationToUsers": "Skicka meddelande till:", "LabelSerialNumber": "Serienummer", - "LabelSeriesRecordingPath": "Inspelningssökväg för TV-serier (valfri):", + "LabelSeriesRecordingPath": "Inspelningssökväg för TV-serier:", "LabelServerHost": "Värd:", "LabelServerHostHelp": "192.168.1.100:8096 eller https://min.server.com", "LabelSimultaneousConnectionLimit": "Begränsning för samtidiga strömmar:", @@ -726,13 +726,13 @@ "MessageConfirmProfileDeletion": "Är du säker på att du vill ta bort den här profilen?", "MessageConfirmRecordingCancellation": "Är du säker på att du vill avbryta denna inspelning?", "MessageConfirmRemoveMediaLocation": "Är du säker på att du vill ta bort den här platsen?", - "MessageConfirmRestart": "Är du säker på att du vill starta om Jellyfin server?", - "MessageConfirmRevokeApiKey": "Är du säker på att du vill återkalla den här api-nyckeln? Applikationens koppling till Jellyfin Server kommer avslutas abrupt.", + "MessageConfirmRestart": "Är du säker på att du vill starta om Jellyfin?", + "MessageConfirmRevokeApiKey": "Är du säker på att du vill återkalla den här API-nyckeln? Applikationens koppling till denna server kommer att avslutas abrupt.", "MessageConfirmShutdown": "Är du säker på att du vill stänga av servern?", "MessageContactAdminToResetPassword": "Vänligen kontakta din systemadministratör för att återställa ditt lösenord.", "MessageCreateAccountAt": "Skapa ett konto på {0}", "MessageDeleteTaskTrigger": "Vill du ta bort denna aktivitetsutlösare?", - "MessageDirectoryPickerBSDInstruction": "Om du kör BSD kan du behöva konfiguerara din lagring inom FreeNAS Jail för att ge Jellyfin åtkomst till det.", + "MessageDirectoryPickerBSDInstruction": "Om du kör BSD kan du behöva konfiguerara din lagring inom ditt FreeNAS-Jail för att ge Jellyfin åtkomst till din media.", "MessageDirectoryPickerLinuxInstruction": "För Linux på ArchLinux, CentOS, Debian, Fedora, OpenSuse, eller Ubuntu, behöver du ge systemanvändaren för Jellyfin minst läsrättigheter till dina lagringsplatser.", "MessageDownloadQueued": "Nedladdning köad.", "MessageEnablingOptionLongerScans": "Aktivering av detta alternativ kan innebära att biblioteksskanningar tar längre tid.", @@ -754,7 +754,7 @@ "MessagePleaseEnsureInternetMetadata": "Var god se till att hämtning av metadata via Internet är aktiverad.", "MessagePleaseWait": "Vänligen vänta. Detta kan ta ett tag.", "MessagePluginConfigurationRequiresLocalAccess": "Logga in på din din lokala Jellyfin Server för att konfigurera det här tillägget.", - "MessagePluginInstallDisclaimer": "Tillägg skapade av Jellyfin-användare är ett bra sätt att förbättra din Jellyfin-upplevelse med ytterligare funktionalitet. Observera att detta kan påverka din Jellyfin-server så som längre tidsåtgång för biblioteksskanningar, ytterligare bakgrundsprocesser och minskad systemstabilitet.", + "MessagePluginInstallDisclaimer": "Tillägg skapade av användare är ett bra sätt att förbättra din upplevelse med ytterligare funktionalitet. Observera att detta kan påverka din server så som längre tidsåtgång för biblioteksskanningar, ytterligare bakgrundsprocesser och minskad systemstabilitet.", "MessageReenableUser": "Se nedan för att aktivera igen", "MessageTheFollowingLocationWillBeRemovedFromLibrary": "Följande mediaplatser kommer att tas bort från ditt bibliotek:", "MessageUnableToConnectToServer": "Vi kunde inte upprätta anslutning till vald server just nu. Försäkra dig om att den är påslagen och försök igen.", @@ -804,7 +804,7 @@ "OptionAllowLinkSharingHelp": "Endast webbsidor med medieinformation delas. Mediefiler delas aldrig publikt. Delningar är tidsbegränsade och upphör efter {0} dagar.", "OptionAllowManageLiveTv": "Tillåt hantering av Live-TV inspelningar", "OptionAllowMediaPlayback": "Tillåt mediauppspelning", - "OptionAllowMediaPlaybackTranscodingHelp": "Att förhindra åtkomst till omkodning kan orsaka uppspelningsfel i Jellyfin-appar på grund av mediaformat som inte stöds.", + "OptionAllowMediaPlaybackTranscodingHelp": "Att förhindra åtkomst till omkodning kan orsaka uppspelningsfel i klienter på grund av mediaformat som inte stöds.", "OptionAllowRemoteControlOthers": "Tillåt fjärrstyrning av andra användare", "OptionAllowRemoteSharedDevices": "Tillåt fjärrstyrning av delade enheter", "OptionAllowRemoteSharedDevicesHelp": "DLNA-enheter betraktas som delade tills en användare börjar kontrollera den.", @@ -1160,7 +1160,7 @@ "LabelPlayMethod": "Spelmetod:", "LabelPlayerDimensions": "Spelare dimensioner:", "LabelPasswordResetProvider": "Lösenords Återställning Leverantör:", - "LabelBaseUrlHelp": "Lägger till en anpassad undermapp till serverns URL. Som exempel: http://example.com/<baseurl>", + "LabelBaseUrlHelp": "Lägg till en anpassad undermapp till serverns URL. Till exempel: http://example.com/<baseurl>", "LabelCorruptedFrames": "Skadade ramar:", "HeaderParentalRatings": "Föräldrabetyg", "HeaderNavigation": "Navigering", @@ -1281,7 +1281,7 @@ "SaveChanges": "Spara ändringar", "LabelRequireHttps": "Kräv HTTPS", "LabelChromecastVersion": "Chromecast-version", - "LabelEnableHttpsHelp": "Gör det möjligt för servern att lyssna på den konfigurerade HTTPS-porten. Ett giltigt certifikat måste också konfigureras för att detta ska fungera.", + "LabelEnableHttpsHelp": "Lyssna på den konfigurerade HTTPS-porten. Ett giltigt certifikat måste också läggas till för att detta ska fungera.", "LabelEnableHttps": "Aktivera HTTPS", "HeaderServerAddressSettings": "Serveradressinställningar", "HeaderRemoteAccessSettings": "Inställningar för fjärråtkomst", @@ -1346,5 +1346,11 @@ "MessageNoGenresAvailable": "Aktivera vissa metadataleverantörer att hämta genrer från internet.", "LabelRepositoryNameHelp": "Ett eget namn för att särskilja denna förvaringsplats från andra tillagda på din server.", "Other": "Annat", - "Preview": "Förhandsvisning" + "Preview": "Förhandsvisning", + "NextTrack": "Hoppa över till nästa", + "MusicVideos": "Musikvideor", + "LabelUnstable": "Ostabil", + "LabelIconMaxResHelp": "Högsta tillåtna upplösning för ikoner som visas via egenskapen upnp:icon.", + "LabelAlbumArtMaxResHelp": "Högsta tillåtna upplösning för albumomslag som visas via egenskapen upnp:albumArtURI.", + "Image": "Bild" } From c8848c2be8032859cff8b8327d6f0b0cf2da84b4 Mon Sep 17 00:00:00 2001 From: Vijay Raghav Date: Thu, 3 Sep 2020 18:31:42 +0000 Subject: [PATCH 285/285] Translated using Weblate (Tamil) Translation: Jellyfin/Jellyfin Web Translate-URL: https://translate.jellyfin.org/projects/jellyfin/jellyfin-web/ta/ --- src/strings/ta.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/strings/ta.json b/src/strings/ta.json index db550c1930..2b5483787f 100644 --- a/src/strings/ta.json +++ b/src/strings/ta.json @@ -10,7 +10,7 @@ "AddToPlaylist": "பட்டியலில் சேர்", "AirDate": "ஒளிபரப்பப்பட்ட தேதி", "AsManyAsPossible": "முடிந்தவரை பல", - "Artists": "கலைஞர்", + "Artists": "கலைஞர்கள்", "Artist": "கலைஞர்", "Art": "கலை", "AroundTime": "சுற்றி", @@ -70,7 +70,7 @@ "ValueSpecialEpisodeName": "சிறப்பு - {0}", "Sync": "ஒத்திசைவு", "Songs": "பாடல்கள்", - "Shows": "தொடர்கள்", + "Shows": "நிகழ்ச்சிகள்", "Playlists": "தொடர் பட்டியல்கள்", "Photos": "புகைப்படங்கள்", "Movies": "திரைப்படங்கள்",