mirror of
https://github.com/advplyr/audiobookshelf-app.git
synced 2026-07-28 23:48:45 +02:00
Compare commits
94
Commits
@@ -72,12 +72,10 @@ body:
|
|||||||
description: Please ensure your app is up to date. *If you are using a 3rd-party app, please reach out to them directly.*
|
description: Please ensure your app is up to date. *If you are using a 3rd-party app, please reach out to them directly.*
|
||||||
multiple: true
|
multiple: true
|
||||||
options:
|
options:
|
||||||
|
- 'Android App - 0.10.0'
|
||||||
|
- 'iOS App - 0.10.0'
|
||||||
- 'Android App - 0.9.81'
|
- 'Android App - 0.9.81'
|
||||||
- 'iOS App - 0.9.81'
|
- 'iOS App - 0.9.81'
|
||||||
- 'Android App - 0.9.80'
|
|
||||||
- 'iOS App - 0.9.80'
|
|
||||||
- 'Android App - 0.9.79'
|
|
||||||
- 'iOS App - 0.9.79'
|
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
- type: dropdown
|
- type: dropdown
|
||||||
|
|||||||
@@ -43,12 +43,10 @@ body:
|
|||||||
description: Please ensure your app is up to date. *If you are using a 3rd-party app, please reach out to them directly.*
|
description: Please ensure your app is up to date. *If you are using a 3rd-party app, please reach out to them directly.*
|
||||||
multiple: true
|
multiple: true
|
||||||
options:
|
options:
|
||||||
|
- 'Android App - 0.10.0'
|
||||||
|
- 'iOS App - 0.10.0'
|
||||||
- 'Android App - 0.9.81'
|
- 'Android App - 0.9.81'
|
||||||
- 'iOS App - 0.9.81'
|
- 'iOS App - 0.9.81'
|
||||||
- 'Android App - 0.9.80'
|
|
||||||
- 'iOS App - 0.9.80'
|
|
||||||
- 'Android App - 0.9.79'
|
|
||||||
- 'iOS App - 0.9.79'
|
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
- type: textarea
|
- type: textarea
|
||||||
|
|||||||
@@ -36,8 +36,8 @@ android {
|
|||||||
applicationId "com.audiobookshelf.app"
|
applicationId "com.audiobookshelf.app"
|
||||||
minSdkVersion rootProject.ext.minSdkVersion
|
minSdkVersion rootProject.ext.minSdkVersion
|
||||||
targetSdkVersion rootProject.ext.targetSdkVersion
|
targetSdkVersion rootProject.ext.targetSdkVersion
|
||||||
versionCode 112
|
versionCode 114
|
||||||
versionName "0.9.81-beta"
|
versionName "0.10.1-beta"
|
||||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||||
manifestPlaceholders = [
|
manifestPlaceholders = [
|
||||||
"appAuthRedirectScheme": "com.audiobookshelf.app"
|
"appAuthRedirectScheme": "com.audiobookshelf.app"
|
||||||
|
|||||||
@@ -192,7 +192,12 @@ class PlaybackSession(
|
|||||||
// As of v2.22.0 tracks use a different endpoint
|
// As of v2.22.0 tracks use a different endpoint
|
||||||
// See: https://github.com/advplyr/audiobookshelf/pull/4263
|
// See: https://github.com/advplyr/audiobookshelf/pull/4263
|
||||||
if (checkIsServerVersionGte("2.22.0")) {
|
if (checkIsServerVersionGte("2.22.0")) {
|
||||||
return Uri.parse("$serverAddress/public/session/$id/track/${audioTrack.index}")
|
return if (isDirectPlay) {
|
||||||
|
Uri.parse("$serverAddress/public/session/$id/track/${audioTrack.index}")
|
||||||
|
} else {
|
||||||
|
// Transcode uses HlsRouter on server
|
||||||
|
Uri.parse("$serverAddress${audioTrack.contentUrl}")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return Uri.parse("$serverAddress${audioTrack.contentUrl}?token=${DeviceManager.token}")
|
return Uri.parse("$serverAddress${audioTrack.contentUrl}?token=${DeviceManager.token}")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ import org.json.JSONException
|
|||||||
import org.json.JSONObject
|
import org.json.JSONObject
|
||||||
import kotlin.coroutines.resume
|
import kotlin.coroutines.resume
|
||||||
import kotlin.coroutines.suspendCoroutine
|
import kotlin.coroutines.suspendCoroutine
|
||||||
|
import java.util.concurrent.atomic.AtomicInteger
|
||||||
|
|
||||||
class MediaManager(private var apiHandler: ApiHandler, var ctx: Context) {
|
class MediaManager(private var apiHandler: ApiHandler, var ctx: Context) {
|
||||||
val tag = "MediaManager"
|
val tag = "MediaManager"
|
||||||
@@ -175,21 +176,20 @@ class MediaManager(private var apiHandler: ApiHandler, var ctx: Context) {
|
|||||||
* Load personalized shelves from server for all libraries.
|
* Load personalized shelves from server for all libraries.
|
||||||
* [cb] resolves when all libraries are processed
|
* [cb] resolves when all libraries are processed
|
||||||
*/
|
*/
|
||||||
fun populatePersonalizedDataForAllLibraries(cb: () -> Unit ) {
|
fun populatePersonalizedDataForAllLibraries(cb: () -> Unit) {
|
||||||
serverLibraries.forEach {
|
val remaining = AtomicInteger(serverLibraries.size)
|
||||||
libraryPersonalizationsDone++
|
|
||||||
Log.d(tag, "Loading personalization for library ${it.name} - ${it.id} - ${it.mediaType}")
|
serverLibraries.forEach { lib ->
|
||||||
populatePersonalizedDataForLibrary(it.id) {
|
Log.d(tag, "Loading personalization for library ${lib.name}")
|
||||||
Log.d(tag, "Loaded personalization for library ${it.name} - ${it.id} - ${it.mediaType}")
|
populatePersonalizedDataForLibrary(lib.id) {
|
||||||
libraryPersonalizationsDone--
|
Log.d(tag, "Loaded personalization for library ${lib.name}")
|
||||||
|
if (remaining.decrementAndGet() == 0) {
|
||||||
|
Log.d(tag, "Finished loading all library personalization data")
|
||||||
|
allLibraryPersonalizationsDone = true
|
||||||
|
cb()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
while (libraryPersonalizationsDone > 0) { }
|
|
||||||
|
|
||||||
Log.d(tag, "Finished loading all library personalization data")
|
|
||||||
allLibraryPersonalizationsDone = true
|
|
||||||
cb()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
+52
-12
@@ -1087,6 +1087,26 @@ class PlayerNotificationService : MediaBrowserServiceCompat() {
|
|||||||
private val DOWNLOADS_ROOT = "__DOWNLOADS__"
|
private val DOWNLOADS_ROOT = "__DOWNLOADS__"
|
||||||
private val CONTINUE_ROOT = "__CONTINUE__"
|
private val CONTINUE_ROOT = "__CONTINUE__"
|
||||||
private lateinit var browseTree: BrowseTree
|
private lateinit var browseTree: BrowseTree
|
||||||
|
private val browseTreeInitListeners = mutableListOf<() -> Unit>()
|
||||||
|
|
||||||
|
private fun waitForBrowseTree(cb: () -> Unit)
|
||||||
|
{
|
||||||
|
if (this::browseTree.isInitialized)
|
||||||
|
{
|
||||||
|
cb()
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
browseTreeInitListeners += cb
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun onBrowseTreeInitialized()
|
||||||
|
{
|
||||||
|
// Called after browseTree is assigned for the first time
|
||||||
|
browseTreeInitListeners.forEach { it.invoke() }
|
||||||
|
browseTreeInitListeners.clear()
|
||||||
|
}
|
||||||
|
|
||||||
// Only allowing android auto or similar to access media browser service
|
// Only allowing android auto or similar to access media browser service
|
||||||
// normal loading of audiobooks is handled in webview (not natively)
|
// normal loading of audiobooks is handled in webview (not natively)
|
||||||
@@ -1257,6 +1277,7 @@ class PlayerNotificationService : MediaBrowserServiceCompat() {
|
|||||||
mediaManager.serverLibraries,
|
mediaManager.serverLibraries,
|
||||||
mediaManager.allLibraryPersonalizationsDone
|
mediaManager.allLibraryPersonalizationsDone
|
||||||
)
|
)
|
||||||
|
onBrowseTreeInitialized()
|
||||||
val children =
|
val children =
|
||||||
browseTree[parentMediaId]?.map { item ->
|
browseTree[parentMediaId]?.map { item ->
|
||||||
Log.d(tag, "Found top menu item: ${item.description.title}")
|
Log.d(tag, "Found top menu item: ${item.description.title}")
|
||||||
@@ -1291,6 +1312,7 @@ class PlayerNotificationService : MediaBrowserServiceCompat() {
|
|||||||
mediaManager.serverLibraries,
|
mediaManager.serverLibraries,
|
||||||
mediaManager.allLibraryPersonalizationsDone
|
mediaManager.allLibraryPersonalizationsDone
|
||||||
)
|
)
|
||||||
|
onBrowseTreeInitialized()
|
||||||
val children =
|
val children =
|
||||||
browseTree[parentMediaId]?.map { item ->
|
browseTree[parentMediaId]?.map { item ->
|
||||||
Log.d(tag, "Found top menu item: ${item.description.title}")
|
Log.d(tag, "Found top menu item: ${item.description.title}")
|
||||||
@@ -1303,22 +1325,40 @@ class PlayerNotificationService : MediaBrowserServiceCompat() {
|
|||||||
AbsLogger.info(tag, "onLoadChildren: Android auto data loaded")
|
AbsLogger.info(tag, "onLoadChildren: Android auto data loaded")
|
||||||
result.sendResult(children as MutableList<MediaBrowserCompat.MediaItem>?)
|
result.sendResult(children as MutableList<MediaBrowserCompat.MediaItem>?)
|
||||||
}
|
}
|
||||||
} else if (parentMediaId == LIBRARIES_ROOT || parentMediaId == RECENTLY_ROOT) {
|
} else if (parentMediaId == LIBRARIES_ROOT || parentMediaId == RECENTLY_ROOT)
|
||||||
|
{
|
||||||
Log.d(tag, "First load done: $firstLoadDone")
|
Log.d(tag, "First load done: $firstLoadDone")
|
||||||
if (!firstLoadDone) {
|
if (!firstLoadDone)
|
||||||
|
{
|
||||||
result.sendResult(null)
|
result.sendResult(null)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
// Wait until top-menu is initialized
|
|
||||||
while (!this::browseTree.isInitialized) {}
|
if (!this::browseTree.isInitialized)
|
||||||
val children =
|
{
|
||||||
browseTree[parentMediaId]?.map { item ->
|
// ✅ good: detach and wait for init
|
||||||
Log.d(tag, "[MENU: $parentMediaId] Showing list item ${item.description.title}")
|
result.detach()
|
||||||
MediaBrowserCompat.MediaItem(
|
waitForBrowseTree {
|
||||||
item.description,
|
val children = browseTree[parentMediaId]?.map { item ->
|
||||||
MediaBrowserCompat.MediaItem.FLAG_BROWSABLE
|
Log.d(tag, "[MENU: $parentMediaId] Showing list item ${item.description.title}")
|
||||||
)
|
MediaBrowserCompat.MediaItem(
|
||||||
}
|
item.description,
|
||||||
|
MediaBrowserCompat.MediaItem.FLAG_BROWSABLE
|
||||||
|
)
|
||||||
|
}
|
||||||
|
result.sendResult(children as MutableList<MediaBrowserCompat.MediaItem>?)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Already initialized: just return
|
||||||
|
val children = browseTree[parentMediaId]?.map { item ->
|
||||||
|
Log.d(tag, "[MENU: $parentMediaId] Showing list item ${item.description.title}")
|
||||||
|
MediaBrowserCompat.MediaItem(
|
||||||
|
item.description,
|
||||||
|
MediaBrowserCompat.MediaItem.FLAG_BROWSABLE
|
||||||
|
)
|
||||||
|
}
|
||||||
result.sendResult(children as MutableList<MediaBrowserCompat.MediaItem>?)
|
result.sendResult(children as MutableList<MediaBrowserCompat.MediaItem>?)
|
||||||
} else if (mediaManager.getIsLibrary(parentMediaId)) { // Load library items for library
|
} else if (mediaManager.getIsLibrary(parentMediaId)) { // Load library items for library
|
||||||
Log.d(tag, "Loading items for library $parentMediaId")
|
Log.d(tag, "Loading items for library $parentMediaId")
|
||||||
|
|||||||
@@ -407,6 +407,9 @@ class ApiHandler(var ctx:Context) {
|
|||||||
if (checkAbsDatabaseNotifyListenersInitted()) {
|
if (checkAbsDatabaseNotifyListenersInitted()) {
|
||||||
val tokenJsObject = JSObject()
|
val tokenJsObject = JSObject()
|
||||||
tokenJsObject.put("error", "Token refresh failed")
|
tokenJsObject.put("error", "Token refresh failed")
|
||||||
|
if (serverConnectionConfigId.isNotEmpty()) {
|
||||||
|
tokenJsObject.put("serverConnectionConfigId", serverConnectionConfigId)
|
||||||
|
}
|
||||||
absDatabaseNotifyListeners("onTokenRefreshFailure", tokenJsObject)
|
absDatabaseNotifyListeners("onTokenRefreshFailure", tokenJsObject)
|
||||||
} else {
|
} else {
|
||||||
// Can happen if Webview is never run
|
// Can happen if Webview is never run
|
||||||
|
|||||||
@@ -4,14 +4,14 @@
|
|||||||
<nuxt-link v-show="!showBack" to="/" class="mr-3">
|
<nuxt-link v-show="!showBack" to="/" class="mr-3">
|
||||||
<img src="/Logo.png" class="h-10 w-10" />
|
<img src="/Logo.png" class="h-10 w-10" />
|
||||||
</nuxt-link>
|
</nuxt-link>
|
||||||
<a v-if="showBack" @click="back" class="rounded-full h-10 w-10 flex items-center justify-center mr-2 cursor-pointer">
|
<a v-if="showBack" @click="back" aria-label="Back" class="rounded-full h-10 w-10 flex items-center justify-center mr-2 cursor-pointer">
|
||||||
<span class="material-symbols text-3xl text-fg">arrow_back</span>
|
<span class="material-symbols text-3xl text-fg">arrow_back</span>
|
||||||
</a>
|
</a>
|
||||||
<div v-if="user && currentLibrary">
|
<div v-if="user && currentLibrary">
|
||||||
<div class="pl-1.5 pr-2.5 py-2 bg-bg bg-opacity-30 rounded-md flex items-center" @click="clickShowLibraryModal">
|
<button type="button" aria-label="Show library modal" class="pl-1.5 pr-2.5 py-2 bg-bg bg-opacity-30 rounded-md flex items-center" @click="clickShowLibraryModal">
|
||||||
<ui-library-icon :icon="currentLibraryIcon" :size="4" font-size="base" />
|
<ui-library-icon :icon="currentLibraryIcon" :size="4" font-size="base" />
|
||||||
<p class="text-sm leading-4 ml-2 mt-0.5 max-w-24 truncate">{{ currentLibraryName }}</p>
|
<p class="text-sm leading-4 ml-2 mt-0.5 max-w-24 truncate">{{ currentLibraryName }}</p>
|
||||||
</div>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<widgets-connection-indicator />
|
<widgets-connection-indicator />
|
||||||
@@ -21,19 +21,19 @@
|
|||||||
<widgets-download-progress-indicator />
|
<widgets-download-progress-indicator />
|
||||||
|
|
||||||
<!-- Must be connected to a server to cast, only supports media items on server -->
|
<!-- Must be connected to a server to cast, only supports media items on server -->
|
||||||
<div v-show="isCastAvailable && user" class="mx-2 cursor-pointer flex items-center" @click="castClick">
|
<button type="button" aria-label="Cast" v-show="isCastAvailable && user" class="mx-2 cursor-pointer flex items-center" @click="castClick">
|
||||||
<span class="material-symbols text-2xl leading-none">
|
<span class="material-symbols text-2xl leading-none">
|
||||||
{{ isCasting ? 'cast_connected' : 'cast' }}
|
{{ isCasting ? 'cast_connected' : 'cast' }}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</button>
|
||||||
|
|
||||||
<nuxt-link v-if="user" class="mx-1.5 flex items-center h-10" to="/search">
|
<nuxt-link v-if="user" class="mx-1.5 flex items-center h-10" to="/search" aria-label="Search">
|
||||||
<span class="material-symbols text-2xl leading-none">search</span>
|
<span class="material-symbols text-2xl leading-none">search</span>
|
||||||
</nuxt-link>
|
</nuxt-link>
|
||||||
|
|
||||||
<div class="h-7 mx-1.5">
|
<button type="button" aria-label="Toggle side drawer" class="h-7 mx-1.5" @click="clickShowSideDrawer">
|
||||||
<span class="material-symbols" style="font-size: 1.75rem" @click="clickShowSideDrawer">menu</span>
|
<span class="material-symbols" style="font-size: 1.75rem">menu</span>
|
||||||
</div>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -11,11 +11,11 @@
|
|||||||
|
|
||||||
<div class="w-full overflow-y-auto">
|
<div class="w-full overflow-y-auto">
|
||||||
<template v-for="item in navItems">
|
<template v-for="item in navItems">
|
||||||
<button v-if="item.action" :key="item.text" class="w-full hover:bg-bg/60 flex items-center py-3 px-6 text-fg-muted" @click="clickAction(item.action)">
|
<button v-if="item.action" :key="item.text" :tabindex="show ? 0 : -1" class="w-full hover:bg-bg/60 flex items-center py-3 px-6 text-fg-muted" @click="clickAction(item.action)">
|
||||||
<span class="material-symbols fill text-lg">{{ item.icon }}</span>
|
<span class="material-symbols fill text-lg">{{ item.icon }}</span>
|
||||||
<p class="pl-4">{{ item.text }}</p>
|
<p class="pl-4">{{ item.text }}</p>
|
||||||
</button>
|
</button>
|
||||||
<nuxt-link v-else :to="item.to" :key="item.text" class="w-full hover:bg-bg/60 flex items-center py-3 px-6 text-fg" :class="currentRoutePath.startsWith(item.to) ? 'bg-bg-hover/50' : 'text-fg-muted'">
|
<nuxt-link v-else :to="item.to" :key="item.text" :tabindex="show ? 0 : -1" class="w-full hover:bg-bg/60 flex items-center py-3 px-6 text-fg" :class="currentRoutePath.startsWith(item.to) ? 'bg-bg-hover/50' : 'text-fg-muted'">
|
||||||
<span class="material-symbols fill text-lg">{{ item.icon }}</span>
|
<span class="material-symbols fill text-lg">{{ item.icon }}</span>
|
||||||
<p class="pl-4">{{ item.text }}</p>
|
<p class="pl-4">{{ item.text }}</p>
|
||||||
</nuxt-link>
|
</nuxt-link>
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div ref="card" :id="`book-card-${index}`" :style="{ minWidth: width + 'px', maxWidth: width + 'px', height: height + 'px' }" class="rounded-sm z-10 bg-primary cursor-pointer box-shadow-book" @click="clickCard">
|
<div ref="card" tabindex="0" :id="`book-card-${index}`" :style="{ minWidth: width + 'px', maxWidth: width + 'px', height: height + 'px' }" class="rounded-sm z-10 bg-primary cursor-pointer box-shadow-book" @click="clickCard">
|
||||||
<!-- When cover image does not fill -->
|
<!-- When cover image does not fill -->
|
||||||
<div v-show="showCoverBg" class="absolute top-0 left-0 w-full h-full overflow-hidden rounded-sm bg-primary">
|
<div v-show="showCoverBg" class="absolute top-0 left-0 w-full h-full overflow-hidden rounded-sm bg-primary">
|
||||||
<div class="absolute cover-bg" ref="coverBg" />
|
<div class="absolute cover-bg" ref="coverBg" />
|
||||||
|
|||||||
@@ -30,7 +30,7 @@
|
|||||||
<!-- form to add a new server connection config -->
|
<!-- form to add a new server connection config -->
|
||||||
<div v-else class="w-full">
|
<div v-else class="w-full">
|
||||||
<!-- server address input -->
|
<!-- server address input -->
|
||||||
<form v-if="!showAuth" @submit.prevent="submit" novalidate class="w-full">
|
<form v-if="!showAuth" @submit.prevent="submit(false)" novalidate class="w-full">
|
||||||
<div v-if="serverConnectionConfigs.length" class="flex items-center mb-4" @click="showServerList">
|
<div v-if="serverConnectionConfigs.length" class="flex items-center mb-4" @click="showServerList">
|
||||||
<span class="material-symbols text-fg-muted">arrow_back</span>
|
<span class="material-symbols text-fg-muted">arrow_back</span>
|
||||||
</div>
|
</div>
|
||||||
@@ -412,7 +412,7 @@ export default {
|
|||||||
throw new Error('Authentication failed with the provided token.')
|
throw new Error('Authentication failed with the provided token.')
|
||||||
}
|
}
|
||||||
|
|
||||||
const duplicateConfig = this.serverConnectionConfigs.find((scc) => scc.address === this.serverConfig.address && scc.username === payload.user.username)
|
const duplicateConfig = this.serverConnectionConfigs.find((scc) => scc.address === this.serverConfig.address && scc.username === payload.user.username && scc.id !== this.serverConfig.id)
|
||||||
if (duplicateConfig) {
|
if (duplicateConfig) {
|
||||||
throw new Error('Config already exists for this address and username.')
|
throw new Error('Config already exists for this address and username.')
|
||||||
}
|
}
|
||||||
@@ -471,7 +471,11 @@ export default {
|
|||||||
// Will NOT include access token and refresh token
|
// Will NOT include access token and refresh token
|
||||||
this.setUserAndConnection(payload)
|
this.setUserAndConnection(payload)
|
||||||
} else {
|
} else {
|
||||||
this.showAuth = true
|
let error = this.error
|
||||||
|
if (await this.submit(true)) {
|
||||||
|
this.showForm = true
|
||||||
|
this.error = error
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
async removeServerConfigClick() {
|
async removeServerConfigClick() {
|
||||||
@@ -500,12 +504,14 @@ export default {
|
|||||||
this.showForm = !this.serverConnectionConfigs.length
|
this.showForm = !this.serverConnectionConfigs.length
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
editServerConfig(serverConfig) {
|
async editServerConfig(serverConfig) {
|
||||||
this.serverConfig = {
|
this.serverConfig = {
|
||||||
...serverConfig
|
...serverConfig
|
||||||
}
|
}
|
||||||
this.showForm = true
|
|
||||||
this.showAuth = true
|
if (await this.submit(true)) {
|
||||||
|
this.showForm = true
|
||||||
|
}
|
||||||
},
|
},
|
||||||
async newServerConfigClick() {
|
async newServerConfigClick() {
|
||||||
await this.$hapticsImpact()
|
await this.$hapticsImpact()
|
||||||
@@ -651,9 +657,8 @@ export default {
|
|||||||
return false
|
return false
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
async submit() {
|
async submit(preventAutoLogin = false) {
|
||||||
if (!this.networkConnected) return
|
if (!this.networkConnected || !this.serverConfig.address) return false
|
||||||
if (!this.serverConfig.address) return
|
|
||||||
|
|
||||||
const initialAddress = this.serverConfig.address
|
const initialAddress = this.serverConfig.address
|
||||||
// Did the user specify a protocol?
|
// Did the user specify a protocol?
|
||||||
@@ -666,6 +671,7 @@ export default {
|
|||||||
this.authMethods = []
|
this.authMethods = []
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
console.log('[ServerConnectForm] submit tryServerUrl: ' + this.serverConfig.address)
|
||||||
// Try the server URL. If it fails and the protocol was not provided, try with http instead of https
|
// Try the server URL. If it fails and the protocol was not provided, try with http instead of https
|
||||||
const statusData = await this.tryServerUrl(this.serverConfig.address, !protocolProvided)
|
const statusData = await this.tryServerUrl(this.serverConfig.address, !protocolProvided)
|
||||||
if (this.validateLoginFormResponse(statusData, this.serverConfig.address, protocolProvided)) {
|
if (this.validateLoginFormResponse(statusData, this.serverConfig.address, protocolProvided)) {
|
||||||
@@ -674,11 +680,12 @@ export default {
|
|||||||
this.oauth.buttonText = statusData.data.authFormData?.authOpenIDButtonText || 'Login with OpenID'
|
this.oauth.buttonText = statusData.data.authFormData?.authOpenIDButtonText || 'Login with OpenID'
|
||||||
this.serverConfig.version = statusData.data.serverVersion
|
this.serverConfig.version = statusData.data.serverVersion
|
||||||
|
|
||||||
if (statusData.data.authFormData?.authOpenIDAutoLaunch) {
|
if (statusData.data.authFormData?.authOpenIDAutoLaunch && !preventAutoLogin) {
|
||||||
this.clickLoginWithOpenId()
|
this.clickLoginWithOpenId()
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
} else {
|
} else {
|
||||||
|
console.log('[ServerConnectForm] submit validateLoginFormResponse failed: ' + this.serverConfig.address)
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
@@ -852,7 +859,7 @@ export default {
|
|||||||
} else {
|
} else {
|
||||||
// Detect if the connection config is using the old token. If so, force re-login
|
// Detect if the connection config is using the old token. If so, force re-login
|
||||||
if (this.serverConfig.token === user.token || user.isOldToken) {
|
if (this.serverConfig.token === user.token || user.isOldToken) {
|
||||||
this.setForceReloginForNewAuth()
|
this.setForceRelogin('oldAuthToken')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -926,20 +933,29 @@ export default {
|
|||||||
this.processing = false
|
this.processing = false
|
||||||
return authRes
|
return authRes
|
||||||
},
|
},
|
||||||
async setForceReloginForNewAuth() {
|
async setForceRelogin(error) {
|
||||||
|
console.log('[ServerConnectForm] setForceRelogin', error, this.serverConfig.address)
|
||||||
// This calls /status on the server and sets the auth methods
|
// This calls /status on the server and sets the auth methods
|
||||||
const result = await this.submit()
|
const result = await this.submit(true)
|
||||||
if (result) {
|
if (result) {
|
||||||
this.error = this.$strings.MessageOldServerAuthReLoginRequired
|
this.showForm = true
|
||||||
|
|
||||||
|
if (error === 'oldAuthToken') {
|
||||||
|
this.error = this.$strings.MessageOldServerAuthReLoginRequired
|
||||||
|
} else if (error === 'refreshTokenFailed') {
|
||||||
|
this.error = this.$strings.MessageFailedToRefreshToken
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
init() {
|
init() {
|
||||||
// Handle force re-login for servers using new JWT auth but still using an old token in the server config
|
if (this.$route.query.serverConnectionConfigId) {
|
||||||
if (this.$route.query.error === 'oldAuthToken' && this.$route.query.serverConnectionConfigId) {
|
// Handle force re-login for servers using new JWT auth but still using an old token OR refresh token failed
|
||||||
this.serverConfig = this.serverConnectionConfigs.find((scc) => scc.id === this.$route.query.serverConnectionConfigId)
|
this.serverConfig = this.serverConnectionConfigs.find((scc) => scc.id === this.$route.query.serverConnectionConfigId)
|
||||||
if (this.serverConfig) {
|
if (this.serverConfig) {
|
||||||
this.setForceReloginForNewAuth()
|
this.setForceRelogin(this.$route.query.error)
|
||||||
return
|
return
|
||||||
|
} else {
|
||||||
|
console.error('[ServerConnectForm] init with serverConnectionConfigId but no serverConfig found', this.$route.query.serverConnectionConfigId)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -12,9 +12,9 @@
|
|||||||
<div class="w-full relative">
|
<div class="w-full relative">
|
||||||
<h1 class="text-lg mb-4">{{ $strings.HeaderRSSFeedIsOpen }}</h1>
|
<h1 class="text-lg mb-4">{{ $strings.HeaderRSSFeedIsOpen }}</h1>
|
||||||
|
|
||||||
<ui-text-input v-model="currentFeed.feedUrl" class="text-sm" readonly />
|
<ui-text-input v-model="fullFeedUrl" class="text-sm" readonly />
|
||||||
|
|
||||||
<span class="material-symbols absolute right-2 bottom-2 p-0.5 text-base" :class="linkCopied ? 'text-success' : 'text-fg-muted'" @click="copyToClipboard(currentFeed.feedUrl)">{{ linkCopied ? 'check' : 'content_copy' }}</span>
|
<span class="material-symbols absolute right-2 bottom-2 p-0.5 text-base" :class="linkCopied ? 'text-success' : 'text-fg-muted'" @click="copyToClipboard(fullFeedUrl)">{{ linkCopied ? 'check' : 'content_copy' }}</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div v-if="currentFeed.meta" class="mt-5">
|
<div v-if="currentFeed.meta" class="mt-5">
|
||||||
@@ -119,6 +119,10 @@ export default {
|
|||||||
demoFeedUrl() {
|
demoFeedUrl() {
|
||||||
return `${this.serverAddress}/feed/${this.newFeedSlug}`
|
return `${this.serverAddress}/feed/${this.newFeedSlug}`
|
||||||
},
|
},
|
||||||
|
fullFeedUrl() {
|
||||||
|
if (!this.currentFeed) return ''
|
||||||
|
return `${this.serverAddress}${this.currentFeed.feedUrl}`
|
||||||
|
},
|
||||||
isHttp() {
|
isHttp() {
|
||||||
return !!this.serverAddress?.startsWith('http://')
|
return !!this.serverAddress?.startsWith('http://')
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -173,16 +173,18 @@ export default {
|
|||||||
try {
|
try {
|
||||||
console.log('[PdfReader] Handling refresh failure - logging out user')
|
console.log('[PdfReader] Handling refresh failure - logging out user')
|
||||||
|
|
||||||
|
const serverConnectionConfigId = this.$store.getters['user/getServerConnectionConfigId']
|
||||||
|
|
||||||
// Clear store
|
// Clear store
|
||||||
await this.$store.dispatch('user/logout')
|
await this.$store.dispatch('user/logout')
|
||||||
|
|
||||||
if (this.$store.getters['user/getServerConnectionConfigId']) {
|
if (serverConnectionConfigId) {
|
||||||
// Clear refresh token for server connection config
|
// Clear refresh token for server connection config
|
||||||
await this.$db.clearRefreshToken(this.$store.getters['user/getServerConnectionConfigId'])
|
await this.$db.clearRefreshToken(serverConnectionConfigId)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (window.location.pathname !== '/connect') {
|
if (window.location.pathname !== '/connect') {
|
||||||
window.location.href = '/connect'
|
window.location.href = '/connect?error=refreshTokenFailed&serverConnectionConfigId=' + serverConnectionConfigId
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('[PdfReader] Failed to handle refresh failure:', error)
|
console.error('[PdfReader] Failed to handle refresh failure:', error)
|
||||||
|
|||||||
@@ -736,12 +736,12 @@
|
|||||||
ASSETCATALOG_COMPILER_APPICON_NAME = Icons;
|
ASSETCATALOG_COMPILER_APPICON_NAME = Icons;
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
CURRENT_PROJECT_VERSION = 38;
|
CURRENT_PROJECT_VERSION = 40;
|
||||||
DEVELOPMENT_TEAM = 7UFJ7D8V6A;
|
DEVELOPMENT_TEAM = 7UFJ7D8V6A;
|
||||||
INFOPLIST_FILE = App/Info.plist;
|
INFOPLIST_FILE = App/Info.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||||
MARKETING_VERSION = 0.9.81;
|
MARKETING_VERSION = 0.10.1;
|
||||||
OTHER_SWIFT_FLAGS = "$(inherited) \"-D\" \"COCOAPODS\" \"-DDEBUG\"";
|
OTHER_SWIFT_FLAGS = "$(inherited) \"-D\" \"COCOAPODS\" \"-DDEBUG\"";
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.audiobookshelf.app.dev;
|
PRODUCT_BUNDLE_IDENTIFIER = com.audiobookshelf.app.dev;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
@@ -760,12 +760,12 @@
|
|||||||
ASSETCATALOG_COMPILER_APPICON_NAME = Icons;
|
ASSETCATALOG_COMPILER_APPICON_NAME = Icons;
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
CURRENT_PROJECT_VERSION = 38;
|
CURRENT_PROJECT_VERSION = 40;
|
||||||
DEVELOPMENT_TEAM = 7UFJ7D8V6A;
|
DEVELOPMENT_TEAM = 7UFJ7D8V6A;
|
||||||
INFOPLIST_FILE = App/Info.plist;
|
INFOPLIST_FILE = App/Info.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||||
MARKETING_VERSION = 0.9.81;
|
MARKETING_VERSION = 0.10.1;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.audiobookshelf.app;
|
PRODUCT_BUNDLE_IDENTIFIER = com.audiobookshelf.app;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "";
|
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "";
|
||||||
|
|||||||
@@ -73,16 +73,16 @@ public class AbsDatabase: CAPPlugin, CAPBridgedPlugin {
|
|||||||
|
|
||||||
let name = "\(address) (\(username))"
|
let name = "\(address) (\(username))"
|
||||||
|
|
||||||
|
if id == nil {
|
||||||
|
id = "\(address)@\(username)".toBase64()
|
||||||
|
}
|
||||||
|
|
||||||
if (refreshToken != "") {
|
if (refreshToken != "") {
|
||||||
// Store refresh token securely if provided
|
// Store refresh token securely if provided
|
||||||
let hasRefreshToken = secureStorage.storeRefreshToken(serverConnectionConfigId: id ?? "", refreshToken: refreshToken)
|
let hasRefreshToken = secureStorage.storeRefreshToken(serverConnectionConfigId: id ?? "", refreshToken: refreshToken)
|
||||||
logger.log("Refresh token secured = \(hasRefreshToken)")
|
logger.log("Refresh token secured = \(hasRefreshToken)")
|
||||||
}
|
}
|
||||||
|
|
||||||
if id == nil {
|
|
||||||
id = "\(address)@\(username)".toBase64()
|
|
||||||
}
|
|
||||||
|
|
||||||
let config = ServerConnectionConfig()
|
let config = ServerConnectionConfig()
|
||||||
config.id = id ?? ""
|
config.id = id ?? ""
|
||||||
config.index = 0
|
config.index = 0
|
||||||
|
|||||||
Generated
+2
-2
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "audiobookshelf-app",
|
"name": "audiobookshelf-app",
|
||||||
"version": "0.9.81-beta",
|
"version": "0.10.1-beta",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "audiobookshelf-app",
|
"name": "audiobookshelf-app",
|
||||||
"version": "0.9.81-beta",
|
"version": "0.10.1-beta",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@capacitor-community/keep-awake": "^7.0.0",
|
"@capacitor-community/keep-awake": "^7.0.0",
|
||||||
"@capacitor-community/volume-buttons": "^7.0.0",
|
"@capacitor-community/volume-buttons": "^7.0.0",
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "audiobookshelf-app",
|
"name": "audiobookshelf-app",
|
||||||
"version": "0.9.81-beta",
|
"version": "0.10.1-beta",
|
||||||
"author": "advplyr",
|
"author": "advplyr",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "nuxt --hostname 0.0.0.0 --port 1337",
|
"dev": "nuxt --hostname 0.0.0.0 --port 1337",
|
||||||
|
|||||||
+1
-1
@@ -37,9 +37,9 @@ export default {
|
|||||||
computed: {},
|
computed: {},
|
||||||
methods: {
|
methods: {
|
||||||
async init() {
|
async init() {
|
||||||
|
await this.$store.dispatch('setupNetworkListener')
|
||||||
this.deviceData = await this.$db.getDeviceData()
|
this.deviceData = await this.$db.getDeviceData()
|
||||||
this.$store.commit('setDeviceData', this.deviceData)
|
this.$store.commit('setDeviceData', this.deviceData)
|
||||||
await this.$store.dispatch('setupNetworkListener')
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
|
|||||||
+1
-1
@@ -32,7 +32,7 @@ export default function ({ $axios, store, $db }) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (window.location.pathname !== '/connect') {
|
if (window.location.pathname !== '/connect') {
|
||||||
window.location.href = '/connect'
|
window.location.href = '/connect?error=refreshTokenFailed&serverConnectionConfigId=' + serverConnectionConfigId
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('[axios] Failed to handle refresh failure:', error)
|
console.error('[axios] Failed to handle refresh failure:', error)
|
||||||
|
|||||||
@@ -255,7 +255,7 @@ class AbsAudioPlayerWeb extends WebPlugin {
|
|||||||
if (this.currentTrack.contentUrl?.startsWith('/hls')) {
|
if (this.currentTrack.contentUrl?.startsWith('/hls')) {
|
||||||
sessionTrackUrl = this.currentTrack.contentUrl
|
sessionTrackUrl = this.currentTrack.contentUrl
|
||||||
} else {
|
} else {
|
||||||
sessionTrackUrl = `/public/session/${this.playbackSession.id}/track/${this.currentTrack.index}`
|
sessionTrackUrl = `/public/session/${this.playbackSession.id}/track/${this.currentTrack.index || 1}`
|
||||||
}
|
}
|
||||||
|
|
||||||
this.player.src = `${serverHost}${sessionTrackUrl}`
|
this.player.src = `${serverHost}${sessionTrackUrl}`
|
||||||
|
|||||||
+1
-1
@@ -138,7 +138,7 @@ export default ({ app, store }, inject) => {
|
|||||||
// Clear store and redirect to login page
|
// Clear store and redirect to login page
|
||||||
await store.dispatch('user/logout')
|
await store.dispatch('user/logout')
|
||||||
if (window.location.pathname !== '/connect') {
|
if (window.location.pathname !== '/connect') {
|
||||||
window.location.href = '/connect'
|
window.location.href = '/connect?error=refreshTokenFailed&serverConnectionConfigId=' + data.serverConnectionConfigId || ''
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -221,7 +221,7 @@ export default function ({ store, $db, $socket }, inject) {
|
|||||||
|
|
||||||
// Redirect to login page
|
// Redirect to login page
|
||||||
if (window.location.pathname !== '/connect') {
|
if (window.location.pathname !== '/connect') {
|
||||||
window.location.href = '/connect'
|
window.location.href = '/connect?error=refreshTokenFailed&serverConnectionConfigId=' + serverConnectionConfigId
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('[nativeHttp] Failed to handle refresh failure:', error)
|
console.error('[nativeHttp] Failed to handle refresh failure:', error)
|
||||||
|
|||||||
+14
-1
@@ -6,6 +6,7 @@
|
|||||||
"ButtonCancel": "Скасаваць",
|
"ButtonCancel": "Скасаваць",
|
||||||
"ButtonCancelTimer": "Скасаваць таймер",
|
"ButtonCancelTimer": "Скасаваць таймер",
|
||||||
"ButtonClearFilter": "Ачысціць фільтр",
|
"ButtonClearFilter": "Ачысціць фільтр",
|
||||||
|
"ButtonClearLogs": "Ачысціць журналы",
|
||||||
"ButtonCloseFeed": "Закрыць стужку",
|
"ButtonCloseFeed": "Закрыць стужку",
|
||||||
"ButtonCollections": "Калекцыі",
|
"ButtonCollections": "Калекцыі",
|
||||||
"ButtonConnect": "Падлучыцца",
|
"ButtonConnect": "Падлучыцца",
|
||||||
@@ -26,7 +27,9 @@
|
|||||||
"ButtonLatest": "Апошняе",
|
"ButtonLatest": "Апошняе",
|
||||||
"ButtonLibrary": "Бібліятэка",
|
"ButtonLibrary": "Бібліятэка",
|
||||||
"ButtonLocalMedia": "Лакальныя медыя",
|
"ButtonLocalMedia": "Лакальныя медыя",
|
||||||
|
"ButtonLogs": "Журналы",
|
||||||
"ButtonManageLocalFiles": "Кіраванне лакальнымі файламі",
|
"ButtonManageLocalFiles": "Кіраванне лакальнымі файламі",
|
||||||
|
"ButtonMaskServerAddress": "Схаваць адрас сервера",
|
||||||
"ButtonNewFolder": "Новая тэчка",
|
"ButtonNewFolder": "Новая тэчка",
|
||||||
"ButtonNextEpisode": "Наступны эпізод",
|
"ButtonNextEpisode": "Наступны эпізод",
|
||||||
"ButtonOk": "Добра",
|
"ButtonOk": "Добра",
|
||||||
@@ -50,6 +53,7 @@
|
|||||||
"ButtonStream": "Трансляцыя",
|
"ButtonStream": "Трансляцыя",
|
||||||
"ButtonSubmit": "Адправіць",
|
"ButtonSubmit": "Адправіць",
|
||||||
"ButtonSwitchServerUser": "Змяніць Сервер/Карыстальніка",
|
"ButtonSwitchServerUser": "Змяніць Сервер/Карыстальніка",
|
||||||
|
"ButtonUnmaskServerAddress": "Паказаць адрас сервера",
|
||||||
"ButtonUserStats": "Статыстыка карыстальніка",
|
"ButtonUserStats": "Статыстыка карыстальніка",
|
||||||
"ButtonYes": "Так",
|
"ButtonYes": "Так",
|
||||||
"HeaderAccount": "Уліковы запіс",
|
"HeaderAccount": "Уліковы запіс",
|
||||||
@@ -78,7 +82,7 @@
|
|||||||
"HeaderProgressSyncFailed": "Не ўдалося сінхранізаваць прагрэс",
|
"HeaderProgressSyncFailed": "Не ўдалося сінхранізаваць прагрэс",
|
||||||
"HeaderRSSFeed": "RSS-стужка",
|
"HeaderRSSFeed": "RSS-стужка",
|
||||||
"HeaderRSSFeedGeneral": "Падрабязнасці RSS",
|
"HeaderRSSFeedGeneral": "Падрабязнасці RSS",
|
||||||
"HeaderRSSFeedIsOpen": "RSS-стужка адкрыта",
|
"HeaderRSSFeedIsOpen": "RSS-стужка адкрытая",
|
||||||
"HeaderSelectDownloadLocation": "Абраць месцазнаходжання для спампоўкі",
|
"HeaderSelectDownloadLocation": "Абраць месцазнаходжання для спампоўкі",
|
||||||
"HeaderSettings": "Налады",
|
"HeaderSettings": "Налады",
|
||||||
"HeaderSleepTimer": "Таймер сну",
|
"HeaderSleepTimer": "Таймер сну",
|
||||||
@@ -142,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "Канец раздзела",
|
"LabelEndOfChapter": "Канец раздзела",
|
||||||
"LabelEndTime": "Час заканчэння",
|
"LabelEndTime": "Час заканчэння",
|
||||||
"LabelEpisode": "Эпізод",
|
"LabelEpisode": "Эпізод",
|
||||||
|
"LabelExplicit": "Відверты",
|
||||||
"LabelFeedURL": "URL стужкі",
|
"LabelFeedURL": "URL стужкі",
|
||||||
"LabelFile": "Файл",
|
"LabelFile": "Файл",
|
||||||
"LabelFileBirthtime": "Час стварэння файла",
|
"LabelFileBirthtime": "Час стварэння файла",
|
||||||
@@ -216,6 +221,7 @@
|
|||||||
"LabelPublishedDate": "Апублікавана {0}",
|
"LabelPublishedDate": "Апублікавана {0}",
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Карыстальніцкая электронная пошта ўладальніка",
|
"LabelRSSFeedCustomOwnerEmail": "Карыстальніцкая электронная пошта ўладальніка",
|
||||||
"LabelRSSFeedCustomOwnerName": "Карыстальніцкае імя ўладальніка",
|
"LabelRSSFeedCustomOwnerName": "Карыстальніцкае імя ўладальніка",
|
||||||
|
"LabelRSSFeedOpen": "RSS-стужка адкрыта",
|
||||||
"LabelRSSFeedPreventIndexing": "Прадухіліць індэксацыю",
|
"LabelRSSFeedPreventIndexing": "Прадухіліць індэксацыю",
|
||||||
"LabelRSSFeedSlug": "Ідэнтыфікатар RSS-стужкі",
|
"LabelRSSFeedSlug": "Ідэнтыфікатар RSS-стужкі",
|
||||||
"LabelRandomly": "Выпадкова",
|
"LabelRandomly": "Выпадкова",
|
||||||
@@ -237,6 +243,8 @@
|
|||||||
"LabelShowAll": "Паказаць усё",
|
"LabelShowAll": "Паказаць усё",
|
||||||
"LabelSize": "Памер",
|
"LabelSize": "Памер",
|
||||||
"LabelSleepTimer": "Таймер сну",
|
"LabelSleepTimer": "Таймер сну",
|
||||||
|
"LabelSleepTimerAlmostDoneChime": "Праіграйце звонак, калі амаль скончана",
|
||||||
|
"LabelSleepTimerAlmostDoneChimeHelp": "Памякчыць звонак, калі на таймеры сну застанецца 30 секунд",
|
||||||
"LabelStart": "Пачаць",
|
"LabelStart": "Пачаць",
|
||||||
"LabelStartTime": "Час пачатку",
|
"LabelStartTime": "Час пачатку",
|
||||||
"LabelStatsBestDay": "Лепшы дзень",
|
"LabelStatsBestDay": "Лепшы дзень",
|
||||||
@@ -252,6 +260,7 @@
|
|||||||
"LabelTag": "Метка",
|
"LabelTag": "Метка",
|
||||||
"LabelTags": "Меткі",
|
"LabelTags": "Меткі",
|
||||||
"LabelTheme": "Тэма",
|
"LabelTheme": "Тэма",
|
||||||
|
"LabelThemeBlack": "Чорны",
|
||||||
"LabelThemeDark": "Цёмная",
|
"LabelThemeDark": "Цёмная",
|
||||||
"LabelThemeLight": "Светлая",
|
"LabelThemeLight": "Светлая",
|
||||||
"LabelTimeRemaining": "Засталося {0}",
|
"LabelTimeRemaining": "Засталося {0}",
|
||||||
@@ -309,12 +318,16 @@
|
|||||||
"MessageNoItems": "Няма элементаў",
|
"MessageNoItems": "Няма элементаў",
|
||||||
"MessageNoItemsFound": "Элементы не знойдзены",
|
"MessageNoItemsFound": "Элементы не знойдзены",
|
||||||
"MessageNoListeningSessions": "Няма сеансаў праслухоўвання",
|
"MessageNoListeningSessions": "Няма сеансаў праслухоўвання",
|
||||||
|
"MessageNoLogs": "Няма журналаў",
|
||||||
"MessageNoMediaFolders": "Няма тэчак з медыя",
|
"MessageNoMediaFolders": "Няма тэчак з медыя",
|
||||||
"MessageNoNetworkConnection": "Няма падлучэння да сеткі",
|
"MessageNoNetworkConnection": "Няма падлучэння да сеткі",
|
||||||
"MessageNoPodcastsFound": "Падкасты не знойдзены",
|
"MessageNoPodcastsFound": "Падкасты не знойдзены",
|
||||||
"MessageNoSeries": "Няма серый",
|
"MessageNoSeries": "Няма серый",
|
||||||
"MessageNoUpdatesWereNecessary": "Абнаўленні не патрабаваліся",
|
"MessageNoUpdatesWereNecessary": "Абнаўленні не патрабаваліся",
|
||||||
"MessageNoUserPlaylists": "У вас няма спісаў прайгравання",
|
"MessageNoUserPlaylists": "У вас няма спісаў прайгравання",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "Аўтэнтыфікацыя была палепшана для бяспекі ў серверы v2.26.0. Усім карыстальнікам патрабуецца паўторна ўвайсці ў сістэму.",
|
||||||
|
"MessageOldServerAuthWarning": "Сервер выкарыстоўвае састарэлую аўтэнтыфікацыю",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Гэты сервер працуе пад версіяй, старэйшай за 2.26.0. У версіі 2.26.0 была дададзена больш бяспечная сістэма аўтэнтыфікацыі. Настойліва рэкамендуецца абнавіць сервер да апошняй версіі. Калі вы ўжо абнавілі сервер, увайдзіце зноў, каб выкарыстоўваць новую аўтэнтыфікацыю.",
|
||||||
"MessageOldServerConnectionWarning": "Канфігурацыя падлучэння да сервера выкарыстоўвае стары ідэнтыфікатар карыстальніка. Калі ласка, выдаліце і зноў дадайце гэта падлучэнне да сервера.",
|
"MessageOldServerConnectionWarning": "Канфігурацыя падлучэння да сервера выкарыстоўвае стары ідэнтыфікатар карыстальніка. Калі ласка, выдаліце і зноў дадайце гэта падлучэнне да сервера.",
|
||||||
"MessageOldServerConnectionWarningHelp": "Вы першапачаткова наладзілі падключэнне да гэтага сервера да міграцыі базы даных у версіі 2.3.0, якая выйшла ў чэрвені 2023 года. У будучым абнаўленні сервера магчымасць уваходу праз гэтае старое падключэнне будзе выдалена. Калі ласка, выдаліце існуючае падключэнне да сервера і падключыцеся зноў (выкарыстоўваючы той жа адрас сервера і ўліковыя даныя). Калі на гэтай прыладзе ёсць спампаваныя медыяфайлы, іх трэба будзе спампаваць зноў для сінхранізацыі з серверам.",
|
"MessageOldServerConnectionWarningHelp": "Вы першапачаткова наладзілі падключэнне да гэтага сервера да міграцыі базы даных у версіі 2.3.0, якая выйшла ў чэрвені 2023 года. У будучым абнаўленні сервера магчымасць уваходу праз гэтае старое падключэнне будзе выдалена. Калі ласка, выдаліце існуючае падключэнне да сервера і падключыцеся зноў (выкарыстоўваючы той жа адрас сервера і ўліковыя даныя). Калі на гэтай прыладзе ёсць спампаваныя медыяфайлы, іх трэба будзе спампаваць зноў для сінхранізацыі з серверам.",
|
||||||
"MessagePodcastSearchField": "Увядзіце пошукавы запыт або URL RSS-стужкі",
|
"MessagePodcastSearchField": "Увядзіце пошукавы запыт або URL RSS-стужкі",
|
||||||
|
|||||||
+16
-1
@@ -6,6 +6,7 @@
|
|||||||
"ButtonCancel": "Отказ",
|
"ButtonCancel": "Отказ",
|
||||||
"ButtonCancelTimer": "Отмени Таймер",
|
"ButtonCancelTimer": "Отмени Таймер",
|
||||||
"ButtonClearFilter": "Изчисти филтър",
|
"ButtonClearFilter": "Изчисти филтър",
|
||||||
|
"ButtonClearLogs": "Изчисти логове",
|
||||||
"ButtonCloseFeed": "Затвори стената",
|
"ButtonCloseFeed": "Затвори стената",
|
||||||
"ButtonCollections": "Колекции",
|
"ButtonCollections": "Колекции",
|
||||||
"ButtonConnect": "Свържи се",
|
"ButtonConnect": "Свържи се",
|
||||||
@@ -26,7 +27,9 @@
|
|||||||
"ButtonLatest": "Последни",
|
"ButtonLatest": "Последни",
|
||||||
"ButtonLibrary": "Библиотека",
|
"ButtonLibrary": "Библиотека",
|
||||||
"ButtonLocalMedia": "Локална медия",
|
"ButtonLocalMedia": "Локална медия",
|
||||||
|
"ButtonLogs": "Логове",
|
||||||
"ButtonManageLocalFiles": "Управление на локални файлове",
|
"ButtonManageLocalFiles": "Управление на локални файлове",
|
||||||
|
"ButtonMaskServerAddress": "Маскирай адреса на сървърът",
|
||||||
"ButtonNewFolder": "Създай нова папка",
|
"ButtonNewFolder": "Създай нова папка",
|
||||||
"ButtonNextEpisode": "Следващ епизод",
|
"ButtonNextEpisode": "Следващ епизод",
|
||||||
"ButtonOk": "Приемам",
|
"ButtonOk": "Приемам",
|
||||||
@@ -50,6 +53,7 @@
|
|||||||
"ButtonStream": "Стрийм",
|
"ButtonStream": "Стрийм",
|
||||||
"ButtonSubmit": "Изпрати",
|
"ButtonSubmit": "Изпрати",
|
||||||
"ButtonSwitchServerUser": "Смени сървър/потребител",
|
"ButtonSwitchServerUser": "Смени сървър/потребител",
|
||||||
|
"ButtonUnmaskServerAddress": "Демаскирай адреса на съвърът",
|
||||||
"ButtonUserStats": "Потребителски статистики",
|
"ButtonUserStats": "Потребителски статистики",
|
||||||
"ButtonYes": "Да",
|
"ButtonYes": "Да",
|
||||||
"HeaderAccount": "Профил",
|
"HeaderAccount": "Профил",
|
||||||
@@ -111,7 +115,7 @@
|
|||||||
"LabelBooks": "Книги",
|
"LabelBooks": "Книги",
|
||||||
"LabelChapterTrack": "Трак на глава",
|
"LabelChapterTrack": "Трак на глава",
|
||||||
"LabelChapters": "Глави",
|
"LabelChapters": "Глави",
|
||||||
"LabelClosePlayer": "Затвори",
|
"LabelClosePlayer": "Затвори плейъра",
|
||||||
"LabelCollapseSeries": "Скрий сериите",
|
"LabelCollapseSeries": "Скрий сериите",
|
||||||
"LabelComplete": "Приключено",
|
"LabelComplete": "Приключено",
|
||||||
"LabelContinueBooks": "Продължи книги",
|
"LabelContinueBooks": "Продължи книги",
|
||||||
@@ -142,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "Край на глава",
|
"LabelEndOfChapter": "Край на глава",
|
||||||
"LabelEndTime": "Оставащо време",
|
"LabelEndTime": "Оставащо време",
|
||||||
"LabelEpisode": "Епизод",
|
"LabelEpisode": "Епизод",
|
||||||
|
"LabelExplicit": "Експлицитно",
|
||||||
"LabelFeedURL": "URL на емисия",
|
"LabelFeedURL": "URL на емисия",
|
||||||
"LabelFile": "Файл",
|
"LabelFile": "Файл",
|
||||||
"LabelFileBirthtime": "Дата на създаване на файла",
|
"LabelFileBirthtime": "Дата на създаване на файла",
|
||||||
@@ -216,6 +221,7 @@
|
|||||||
"LabelPublishedDate": "Публикувани {0}",
|
"LabelPublishedDate": "Публикувани {0}",
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Персонализиран имейл на собственика",
|
"LabelRSSFeedCustomOwnerEmail": "Персонализиран имейл на собственика",
|
||||||
"LabelRSSFeedCustomOwnerName": "Персонализирано име на собственика",
|
"LabelRSSFeedCustomOwnerName": "Персонализирано име на собственика",
|
||||||
|
"LabelRSSFeedOpen": "RSS Feed е отворен",
|
||||||
"LabelRSSFeedPreventIndexing": "Предотвратете индексиране",
|
"LabelRSSFeedPreventIndexing": "Предотвратете индексиране",
|
||||||
"LabelRSSFeedSlug": "идентификатор на RSS емисия",
|
"LabelRSSFeedSlug": "идентификатор на RSS емисия",
|
||||||
"LabelRandomly": "Случайно",
|
"LabelRandomly": "Случайно",
|
||||||
@@ -237,6 +243,8 @@
|
|||||||
"LabelShowAll": "Покажи всички",
|
"LabelShowAll": "Покажи всички",
|
||||||
"LabelSize": "Размер",
|
"LabelSize": "Размер",
|
||||||
"LabelSleepTimer": "Таймер за изключване",
|
"LabelSleepTimer": "Таймер за изключване",
|
||||||
|
"LabelSleepTimerAlmostDoneChime": "Възпроизведи звуков сигнал малко преди да приключи",
|
||||||
|
"LabelSleepTimerAlmostDoneChimeHelp": "Възпроизведи звуков сигнал, 30 секунди преди изтичане на таймера за заспиване",
|
||||||
"LabelStart": "Старт",
|
"LabelStart": "Старт",
|
||||||
"LabelStartTime": "Време на стартиране",
|
"LabelStartTime": "Време на стартиране",
|
||||||
"LabelStatsBestDay": "Най-добър ден",
|
"LabelStatsBestDay": "Най-добър ден",
|
||||||
@@ -252,6 +260,7 @@
|
|||||||
"LabelTag": "Таг",
|
"LabelTag": "Таг",
|
||||||
"LabelTags": "Тагове",
|
"LabelTags": "Тагове",
|
||||||
"LabelTheme": "Тема",
|
"LabelTheme": "Тема",
|
||||||
|
"LabelThemeBlack": "Черен",
|
||||||
"LabelThemeDark": "Тъмна",
|
"LabelThemeDark": "Тъмна",
|
||||||
"LabelThemeLight": "Светла",
|
"LabelThemeLight": "Светла",
|
||||||
"LabelTimeRemaining": "{0} оставащи",
|
"LabelTimeRemaining": "{0} оставащи",
|
||||||
@@ -289,6 +298,7 @@
|
|||||||
"MessageDownloading": "Сваляне...",
|
"MessageDownloading": "Сваляне...",
|
||||||
"MessageDownloadingEpisode": "Сваля епизод",
|
"MessageDownloadingEpisode": "Сваля епизод",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} Епизод(и) са сложени за сваляне",
|
"MessageEpisodesQueuedForDownload": "{0} Епизод(и) са сложени за сваляне",
|
||||||
|
"MessageFailedToRefreshToken": "Неуспешно опресняване на токена, налага се да се впишете отново",
|
||||||
"MessageFeedURLWillBe": "Адресът на емисията ще бъде {0}",
|
"MessageFeedURLWillBe": "Адресът на емисията ще бъде {0}",
|
||||||
"MessageFetching": "Извличане...",
|
"MessageFetching": "Извличане...",
|
||||||
"MessageFollowTheProjectOnGithub": "Последвайте проекта в Github",
|
"MessageFollowTheProjectOnGithub": "Последвайте проекта в Github",
|
||||||
@@ -296,6 +306,7 @@
|
|||||||
"MessageItemMissing": "Елементът липсва и трябва да бъде поправен на сървъра. Обикновено един елемент се маркира като липсващ, защото пътищата към файловете не са достъпни.",
|
"MessageItemMissing": "Елементът липсва и трябва да бъде поправен на сървъра. Обикновено един елемент се маркира като липсващ, защото пътищата към файловете не са достъпни.",
|
||||||
"MessageLoading": "Зарежда...",
|
"MessageLoading": "Зарежда...",
|
||||||
"MessageLoadingServerData": "Зарежда данни от сървъра...",
|
"MessageLoadingServerData": "Зарежда данни от сървъра...",
|
||||||
|
"MessageLocalFolderDescription": "'Вътрешното хранилище на приложението' е достъпно само през това приложение. Това приложение поддържа само медийни файлове, изтеглени директно през него. Споделените папки за съхранение могат да се използват, за да се позволи на други приложения да имат достъп до медийните файлове, изтеглени чрез това приложение.",
|
||||||
"MessageMarkAsFinished": "Маркирай като завършено",
|
"MessageMarkAsFinished": "Маркирай като завършено",
|
||||||
"MessageMediaLinkedToADifferentServer": "Медията е свързана със сървър на Audiobookshelf на различен адрес ({0}). Напредъкът ще бъде синхронизиран, когато се свържете с този сървърен адрес.",
|
"MessageMediaLinkedToADifferentServer": "Медията е свързана със сървър на Audiobookshelf на различен адрес ({0}). Напредъкът ще бъде синхронизиран, когато се свържете с този сървърен адрес.",
|
||||||
"MessageMediaLinkedToADifferentUser": "Медията е свързана с този сървър, но е изтеглена от друг потребител. Напредъкът ще бъде синхронизиран само с потребителя, който я е изтеглил.",
|
"MessageMediaLinkedToADifferentUser": "Медията е свързана с този сървър, но е изтеглена от друг потребител. Напредъкът ще бъде синхронизиран само с потребителя, който я е изтеглил.",
|
||||||
@@ -308,12 +319,16 @@
|
|||||||
"MessageNoItems": "Няма елементи",
|
"MessageNoItems": "Няма елементи",
|
||||||
"MessageNoItemsFound": "Няма намерени елементи",
|
"MessageNoItemsFound": "Няма намерени елементи",
|
||||||
"MessageNoListeningSessions": "Няма сесии за слушане",
|
"MessageNoListeningSessions": "Няма сесии за слушане",
|
||||||
|
"MessageNoLogs": "Няма логове",
|
||||||
"MessageNoMediaFolders": "Няма медии папки",
|
"MessageNoMediaFolders": "Няма медии папки",
|
||||||
"MessageNoNetworkConnection": "Няма връзка с интернет",
|
"MessageNoNetworkConnection": "Няма връзка с интернет",
|
||||||
"MessageNoPodcastsFound": "Няма намерени подкасти",
|
"MessageNoPodcastsFound": "Няма намерени подкасти",
|
||||||
"MessageNoSeries": "Няма серии",
|
"MessageNoSeries": "Няма серии",
|
||||||
"MessageNoUpdatesWereNecessary": "Няма нужда от обновяване",
|
"MessageNoUpdatesWereNecessary": "Няма нужда от обновяване",
|
||||||
"MessageNoUserPlaylists": "Нямате създадени плейлисти",
|
"MessageNoUserPlaylists": "Нямате създадени плейлисти",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "За осигуряването на по-добра сигурност, автентикация беше подобрена във v.2.26.0. Всеки потребител ще трябва да се автентикира наново.",
|
||||||
|
"MessageOldServerAuthWarning": "Сървърът използва остаряла форма на автентикация",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Този сървър е на версия, която е по-стара от v2.26.0. Във версия v2.26.0 беше добавена по-сигурна автентикация. Силно е препоръчително да обновите сървъра до последната версия. Аковече сте обновили сървъра, влезде наново, за да ползвате новата автентикация.",
|
||||||
"MessageOldServerConnectionWarning": "Конфигурацията за връзка със сървъра използва старо потребителско ID. Моля, изтрийте и добавете отново тази връзка със сървъра.",
|
"MessageOldServerConnectionWarning": "Конфигурацията за връзка със сървъра използва старо потребителско ID. Моля, изтрийте и добавете отново тази връзка със сървъра.",
|
||||||
"MessageOldServerConnectionWarningHelp": "Първоначално сте настроили връзката към този сървър преди миграцията на базата данни във версия 2.3.0, пусната през юни 2023 г. Бъдеща актуализация на сървъра ще премахне възможността за влизане с тази стара връзка. Моля, изтрийте съществуващата връзка със сървъра и се свържете отново (използвайки същия сървърен адрес и идентификационни данни). Ако имате изтеглена медия на това устройство, тя ще трябва да бъде изтеглена отново, за да се синхронизира със сървъра.",
|
"MessageOldServerConnectionWarningHelp": "Първоначално сте настроили връзката към този сървър преди миграцията на базата данни във версия 2.3.0, пусната през юни 2023 г. Бъдеща актуализация на сървъра ще премахне възможността за влизане с тази стара връзка. Моля, изтрийте съществуващата връзка със сървъра и се свържете отново (използвайки същия сървърен адрес и идентификационни данни). Ако имате изтеглена медия на това устройство, тя ще трябва да бъде изтеглена отново, за да се синхронизира със сървъра.",
|
||||||
"MessagePodcastSearchField": "Въведи какво да търся или RSS емисия адрес",
|
"MessagePodcastSearchField": "Въведи какво да търся или RSS емисия адрес",
|
||||||
|
|||||||
+6
-1
@@ -146,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "Konec kapitoly",
|
"LabelEndOfChapter": "Konec kapitoly",
|
||||||
"LabelEndTime": "Do",
|
"LabelEndTime": "Do",
|
||||||
"LabelEpisode": "Epizoda",
|
"LabelEpisode": "Epizoda",
|
||||||
|
"LabelExplicit": "Explicitně",
|
||||||
"LabelFeedURL": "URL kanálu",
|
"LabelFeedURL": "URL kanálu",
|
||||||
"LabelFile": "Soubor",
|
"LabelFile": "Soubor",
|
||||||
"LabelFileBirthtime": "Čas vytvoření souboru",
|
"LabelFileBirthtime": "Čas vytvoření souboru",
|
||||||
@@ -297,6 +298,7 @@
|
|||||||
"MessageDownloading": "Stahuje se...",
|
"MessageDownloading": "Stahuje se...",
|
||||||
"MessageDownloadingEpisode": "Stahuji epizodu",
|
"MessageDownloadingEpisode": "Stahuji epizodu",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} Epizody zařazené do fronty ke stažení",
|
"MessageEpisodesQueuedForDownload": "{0} Epizody zařazené do fronty ke stažení",
|
||||||
|
"MessageFailedToRefreshToken": "Nepovedlo se obnovit token, je nutné se znovu přihlásit",
|
||||||
"MessageFeedURLWillBe": "URL zdroje bude {0}",
|
"MessageFeedURLWillBe": "URL zdroje bude {0}",
|
||||||
"MessageFetching": "Načítání...",
|
"MessageFetching": "Načítání...",
|
||||||
"MessageFollowTheProjectOnGithub": "Sledujte projekt na GitHubu",
|
"MessageFollowTheProjectOnGithub": "Sledujte projekt na GitHubu",
|
||||||
@@ -324,13 +326,16 @@
|
|||||||
"MessageNoSeries": "Žádné série",
|
"MessageNoSeries": "Žádné série",
|
||||||
"MessageNoUpdatesWereNecessary": "Nebyly nutné žádné aktualizace",
|
"MessageNoUpdatesWereNecessary": "Nebyly nutné žádné aktualizace",
|
||||||
"MessageNoUserPlaylists": "Nemáte žádné seznamy skladeb",
|
"MessageNoUserPlaylists": "Nemáte žádné seznamy skladeb",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "V rámci aktualizace serveru v2.26.0 bylo vylepšeno zabezpečení autentizace. Všichni uživatelé se musí znovu přihlásit.",
|
||||||
|
"MessageOldServerAuthWarning": "Server používá zastaralou autentizaci",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Server běží na verzi starší než v2.26.0. Bezpečnější způsob autentizace byl přidán ve verzi v2.26.0. Důrazně se doporučuje aktualizovat server na nejnovější verzi. Pokud jste již server aktualizovali, znovu se přihlašte pro použití nové autentizace.",
|
||||||
"MessageOldServerConnectionWarning": "Konfigurace připojení k serveru používá staré ID uživatele. Odstraňte a znovu přidejte toto připojení k serveru.",
|
"MessageOldServerConnectionWarning": "Konfigurace připojení k serveru používá staré ID uživatele. Odstraňte a znovu přidejte toto připojení k serveru.",
|
||||||
"MessageOldServerConnectionWarningHelp": "Připojení k tomuto serveru jste původně nastavili před migrací databáze ve verzi 2.3.0 vydané v červnu 2023. Budoucí aktualizace serveru odstraní možnost přihlášení pomocí tohoto starého připojení. Odstraňte prosím stávající připojení k serveru a připojte se znovu (pomocí stejné adresy serveru a přihlašovacích údajů). Pokud máte v tomto zařízení stažená média, bude nutné je pro synchronizaci se serverem stáhnout znovu.",
|
"MessageOldServerConnectionWarningHelp": "Připojení k tomuto serveru jste původně nastavili před migrací databáze ve verzi 2.3.0 vydané v červnu 2023. Budoucí aktualizace serveru odstraní možnost přihlášení pomocí tohoto starého připojení. Odstraňte prosím stávající připojení k serveru a připojte se znovu (pomocí stejné adresy serveru a přihlašovacích údajů). Pokud máte v tomto zařízení stažená média, bude nutné je pro synchronizaci se serverem stáhnout znovu.",
|
||||||
"MessagePodcastSearchField": "Zadejte hledaný pojem pro RSS feed URL",
|
"MessagePodcastSearchField": "Zadejte hledaný pojem pro RSS feed URL",
|
||||||
"MessageProgressSyncFailed": "Poslední pokus o nahlášení průběhu poslechu na server se nezdařil. Během přehrávání médií se budou požadavky na synchronizaci pokroku nadále pokoušet každých 15 až 60 sekund.",
|
"MessageProgressSyncFailed": "Poslední pokus o nahlášení průběhu poslechu na server se nezdařil. Během přehrávání médií se budou požadavky na synchronizaci pokroku nadále pokoušet každých 15 až 60 sekund.",
|
||||||
"MessageReportBugsAndContribute": "Nahlašte chyby, vyžádejte si funkce a přispěte na",
|
"MessageReportBugsAndContribute": "Nahlašte chyby, vyžádejte si funkce a přispěte na",
|
||||||
"MessageSeriesAlreadyDownloaded": "Všechny knihy v této sérii jste již stáhli.",
|
"MessageSeriesAlreadyDownloaded": "Všechny knihy v této sérii jste již stáhli.",
|
||||||
"MessageSeriesDownloadConfirm": "Stáhnout chybějící {0} knihu(y) s {1} souborem(y), celkem {2} do složky {3}?",
|
"MessageSeriesDownloadConfirm": "Stáhnout {0} chybějících knih s {1} souborem/soubory, celkem {2}, do složky {3}?",
|
||||||
"MessageSeriesDownloadConfirmIos": "Stáhnout chybějící {0} knihu(y) s {1} souborem(y), celkem {2}?",
|
"MessageSeriesDownloadConfirmIos": "Stáhnout chybějící {0} knihu(y) s {1} souborem(y), celkem {2}?",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket připojen přes měřenou mobilní síť",
|
"MessageSocketConnectedOverMeteredCellular": "Socket připojen přes měřenou mobilní síť",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket připojen přes měřenou Wi-Fi",
|
"MessageSocketConnectedOverMeteredWifi": "Socket připojen přes měřenou Wi-Fi",
|
||||||
|
|||||||
@@ -146,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "Slutningen af kapitel",
|
"LabelEndOfChapter": "Slutningen af kapitel",
|
||||||
"LabelEndTime": "Sluttidspunkt",
|
"LabelEndTime": "Sluttidspunkt",
|
||||||
"LabelEpisode": "Afsnit",
|
"LabelEpisode": "Afsnit",
|
||||||
|
"LabelExplicit": "Eksplisit",
|
||||||
"LabelFeedURL": "Feed URL",
|
"LabelFeedURL": "Feed URL",
|
||||||
"LabelFile": "Fil",
|
"LabelFile": "Fil",
|
||||||
"LabelFileBirthtime": "Oprettelsestidspunkt for fil",
|
"LabelFileBirthtime": "Oprettelsestidspunkt for fil",
|
||||||
@@ -324,6 +325,9 @@
|
|||||||
"MessageNoSeries": "Ingen serier",
|
"MessageNoSeries": "Ingen serier",
|
||||||
"MessageNoUpdatesWereNecessary": "Ingen opdateringer var nødvendige",
|
"MessageNoUpdatesWereNecessary": "Ingen opdateringer var nødvendige",
|
||||||
"MessageNoUserPlaylists": "Du har ingen afspilningslister",
|
"MessageNoUserPlaylists": "Du har ingen afspilningslister",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "Autentificering er blevet forbedret af sikkerhedsmæssige årsager i server v2.26.0. Alle brugere skal logge ind igen.",
|
||||||
|
"MessageOldServerAuthWarning": "Serveren bruger forældet autentificering",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Denne server kører en version ældre end v2.26.0. Et mere sikkert autentificeringssystem blev tilføjet i v2.26.0. Det anbefales kraftigt at opdatere serveren til den nyeste version. Hvis du allerede har opdateret serveren, skal du logge ind igen for at bruge den nye autentificering.",
|
||||||
"MessageOldServerConnectionWarning": "Server forbindelseskonfiguration anvender et gammelt bruger ID. Fjern venligst og gentilføj denne server forbindelse.",
|
"MessageOldServerConnectionWarning": "Server forbindelseskonfiguration anvender et gammelt bruger ID. Fjern venligst og gentilføj denne server forbindelse.",
|
||||||
"MessageOldServerConnectionWarningHelp": "Du har oprindeligt sat forbindelsen til denne server op før databasemigreringen i 2.3.0, udgivet i juni 2023. En senere serveropdatering vil fjerne muligheden for at logge ind med genne gamle metode. Sørg venligst for at slette den eksisterende serverforbindelse og opret forbindelse igen (ved anvendelse af den samme server adresse og login oplysninger). Hvis du har downloaded noget medie på denne enhed vil dette være nødsaget til at bive downloaded igen efter serversynkronisering.",
|
"MessageOldServerConnectionWarningHelp": "Du har oprindeligt sat forbindelsen til denne server op før databasemigreringen i 2.3.0, udgivet i juni 2023. En senere serveropdatering vil fjerne muligheden for at logge ind med genne gamle metode. Sørg venligst for at slette den eksisterende serverforbindelse og opret forbindelse igen (ved anvendelse af den samme server adresse og login oplysninger). Hvis du har downloaded noget medie på denne enhed vil dette være nødsaget til at bive downloaded igen efter serversynkronisering.",
|
||||||
"MessagePodcastSearchField": "Indtast søgeterm eller RSS URL",
|
"MessagePodcastSearchField": "Indtast søgeterm eller RSS URL",
|
||||||
|
|||||||
+10
-5
@@ -12,11 +12,11 @@
|
|||||||
"ButtonConnect": "Verbinden",
|
"ButtonConnect": "Verbinden",
|
||||||
"ButtonConnectToServer": "Mit Server verbinden",
|
"ButtonConnectToServer": "Mit Server verbinden",
|
||||||
"ButtonCreate": "Erstellen",
|
"ButtonCreate": "Erstellen",
|
||||||
"ButtonCreateBookmark": "Erstelle Lesezeichen",
|
"ButtonCreateBookmark": "Lesezeichen erstellen",
|
||||||
"ButtonCreateNewPlaylist": "Erstelle neue Wiedergabeliste",
|
"ButtonCreateNewPlaylist": "Neue Wiedergabeliste erstellen",
|
||||||
"ButtonDelete": "Löschen",
|
"ButtonDelete": "Löschen",
|
||||||
"ButtonDeleteLocalEpisode": "Lösche lokale Episode",
|
"ButtonDeleteLocalEpisode": "Lokale Episode löschen",
|
||||||
"ButtonDeleteLocalFile": "Lösche lokale Datei",
|
"ButtonDeleteLocalFile": "Lokale Datei löschen",
|
||||||
"ButtonDeleteLocalItem": "Lokales Element löschen",
|
"ButtonDeleteLocalItem": "Lokales Element löschen",
|
||||||
"ButtonDisableAutoTimer": "Automatischen Timer deaktivieren",
|
"ButtonDisableAutoTimer": "Automatischen Timer deaktivieren",
|
||||||
"ButtonDisconnect": "Trennen",
|
"ButtonDisconnect": "Trennen",
|
||||||
@@ -146,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "Ende des Kapitels",
|
"LabelEndOfChapter": "Ende des Kapitels",
|
||||||
"LabelEndTime": "Endzeit",
|
"LabelEndTime": "Endzeit",
|
||||||
"LabelEpisode": "Episode",
|
"LabelEpisode": "Episode",
|
||||||
|
"LabelExplicit": "Explizit",
|
||||||
"LabelFeedURL": "Feed-URL",
|
"LabelFeedURL": "Feed-URL",
|
||||||
"LabelFile": "Datei",
|
"LabelFile": "Datei",
|
||||||
"LabelFileBirthtime": "Datei erstellt",
|
"LabelFileBirthtime": "Datei erstellt",
|
||||||
@@ -220,7 +221,7 @@
|
|||||||
"LabelPublishedDate": "Veröffentlicht {0}",
|
"LabelPublishedDate": "Veröffentlicht {0}",
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Benutzerdefinierte Eigentümer-E-Mail",
|
"LabelRSSFeedCustomOwnerEmail": "Benutzerdefinierte Eigentümer-E-Mail",
|
||||||
"LabelRSSFeedCustomOwnerName": "Benutzerdefinierter Name des Eigentümers",
|
"LabelRSSFeedCustomOwnerName": "Benutzerdefinierter Name des Eigentümers",
|
||||||
"LabelRSSFeedOpen": "RSS Feed offen",
|
"LabelRSSFeedOpen": "RSS-Feed offen",
|
||||||
"LabelRSSFeedPreventIndexing": "Indizierung verhindern",
|
"LabelRSSFeedPreventIndexing": "Indizierung verhindern",
|
||||||
"LabelRSSFeedSlug": "RSS-Feed-Schlagwort",
|
"LabelRSSFeedSlug": "RSS-Feed-Schlagwort",
|
||||||
"LabelRandomly": "Zufällig",
|
"LabelRandomly": "Zufällig",
|
||||||
@@ -297,6 +298,7 @@
|
|||||||
"MessageDownloading": "Wird heruntergeladen …",
|
"MessageDownloading": "Wird heruntergeladen …",
|
||||||
"MessageDownloadingEpisode": "Episode herunterladen",
|
"MessageDownloadingEpisode": "Episode herunterladen",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} Episode(n) in der Warteschlange zum Herunterladen",
|
"MessageEpisodesQueuedForDownload": "{0} Episode(n) in der Warteschlange zum Herunterladen",
|
||||||
|
"MessageFailedToRefreshToken": "Aktualisierung des Tokens fehlgeschlagen, erneute Anmeldung erforderlich",
|
||||||
"MessageFeedURLWillBe": "Feed-URL wird {0} sein",
|
"MessageFeedURLWillBe": "Feed-URL wird {0} sein",
|
||||||
"MessageFetching": "Wird abgerufen …",
|
"MessageFetching": "Wird abgerufen …",
|
||||||
"MessageFollowTheProjectOnGithub": "Folge dem Projekt auf GitHub",
|
"MessageFollowTheProjectOnGithub": "Folge dem Projekt auf GitHub",
|
||||||
@@ -324,6 +326,9 @@
|
|||||||
"MessageNoSeries": "Keine Serie",
|
"MessageNoSeries": "Keine Serie",
|
||||||
"MessageNoUpdatesWereNecessary": "Keine Aktualisierungen waren notwendig",
|
"MessageNoUpdatesWereNecessary": "Keine Aktualisierungen waren notwendig",
|
||||||
"MessageNoUserPlaylists": "Keine Wiedergabelisten vorhanden",
|
"MessageNoUserPlaylists": "Keine Wiedergabelisten vorhanden",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "Für die verbesserung der Sicherheit wurde die Authentifizierung in der Version v2.26.0 verbessert. Alle Nutzer müssen sich neu einloggen.",
|
||||||
|
"MessageOldServerAuthWarning": "Der Server nutzt eine nicht mehr aktuelle Authentifizierung",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Die Version dieses Servers ist älter als v2.26.0. Ein sichereres Authentifizierungssystem wurde in v2.26.0 hinzugefügt. Es wird dringend empfohlen, den Server auf die neuste Version zu aktualisieren. Solltest du den Server bereits aktualisiert haben, melde dich neu an, um das neue Authentifizierungssystem zu verwenden.",
|
||||||
"MessageOldServerConnectionWarning": "Diese Serververbindung nutzt eine alte Nutzer-ID (user ID). Bitte entferne diese Serververbindung und füge sie wieder neu hinzu.",
|
"MessageOldServerConnectionWarning": "Diese Serververbindung nutzt eine alte Nutzer-ID (user ID). Bitte entferne diese Serververbindung und füge sie wieder neu hinzu.",
|
||||||
"MessageOldServerConnectionWarningHelp": "Du hast diese Serververbindung vor der Datenbankmigration in 2.3.0, veröffentlicht im Juni 2023, eingerichtet. Ein zukünftiges Serverupdate wird die Möglichkeit entfernen, sich mit dieser Verbindung anzumelden. Bitte lösche die existierende Serververbindung und melde dich neu an (mit der gleichen Serveradresse und Zugangsdaten). Wenn du irgendwelche Medien auf dieses Gerät heruntergeladen hast, musst du sie anschließend erneut herunterladen, um den Status zu synchronisieren.",
|
"MessageOldServerConnectionWarningHelp": "Du hast diese Serververbindung vor der Datenbankmigration in 2.3.0, veröffentlicht im Juni 2023, eingerichtet. Ein zukünftiges Serverupdate wird die Möglichkeit entfernen, sich mit dieser Verbindung anzumelden. Bitte lösche die existierende Serververbindung und melde dich neu an (mit der gleichen Serveradresse und Zugangsdaten). Wenn du irgendwelche Medien auf dieses Gerät heruntergeladen hast, musst du sie anschließend erneut herunterladen, um den Status zu synchronisieren.",
|
||||||
"MessagePodcastSearchField": "Suchbegriff oder RSS-Feed URL eingeben",
|
"MessagePodcastSearchField": "Suchbegriff oder RSS-Feed URL eingeben",
|
||||||
|
|||||||
@@ -298,6 +298,7 @@
|
|||||||
"MessageDownloading": "Downloading...",
|
"MessageDownloading": "Downloading...",
|
||||||
"MessageDownloadingEpisode": "Downloading episode",
|
"MessageDownloadingEpisode": "Downloading episode",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} Episode(s) queued for download",
|
"MessageEpisodesQueuedForDownload": "{0} Episode(s) queued for download",
|
||||||
|
"MessageFailedToRefreshToken": "Failed to refresh token, re-login required",
|
||||||
"MessageFeedURLWillBe": "Feed URL will be {0}",
|
"MessageFeedURLWillBe": "Feed URL will be {0}",
|
||||||
"MessageFetching": "Fetching...",
|
"MessageFetching": "Fetching...",
|
||||||
"MessageFollowTheProjectOnGithub": "Follow the project on Github",
|
"MessageFollowTheProjectOnGithub": "Follow the project on Github",
|
||||||
|
|||||||
@@ -146,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "Fin del capítulo",
|
"LabelEndOfChapter": "Fin del capítulo",
|
||||||
"LabelEndTime": "Hora de finalización",
|
"LabelEndTime": "Hora de finalización",
|
||||||
"LabelEpisode": "Episodio",
|
"LabelEpisode": "Episodio",
|
||||||
|
"LabelExplicit": "Explícito",
|
||||||
"LabelFeedURL": "URL del suministro",
|
"LabelFeedURL": "URL del suministro",
|
||||||
"LabelFile": "Archivo",
|
"LabelFile": "Archivo",
|
||||||
"LabelFileBirthtime": "Archivo creado en",
|
"LabelFileBirthtime": "Archivo creado en",
|
||||||
|
|||||||
+177
-1
@@ -1 +1,177 @@
|
|||||||
{}
|
{
|
||||||
|
"ButtonAdd": "Lisa",
|
||||||
|
"ButtonAddNewServer": "Lisa uus server",
|
||||||
|
"ButtonAuthors": "Autorid",
|
||||||
|
"ButtonBack": "Tagasi",
|
||||||
|
"ButtonCancel": "Katkesta",
|
||||||
|
"ButtonCancelTimer": "Katkesta taimer",
|
||||||
|
"ButtonClearFilter": "Tühista filter",
|
||||||
|
"ButtonCollections": "Kollektsioonid",
|
||||||
|
"ButtonConnect": "Ühenda",
|
||||||
|
"ButtonConnectToServer": "Ühenda serveriga",
|
||||||
|
"ButtonCreate": "Loo uus",
|
||||||
|
"ButtonCreateBookmark": "Loo uus järjehoidja",
|
||||||
|
"ButtonCreateNewPlaylist": "Loo uus playlist",
|
||||||
|
"ButtonDelete": "Kustuta",
|
||||||
|
"ButtonDeleteLocalEpisode": "Kustuta lokaalne episood",
|
||||||
|
"ButtonDeleteLocalFile": "Kustuta lokaalne fail",
|
||||||
|
"ButtonDisableAutoTimer": "Lülita välja auto-taimer",
|
||||||
|
"ButtonDisconnect": "Ühenda lahti",
|
||||||
|
"ButtonHistory": "Ajalugu",
|
||||||
|
"ButtonIssues": "Probleemid",
|
||||||
|
"ButtonLatest": "Viimased",
|
||||||
|
"ButtonLibrary": "Raamatukogu",
|
||||||
|
"ButtonLocalMedia": "Lokaalne meedia",
|
||||||
|
"ButtonNewFolder": "Uus kaust",
|
||||||
|
"ButtonNextEpisode": "Järgmine episood",
|
||||||
|
"ButtonOk": "Ok",
|
||||||
|
"ButtonPause": "Paus",
|
||||||
|
"ButtonPlay": "Play",
|
||||||
|
"ButtonPlaylists": "Playlist",
|
||||||
|
"ButtonRead": "Loe",
|
||||||
|
"ButtonReadLess": "Loe vähem",
|
||||||
|
"ButtonReadMore": "Loe rohkem",
|
||||||
|
"ButtonRemove": "Kustuta",
|
||||||
|
"ButtonRemoveFromServer": "Kustuta serverist",
|
||||||
|
"ButtonSave": "Salvesta",
|
||||||
|
"ButtonSaveOrder": "Salvesta järjekord",
|
||||||
|
"ButtonSearch": "Otsi",
|
||||||
|
"ButtonSendEbookToDevice": "Saada e-raamat seadmele",
|
||||||
|
"ButtonSetTimer": "Säti taimer",
|
||||||
|
"ButtonSubmit": "Esita",
|
||||||
|
"ButtonUserStats": "Kasutaja statistika",
|
||||||
|
"ButtonYes": "Jah",
|
||||||
|
"HeaderAccount": "Konto",
|
||||||
|
"HeaderAndroidAutoSettings": "Android Auto sätted",
|
||||||
|
"HeaderChapters": "Peatükid",
|
||||||
|
"HeaderConnectionStatus": "Ühenduse staatus",
|
||||||
|
"HeaderDataSettings": "Andmete sätted",
|
||||||
|
"HeaderDetails": "Detailid",
|
||||||
|
"HeaderDownloads": "Allatõmmatud",
|
||||||
|
"HeaderEbookFiles": "E-raamatu failid",
|
||||||
|
"HeaderEpisodes": "Episoodid",
|
||||||
|
"HeaderEreaderSettings": "E-lugeja sätted",
|
||||||
|
"HeaderLatestEpisodes": "Viimased episoodid",
|
||||||
|
"HeaderLibraries": "Raamatukogud",
|
||||||
|
"HeaderLocalFolders": "Lokaalsed failid",
|
||||||
|
"HeaderLocalLibraryItems": "Lokaalse raamatukogu esemed",
|
||||||
|
"HeaderNewPlaylist": "Uus playlist",
|
||||||
|
"HeaderPlaylist": "Playlist",
|
||||||
|
"HeaderPlaylistItems": "Playlisti esemed",
|
||||||
|
"HeaderProgressSyncFailed": "Progressi sühnkronisatsioon ebaõnnestus",
|
||||||
|
"HeaderSelectDownloadLocation": "Vali allalaadimise kaust",
|
||||||
|
"HeaderSettings": "Seaded",
|
||||||
|
"HeaderSleepTimer": "Unetaimer",
|
||||||
|
"HeaderSleepTimerSettings": "Unetaimeri seaded",
|
||||||
|
"HeaderStatsRecentSessions": "Hiljutised sessioonid",
|
||||||
|
"HeaderTableOfContents": "Sisukord",
|
||||||
|
"HeaderUserInterfaceSettings": "Kasutajaliidese seaded",
|
||||||
|
"HeaderYourStats": "Sinu statistika",
|
||||||
|
"LabelAddToPlaylist": "Lisa playlisti",
|
||||||
|
"LabelAddedAt": "Lisatud",
|
||||||
|
"LabelAddedDate": "Lisatud {0}",
|
||||||
|
"LabelAll": "Kõik",
|
||||||
|
"LabelAllowSeekingOnMediaControls": "Luba positsiooniotsing meediateavituste juhtelementidel",
|
||||||
|
"LabelAlways": "Alati",
|
||||||
|
"LabelAndroidAutoBrowseLimitForGrouping": "Tähestikuline väljavõtmise limiit",
|
||||||
|
"LabelAndroidAutoBrowseLimitForGroupingHelp": "Ära kasuta tähestikulises järjekorras järjestamist juhul kui kuvatavaid esemeid on vähem kui see arv",
|
||||||
|
"LabelAskConfirmation": "Küsi kinnitust",
|
||||||
|
"LabelAuthor": "Autor",
|
||||||
|
"LabelAuthorFirstLast": "Autor (eesnimi perekonnanimi)",
|
||||||
|
"LabelAuthorLastFirst": "Autor (perekonnanimi, eesnimi)",
|
||||||
|
"LabelAuthors": "Autorid",
|
||||||
|
"LabelAutoDownloadEpisodes": "Episoodide automaatne allalaadimine",
|
||||||
|
"LabelAutoRewindTime": "Keri aeg automaatselt tagasi",
|
||||||
|
"LabelAutoSleepTimer": "Automaatne unetaimer",
|
||||||
|
"LabelBooks": "Raamatud",
|
||||||
|
"LabelChapterTrack": "Peatüki heliriba",
|
||||||
|
"LabelChapters": "Peatükid",
|
||||||
|
"LabelComplete": "Valmis",
|
||||||
|
"LabelContinueBooks": "Jätka raamatuid",
|
||||||
|
"LabelContinueEpisodes": "Jätka episoode",
|
||||||
|
"LabelContinueListening": "Jätka kuulamist",
|
||||||
|
"LabelContinueReading": "Jätka lugemist",
|
||||||
|
"LabelDescription": "Kirjeldus",
|
||||||
|
"LabelDownload": "Lae alla",
|
||||||
|
"LabelDownloadUsingCellular": "Lae alla kasutades andmesidet",
|
||||||
|
"LabelDownloaded": "Allalaaditud",
|
||||||
|
"LabelDuration": "Kestvus",
|
||||||
|
"LabelEbook": "E-raamat",
|
||||||
|
"LabelEbooks": "E-raamatud",
|
||||||
|
"LabelEnable": "Luba",
|
||||||
|
"LabelEnd": "Lõpp",
|
||||||
|
"LabelEndOfChapter": "Peatükki lõpp",
|
||||||
|
"LabelEpisode": "Episood",
|
||||||
|
"LabelFile": "Fail",
|
||||||
|
"LabelFilename": "Faili nimi",
|
||||||
|
"LabelFinished": "Lõpetatud",
|
||||||
|
"LabelFolder": "Kaust",
|
||||||
|
"LabelFontBoldness": "Fondi paksus",
|
||||||
|
"LabelFontScale": "Fondi suurus",
|
||||||
|
"LabelGenre": "Žanr",
|
||||||
|
"LabelGenres": "Žanrid",
|
||||||
|
"LabelHapticFeedback": "Haptiline tagasiside",
|
||||||
|
"LabelHasEbook": "E-raamat olemas",
|
||||||
|
"LabelIncomplete": "Lõpetamata",
|
||||||
|
"LabelKeepScreenAwake": "Hoia ekraan ärkvel",
|
||||||
|
"LabelLanguage": "Keel",
|
||||||
|
"LabelLayoutAuto": "Auto",
|
||||||
|
"LabelLight": "Hele",
|
||||||
|
"LabelListenAgain": "Kuula uuesti",
|
||||||
|
"LabelLocalBooks": "Lokaalsed raamatud",
|
||||||
|
"LabelLocalPodcasts": "Lokaalsed podcastid",
|
||||||
|
"LabelLow": "Madal",
|
||||||
|
"LabelMediaType": "Meedia tüüp",
|
||||||
|
"LabelMedium": "Keskmine",
|
||||||
|
"LabelMissing": "Puudub",
|
||||||
|
"LabelMore": "Rohkem",
|
||||||
|
"LabelMoreInfo": "Rohkem infot",
|
||||||
|
"LabelName": "Nimi",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "Peegeldatud",
|
||||||
|
"LabelNavigateWithVolumeWhilePlayingDisabled": "Väljalülitatud",
|
||||||
|
"LabelNavigateWithVolumeWhilePlayingEnabled": "Sisselülitatud",
|
||||||
|
"LabelNever": "Mitte kunagi",
|
||||||
|
"LabelNewestAuthors": "Uuemad autorid",
|
||||||
|
"LabelNewestEpisodes": "Uuemad episoodid",
|
||||||
|
"LabelNo": "Ei",
|
||||||
|
"LabelNotFinished": "Lõpetamata",
|
||||||
|
"LabelNotStarted": "Pole alustatud",
|
||||||
|
"LabelNumEpisodes": "{0} episoode",
|
||||||
|
"LabelNumEpisodesIncomplete": "{0} episoodi, {1} lõpetamata",
|
||||||
|
"LabelNumberOfEpisodes": "# episoode",
|
||||||
|
"LabelOff": "Väljalülitatud",
|
||||||
|
"LabelOn": "Sisselülitatud",
|
||||||
|
"LabelPassword": "Parool",
|
||||||
|
"LabelPlaybackDirect": "Otse",
|
||||||
|
"LabelPlaybackLocal": "Lokaalne",
|
||||||
|
"LabelPlaybackTranscode": "Transkodeeri",
|
||||||
|
"LabelPodcast": "Podcast",
|
||||||
|
"LabelPodcasts": "Podcastid",
|
||||||
|
"LabelProgress": "Progress",
|
||||||
|
"LabelPubDate": "Publitseerimise kuupäev",
|
||||||
|
"LabelPublishYear": "Publitseerimise aasta",
|
||||||
|
"LabelPublishedDate": "Publitseeritud {0}",
|
||||||
|
"LabelRandomly": "Juhuslikus järjekorras",
|
||||||
|
"LabelRead": "Loetud läbi",
|
||||||
|
"LabelReadAgain": "Loe uuesti",
|
||||||
|
"LabelRecentlyAdded": "Hiljuti lisatud",
|
||||||
|
"LabelRemoveFromPlaylist": "Eemalda playlistist",
|
||||||
|
"LabelSeason": "Hooaeg",
|
||||||
|
"LabelSelectADevice": "Vali seade",
|
||||||
|
"LabelServerAddress": "Serveri aadres",
|
||||||
|
"LabelShowAll": "Näita kõik",
|
||||||
|
"LabelSize": "Suurus",
|
||||||
|
"LabelSleepTimer": "Unetaimer",
|
||||||
|
"LabelStart": "Alusta",
|
||||||
|
"LabelStatsBestDay": "Parim päev",
|
||||||
|
"LabelStatsDays": "Päevi",
|
||||||
|
"LabelStatsInARow": "järjest",
|
||||||
|
"LabelStatsMinutes": "minuteid",
|
||||||
|
"LabelThemeBlack": "Must",
|
||||||
|
"LabelThemeDark": "Pime",
|
||||||
|
"LabelThemeLight": "Hele",
|
||||||
|
"LabelTitle": "Pealkiri",
|
||||||
|
"LabelTotalSize": "Kogusuurus",
|
||||||
|
"LabelType": "Tüüp",
|
||||||
|
"LabelUnknown": "Teadmata"
|
||||||
|
}
|
||||||
|
|||||||
@@ -146,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "Fin du chapitre",
|
"LabelEndOfChapter": "Fin du chapitre",
|
||||||
"LabelEndTime": "Heure de fin",
|
"LabelEndTime": "Heure de fin",
|
||||||
"LabelEpisode": "Épisode",
|
"LabelEpisode": "Épisode",
|
||||||
|
"LabelExplicit": "Contenu explicite",
|
||||||
"LabelFeedURL": "URL du flux",
|
"LabelFeedURL": "URL du flux",
|
||||||
"LabelFile": "Fichier",
|
"LabelFile": "Fichier",
|
||||||
"LabelFileBirthtime": "Création du fichier",
|
"LabelFileBirthtime": "Création du fichier",
|
||||||
@@ -220,6 +221,7 @@
|
|||||||
"LabelPublishedDate": "Publié le {0}",
|
"LabelPublishedDate": "Publié le {0}",
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Courriel personnalisée du propriétaire",
|
"LabelRSSFeedCustomOwnerEmail": "Courriel personnalisée du propriétaire",
|
||||||
"LabelRSSFeedCustomOwnerName": "Nom propriétaire personnalisé",
|
"LabelRSSFeedCustomOwnerName": "Nom propriétaire personnalisé",
|
||||||
|
"LabelRSSFeedOpen": "Flux RSS ouvert",
|
||||||
"LabelRSSFeedPreventIndexing": "Empêcher l’indexation",
|
"LabelRSSFeedPreventIndexing": "Empêcher l’indexation",
|
||||||
"LabelRSSFeedSlug": "Identifiant d’URL du flux RSS",
|
"LabelRSSFeedSlug": "Identifiant d’URL du flux RSS",
|
||||||
"LabelRandomly": "Au hasard",
|
"LabelRandomly": "Au hasard",
|
||||||
@@ -296,6 +298,7 @@
|
|||||||
"MessageDownloading": "Téléchargement…",
|
"MessageDownloading": "Téléchargement…",
|
||||||
"MessageDownloadingEpisode": "Téléchargement de l’épisode",
|
"MessageDownloadingEpisode": "Téléchargement de l’épisode",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} épisode(s) mis en file pour téléchargement",
|
"MessageEpisodesQueuedForDownload": "{0} épisode(s) mis en file pour téléchargement",
|
||||||
|
"MessageFailedToRefreshToken": "Échec de l'actualisation du jeton, reconnexion requise",
|
||||||
"MessageFeedURLWillBe": "l’URL du flux sera {0}",
|
"MessageFeedURLWillBe": "l’URL du flux sera {0}",
|
||||||
"MessageFetching": "Récupération…",
|
"MessageFetching": "Récupération…",
|
||||||
"MessageFollowTheProjectOnGithub": "Suivre le projet sur GitHub",
|
"MessageFollowTheProjectOnGithub": "Suivre le projet sur GitHub",
|
||||||
@@ -323,6 +326,9 @@
|
|||||||
"MessageNoSeries": "Aucune série",
|
"MessageNoSeries": "Aucune série",
|
||||||
"MessageNoUpdatesWereNecessary": "Aucune mise à jour n’était nécessaire",
|
"MessageNoUpdatesWereNecessary": "Aucune mise à jour n’était nécessaire",
|
||||||
"MessageNoUserPlaylists": "Vous n’avez aucune liste de lecture",
|
"MessageNoUserPlaylists": "Vous n’avez aucune liste de lecture",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "L’authentification a été renforcée pour des raisons de sécurité dans la version 2.26.0 du serveur. Tous les utilisateurs doivent se reconnecter.",
|
||||||
|
"MessageOldServerAuthWarning": "Le serveur utilise un système d’authentification obsolète",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Ce serveur utilise une version antérieure à la v2.26.0. Un système d’authentification plus sécurisé a été ajouté dans la version 2.26.0. Il est fortement recommandé de mettre à jour le serveur vers la dernière version. Si vous avez déjà effectué la mise à jour, reconnectez-vous pour utiliser le nouveau système d’authentification.",
|
||||||
"MessageOldServerConnectionWarning": "La configuration de connexion du serveur utilise un ancien identifiant utilisateur. Veuillez supprimer et ajouter cette connexion serveur.",
|
"MessageOldServerConnectionWarning": "La configuration de connexion du serveur utilise un ancien identifiant utilisateur. Veuillez supprimer et ajouter cette connexion serveur.",
|
||||||
"MessageOldServerConnectionWarningHelp": "Vous avez initialement créé la connexion à ce serveur avant la migration de la base de données dans 2.3.0, publié en juin 2023. Une mise à jour future du serveur supprimera la possibilité de signer avec cette ancienne connexion. Veuillez supprimer la connexion existante du serveur et se connecter à nouveau (en utilisant la même adresse de serveur et les mêmes identifiants). Si vous avez des médias téléchargés sur cet appareil, les médias devront être téléchargés à nouveau pour synchroniser avec le serveur.",
|
"MessageOldServerConnectionWarningHelp": "Vous avez initialement créé la connexion à ce serveur avant la migration de la base de données dans 2.3.0, publié en juin 2023. Une mise à jour future du serveur supprimera la possibilité de signer avec cette ancienne connexion. Veuillez supprimer la connexion existante du serveur et se connecter à nouveau (en utilisant la même adresse de serveur et les mêmes identifiants). Si vous avez des médias téléchargés sur cet appareil, les médias devront être téléchargés à nouveau pour synchroniser avec le serveur.",
|
||||||
"MessagePodcastSearchField": "Saisir un terme de recherche ou l'URL d'un flux RSS",
|
"MessagePodcastSearchField": "Saisir un terme de recherche ou l'URL d'un flux RSS",
|
||||||
|
|||||||
@@ -1,8 +1,12 @@
|
|||||||
{
|
{
|
||||||
"ButtonAdd": "ઉમેરો",
|
"ButtonAdd": "ઉમેરો",
|
||||||
|
"ButtonAddNewServer": "નવી સર્વર ઉમેરો",
|
||||||
"ButtonAuthors": "લેખકો",
|
"ButtonAuthors": "લેખકો",
|
||||||
|
"ButtonBack": "પાછા",
|
||||||
"ButtonCancel": "રદ કરો",
|
"ButtonCancel": "રદ કરો",
|
||||||
|
"ButtonCancelTimer": "ટાઈમર રદ કરો",
|
||||||
"ButtonClearFilter": "ફિલ્ટર જતુ કરો",
|
"ButtonClearFilter": "ફિલ્ટર જતુ કરો",
|
||||||
|
"ButtonClearLogs": "લોગ્સ સાફ કરો",
|
||||||
"ButtonCloseFeed": "ફીડ બંધ કરો",
|
"ButtonCloseFeed": "ફીડ બંધ કરો",
|
||||||
"ButtonCollections": "સંગ્રહ",
|
"ButtonCollections": "સંગ્રહ",
|
||||||
"ButtonCreate": "બનાવો",
|
"ButtonCreate": "બનાવો",
|
||||||
@@ -12,9 +16,12 @@
|
|||||||
"ButtonLatest": "નવીનતમ",
|
"ButtonLatest": "નવીનતમ",
|
||||||
"ButtonLibrary": "પુસ્તકાલય",
|
"ButtonLibrary": "પુસ્તકાલય",
|
||||||
"ButtonOpenFeed": "ફીડ ખોલો",
|
"ButtonOpenFeed": "ફીડ ખોલો",
|
||||||
|
"ButtonPause": "વિરામ",
|
||||||
"ButtonPlay": "ચલાવો",
|
"ButtonPlay": "ચલાવો",
|
||||||
"ButtonPlaylists": "પ્લેલિસ્ટ",
|
"ButtonPlaylists": "પ્લેલિસ્ટ",
|
||||||
"ButtonRead": "વાંચો",
|
"ButtonRead": "વાંચો",
|
||||||
|
"ButtonReadLess": "ઓછું વાંચો",
|
||||||
|
"ButtonReadMore": "વધારે વાંચો",
|
||||||
"ButtonRemove": "કાઢી નાખો",
|
"ButtonRemove": "કાઢી નાખો",
|
||||||
"ButtonSave": "સાચવો",
|
"ButtonSave": "સાચવો",
|
||||||
"ButtonSearch": "શોધો",
|
"ButtonSearch": "શોધો",
|
||||||
|
|||||||
@@ -6,16 +6,34 @@
|
|||||||
"ButtonCancel": "रद्द करें",
|
"ButtonCancel": "रद्द करें",
|
||||||
"ButtonCancelTimer": "टाइमर रद्द करें",
|
"ButtonCancelTimer": "टाइमर रद्द करें",
|
||||||
"ButtonClearFilter": "लागू फ़िल्टर साफ़ करें",
|
"ButtonClearFilter": "लागू फ़िल्टर साफ़ करें",
|
||||||
|
"ButtonClearLogs": "अभिलेख साफ़ करें",
|
||||||
"ButtonCloseFeed": "फ़ीड बंद करें",
|
"ButtonCloseFeed": "फ़ीड बंद करें",
|
||||||
"ButtonCollections": "संग्रह",
|
"ButtonCollections": "संग्रह",
|
||||||
"ButtonConnect": "जोड़ना",
|
"ButtonConnect": "जोड़ना",
|
||||||
|
"ButtonConnectToServer": "सर्वर से संबद्ध स्थापित करें",
|
||||||
"ButtonCreate": "बनाएं",
|
"ButtonCreate": "बनाएं",
|
||||||
|
"ButtonCreateBookmark": "बुकमार्क बनाएं",
|
||||||
|
"ButtonCreateNewPlaylist": "प्लेलिस्ट बनाएं",
|
||||||
"ButtonDelete": "हटाएं",
|
"ButtonDelete": "हटाएं",
|
||||||
|
"ButtonDeleteLocalEpisode": "स्थानीय प्रकरण हटाएँ",
|
||||||
|
"ButtonDeleteLocalFile": "स्थानीय फ़ाइल हटाएँ",
|
||||||
|
"ButtonDeleteLocalItem": "स्थानीय वस्तु हटाएँ",
|
||||||
|
"ButtonDisableAutoTimer": "स्वचालित घड़ी अक्षम करें",
|
||||||
|
"ButtonDisconnect": "सर्वर संबद्ध तोड़े",
|
||||||
|
"ButtonGoToWebClient": "वेब क्लाइंट पर जाएँ",
|
||||||
|
"ButtonHistory": "इतिहास",
|
||||||
"ButtonHome": "घर",
|
"ButtonHome": "घर",
|
||||||
"ButtonIssues": "समस्याएं",
|
"ButtonIssues": "समस्याएं",
|
||||||
"ButtonLatest": "नवीनतम",
|
"ButtonLatest": "नवीनतम",
|
||||||
"ButtonLibrary": "पुस्तकालय",
|
"ButtonLibrary": "पुस्तकालय",
|
||||||
|
"ButtonLogs": "अभिलेख",
|
||||||
|
"ButtonManageLocalFiles": "स्थानीय फ़ाइल प्रबंधित करें",
|
||||||
|
"ButtonMaskServerAddress": "सर्वर पता नकाबपोश करें",
|
||||||
|
"ButtonNewFolder": "नया फ़ोल्डर",
|
||||||
|
"ButtonNextEpisode": "अगला एपिसोड",
|
||||||
|
"ButtonOk": "ठीक है",
|
||||||
"ButtonOpenFeed": "फ़ीड खोलें",
|
"ButtonOpenFeed": "फ़ीड खोलें",
|
||||||
|
"ButtonOverride": "अवहेलना करें",
|
||||||
"ButtonPlay": "चलाएँ",
|
"ButtonPlay": "चलाएँ",
|
||||||
"ButtonPlaylists": "प्लेलिस्ट्स",
|
"ButtonPlaylists": "प्लेलिस्ट्स",
|
||||||
"ButtonRead": "पढ़ लिया",
|
"ButtonRead": "पढ़ लिया",
|
||||||
|
|||||||
@@ -146,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "Kraj poglavlja",
|
"LabelEndOfChapter": "Kraj poglavlja",
|
||||||
"LabelEndTime": "Vrijeme završetka",
|
"LabelEndTime": "Vrijeme završetka",
|
||||||
"LabelEpisode": "Nastavak",
|
"LabelEpisode": "Nastavak",
|
||||||
|
"LabelExplicit": "Eksplicitno",
|
||||||
"LabelFeedURL": "URL izvora",
|
"LabelFeedURL": "URL izvora",
|
||||||
"LabelFile": "Datoteka",
|
"LabelFile": "Datoteka",
|
||||||
"LabelFileBirthtime": "Datoteka stvorena",
|
"LabelFileBirthtime": "Datoteka stvorena",
|
||||||
@@ -324,6 +325,9 @@
|
|||||||
"MessageNoSeries": "Nema serijala",
|
"MessageNoSeries": "Nema serijala",
|
||||||
"MessageNoUpdatesWereNecessary": "Ažuriranje nije bilo potrebno",
|
"MessageNoUpdatesWereNecessary": "Ažuriranje nije bilo potrebno",
|
||||||
"MessageNoUserPlaylists": "Nemate popisa za izvođenje",
|
"MessageNoUserPlaylists": "Nemate popisa za izvođenje",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "Sigurnost provjere autentičnosti poboljšana je u inačici poslužitelja v2.26.0. Svi se korisnici moraju iznova prijaviti.",
|
||||||
|
"MessageOldServerAuthWarning": "Poslužitelj upotrebljava zastarjeli način provjere autentičnosti",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Ovaj poslužitelj starija je inačica od v2.26.0. Od inačice v2.26.0 uveden je sigurniji način provjere autentičnosti. Izričito preporučamo nadogradnju poslužitelja na noviju inačicu. Ukoliko ste već nadogradili poslužitelj, iznova se prijavite kako biste upotrebljavali novi način provjere autentičnosti.",
|
||||||
"MessageOldServerConnectionWarning": "Veza s poslužiteljem koristi se starim ID-jem korisnika. Molimo izbrišite i ponovno dodajte ovu vezu s poslužiteljem.",
|
"MessageOldServerConnectionWarning": "Veza s poslužiteljem koristi se starim ID-jem korisnika. Molimo izbrišite i ponovno dodajte ovu vezu s poslužiteljem.",
|
||||||
"MessageOldServerConnectionWarningHelp": "Vezu s ovim poslužiteljem postavili ste prije migracije baze podataka u inačici 2.3.0 objavljenoj u lipnju 2023. Nadolazeće ažuriranje poslužitelja onemogućit će prijavu korištenjem ove stare veze. Molimo izbrišite postojeću vezu s poslužiteljem i ponovno se povežite (korištenjem iste adrese poslužitelja i korisničkih podataka). Ukoliko imate preuzetih medijskih datoteka na ovom uređaju, morat ćete ih iznova preuzeti da bi se sinkronizirali s poslužiteljem.",
|
"MessageOldServerConnectionWarningHelp": "Vezu s ovim poslužiteljem postavili ste prije migracije baze podataka u inačici 2.3.0 objavljenoj u lipnju 2023. Nadolazeće ažuriranje poslužitelja onemogućit će prijavu korištenjem ove stare veze. Molimo izbrišite postojeću vezu s poslužiteljem i ponovno se povežite (korištenjem iste adrese poslužitelja i korisničkih podataka). Ukoliko imate preuzetih medijskih datoteka na ovom uređaju, morat ćete ih iznova preuzeti da bi se sinkronizirali s poslužiteljem.",
|
||||||
"MessagePodcastSearchField": "Upišite izraz za pretraživanje ili URL RSS izvora",
|
"MessagePodcastSearchField": "Upišite izraz za pretraživanje ili URL RSS izvora",
|
||||||
|
|||||||
@@ -146,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "Fejezet vége",
|
"LabelEndOfChapter": "Fejezet vége",
|
||||||
"LabelEndTime": "Befejezés ideje",
|
"LabelEndTime": "Befejezés ideje",
|
||||||
"LabelEpisode": "Epizód",
|
"LabelEpisode": "Epizód",
|
||||||
|
"LabelExplicit": "Szókimondó",
|
||||||
"LabelFeedURL": "Hírcsatorna URL",
|
"LabelFeedURL": "Hírcsatorna URL",
|
||||||
"LabelFile": "Fájl",
|
"LabelFile": "Fájl",
|
||||||
"LabelFileBirthtime": "Fájl létrehozásának ideje",
|
"LabelFileBirthtime": "Fájl létrehozásának ideje",
|
||||||
@@ -297,6 +298,7 @@
|
|||||||
"MessageDownloading": "Letöltés...",
|
"MessageDownloading": "Letöltés...",
|
||||||
"MessageDownloadingEpisode": "Epizód letöltése",
|
"MessageDownloadingEpisode": "Epizód letöltése",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} epizód letöltésre vár",
|
"MessageEpisodesQueuedForDownload": "{0} epizód letöltésre vár",
|
||||||
|
"MessageFailedToRefreshToken": "A token frissítése nem sikerült, ismételt bejelentkezés szükséges",
|
||||||
"MessageFeedURLWillBe": "A hírcsatorna URL-je lesz: {0}",
|
"MessageFeedURLWillBe": "A hírcsatorna URL-je lesz: {0}",
|
||||||
"MessageFetching": "Lekérdezés...",
|
"MessageFetching": "Lekérdezés...",
|
||||||
"MessageFollowTheProjectOnGithub": "Kövesse a projektet a GitHubon",
|
"MessageFollowTheProjectOnGithub": "Kövesse a projektet a GitHubon",
|
||||||
@@ -324,6 +326,9 @@
|
|||||||
"MessageNoSeries": "Nincsenek sorozatok",
|
"MessageNoSeries": "Nincsenek sorozatok",
|
||||||
"MessageNoUpdatesWereNecessary": "Nem volt szükséges frissítés",
|
"MessageNoUpdatesWereNecessary": "Nem volt szükséges frissítés",
|
||||||
"MessageNoUserPlaylists": "Nincsenek lejátszási listái",
|
"MessageNoUserPlaylists": "Nincsenek lejátszási listái",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "A szerver v2.26.0 verziójában a biztonság érdekében továbbfejlesztettük a hitelesítést. Minden felhasználónak újra be kell jelentkeznie.",
|
||||||
|
"MessageOldServerAuthWarning": "A szerver elavult hitelesítést használ",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Ez a szerver a v2.26.0-nál régebbi verziót futtat. A v2.26.0-ban egy biztonságosabb hitelesítési rendszer került bevezetésre. Erősen ajánlott a szervert a legújabb verzióra frissíteni. Ha már frissítette a szervert, jelentkezzen be újra, hogy az új hitelesítést használhassa.",
|
||||||
"MessageOldServerConnectionWarning": "A kiszolgáló kapcsolat beállításai egy régi felhasználói azonosítót használnak. Kérjük, törölje és adja hozzá újra ezt a szerverkapcsolatot.",
|
"MessageOldServerConnectionWarning": "A kiszolgáló kapcsolat beállításai egy régi felhasználói azonosítót használnak. Kérjük, törölje és adja hozzá újra ezt a szerverkapcsolatot.",
|
||||||
"MessageOldServerConnectionWarningHelp": "Eredetileg a 2023 júniusában megjelent 2.3.0-s verziójú adatbázis-migráció előtt állította be a kapcsolatot ehhez a kiszolgálóhoz. Egy jövőbeli kiszolgálófrissítéssel megszűnik a lehetőség, hogy ezzel a régi kapcsolattal jelentkezzen be. Kérjük, törölje a meglévő szerverkapcsolatot, és csatlakozzon újra (ugyanazzal a szervercímmel és hitelesítő adatokkal). Ha ezen az eszközön bármilyen letöltött média van, a szerverrel való szinkronizáláshoz a médiát újra le kell tölteni.",
|
"MessageOldServerConnectionWarningHelp": "Eredetileg a 2023 júniusában megjelent 2.3.0-s verziójú adatbázis-migráció előtt állította be a kapcsolatot ehhez a kiszolgálóhoz. Egy jövőbeli kiszolgálófrissítéssel megszűnik a lehetőség, hogy ezzel a régi kapcsolattal jelentkezzen be. Kérjük, törölje a meglévő szerverkapcsolatot, és csatlakozzon újra (ugyanazzal a szervercímmel és hitelesítő adatokkal). Ha ezen az eszközön bármilyen letöltött média van, a szerverrel való szinkronizáláshoz a médiát újra le kell tölteni.",
|
||||||
"MessagePodcastSearchField": "Adja meg a keresési kifejezést vagy az RSS hírcsatorna URL-címét",
|
"MessagePodcastSearchField": "Adja meg a keresési kifejezést vagy az RSS hírcsatorna URL-címét",
|
||||||
|
|||||||
@@ -146,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "Fine Capitolo",
|
"LabelEndOfChapter": "Fine Capitolo",
|
||||||
"LabelEndTime": "Tempo alla fine",
|
"LabelEndTime": "Tempo alla fine",
|
||||||
"LabelEpisode": "Episodio",
|
"LabelEpisode": "Episodio",
|
||||||
|
"LabelExplicit": "Esplicito",
|
||||||
"LabelFeedURL": "URL del flusso",
|
"LabelFeedURL": "URL del flusso",
|
||||||
"LabelFile": "File",
|
"LabelFile": "File",
|
||||||
"LabelFileBirthtime": "Data di creazione",
|
"LabelFileBirthtime": "Data di creazione",
|
||||||
@@ -324,6 +325,9 @@
|
|||||||
"MessageNoSeries": "Nessuna serie",
|
"MessageNoSeries": "Nessuna serie",
|
||||||
"MessageNoUpdatesWereNecessary": "Nessun aggiornamento necessario",
|
"MessageNoUpdatesWereNecessary": "Nessun aggiornamento necessario",
|
||||||
"MessageNoUserPlaylists": "Non hai nessuna Playlist",
|
"MessageNoUserPlaylists": "Non hai nessuna Playlist",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "L'autenticazione è stata migliorata per la sicurezza nel server v2.26.0. Tutti gli utenti sono tenuti a re-login.",
|
||||||
|
"MessageOldServerAuthWarning": "Server utilizza l'autenticazione obsoleta",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Questo server esegue una versione precedente a v2.26.0. Un sistema di autenticazione più sicuro è stato aggiunto in v2.26.0. Si raccomanda vivamente di aggiornare il server alla versione più recente. Se hai già aggiornato il server, accedi di nuovo per utilizzare la nuova autenticazione.",
|
||||||
"MessageOldServerConnectionWarning": "La configurazione della connessione al server utilizza un vecchio ID utente. Elimina e aggiungi nuovamente questa connessione al server.",
|
"MessageOldServerConnectionWarning": "La configurazione della connessione al server utilizza un vecchio ID utente. Elimina e aggiungi nuovamente questa connessione al server.",
|
||||||
"MessageOldServerConnectionWarningHelp": "Originariamente hai impostato la connessione a questo server prima della migrazione del database in 2.3.0, rilasciata a giugno 2023. Un futuro aggiornamento del server rimuoverà la possibilità di accedere con questa vecchia connessione. Elimina la connessione al server esistente e riconnettiti (utilizzando lo stesso indirizzo server e le stesse credenziali). Se hai scaricato dei contenuti multimediali su questo dispositivo, i contenuti multimediali dovranno essere scaricati di nuovo per la sincronizzazione con il server.",
|
"MessageOldServerConnectionWarningHelp": "Originariamente hai impostato la connessione a questo server prima della migrazione del database in 2.3.0, rilasciata a giugno 2023. Un futuro aggiornamento del server rimuoverà la possibilità di accedere con questa vecchia connessione. Elimina la connessione al server esistente e riconnettiti (utilizzando lo stesso indirizzo server e le stesse credenziali). Se hai scaricato dei contenuti multimediali su questo dispositivo, i contenuti multimediali dovranno essere scaricati di nuovo per la sincronizzazione con il server.",
|
||||||
"MessagePodcastSearchField": "Inserisci il termine di ricerca o l'URL del feed RSS",
|
"MessagePodcastSearchField": "Inserisci il termine di ricerca o l'URL del feed RSS",
|
||||||
|
|||||||
+154
-4
@@ -1,14 +1,164 @@
|
|||||||
{
|
{
|
||||||
"ButtonAdd": "追加",
|
"ButtonAdd": "追加",
|
||||||
|
"ButtonAddNewServer": "サーバーを追加",
|
||||||
|
"ButtonAuthors": "作者",
|
||||||
|
"ButtonBack": "戻る",
|
||||||
"ButtonCancel": "キャンセル",
|
"ButtonCancel": "キャンセル",
|
||||||
"ButtonCancelTimer": "キャンセルタイマー",
|
"ButtonCancelTimer": "タイマーをキャンセル",
|
||||||
|
"ButtonClearFilter": "絞り込みを解除",
|
||||||
|
"ButtonClearLogs": "ログを削除",
|
||||||
|
"ButtonCloseFeed": "フィードを閉じる",
|
||||||
|
"ButtonCollections": "コレクション",
|
||||||
|
"ButtonConnect": "接続",
|
||||||
|
"ButtonConnectToServer": "サーバーに接続",
|
||||||
|
"ButtonCreate": "作成",
|
||||||
|
"ButtonCreateBookmark": "ブックマークを作成",
|
||||||
|
"ButtonCreateNewPlaylist": "新しいプレイリストを作成",
|
||||||
|
"ButtonDelete": "削除",
|
||||||
|
"ButtonDeleteLocalEpisode": "ローカルエピソードを削除",
|
||||||
|
"ButtonDeleteLocalFile": "ローカルファイルを削除",
|
||||||
|
"ButtonDeleteLocalItem": "ローカルアイテムを削除",
|
||||||
|
"ButtonDisableAutoTimer": "自動タイマーを無効",
|
||||||
|
"ButtonDisconnect": "切断",
|
||||||
|
"ButtonGoToWebClient": "ウェブクライアントに遷移",
|
||||||
|
"ButtonHistory": "履歴",
|
||||||
|
"ButtonHome": "ホーム",
|
||||||
|
"ButtonIssues": "問題",
|
||||||
|
"ButtonLatest": "最新",
|
||||||
|
"ButtonLibrary": "ライブラリー",
|
||||||
|
"ButtonLocalMedia": "ローカルメディア",
|
||||||
|
"ButtonLogs": "ログ",
|
||||||
|
"ButtonManageLocalFiles": "ローカルファイルの管理",
|
||||||
|
"ButtonMaskServerAddress": "サーバーアドレスを隠す",
|
||||||
|
"ButtonNewFolder": "新しいフォルダー",
|
||||||
|
"ButtonNextEpisode": "次のエピソード",
|
||||||
"ButtonOk": "はい",
|
"ButtonOk": "はい",
|
||||||
"ButtonPlay": "プレイ",
|
"ButtonOpenFeed": "フィードを開く",
|
||||||
"ButtonRead": "野村",
|
"ButtonOverride": "上書きする",
|
||||||
|
"ButtonPause": "一時停止",
|
||||||
|
"ButtonPlay": "再生",
|
||||||
|
"ButtonPlayEpisode": "エピソードを再生",
|
||||||
|
"ButtonPlaylists": "プレイリスト",
|
||||||
|
"ButtonRead": "読む",
|
||||||
|
"ButtonReadLess": "閉じる",
|
||||||
|
"ButtonReadMore": "もっと見る",
|
||||||
|
"ButtonRemove": "削除",
|
||||||
|
"ButtonRemoveFromServer": "サーバーから削除",
|
||||||
|
"ButtonSave": "保存",
|
||||||
|
"ButtonSaveOrder": "並び替えを保存",
|
||||||
|
"ButtonSearch": "検索",
|
||||||
|
"ButtonSeries": "シリーズ",
|
||||||
|
"ButtonSetTimer": "タイマーを設定",
|
||||||
|
"ButtonSubmit": "送信",
|
||||||
|
"ButtonSwitchServerUser": "サーバー/ユーザーの切り替え",
|
||||||
|
"ButtonUnmaskServerAddress": "サーバーアドレスを表示",
|
||||||
|
"ButtonUserStats": "ユーザーの記録",
|
||||||
"ButtonYes": "はい",
|
"ButtonYes": "はい",
|
||||||
|
"HeaderAccount": "アカウント",
|
||||||
|
"HeaderAdvanced": "上級者向け",
|
||||||
|
"HeaderAndroidAutoSettings": "Android Autoの設定",
|
||||||
|
"HeaderAudioTracks": "オーディオトラック",
|
||||||
|
"HeaderChapters": "チャプター",
|
||||||
|
"HeaderCollection": "コレクション",
|
||||||
|
"HeaderCollectionItems": "コレクションの項目",
|
||||||
|
"HeaderConnectionStatus": "接続状況",
|
||||||
|
"HeaderDataSettings": "データ設定",
|
||||||
|
"HeaderDetails": "詳細",
|
||||||
|
"HeaderDownloads": "ダウンロード",
|
||||||
|
"HeaderEbookFiles": "電子書籍ファイル",
|
||||||
|
"HeaderEpisodes": "エピソード",
|
||||||
|
"HeaderEreaderSettings": "電子書籍リーダーの設定",
|
||||||
|
"HeaderLatestEpisodes": "最新のエピソード",
|
||||||
|
"HeaderLibraries": "ライブラリー",
|
||||||
|
"HeaderLocalFolders": "ローカルフォルダー",
|
||||||
|
"HeaderLocalLibraryItems": "ローカルライブラリーの項目",
|
||||||
|
"HeaderNewPlaylist": "新しいプレイリスト",
|
||||||
|
"HeaderOpenRSSFeed": "RSS Feedを開く",
|
||||||
|
"HeaderPlaylist": "プレイリスト",
|
||||||
|
"HeaderPlaylistItems": "プレイリストアイテム",
|
||||||
|
"HeaderProgressSyncFailed": "進行中の同期失敗",
|
||||||
|
"HeaderRSSFeed": "RSS Feed",
|
||||||
|
"HeaderRSSFeedGeneral": "RSS 詳細",
|
||||||
|
"HeaderSelectDownloadLocation": "保存場所の選択",
|
||||||
|
"HeaderSettings": "設定",
|
||||||
|
"HeaderSleepTimer": "スリープタイマー",
|
||||||
|
"HeaderSleepTimerSettings": "スリープタイマー設定",
|
||||||
|
"HeaderStatsMinutesListeningChart": "過去7日間の視聴時間(分)",
|
||||||
|
"HeaderUserInterfaceSettings": "UI設定",
|
||||||
|
"LabelAddToPlaylist": "プレイリストの追加",
|
||||||
|
"LabelAllowSeekingOnMediaControls": "メディア通知コントロールでの位置情報の取得を許可",
|
||||||
|
"LabelAskConfirmation": "確認を求める",
|
||||||
|
"LabelAuthor": "著者",
|
||||||
|
"LabelAuthorFirstLast": "著者(名 氏)",
|
||||||
|
"LabelAuthorLastFirst": "著者(氏 名)",
|
||||||
|
"LabelAuthors": "著者",
|
||||||
|
"LabelAutoDownloadEpisodes": "エピソードの自動ダウンロード",
|
||||||
|
"LabelAutoSleepTimer": "自動スリープタイマー",
|
||||||
"LabelBooks": "ほん",
|
"LabelBooks": "ほん",
|
||||||
|
"LabelChapterTrack": "チャプタートラック",
|
||||||
|
"LabelChapters": "チャプター",
|
||||||
|
"LabelClosePlayer": "プレイヤーを閉じる",
|
||||||
|
"LabelComplete": "完了",
|
||||||
|
"LabelContinueListening": "続きから聞く",
|
||||||
|
"LabelDescription": "説明",
|
||||||
|
"LabelDisableAudioFadeOut": "オーディオフェードアウトを無効",
|
||||||
|
"LabelDisableAudioFadeOutHelp": "スリープタイマーの残り時間が1分を切ると、音量が徐々に小さくなります。フェードアウトしないようにするには、この設定を有効にしてください。",
|
||||||
|
"LabelDisableAutoRewind": "自動巻き戻しを無効",
|
||||||
|
"LabelDisableShakeToResetHelp": "タイマー作動中、またはタイマー終了後2分以内に端末を振ると、スリープタイマーがリセットされます。この設定を有効にすると、振ってリセットする機能を無効にできます。",
|
||||||
|
"LabelDisableVibrateOnResetHelp": "スリープタイマーがリセットされると、デバイスが振動します。この設定を有効にすると、スリープタイマーがリセットされた際に振動しなくなります。",
|
||||||
|
"LabelDownload": "ダウンロード",
|
||||||
|
"LabelDownloadUsingCellular": "モバイル通信を使用してダウンロード",
|
||||||
|
"LabelDownloaded": "ダウンロード完了",
|
||||||
|
"LabelDuration": "長さ",
|
||||||
|
"LabelEbook": "Eブック",
|
||||||
|
"LabelEbooks": "Eブック",
|
||||||
|
"LabelEnable": "有効",
|
||||||
|
"LabelEnableMp3IndexSeeking": "mp3インデックス検索を有効化",
|
||||||
|
"LabelEnableMp3IndexSeekingHelp": "この設定は、正しくシークできないMP3ファイルがある場合にのみ有効にしてください。シークの不正確さは、可変ビットレート(VBR)のMP3ファイルが原因である可能性が高いです。この設定はインデックスシークを強制し、ファイルの読み取り時に時間-バイトマッピングを構築します。大きなMP3ファイルの場合、ファイルの終わり付近をシークする際に遅延が生じる場合があります。",
|
||||||
|
"LabelEndOfChapter": "チャプターの最後",
|
||||||
|
"LabelEndTime": "終了時間",
|
||||||
|
"LabelEpisode": "エピソード",
|
||||||
|
"LabelFeedURL": "Feed URL",
|
||||||
|
"LabelFile": "ファイル",
|
||||||
|
"LabelFilename": "ファイル名",
|
||||||
|
"LabelFinished": "完了",
|
||||||
|
"LabelFolder": "フォルダ",
|
||||||
|
"LabelFontBoldness": "フォントの太さ",
|
||||||
|
"LabelFontScale": "フォントサイズ",
|
||||||
|
"LabelGenre": "ジャンル",
|
||||||
|
"LabelGenres": "ジャンル",
|
||||||
|
"LabelHost": "ホスト",
|
||||||
|
"LabelInProgress": "進行中",
|
||||||
|
"LabelInternalAppStorage": "アプリ内ストレージ",
|
||||||
|
"LabelKeepScreenAwake": "画面をスリープにしない",
|
||||||
"LabelLanguage": "言語",
|
"LabelLanguage": "言語",
|
||||||
|
"LabelLayout": "レイアウト",
|
||||||
|
"LabelLayoutAuto": "自動",
|
||||||
|
"LabelLayoutSinglePage": "単ページ",
|
||||||
|
"LabelLight": "ライト",
|
||||||
|
"LabelLineSpacing": "行間",
|
||||||
|
"LabelListenAgain": "再度視聴",
|
||||||
|
"LabelLocalBooks": "ローカルブック",
|
||||||
|
"LabelLocalPodcasts": "ローカルポッドキャスト",
|
||||||
|
"LabelLockPlayer": "プレイヤーのロック",
|
||||||
|
"LabelMediaType": "メディアの種類",
|
||||||
|
"LabelMoreInfo": "追加情報",
|
||||||
"LabelName": "名",
|
"LabelName": "名",
|
||||||
|
"LabelNarrator": "ナレーター",
|
||||||
|
"LabelNarrators": "ナレーター",
|
||||||
|
"LabelNavigateWithVolume": "音量キーで操作",
|
||||||
|
"LabelNavigateWithVolumeWhilePlaying": "再生中に音量キーで操作を許可",
|
||||||
|
"LabelNavigateWithVolumeWhilePlayingDisabled": "オフ",
|
||||||
|
"LabelNavigateWithVolumeWhilePlayingEnabled": "オン",
|
||||||
|
"LabelNewestAuthors": "最新の著者",
|
||||||
|
"LabelNewestEpisodes": "最新エピソード",
|
||||||
|
"LabelNumEpisodes": "{0} エピソード",
|
||||||
|
"LabelNumEpisodesIncomplete": "{0} エピソード, {1} 未完了",
|
||||||
"LabelPassword": "パスワード",
|
"LabelPassword": "パスワード",
|
||||||
"LabelPodcast": "ポッドキャスト"
|
"LabelPath": "パス",
|
||||||
|
"LabelPlaybackLocal": "ローカル",
|
||||||
|
"LabelPodcast": "ポッドキャスト",
|
||||||
|
"LabelPodcasts": "ポッドキャスト",
|
||||||
|
"LabelPreventIndexing": "フィードがiTunesおよびGoogleのポッドキャストディレクトリにインデックス登録されるのを防ぎます",
|
||||||
|
"LabelPublishYear": "公開年"
|
||||||
}
|
}
|
||||||
|
|||||||
+9
-4
@@ -137,7 +137,7 @@
|
|||||||
"LabelDownloadUsingCellular": "Download met mobiele data",
|
"LabelDownloadUsingCellular": "Download met mobiele data",
|
||||||
"LabelDownloaded": "Gedownload",
|
"LabelDownloaded": "Gedownload",
|
||||||
"LabelDuration": "Duur",
|
"LabelDuration": "Duur",
|
||||||
"LabelEbook": "Ebook",
|
"LabelEbook": "E-boek",
|
||||||
"LabelEbooks": "Eboeken",
|
"LabelEbooks": "Eboeken",
|
||||||
"LabelEnable": "Inschakelen",
|
"LabelEnable": "Inschakelen",
|
||||||
"LabelEnableMp3IndexSeeking": "MP3-index zoeken inschakelen",
|
"LabelEnableMp3IndexSeeking": "MP3-index zoeken inschakelen",
|
||||||
@@ -146,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "Einde van het Hoofdstuk",
|
"LabelEndOfChapter": "Einde van het Hoofdstuk",
|
||||||
"LabelEndTime": "Eindtijd",
|
"LabelEndTime": "Eindtijd",
|
||||||
"LabelEpisode": "Aflevering",
|
"LabelEpisode": "Aflevering",
|
||||||
|
"LabelExplicit": "Expliciet",
|
||||||
"LabelFeedURL": "Feed URL",
|
"LabelFeedURL": "Feed URL",
|
||||||
"LabelFile": "Bestand",
|
"LabelFile": "Bestand",
|
||||||
"LabelFileBirthtime": "Aanmaaktijd bestand",
|
"LabelFileBirthtime": "Aanmaaktijd bestand",
|
||||||
@@ -153,10 +154,10 @@
|
|||||||
"LabelFilename": "Bestandsnaam",
|
"LabelFilename": "Bestandsnaam",
|
||||||
"LabelFinished": "Voltooid",
|
"LabelFinished": "Voltooid",
|
||||||
"LabelFolder": "Map",
|
"LabelFolder": "Map",
|
||||||
"LabelFontBoldness": "Font Boldness",
|
"LabelFontBoldness": "Lettertype Dikte",
|
||||||
"LabelFontScale": "Lettertype schaal",
|
"LabelFontScale": "Lettertype schaal",
|
||||||
"LabelGenre": "Genre",
|
"LabelGenre": "Genre",
|
||||||
"LabelGenres": "Genres",
|
"LabelGenres": "Categorieën",
|
||||||
"LabelHapticFeedback": "Haptische feedback",
|
"LabelHapticFeedback": "Haptische feedback",
|
||||||
"LabelHasEbook": "Heeft Ebook",
|
"LabelHasEbook": "Heeft Ebook",
|
||||||
"LabelHasSupplementaryEbook": "Heeft aanvullend Ebook",
|
"LabelHasSupplementaryEbook": "Heeft aanvullend Ebook",
|
||||||
@@ -220,7 +221,7 @@
|
|||||||
"LabelPublishedDate": "{0} gepubliceerd",
|
"LabelPublishedDate": "{0} gepubliceerd",
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Aangepast e-mailadres eigenaar",
|
"LabelRSSFeedCustomOwnerEmail": "Aangepast e-mailadres eigenaar",
|
||||||
"LabelRSSFeedCustomOwnerName": "Aangepaste naam eigenaar",
|
"LabelRSSFeedCustomOwnerName": "Aangepaste naam eigenaar",
|
||||||
"LabelRSSFeedOpen": "RSS Feed Open",
|
"LabelRSSFeedOpen": "RSS Feed open",
|
||||||
"LabelRSSFeedPreventIndexing": "Voorkom indexering",
|
"LabelRSSFeedPreventIndexing": "Voorkom indexering",
|
||||||
"LabelRSSFeedSlug": "RSS-feed slug",
|
"LabelRSSFeedSlug": "RSS-feed slug",
|
||||||
"LabelRandomly": "Willekeurig",
|
"LabelRandomly": "Willekeurig",
|
||||||
@@ -297,6 +298,7 @@
|
|||||||
"MessageDownloading": "Downloaden...",
|
"MessageDownloading": "Downloaden...",
|
||||||
"MessageDownloadingEpisode": "Aflevering aan het dowloaden",
|
"MessageDownloadingEpisode": "Aflevering aan het dowloaden",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} aflevering(en) in de rij om te downloaden",
|
"MessageEpisodesQueuedForDownload": "{0} aflevering(en) in de rij om te downloaden",
|
||||||
|
"MessageFailedToRefreshToken": "Token vernieuwen mislukt, opnieuw inloggen vereist",
|
||||||
"MessageFeedURLWillBe": "Feed URL zal {0} zijn",
|
"MessageFeedURLWillBe": "Feed URL zal {0} zijn",
|
||||||
"MessageFetching": "Aan het ophalen...",
|
"MessageFetching": "Aan het ophalen...",
|
||||||
"MessageFollowTheProjectOnGithub": "Volg dit project op Github",
|
"MessageFollowTheProjectOnGithub": "Volg dit project op Github",
|
||||||
@@ -324,6 +326,9 @@
|
|||||||
"MessageNoSeries": "Geen series",
|
"MessageNoSeries": "Geen series",
|
||||||
"MessageNoUpdatesWereNecessary": "Geen bijwerkingen waren noodzakelijk",
|
"MessageNoUpdatesWereNecessary": "Geen bijwerkingen waren noodzakelijk",
|
||||||
"MessageNoUserPlaylists": "Je hebt geen afspeellijsten",
|
"MessageNoUserPlaylists": "Je hebt geen afspeellijsten",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "Authenticatie is verbeterd om de veiligheid te verhogen in server versie v2.26.0. Alle gebruikers moeten opnieuw inloggen.",
|
||||||
|
"MessageOldServerAuthWarning": "De server gebruikt een verouderde authenticatie versie",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Deze server draait een versie ouder dan v2.26.0. Een veiliger authenticatie systeem is geïntroduceerd in v2.26.0. Het wordt met klem aangeraden om de server te updaten naar de laatste versie. Mocht de server al geüpdatet zijn, log dan opnieuw in om het nieuwe authenticatie mechanisme te gebruiken.",
|
||||||
"MessageOldServerConnectionWarning": "Server connectie configuratie gebruikt een oud user ID. Gelieve deze server connectie te verwijderen en opnieuw toe te voegen.",
|
"MessageOldServerConnectionWarning": "Server connectie configuratie gebruikt een oud user ID. Gelieve deze server connectie te verwijderen en opnieuw toe te voegen.",
|
||||||
"MessageOldServerConnectionWarningHelp": "U hebt de verbinding met deze server oorspronkelijk ingesteld vóór de databasemigratie in versie 2.3.0, uitgebracht in juni 2023. Een toekomstige serverupdate zal de mogelijkheid om in te loggen met deze oude verbinding verwijderen. Verwijder de bestaande serververbinding en maak opnieuw verbinding (met hetzelfde serveradres en dezelfde inloggegevens). Als u gedownloade media op dit apparaat hebt, moet u deze opnieuw downloaden om te synchroniseren met de server.",
|
"MessageOldServerConnectionWarningHelp": "U hebt de verbinding met deze server oorspronkelijk ingesteld vóór de databasemigratie in versie 2.3.0, uitgebracht in juni 2023. Een toekomstige serverupdate zal de mogelijkheid om in te loggen met deze oude verbinding verwijderen. Verwijder de bestaande serververbinding en maak opnieuw verbinding (met hetzelfde serveradres en dezelfde inloggegevens). Als u gedownloade media op dit apparaat hebt, moet u deze opnieuw downloaden om te synchroniseren met de server.",
|
||||||
"MessagePodcastSearchField": "Zoekterm of RSS feed URL invullen",
|
"MessagePodcastSearchField": "Zoekterm of RSS feed URL invullen",
|
||||||
|
|||||||
+80
-19
@@ -15,7 +15,7 @@
|
|||||||
"ButtonCreateBookmark": "Opprett bokmerke",
|
"ButtonCreateBookmark": "Opprett bokmerke",
|
||||||
"ButtonCreateNewPlaylist": "Opprett ny spilleliste",
|
"ButtonCreateNewPlaylist": "Opprett ny spilleliste",
|
||||||
"ButtonDelete": "Slett",
|
"ButtonDelete": "Slett",
|
||||||
"ButtonDeleteLocalEpisode": "Slett episode på enheten",
|
"ButtonDeleteLocalEpisode": "Slett nedlastet episode",
|
||||||
"ButtonDeleteLocalFile": "Slett fil på enheten",
|
"ButtonDeleteLocalFile": "Slett fil på enheten",
|
||||||
"ButtonDeleteLocalItem": "Slett element på enheten",
|
"ButtonDeleteLocalItem": "Slett element på enheten",
|
||||||
"ButtonDisableAutoTimer": "Skru av automatisk tidsur",
|
"ButtonDisableAutoTimer": "Skru av automatisk tidsur",
|
||||||
@@ -29,7 +29,7 @@
|
|||||||
"ButtonLocalMedia": "Lokal media",
|
"ButtonLocalMedia": "Lokal media",
|
||||||
"ButtonLogs": "Logger",
|
"ButtonLogs": "Logger",
|
||||||
"ButtonManageLocalFiles": "Administrer Lokale Filer",
|
"ButtonManageLocalFiles": "Administrer Lokale Filer",
|
||||||
"ButtonMaskServerAddress": "Skjul serveradresse",
|
"ButtonMaskServerAddress": "Skjul tjeneradresse",
|
||||||
"ButtonNewFolder": "Ny mappe",
|
"ButtonNewFolder": "Ny mappe",
|
||||||
"ButtonNextEpisode": "Neste episode",
|
"ButtonNextEpisode": "Neste episode",
|
||||||
"ButtonOk": "Ok",
|
"ButtonOk": "Ok",
|
||||||
@@ -53,7 +53,7 @@
|
|||||||
"ButtonStream": "Strøm",
|
"ButtonStream": "Strøm",
|
||||||
"ButtonSubmit": "Send inn",
|
"ButtonSubmit": "Send inn",
|
||||||
"ButtonSwitchServerUser": "Bytt tjener/bruker",
|
"ButtonSwitchServerUser": "Bytt tjener/bruker",
|
||||||
"ButtonUnmaskServerAddress": "Vis serveradresse",
|
"ButtonUnmaskServerAddress": "Vis tjeneradresse",
|
||||||
"ButtonUserStats": "Brukerstatistikk",
|
"ButtonUserStats": "Brukerstatistikk",
|
||||||
"ButtonYes": "Ja",
|
"ButtonYes": "Ja",
|
||||||
"HeaderAccount": "Konto",
|
"HeaderAccount": "Konto",
|
||||||
@@ -73,19 +73,20 @@
|
|||||||
"HeaderLatestEpisodes": "Siste episoder",
|
"HeaderLatestEpisodes": "Siste episoder",
|
||||||
"HeaderLibraries": "Biblioteker",
|
"HeaderLibraries": "Biblioteker",
|
||||||
"HeaderLocalFolders": "Lokale Mapper",
|
"HeaderLocalFolders": "Lokale Mapper",
|
||||||
"HeaderLocalLibraryItems": "Elementer i bibliotek på enheten",
|
"HeaderLocalLibraryItems": "Nedlastede elementer",
|
||||||
"HeaderNewPlaylist": "Ny spilleliste",
|
"HeaderNewPlaylist": "Ny spilleliste",
|
||||||
"HeaderOpenRSSFeed": "Åpne RSS Feed",
|
"HeaderOpenRSSFeed": "Åpne RSS Feed",
|
||||||
"HeaderPlaybackSettings": "Avspillingsinnstillinger",
|
"HeaderPlaybackSettings": "Avspillingsinnstillinger",
|
||||||
"HeaderPlaylist": "Spilleliste",
|
"HeaderPlaylist": "Spilleliste",
|
||||||
"HeaderPlaylistItems": "Spillelisteelement",
|
"HeaderPlaylistItems": "Spillelisteelement",
|
||||||
|
"HeaderProgressSyncFailed": "Fremskritts-synkronisering feilet",
|
||||||
"HeaderRSSFeed": "RSS-informasjonskanal",
|
"HeaderRSSFeed": "RSS-informasjonskanal",
|
||||||
"HeaderRSSFeedGeneral": "RSS Detailer",
|
"HeaderRSSFeedGeneral": "RSS Detailer",
|
||||||
"HeaderRSSFeedIsOpen": "RSS Feed er åpen",
|
"HeaderRSSFeedIsOpen": "RSS Feed er åpen",
|
||||||
"HeaderSelectDownloadLocation": "Velg Nedlastningssted",
|
"HeaderSelectDownloadLocation": "Velg Nedlastningssted",
|
||||||
"HeaderSettings": "Innstillinger",
|
"HeaderSettings": "Innstillinger",
|
||||||
"HeaderSleepTimer": "Sove timer",
|
"HeaderSleepTimer": "Sove timer",
|
||||||
"HeaderSleepTimerSettings": "Innstillinger for Søvntidtaker",
|
"HeaderSleepTimerSettings": "Innstillinger for søvntidtaker",
|
||||||
"HeaderStatsMinutesListeningChart": "Minutter lyttet (siste 7 dagene)",
|
"HeaderStatsMinutesListeningChart": "Minutter lyttet (siste 7 dagene)",
|
||||||
"HeaderStatsRecentSessions": "Siste sesjoner",
|
"HeaderStatsRecentSessions": "Siste sesjoner",
|
||||||
"HeaderTableOfContents": "Innholdsfortegnelse",
|
"HeaderTableOfContents": "Innholdsfortegnelse",
|
||||||
@@ -93,9 +94,13 @@
|
|||||||
"HeaderYourStats": "Din statistikk",
|
"HeaderYourStats": "Din statistikk",
|
||||||
"LabelAddToPlaylist": "Legg til i spilleliste",
|
"LabelAddToPlaylist": "Legg til i spilleliste",
|
||||||
"LabelAddedAt": "Lagt Til",
|
"LabelAddedAt": "Lagt Til",
|
||||||
|
"LabelAddedDate": "La til {0}",
|
||||||
"LabelAll": "Alle",
|
"LabelAll": "Alle",
|
||||||
"LabelAllowSeekingOnMediaControls": "Tillat posisjonsblafring i mediamerknadskontroller",
|
"LabelAllowSeekingOnMediaControls": "Tillat posisjonsblafring i mediamerknadskontroller",
|
||||||
"LabelAlways": "Alltid",
|
"LabelAlways": "Alltid",
|
||||||
|
"LabelAndroidAutoBrowseLimitForGrouping": "Alfabetisk nedtreksmeny-grense",
|
||||||
|
"LabelAndroidAutoBrowseLimitForGroupingHelp": "Ikke bruk alfabetisk nedtrekksmeny når det er færre enn dette antallet elementer",
|
||||||
|
"LabelAndroidAutoBrowseSeriesSequenceOrder": "Rekkefølge på bokserie",
|
||||||
"LabelAskConfirmation": "Spør om bekreftelse",
|
"LabelAskConfirmation": "Spør om bekreftelse",
|
||||||
"LabelAuthor": "Forfatter",
|
"LabelAuthor": "Forfatter",
|
||||||
"LabelAuthorFirstLast": "Forfatter (Fornavn Etternavn)",
|
"LabelAuthorFirstLast": "Forfatter (Fornavn Etternavn)",
|
||||||
@@ -105,7 +110,7 @@
|
|||||||
"LabelAutoRewindTime": "Automatisk tilbakespolingstid",
|
"LabelAutoRewindTime": "Automatisk tilbakespolingstid",
|
||||||
"LabelAutoSleepTimer": "Automatisk søvntidsur",
|
"LabelAutoSleepTimer": "Automatisk søvntidsur",
|
||||||
"LabelAutoSleepTimerAutoRewind": "Automatisk tilbakespoling for automatisk søvntidsur",
|
"LabelAutoSleepTimerAutoRewind": "Automatisk tilbakespoling for automatisk søvntidsur",
|
||||||
"LabelAutoSleepTimerAutoRewindHelp": "Når automatisk søvntidsur fullføres vil avspilling av elementet automatisk spole tilbake posisjonen din.",
|
"LabelAutoSleepTimerAutoRewindHelp": "Når automatisk søvntidsur fullføres og du gjenopptar avspillingen vil posisjonen din automatisk spoles tilbake.",
|
||||||
"LabelAutoSleepTimerHelp": "Ved avspilling av media mellom angitt start og slutt vil automatisk søvntidsur starte automatisk.",
|
"LabelAutoSleepTimerHelp": "Ved avspilling av media mellom angitt start og slutt vil automatisk søvntidsur starte automatisk.",
|
||||||
"LabelBooks": "Bøker",
|
"LabelBooks": "Bøker",
|
||||||
"LabelChapterTrack": "Kapittelspor",
|
"LabelChapterTrack": "Kapittelspor",
|
||||||
@@ -121,10 +126,10 @@
|
|||||||
"LabelCustomTime": "Egendefinert tid",
|
"LabelCustomTime": "Egendefinert tid",
|
||||||
"LabelDescription": "Beskrivelse",
|
"LabelDescription": "Beskrivelse",
|
||||||
"LabelDisableAudioFadeOut": "Skru av automatisk uttoning",
|
"LabelDisableAudioFadeOut": "Skru av automatisk uttoning",
|
||||||
"LabelDisableAudioFadeOutHelp": "Lydstyrke vil minkes når det er mindre enn ett minutt igjen på søvntidsuret. Skru av dette for å ikke ha uttoning.",
|
"LabelDisableAudioFadeOutHelp": "Lydstyrke vil minkes når det er mindre enn ett minutt igjen på søvntidsuret. Aktiver denne innstillingen for å ikke ha uttoning.",
|
||||||
"LabelDisableAutoRewind": "Skru av automatisk tilbakespoling",
|
"LabelDisableAutoRewind": "Skru av automatisk tilbakespoling",
|
||||||
"LabelDisableShakeToReset": "Skru av risting for å tilbakestille",
|
"LabelDisableShakeToReset": "Skru av risting for å tilbakestille",
|
||||||
"LabelDisableShakeToResetHelp": "Risting av enheten mens tidsuret kjører, eller opptil to minutter etter utløp av tidsuret tilbakestiller søvntidsuret. Skru på denne innstillinger for å skru av risting for å tilbakestille.",
|
"LabelDisableShakeToResetHelp": "Rister du enheten mens tidsuret kjører, eller opptil to minutter etter utløp av tidsuret, tilbakestillers søvntidsuret. Aktiver denne innstillinger for å skru av risting for å tilbakestille.",
|
||||||
"LabelDisableVibrateOnReset": "Skru av vibrering ved tilbakestilling",
|
"LabelDisableVibrateOnReset": "Skru av vibrering ved tilbakestilling",
|
||||||
"LabelDisableVibrateOnResetHelp": "Når søvntidsuret blir tilbakestilt vil enheten din vibrere. Skru på denne innstillingen for å skru av vibrering når tidsuret tilbakestilles.",
|
"LabelDisableVibrateOnResetHelp": "Når søvntidsuret blir tilbakestilt vil enheten din vibrere. Skru på denne innstillingen for å skru av vibrering når tidsuret tilbakestilles.",
|
||||||
"LabelDiscover": "Oppdagelse",
|
"LabelDiscover": "Oppdagelse",
|
||||||
@@ -140,6 +145,8 @@
|
|||||||
"LabelEnd": "Slutt",
|
"LabelEnd": "Slutt",
|
||||||
"LabelEndOfChapter": "Slutt på kapittel",
|
"LabelEndOfChapter": "Slutt på kapittel",
|
||||||
"LabelEndTime": "Slutt-tid",
|
"LabelEndTime": "Slutt-tid",
|
||||||
|
"LabelEpisode": "Episode",
|
||||||
|
"LabelExplicit": "Eksplisitt",
|
||||||
"LabelFeedURL": "Feed Adresse",
|
"LabelFeedURL": "Feed Adresse",
|
||||||
"LabelFile": "Fil",
|
"LabelFile": "Fil",
|
||||||
"LabelFileBirthtime": "Fil Opprettelsesdato",
|
"LabelFileBirthtime": "Fil Opprettelsesdato",
|
||||||
@@ -151,63 +158,94 @@
|
|||||||
"LabelFontScale": "Font størrelse",
|
"LabelFontScale": "Font størrelse",
|
||||||
"LabelGenre": "Sjanger",
|
"LabelGenre": "Sjanger",
|
||||||
"LabelGenres": "Sjangers",
|
"LabelGenres": "Sjangers",
|
||||||
"LabelHapticFeedback": "Føllighetsrespons",
|
"LabelHapticFeedback": "Taktil respons",
|
||||||
"LabelHasEbook": "Har e-bok",
|
"LabelHasEbook": "Har e-bok",
|
||||||
"LabelHasSupplementaryEbook": "Har komplimentær e-bok",
|
"LabelHasSupplementaryEbook": "Har supplerende e-bok",
|
||||||
"LabelHeavy": "Tung",
|
"LabelHeavy": "Tung",
|
||||||
|
"LabelHigh": "Høy",
|
||||||
"LabelHost": "Tjener",
|
"LabelHost": "Tjener",
|
||||||
"LabelInProgress": "I gang",
|
"LabelInProgress": "I gang",
|
||||||
"LabelIncomplete": "Ufullstendig",
|
"LabelIncomplete": "Ufullstendig",
|
||||||
"LabelInternalAppStorage": "Programlager på enheten",
|
"LabelInternalAppStorage": "Intern lagringsplass",
|
||||||
"LabelJumpBackwardsTime": "Tilbakespolingstid",
|
"LabelJumpBackwardsTime": "Tilbakespolingstid",
|
||||||
"LabelJumpForwardsTime": "Foroverspolingstid",
|
"LabelJumpForwardsTime": "Foroverspolingstid",
|
||||||
|
"LabelKeepScreenAwake": "Hold skjerm våken",
|
||||||
"LabelLanguage": "Språk",
|
"LabelLanguage": "Språk",
|
||||||
|
"LabelLayout": "Utseende",
|
||||||
|
"LabelLayoutAuto": "Automatisk",
|
||||||
"LabelLayoutSinglePage": "Enkeltside",
|
"LabelLayoutSinglePage": "Enkeltside",
|
||||||
"LabelLight": "Lett",
|
"LabelLight": "Lett",
|
||||||
"LabelLineSpacing": "Linjemellomrom",
|
"LabelLineSpacing": "Linjemellomrom",
|
||||||
"LabelListenAgain": "Lytt igjen",
|
"LabelListenAgain": "Lytt igjen",
|
||||||
"LabelLocalBooks": "Bøker på enheten",
|
"LabelLocalBooks": "Nedlastede bøker",
|
||||||
|
"LabelLocalPodcasts": "Nedlastede Podcaster",
|
||||||
|
"LabelLockOrientation": "Lås rotasjon",
|
||||||
"LabelLockPlayer": "Lås avspiller",
|
"LabelLockPlayer": "Lås avspiller",
|
||||||
|
"LabelLow": "Lav",
|
||||||
"LabelMediaType": "Medie type",
|
"LabelMediaType": "Medie type",
|
||||||
|
"LabelMedium": "Middels",
|
||||||
|
"LabelMissing": "Mangler",
|
||||||
"LabelMore": "Mer",
|
"LabelMore": "Mer",
|
||||||
"LabelMoreInfo": "Mer info",
|
"LabelMoreInfo": "Mer info",
|
||||||
"LabelName": "Navn",
|
"LabelName": "Navn",
|
||||||
"LabelNarrator": "Forteller",
|
"LabelNarrator": "Forteller",
|
||||||
"LabelNarrators": "Fortellere",
|
"LabelNarrators": "Fortellere",
|
||||||
|
"LabelNavigateWithVolume": "Naviger med volum-knapper",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "Speilet",
|
||||||
|
"LabelNavigateWithVolumeWhilePlaying": "Navigere med volumknapper under avspilling",
|
||||||
|
"LabelNavigateWithVolumeWhilePlayingDisabled": "Av",
|
||||||
|
"LabelNavigateWithVolumeWhilePlayingEnabled": "På",
|
||||||
"LabelNever": "Aldri",
|
"LabelNever": "Aldri",
|
||||||
"LabelNewestAuthors": "Nyeste forfattere",
|
"LabelNewestAuthors": "Nyeste forfattere",
|
||||||
"LabelNewestEpisodes": "Nyeste episoder",
|
"LabelNewestEpisodes": "Nyeste episoder",
|
||||||
|
"LabelNo": "Nei",
|
||||||
"LabelNotFinished": "Ikke fullført",
|
"LabelNotFinished": "Ikke fullført",
|
||||||
"LabelNotStarted": "Ikke startet",
|
"LabelNotStarted": "Ikke startet",
|
||||||
|
"LabelNumEpisodes": "{0} episoder",
|
||||||
|
"LabelNumEpisodesIncomplete": "{0} episoder, {1} ufullstendige",
|
||||||
|
"LabelNumberOfEpisodes": "# episoder",
|
||||||
"LabelOff": "Av",
|
"LabelOff": "Av",
|
||||||
|
"LabelOn": "På",
|
||||||
"LabelPassword": "Passord",
|
"LabelPassword": "Passord",
|
||||||
"LabelPath": "Sti",
|
"LabelPath": "Sti",
|
||||||
"LabelPlaybackDirect": "Direkte",
|
"LabelPlaybackDirect": "Direkte",
|
||||||
|
"LabelPlaybackLocal": "Lokal",
|
||||||
"LabelPlaybackSpeed": "Avspillingshastighet",
|
"LabelPlaybackSpeed": "Avspillingshastighet",
|
||||||
"LabelPlaybackTranscode": "Transkoding",
|
"LabelPlaybackTranscode": "Konvertering",
|
||||||
|
"LabelPodcast": "Podcast",
|
||||||
"LabelPodcasts": "Podcaster",
|
"LabelPodcasts": "Podcaster",
|
||||||
"LabelPreventIndexing": "Forhindre at din feed fra å bli indeksert av iTunes og Google podcast kataloger",
|
"LabelPreventIndexing": "Forhindre at din feed fra å bli indeksert av iTunes og Google podcast kataloger",
|
||||||
"LabelProgress": "Framgang",
|
"LabelProgress": "Framgang",
|
||||||
"LabelPubDate": "Publiseringsdato",
|
"LabelPubDate": "Publiseringsdato",
|
||||||
"LabelPublishYear": "Publikasjonsår",
|
"LabelPublishYear": "Publikasjonsår",
|
||||||
|
"LabelPublishedDate": "Publisert {0}",
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Tilpasset eier e-post",
|
"LabelRSSFeedCustomOwnerEmail": "Tilpasset eier e-post",
|
||||||
"LabelRSSFeedCustomOwnerName": "Tilpasset eier Navn",
|
"LabelRSSFeedCustomOwnerName": "Tilpasset eier Navn",
|
||||||
|
"LabelRSSFeedOpen": "RSS-strøm åpen",
|
||||||
"LabelRSSFeedPreventIndexing": "Forhindre indeksering",
|
"LabelRSSFeedPreventIndexing": "Forhindre indeksering",
|
||||||
"LabelRSSFeedSlug": "RSS-informasjonskanalunderadresse",
|
"LabelRSSFeedSlug": "RSS-informasjonskanalunderadresse",
|
||||||
|
"LabelRandomly": "Tilfeldighet",
|
||||||
"LabelRead": "Les",
|
"LabelRead": "Les",
|
||||||
"LabelReadAgain": "Les igjen",
|
"LabelReadAgain": "Les igjen",
|
||||||
|
"LabelRecentSeries": "Nylige serier",
|
||||||
"LabelRecentlyAdded": "Nylig tillagt",
|
"LabelRecentlyAdded": "Nylig tillagt",
|
||||||
"LabelRemoveFromPlaylist": "Fjern fra spilleliste",
|
"LabelRemoveFromPlaylist": "Fjern fra spilleliste",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Skaler forløpt tid etter hastighet",
|
"LabelScaleElapsedTimeBySpeed": "Skaler forløpt tid etter hastighet",
|
||||||
"LabelSeason": "Sesong",
|
"LabelSeason": "Sesong",
|
||||||
"LabelSelectADevice": "Velg en enhet",
|
"LabelSelectADevice": "Velg en enhet",
|
||||||
|
"LabelSequenceAscending": "Stigende rekkefølge",
|
||||||
|
"LabelSequenceDescending": "Synkende rekkefølge",
|
||||||
"LabelSeries": "Serier",
|
"LabelSeries": "Serier",
|
||||||
|
"LabelServerAddress": "Tjener-adresse",
|
||||||
"LabelSetEbookAsPrimary": "Sett som primær",
|
"LabelSetEbookAsPrimary": "Sett som primær",
|
||||||
"LabelSetEbookAsSupplementary": "Sett som supplerende",
|
"LabelSetEbookAsSupplementary": "Sett som supplerende",
|
||||||
"LabelShakeSensitivity": "Ristingsterskel",
|
"LabelShakeSensitivity": "Ristingsterskel",
|
||||||
"LabelShowAll": "Vis alt",
|
"LabelShowAll": "Vis alt",
|
||||||
"LabelSize": "Størrelse",
|
"LabelSize": "Størrelse",
|
||||||
"LabelSleepTimer": "Sove-timer",
|
"LabelSleepTimer": "Sove-timer",
|
||||||
|
"LabelSleepTimerAlmostDoneChime": "Spill en lyd når nesten ferdig",
|
||||||
|
"LabelSleepTimerAlmostDoneChimeHelp": "Spill av en lyd når søvnklokken har 30 sekunder igjen",
|
||||||
|
"LabelStart": "Start",
|
||||||
"LabelStartTime": "Start Tid",
|
"LabelStartTime": "Start Tid",
|
||||||
"LabelStatsBestDay": "Beste dag",
|
"LabelStatsBestDay": "Beste dag",
|
||||||
"LabelStatsDailyAverage": "Daglig gjennomsnitt",
|
"LabelStatsDailyAverage": "Daglig gjennomsnitt",
|
||||||
@@ -219,8 +257,10 @@
|
|||||||
"LabelStatsMinutesListening": "Minutter lyttet",
|
"LabelStatsMinutesListening": "Minutter lyttet",
|
||||||
"LabelStatsWeekListening": "Uker lyttet",
|
"LabelStatsWeekListening": "Uker lyttet",
|
||||||
"LabelStreamingUsingCellular": "Strømmer via mobildata",
|
"LabelStreamingUsingCellular": "Strømmer via mobildata",
|
||||||
|
"LabelTag": "Merke",
|
||||||
"LabelTags": "Tagger",
|
"LabelTags": "Tagger",
|
||||||
"LabelTheme": "Tema",
|
"LabelTheme": "Tema",
|
||||||
|
"LabelThemeBlack": "Svart",
|
||||||
"LabelThemeDark": "Mørk",
|
"LabelThemeDark": "Mørk",
|
||||||
"LabelThemeLight": "Lys",
|
"LabelThemeLight": "Lys",
|
||||||
"LabelTimeRemaining": "{0} gjennstående",
|
"LabelTimeRemaining": "{0} gjennstående",
|
||||||
@@ -228,12 +268,16 @@
|
|||||||
"LabelTotalSize": "Total størrelse",
|
"LabelTotalSize": "Total størrelse",
|
||||||
"LabelTotalTrack": "Totalt antall spor",
|
"LabelTotalTrack": "Totalt antall spor",
|
||||||
"LabelTracks": "Spor",
|
"LabelTracks": "Spor",
|
||||||
|
"LabelType": "Type",
|
||||||
|
"LabelUnknown": "Ukjent",
|
||||||
"LabelUnlockPlayer": "Lås opp avspiller",
|
"LabelUnlockPlayer": "Lås opp avspiller",
|
||||||
"LabelUseBookshelfView": "Bruk bokhyllevisning",
|
"LabelUseBookshelfView": "Bruk bokhyllevisning",
|
||||||
"LabelUser": "Bruker",
|
"LabelUser": "Bruker",
|
||||||
"LabelUsername": "Brukernavn",
|
"LabelUsername": "Brukernavn",
|
||||||
"LabelVeryHigh": "Veldig høy",
|
"LabelVeryHigh": "Veldig høy",
|
||||||
"LabelVeryLow": "Veldig lav",
|
"LabelVeryLow": "Veldig lav",
|
||||||
|
"LabelYearReviewHide": "Skjul oppsummering av året",
|
||||||
|
"LabelYearReviewShow": "Vis oppsummering av året",
|
||||||
"LabelYourBookmarks": "Dine bokmerker",
|
"LabelYourBookmarks": "Dine bokmerker",
|
||||||
"LabelYourProgress": "Din fremgang",
|
"LabelYourProgress": "Din fremgang",
|
||||||
"MessageAndroid10Downloads": "Android 10 og tidligere bruker lagringsplass på enheten for nedlastninger.",
|
"MessageAndroid10Downloads": "Android 10 og tidligere bruker lagringsplass på enheten for nedlastninger.",
|
||||||
@@ -243,13 +287,14 @@
|
|||||||
"MessageBookshelfEmpty": "Tom bokhylle",
|
"MessageBookshelfEmpty": "Tom bokhylle",
|
||||||
"MessageConfirmDeleteLocalEpisode": "Fjen episoden «{0}» fra enheten? Filen på tjeneren forblir som den er.",
|
"MessageConfirmDeleteLocalEpisode": "Fjen episoden «{0}» fra enheten? Filen på tjeneren forblir som den er.",
|
||||||
"MessageConfirmDeleteLocalFiles": "Fjern dette elementets filer fra enheten? Filene på tjeneren og framdriften forblir som den er.",
|
"MessageConfirmDeleteLocalFiles": "Fjern dette elementets filer fra enheten? Filene på tjeneren og framdriften forblir som den er.",
|
||||||
"MessageConfirmDiscardProgress": "Tilbakestill framgang?",
|
"MessageConfirmDisableAutoTimer": "Er du sikker på at du vil slå av den automatiske tidsuret for resten av dagen? Tidsuret vil bli reaktivert på slutten av perioden til dette automatiske søvn-tidsuret, eller hvis du starter appen på nytt.",
|
||||||
|
"MessageConfirmDiscardProgress": "Er du sikker på at du vil tilbakestille fremdriften din?",
|
||||||
"MessageConfirmDownloadUsingCellular": "Last ned over mobildata selv om kostnader kan tilkomme?",
|
"MessageConfirmDownloadUsingCellular": "Last ned over mobildata selv om kostnader kan tilkomme?",
|
||||||
"MessageConfirmMarkAsFinished": "Merk element som fullført?",
|
"MessageConfirmMarkAsFinished": "Er du sikker på at du vil merke element som fullført?",
|
||||||
"MessageConfirmRemoveBookmark": "Fjern bokmerke?",
|
"MessageConfirmRemoveBookmark": "Er du sikker på at du vil fjerne bokmerket?",
|
||||||
"MessageConfirmStreamingUsingCellular": "Strøm via mobildata selv om kostnader kan tilkomme?",
|
"MessageConfirmStreamingUsingCellular": "Strøm via mobildata selv om kostnader kan tilkomme?",
|
||||||
"MessageDiscardProgress": "Forkast framdrift",
|
"MessageDiscardProgress": "Forkast framdrift",
|
||||||
"MessageDownloadCompleteProcessing": "Behandler …",
|
"MessageDownloadCompleteProcessing": "Nedlasting fullført. Behandler …",
|
||||||
"MessageDownloading": "Laster ned …",
|
"MessageDownloading": "Laster ned …",
|
||||||
"MessageDownloadingEpisode": "Laster ned episode",
|
"MessageDownloadingEpisode": "Laster ned episode",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} Episode(r) lagt til i kø for nedlasting",
|
"MessageEpisodesQueuedForDownload": "{0} Episode(r) lagt til i kø for nedlasting",
|
||||||
@@ -257,28 +302,44 @@
|
|||||||
"MessageFetching": "Henter...",
|
"MessageFetching": "Henter...",
|
||||||
"MessageFollowTheProjectOnGithub": "Følg prosjektet på GitHub",
|
"MessageFollowTheProjectOnGithub": "Følg prosjektet på GitHub",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Element nedlastet, men kunne ikke opprette bibliotekselement",
|
"MessageItemDownloadCompleteFailedToCreate": "Element nedlastet, men kunne ikke opprette bibliotekselement",
|
||||||
|
"MessageItemMissing": "Elementet mangler og må bli korrigert på tjeneren. Vanligvis blir et element markert som manglende hvis filens lokasjon ikke er tilgjengelig.",
|
||||||
"MessageLoading": "Laster...",
|
"MessageLoading": "Laster...",
|
||||||
"MessageLoadingServerData": "Laster inn tjenerdata …",
|
"MessageLoadingServerData": "Laster inn tjenerdata …",
|
||||||
|
"MessageLocalFolderDescription": "'Intern lagringsminne for app' er bare tilgjengelig for denne appen. Denne appen støtter bare medier lastet ned direkte gjennom appen. Mapper for delt lagringsminne kan bli brukt for å gi andre apper tilgang til media lastet ned av denne appen.",
|
||||||
"MessageMarkAsFinished": "Marker som Fullført",
|
"MessageMarkAsFinished": "Marker som Fullført",
|
||||||
"MessageMediaLinkedToADifferentServer": "Media er lenket til en Audiobookshelf-tjener på en annen adresse ({0}). Framdriften vil bli synkronisert når tilkoblet denne tjeneradressen.",
|
"MessageMediaLinkedToADifferentServer": "Media er lenket til en Audiobookshelf-tjener på en annen adresse ({0}). Framdriften vil bli synkronisert når du blir tilkoblet denne tjeneradressen.",
|
||||||
"MessageMediaLinkedToADifferentUser": "Media er lenket til denne tjeneren, men ble lastet ned av en annen bruker. Framdriften vil kun synkroniseres til brukeren som lastet den ned.",
|
"MessageMediaLinkedToADifferentUser": "Media er lenket til denne tjeneren, men ble lastet ned av en annen bruker. Framdriften vil kun synkroniseres til brukeren som lastet den ned.",
|
||||||
"MessageMediaLinkedToServer": "Lenket til tjener {0}",
|
"MessageMediaLinkedToServer": "Lenket til tjener {0}",
|
||||||
"MessageMediaLinkedToThisServer": "Nedlastet media er lenket til denne tjeneren",
|
"MessageMediaLinkedToThisServer": "Nedlastet media er lenket til denne tjeneren",
|
||||||
"MessageMediaNotLinkedToServer": "Media er ikke lenket til en Audiobookshelf-tjener. Ingen fremdrift vil bli synkronisert.",
|
"MessageMediaNotLinkedToServer": "Media er ikke lenket til en Audiobookshelf-tjener. Ingen fremdrift vil bli synkronisert.",
|
||||||
"MessageNoBookmarks": "Ingen bokmerker",
|
"MessageNoBookmarks": "Ingen bokmerker",
|
||||||
"MessageNoChapters": "Ingen kapitler",
|
"MessageNoChapters": "Ingen kapitler",
|
||||||
|
"MessageNoCollections": "Ingen samlinger",
|
||||||
"MessageNoItems": "Ingen gjenstander",
|
"MessageNoItems": "Ingen gjenstander",
|
||||||
"MessageNoItemsFound": "Ingen gjenstander funnet",
|
"MessageNoItemsFound": "Ingen gjenstander funnet",
|
||||||
"MessageNoListeningSessions": "Ingen Lyttesesjoner",
|
"MessageNoListeningSessions": "Ingen Lyttesesjoner",
|
||||||
|
"MessageNoLogs": "Ingen logger",
|
||||||
"MessageNoMediaFolders": "Ingen mediamapper",
|
"MessageNoMediaFolders": "Ingen mediamapper",
|
||||||
"MessageNoNetworkConnection": "Ingen nettverkstilkobling",
|
"MessageNoNetworkConnection": "Ingen nettverkstilkobling",
|
||||||
"MessageNoPodcastsFound": "Ingen podcaster funnet",
|
"MessageNoPodcastsFound": "Ingen podcaster funnet",
|
||||||
|
"MessageNoSeries": "Ingen serier",
|
||||||
"MessageNoUpdatesWereNecessary": "Ingen oppdatering var nødvendig",
|
"MessageNoUpdatesWereNecessary": "Ingen oppdatering var nødvendig",
|
||||||
"MessageNoUserPlaylists": "Du har ingen spillelister",
|
"MessageNoUserPlaylists": "Du har ingen spillelister",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "Autentisering har blitt forbedret for sikkerhet i tjener-versjon v2.26.0. Alle brukere må logge inn igjen.",
|
||||||
|
"MessageOldServerAuthWarning": "Tjeneren bruker utdatert autentisering",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Denne tjeneren kjører en versjon som er eldre enn v2.26.0. Et mer sikkert autentiseringssystem ble lagt til i v.2.26.0. Det anbefales sterkt å oppdatere tjeneren til siste versjon. Hvis du allerede har oppdatert tjeneren, logg inn igjen for å bruke den nye autentiseringen.",
|
||||||
|
"MessageOldServerConnectionWarning": "Konfigurasjonen til tjener-tilkoblingen bruker en gammel bruker ID. Vennligst slett og legg til igjen denne tjener-tilkoblingen.",
|
||||||
|
"MessageOldServerConnectionWarningHelp": "Du opprettet opprinnelig tilkoblingen til denne tjeneren før database-migreringen i versjon 2.3.0, som ble lansert i juni 2023. En fremtidig oppdatering av tjeneren vil fjerne muligheten for å logge inn med denne gamle tilkoblingen. Vennligst slett den eksisterende tjenertilkoblingen og koble til på nytt (bruk samme tjeneradresse og påloggingsinformasjon). Hvis du har nedlastede medier på denne enheten, må disse lastes ned på nytt for å synkronisere med tjeneren.",
|
||||||
|
"MessagePodcastSearchField": "Skriv inn søkeord eller URL til en RSS-strøm",
|
||||||
|
"MessageProgressSyncFailed": "Det siste forsøket på å rapportere lyttefremdriften til tjeneren mislyktes. Forsøk på å synkronisere fremdriften vil fortsette hvert 15. sekund til hvert minutt så lenge mediet spilles av.",
|
||||||
"MessageReportBugsAndContribute": "Rapporter feil, forespør funksjoner og tillegg og bidra på",
|
"MessageReportBugsAndContribute": "Rapporter feil, forespør funksjoner og tillegg og bidra på",
|
||||||
|
"MessageSeriesAlreadyDownloaded": "Du har allerede lastet ned alle bøkene i denne serien.",
|
||||||
|
"MessageSeriesDownloadConfirm": "Laste ned manglende {0} bok/bøker med {1} fil(er), totalt {2} til mappe {3}?",
|
||||||
|
"MessageSeriesDownloadConfirmIos": "Laste ned manglende {0} bok/bøker med {1} fil(er), totalt {2}?",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket tilkoblet over kvotebasert mobildata",
|
"MessageSocketConnectedOverMeteredCellular": "Socket tilkoblet over kvotebasert mobildata",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket tilkoblet over kvotebasert Wi-Fi",
|
"MessageSocketConnectedOverMeteredWifi": "Socket tilkoblet over kvotebasert Wi-Fi",
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Socket tilkoblet over ubegrenset Wi-Fi",
|
"MessageSocketConnectedOverUnmeteredCellular": "Tilkobling via ubegrenset mobildata",
|
||||||
|
"MessageSocketConnectedOverUnmeteredWifi": "Tilkoblet over ubegrenset Wi-Fi",
|
||||||
"MessageSocketNotConnected": "Socket ikke tilkoblet",
|
"MessageSocketNotConnected": "Socket ikke tilkoblet",
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Advarsel! De fleste podcast applikasjoner trenger RSS feed URL som bruker HTTPS",
|
"NoteRSSFeedPodcastAppsHttps": "Advarsel! De fleste podcast applikasjoner trenger RSS feed URL som bruker HTTPS",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Advarsel! 1 eller flere av episodene har ikke publikasjonsdato. Noen podcast applikasjoner trenger dette.",
|
"NoteRSSFeedPodcastAppsPubDate": "Advarsel! 1 eller flere av episodene har ikke publikasjonsdato. Noen podcast applikasjoner trenger dette.",
|
||||||
|
|||||||
+10
-3
@@ -141,7 +141,7 @@
|
|||||||
"LabelEbooks": "Ebooki",
|
"LabelEbooks": "Ebooki",
|
||||||
"LabelEnable": "Włącz",
|
"LabelEnable": "Włącz",
|
||||||
"LabelEnableMp3IndexSeeking": "Włącz wyszukiwanie indeksu mp3",
|
"LabelEnableMp3IndexSeeking": "Włącz wyszukiwanie indeksu mp3",
|
||||||
"LabelEnableMp3IndexSeekingHelp": "To ustawienie powinno być włączone tylko wtedy, gdy masz pliki mp3, które nie są poprawnie wyszukiwane. Niedokładne wyszukiwanie jest najprawdopodobniej spowodowane plikami MP3 o zmiennym birate (VBR). To ustawienie wymusi wyszukiwanie indeksu, w którym mapowanie czasu do bajtu jest kompilowane podczas odczytywania pliku. W niektórych przypadkach w przypadku dużych plików MP3 wystąpi opóźnienie podczas wyszukiwania w kierunku końca pliku.",
|
"LabelEnableMp3IndexSeekingHelp": "To ustawienie powinno być włączone tylko wtedy, gdy masz pliki mp3, które nie są poprawnie wyszukiwane. Niedokładne wyszukiwanie jest najprawdopodobniej spowodowane plikami MP3 o zmiennym bitrate (VBR). To ustawienie wymusi wyszukiwanie indeksu, w którym mapowanie czasu do bajtu jest kompilowane podczas odczytywania pliku. W niektórych przypadkach w przypadku dużych plików MP3 wystąpi opóźnienie podczas wyszukiwania w kierunku końca pliku.",
|
||||||
"LabelEnd": "Zakończ",
|
"LabelEnd": "Zakończ",
|
||||||
"LabelEndOfChapter": "Koniec rozdziału",
|
"LabelEndOfChapter": "Koniec rozdziału",
|
||||||
"LabelEndTime": "Koniec czasu",
|
"LabelEndTime": "Koniec czasu",
|
||||||
@@ -218,8 +218,8 @@
|
|||||||
"LabelPubDate": "Data publikacji",
|
"LabelPubDate": "Data publikacji",
|
||||||
"LabelPublishYear": "Rok publikacji",
|
"LabelPublishYear": "Rok publikacji",
|
||||||
"LabelPublishedDate": "Opublikowano {0}",
|
"LabelPublishedDate": "Opublikowano {0}",
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Własny email",
|
"LabelRSSFeedCustomOwnerEmail": "Email właściciela",
|
||||||
"LabelRSSFeedCustomOwnerName": "Własna nazwa",
|
"LabelRSSFeedCustomOwnerName": "Nazwa właściciela",
|
||||||
"LabelRSSFeedOpen": "Otwarty Kanał RSS",
|
"LabelRSSFeedOpen": "Otwarty Kanał RSS",
|
||||||
"LabelRSSFeedPreventIndexing": "Zapobiegaj indeksowaniu",
|
"LabelRSSFeedPreventIndexing": "Zapobiegaj indeksowaniu",
|
||||||
"LabelRSSFeedSlug": "Numer Kanału RSS",
|
"LabelRSSFeedSlug": "Numer Kanału RSS",
|
||||||
@@ -316,13 +316,20 @@
|
|||||||
"MessageNoItems": "Brak elementów",
|
"MessageNoItems": "Brak elementów",
|
||||||
"MessageNoItemsFound": "Nie znaleziono żadnych elementów",
|
"MessageNoItemsFound": "Nie znaleziono żadnych elementów",
|
||||||
"MessageNoListeningSessions": "Brak sesji słuchania",
|
"MessageNoListeningSessions": "Brak sesji słuchania",
|
||||||
|
"MessageNoLogs": "Brak logów",
|
||||||
"MessageNoMediaFolders": "Brak folderów z mediami",
|
"MessageNoMediaFolders": "Brak folderów z mediami",
|
||||||
"MessageNoNetworkConnection": "Brak połączenia sieciowego",
|
"MessageNoNetworkConnection": "Brak połączenia sieciowego",
|
||||||
"MessageNoPodcastsFound": "Nie znaleziono podcastów",
|
"MessageNoPodcastsFound": "Nie znaleziono podcastów",
|
||||||
"MessageNoSeries": "Brak serii",
|
"MessageNoSeries": "Brak serii",
|
||||||
"MessageNoUpdatesWereNecessary": "Brak wymaganych aktualizacji",
|
"MessageNoUpdatesWereNecessary": "Brak wymaganych aktualizacji",
|
||||||
"MessageNoUserPlaylists": "Nie masz żadnych list odtwarzania",
|
"MessageNoUserPlaylists": "Nie masz żadnych list odtwarzania",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "Uwierzytelnianie zostało ulepszone pod kątem bezpieczeństwa w serwerze w wersji 2.26.0. Wszyscy użytkownicy muszą się ponownie zalogować.",
|
||||||
|
"MessageOldServerAuthWarning": "Serwer korzysta z przestarzałego uwierzytelniania",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Ten serwer działa w wersji starszej niż 2.26.0. W wersji 2.26.0 dodano bezpieczniejszy system uwierzytelniania. Zdecydowanie zaleca się aktualizację serwera do najnowszej wersji. Jeżeli dokonałeś już aktualizacji serwera, zaloguj się ponownie, aby użyć nowego uwierzytelniania.",
|
||||||
|
"MessageOldServerConnectionWarning": "Konfiguracja połączenia z serwerem używa starego identyfikatora użytkownika. Usuń i dodaj ponownie to połączenie z serwerem.",
|
||||||
|
"MessageOldServerConnectionWarningHelp": "Połączenie z tym serwerem zostało pierwotnie skonfigurowane przed migracją bazy danych w wersji 2.3.0, wydanej w czerwcu 2023 r. Przyszła aktualizacja serwera usunie możliwość logowania się przy użyciu tego starego połączenia. Usuń istniejące połączenie z serwerem i połącz się ponownie (używając tego samego adresu serwera i danych logowania). Jeśli na tym urządzeniu znajdują się pobrane pliki multimedialne, konieczne będzie ich ponowne pobranie w celu synchronizacji z serwerem.",
|
||||||
"MessagePodcastSearchField": "Wprowadź wyszukiwane hasło lub adres URL kanału RSS",
|
"MessagePodcastSearchField": "Wprowadź wyszukiwane hasło lub adres URL kanału RSS",
|
||||||
|
"MessageProgressSyncFailed": "Ostatnia próba zgłoszenia postępów słuchania do serwera nie powiodła się. Żądania synchronizacji postępu będą wysyłane co 15 sekund do 1 minuty podczas odtwarzania multimediów.",
|
||||||
"MessageReportBugsAndContribute": "Zgłoś błędy, pomysły i pomóż rozwijać aplikację na",
|
"MessageReportBugsAndContribute": "Zgłoś błędy, pomysły i pomóż rozwijać aplikację na",
|
||||||
"MessageSeriesAlreadyDownloaded": "Seria książek już pobrana.",
|
"MessageSeriesAlreadyDownloaded": "Seria książek już pobrana.",
|
||||||
"MessageSeriesDownloadConfirm": "Pobrać serię?",
|
"MessageSeriesDownloadConfirm": "Pobrać serię?",
|
||||||
|
|||||||
+359
-1
@@ -1 +1,359 @@
|
|||||||
{}
|
{
|
||||||
|
"ButtonAdd": "Adaugă",
|
||||||
|
"ButtonAddNewServer": "Adaugă server nou",
|
||||||
|
"ButtonAuthors": "Autori",
|
||||||
|
"ButtonBack": "Înapoi",
|
||||||
|
"ButtonCancel": "Anulează",
|
||||||
|
"ButtonCancelTimer": "Anulează timerul",
|
||||||
|
"ButtonClearFilter": "Șterge filtrul",
|
||||||
|
"ButtonClearLogs": "Șterge jurnalele",
|
||||||
|
"ButtonCloseFeed": "Închide sursa",
|
||||||
|
"ButtonCollections": "Colecții",
|
||||||
|
"ButtonConnect": "Conectează",
|
||||||
|
"ButtonConnectToServer": "Conectează la server",
|
||||||
|
"ButtonCreate": "Creează",
|
||||||
|
"ButtonCreateBookmark": "Creează semn de carte",
|
||||||
|
"ButtonCreateNewPlaylist": "Creează playlist nou",
|
||||||
|
"ButtonDelete": "Șterge",
|
||||||
|
"ButtonDeleteLocalEpisode": "Șterge episodul local",
|
||||||
|
"ButtonDeleteLocalFile": "Șterge fișierul local",
|
||||||
|
"ButtonDeleteLocalItem": "Șterge elementul local",
|
||||||
|
"ButtonDisableAutoTimer": "Dezactivează timerul automat",
|
||||||
|
"ButtonDisconnect": "Deconectează",
|
||||||
|
"ButtonGoToWebClient": "Deschide în browse",
|
||||||
|
"ButtonHistory": "Istoric",
|
||||||
|
"ButtonHome": "Acasă",
|
||||||
|
"ButtonIssues": "Erori",
|
||||||
|
"ButtonLatest": "Noutăți",
|
||||||
|
"ButtonLibrary": "Bibliotecă",
|
||||||
|
"ButtonLocalMedia": "Media locală",
|
||||||
|
"ButtonLogs": "Jurnale",
|
||||||
|
"ButtonManageLocalFiles": "Gestionare fișiere locale",
|
||||||
|
"ButtonMaskServerAddress": "Nu arăta adresa serverului",
|
||||||
|
"ButtonNewFolder": "Dosar nou",
|
||||||
|
"ButtonNextEpisode": "Episodul următor",
|
||||||
|
"ButtonOk": "OK",
|
||||||
|
"ButtonOpenFeed": "Vezi noutățile",
|
||||||
|
"ButtonOverride": "Înlocuiește",
|
||||||
|
"ButtonPause": "Pauză",
|
||||||
|
"ButtonPlay": "Redă",
|
||||||
|
"ButtonPlayEpisode": "Redă episodul",
|
||||||
|
"ButtonPlaylists": "Liste",
|
||||||
|
"ButtonRead": "Citește",
|
||||||
|
"ButtonReadLess": "Mai puțin",
|
||||||
|
"ButtonReadMore": "Afișează mai mult",
|
||||||
|
"ButtonRemove": "Elimină",
|
||||||
|
"ButtonRemoveFromServer": "Elimină de pe server",
|
||||||
|
"ButtonSave": "Salvează",
|
||||||
|
"ButtonSaveOrder": "Salvează ordinea",
|
||||||
|
"ButtonSearch": "Caută",
|
||||||
|
"ButtonSendEbookToDevice": "Trimite cartea pe dispozitiv",
|
||||||
|
"ButtonSeries": "Serii",
|
||||||
|
"ButtonSetTimer": "Setează limita",
|
||||||
|
"ButtonStream": "Redare online",
|
||||||
|
"ButtonSubmit": "Trimite",
|
||||||
|
"ButtonSwitchServerUser": "Schimbă serverul/utilizatorul",
|
||||||
|
"ButtonUnmaskServerAddress": "Afișează serverul",
|
||||||
|
"ButtonUserStats": "Activitatea mea",
|
||||||
|
"ButtonYes": "Da",
|
||||||
|
"HeaderAccount": "Cont",
|
||||||
|
"HeaderAdvanced": "Avansat",
|
||||||
|
"HeaderAndroidAutoSettings": "Setări Android Auto",
|
||||||
|
"HeaderAudioTracks": "Înregistrări audio",
|
||||||
|
"HeaderChapters": "Capitole",
|
||||||
|
"HeaderCollection": "Colecție",
|
||||||
|
"HeaderCollectionItems": "Conținutul colecției",
|
||||||
|
"HeaderConnectionStatus": "Starea conexiunii",
|
||||||
|
"HeaderDataSettings": "Configurare date",
|
||||||
|
"HeaderDetails": "Detalii",
|
||||||
|
"HeaderDownloads": "Descărcări",
|
||||||
|
"HeaderEbookFiles": "Ebook-uri",
|
||||||
|
"HeaderEpisodes": "Episoade",
|
||||||
|
"HeaderEreaderSettings": "Setări eReader",
|
||||||
|
"HeaderLatestEpisodes": "Episoade recente",
|
||||||
|
"HeaderLibraries": "Biblioteci",
|
||||||
|
"HeaderLocalFolders": "Dosare locale",
|
||||||
|
"HeaderLocalLibraryItems": "Conținut local din bibliotecă",
|
||||||
|
"HeaderNewPlaylist": "Listă nouă",
|
||||||
|
"HeaderOpenRSSFeed": "Deschide flux RSS",
|
||||||
|
"HeaderPlaybackSettings": "Setări redare",
|
||||||
|
"HeaderPlaylist": "Listă de redare",
|
||||||
|
"HeaderPlaylistItems": "Conținut listă",
|
||||||
|
"HeaderProgressSyncFailed": "Progresul nu a fost sincronizat",
|
||||||
|
"HeaderRSSFeed": "Sursă RSS",
|
||||||
|
"HeaderRSSFeedGeneral": "Date RSS",
|
||||||
|
"HeaderRSSFeedIsOpen": "RSS activ",
|
||||||
|
"HeaderSelectDownloadLocation": "Selectează locația descărcării",
|
||||||
|
"HeaderSettings": "Setări",
|
||||||
|
"HeaderSleepTimer": "Timer de somn",
|
||||||
|
"HeaderSleepTimerSettings": "Setări timer somn",
|
||||||
|
"HeaderStatsMinutesListeningChart": "Minute ascultate (ultimele 7 zile)",
|
||||||
|
"HeaderStatsRecentSessions": "Sesiuni recente",
|
||||||
|
"HeaderTableOfContents": "Cuprins",
|
||||||
|
"HeaderUserInterfaceSettings": "Setări interfață",
|
||||||
|
"HeaderYourStats": "Progresul tău",
|
||||||
|
"LabelAddToPlaylist": "Adaugă în listă",
|
||||||
|
"LabelAddedAt": "Adăugat la",
|
||||||
|
"LabelAddedDate": "Adăugat {0}",
|
||||||
|
"LabelAll": "Toate",
|
||||||
|
"LabelAllowSeekingOnMediaControls": "Permite derularea din controalele media",
|
||||||
|
"LabelAlways": "Întotdeauna",
|
||||||
|
"LabelAndroidAutoBrowseLimitForGrouping": "Limită pentru sortare alfabetică",
|
||||||
|
"LabelAndroidAutoBrowseLimitForGroupingHelp": "Nu folosi listarea alfabetică dacă sunt mai puține elemente decât această valoare",
|
||||||
|
"LabelAndroidAutoBrowseSeriesSequenceOrder": "Ordinea cărților din serie",
|
||||||
|
"LabelAskConfirmation": "Cere confirmare",
|
||||||
|
"LabelAuthor": "Autor",
|
||||||
|
"LabelAuthorFirstLast": "Autor (Prenume Nume)",
|
||||||
|
"LabelAuthorLastFirst": "Autor (Nume, Prenume)",
|
||||||
|
"LabelAuthors": "Autori",
|
||||||
|
"LabelAutoDownloadEpisodes": "Descarcă automat episoadele",
|
||||||
|
"LabelAutoRewindTime": "Timp de revenire automată",
|
||||||
|
"LabelAutoSleepTimer": "Timer de somn automat",
|
||||||
|
"LabelAutoSleepTimerAutoRewind": "Somn automat cu revenire",
|
||||||
|
"LabelAutoSleepTimerAutoRewindHelp": "Când timerul de somn se termină, la reluarea redării vei fi mutat automat puțin înapoi.",
|
||||||
|
"LabelAutoSleepTimerHelp": "Când redai media între orele specificate, se va porni automat timerul de somn.",
|
||||||
|
"LabelBooks": "Cărți",
|
||||||
|
"LabelChapterTrack": "Marcaje capitole",
|
||||||
|
"LabelChapters": "Capitole",
|
||||||
|
"LabelClosePlayer": "Închide playerul",
|
||||||
|
"LabelCollapseSeries": "Restrânge seriile",
|
||||||
|
"LabelComplete": "Finalizat",
|
||||||
|
"LabelContinueBooks": "Continuă cărțile",
|
||||||
|
"LabelContinueEpisodes": "Continuă episoadele",
|
||||||
|
"LabelContinueListening": "Ascultă în continuare",
|
||||||
|
"LabelContinueReading": "Continuă lectura",
|
||||||
|
"LabelContinueSeries": "Continuă seria",
|
||||||
|
"LabelCustomTime": "Timp personalizat",
|
||||||
|
"LabelDescription": "Descriere",
|
||||||
|
"LabelDisableAudioFadeOut": "Nu estompa sunetul",
|
||||||
|
"LabelDisableAudioFadeOutHelp": "Volumul audio va scădea treptat când mai rămâne sub 1 minut din timerul de somn. Activează această opțiune pentru a dezactiva estomparea.",
|
||||||
|
"LabelDisableAutoRewind": "Dezactivează revenirea automată",
|
||||||
|
"LabelDisableShakeToReset": "Dezactivează resetarea prin scuturare",
|
||||||
|
"LabelDisableShakeToResetHelp": "Scuturarea dispozitivului în timp ce rulează timerul sau în 2 minute după expirarea lui va reseta timerul de somn. Activează această opțiune pentru a dezactiva resetarea prin scuturare.",
|
||||||
|
"LabelDisableVibrateOnReset": "Dezactivează vibrația la resetare",
|
||||||
|
"LabelDisableVibrateOnResetHelp": "La resetarea timerului de somn, dispozitivul va vibra. Activează această opțiune pentru a dezactiva vibrația.",
|
||||||
|
"LabelDiscover": "Descoperă",
|
||||||
|
"LabelDownload": "Descarcă",
|
||||||
|
"LabelDownloadUsingCellular": "Descarcă prin date mobile",
|
||||||
|
"LabelDownloaded": "Descărcat",
|
||||||
|
"LabelDuration": "Durată",
|
||||||
|
"LabelEbook": "Carte electronică",
|
||||||
|
"LabelEbooks": "Cărți electronice",
|
||||||
|
"LabelEnable": "Activează",
|
||||||
|
"LabelEnableMp3IndexSeeking": "Permite căutarea pe index în MP3",
|
||||||
|
"LabelEnableMp3IndexSeekingHelp": "Activează această opțiune doar dacă ai fișiere MP3 care nu permit derularea corectă. Problema apare de obicei la MP3-uri cu bitrate variabil (VBR). Această setare forțează căutarea pe index, construind o mapare timp–byte pe măsură ce fișierul este citit. La fișiere MP3 mari poate apărea o întârziere când derulezi spre final.",
|
||||||
|
"LabelEnd": "Sfârșit",
|
||||||
|
"LabelEndOfChapter": "Sfârșitul capitolului",
|
||||||
|
"LabelEndTime": "Oră de sfârșit",
|
||||||
|
"LabelEpisode": "Episod",
|
||||||
|
"LabelExplicit": "Explicit",
|
||||||
|
"LabelFeedURL": "URL flux",
|
||||||
|
"LabelFile": "Fișier",
|
||||||
|
"LabelFileBirthtime": "Data creării fișierului",
|
||||||
|
"LabelFileModified": "Fișier modificat",
|
||||||
|
"LabelFilename": "Nume fișier",
|
||||||
|
"LabelFinished": "Finalizat",
|
||||||
|
"LabelFolder": "Dosar",
|
||||||
|
"LabelFontBoldness": "Grosimea fontului",
|
||||||
|
"LabelFontScale": "Mărimea fontului",
|
||||||
|
"LabelGenre": "Gen",
|
||||||
|
"LabelGenres": "Genuri",
|
||||||
|
"LabelHapticFeedback": "Vibrație la atingere",
|
||||||
|
"LabelHasEbook": "Are carte electronică",
|
||||||
|
"LabelHasSupplementaryEbook": "Are carte electronică suplimentară",
|
||||||
|
"LabelHeavy": "Puternic",
|
||||||
|
"LabelHigh": "Ridicat",
|
||||||
|
"LabelHost": "Gazdă",
|
||||||
|
"LabelInProgress": "În desfășurare",
|
||||||
|
"LabelIncomplete": "Incomplet",
|
||||||
|
"LabelInternalAppStorage": "Stocare internă",
|
||||||
|
"LabelJumpBackwardsTime": "Derulare înapoi",
|
||||||
|
"LabelJumpForwardsTime": "Derulare înainte",
|
||||||
|
"LabelKeepScreenAwake": "Ține ecranul aprins",
|
||||||
|
"LabelLanguage": "Limbă",
|
||||||
|
"LabelLayout": "Aspect",
|
||||||
|
"LabelLayoutAuto": "Automat",
|
||||||
|
"LabelLayoutSinglePage": "Pagină unică",
|
||||||
|
"LabelLight": "Deschis",
|
||||||
|
"LabelLineSpacing": "Spațiere între rânduri",
|
||||||
|
"LabelListenAgain": "Ascultă din nou",
|
||||||
|
"LabelLocalBooks": "Cărți locale",
|
||||||
|
"LabelLocalPodcasts": "Podcasturi locale",
|
||||||
|
"LabelLockOrientation": "Blochează orientarea",
|
||||||
|
"LabelLockPlayer": "Blochează playerul",
|
||||||
|
"LabelLow": "Scăzut",
|
||||||
|
"LabelMediaType": "Tip media",
|
||||||
|
"LabelMedium": "Mediu",
|
||||||
|
"LabelMissing": "Lipsă",
|
||||||
|
"LabelMore": "Mai multe",
|
||||||
|
"LabelMoreInfo": "Mai multe informații",
|
||||||
|
"LabelName": "Nume",
|
||||||
|
"LabelNarrator": "Narator",
|
||||||
|
"LabelNarrators": "Naratori",
|
||||||
|
"LabelNavigateWithVolume": "Navighează cu tastele de volum",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "Inversat",
|
||||||
|
"LabelNavigateWithVolumeWhilePlaying": "Permite navigarea cu tastele de volum în timpul redării",
|
||||||
|
"LabelNavigateWithVolumeWhilePlayingDisabled": "Oprit",
|
||||||
|
"LabelNavigateWithVolumeWhilePlayingEnabled": "Pornit",
|
||||||
|
"LabelNever": "Niciodată",
|
||||||
|
"LabelNewestAuthors": "Autori noi",
|
||||||
|
"LabelNewestEpisodes": "Episoade noi",
|
||||||
|
"LabelNo": "Nu",
|
||||||
|
"LabelNotFinished": "Nefinalizat",
|
||||||
|
"LabelNotStarted": "Neînceput",
|
||||||
|
"LabelNumEpisodes": "{0} episoade",
|
||||||
|
"LabelNumEpisodesIncomplete": "{0} episoade, {1} incomplete",
|
||||||
|
"LabelNumberOfEpisodes": "# de Episoade",
|
||||||
|
"LabelOff": "Oprit",
|
||||||
|
"LabelOn": "Pornit",
|
||||||
|
"LabelPassword": "Parolă",
|
||||||
|
"LabelPath": "Cale",
|
||||||
|
"LabelPlaybackDirect": "Direct",
|
||||||
|
"LabelPlaybackLocal": "Local",
|
||||||
|
"LabelPlaybackSpeed": "Viteză redare",
|
||||||
|
"LabelPlaybackTranscode": "Transcodare",
|
||||||
|
"LabelPodcast": "Podcast",
|
||||||
|
"LabelPodcasts": "Podcasturi",
|
||||||
|
"LabelPreventIndexing": "Împiedică indexarea fluxului în directoarele iTunes și Google Podcasts",
|
||||||
|
"LabelProgress": "Progres",
|
||||||
|
"LabelPubDate": "Data publicării",
|
||||||
|
"LabelPublishYear": "Anul publicării",
|
||||||
|
"LabelPublishedDate": "Publicat la {0}",
|
||||||
|
"LabelRSSFeedCustomOwnerEmail": "Email personalizat al proprietarului",
|
||||||
|
"LabelRSSFeedCustomOwnerName": "Nume personalizat al proprietarului",
|
||||||
|
"LabelRSSFeedOpen": "Flux RSS deschis",
|
||||||
|
"LabelRSSFeedPreventIndexing": "Previne indexarea",
|
||||||
|
"LabelRSSFeedSlug": "Identificator flux RSS",
|
||||||
|
"LabelRandomly": "Aleatoriu",
|
||||||
|
"LabelRead": "Citește",
|
||||||
|
"LabelReadAgain": "Citește din nou",
|
||||||
|
"LabelRecentSeries": "Serii recente",
|
||||||
|
"LabelRecentlyAdded": "Adăugate recent",
|
||||||
|
"LabelRemoveFromPlaylist": "Elimină din listă",
|
||||||
|
"LabelScaleElapsedTimeBySpeed": "Ajustează timpul scurs după viteză",
|
||||||
|
"LabelSeason": "Sezon",
|
||||||
|
"LabelSelectADevice": "Alege un dispozitiv",
|
||||||
|
"LabelSequenceAscending": "Ordine crescătoare",
|
||||||
|
"LabelSequenceDescending": "Ordine descrescătoare",
|
||||||
|
"LabelSeries": "Serii",
|
||||||
|
"LabelServerAddress": "Adresă server",
|
||||||
|
"LabelSetEbookAsPrimary": "Setează ca principală",
|
||||||
|
"LabelSetEbookAsSupplementary": "Setează ca suplimentară",
|
||||||
|
"LabelShakeSensitivity": "Sensibilitate la scuturare",
|
||||||
|
"LabelShowAll": "Afișează tot",
|
||||||
|
"LabelSize": "Dimensiune",
|
||||||
|
"LabelSleepTimer": "Timer de somn",
|
||||||
|
"LabelSleepTimerAlmostDoneChime": "Redă un sunet la final",
|
||||||
|
"LabelSleepTimerAlmostDoneChimeHelp": "Redă un sunet când mai rămân 30s din timerul de somn",
|
||||||
|
"LabelStart": "Pornește",
|
||||||
|
"LabelStartTime": "Timp de pornire",
|
||||||
|
"LabelStatsBestDay": "Ziua cea mai bună",
|
||||||
|
"LabelStatsDailyAverage": "Medie zilnică",
|
||||||
|
"LabelStatsDays": "Zile",
|
||||||
|
"LabelStatsDaysListened": "Zile ascultate",
|
||||||
|
"LabelStatsInARow": "la rând",
|
||||||
|
"LabelStatsItemsFinished": "Finalizate",
|
||||||
|
"LabelStatsMinutes": "minute",
|
||||||
|
"LabelStatsMinutesListening": "Minute ascultate",
|
||||||
|
"LabelStatsWeekListening": "Ascultare săptămânală",
|
||||||
|
"LabelStreamingUsingCellular": "Redare online prin date mobile",
|
||||||
|
"LabelTag": "Etichetă",
|
||||||
|
"LabelTags": "Etichete",
|
||||||
|
"LabelTheme": "Temă",
|
||||||
|
"LabelThemeBlack": "Negru",
|
||||||
|
"LabelThemeDark": "Întunecat",
|
||||||
|
"LabelThemeLight": "Deschis",
|
||||||
|
"LabelTimeRemaining": "{0} rămase",
|
||||||
|
"LabelTitle": "Titlu",
|
||||||
|
"LabelTotalSize": "Dimensiune totală",
|
||||||
|
"LabelTotalTrack": "Total audio",
|
||||||
|
"LabelTracks": "Fișiere audio",
|
||||||
|
"LabelType": "Tip",
|
||||||
|
"LabelUnknown": "Necunoscut",
|
||||||
|
"LabelUnlockPlayer": "Deblochează playerul",
|
||||||
|
"LabelUseBookshelfView": "Folosește vizualizare raft",
|
||||||
|
"LabelUser": "Utilizator",
|
||||||
|
"LabelUsername": "Nume utilizator",
|
||||||
|
"LabelVeryHigh": "Foarte ridicat",
|
||||||
|
"LabelVeryLow": "Foarte scăzut",
|
||||||
|
"LabelYearReviewHide": "Ascunde retrospectiva anului",
|
||||||
|
"LabelYearReviewShow": "Vezi retrospectiva anului",
|
||||||
|
"LabelYourBookmarks": "Semnele tale de carte",
|
||||||
|
"LabelYourProgress": "Progresul tău",
|
||||||
|
"MessageAndroid10Downloads": "Pe Android 10 și versiunile anterioare, descărcările vor fi stocate în memoria internă a aplicației.",
|
||||||
|
"MessageAttemptingServerConnection": "Se încearcă conectarea la server...",
|
||||||
|
"MessageAudiobookshelfServerNotConnected": "Serverul Audiobookshelf nu este conectat",
|
||||||
|
"MessageAudiobookshelfServerRequired": "<strong>Important!</strong> Această aplicație este proiectată să funcționeze cu un server Audiobookshelf găzduit de tine sau de cineva cunoscut. Aplicația nu oferă conținut propriu.",
|
||||||
|
"MessageBookshelfEmpty": "Raftul este gol",
|
||||||
|
"MessageConfirmDeleteLocalEpisode": "Ștergi episodul local „{0}” de pe dispozitiv? Fișierul de pe server nu va fi afectat.",
|
||||||
|
"MessageConfirmDeleteLocalFiles": "Ștergi fișierele locale ale acestui element de pe dispozitiv? Fișierele de pe server și progresul nu vor fi afectate.",
|
||||||
|
"MessageConfirmDisableAutoTimer": "Sigur vrei să dezactivezi timerul automat pentru restul zilei? Acesta va fi reactivat la finalul perioadei de somn automat sau când repornești aplicația.",
|
||||||
|
"MessageConfirmDiscardProgress": "Ești sigur că vrei să îți resetezi progresul?",
|
||||||
|
"MessageConfirmDownloadUsingCellular": "Urmează să descarci folosind date mobile. Acest lucru poate genera costuri suplimentare. Vrei să continui?",
|
||||||
|
"MessageConfirmMarkAsFinished": "Sigur vrei să marchezi acest element ca finalizat?",
|
||||||
|
"MessageConfirmRemoveBookmark": "Sigur vrei să ștergi semnul de carte?",
|
||||||
|
"MessageConfirmStreamingUsingCellular": "Urmează să redai online folosind date mobile. Acest lucru poate genera costuri suplimentare. Vrei să continui?",
|
||||||
|
"MessageDiscardProgress": "Resetează progresul",
|
||||||
|
"MessageDownloadCompleteProcessing": "Descărcare finalizată. Se procesează...",
|
||||||
|
"MessageDownloading": "Se descarcă...",
|
||||||
|
"MessageDownloadingEpisode": "Se descarcă episodul",
|
||||||
|
"MessageEpisodesQueuedForDownload": "{0} episod(e) în așteptare pentru descărcare",
|
||||||
|
"MessageFailedToRefreshToken": "Reîmprospătarea tokenului a eșuat, este necesară reconectarea",
|
||||||
|
"MessageFeedURLWillBe": "Adresa fluxului va fi {0}",
|
||||||
|
"MessageFetching": "Se preiau date…",
|
||||||
|
"MessageFollowTheProjectOnGithub": "Urmărește proiectul pe GitHub",
|
||||||
|
"MessageItemDownloadCompleteFailedToCreate": "Descărcarea s-a încheiat, dar nu s-a putut crea elementul în bibliotecă",
|
||||||
|
"MessageItemMissing": "Elementul lipsește și trebuie reparat pe server. De obicei este marcat ca lipsă deoarece căile fișierelor nu sunt accesibile.",
|
||||||
|
"MessageLoading": "Se încarcă…",
|
||||||
|
"MessageLoadingServerData": "Se încarcă datele de pe server…",
|
||||||
|
"MessageLocalFolderDescription": "'Internal App Storage' este accesibilă doar acestei aplicații. Aplicația acceptă doar media descărcată direct prin ea. Poți folosi dosarele de stocare partajată pentru ca alte aplicații să acceseze media descărcată de această aplicație.",
|
||||||
|
"MessageMarkAsFinished": "Marchează ca finalizat",
|
||||||
|
"MessageMediaLinkedToADifferentServer": "Conținutul este asociat unui server Audiobookshelf la o altă adresă ({0}). Progresul va fi sincronizat când te conectezi la acea adresă.",
|
||||||
|
"MessageMediaLinkedToADifferentUser": "Conținutul este asociat acestui server, dar a fost descărcat de un alt utilizator. Progresul se va sincroniza doar pentru utilizatorul care l-a descărcat.",
|
||||||
|
"MessageMediaLinkedToServer": "Asociat serverului {0}",
|
||||||
|
"MessageMediaLinkedToThisServer": "Conținutul descărcat este asociat acestui server",
|
||||||
|
"MessageMediaNotLinkedToServer": "Conținutul nu este asociat unui server Audiobookshelf. Progresul nu va fi sincronizat.",
|
||||||
|
"MessageNoBookmarks": "Fără semne de carte",
|
||||||
|
"MessageNoChapters": "Fără capitole",
|
||||||
|
"MessageNoCollections": "Fără colecții",
|
||||||
|
"MessageNoItems": "Niciun element",
|
||||||
|
"MessageNoItemsFound": "Nu s-au găsit elemente",
|
||||||
|
"MessageNoListeningSessions": "Nicio sesiune de ascultare",
|
||||||
|
"MessageNoLogs": "Fără jurnale",
|
||||||
|
"MessageNoMediaFolders": "Fără dosare media",
|
||||||
|
"MessageNoNetworkConnection": "Fără conexiune la rețea",
|
||||||
|
"MessageNoPodcastsFound": "Nu s-au găsit podcasturi",
|
||||||
|
"MessageNoSeries": "Fără volume",
|
||||||
|
"MessageNoUpdatesWereNecessary": "Nu au fost necesare actualizări",
|
||||||
|
"MessageNoUserPlaylists": "Nu ai nicio listă de redare",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "Autentificarea a fost îmbunătățită pentru siguranță în versiunea de server v2.26.0. Toți utilizatorii trebuie să se reconecteze.",
|
||||||
|
"MessageOldServerAuthWarning": "Serverul folosește un sistem de autentificare învechit",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Acest server rulează o versiune mai veche decât v2.26.0. În v2.26.0 a fost adăugat un sistem de autentificare mai sigur. Este recomandat să actualizezi serverul la cea mai nouă versiune. Dacă l-ai actualizat deja, autentifică-te din nou pentru a folosi noul sistem.",
|
||||||
|
"MessageOldServerConnectionWarning": "Configurația conexiunii la server folosește un ID de utilizator vechi. Șterge și adaugă din nou această conexiune la server.",
|
||||||
|
"MessageOldServerConnectionWarningHelp": "Inițial ai configurat conexiunea la acest server înainte de migrarea bazei de date din 2.3.0 (iunie 2023). O actualizare viitoare a serverului va elimina posibilitatea de autentificare cu această conexiune veche. Te rugăm să ștergi conexiunea existentă și să te reconectezi (folosind aceeași adresă de server și aceleași credențiale). Dacă ai conținut descărcat pe acest dispozitiv, va trebui descărcat din nou pentru a se sincroniza cu serverul.",
|
||||||
|
"MessagePodcastSearchField": "Introdu termenul de căutare sau URL-ul unui flux RSS",
|
||||||
|
"MessageProgressSyncFailed": "Ultima încercare de a raporta progresul de ascultare către server a eșuat. Cererile de sincronizare vor continua la fiecare 15 secunde – 1 minut cât timp rulează redarea.",
|
||||||
|
"MessageReportBugsAndContribute": "Raportează erori, cere funcții noi și contribuie pe",
|
||||||
|
"MessageSeriesAlreadyDownloaded": "Toate volumele au fost deja descărcate.",
|
||||||
|
"MessageSeriesDownloadConfirm": "Descarci cele {0} cărți lipsă, cu {1} fișier(e), total {2}, în dosarul {3}?",
|
||||||
|
"MessageSeriesDownloadConfirmIos": "Descarci cele {0} cărți lipsă, cu {1} fișier(e), total {2}?",
|
||||||
|
"MessageSocketConnectedOverMeteredCellular": "Socket conectat prin date mobile cu trafic contorizat",
|
||||||
|
"MessageSocketConnectedOverMeteredWifi": "Socket conectat prin Wi-Fi cu trafic contorizat",
|
||||||
|
"MessageSocketConnectedOverUnmeteredCellular": "Socket conectat prin date mobile nelimitate",
|
||||||
|
"MessageSocketConnectedOverUnmeteredWifi": "Socket conectat prin Wi-Fi nelimitat",
|
||||||
|
"MessageSocketNotConnected": "Socket neconectat",
|
||||||
|
"NoteRSSFeedPodcastAppsHttps": "Atenționare: Majoritatea aplicațiilor de podcast cer ca URL-ul fluxului RSS să folosească HTTPS",
|
||||||
|
"NoteRSSFeedPodcastAppsPubDate": "Atenționare: unul sau mai multe episoade nu au data publicării (Pub Date). Unele aplicații de podcast o cer.",
|
||||||
|
"ToastBookmarkCreateFailed": "Nu s-a putut crea semnul de carte",
|
||||||
|
"ToastBookmarkRemoveFailed": "Nu s-a putut șterge semnul de carte",
|
||||||
|
"ToastBookmarkUpdateFailed": "Nu s-a putut actualiza semnul de carte",
|
||||||
|
"ToastDownloadNotAllowedOnCellular": "Descărcarea nu este permisă pe date mobile",
|
||||||
|
"ToastItemMarkedAsFinishedFailed": "Nu s-a putut marca drept finalizat",
|
||||||
|
"ToastItemMarkedAsNotFinishedFailed": "Nu s-a putut marca drept nefinalizat",
|
||||||
|
"ToastPlaylistCreateFailed": "Nu s-a putut crea lista de redare",
|
||||||
|
"ToastPodcastCreateFailed": "Nu s-a putut crea podcastul",
|
||||||
|
"ToastPodcastCreateSuccess": "Podcast creat cu succes",
|
||||||
|
"ToastRSSFeedCloseFailed": "Nu s-a putut închide fluxul RSS",
|
||||||
|
"ToastRSSFeedCloseSuccess": "Flux RSS închis",
|
||||||
|
"ToastStreamingNotAllowedOnCellular": "Redarea online nu este permisă pe date mobile"
|
||||||
|
}
|
||||||
|
|||||||
+33
-28
@@ -7,7 +7,7 @@
|
|||||||
"ButtonCancelTimer": "Отмена таймера",
|
"ButtonCancelTimer": "Отмена таймера",
|
||||||
"ButtonClearFilter": "Очистить фильтр",
|
"ButtonClearFilter": "Очистить фильтр",
|
||||||
"ButtonClearLogs": "Очистить журнал",
|
"ButtonClearLogs": "Очистить журнал",
|
||||||
"ButtonCloseFeed": "Закрыть канал",
|
"ButtonCloseFeed": "Закрыть ленту",
|
||||||
"ButtonCollections": "Коллекции",
|
"ButtonCollections": "Коллекции",
|
||||||
"ButtonConnect": "Подключение",
|
"ButtonConnect": "Подключение",
|
||||||
"ButtonConnectToServer": "Подключение к серверу",
|
"ButtonConnectToServer": "Подключение к серверу",
|
||||||
@@ -15,7 +15,7 @@
|
|||||||
"ButtonCreateBookmark": "Создать закладку",
|
"ButtonCreateBookmark": "Создать закладку",
|
||||||
"ButtonCreateNewPlaylist": "Создать новый плейлист",
|
"ButtonCreateNewPlaylist": "Создать новый плейлист",
|
||||||
"ButtonDelete": "Удалить",
|
"ButtonDelete": "Удалить",
|
||||||
"ButtonDeleteLocalEpisode": "Удалить локальный эпизод",
|
"ButtonDeleteLocalEpisode": "Удалить выпуск локально",
|
||||||
"ButtonDeleteLocalFile": "Удалить локальный файл",
|
"ButtonDeleteLocalFile": "Удалить локальный файл",
|
||||||
"ButtonDeleteLocalItem": "Удалить локальный элемент",
|
"ButtonDeleteLocalItem": "Удалить локальный элемент",
|
||||||
"ButtonDisableAutoTimer": "Отключить автоматический таймер",
|
"ButtonDisableAutoTimer": "Отключить автоматический таймер",
|
||||||
@@ -31,13 +31,13 @@
|
|||||||
"ButtonManageLocalFiles": "Управление локальными файлами",
|
"ButtonManageLocalFiles": "Управление локальными файлами",
|
||||||
"ButtonMaskServerAddress": "Скрывать адрес сервера",
|
"ButtonMaskServerAddress": "Скрывать адрес сервера",
|
||||||
"ButtonNewFolder": "Новая папка",
|
"ButtonNewFolder": "Новая папка",
|
||||||
"ButtonNextEpisode": "Следующий эпизод",
|
"ButtonNextEpisode": "Следующий выпуск",
|
||||||
"ButtonOk": "Ок",
|
"ButtonOk": "Ок",
|
||||||
"ButtonOpenFeed": "Открыть канал",
|
"ButtonOpenFeed": "Открыть ленту",
|
||||||
"ButtonOverride": "Переопределить",
|
"ButtonOverride": "Переопределить",
|
||||||
"ButtonPause": "Пауза",
|
"ButtonPause": "Пауза",
|
||||||
"ButtonPlay": "Слушать",
|
"ButtonPlay": "Слушать",
|
||||||
"ButtonPlayEpisode": "Воспроизвести эпизод",
|
"ButtonPlayEpisode": "Воспроизвести выпуск",
|
||||||
"ButtonPlaylists": "Плейлисты",
|
"ButtonPlaylists": "Плейлисты",
|
||||||
"ButtonRead": "Читать",
|
"ButtonRead": "Читать",
|
||||||
"ButtonReadLess": "Читать меньше",
|
"ButtonReadLess": "Читать меньше",
|
||||||
@@ -68,21 +68,21 @@
|
|||||||
"HeaderDetails": "Подробности",
|
"HeaderDetails": "Подробности",
|
||||||
"HeaderDownloads": "Загрузки",
|
"HeaderDownloads": "Загрузки",
|
||||||
"HeaderEbookFiles": "Файлы e-книг",
|
"HeaderEbookFiles": "Файлы e-книг",
|
||||||
"HeaderEpisodes": "Эпизоды",
|
"HeaderEpisodes": "Выпуски",
|
||||||
"HeaderEreaderSettings": "Настройки E-ридера",
|
"HeaderEreaderSettings": "Настройки E-ридера",
|
||||||
"HeaderLatestEpisodes": "Последние эпизоды",
|
"HeaderLatestEpisodes": "Последние выпуски",
|
||||||
"HeaderLibraries": "Библиотеки",
|
"HeaderLibraries": "Библиотеки",
|
||||||
"HeaderLocalFolders": "Локальные папки",
|
"HeaderLocalFolders": "Локальные папки",
|
||||||
"HeaderLocalLibraryItems": "Элементы локальной библиотеки",
|
"HeaderLocalLibraryItems": "Элементы локальной библиотеки",
|
||||||
"HeaderNewPlaylist": "Новый плейлист",
|
"HeaderNewPlaylist": "Новый плейлист",
|
||||||
"HeaderOpenRSSFeed": "Открыть RSS-канал",
|
"HeaderOpenRSSFeed": "Открыть RSS-ленту",
|
||||||
"HeaderPlaybackSettings": "Настройки воспроизведения",
|
"HeaderPlaybackSettings": "Настройки воспроизведения",
|
||||||
"HeaderPlaylist": "Плейлист",
|
"HeaderPlaylist": "Плейлист",
|
||||||
"HeaderPlaylistItems": "Элементы списка воспроизведения",
|
"HeaderPlaylistItems": "Элементы списка воспроизведения",
|
||||||
"HeaderProgressSyncFailed": "Синхронизация прогресса не удалась",
|
"HeaderProgressSyncFailed": "Синхронизация прогресса не удалась",
|
||||||
"HeaderRSSFeed": "RSS-канал",
|
"HeaderRSSFeed": "RSS-лента",
|
||||||
"HeaderRSSFeedGeneral": "Сведения о RSS",
|
"HeaderRSSFeedGeneral": "Сведения о RSS",
|
||||||
"HeaderRSSFeedIsOpen": "RSS-канал открыт",
|
"HeaderRSSFeedIsOpen": "RSS-лента открыта",
|
||||||
"HeaderSelectDownloadLocation": "Выберите место загрузки",
|
"HeaderSelectDownloadLocation": "Выберите место загрузки",
|
||||||
"HeaderSettings": "Настройки",
|
"HeaderSettings": "Настройки",
|
||||||
"HeaderSleepTimer": "Таймер сна",
|
"HeaderSleepTimer": "Таймер сна",
|
||||||
@@ -106,7 +106,7 @@
|
|||||||
"LabelAuthorFirstLast": "Автор (Имя Фамилия)",
|
"LabelAuthorFirstLast": "Автор (Имя Фамилия)",
|
||||||
"LabelAuthorLastFirst": "Автор (Фамилия, Имя)",
|
"LabelAuthorLastFirst": "Автор (Фамилия, Имя)",
|
||||||
"LabelAuthors": "Авторы",
|
"LabelAuthors": "Авторы",
|
||||||
"LabelAutoDownloadEpisodes": "Скачивать эпизоды автоматически",
|
"LabelAutoDownloadEpisodes": "Скачивать выпуски автоматически",
|
||||||
"LabelAutoRewindTime": "Время автоматической перемотки",
|
"LabelAutoRewindTime": "Время автоматической перемотки",
|
||||||
"LabelAutoSleepTimer": "Таймер сна",
|
"LabelAutoSleepTimer": "Таймер сна",
|
||||||
"LabelAutoSleepTimerAutoRewind": "Перемотка назад таймера сна",
|
"LabelAutoSleepTimerAutoRewind": "Перемотка назад таймера сна",
|
||||||
@@ -119,7 +119,7 @@
|
|||||||
"LabelCollapseSeries": "Свернуть серии",
|
"LabelCollapseSeries": "Свернуть серии",
|
||||||
"LabelComplete": "Завершить",
|
"LabelComplete": "Завершить",
|
||||||
"LabelContinueBooks": "Продолжить",
|
"LabelContinueBooks": "Продолжить",
|
||||||
"LabelContinueEpisodes": "Продолжить эпизоды",
|
"LabelContinueEpisodes": "Продолжить выпуски",
|
||||||
"LabelContinueListening": "Продолжить слушать",
|
"LabelContinueListening": "Продолжить слушать",
|
||||||
"LabelContinueReading": "Продолжить чтение",
|
"LabelContinueReading": "Продолжить чтение",
|
||||||
"LabelContinueSeries": "Продолжить серии",
|
"LabelContinueSeries": "Продолжить серии",
|
||||||
@@ -145,8 +145,9 @@
|
|||||||
"LabelEnd": "Конец",
|
"LabelEnd": "Конец",
|
||||||
"LabelEndOfChapter": "Конец главы",
|
"LabelEndOfChapter": "Конец главы",
|
||||||
"LabelEndTime": "Время конца",
|
"LabelEndTime": "Время конца",
|
||||||
"LabelEpisode": "Эпизод",
|
"LabelEpisode": "Выпуск",
|
||||||
"LabelFeedURL": "URL канала",
|
"LabelExplicit": "18+",
|
||||||
|
"LabelFeedURL": "URL-адрес ленты",
|
||||||
"LabelFile": "Файл",
|
"LabelFile": "Файл",
|
||||||
"LabelFileBirthtime": "Дата создания",
|
"LabelFileBirthtime": "Дата создания",
|
||||||
"LabelFileModified": "Дата модификации",
|
"LabelFileModified": "Дата модификации",
|
||||||
@@ -196,13 +197,13 @@
|
|||||||
"LabelNavigateWithVolumeWhilePlayingEnabled": "Вкл.",
|
"LabelNavigateWithVolumeWhilePlayingEnabled": "Вкл.",
|
||||||
"LabelNever": "Никогда",
|
"LabelNever": "Никогда",
|
||||||
"LabelNewestAuthors": "Новые авторы",
|
"LabelNewestAuthors": "Новые авторы",
|
||||||
"LabelNewestEpisodes": "Новые эпизоды",
|
"LabelNewestEpisodes": "Новые выпуски",
|
||||||
"LabelNo": "Нет",
|
"LabelNo": "Нет",
|
||||||
"LabelNotFinished": "Не завершено",
|
"LabelNotFinished": "Не завершено",
|
||||||
"LabelNotStarted": "Не запущено",
|
"LabelNotStarted": "Не запущено",
|
||||||
"LabelNumEpisodes": "{0} эпизодов",
|
"LabelNumEpisodes": "{0} выпусков",
|
||||||
"LabelNumEpisodesIncomplete": "{0} эпизодов, {1} не завершено",
|
"LabelNumEpisodesIncomplete": "{0} выпусков, {1} не завершено",
|
||||||
"LabelNumberOfEpisodes": "# из эпизодов",
|
"LabelNumberOfEpisodes": "# из выпусков",
|
||||||
"LabelOff": "Выключить",
|
"LabelOff": "Выключить",
|
||||||
"LabelOn": "Включён",
|
"LabelOn": "Включён",
|
||||||
"LabelPassword": "Пароль",
|
"LabelPassword": "Пароль",
|
||||||
@@ -222,7 +223,7 @@
|
|||||||
"LabelRSSFeedCustomOwnerName": "Пользовательское Имя владельца",
|
"LabelRSSFeedCustomOwnerName": "Пользовательское Имя владельца",
|
||||||
"LabelRSSFeedOpen": "Открыть RSS-ленту",
|
"LabelRSSFeedOpen": "Открыть RSS-ленту",
|
||||||
"LabelRSSFeedPreventIndexing": "Запретить индексирование",
|
"LabelRSSFeedPreventIndexing": "Запретить индексирование",
|
||||||
"LabelRSSFeedSlug": "Встроить RSS-канал",
|
"LabelRSSFeedSlug": "Ключевое слово RSS-ленты",
|
||||||
"LabelRandomly": "Случайно",
|
"LabelRandomly": "Случайно",
|
||||||
"LabelRead": "Читать",
|
"LabelRead": "Читать",
|
||||||
"LabelReadAgain": "Читать снова",
|
"LabelReadAgain": "Читать снова",
|
||||||
@@ -284,7 +285,7 @@
|
|||||||
"MessageAudiobookshelfServerNotConnected": "Сервер Audiobookshelf не подключен",
|
"MessageAudiobookshelfServerNotConnected": "Сервер Audiobookshelf не подключен",
|
||||||
"MessageAudiobookshelfServerRequired": "<strong>Важно!</strong> Это приложение предназначено для работы с сервером Audiobookshelf, который размещаете вы или кто-то из ваших знакомых. Это приложение не предоставляет никакого контента.",
|
"MessageAudiobookshelfServerRequired": "<strong>Важно!</strong> Это приложение предназначено для работы с сервером Audiobookshelf, который размещаете вы или кто-то из ваших знакомых. Это приложение не предоставляет никакого контента.",
|
||||||
"MessageBookshelfEmpty": "Книжная полка пуста",
|
"MessageBookshelfEmpty": "Книжная полка пуста",
|
||||||
"MessageConfirmDeleteLocalEpisode": "Удалить локальный эпизод \"{0}\" с Вашего устройства? Файл на сервере не будет затронут.",
|
"MessageConfirmDeleteLocalEpisode": "Удалить локальный выпуск \"{0}\" с вашего устройства? Файл на сервере не будет затронут.",
|
||||||
"MessageConfirmDeleteLocalFiles": "Удалить локальные файлы этого элемента с вашего устройства? Это не повлияет на файлы на сервере и ваш прогресс.",
|
"MessageConfirmDeleteLocalFiles": "Удалить локальные файлы этого элемента с вашего устройства? Это не повлияет на файлы на сервере и ваш прогресс.",
|
||||||
"MessageConfirmDisableAutoTimer": "Вы уверены, что хотите отключить автоматический таймер до конца сегодняшнего дня? Таймер будет снова включен по истечении этого периода автоматического отключения или если вы перезапустите приложение.",
|
"MessageConfirmDisableAutoTimer": "Вы уверены, что хотите отключить автоматический таймер до конца сегодняшнего дня? Таймер будет снова включен по истечении этого периода автоматического отключения или если вы перезапустите приложение.",
|
||||||
"MessageConfirmDiscardProgress": "Вы уверены, что хотите сбросить свой прогресс?",
|
"MessageConfirmDiscardProgress": "Вы уверены, что хотите сбросить свой прогресс?",
|
||||||
@@ -295,9 +296,10 @@
|
|||||||
"MessageDiscardProgress": "Отбросить прогресс",
|
"MessageDiscardProgress": "Отбросить прогресс",
|
||||||
"MessageDownloadCompleteProcessing": "Загрузка завершена. Обработка...",
|
"MessageDownloadCompleteProcessing": "Загрузка завершена. Обработка...",
|
||||||
"MessageDownloading": "Загрузка...",
|
"MessageDownloading": "Загрузка...",
|
||||||
"MessageDownloadingEpisode": "Эпизод скачивается",
|
"MessageDownloadingEpisode": "Скачивание выпуска",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} Эпизод(ов) запланировано для закачки",
|
"MessageEpisodesQueuedForDownload": "{0} выпуск(ов) запланировано для скачивания",
|
||||||
"MessageFeedURLWillBe": "URL канала будет {0}",
|
"MessageFailedToRefreshToken": "Не удалось обновить токен, требуется повторный вход в систему",
|
||||||
|
"MessageFeedURLWillBe": "URL-адрес ленты будет {0}",
|
||||||
"MessageFetching": "Завершается...",
|
"MessageFetching": "Завершается...",
|
||||||
"MessageFollowTheProjectOnGithub": "Следите за проектом на GitHub",
|
"MessageFollowTheProjectOnGithub": "Следите за проектом на GitHub",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Загрузка элемента завершена, но не удалось создать элемент библиотеки",
|
"MessageItemDownloadCompleteFailedToCreate": "Загрузка элемента завершена, но не удалось создать элемент библиотеки",
|
||||||
@@ -324,9 +326,12 @@
|
|||||||
"MessageNoSeries": "Нет серии",
|
"MessageNoSeries": "Нет серии",
|
||||||
"MessageNoUpdatesWereNecessary": "Обновления не требовались",
|
"MessageNoUpdatesWereNecessary": "Обновления не требовались",
|
||||||
"MessageNoUserPlaylists": "У вас нет плейлистов",
|
"MessageNoUserPlaylists": "У вас нет плейлистов",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "В версии server 2.26.0 для обеспечения безопасности была улучшена аутентификация. Всем пользователям необходимо повторно войти в систему.",
|
||||||
|
"MessageOldServerAuthWarning": "Сервер использует устаревшую аутентификацию",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Этот сервер работает под управлением версии старше чем 2.26.0. В версии 2.26.0 была добавлена более безопасная система аутентификации. Настоятельно рекомендуется обновить сервер до последней версии. Если вы уже обновили сервер, войдите в систему еще раз, чтобы использовать новую аутентификацию.",
|
||||||
"MessageOldServerConnectionWarning": "Конфигурация подключения к серверу использует старый идентификатор пользователя. Удалите и повторно добавьте это подключение к серверу.",
|
"MessageOldServerConnectionWarning": "Конфигурация подключения к серверу использует старый идентификатор пользователя. Удалите и повторно добавьте это подключение к серверу.",
|
||||||
"MessageOldServerConnectionWarningHelp": "Первоначально вы настроили подключение к этому серверу до миграции базы данных в версии 2.3.0, выпущенной в июне 2023 года. Будущее обновление сервера уберет возможность входа с помощью этого старого подключения. Удалите существующее подключение к серверу и подключитесь снова (используя тот же адрес сервера и учетные данные). Если на этом устройстве есть загруженные медиафайлы, их необходимо будет загрузить снова для синхронизации с сервером.",
|
"MessageOldServerConnectionWarningHelp": "Первоначально вы настроили подключение к этому серверу до миграции базы данных в версии 2.3.0, выпущенной в июне 2023 года. Будущее обновление сервера уберет возможность входа с помощью этого старого подключения. Удалите существующее подключение к серверу и подключитесь снова (используя тот же адрес сервера и учетные данные). Если на этом устройстве есть загруженные медиафайлы, их необходимо будет загрузить снова для синхронизации с сервером.",
|
||||||
"MessagePodcastSearchField": "Введите поисковый запрос или URL-адрес RSS-канала",
|
"MessagePodcastSearchField": "Введите поисковый запрос или URL-адрес RSS-ленты",
|
||||||
"MessageProgressSyncFailed": "Последняя попытка сообщить о вашем прогрессе прослушивания на сервер не удалась. Запросы на синхронизацию прогресса будут продолжаться каждые 15 секунд в течении 1 минуты во время воспроизведения медиа.",
|
"MessageProgressSyncFailed": "Последняя попытка сообщить о вашем прогрессе прослушивания на сервер не удалась. Запросы на синхронизацию прогресса будут продолжаться каждые 15 секунд в течении 1 минуты во время воспроизведения медиа.",
|
||||||
"MessageReportBugsAndContribute": "Сообщайте об ошибках, запрашивайте функции и вносите свой вклад на",
|
"MessageReportBugsAndContribute": "Сообщайте об ошибках, запрашивайте функции и вносите свой вклад на",
|
||||||
"MessageSeriesAlreadyDownloaded": "Вы уже скачали все книги из этой серии.",
|
"MessageSeriesAlreadyDownloaded": "Вы уже скачали все книги из этой серии.",
|
||||||
@@ -337,8 +342,8 @@
|
|||||||
"MessageSocketConnectedOverUnmeteredCellular": "Сокет подключен по безлимитной сотовой связи",
|
"MessageSocketConnectedOverUnmeteredCellular": "Сокет подключен по безлимитной сотовой связи",
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Сокет подключен через безлимитный Wi-Fi",
|
"MessageSocketConnectedOverUnmeteredWifi": "Сокет подключен через безлимитный Wi-Fi",
|
||||||
"MessageSocketNotConnected": "Сокет не подключен",
|
"MessageSocketNotConnected": "Сокет не подключен",
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Предупреждение: Большинству приложений подкастов потребуется, чтобы URL-адрес RSS-канала использовал HTTPS",
|
"NoteRSSFeedPodcastAppsHttps": "Предупреждение: Большинству приложений подкастов потребуется, чтобы URL-адрес RSS-ленты использовал HTTPS",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Предупреждение: 1 или более эпизодов не имеют даты публикации. Некоторые приложения для подкастов требуют этого.",
|
"NoteRSSFeedPodcastAppsPubDate": "Предупреждение: 1 или более выпусков не имеют даты публикации. Некоторые приложения для подкастов требуют этого.",
|
||||||
"ToastBookmarkCreateFailed": "Не удалось создать закладку",
|
"ToastBookmarkCreateFailed": "Не удалось создать закладку",
|
||||||
"ToastBookmarkRemoveFailed": "Не удалось удалить закладку",
|
"ToastBookmarkRemoveFailed": "Не удалось удалить закладку",
|
||||||
"ToastBookmarkUpdateFailed": "Не удалось обновить закладку",
|
"ToastBookmarkUpdateFailed": "Не удалось обновить закладку",
|
||||||
@@ -348,7 +353,7 @@
|
|||||||
"ToastPlaylistCreateFailed": "Не удалось создать плейлист",
|
"ToastPlaylistCreateFailed": "Не удалось создать плейлист",
|
||||||
"ToastPodcastCreateFailed": "Не удалось создать подкаст",
|
"ToastPodcastCreateFailed": "Не удалось создать подкаст",
|
||||||
"ToastPodcastCreateSuccess": "Подкаст успешно создан",
|
"ToastPodcastCreateSuccess": "Подкаст успешно создан",
|
||||||
"ToastRSSFeedCloseFailed": "Не удалось закрыть RSS-канал",
|
"ToastRSSFeedCloseFailed": "Не удалось закрыть RSS-ленту",
|
||||||
"ToastRSSFeedCloseSuccess": "RSS-канал закрыт",
|
"ToastRSSFeedCloseSuccess": "RSS-лента закрыта",
|
||||||
"ToastStreamingNotAllowedOnCellular": "Потоковая передача данных по сотовой сети запрещена"
|
"ToastStreamingNotAllowedOnCellular": "Потоковая передача данных по сотовой сети запрещена"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -146,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "Koniec kapitoly",
|
"LabelEndOfChapter": "Koniec kapitoly",
|
||||||
"LabelEndTime": "Čas ukončenia",
|
"LabelEndTime": "Čas ukončenia",
|
||||||
"LabelEpisode": "Epizóda",
|
"LabelEpisode": "Epizóda",
|
||||||
|
"LabelExplicit": "Explicitný obsah",
|
||||||
"LabelFeedURL": "URL zdroja",
|
"LabelFeedURL": "URL zdroja",
|
||||||
"LabelFile": "Súbor",
|
"LabelFile": "Súbor",
|
||||||
"LabelFileBirthtime": "Čas vytvorenia súboru",
|
"LabelFileBirthtime": "Čas vytvorenia súboru",
|
||||||
|
|||||||
@@ -146,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "Konec poglavja",
|
"LabelEndOfChapter": "Konec poglavja",
|
||||||
"LabelEndTime": "Končni čas",
|
"LabelEndTime": "Končni čas",
|
||||||
"LabelEpisode": "Epizoda",
|
"LabelEpisode": "Epizoda",
|
||||||
|
"LabelExplicit": "Eksplicitno",
|
||||||
"LabelFeedURL": "URL vir",
|
"LabelFeedURL": "URL vir",
|
||||||
"LabelFile": "Datoteka",
|
"LabelFile": "Datoteka",
|
||||||
"LabelFileBirthtime": "Čas ustvarjanja datoteke",
|
"LabelFileBirthtime": "Čas ustvarjanja datoteke",
|
||||||
@@ -297,6 +298,7 @@
|
|||||||
"MessageDownloading": "Prenašanje...",
|
"MessageDownloading": "Prenašanje...",
|
||||||
"MessageDownloadingEpisode": "Prenašam epizodo",
|
"MessageDownloadingEpisode": "Prenašam epizodo",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} epizod v čakalni vrsti za prenos",
|
"MessageEpisodesQueuedForDownload": "{0} epizod v čakalni vrsti za prenos",
|
||||||
|
"MessageFailedToRefreshToken": "Osvežitev žetona ni uspela, potrebna je ponovna prijava",
|
||||||
"MessageFeedURLWillBe": "URL vira bo {0}",
|
"MessageFeedURLWillBe": "URL vira bo {0}",
|
||||||
"MessageFetching": "Pridobivam...",
|
"MessageFetching": "Pridobivam...",
|
||||||
"MessageFollowTheProjectOnGithub": "Sledite projektu na Githubu",
|
"MessageFollowTheProjectOnGithub": "Sledite projektu na Githubu",
|
||||||
@@ -324,6 +326,9 @@
|
|||||||
"MessageNoSeries": "Ni serij",
|
"MessageNoSeries": "Ni serij",
|
||||||
"MessageNoUpdatesWereNecessary": "Posodobitve niso bile potrebne",
|
"MessageNoUpdatesWereNecessary": "Posodobitve niso bile potrebne",
|
||||||
"MessageNoUserPlaylists": "Nimate seznamov predvajanja",
|
"MessageNoUserPlaylists": "Nimate seznamov predvajanja",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "Zaradi varnosti je bila v strežniku različice 2.26.0 izboljšana avtentikacija. Vsi uporabniki se morajo ponovno prijaviti.",
|
||||||
|
"MessageOldServerAuthWarning": "Strežnik uporablja zastarelo preverjanje avtentikacije",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Ta strežnik uporablja različico, starejšo od v2.26.0. V različici v2.26.0 je bil dodan varnejši sistem preverjanja pristnosti. Zelo priporočljivo je, da strežnik posodobite na najnovejšo različico. Če ste strežnik že posodobili, se znova prijavite, da uporabite novo preverjanje pristnosti.",
|
||||||
"MessageOldServerConnectionWarning": "Nastavitev povezave s strežnikom uporablja stari ID uporabnika. Izbrišite in znova dodajte to povezavo s strežnikom.",
|
"MessageOldServerConnectionWarning": "Nastavitev povezave s strežnikom uporablja stari ID uporabnika. Izbrišite in znova dodajte to povezavo s strežnikom.",
|
||||||
"MessageOldServerConnectionWarningHelp": "Povezavo s tem strežnikom ste prvotno nastavili pred selitvijo baze podatkov v različici 2.3.0, izdani junija 2023. Prihodnja posodobitev strežnika bo odstranila možnost prijave s to staro povezavo. Izbrišite obstoječo povezavo s strežnikom in se znova povežite (z istim naslovom strežnika in poverilnicami). Če imate v tej napravi prenesen medij, ga boste morali znova prenesti za sinhronizacijo s strežnikom.",
|
"MessageOldServerConnectionWarningHelp": "Povezavo s tem strežnikom ste prvotno nastavili pred selitvijo baze podatkov v različici 2.3.0, izdani junija 2023. Prihodnja posodobitev strežnika bo odstranila možnost prijave s to staro povezavo. Izbrišite obstoječo povezavo s strežnikom in se znova povežite (z istim naslovom strežnika in poverilnicami). Če imate v tej napravi prenesen medij, ga boste morali znova prenesti za sinhronizacijo s strežnikom.",
|
||||||
"MessagePodcastSearchField": "Vnesite iskalni izraz ali URL vira RSS",
|
"MessagePodcastSearchField": "Vnesite iskalni izraz ali URL vira RSS",
|
||||||
|
|||||||
+11
-6
@@ -51,7 +51,7 @@
|
|||||||
"ButtonSeries": "Serie",
|
"ButtonSeries": "Serie",
|
||||||
"ButtonSetTimer": "Ställ in timer",
|
"ButtonSetTimer": "Ställ in timer",
|
||||||
"ButtonStream": "Ström",
|
"ButtonStream": "Ström",
|
||||||
"ButtonSubmit": "Skicka",
|
"ButtonSubmit": "Spara",
|
||||||
"ButtonSwitchServerUser": "Byt Server/Användare",
|
"ButtonSwitchServerUser": "Byt Server/Användare",
|
||||||
"ButtonUnmaskServerAddress": "Visa server adress",
|
"ButtonUnmaskServerAddress": "Visa server adress",
|
||||||
"ButtonUserStats": "Användarstatistik",
|
"ButtonUserStats": "Användarstatistik",
|
||||||
@@ -91,7 +91,7 @@
|
|||||||
"HeaderStatsRecentSessions": "Senaste tillfällena",
|
"HeaderStatsRecentSessions": "Senaste tillfällena",
|
||||||
"HeaderTableOfContents": "Innehållsförteckning",
|
"HeaderTableOfContents": "Innehållsförteckning",
|
||||||
"HeaderUserInterfaceSettings": "Användargränssnittsinställningar",
|
"HeaderUserInterfaceSettings": "Användargränssnittsinställningar",
|
||||||
"HeaderYourStats": "Dina statistik",
|
"HeaderYourStats": "Din statistik",
|
||||||
"LabelAddToPlaylist": "Lägg till i en spellista",
|
"LabelAddToPlaylist": "Lägg till i en spellista",
|
||||||
"LabelAddedAt": "Tillagd vid",
|
"LabelAddedAt": "Tillagd vid",
|
||||||
"LabelAddedDate": "Adderad {0}",
|
"LabelAddedDate": "Adderad {0}",
|
||||||
@@ -146,10 +146,11 @@
|
|||||||
"LabelEndOfChapter": "Slut av kapitel",
|
"LabelEndOfChapter": "Slut av kapitel",
|
||||||
"LabelEndTime": "Slut tid",
|
"LabelEndTime": "Slut tid",
|
||||||
"LabelEpisode": "Avsnitt",
|
"LabelEpisode": "Avsnitt",
|
||||||
|
"LabelExplicit": "Bestämd",
|
||||||
"LabelFeedURL": "URL-adress för flödet",
|
"LabelFeedURL": "URL-adress för flödet",
|
||||||
"LabelFile": "Fil",
|
"LabelFile": "Fil",
|
||||||
"LabelFileBirthtime": "Tidpunkt, fil skapad",
|
"LabelFileBirthtime": "Tidpunkt, adderad",
|
||||||
"LabelFileModified": "Tidpunkt, fil ändrad",
|
"LabelFileModified": "Tidpunkt, ändrad",
|
||||||
"LabelFilename": "Filnamn",
|
"LabelFilename": "Filnamn",
|
||||||
"LabelFinished": "Avslutad",
|
"LabelFinished": "Avslutad",
|
||||||
"LabelFolder": "Mapp",
|
"LabelFolder": "Mapp",
|
||||||
@@ -220,6 +221,7 @@
|
|||||||
"LabelPublishedDate": "Publicerad {0}",
|
"LabelPublishedDate": "Publicerad {0}",
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Anpassad ägarens e-post",
|
"LabelRSSFeedCustomOwnerEmail": "Anpassad ägarens e-post",
|
||||||
"LabelRSSFeedCustomOwnerName": "Anpassat ägarnamn",
|
"LabelRSSFeedCustomOwnerName": "Anpassat ägarnamn",
|
||||||
|
"LabelRSSFeedOpen": "RSS-flöde öppet",
|
||||||
"LabelRSSFeedPreventIndexing": "Förhindra indexering",
|
"LabelRSSFeedPreventIndexing": "Förhindra indexering",
|
||||||
"LabelRSSFeedSlug": "RSS-flödesslag",
|
"LabelRSSFeedSlug": "RSS-flödesslag",
|
||||||
"LabelRandomly": "Slumpartat",
|
"LabelRandomly": "Slumpartat",
|
||||||
@@ -265,7 +267,7 @@
|
|||||||
"LabelTitle": "Titel",
|
"LabelTitle": "Titel",
|
||||||
"LabelTotalSize": "Total Storlek",
|
"LabelTotalSize": "Total Storlek",
|
||||||
"LabelTotalTrack": "Total Spår",
|
"LabelTotalTrack": "Total Spår",
|
||||||
"LabelTracks": "Spår",
|
"LabelTracks": "Ljudspår",
|
||||||
"LabelType": "Typ",
|
"LabelType": "Typ",
|
||||||
"LabelUnknown": "Okänd",
|
"LabelUnknown": "Okänd",
|
||||||
"LabelUnlockPlayer": "Lås upp spelare",
|
"LabelUnlockPlayer": "Lås upp spelare",
|
||||||
@@ -277,7 +279,7 @@
|
|||||||
"LabelYearReviewHide": "Dölj årets sammanställning",
|
"LabelYearReviewHide": "Dölj årets sammanställning",
|
||||||
"LabelYearReviewShow": "Visa årets sammanställning",
|
"LabelYearReviewShow": "Visa årets sammanställning",
|
||||||
"LabelYourBookmarks": "Dina bokmärken",
|
"LabelYourBookmarks": "Dina bokmärken",
|
||||||
"LabelYourProgress": "Din framsteg",
|
"LabelYourProgress": "Framsteg",
|
||||||
"MessageAndroid10Downloads": "Android 10 och lägre använder intern applagring för nedladdningar.",
|
"MessageAndroid10Downloads": "Android 10 och lägre använder intern applagring för nedladdningar.",
|
||||||
"MessageAttemptingServerConnection": "Försöker ansluta till server...",
|
"MessageAttemptingServerConnection": "Försöker ansluta till server...",
|
||||||
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf-server är ej ansluten",
|
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf-server är ej ansluten",
|
||||||
@@ -323,6 +325,9 @@
|
|||||||
"MessageNoSeries": "Inga serier",
|
"MessageNoSeries": "Inga serier",
|
||||||
"MessageNoUpdatesWereNecessary": "Inga uppdateringar var nödvändiga",
|
"MessageNoUpdatesWereNecessary": "Inga uppdateringar var nödvändiga",
|
||||||
"MessageNoUserPlaylists": "Du har inga spellistor",
|
"MessageNoUserPlaylists": "Du har inga spellistor",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "Autentiseringen har förbättrats för ökad säkerhet i server v2.26.0. Alla användare måste logga in igen.",
|
||||||
|
"MessageOldServerAuthWarning": "Servern använder en gammal autentisering",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Den här servern kör en version äldre än v2.26.0. Ett säkrare autentiseringssystem finns i v2.26.0. Det rekommenderas starkt att uppdatera servern till den senaste versionen. Om du redan har uppdaterat servern, logga in igen för att använda den nya autentiseringen.",
|
||||||
"MessageOldServerConnectionWarning": "Serveranslutningskonfigurationen använder ett gammalt användar-ID. Vänligen ta bort och lägg till denna serveranslutning igen.",
|
"MessageOldServerConnectionWarning": "Serveranslutningskonfigurationen använder ett gammalt användar-ID. Vänligen ta bort och lägg till denna serveranslutning igen.",
|
||||||
"MessageOldServerConnectionWarningHelp": "Du ställde ursprungligen in anslutningen till denna server före databasflytten i version 2.3.0, som släpptes i juni 2023. En framtida serveruppdatering kommer att ta bort möjligheten att logga in med denna gamla anslutning. Vänligen ta bort den befintliga serveranslutningen och anslut igen (med samma serveradress och inloggningsuppgifter). Om du har nedladdad media på den här enheten måste den laddas ner igen för att synkroniseras med servern.",
|
"MessageOldServerConnectionWarningHelp": "Du ställde ursprungligen in anslutningen till denna server före databasflytten i version 2.3.0, som släpptes i juni 2023. En framtida serveruppdatering kommer att ta bort möjligheten att logga in med denna gamla anslutning. Vänligen ta bort den befintliga serveranslutningen och anslut igen (med samma serveradress och inloggningsuppgifter). Om du har nedladdad media på den här enheten måste den laddas ner igen för att synkroniseras med servern.",
|
||||||
"MessagePodcastSearchField": "Skriv sökfrågan eller URL-adressen för RSS-flödet",
|
"MessagePodcastSearchField": "Skriv sökfrågan eller URL-adressen för RSS-flödet",
|
||||||
|
|||||||
@@ -146,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "Bölüm Sonu",
|
"LabelEndOfChapter": "Bölüm Sonu",
|
||||||
"LabelEndTime": "Bitiş zamanı",
|
"LabelEndTime": "Bitiş zamanı",
|
||||||
"LabelEpisode": "Bölüm",
|
"LabelEpisode": "Bölüm",
|
||||||
|
"LabelExplicit": "Belirgin",
|
||||||
"LabelFeedURL": "Akış URLsi",
|
"LabelFeedURL": "Akış URLsi",
|
||||||
"LabelFile": "Dosya",
|
"LabelFile": "Dosya",
|
||||||
"LabelFileBirthtime": "Dosya Oluşum Zamanı",
|
"LabelFileBirthtime": "Dosya Oluşum Zamanı",
|
||||||
|
|||||||
+7
-2
@@ -121,7 +121,7 @@
|
|||||||
"LabelContinueBooks": "Продовжити книги",
|
"LabelContinueBooks": "Продовжити книги",
|
||||||
"LabelContinueEpisodes": "Продовжити епізоди",
|
"LabelContinueEpisodes": "Продовжити епізоди",
|
||||||
"LabelContinueListening": "Слухати далі",
|
"LabelContinueListening": "Слухати далі",
|
||||||
"LabelContinueReading": "Читати далі",
|
"LabelContinueReading": "Продовжити читання",
|
||||||
"LabelContinueSeries": "Продовжити серії",
|
"LabelContinueSeries": "Продовжити серії",
|
||||||
"LabelCustomTime": "Власний час",
|
"LabelCustomTime": "Власний час",
|
||||||
"LabelDescription": "Опис",
|
"LabelDescription": "Опис",
|
||||||
@@ -146,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "Кінець глави",
|
"LabelEndOfChapter": "Кінець глави",
|
||||||
"LabelEndTime": "Час завершення",
|
"LabelEndTime": "Час завершення",
|
||||||
"LabelEpisode": "Епізод",
|
"LabelEpisode": "Епізод",
|
||||||
|
"LabelExplicit": "Відвертий",
|
||||||
"LabelFeedURL": "Адреса стрічки",
|
"LabelFeedURL": "Адреса стрічки",
|
||||||
"LabelFile": "Файл",
|
"LabelFile": "Файл",
|
||||||
"LabelFileBirthtime": "Дата створення файлу",
|
"LabelFileBirthtime": "Дата створення файлу",
|
||||||
@@ -297,6 +298,7 @@
|
|||||||
"MessageDownloading": "Завантажується...",
|
"MessageDownloading": "Завантажується...",
|
||||||
"MessageDownloadingEpisode": "Скачування епізоду",
|
"MessageDownloadingEpisode": "Скачування епізоду",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} епізод(ів) у черзі на завантаження",
|
"MessageEpisodesQueuedForDownload": "{0} епізод(ів) у черзі на завантаження",
|
||||||
|
"MessageFailedToRefreshToken": "Не вдалося оновити токен, потрібен повторний увійти",
|
||||||
"MessageFeedURLWillBe": "URL-адреса каналу буде {0}",
|
"MessageFeedURLWillBe": "URL-адреса каналу буде {0}",
|
||||||
"MessageFetching": "Отримання...",
|
"MessageFetching": "Отримання...",
|
||||||
"MessageFollowTheProjectOnGithub": "Слідкуйте за проєктом на GitHub",
|
"MessageFollowTheProjectOnGithub": "Слідкуйте за проєктом на GitHub",
|
||||||
@@ -317,13 +319,16 @@
|
|||||||
"MessageNoItems": "Елементи відсутні",
|
"MessageNoItems": "Елементи відсутні",
|
||||||
"MessageNoItemsFound": "Елементів не знайдено",
|
"MessageNoItemsFound": "Елементів не знайдено",
|
||||||
"MessageNoListeningSessions": "Сеанси прослуховування відсутні",
|
"MessageNoListeningSessions": "Сеанси прослуховування відсутні",
|
||||||
"MessageNoLogs": "Без журналу",
|
"MessageNoLogs": "Немає журналу",
|
||||||
"MessageNoMediaFolders": "Теки медіа відсутні",
|
"MessageNoMediaFolders": "Теки медіа відсутні",
|
||||||
"MessageNoNetworkConnection": "Немає підключення до мережі",
|
"MessageNoNetworkConnection": "Немає підключення до мережі",
|
||||||
"MessageNoPodcastsFound": "Подкастів не знайдено",
|
"MessageNoPodcastsFound": "Подкастів не знайдено",
|
||||||
"MessageNoSeries": "Серії відсутні",
|
"MessageNoSeries": "Серії відсутні",
|
||||||
"MessageNoUpdatesWereNecessary": "Оновлення не потрібні",
|
"MessageNoUpdatesWereNecessary": "Оновлення не потрібні",
|
||||||
"MessageNoUserPlaylists": "У вас немає списків відтворення",
|
"MessageNoUserPlaylists": "У вас немає списків відтворення",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "Автентифікацію покращено для безпеки на сервері версії 2.26.0. Усім користувачам потрібно повторно увійти в систему.",
|
||||||
|
"MessageOldServerAuthWarning": "Сервер використовує застарілу автентифікацію",
|
||||||
|
"MessageOldServerAuthWarningHelp": "Цей сервер використовує версію, старішу за v2.26.0. У версії 2.26.0 було додано безпечнішу систему автентифікації. Наполегливо рекомендується оновити сервер до останньої версії. Якщо ви вже оновили сервер, увійдіть знову, щоб використовувати нову автентифікацію.",
|
||||||
"MessageOldServerConnectionWarning": "Конфігурація підключення до сервера використовує старий ідентифікатор користувача. Видаліть і додайте це підключення до сервера заново.",
|
"MessageOldServerConnectionWarning": "Конфігурація підключення до сервера використовує старий ідентифікатор користувача. Видаліть і додайте це підключення до сервера заново.",
|
||||||
"MessageOldServerConnectionWarningHelp": "Ви спочатку налаштували з’єднання з цим сервером перед міграцією бази даних у версії 2.3.0, випущеній у червні 2023 року. Майбутнє оновлення сервера скасує можливість входу за допомогою цього старого з’єднання. Будь ласка, видаліть існуюче підключення до сервера та підключіться знову (використовуючи ту саму адресу сервера та облікові дані). Якщо на цьому пристрої є будь-які завантажені медіафайли, їх потрібно буде завантажити ще раз, щоб синхронізувати із сервером.",
|
"MessageOldServerConnectionWarningHelp": "Ви спочатку налаштували з’єднання з цим сервером перед міграцією бази даних у версії 2.3.0, випущеній у червні 2023 року. Майбутнє оновлення сервера скасує можливість входу за допомогою цього старого з’єднання. Будь ласка, видаліть існуюче підключення до сервера та підключіться знову (використовуючи ту саму адресу сервера та облікові дані). Якщо на цьому пристрої є будь-які завантажені медіафайли, їх потрібно буде завантажити ще раз, щоб синхронізувати із сервером.",
|
||||||
"MessagePodcastSearchField": "Введіть пошуковий запит або URL RSS-стрічки",
|
"MessagePodcastSearchField": "Введіть пошуковий запит або URL RSS-стрічки",
|
||||||
|
|||||||
+38
-5
@@ -2,10 +2,11 @@
|
|||||||
"ButtonAdd": "Thêm",
|
"ButtonAdd": "Thêm",
|
||||||
"ButtonAddNewServer": "Thêm Máy Chủ Mới",
|
"ButtonAddNewServer": "Thêm Máy Chủ Mới",
|
||||||
"ButtonAuthors": "Tác Giả",
|
"ButtonAuthors": "Tác Giả",
|
||||||
"ButtonBack": "Quay Lại",
|
"ButtonBack": "Quay lại",
|
||||||
"ButtonCancel": "Hủy",
|
"ButtonCancel": "Hủy",
|
||||||
"ButtonCancelTimer": "Hủy Bộ Đếm",
|
"ButtonCancelTimer": "Hủy Bộ Đếm",
|
||||||
"ButtonClearFilter": "Xóa Bộ Lọc",
|
"ButtonClearFilter": "Xóa Bộ Lọc",
|
||||||
|
"ButtonClearLogs": "Xoá logs",
|
||||||
"ButtonCloseFeed": "Đóng Feed",
|
"ButtonCloseFeed": "Đóng Feed",
|
||||||
"ButtonCollections": "Bộ Sưu Tập",
|
"ButtonCollections": "Bộ Sưu Tập",
|
||||||
"ButtonConnect": "Kết Nối",
|
"ButtonConnect": "Kết Nối",
|
||||||
@@ -19,21 +20,28 @@
|
|||||||
"ButtonDeleteLocalItem": "Xóa mục địa phương",
|
"ButtonDeleteLocalItem": "Xóa mục địa phương",
|
||||||
"ButtonDisableAutoTimer": "Tắt Bộ Đếm Tự Động",
|
"ButtonDisableAutoTimer": "Tắt Bộ Đếm Tự Động",
|
||||||
"ButtonDisconnect": "Ngắt Kết Nối",
|
"ButtonDisconnect": "Ngắt Kết Nối",
|
||||||
|
"ButtonGoToWebClient": "Đi tới trang web",
|
||||||
"ButtonHistory": "Lịch Sử",
|
"ButtonHistory": "Lịch Sử",
|
||||||
"ButtonHome": "Trang Chủ",
|
"ButtonHome": "Trang Chủ",
|
||||||
"ButtonIssues": "Vấn Đề",
|
"ButtonIssues": "Vấn Đề",
|
||||||
"ButtonLatest": "Mới Nhất",
|
"ButtonLatest": "Mới Nhất",
|
||||||
"ButtonLibrary": "Thư Viện",
|
"ButtonLibrary": "Thư Viện",
|
||||||
"ButtonLocalMedia": "Phương Tiện Địa Phương",
|
"ButtonLocalMedia": "Phương Tiện Địa Phương",
|
||||||
|
"ButtonLogs": "Logs",
|
||||||
"ButtonManageLocalFiles": "Quản Lý Tập Tin Địa Phương",
|
"ButtonManageLocalFiles": "Quản Lý Tập Tin Địa Phương",
|
||||||
|
"ButtonMaskServerAddress": "Ẩn địa chỉ máy chủ",
|
||||||
"ButtonNewFolder": "Thư Mục Mới",
|
"ButtonNewFolder": "Thư Mục Mới",
|
||||||
"ButtonNextEpisode": "Tập Kế Tiếp",
|
"ButtonNextEpisode": "Tập Kế Tiếp",
|
||||||
|
"ButtonOk": "Chấp nhận",
|
||||||
"ButtonOpenFeed": "Mở Feed",
|
"ButtonOpenFeed": "Mở Feed",
|
||||||
"ButtonOverride": "Bỏ Qua",
|
"ButtonOverride": "Bỏ Qua",
|
||||||
"ButtonPause": "Tạm Dừng",
|
"ButtonPause": "Tạm Dừng",
|
||||||
"ButtonPlay": "Phát",
|
"ButtonPlay": "Phát",
|
||||||
|
"ButtonPlayEpisode": "Phát",
|
||||||
"ButtonPlaylists": "Danh Sách Phát",
|
"ButtonPlaylists": "Danh Sách Phát",
|
||||||
"ButtonRead": "Đọc",
|
"ButtonRead": "Đọc",
|
||||||
|
"ButtonReadLess": "Thu gọn",
|
||||||
|
"ButtonReadMore": "Đọc thêm",
|
||||||
"ButtonRemove": "Xóa",
|
"ButtonRemove": "Xóa",
|
||||||
"ButtonRemoveFromServer": "Xóa khỏi Máy Chủ",
|
"ButtonRemoveFromServer": "Xóa khỏi Máy Chủ",
|
||||||
"ButtonSave": "Lưu",
|
"ButtonSave": "Lưu",
|
||||||
@@ -45,15 +53,18 @@
|
|||||||
"ButtonStream": "Phát Trực Tiếp",
|
"ButtonStream": "Phát Trực Tiếp",
|
||||||
"ButtonSubmit": "Gửi",
|
"ButtonSubmit": "Gửi",
|
||||||
"ButtonSwitchServerUser": "Chuyển Đổi Máy Chủ/Người Dùng",
|
"ButtonSwitchServerUser": "Chuyển Đổi Máy Chủ/Người Dùng",
|
||||||
|
"ButtonUnmaskServerAddress": "Hiện địa chỉ máy chủ",
|
||||||
"ButtonUserStats": "Thống Kê Người Dùng",
|
"ButtonUserStats": "Thống Kê Người Dùng",
|
||||||
"ButtonYes": "Có",
|
"ButtonYes": "Có",
|
||||||
"HeaderAccount": "Tài Khoản",
|
"HeaderAccount": "Tài Khoản",
|
||||||
"HeaderAdvanced": "Nâng Cao",
|
"HeaderAdvanced": "Nâng Cao",
|
||||||
|
"HeaderAndroidAutoSettings": "Cài đặt Android Auto",
|
||||||
"HeaderAudioTracks": "Danh Sách Âm Thanh",
|
"HeaderAudioTracks": "Danh Sách Âm Thanh",
|
||||||
"HeaderChapters": "Chương",
|
"HeaderChapters": "Chương",
|
||||||
"HeaderCollection": "Bộ Sưu Tập",
|
"HeaderCollection": "Bộ Sưu Tập",
|
||||||
"HeaderCollectionItems": "Mục Bộ Sưu Tập",
|
"HeaderCollectionItems": "Danh sách Bộ Sưu Tập",
|
||||||
"HeaderConnectionStatus": "Trạng Thái Kết Nối",
|
"HeaderConnectionStatus": "Trạng Thái Kết Nối",
|
||||||
|
"HeaderDataSettings": "Cài đặt dữ liệu",
|
||||||
"HeaderDetails": "Chi Tiết",
|
"HeaderDetails": "Chi Tiết",
|
||||||
"HeaderDownloads": "Tải Xuống",
|
"HeaderDownloads": "Tải Xuống",
|
||||||
"HeaderEbookFiles": "Tập Tin Ebook",
|
"HeaderEbookFiles": "Tập Tin Ebook",
|
||||||
@@ -68,6 +79,7 @@
|
|||||||
"HeaderPlaybackSettings": "Cài Đặt Phát Lại",
|
"HeaderPlaybackSettings": "Cài Đặt Phát Lại",
|
||||||
"HeaderPlaylist": "Danh Sách Phát",
|
"HeaderPlaylist": "Danh Sách Phát",
|
||||||
"HeaderPlaylistItems": "Các Mục Danh Sách Phát",
|
"HeaderPlaylistItems": "Các Mục Danh Sách Phát",
|
||||||
|
"HeaderProgressSyncFailed": "Lỗi đồng bộ hoá",
|
||||||
"HeaderRSSFeedGeneral": "Thông Tin Chi Tiết về RSS",
|
"HeaderRSSFeedGeneral": "Thông Tin Chi Tiết về RSS",
|
||||||
"HeaderRSSFeedIsOpen": "RSS Feed đã được Mở",
|
"HeaderRSSFeedIsOpen": "RSS Feed đã được Mở",
|
||||||
"HeaderSelectDownloadLocation": "Chọn Vị Trí Tải Xuống",
|
"HeaderSelectDownloadLocation": "Chọn Vị Trí Tải Xuống",
|
||||||
@@ -78,16 +90,20 @@
|
|||||||
"HeaderStatsRecentSessions": "Các Phiên Gần Đây",
|
"HeaderStatsRecentSessions": "Các Phiên Gần Đây",
|
||||||
"HeaderTableOfContents": "Mục Lục",
|
"HeaderTableOfContents": "Mục Lục",
|
||||||
"HeaderUserInterfaceSettings": "Cài Đặt Giao Diện Người Dùng",
|
"HeaderUserInterfaceSettings": "Cài Đặt Giao Diện Người Dùng",
|
||||||
"HeaderYourStats": "Thống Kê của Bạn",
|
"HeaderYourStats": "Thống Kê Của Bạn",
|
||||||
"LabelAddToPlaylist": "Thêm vào Danh Sách Phát",
|
"LabelAddToPlaylist": "Thêm vào Danh Sách Phát",
|
||||||
"LabelAddedAt": "Đã Thêm Vào",
|
"LabelAddedAt": "Đã Thêm Vào",
|
||||||
|
"LabelAddedDate": "Đã thêm {0}",
|
||||||
"LabelAll": "Tất Cả",
|
"LabelAll": "Tất Cả",
|
||||||
"LabelAllowSeekingOnMediaControls": "Cho phép tìm kiếm vị trí trên các điều khiển phương tiện thông báo",
|
"LabelAllowSeekingOnMediaControls": "Cho phép tìm kiếm vị trí trên các điều khiển phương tiện thông báo",
|
||||||
|
"LabelAlways": "Luôn luôn",
|
||||||
|
"LabelAndroidAutoBrowseLimitForGroupingHelp": "Không dùng danh sách sổ xuống theo thứ tự chữ cái khi số mục hiển thị ít hơn số lượng này",
|
||||||
|
"LabelAskConfirmation": "Yêu cầu xác nhận",
|
||||||
"LabelAuthor": "Tác Giả",
|
"LabelAuthor": "Tác Giả",
|
||||||
"LabelAuthorFirstLast": "Tác Giả (Tên Đầu Tiên, Họ)",
|
"LabelAuthorFirstLast": "Tác Giả (Tên Đầu Tiên, Họ)",
|
||||||
"LabelAuthorLastFirst": "Tác Giả (Họ, Tên Đầu Tiên)",
|
"LabelAuthorLastFirst": "Tác Giả (Họ, Tên Đầu Tiên)",
|
||||||
"LabelAuthors": "Tác Giả",
|
"LabelAuthors": "Tác Giả",
|
||||||
"LabelAutoDownloadEpisodes": "Tự Động Tải Xuống Các Tập Phim",
|
"LabelAutoDownloadEpisodes": "Tự Động Tải Xuống Các Tập",
|
||||||
"LabelAutoRewindTime": "Thời Gian Tự Động Lùi",
|
"LabelAutoRewindTime": "Thời Gian Tự Động Lùi",
|
||||||
"LabelAutoSleepTimer": "Bộ Đếm Thời Gian Ngủ Tự Động",
|
"LabelAutoSleepTimer": "Bộ Đếm Thời Gian Ngủ Tự Động",
|
||||||
"LabelAutoSleepTimerAutoRewind": "Lùi Tự Động Bộ Đếm Thời Gian Ngủ",
|
"LabelAutoSleepTimerAutoRewind": "Lùi Tự Động Bộ Đếm Thời Gian Ngủ",
|
||||||
@@ -115,8 +131,10 @@
|
|||||||
"LabelDisableVibrateOnResetHelp": "Khi bộ đếm thời gian ngủ được đặt lại, thiết bị của bạn sẽ rung. Bật cài đặt này để không rung khi bộ đếm thời gian ngủ được đặt lại.",
|
"LabelDisableVibrateOnResetHelp": "Khi bộ đếm thời gian ngủ được đặt lại, thiết bị của bạn sẽ rung. Bật cài đặt này để không rung khi bộ đếm thời gian ngủ được đặt lại.",
|
||||||
"LabelDiscover": "Khám Phá",
|
"LabelDiscover": "Khám Phá",
|
||||||
"LabelDownload": "Tải Xuống",
|
"LabelDownload": "Tải Xuống",
|
||||||
|
"LabelDownloadUsingCellular": "Tải xuống với dữ liệu di động",
|
||||||
"LabelDownloaded": "Đã Tải Xuống",
|
"LabelDownloaded": "Đã Tải Xuống",
|
||||||
"LabelDuration": "Thời Lượng",
|
"LabelDuration": "Thời Lượng",
|
||||||
|
"LabelEbooks": "",
|
||||||
"LabelEnable": "Bật",
|
"LabelEnable": "Bật",
|
||||||
"LabelEnableMp3IndexSeeking": "Bật Tìm Kiếm Chỉ Mục Mp3",
|
"LabelEnableMp3IndexSeeking": "Bật Tìm Kiếm Chỉ Mục Mp3",
|
||||||
"LabelEnableMp3IndexSeekingHelp": "Cài đặt này chỉ nên được bật nếu bạn có các tập tin mp3 không tìm kiếm đúng cách. Việc tìm kiếm không chính xác chủ yếu là do các tập tin MP3 biến đổi biến (VBR). Cài đặt này sẽ buộc tìm kiếm chỉ mục, trong đó một bản đồ thời gian-đến-byte được xây dựng khi tập tin được đọc. Trong một số trường hợp với các tập tin MP3 lớn, có thể có một sự trễ khi tìm kiếm về phía cuối của tập tin.",
|
"LabelEnableMp3IndexSeekingHelp": "Cài đặt này chỉ nên được bật nếu bạn có các tập tin mp3 không tìm kiếm đúng cách. Việc tìm kiếm không chính xác chủ yếu là do các tập tin MP3 biến đổi biến (VBR). Cài đặt này sẽ buộc tìm kiếm chỉ mục, trong đó một bản đồ thời gian-đến-byte được xây dựng khi tập tin được đọc. Trong một số trường hợp với các tập tin MP3 lớn, có thể có một sự trễ khi tìm kiếm về phía cuối của tập tin.",
|
||||||
@@ -131,6 +149,7 @@
|
|||||||
"LabelFilename": "Tên Tập Tin",
|
"LabelFilename": "Tên Tập Tin",
|
||||||
"LabelFinished": "Hoàn Thành",
|
"LabelFinished": "Hoàn Thành",
|
||||||
"LabelFolder": "Thư Mục",
|
"LabelFolder": "Thư Mục",
|
||||||
|
"LabelFontBoldness": "Chữ đậm",
|
||||||
"LabelFontScale": "Tỷ Lệ Phông Chữ",
|
"LabelFontScale": "Tỷ Lệ Phông Chữ",
|
||||||
"LabelGenre": "Thể Loại",
|
"LabelGenre": "Thể Loại",
|
||||||
"LabelGenres": "Thể Loại",
|
"LabelGenres": "Thể Loại",
|
||||||
@@ -145,6 +164,7 @@
|
|||||||
"LabelInternalAppStorage": "Bộ Nhớ Ứng Dụng Nội Bộ",
|
"LabelInternalAppStorage": "Bộ Nhớ Ứng Dụng Nội Bộ",
|
||||||
"LabelJumpBackwardsTime": "Nhảy Lùi Thời Gian",
|
"LabelJumpBackwardsTime": "Nhảy Lùi Thời Gian",
|
||||||
"LabelJumpForwardsTime": "Nhảy Chuyển Tiếp Thời Gian",
|
"LabelJumpForwardsTime": "Nhảy Chuyển Tiếp Thời Gian",
|
||||||
|
"LabelKeepScreenAwake": "Không khoá màn hình",
|
||||||
"LabelLanguage": "Ngôn Ngữ",
|
"LabelLanguage": "Ngôn Ngữ",
|
||||||
"LabelLayout": "Bố Cục",
|
"LabelLayout": "Bố Cục",
|
||||||
"LabelLayoutAuto": "Tự Động",
|
"LabelLayoutAuto": "Tự Động",
|
||||||
@@ -159,27 +179,40 @@
|
|||||||
"LabelLow": "Thấp",
|
"LabelLow": "Thấp",
|
||||||
"LabelMediaType": "Loại Phương Tiện",
|
"LabelMediaType": "Loại Phương Tiện",
|
||||||
"LabelMedium": "Trung Bình",
|
"LabelMedium": "Trung Bình",
|
||||||
|
"LabelMissing": "",
|
||||||
"LabelMore": "Thêm",
|
"LabelMore": "Thêm",
|
||||||
"LabelMoreInfo": "Thông Tin Thêm",
|
"LabelMoreInfo": "Thông Tin Thêm",
|
||||||
"LabelName": "Tên",
|
"LabelName": "Tên",
|
||||||
"LabelNarrator": "Người Đọc",
|
"LabelNarrator": "Người Đọc",
|
||||||
"LabelNarrators": "Người Đọc",
|
"LabelNarrators": "Người Đọc",
|
||||||
|
"LabelNavigateWithVolume": "Điều hướng bằng nút âm thanh",
|
||||||
|
"LabelNavigateWithVolumeWhilePlaying": "Cho phép sử dụng nút âm lượng để điều hướng",
|
||||||
|
"LabelNavigateWithVolumeWhilePlayingDisabled": "Không cho phép sử dụng nút âm lượng để điều hướng trong lúc phát",
|
||||||
|
"LabelNavigateWithVolumeWhilePlayingEnabled": "Cho phép sử dụng nút âm lượng để điều hướng trong lúc phát",
|
||||||
|
"LabelNever": "Không bao giờ",
|
||||||
"LabelNewestAuthors": "Tác Giả Mới Nhất",
|
"LabelNewestAuthors": "Tác Giả Mới Nhất",
|
||||||
"LabelNewestEpisodes": "Các Tập Phim Mới Nhất",
|
"LabelNewestEpisodes": "Các Tập Phim Mới Nhất",
|
||||||
"LabelNo": "Không",
|
"LabelNo": "Không",
|
||||||
"LabelNotFinished": "Chưa Hoàn Thành",
|
"LabelNotFinished": "Chưa Hoàn Thành",
|
||||||
"LabelNotStarted": "Chưa Bắt Đầu",
|
"LabelNotStarted": "Chưa Bắt Đầu",
|
||||||
|
"LabelNumEpisodes": "{0} tập",
|
||||||
|
"LabelNumEpisodesIncomplete": "{0} tập, {1} chưa hoàn thành",
|
||||||
|
"LabelNumberOfEpisodes": "Số lượng tập",
|
||||||
"LabelOff": "Tắt",
|
"LabelOff": "Tắt",
|
||||||
|
"LabelOn": "Bật",
|
||||||
"LabelPassword": "Mật Khẩu",
|
"LabelPassword": "Mật Khẩu",
|
||||||
"LabelPath": "Đường Dẫn",
|
"LabelPath": "Đường Dẫn",
|
||||||
"LabelPlaybackDirect": "Trực Tiếp",
|
"LabelPlaybackDirect": "Trực Tiếp",
|
||||||
"LabelPlaybackLocal": "Địa Phương",
|
"LabelPlaybackLocal": "Địa Phương",
|
||||||
"LabelPlaybackSpeed": "Tốc Độ Phát Lại",
|
"LabelPlaybackSpeed": "Tốc Độ Phát Lại",
|
||||||
"LabelPlaybackTranscode": "Chuyển Đổi",
|
"LabelPlaybackTranscode": "Chuyển Đổi",
|
||||||
"LabelPreventIndexing": "Ngăn Chặn Feed của bạn được lập chỉ mục bởi iTunes và Google podcast directories",
|
"LabelPodcast": "Podcast",
|
||||||
|
"LabelPodcasts": "Podcasts",
|
||||||
|
"LabelPreventIndexing": "Ngăn Chặn Feed của bạn bị truy xuất bởi thư mục iTunes và Google podcast",
|
||||||
"LabelProgress": "Tiến Độ",
|
"LabelProgress": "Tiến Độ",
|
||||||
"LabelPubDate": "Ngày Xuất Bản",
|
"LabelPubDate": "Ngày Xuất Bản",
|
||||||
"LabelPublishYear": "Năm Xuất Bản",
|
"LabelPublishYear": "Năm Xuất Bản",
|
||||||
|
"LabelPublishedDate": "Xuất bản vào {0}",
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Email Chủ Sở Hữu Tùy Chỉnh",
|
"LabelRSSFeedCustomOwnerEmail": "Email Chủ Sở Hữu Tùy Chỉnh",
|
||||||
"LabelRSSFeedCustomOwnerName": "Tên Chủ Sở Hữu Tùy Chỉnh",
|
"LabelRSSFeedCustomOwnerName": "Tên Chủ Sở Hữu Tùy Chỉnh",
|
||||||
"LabelRSSFeedPreventIndexing": "Ngăn Chặn Lập Chỉ Mục",
|
"LabelRSSFeedPreventIndexing": "Ngăn Chặn Lập Chỉ Mục",
|
||||||
|
|||||||
+11
-6
@@ -29,7 +29,7 @@
|
|||||||
"ButtonLocalMedia": "本地媒体",
|
"ButtonLocalMedia": "本地媒体",
|
||||||
"ButtonLogs": "日志",
|
"ButtonLogs": "日志",
|
||||||
"ButtonManageLocalFiles": "管理本地文件",
|
"ButtonManageLocalFiles": "管理本地文件",
|
||||||
"ButtonMaskServerAddress": "屏蔽服务器地址",
|
"ButtonMaskServerAddress": "隐藏服务器地址",
|
||||||
"ButtonNewFolder": "新建文件夹",
|
"ButtonNewFolder": "新建文件夹",
|
||||||
"ButtonNextEpisode": "下一集",
|
"ButtonNextEpisode": "下一集",
|
||||||
"ButtonOk": "确定",
|
"ButtonOk": "确定",
|
||||||
@@ -40,7 +40,7 @@
|
|||||||
"ButtonPlayEpisode": "播放剧集",
|
"ButtonPlayEpisode": "播放剧集",
|
||||||
"ButtonPlaylists": "播放列表",
|
"ButtonPlaylists": "播放列表",
|
||||||
"ButtonRead": "读取",
|
"ButtonRead": "读取",
|
||||||
"ButtonReadLess": "阅读较少",
|
"ButtonReadLess": "收起",
|
||||||
"ButtonReadMore": "阅读更多",
|
"ButtonReadMore": "阅读更多",
|
||||||
"ButtonRemove": "移除",
|
"ButtonRemove": "移除",
|
||||||
"ButtonRemoveFromServer": "从服务器中删除",
|
"ButtonRemoveFromServer": "从服务器中删除",
|
||||||
@@ -53,7 +53,7 @@
|
|||||||
"ButtonStream": "串流播放",
|
"ButtonStream": "串流播放",
|
||||||
"ButtonSubmit": "提交",
|
"ButtonSubmit": "提交",
|
||||||
"ButtonSwitchServerUser": "切换服务器/用户",
|
"ButtonSwitchServerUser": "切换服务器/用户",
|
||||||
"ButtonUnmaskServerAddress": "取消屏蔽服务器地址",
|
"ButtonUnmaskServerAddress": "显示服务器地址",
|
||||||
"ButtonUserStats": "用户统计信息",
|
"ButtonUserStats": "用户统计信息",
|
||||||
"ButtonYes": "确定",
|
"ButtonYes": "确定",
|
||||||
"HeaderAccount": "帐户",
|
"HeaderAccount": "帐户",
|
||||||
@@ -81,7 +81,7 @@
|
|||||||
"HeaderPlaylistItems": "播放列表项目",
|
"HeaderPlaylistItems": "播放列表项目",
|
||||||
"HeaderProgressSyncFailed": "进度同步失败",
|
"HeaderProgressSyncFailed": "进度同步失败",
|
||||||
"HeaderRSSFeed": "RSS 源",
|
"HeaderRSSFeed": "RSS 源",
|
||||||
"HeaderRSSFeedGeneral": "RSS 源概述",
|
"HeaderRSSFeedGeneral": "RSS 详细信息",
|
||||||
"HeaderRSSFeedIsOpen": "RSS 源已打开",
|
"HeaderRSSFeedIsOpen": "RSS 源已打开",
|
||||||
"HeaderSelectDownloadLocation": "选择下载位置",
|
"HeaderSelectDownloadLocation": "选择下载位置",
|
||||||
"HeaderSettings": "设置",
|
"HeaderSettings": "设置",
|
||||||
@@ -146,6 +146,7 @@
|
|||||||
"LabelEndOfChapter": "章节结束",
|
"LabelEndOfChapter": "章节结束",
|
||||||
"LabelEndTime": "结束时间",
|
"LabelEndTime": "结束时间",
|
||||||
"LabelEpisode": "剧集",
|
"LabelEpisode": "剧集",
|
||||||
|
"LabelExplicit": "含成人内容",
|
||||||
"LabelFeedURL": "源 URL",
|
"LabelFeedURL": "源 URL",
|
||||||
"LabelFile": "文件",
|
"LabelFile": "文件",
|
||||||
"LabelFileBirthtime": "文件创建时间",
|
"LabelFileBirthtime": "文件创建时间",
|
||||||
@@ -248,7 +249,7 @@
|
|||||||
"LabelStartTime": "开始时间",
|
"LabelStartTime": "开始时间",
|
||||||
"LabelStatsBestDay": "单日最高",
|
"LabelStatsBestDay": "单日最高",
|
||||||
"LabelStatsDailyAverage": "每日平均值",
|
"LabelStatsDailyAverage": "每日平均值",
|
||||||
"LabelStatsDays": "连续收听",
|
"LabelStatsDays": "连续",
|
||||||
"LabelStatsDaysListened": "收听天数",
|
"LabelStatsDaysListened": "收听天数",
|
||||||
"LabelStatsInARow": "天",
|
"LabelStatsInARow": "天",
|
||||||
"LabelStatsItemsFinished": "已完成的项目",
|
"LabelStatsItemsFinished": "已完成的项目",
|
||||||
@@ -297,6 +298,7 @@
|
|||||||
"MessageDownloading": "下载中...",
|
"MessageDownloading": "下载中...",
|
||||||
"MessageDownloadingEpisode": "正在下载剧集",
|
"MessageDownloadingEpisode": "正在下载剧集",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} 个剧集排队等待下载",
|
"MessageEpisodesQueuedForDownload": "{0} 个剧集排队等待下载",
|
||||||
|
"MessageFailedToRefreshToken": "无法刷新令牌,需要重新登录",
|
||||||
"MessageFeedURLWillBe": "源 URL 将改为 {0}",
|
"MessageFeedURLWillBe": "源 URL 将改为 {0}",
|
||||||
"MessageFetching": "正在获取...",
|
"MessageFetching": "正在获取...",
|
||||||
"MessageFollowTheProjectOnGithub": "在 GitHub 上关注此项目",
|
"MessageFollowTheProjectOnGithub": "在 GitHub 上关注此项目",
|
||||||
@@ -324,11 +326,14 @@
|
|||||||
"MessageNoSeries": "没有系列",
|
"MessageNoSeries": "没有系列",
|
||||||
"MessageNoUpdatesWereNecessary": "无需更新",
|
"MessageNoUpdatesWereNecessary": "无需更新",
|
||||||
"MessageNoUserPlaylists": "你没有播放列表",
|
"MessageNoUserPlaylists": "你没有播放列表",
|
||||||
|
"MessageOldServerAuthReLoginRequired": "服务器 v2.26.0 中的身份验证已得到改进, 以提高安全性. 所有用户都需要重新登录.",
|
||||||
|
"MessageOldServerAuthWarning": "服务器正在使用过时的身份验证",
|
||||||
|
"MessageOldServerAuthWarningHelp": "此服务器运行的版本早于 v2.26.0. 在 v2.26.0 中添加了更安全的身份验证系统. 强烈建议将服务器更新到最新版本. 如果您已经更新了服务器, 请重新登录以使用新的身份验证.",
|
||||||
"MessageOldServerConnectionWarning": "服务器连接配置正在使用旧的用户 ID. 请删除并重新添加此服务器连接.",
|
"MessageOldServerConnectionWarning": "服务器连接配置正在使用旧的用户 ID. 请删除并重新添加此服务器连接.",
|
||||||
"MessageOldServerConnectionWarningHelp": "您最初在 2023 年 6 月发布的 2.3.0 版本中进行数据库迁移之前设置了与此服务器的连接. 未来的服务器更新将取消使用此旧连接登录的功能. 请删除现有的服务器连接并重新连接 (使用相同的服务器地址和凭据). 如果您在此设备上有任何下载的媒体, 则需要再次下载该媒体才能与服务器同步.",
|
"MessageOldServerConnectionWarningHelp": "您最初在 2023 年 6 月发布的 2.3.0 版本中进行数据库迁移之前设置了与此服务器的连接. 未来的服务器更新将取消使用此旧连接登录的功能. 请删除现有的服务器连接并重新连接 (使用相同的服务器地址和凭据). 如果您在此设备上有任何下载的媒体, 则需要再次下载该媒体才能与服务器同步.",
|
||||||
"MessagePodcastSearchField": "输入搜索词或 RSS 源 URL",
|
"MessagePodcastSearchField": "输入搜索词或 RSS 源 URL",
|
||||||
"MessageProgressSyncFailed": "向服务器报告收听进度的最新尝试失败. 播放媒体时, 将继续每 15 秒至 1 分钟尝试一次进度同步请求.",
|
"MessageProgressSyncFailed": "向服务器报告收听进度的最新尝试失败. 播放媒体时, 将继续每 15 秒至 1 分钟尝试一次进度同步请求.",
|
||||||
"MessageReportBugsAndContribute": "报告错误、请求功能和贡献在",
|
"MessageReportBugsAndContribute": "反馈问题, 建议功能或参与贡献, 请访问",
|
||||||
"MessageSeriesAlreadyDownloaded": "你已下载此系列的所有书籍.",
|
"MessageSeriesAlreadyDownloaded": "你已下载此系列的所有书籍.",
|
||||||
"MessageSeriesDownloadConfirm": "将缺失的 {0} 本图书和 {1} 个文件 (共 {2} 个) 下载至文件夹 {3}?",
|
"MessageSeriesDownloadConfirm": "将缺失的 {0} 本图书和 {1} 个文件 (共 {2} 个) 下载至文件夹 {3}?",
|
||||||
"MessageSeriesDownloadConfirmIos": "是否下载缺失的 {0} 本书和 {1} 个文件,总计 {2} 个?",
|
"MessageSeriesDownloadConfirmIos": "是否下载缺失的 {0} 本书和 {1} 个文件,总计 {2} 个?",
|
||||||
|
|||||||
Reference in New Issue
Block a user