Merge master

This commit is contained in:
advplyr 2024-06-10 16:32:09 -05:00
commit 81130e04e5
39 changed files with 745 additions and 310 deletions

View file

@ -1,17 +1,17 @@
name: 🐞 ABS App Bug Report
description: File a bug/issue and help us improve the Audiobookshelf mobile apps.
title: '[Bug]: '
labels: ['bug', 'triage']
title: "[Bug]: "
labels: ["bug", "triage"]
body:
- type: markdown
attributes:
value: '## App Bug Description'
value: "## App Bug Description"
- type: markdown
attributes:
value: 'Thank you for filing a bug report! 🐛'
value: "Thank you for filing a bug report! 🐛"
- type: markdown
attributes:
value: 'Join the [discord server](https://discord.gg/HQgCbd6E75) for questions or if you are not sure about a bug.'
value: "Join the [discord server](https://discord.gg/HQgCbd6E75) for questions or if you are not sure about a bug."
- type: textarea
id: what-happened
attributes:
@ -25,7 +25,7 @@ body:
attributes:
label: Steps to Reproduce the Issue
description: Please help us understand how we can reliably reproduce the issue.
placeholder: '1. Go to the library page of a Podcast library and...'
placeholder: "1. Go to the library page of a Podcast library and..."
validations:
required: true
- type: textarea
@ -38,7 +38,7 @@ body:
required: true
- type: markdown
attributes:
value: '## Mobile Environment'
value: "## Mobile Environment"
- type: input
id: phone-model
attributes:
@ -62,8 +62,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.*
multiple: true
options:
- Android App - 0.9.63
- iOS App - 0.9.63
- Android App - 0.9.74
- iOS App - 0.9.74
- Android App - 0.9.73
- iOS App - 0.9.73
validations:
required: true
- type: dropdown
@ -83,4 +85,4 @@ body:
attributes:
label: Additional Notes
description: Anything else you want to add?
placeholder: 'e.g. I have tried X, Y, and Z.'
placeholder: "e.g. I have tried X, Y, and Z."

View file

@ -1,14 +1,14 @@
name: 🚀 App Feature Request
description: Request a feature/enhancement
title: '[Enhancement]: '
labels: ['enhancement']
title: "[Enhancement]: "
labels: ["enhancement"]
body:
- type: markdown
attributes:
value: '## App Feature Request Description'
value: "## App Feature Request Description"
- type: markdown
attributes:
value: 'Please first search in both issues & discussions for your enhancement and make sure your app is up to date.'
value: "Please first search in both issues & discussions for your enhancement and make sure your app is up to date."
- type: textarea
id: describe
attributes:
@ -35,7 +35,7 @@ body:
required: true
- type: markdown
attributes:
value: '## App Current Implementation'
value: "## App Current Implementation"
- type: dropdown
id: version
attributes:
@ -43,8 +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.*
multiple: true
options:
- Android App - 0.9.63
- iOS App - 0.9.63
- Android App - 0.9.74
- iOS App - 0.9.74
- Android App - 0.9.73
- iOS App - 0.9.73
validations:
required: true
- type: textarea

View file

@ -20,6 +20,14 @@ enum class ShakeSensitivitySetting {
VERY_LOW, LOW, MEDIUM, HIGH, VERY_HIGH
}
enum class DownloadUsingCellularSetting {
ASK, ALWAYS, NEVER
}
enum class StreamingUsingCellularSetting {
ASK, ALWAYS, NEVER
}
data class ServerConnectionConfig(
var id:String,
var index:Int,
@ -123,7 +131,9 @@ data class DeviceSettings(
var sleepTimerLength: Long, // Time in milliseconds
var disableSleepTimerFadeOut: Boolean,
var disableSleepTimerResetFeedback: Boolean,
var languageCode: String
var languageCode: String,
var downloadUsingCellular: DownloadUsingCellularSetting,
var streamingUsingCellular: StreamingUsingCellularSetting
) {
companion object {
// Static method to get default device settings
@ -147,7 +157,9 @@ data class DeviceSettings(
autoSleepTimerAutoRewindTime = 300000L, // 5 minutes
disableSleepTimerFadeOut = false,
disableSleepTimerResetFeedback = false,
languageCode = "en-us"
languageCode = "en-us",
downloadUsingCellular = DownloadUsingCellularSetting.ALWAYS,
streamingUsingCellular = StreamingUsingCellularSetting.ALWAYS
)
}
}

View file

@ -53,6 +53,14 @@ object DeviceManager {
if (deviceData.deviceSettings?.languageCode == null) {
deviceData.deviceSettings?.languageCode = "en-us"
}
if (deviceData.deviceSettings?.downloadUsingCellular == null) {
deviceData.deviceSettings?.downloadUsingCellular = DownloadUsingCellularSetting.ALWAYS
}
if (deviceData.deviceSettings?.streamingUsingCellular == null) {
deviceData.deviceSettings?.streamingUsingCellular = StreamingUsingCellularSetting.ALWAYS
}
}
fun getBase64Id(id:String):String {

View file

@ -11,6 +11,7 @@
<script>
import { AbsAudioPlayer } from '@/plugins/capacitor'
import { Dialog } from '@capacitor/dialog'
import CellularPermissionHelpers from '@/mixins/cellularPermissionHelpers'
export default {
data() {
@ -39,6 +40,7 @@ export default {
serverEpisodeId: null
}
},
mixins: [CellularPermissionHelpers],
computed: {
bookmarks() {
if (!this.serverLibraryItemId) return []
@ -193,12 +195,21 @@ export default {
const startTime = payload.startTime
const startWhenReady = !payload.paused
const isLocal = libraryItemId.startsWith('local')
if (!isLocal) {
const hasPermission = await this.checkCellularPermission('streaming')
if (!hasPermission) {
this.$store.commit('setPlayerDoneStartingPlayback')
return
}
}
// When playing local library item and can also play this item from the server
// then store the server library item id so it can be used if a cast is made
const serverLibraryItemId = payload.serverLibraryItemId || null
const serverEpisodeId = payload.serverEpisodeId || null
if (libraryItemId.startsWith('local') && this.$store.state.isCasting) {
if (isLocal && this.$store.state.isCasting) {
const { value } = await Dialog.confirm({
title: 'Warning',
message: `Cannot cast downloaded media items. Confirm to close cast and play on your device.`
@ -373,4 +384,4 @@ export default {
this.$eventBus.$off('device-focus-update', this.deviceFocused)
}
}
</script>
</script>

View file

@ -58,6 +58,7 @@
<script>
import { AbsFileSystem, AbsDownloader } from '@/plugins/capacitor'
import cellularPermissionHelpers from '@/mixins/cellularPermissionHelpers'
export default {
props: {
@ -73,6 +74,7 @@ export default {
},
isLocal: Boolean
},
mixins: [cellularPermissionHelpers],
data() {
return {
isProcessingReadUpdate: false,
@ -180,6 +182,9 @@ export default {
async downloadClick() {
if (this.downloadItem || this.startingDownload) return
const hasPermission = await this.checkCellularPermission('download')
if (!hasPermission) return
this.startingDownload = true
setTimeout(() => {
this.startingDownload = false

View file

@ -61,6 +61,7 @@
<script>
import { AbsFileSystem, AbsDownloader } from '@/plugins/capacitor'
import CellularPermissionHelpers from '@/mixins/cellularPermissionHelpers'
export default {
props: {
@ -83,6 +84,7 @@ export default {
processing: false
}
},
mixins: [CellularPermissionHelpers],
computed: {
bookCoverAspectRatio() {
return this.$store.getters['libraries/getBookCoverAspectRatio']
@ -187,6 +189,10 @@ export default {
},
async downloadClick() {
if (this.downloadItem || this.pendingDownload) return
const hasPermission = await this.checkCellularPermission('download')
if (!hasPermission) return
this.pendingDownload = true
await this.$hapticsImpact()
if (this.isIos) {
@ -262,7 +268,6 @@ export default {
if (this.localEpisode && this.localLibraryItemId) {
console.log('Play local episode', this.localEpisode.id, this.localLibraryItemId)
this.$eventBus.$emit('play-item', {
libraryItemId: this.localLibraryItemId,
episodeId: this.localEpisode.id,
@ -285,7 +290,11 @@ export default {
const isFinished = !this.userIsFinished
const localLibraryItemId = this.isLocal ? this.libraryItemId : this.localLibraryItemId
const localEpisodeId = this.isLocal ? this.episode.id : this.localEpisode.id
const payload = await this.$db.updateLocalMediaProgressFinished({ localLibraryItemId, localEpisodeId, isFinished })
const payload = await this.$db.updateLocalMediaProgressFinished({
localLibraryItemId,
localEpisodeId,
isFinished
})
console.log('toggleFinished payload', JSON.stringify(payload))
if (payload?.error) {
this.$toast.error(payload?.error || 'Unknown error')

View file

@ -14,7 +14,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
// Override point for customization after application launch.
let configuration = Realm.Configuration(
schemaVersion: 17,
schemaVersion: 18,
migrationBlock: { [weak self] migration, oldSchemaVersion in
if (oldSchemaVersion < 1) {
self?.logger.log("Realm schema version was \(oldSchemaVersion)")
@ -54,6 +54,13 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
newObject?["chapterTrack"] = false
}
}
if (oldSchemaVersion < 17) {
self?.logger.log("Realm schema version was \(oldSchemaVersion)... Adding downloadUsingCellular and streamingUsingCellular settings")
migration.enumerateObjects(ofType: PlayerSettings.className()) { oldObject, newObject in
newObject?["downloadUsingCellular"] = "ALWAYS"
newObject?["streamingUsingCellular"] = "ALWAYS"
}
}
}
)

View file

@ -8,13 +8,16 @@
import Foundation
import Capacitor
import RealmSwift
import Network
@objc(AbsAudioPlayer)
public class AbsAudioPlayer: CAPPlugin {
private let logger = AppLogger(category: "AbsAudioPlayer")
private var initialPlayWhenReady = false
private var monitor: NWPathMonitor?
private let queue = DispatchQueue.global(qos: .background)
override public func load() {
NotificationCenter.default.addObserver(self, selector: #selector(sendMetadata), name: NSNotification.Name(PlayerEvents.update.rawValue), object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(sendPlaybackClosedEvent), name: NSNotification.Name(PlayerEvents.closed.rawValue), object: nil)
@ -24,20 +27,25 @@ public class AbsAudioPlayer: CAPPlugin {
NotificationCenter.default.addObserver(self, selector: #selector(sendSleepTimerEnded), name: NSNotification.Name(PlayerEvents.sleepEnded.rawValue), object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(onPlaybackFailed), name: NSNotification.Name(PlayerEvents.failed.rawValue), object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(onLocalMediaProgressUpdate), name: NSNotification.Name(PlayerEvents.localProgress.rawValue), object: nil)
self.bridge?.webView?.allowsBackForwardNavigationGestures = true;
self.bridge?.webView?.scrollView.alwaysBounceVertical = false;
setupNetworkMonitor()
}
deinit {
monitor?.cancel()
}
@objc func onReady(_ call: CAPPluginCall) {
// TODO: Was used to notify when Abs UI was ready so that last played media could be opened - this was buggy and removed
call.resolve()
}
@objc func startPlaybackSession(_ session: PlaybackSession, playWhenReady: Bool, playbackRate: Float) throws {
guard let libraryItemId = session.libraryItemId else { throw PlayerError.libraryItemIdNotSpecified }
self.sendPrepareMetadataEvent(itemId: libraryItemId, playWhenReady: playWhenReady)
self.sendPlaybackSession(session: try session.asDictionary())
PlayerHandler.startPlayback(sessionId: session.id, playWhenReady: playWhenReady, playbackRate: playbackRate)
@ -50,14 +58,14 @@ public class AbsAudioPlayer: CAPPlugin {
let playWhenReady = call.getBool("playWhenReady", true)
let playbackRate = call.getFloat("playbackRate", 1)
let startTimeOverride = call.getDouble("startTime")
if libraryItemId == nil {
logger.error("provide library item id")
return call.resolve()
}
PlayerHandler.stopPlayback()
let isLocalItem = libraryItemId?.starts(with: "local_") ?? false
if (isLocalItem) {
let item = Database.shared.getLocalLibraryItem(localLibraryItemId: libraryItemId!)
@ -66,7 +74,7 @@ public class AbsAudioPlayer: CAPPlugin {
logger.error("Failed to get local playback session")
return call.resolve([:])
}
do {
if (startTimeOverride != nil) {
playbackSession.currentTime = startTimeOverride!
@ -96,14 +104,14 @@ public class AbsAudioPlayer: CAPPlugin {
}
}
}
@objc func closePlayback(_ call: CAPPluginCall) {
logger.log("Close playback")
PlayerHandler.stopPlayback()
call.resolve()
}
@objc func getCurrentTime(_ call: CAPPluginCall) {
call.resolve([
"value": PlayerHandler.getCurrentTime() ?? 0,
@ -130,7 +138,7 @@ public class AbsAudioPlayer: CAPPlugin {
PlayerHandler.setChapterTrack()
call.resolve()
}
@objc func playPlayer(_ call: CAPPluginCall) {
PlayerHandler.paused = false
call.resolve()
@ -144,7 +152,7 @@ public class AbsAudioPlayer: CAPPlugin {
PlayerHandler.paused = !PlayerHandler.paused
call.resolve([ "playing": !PlayerHandler.paused ])
}
@objc func seek(_ call: CAPPluginCall) {
PlayerHandler.seek(amount: call.getDouble("value", 0.0))
call.resolve()
@ -157,7 +165,7 @@ public class AbsAudioPlayer: CAPPlugin {
PlayerHandler.seekBackward(amount: call.getDouble("value", 0.0))
call.resolve()
}
@objc func sendMetadata() {
self.notifyListeners("onPlayingUpdate", data: [ "value": !PlayerHandler.paused ])
if let metadata = try? PlayerHandler.getMetdata()?.asDictionary() {
@ -167,34 +175,34 @@ public class AbsAudioPlayer: CAPPlugin {
@objc func sendPlaybackClosedEvent() {
self.notifyListeners("onPlaybackClosed", data: [ "value": true ])
}
@objc func decreaseSleepTime(_ call: CAPPluginCall) {
guard let timeString = call.getString("time") else { return call.resolve([ "success": false ]) }
guard let time = Double(timeString) else { return call.resolve([ "success": false ]) }
guard let _ = PlayerHandler.getSleepTimeRemaining() else { return call.resolve([ "success": false ]) }
let seconds = time/1000
PlayerHandler.decreaseSleepTime(decreaseSeconds: seconds)
call.resolve()
}
@objc func increaseSleepTime(_ call: CAPPluginCall) {
guard let timeString = call.getString("time") else { return call.resolve([ "success": false ]) }
guard let time = Double(timeString) else { return call.resolve([ "success": false ]) }
guard let _ = PlayerHandler.getSleepTimeRemaining() else { return call.resolve([ "success": false ]) }
let seconds = time/1000
PlayerHandler.increaseSleepTime(increaseSeconds: seconds)
call.resolve()
}
@objc func setSleepTimer(_ call: CAPPluginCall) {
guard let timeString = call.getString("time") else { return call.resolve([ "success": false ]) }
guard let time = Double(timeString) else { return call.resolve([ "success": false ]) }
let isChapterTime = call.getBool("isChapterTime", false)
let seconds = time / 1000
logger.log("chapter time: \(isChapterTime)")
if isChapterTime {
PlayerHandler.setChapterSleepTime(stopAt: seconds)
@ -204,30 +212,30 @@ public class AbsAudioPlayer: CAPPlugin {
call.resolve([ "success": true ])
}
}
@objc func cancelSleepTimer(_ call: CAPPluginCall) {
PlayerHandler.cancelSleepTime()
call.resolve()
}
@objc func getSleepTimerTime(_ call: CAPPluginCall) {
call.resolve([
"value": PlayerHandler.getSleepTimeRemaining() ?? 0
])
}
@objc func sendSleepTimerEnded() {
self.notifyListeners("onSleepTimerEnded", data: [
"value": PlayerHandler.getCurrentTime() ?? 0
])
}
@objc func sendSleepTimerSet() {
self.notifyListeners("onSleepTimerSet", data: [
"value": PlayerHandler.getSleepTimeRemaining() ?? 0
])
}
@objc func onLocalMediaProgressUpdate() {
guard let localMediaProgressId = PlayerHandler.getPlaybackSession()?.localMediaProgressId else { return }
guard let localMediaProgress = Database.shared.getLocalMediaProgress(localMediaProgressId: localMediaProgressId) else { return }
@ -235,7 +243,7 @@ public class AbsAudioPlayer: CAPPlugin {
logger.log("Sending local progress back to the UI")
self.notifyListeners("onLocalMediaProgressUpdate", data: progressUpdate)
}
@objc func onPlaybackFailed() {
if (PlayerHandler.getPlayMethod() == PlayMethod.directplay.rawValue) {
let session = PlayerHandler.getPlaybackSession()
@ -243,7 +251,7 @@ public class AbsAudioPlayer: CAPPlugin {
let libraryItemId = session?.libraryItemId ?? ""
let episodeId = session?.episodeId ?? nil
logger.log("Forcing Transcode")
// If direct playing then fallback to transcode
ApiClient.startPlaybackSession(libraryItemId: libraryItemId, episodeId: episodeId, forceTranscode: true) { [weak self] session in
do {
@ -262,19 +270,38 @@ public class AbsAudioPlayer: CAPPlugin {
"value": "Playback Error"
])
}
}
@objc func sendPrepareMetadataEvent(itemId: String, playWhenReady: Bool) {
self.notifyListeners("onPrepareMedia", data: [
"audiobookId": itemId,
"playWhenReady": playWhenReady,
])
}
@objc func sendPlaybackSession(session: [String: Any]) {
self.notifyListeners("onPlaybackSession", data: session)
}
private func setupNetworkMonitor() {
monitor = NWPathMonitor()
monitor?.pathUpdateHandler = { [weak self] path in
guard let self = self else { return }
let isUnmetered = !path.isExpensive && !path.isConstrained
DispatchQueue.main.async {
self.notifyNetworkMeteredChanged(isUnmetered: isUnmetered)
}
}
monitor?.start(queue: queue)
}
private func notifyNetworkMeteredChanged(isUnmetered: Bool) {
let data: [String: Any] = ["value": isUnmetered]
self.notifyListeners("onNetworkMeteredChanged", data: data)
}
}
enum PlayerError: String, Error {

View file

@ -29,20 +29,20 @@ extension String {
@objc(AbsDatabase)
public class AbsDatabase: CAPPlugin {
private let logger = AppLogger(category: "AbsDatabase")
@objc func setCurrentServerConnectionConfig(_ call: CAPPluginCall) {
var id = call.getString("id")
let address = call.getString("address", "")
let userId = call.getString("userId", "")
let username = call.getString("username", "")
let token = call.getString("token", "")
let name = "\(address) (\(username))"
if id == nil {
id = "\(address)@\(username)".toBase64()
}
let config = ServerConnectionConfig()
config.id = id ?? ""
config.index = 0
@ -51,7 +51,7 @@ public class AbsDatabase: CAPPlugin {
config.userId = userId
config.username = username
config.token = token
Store.serverConfig = config
let savedConfig = Store.serverConfig // Fetch the latest value
call.resolve(convertServerConnectionConfigToJSON(config: savedConfig!))
@ -59,26 +59,26 @@ public class AbsDatabase: CAPPlugin {
@objc func removeServerConnectionConfig(_ call: CAPPluginCall) {
let id = call.getString("serverConnectionConfigId", "")
Database.shared.deleteServerConnectionConfig(id: id)
call.resolve()
}
@objc func logout(_ call: CAPPluginCall) {
Store.serverConfig = nil
call.resolve()
}
@objc func getDeviceData(_ call: CAPPluginCall) {
let configs = Database.shared.getServerConnectionConfigs()
let index = Database.shared.getLastActiveConfigIndex()
let settings = Database.shared.getDeviceSettings()
call.resolve([
"serverConnectionConfigs": configs.map { config in convertServerConnectionConfigToJSON(config: config) },
"lastServerConnectionConfigId": configs.first { config in config.index == index }?.id as Any,
"deviceSettings": deviceSettingsToJSON(settings: settings)
])
}
@objc func getLocalLibraryItems(_ call: CAPPluginCall) {
do {
let items = Database.shared.getLocalLibraryItems()
@ -89,7 +89,7 @@ public class AbsDatabase: CAPPlugin {
call.resolve()
}
}
@objc func getLocalLibraryItem(_ call: CAPPluginCall) {
do {
let item = Database.shared.getLocalLibraryItem(localLibraryItemId: call.getString("id") ?? "")
@ -105,7 +105,7 @@ public class AbsDatabase: CAPPlugin {
call.resolve()
}
}
@objc func getLocalLibraryItemByLId(_ call: CAPPluginCall) {
do {
let item = Database.shared.getLocalLibraryItem(byServerLibraryItemId: call.getString("libraryItemId") ?? "")
@ -121,11 +121,11 @@ public class AbsDatabase: CAPPlugin {
call.resolve()
}
}
@objc func getLocalLibraryItemsInFolder(_ call: CAPPluginCall) {
call.resolve([ "value": [] ])
}
@objc func getAllLocalMediaProgress(_ call: CAPPluginCall) {
do {
call.resolve([ "value": try Database.shared.getAllLocalMediaProgress().asDictionaryArray() ])
@ -135,7 +135,7 @@ public class AbsDatabase: CAPPlugin {
call.resolve(["value": []])
}
}
@objc func removeLocalMediaProgress(_ call: CAPPluginCall) {
let localMediaProgressId = call.getString("localMediaProgressId")
guard let localMediaProgressId = localMediaProgressId else {
@ -145,7 +145,7 @@ public class AbsDatabase: CAPPlugin {
try? Database.shared.removeLocalMediaProgress(localMediaProgressId: localMediaProgressId)
call.resolve()
}
@objc func syncLocalSessionsWithServer(_ call: CAPPluginCall) {
let isFirstSync = call.getBool("isFirstSync", false)
logger.log("syncLocalSessionsWithServer: Starting (First sync: \(isFirstSync))")
@ -153,19 +153,19 @@ public class AbsDatabase: CAPPlugin {
call.reject("syncLocalSessionsWithServer not connected to server")
return call.resolve()
}
Task {
await ApiClient.syncLocalSessionsWithServer(isFirstSync: isFirstSync)
call.resolve()
}
}
@objc func syncServerMediaProgressWithLocalMediaProgress(_ call: CAPPluginCall) {
let serverMediaProgress = call.getJson("mediaProgress", type: MediaProgress.self)
let localLibraryItemId = call.getString("localLibraryItemId")
let localEpisodeId = call.getString("localEpisodeId")
let localMediaProgressId = call.getString("localMediaProgressId")
do {
guard let serverMediaProgress = serverMediaProgress else {
return call.reject("serverMediaProgress not specified")
@ -173,35 +173,35 @@ public class AbsDatabase: CAPPlugin {
guard localLibraryItemId != nil || localMediaProgressId != nil else {
return call.reject("localLibraryItemId or localMediaProgressId must be specified")
}
let localMediaProgress = try LocalMediaProgress.fetchOrCreateLocalMediaProgress(localMediaProgressId: localMediaProgressId, localLibraryItemId: localLibraryItemId, localEpisodeId: localEpisodeId)
guard let localMediaProgress = localMediaProgress else {
call.reject("Local media progress not found or created")
return
}
logger.log("syncServerMediaProgressWithLocalMediaProgress: Saving local media progress")
try localMediaProgress.updateFromServerMediaProgress(serverMediaProgress)
call.resolve(try localMediaProgress.asDictionary())
} catch {
call.reject("Failed to sync media progress")
debugPrint(error)
}
}
@objc func updateLocalMediaProgressFinished(_ call: CAPPluginCall) {
let localLibraryItemId = call.getString("localLibraryItemId")
let localEpisodeId = call.getString("localEpisodeId")
let isFinished = call.getBool("isFinished", false)
var localMediaProgressId = localLibraryItemId ?? ""
if localEpisodeId != nil {
localMediaProgressId += "-\(localEpisodeId ?? "")"
}
logger.log("updateLocalMediaProgressFinished \(localMediaProgressId) | Is Finished: \(isFinished)")
do {
let localMediaProgress = try LocalMediaProgress.fetchOrCreateLocalMediaProgress(localMediaProgressId: localMediaProgressId, localLibraryItemId: localLibraryItemId, localEpisodeId: localEpisodeId)
guard let localMediaProgress = localMediaProgress else {
@ -211,11 +211,11 @@ public class AbsDatabase: CAPPlugin {
// Update finished status
try localMediaProgress.updateIsFinished(isFinished)
// Build API response
let progressDictionary = try? localMediaProgress.asDictionary()
var response: [String: Any] = ["local": true, "server": false, "localMediaProgress": progressDictionary ?? ""]
// Send update to the server if logged in
let hasLinkedServer = localMediaProgress.serverConnectionConfigId != nil
let loggedIntoServer = Store.serverConfig?.id == localMediaProgress.serverConnectionConfigId
@ -234,7 +234,7 @@ public class AbsDatabase: CAPPlugin {
return
}
}
@objc func updateDeviceSettings(_ call: CAPPluginCall) {
let disableAutoRewind = call.getBool("disableAutoRewind") ?? false
let enableAltView = call.getBool("enableAltView") ?? false
@ -244,6 +244,8 @@ public class AbsDatabase: CAPPlugin {
let lockOrientation = call.getString("lockOrientation") ?? "NONE"
let hapticFeedback = call.getString("hapticFeedback") ?? "LIGHT"
let languageCode = call.getString("languageCode") ?? "en-us"
let downloadUsingCellular = call.getString("downloadUsingCellular") ?? "ALWAYS"
let streamingUsingCellular = call.getString("streamingUsingCellular") ?? "ALWAYS"
let settings = DeviceSettings()
settings.disableAutoRewind = disableAutoRewind
settings.enableAltView = enableAltView
@ -253,22 +255,24 @@ public class AbsDatabase: CAPPlugin {
settings.lockOrientation = lockOrientation
settings.hapticFeedback = hapticFeedback
settings.languageCode = languageCode
settings.downloadUsingCellular = downloadUsingCellular
settings.streamingUsingCellular = streamingUsingCellular
Database.shared.setDeviceSettings(deviceSettings: settings)
// Updates the media notification controls (for allowSeekingOnMediaControls setting)
PlayerHandler.updateRemoteTransportControls()
getDeviceData(call)
}
@objc func updateLocalEbookProgress(_ call: CAPPluginCall) {
let localLibraryItemId = call.getString("localLibraryItemId")
let ebookLocation = call.getString("ebookLocation", "")
let ebookProgress = call.getDouble("ebookProgress", 0.0)
logger.log("updateLocalEbookProgress \(localLibraryItemId ?? "Unknown") | ebookLocation: \(ebookLocation) | ebookProgress: \(ebookProgress)")
do {
let localMediaProgress = try LocalMediaProgress.fetchOrCreateLocalMediaProgress(localMediaProgressId: localLibraryItemId, localLibraryItemId: localLibraryItemId, localEpisodeId: nil)
guard let localMediaProgress = localMediaProgress else {
@ -278,7 +282,7 @@ public class AbsDatabase: CAPPlugin {
// Update finished status
try localMediaProgress.updateEbookProgress(ebookLocation: ebookLocation, ebookProgress: ebookProgress)
// Build API response
let progressDictionary = try? localMediaProgress.asDictionary()
let response: [String: Any] = ["localMediaProgress": progressDictionary ?? ""]

View file

@ -17,6 +17,8 @@ class DeviceSettings: Object {
@Persisted var lockOrientation: String = "NONE"
@Persisted var hapticFeedback: String = "LIGHT"
@Persisted var languageCode: String = "en-us"
@Persisted var downloadUsingCellular: String = "ALWAYS"
@Persisted var streamingUsingCellular: String = "ALWAYS"
}
func getDefaultDeviceSettings() -> DeviceSettings {
@ -32,6 +34,8 @@ func deviceSettingsToJSON(settings: DeviceSettings) -> Dictionary<String, Any> {
"jumpForwardTime": settings.jumpForwardTime,
"lockOrientation": settings.lockOrientation,
"hapticFeedback": settings.hapticFeedback,
"languageCode": settings.languageCode
"languageCode": settings.languageCode,
"downloadUsingCellular": settings.downloadUsingCellular,
"streamingUsingCellular": settings.streamingUsingCellular
]
}

View file

@ -0,0 +1,42 @@
import { Dialog } from '@capacitor/dialog';
export default {
methods: {
async checkCellularPermission(actionType) {
if (this.$store.state.networkConnectionType !== 'cellular') return true
let permission;
if (actionType === 'download') {
permission = this.$store.getters['getCanDownloadUsingCellular']
if (permission === 'NEVER') {
this.$toast.error(this.$strings.ToastDownloadNotAllowedOnCellular)
return false
}
} else if (actionType === 'streaming') {
permission = this.$store.getters['getCanStreamingUsingCellular']
if (permission === 'NEVER') {
this.$toast.error(this.$strings.ToastStreamingNotAllowedOnCellular)
return false
}
}
if (permission === 'ASK') {
const confirmed = await this.confirmAction(actionType)
return confirmed
}
return true
},
async confirmAction(actionType) {
const message = actionType === 'download' ?
this.$strings.MessageConfirmDownloadUsingCellular :
this.$strings.MessageConfirmStreamingUsingCellular
const { value } = await Dialog.confirm({
title: 'Confirm',
message
})
return value
}
}
}

View file

@ -3,7 +3,7 @@
<h1 class="text-xl mb-2 font-semibold">{{ $strings.HeaderLatestEpisodes }}</h1>
<template v-for="episode in recentEpisodes">
<tables-podcast-latest-episode-row :episode="episode" :local-episode="localEpisodeMap[episode.id]" :library-item-id="episode.libraryItemId" :local-library-item-id="null" :is-local="isLocal" :key="episode.id" @addToPlaylist="addEpisodeToPlaylist" />
<tables-podcast-latest-episode-row :episode="episode" :local-episode="localEpisodeMap[episode.id]" :library-item-id="episode.libraryItemId" :local-library-item-id="localEpisodeMap[episode.id]?.localLibraryItemId" :key="episode.id" @addToPlaylist="addEpisodeToPlaylist" />
</template>
</div>
</template>
@ -17,7 +17,6 @@ export default {
totalEpisodes: 0,
currentPage: 0,
localLibraryItems: [],
isLocal: false,
loadedLibraryId: null
}
},
@ -30,7 +29,10 @@ export default {
const episodes = []
this.localLibraryItems.forEach((li) => {
if (li.media.episodes?.length) {
episodes.push(...li.media.episodes)
li.media.episodes.map((ep) => {
ep.localLibraryItemId = li.id
episodes.push(ep)
})
}
})
return episodes
@ -106,4 +108,4 @@ export default {
this.$eventBus.$off('new-local-library-item', this.newLocalLibraryItem)
}
}
</script>
</script>

View file

@ -56,6 +56,7 @@
import { Capacitor } from '@capacitor/core'
import { Dialog } from '@capacitor/dialog'
import { AbsFileSystem, AbsDownloader } from '@/plugins/capacitor'
import cellularPermissionHelpers from '@/mixins/cellularPermissionHelpers'
export default {
async asyncData({ store, params, redirect, app }) {
@ -115,6 +116,7 @@ export default {
startingDownload: false
}
},
mixins: [cellularPermissionHelpers],
computed: {
transformedDescription() {
return this.parseDescription(this.description)
@ -419,6 +421,9 @@ export default {
async downloadClick() {
if (this.downloadItem || this.startingDownload) return
const hasPermission = await this.checkCellularPermission('download')
if (!hasPermission) return
this.startingDownload = true
setTimeout(() => {
this.startingDownload = false

View file

@ -171,6 +171,7 @@
import { Dialog } from '@capacitor/dialog'
import { AbsFileSystem, AbsDownloader } from '@/plugins/capacitor'
import { FastAverageColor } from 'fast-average-color'
import cellularPermissionHelpers from '@/mixins/cellularPermissionHelpers'
export default {
async asyncData({ store, params, redirect, app, query }) {
@ -221,6 +222,7 @@ export default {
startingDownload: false
}
},
mixins: [cellularPermissionHelpers],
computed: {
isIos() {
return this.$platform === 'ios'
@ -607,9 +609,11 @@ export default {
this.download(localFolder)
},
async downloadClick() {
if (this.downloadItem || this.startingDownload) {
return
}
if (this.downloadItem || this.startingDownload) return
const hasPermission = await this.checkCellularPermission('download')
if (!hasPermission) return
this.startingDownload = true
setTimeout(() => {
this.startingDownload = false

View file

@ -135,6 +135,21 @@
</div>
</div>
<!-- Data settings -->
<p class="uppercase text-xs font-semibold text-fg-muted mb-2 mt-10">{{ $strings.HeaderDataSettings }}</p>
<div class="py-3 flex items-center">
<p class="pr-4 w-36">{{ $strings.LabelDownloadUsingCellular }}</p>
<div @click.stop="showDownloadUsingCellularOptions">
<ui-text-input :value="downloadUsingCellularOption" readonly append-icon="expand_more" style="max-width: 200px" />
</div>
</div>
<div class="py-3 flex items-center">
<p class="pr-4 w-36">{{ $strings.LabelStreamingUsingCellular }}</p>
<div @click.stop="showStreamingUsingCellularOptions">
<ui-text-input :value="streamingUsingCellularOption" readonly append-icon="expand_more" style="max-width: 200px" />
</div>
</div>
<div v-show="loading" class="w-full h-full absolute top-0 left-0 flex items-center justify-center z-10">
<ui-loading-indicator />
</div>
@ -176,7 +191,9 @@ export default {
disableSleepTimerResetFeedback: false,
autoSleepTimerAutoRewind: false,
autoSleepTimerAutoRewindTime: 300000, // 5 minutes
languageCode: 'en-us'
languageCode: 'en-us',
downloadUsingCellular: 'ALWAYS',
streamingUsingCellular: 'ALWAYS'
},
theme: 'dark',
lockCurrentOrientation: false,
@ -245,6 +262,34 @@ export default {
text: this.$strings.LabelVeryHigh,
value: 'VERY_HIGH'
}
],
downloadUsingCellularItems: [
{
text: this.$strings.LabelAskConfirmation,
value: 'ASK'
},
{
text: this.$strings.LabelAlways,
value: 'ALWAYS'
},
{
text: this.$strings.LabelNever,
value: 'NEVER'
}
],
streamingUsingCellularItems: [
{
text: this.$strings.LabelAskConfirmation,
value: 'ASK'
},
{
text: this.$strings.LabelAlways,
value: 'ALWAYS'
},
{
text: this.$strings.LabelNever,
value: 'NEVER'
}
]
}
},
@ -319,11 +364,21 @@ export default {
const minutes = Number(this.settings.autoSleepTimerAutoRewindTime) / 1000 / 60
return `${minutes} min`
},
downloadUsingCellularOption() {
const item = this.downloadUsingCellularItems.find((i) => i.value === this.settings.downloadUsingCellular)
return item?.text || 'Error'
},
streamingUsingCellularOption() {
const item = this.streamingUsingCellularItems.find((i) => i.value === this.settings.streamingUsingCellular)
return item?.text || 'Error'
},
moreMenuItems() {
if (this.moreMenuSetting === 'shakeSensitivity') return this.shakeSensitivityItems
else if (this.moreMenuSetting === 'hapticFeedback') return this.hapticFeedbackItems
else if (this.moreMenuSetting === 'language') return this.languageOptionItems
else if (this.moreMenuSetting === 'theme') return this.themeOptionItems
else if (this.moreMenuSetting === 'downloadUsingCellular') return this.downloadUsingCellularItems
else if (this.moreMenuSetting === 'streamingUsingCellular') return this.streamingUsingCellularItems
return []
}
},
@ -358,6 +413,14 @@ export default {
this.moreMenuSetting = 'theme'
this.showMoreMenuDialog = true
},
showDownloadUsingCellularOptions() {
this.moreMenuSetting = 'downloadUsingCellular'
this.showMoreMenuDialog = true
},
showStreamingUsingCellularOptions() {
this.moreMenuSetting = 'streamingUsingCellular'
this.showMoreMenuDialog = true
},
clickMenuAction(action) {
this.showMoreMenuDialog = false
if (this.moreMenuSetting === 'shakeSensitivity') {
@ -372,6 +435,12 @@ export default {
} else if (this.moreMenuSetting === 'theme') {
this.theme = action
this.saveTheme(action)
} else if (this.moreMenuSetting === 'downloadUsingCellular') {
this.settings.downloadUsingCellular = action
this.saveSettings()
} else if (this.moreMenuSetting === 'streamingUsingCellular') {
this.settings.streamingUsingCellular = action
this.saveSettings()
}
},
saveTheme(theme) {
@ -504,6 +573,9 @@ export default {
this.settings.autoSleepTimerAutoRewindTime = !isNaN(deviceSettings.autoSleepTimerAutoRewindTime) ? deviceSettings.autoSleepTimerAutoRewindTime : 300000 // 5 minutes
this.settings.languageCode = deviceSettings.languageCode || 'en-us'
this.settings.downloadUsingCellular = deviceSettings.downloadUsingCellular || 'ALWAYS'
this.settings.streamingUsingCellular = deviceSettings.streamingUsingCellular || 'ALWAYS'
},
async init() {
this.loading = true

View file

@ -77,6 +77,14 @@ export const getters = {
},
getOrientationLockSetting: state => {
return state.deviceData?.deviceSettings?.lockOrientation
},
getCanDownloadUsingCellular: state => {
if (!state.deviceData?.deviceSettings?.downloadUsingCellular) return 'ALWAYS'
return state.deviceData.deviceSettings.downloadUsingCellular || 'ALWAYS'
},
getCanStreamingUsingCellular: state => {
if (!state.deviceData?.deviceSettings?.streamingUsingCellular) return 'ALWAYS'
return state.deviceData.deviceSettings.streamingUsingCellular || 'ALWAYS'
}
}
@ -180,4 +188,4 @@ export const mutations = {
state.serverSettings = val
this.$localStore.setServerSettings(state.serverSettings)
}
}
}

1
strings/bn.json Normal file
View file

@ -0,0 +1 @@
{}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Kolekce",
"HeaderCollectionItems": "Položky kolekce",
"HeaderConnectionStatus": "Stav připojení",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Podrobnosti",
"HeaderDownloads": "Stahování",
"HeaderEbookFiles": "Soubory e-knih",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Obsah",
"HeaderUserInterfaceSettings": "Nastavení uživatelského rozhraní",
"HeaderYourStats": "Vaše statistiky",
"LabelAddToPlaylist": "Přidat do seznamu skladeb",
"LabelAdded": "Přidáno",
"LabelAddedAt": "Přidáno v",
"LabelAddToPlaylist": "Přidat do seznamu skladeb",
"LabelAll": "Vše",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Autor",
"LabelAuthorFirstLast": "Autor (jméno a příjmení)",
"LabelAuthorLastFirst": "Autor (příjmení a jméno)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "Když dojde k uspání automatickým časovačem spánku, pozice přehrávání je posunuta zpět o vybraný čas.",
"LabelAutoSleepTimerHelp": "Během přehrávání média v časovém rozmezí \"Od\" a \"Do\" se automaticky spustí časovač spánku.",
"LabelBooks": "Knihy",
"LabelChapters": "Kapitoly",
"LabelChapterTrack": "Stopa kapitoly",
"LabelChapters": "Kapitoly",
"LabelClosePlayer": "Zavřít přehrávač",
"LabelCollapseSeries": "Sbalit sérii",
"LabelComplete": "Dokončeno",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "Když je časovač spánku resetován, zařízení zavibruje. Tuto možnost povolte, pokud nechcete, aby zařízení vibrace provádělo při resetování časovače spánku.",
"LabelDiscover": "Objevit",
"LabelDownload": "Stáhnout",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Staženo",
"LabelDuration": "Trvání",
"LabelEbook": "E-kniha",
@ -146,8 +150,8 @@
"LabelHeavy": "Těžké",
"LabelHigh": "Vysoké",
"LabelHost": "Hostitel",
"LabelIncomplete": "Neúplné",
"LabelInProgress": "Probíhá",
"LabelIncomplete": "Neúplné",
"LabelInternalAppStorage": "Interní úložiště aplikace",
"LabelJumpBackwardsTime": "Délka skoku zpět v čase",
"LabelJumpForwardsTime": "Délka skoku vpřed v čase",
@ -170,6 +174,7 @@
"LabelName": "Jméno",
"LabelNarrator": "Vypravěč",
"LabelNarrators": "Vypravěči",
"LabelNever": "Never",
"LabelNewestAuthors": "Nejnovější autoři",
"LabelNewestEpisodes": "Nejnovější epizody",
"LabelNo": "Ne",
@ -188,15 +193,15 @@
"LabelProgress": "Průběh",
"LabelPubDate": "Datum vydání",
"LabelPublishYear": "Rok vydání",
"LabelRead": "Číst",
"LabelReadAgain": "Číst znovu",
"LabelRecentlyAdded": "Nedávno přidáno",
"LabelRecentSeries": "Nedávné série",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Vlastní e-mail vlastníka",
"LabelRSSFeedCustomOwnerName": "Vlastní jméno vlastníka",
"LabelRSSFeedPreventIndexing": "Zabránit indexování",
"LabelRSSFeedSlug": "Klíčové slovo kanálu RSS",
"LabelRead": "Číst",
"LabelReadAgain": "Číst znovu",
"LabelRecentSeries": "Nedávné série",
"LabelRecentlyAdded": "Nedávno přidáno",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelScaleElapsedTimeBySpeed": "Škálovat uplynulý čas podle rychlosti",
"LabelSeason": "Sezóna",
"LabelSelectADevice": "Vyberte zařízení",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "minut",
"LabelStatsMinutesListening": "Minuty poslechu",
"LabelStatsWeekListening": "Za týden",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Štítek",
"LabelTags": "Štítky",
"LabelTheme": "Téma",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Odebrat místní epizodu „{0}“ ze zařízení? Soubor na serveru zůstane nezměněný.",
"MessageConfirmDeleteLocalFiles": "Odebrat místní soubory této položky ze zařízení? Soubory na serveru a váš pokrok nebudou ovlivněny.",
"MessageConfirmDiscardProgress": "Opravdu chcete zahodit svůj pokrok?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Opravdu chcete tuto položku označit jako dokončenou?",
"MessageConfirmRemoveBookmark": "Opravdu chcete odebrat záložku?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Zahodit pokrok",
"MessageDownloadCompleteProcessing": "Stahování dokončeno. Zpracovává se...",
"MessageDownloading": "Stahuje se...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Vytvoření záložky se nezdařilo",
"ToastBookmarkRemoveFailed": "Nepodařilo se odstranit záložku",
"ToastBookmarkUpdateFailed": "Aktualizace záložky se nezdařila",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Nepodařilo se označit jako dokončené",
"ToastItemMarkedAsNotFinishedFailed": "Nepodařilo se označit jako nedokončené",
"ToastPlaylistCreateFailed": "Vytvoření seznamu přehrávání se nezdařilo",
"ToastPodcastCreateFailed": "Vytvoření podcastu se nezdařilo",
"ToastPodcastCreateSuccess": "Podcast byl úspěšně vytvořen",
"ToastRSSFeedCloseFailed": "Nepodařilo se zavřít RSS kanál",
"ToastRSSFeedCloseSuccess": "RSS kanál uzavřen"
}
"ToastRSSFeedCloseSuccess": "RSS kanál uzavřen",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Samling",
"HeaderCollectionItems": "Samlingselementer",
"HeaderConnectionStatus": "Connection Status",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Detaljer",
"HeaderDownloads": "Downloads",
"HeaderEbookFiles": "E-bogsfiler",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Indholdsfortegnelse",
"HeaderUserInterfaceSettings": "User Interface Settings",
"HeaderYourStats": "Dine Statistikker",
"LabelAddToPlaylist": "Tilføj til Afspilningsliste",
"LabelAdded": "Tilføjet",
"LabelAddedAt": "Tilføjet Kl.",
"LabelAddToPlaylist": "Tilføj til Afspilningsliste",
"LabelAll": "Alle",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Forfatter",
"LabelAuthorFirstLast": "Forfatter (Fornavn Efternavn)",
"LabelAuthorLastFirst": "Forfatter (Efternavn, Fornavn)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
"LabelBooks": "Bøger",
"LabelChapters": "Kapitler",
"LabelChapterTrack": "Chapter Track",
"LabelChapters": "Kapitler",
"LabelClosePlayer": "Luk afspiller",
"LabelCollapseSeries": "Fold Serie Sammen",
"LabelComplete": "Fuldfør",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
"LabelDiscover": "Discover",
"LabelDownload": "Download",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Downloaded",
"LabelDuration": "Varighed",
"LabelEbook": "E-bog",
@ -146,8 +150,8 @@
"LabelHeavy": "Heavy",
"LabelHigh": "High",
"LabelHost": "Vært",
"LabelIncomplete": "Ufuldstændig",
"LabelInProgress": "I gang",
"LabelIncomplete": "Ufuldstændig",
"LabelInternalAppStorage": "Internal App Storage",
"LabelJumpBackwardsTime": "Jump backwards time",
"LabelJumpForwardsTime": "Jump forwards time",
@ -170,6 +174,7 @@
"LabelName": "Navn",
"LabelNarrator": "Fortæller",
"LabelNarrators": "Fortællere",
"LabelNever": "Never",
"LabelNewestAuthors": "Newest Authors",
"LabelNewestEpisodes": "Newest Episodes",
"LabelNo": "No",
@ -188,15 +193,15 @@
"LabelProgress": "Fremskridt",
"LabelPubDate": "Udgivelsesdato",
"LabelPublishYear": "Udgivelsesår",
"LabelRead": "Læst",
"LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Brugerdefineret ejerens e-mail",
"LabelRSSFeedCustomOwnerName": "Brugerdefineret ejerens navn",
"LabelRSSFeedPreventIndexing": "Forhindrer indeksering",
"LabelRSSFeedSlug": "RSS-feed-slug",
"LabelRead": "Læst",
"LabelReadAgain": "Read Again",
"LabelRecentSeries": "Recent Series",
"LabelRecentlyAdded": "Recently Added",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
"LabelSeason": "Sæson",
"LabelSelectADevice": "Select a device",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "minutter",
"LabelStatsMinutesListening": "Minutter hørt",
"LabelStatsWeekListening": "Ugens lytning",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Mærke",
"LabelTags": "Mærker",
"LabelTheme": "Tema",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.",
"MessageConfirmDeleteLocalFiles": "Remove local files of this item from your device? The files on the server and your progress will be unaffected.",
"MessageConfirmDiscardProgress": "Are you sure you want to reset your progress?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Discard Progress",
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
"MessageDownloading": "Downloading...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Mislykkedes oprettelse af bogmærke",
"ToastBookmarkRemoveFailed": "Mislykkedes fjernelse af bogmærke",
"ToastBookmarkUpdateFailed": "Mislykkedes opdatering af bogmærke",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Mislykkedes markering som afsluttet",
"ToastItemMarkedAsNotFinishedFailed": "Mislykkedes markering som ikke afsluttet",
"ToastPlaylistCreateFailed": "Mislykkedes oprettelse af afspilningsliste",
"ToastPodcastCreateFailed": "Mislykkedes oprettelse af podcast",
"ToastPodcastCreateSuccess": "Podcast oprettet med succes",
"ToastRSSFeedCloseFailed": "Mislykkedes lukning af RSS-feed",
"ToastRSSFeedCloseSuccess": "RSS-feed lukket"
}
"ToastRSSFeedCloseSuccess": "RSS-feed lukket",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Sammlungen",
"HeaderCollectionItems": "Sammlungseinträge",
"HeaderConnectionStatus": "Verbindungsstatus",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Details",
"HeaderDownloads": "Downloads",
"HeaderEbookFiles": "E-Book Dateien",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Inhaltsverzeichnis",
"HeaderUserInterfaceSettings": "Einstellungen der Benutzeroberfläche",
"HeaderYourStats": "Eigene Statistiken",
"LabelAddToPlaylist": "Zur Wiedergabeliste hinzufügen",
"LabelAdded": "Hinzugefügt",
"LabelAddedAt": "Hinzugefügt am",
"LabelAddToPlaylist": "Zur Wiedergabeliste hinzufügen",
"LabelAll": "Alle",
"LabelAllowSeekingOnMediaControls": "Erlaube Vor- und Zurückspulen auf dem Medienkontrollelement bei den Benachrichtigungen",
"LabelAlways": "Immer",
"LabelAskConfirmation": "Bestätigung anfordern",
"LabelAuthor": "Autor",
"LabelAuthorFirstLast": "Autor (Vorname Nachname)",
"LabelAuthorLastFirst": "Autor (Nachname, Vorname)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "Wenn die Schlummerfunktion abgelaufen ist, wird bei der erneuten Wiedergabe des Titels die Position automatisch zurückgespult.",
"LabelAutoSleepTimerHelp": "Bei der Wiedergabe von Medien zwischen der angegebenen Start- und Endzeit wird automatisch eine Schlummerfunktion gestartet.",
"LabelBooks": "Bücher",
"LabelChapters": "Kapitel",
"LabelChapterTrack": "Kapitel Spur",
"LabelChapters": "Kapitel",
"LabelClosePlayer": "Player schließen",
"LabelCollapseSeries": "Serien zusammenfassen",
"LabelComplete": "Vollständig",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "Wenn der Sleep-Timer zurückgesetzt wird, vibriert dein Gerät. Aktiviere diese Einstellung, um nicht zu vibrieren, wenn der Sleep-Timer zurückgesetzt wird.",
"LabelDiscover": "Entdecken",
"LabelDownload": "Herunterladen",
"LabelDownloadUsingCellular": "Über mobile Daten herunterladen",
"LabelDownloaded": "Heruntergeladen",
"LabelDuration": "Laufzeit",
"LabelEbook": "E-Book",
@ -146,8 +150,8 @@
"LabelHeavy": "Stark",
"LabelHigh": "Hoch",
"LabelHost": "Host",
"LabelIncomplete": "Unvollständig",
"LabelInProgress": "In Bearbeitung",
"LabelIncomplete": "Unvollständig",
"LabelInternalAppStorage": "Interner App Speicher",
"LabelJumpBackwardsTime": "Rückspulzeit",
"LabelJumpForwardsTime": "Vorwärtsspulzeit",
@ -170,6 +174,7 @@
"LabelName": "Name",
"LabelNarrator": "Erzähler",
"LabelNarrators": "Erzähler",
"LabelNever": "Never",
"LabelNewestAuthors": "Neueste Autoren",
"LabelNewestEpisodes": "Neueste Episoden",
"LabelNo": "Nein",
@ -188,15 +193,15 @@
"LabelProgress": "Fortschritt",
"LabelPubDate": "Veröffentlichungsdatum",
"LabelPublishYear": "Jahr",
"LabelRead": "Lesen",
"LabelReadAgain": "Erneut lesen",
"LabelRecentlyAdded": "Kürzlich hinzugefügt",
"LabelRecentSeries": "Aktuelle Serien",
"LabelRemoveFromPlaylist": "Von Wiedergabeliste entfernen",
"LabelRSSFeedCustomOwnerEmail": "Benutzerdefinierte Eigentümer-E-Mail",
"LabelRSSFeedCustomOwnerName": "Benutzerdefinierter Name des Eigentümers",
"LabelRSSFeedPreventIndexing": "Indizierung verhindern",
"LabelRSSFeedSlug": "RSS Feed Schlagwort",
"LabelRead": "Lesen",
"LabelReadAgain": "Erneut lesen",
"LabelRecentSeries": "Aktuelle Serien",
"LabelRecentlyAdded": "Kürzlich hinzugefügt",
"LabelRemoveFromPlaylist": "Von Wiedergabeliste entfernen",
"LabelScaleElapsedTimeBySpeed": "Vergangene Zeit anhand der Geschwindigkeit skalieren",
"LabelSeason": "Staffel",
"LabelSelectADevice": "Wähle ein Gerät",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "Minuten",
"LabelStatsMinutesListening": "Gehörte Minuten",
"LabelStatsWeekListening": "Gehörte Wochen",
"LabelStreamingUsingCellular": "Über mobile Daten streamen",
"LabelTag": "Schlagwort",
"LabelTags": "Schlagwörter",
"LabelTheme": "Theme",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Soll die lokale Episode \"{0}\" von deinem Gerät entfernt werden? Die Datei auf dem Server bleibt davon unberührt.",
"MessageConfirmDeleteLocalFiles": "Sollen lokale Dateien dieses Elements von deinem Gerät entfernt werden? Die Dateien auf dem Server und Ihr Fortschritt bleiben davon unberührt.",
"MessageConfirmDiscardProgress": "Bist du sicher, dass du deinen Fortschritt zurücksetzen willst?",
"MessageConfirmDownloadUsingCellular": "Sie sind dabei, über mobile Daten herunterzuladen. Dies kann zu Gebühren Ihres Mobilfunkanbieters führen. Möchten Sie fortfahren?",
"MessageConfirmMarkAsFinished": "Bist du sicher, dass du diesen Artikel als beendet markieren willst?",
"MessageConfirmRemoveBookmark": "Bist du sicher, dass du das Lesezeichen entfernen willst?",
"MessageConfirmStreamingUsingCellular": "Sie sind dabei, über mobile Daten zu streamen. Dies kann zu Gebühren Ihres Mobilfunkanbieters führen. Möchten Sie fortfahren?",
"MessageDiscardProgress": "Fortschritt verwerfen",
"MessageDownloadCompleteProcessing": "Download abgeschlossen. Verarbeite...",
"MessageDownloading": "Herunterladen...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Lesezeichen konnte nicht erstellt werden",
"ToastBookmarkRemoveFailed": "Lesezeichen konnte nicht gelöscht werden",
"ToastBookmarkUpdateFailed": "Lesezeichenaktualisierung fehlgeschlagen",
"ToastDownloadNotAllowedOnCellular": "Das Herunterladen über mobile Daten ist nicht erlaubt",
"ToastItemMarkedAsFinishedFailed": "Fehler bei der Markierung des Mediums als \"Beendet\"",
"ToastItemMarkedAsNotFinishedFailed": "Fehler bei der Markierung des Mediums als \"Nicht Beendet\"",
"ToastPlaylistCreateFailed": "Erstellen der Wiedergabeliste fehlgeschlagen",
"ToastPodcastCreateFailed": "Podcast konnte nicht erstellt werden",
"ToastPodcastCreateSuccess": "Podcast erstellt",
"ToastRSSFeedCloseFailed": "RSS-Feed konnte nicht geschlossen werden",
"ToastRSSFeedCloseSuccess": "RSS-Feed geschlossen"
"ToastRSSFeedCloseSuccess": "RSS-Feed geschlossen",
"ToastStreamingNotAllowedOnCellular": "Das Streamen über mobile Daten ist nicht erlaubt"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Collection",
"HeaderCollectionItems": "Collection Items",
"HeaderConnectionStatus": "Connection Status",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Details",
"HeaderDownloads": "Downloads",
"HeaderEbookFiles": "Ebook Files",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Table of Contents",
"HeaderUserInterfaceSettings": "User Interface Settings",
"HeaderYourStats": "Your Stats",
"LabelAddToPlaylist": "Add to Playlist",
"LabelAdded": "Added",
"LabelAddedAt": "Added At",
"LabelAddToPlaylist": "Add to Playlist",
"LabelAll": "All",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Author",
"LabelAuthorFirstLast": "Author (First Last)",
"LabelAuthorLastFirst": "Author (Last, First)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
"LabelBooks": "Books",
"LabelChapters": "Chapters",
"LabelChapterTrack": "Chapter Track",
"LabelChapters": "Chapters",
"LabelClosePlayer": "Close player",
"LabelCollapseSeries": "Collapse Series",
"LabelComplete": "Complete",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
"LabelDiscover": "Discover",
"LabelDownload": "Download",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Downloaded",
"LabelDuration": "Duration",
"LabelEbook": "Ebook",
@ -147,8 +151,8 @@
"LabelHeavy": "Heavy",
"LabelHigh": "High",
"LabelHost": "Host",
"LabelIncomplete": "Incomplete",
"LabelInProgress": "In Progress",
"LabelIncomplete": "Incomplete",
"LabelInternalAppStorage": "Internal App Storage",
"LabelJumpBackwardsTime": "Jump backwards time",
"LabelJumpForwardsTime": "Jump forwards time",
@ -171,6 +175,7 @@
"LabelName": "Name",
"LabelNarrator": "Narrator",
"LabelNarrators": "Narrators",
"LabelNever": "Never",
"LabelNewestAuthors": "Newest Authors",
"LabelNewestEpisodes": "Newest Episodes",
"LabelNo": "No",
@ -189,15 +194,15 @@
"LabelProgress": "Progress",
"LabelPubDate": "Pub Date",
"LabelPublishYear": "Publish Year",
"LabelRead": "Read",
"LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Custom owner Email",
"LabelRSSFeedCustomOwnerName": "Custom owner Name",
"LabelRSSFeedPreventIndexing": "Prevent Indexing",
"LabelRSSFeedSlug": "RSS Feed Slug",
"LabelRead": "Read",
"LabelReadAgain": "Read Again",
"LabelRecentSeries": "Recent Series",
"LabelRecentlyAdded": "Recently Added",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
"LabelSeason": "Season",
"LabelSelectADevice": "Select a device",
@ -220,6 +225,7 @@
"LabelStatsMinutes": "minutes",
"LabelStatsMinutesListening": "Minutes Listening",
"LabelStatsWeekListening": "Week Listening",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Tag",
"LabelTags": "Tags",
"LabelTheme": "Theme",
@ -246,8 +252,10 @@
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.",
"MessageConfirmDeleteLocalFiles": "Remove local files of this item from your device? The files on the server and your progress will be unaffected.",
"MessageConfirmDiscardProgress": "Are you sure you want to reset your progress?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Discard Progress",
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
"MessageDownloading": "Downloading...",
@ -287,11 +295,13 @@
"ToastBookmarkCreateFailed": "Failed to create bookmark",
"ToastBookmarkRemoveFailed": "Failed to remove bookmark",
"ToastBookmarkUpdateFailed": "Failed to update bookmark",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Failed to mark as Finished",
"ToastItemMarkedAsNotFinishedFailed": "Failed to mark as Not Finished",
"ToastPlaylistCreateFailed": "Failed to create playlist",
"ToastPodcastCreateFailed": "Failed to create podcast",
"ToastPodcastCreateSuccess": "Podcast created successfully",
"ToastRSSFeedCloseFailed": "Failed to close RSS feed",
"ToastRSSFeedCloseSuccess": "RSS feed closed"
"ToastRSSFeedCloseSuccess": "RSS feed closed",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Colección",
"HeaderCollectionItems": "Elementos en la Colección",
"HeaderConnectionStatus": "Estado de la Conexión",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Detalles",
"HeaderDownloads": "Descargas",
"HeaderEbookFiles": "Archivos de Ebook",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Tabla de Contenidos",
"HeaderUserInterfaceSettings": "Ajustes de la Interfaz de Usuario",
"HeaderYourStats": "Tus Estadísticas",
"LabelAddToPlaylist": "Añadido a la Lista de Reproducción",
"LabelAdded": "Añadido",
"LabelAddedAt": "Añadido",
"LabelAddToPlaylist": "Añadido a la Lista de Reproducción",
"LabelAll": "Todos",
"LabelAllowSeekingOnMediaControls": "Permitir la búsqueda de posición en los controles de notificación de medios",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Autor",
"LabelAuthorFirstLast": "Autor (Nombre Apellido)",
"LabelAuthorLastFirst": "Autor (Apellido, Nombre)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "Cuando el temporizador de auto apagado finaliza, reproducir el elemento nuevamente rebobinará automáticamente tu posición.",
"LabelAutoSleepTimerHelp": "Cuando se reproduce contenido multimedia entre las horas de inicio y finalización especificadas, se activará automáticamente un temporizador de apagado.",
"LabelBooks": "Libros",
"LabelChapters": "Capítulos",
"LabelChapterTrack": "Seguimiento de Capítulo",
"LabelChapters": "Capítulos",
"LabelClosePlayer": "Cerrar Reproductor",
"LabelCollapseSeries": "Colapsar Serie",
"LabelComplete": "Completo",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "Cuando el temporizador de apagado se reinicia, el dispositivo vibra. Activa esta opción para que no vibre cuando se reinicie el temporizador.",
"LabelDiscover": "Descubrir",
"LabelDownload": "Descargar",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Descargado",
"LabelDuration": "Duración",
"LabelEbook": "Ebook",
@ -146,8 +150,8 @@
"LabelHeavy": "Pesado",
"LabelHigh": "Alto",
"LabelHost": "Host",
"LabelIncomplete": "Incompleto",
"LabelInProgress": "En Proceso",
"LabelIncomplete": "Incompleto",
"LabelInternalAppStorage": "Almacenamiento interno de aplicaciones",
"LabelJumpBackwardsTime": "Saltar atrás en el tiempo",
"LabelJumpForwardsTime": "Salto adelante en el tiempo",
@ -170,6 +174,7 @@
"LabelName": "Nombre",
"LabelNarrator": "Narrador",
"LabelNarrators": "Narradores",
"LabelNever": "Never",
"LabelNewestAuthors": "Autores más Recientes",
"LabelNewestEpisodes": "Episodios más Recientes",
"LabelNo": "No",
@ -188,15 +193,15 @@
"LabelProgress": "Progreso",
"LabelPubDate": "Fecha de Publicación",
"LabelPublishYear": "Año de Publicación",
"LabelRead": "Leído",
"LabelReadAgain": "Leer de nuevo",
"LabelRecentlyAdded": "Añadido Recientemente",
"LabelRecentSeries": "Series Recientes",
"LabelRemoveFromPlaylist": "Eliminar de la Lista de Reproducción",
"LabelRSSFeedCustomOwnerEmail": "Email de dueño personalizado",
"LabelRSSFeedCustomOwnerName": "Nombre de dueño personalizado",
"LabelRSSFeedPreventIndexing": "Prevenir Indexado",
"LabelRSSFeedSlug": "Fuente RSS Slug",
"LabelRead": "Leído",
"LabelReadAgain": "Leer de nuevo",
"LabelRecentSeries": "Series Recientes",
"LabelRecentlyAdded": "Añadido Recientemente",
"LabelRemoveFromPlaylist": "Eliminar de la Lista de Reproducción",
"LabelScaleElapsedTimeBySpeed": "Escala el tiempo transcurrido según la velocidad",
"LabelSeason": "Temporada",
"LabelSelectADevice": "Selecciona un dispositivo",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "minutos",
"LabelStatsMinutesListening": "Minutos Escuchando",
"LabelStatsWeekListening": "Tiempo escuchando en la Semana",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Etiqueta",
"LabelTags": "Etiquetas",
"LabelTheme": "Tema",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "¿Eliminar episodio local \"{0}\" de su dispositivo? El archivo en el servidor no se verá afectado.",
"MessageConfirmDeleteLocalFiles": "¿Eliminar los archivos locales de este elemento de tu dispositivo? Los archivos del servidor y tu progreso no se verán afectados.",
"MessageConfirmDiscardProgress": "¿Estás seguro de que quieres reiniciar tu progreso?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "¿Está seguro de que desea marcar este artículo como terminado?",
"MessageConfirmRemoveBookmark": "¿Estás seguro de que quieres eliminar el marcador?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Descartar Progreso",
"MessageDownloadCompleteProcessing": "Descarga Completada. Procesando...",
"MessageDownloading": "Descargando...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Error al crear marcador",
"ToastBookmarkRemoveFailed": "Error al eliminar marcador",
"ToastBookmarkUpdateFailed": "Error al actualizar el marcador",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Error al marcar como Terminado",
"ToastItemMarkedAsNotFinishedFailed": "Error al marcar como No Terminado",
"ToastPlaylistCreateFailed": "Error al crear la lista de reproducción.",
"ToastPodcastCreateFailed": "Error al crear podcast",
"ToastPodcastCreateSuccess": "Podcast creado",
"ToastRSSFeedCloseFailed": "Error al cerrar fuente RSS",
"ToastRSSFeedCloseSuccess": "Fuente RSS cerrada"
}
"ToastRSSFeedCloseSuccess": "Fuente RSS cerrada",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Collection",
"HeaderCollectionItems": "Entrées de la Collection",
"HeaderConnectionStatus": "Status de Connexion",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Détails",
"HeaderDownloads": "Téléchargements",
"HeaderEbookFiles": "Fichier des livres numériques",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Table des Matières",
"HeaderUserInterfaceSettings": "Paramètres de l'Interface",
"HeaderYourStats": "Vos Statistiques",
"LabelAddToPlaylist": "Ajouter à la Liste de Lecture",
"LabelAdded": "Ajouté",
"LabelAddedAt": "Date dajout",
"LabelAddToPlaylist": "Ajouter à la Liste de Lecture",
"LabelAll": "Tout",
"LabelAllowSeekingOnMediaControls": "Autoriser la Recherche de Position depuis la Notification du Lecteur Multimédia",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Auteur",
"LabelAuthorFirstLast": "Auteur (Prénom Nom)",
"LabelAuthorLastFirst": "Auteur (Nom, Prénom)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "Lorsque le minuteur nocturne de termine, relire l'élément fera un saut en arrière.",
"LabelAutoSleepTimerHelp": "Lorsqu'un éléments est lu entre l'heure de début et de fin, un minuteur nocturne se lance automatiquement.",
"LabelBooks": "Livres",
"LabelChapters": "Chapitres",
"LabelChapterTrack": "Piste des Chapitres",
"LabelChapters": "Chapitres",
"LabelClosePlayer": "Fermer le lecteur",
"LabelCollapseSeries": "Réduire les séries",
"LabelComplete": "Complet",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "Lorsque le minuteur est redémarré, l'appareil vibre. Sélectionner pour désactiver les vibrations..",
"LabelDiscover": "Découvrir",
"LabelDownload": "Téléchargement",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Téléchargé",
"LabelDuration": "Durée",
"LabelEbook": "Livre numérique",
@ -146,8 +150,8 @@
"LabelHeavy": "Puissant",
"LabelHigh": "Importante",
"LabelHost": "Hôte",
"LabelIncomplete": "Incomplet",
"LabelInProgress": "En cours",
"LabelIncomplete": "Incomplet",
"LabelInternalAppStorage": "Stockage Interne de l'application",
"LabelJumpBackwardsTime": "Durée du saut arrière",
"LabelJumpForwardsTime": "Durée du saut avant",
@ -170,6 +174,7 @@
"LabelName": "Nom",
"LabelNarrator": "Narrateur",
"LabelNarrators": "Narrateurs",
"LabelNever": "Never",
"LabelNewestAuthors": "Auteurs Recents",
"LabelNewestEpisodes": "Épisodes Récents",
"LabelNo": "Non",
@ -188,15 +193,15 @@
"LabelProgress": "Progression",
"LabelPubDate": "Date de publication",
"LabelPublishYear": "Année dédition",
"LabelRead": "Lire",
"LabelReadAgain": "Re-lire",
"LabelRecentlyAdded": "Ajouts Récents",
"LabelRecentSeries": "Series Recentes",
"LabelRemoveFromPlaylist": "Supprimer de la Liste de Lecture",
"LabelRSSFeedCustomOwnerEmail": "Courriel du propriétaire personnalisé",
"LabelRSSFeedCustomOwnerName": "Nom propriétaire personnalisé",
"LabelRSSFeedPreventIndexing": "Empêcher lindexation",
"LabelRSSFeedSlug": "Identificateur dadresse du Flux RSS ",
"LabelRead": "Lire",
"LabelReadAgain": "Re-lire",
"LabelRecentSeries": "Series Recentes",
"LabelRecentlyAdded": "Ajouts Récents",
"LabelRemoveFromPlaylist": "Supprimer de la Liste de Lecture",
"LabelScaleElapsedTimeBySpeed": "Traduire le temps restant en fonction de la vitesse de lecture",
"LabelSeason": "Saison",
"LabelSelectADevice": "Sélectionner un Appareil",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "minutes",
"LabelStatsMinutesListening": "Minutes découte",
"LabelStatsWeekListening": "Écoute de la semaine",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Étiquette",
"LabelTags": "Étiquettes",
"LabelTheme": "Thème",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Supprimer l'épisode local \"{0}\" de votre appareil ? Le fichier sur le serveur ne sera pas affecté.",
"MessageConfirmDeleteLocalFiles": "Supprimer les fichiers locaux de cet élément de votre appareil ? Les fichiers sur le serveur ainsi que votre progression ne serons pas affectés.",
"MessageConfirmDiscardProgress": "Êtes vous sûre de vouloir supprimer votre progression ?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Êtes vous sûre de vouloir marquer cette élement comme terminé ?",
"MessageConfirmRemoveBookmark": "Êtes vous sûre de vouloir supprimer le marque-page ?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Supprimer la progression",
"MessageDownloadCompleteProcessing": "Téléchargements terminé. Analyse..",
"MessageDownloading": "Téléchargement...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Échec de la création de marque-page",
"ToastBookmarkRemoveFailed": "Échec de la suppression de marque-page",
"ToastBookmarkUpdateFailed": "Échec de la mise à jour de marsue-page",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Échec de lannotation terminée",
"ToastItemMarkedAsNotFinishedFailed": "Échec de lannotation non-terminée",
"ToastPlaylistCreateFailed": "Échec de la création de la liste de lecture",
"ToastPodcastCreateFailed": "Échec de la création du Podcast",
"ToastPodcastCreateSuccess": "Podcast créé",
"ToastRSSFeedCloseFailed": "Échec de la fermeture du flux RSS",
"ToastRSSFeedCloseSuccess": "Flux RSS fermé"
}
"ToastRSSFeedCloseSuccess": "Flux RSS fermé",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Collection",
"HeaderCollectionItems": "Collection Items",
"HeaderConnectionStatus": "Connection Status",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Details",
"HeaderDownloads": "Downloads",
"HeaderEbookFiles": "Ebook Files",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Table of Contents",
"HeaderUserInterfaceSettings": "User Interface Settings",
"HeaderYourStats": "Your Stats",
"LabelAddToPlaylist": "Add to Playlist",
"LabelAdded": "Added",
"LabelAddedAt": "Added At",
"LabelAddToPlaylist": "Add to Playlist",
"LabelAll": "All",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Author",
"LabelAuthorFirstLast": "Author (First Last)",
"LabelAuthorLastFirst": "Author (Last, First)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
"LabelBooks": "Books",
"LabelChapters": "Chapters",
"LabelChapterTrack": "Chapter Track",
"LabelChapters": "Chapters",
"LabelClosePlayer": "Close player",
"LabelCollapseSeries": "Collapse Series",
"LabelComplete": "Complete",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
"LabelDiscover": "Discover",
"LabelDownload": "Download",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Downloaded",
"LabelDuration": "Duration",
"LabelEbook": "Ebook",
@ -146,8 +150,8 @@
"LabelHeavy": "Heavy",
"LabelHigh": "High",
"LabelHost": "Host",
"LabelIncomplete": "Incomplete",
"LabelInProgress": "In Progress",
"LabelIncomplete": "Incomplete",
"LabelInternalAppStorage": "Internal App Storage",
"LabelJumpBackwardsTime": "Jump backwards time",
"LabelJumpForwardsTime": "Jump forwards time",
@ -170,6 +174,7 @@
"LabelName": "Name",
"LabelNarrator": "Narrator",
"LabelNarrators": "Narrators",
"LabelNever": "Never",
"LabelNewestAuthors": "Newest Authors",
"LabelNewestEpisodes": "Newest Episodes",
"LabelNo": "No",
@ -188,15 +193,15 @@
"LabelProgress": "Progress",
"LabelPubDate": "Pub Date",
"LabelPublishYear": "Publish Year",
"LabelRead": "Read",
"LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Custom owner Email",
"LabelRSSFeedCustomOwnerName": "Custom owner Name",
"LabelRSSFeedPreventIndexing": "Prevent Indexing",
"LabelRSSFeedSlug": "RSS Feed Slug",
"LabelRead": "Read",
"LabelReadAgain": "Read Again",
"LabelRecentSeries": "Recent Series",
"LabelRecentlyAdded": "Recently Added",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
"LabelSeason": "Season",
"LabelSelectADevice": "Select a device",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "minutes",
"LabelStatsMinutesListening": "Minutes Listening",
"LabelStatsWeekListening": "Week Listening",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Tag",
"LabelTags": "Tags",
"LabelTheme": "Theme",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.",
"MessageConfirmDeleteLocalFiles": "Remove local files of this item from your device? The files on the server and your progress will be unaffected.",
"MessageConfirmDiscardProgress": "Are you sure you want to reset your progress?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Discard Progress",
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
"MessageDownloading": "Downloading...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Failed to create bookmark",
"ToastBookmarkRemoveFailed": "Failed to remove bookmark",
"ToastBookmarkUpdateFailed": "Failed to update bookmark",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Failed to mark as Finished",
"ToastItemMarkedAsNotFinishedFailed": "Failed to mark as Not Finished",
"ToastPlaylistCreateFailed": "Failed to create playlist",
"ToastPodcastCreateFailed": "Failed to create podcast",
"ToastPodcastCreateSuccess": "Podcast created successfully",
"ToastRSSFeedCloseFailed": "Failed to close RSS feed",
"ToastRSSFeedCloseSuccess": "RSS feed closed"
}
"ToastRSSFeedCloseSuccess": "RSS feed closed",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Collection",
"HeaderCollectionItems": "Collection Items",
"HeaderConnectionStatus": "Connection Status",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Details",
"HeaderDownloads": "Downloads",
"HeaderEbookFiles": "Ebook Files",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Table of Contents",
"HeaderUserInterfaceSettings": "User Interface Settings",
"HeaderYourStats": "Your Stats",
"LabelAddToPlaylist": "Add to Playlist",
"LabelAdded": "Added",
"LabelAddedAt": "Added At",
"LabelAddToPlaylist": "Add to Playlist",
"LabelAll": "All",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Author",
"LabelAuthorFirstLast": "Author (First Last)",
"LabelAuthorLastFirst": "Author (Last, First)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
"LabelBooks": "Books",
"LabelChapters": "Chapters",
"LabelChapterTrack": "Chapter Track",
"LabelChapters": "Chapters",
"LabelClosePlayer": "Close player",
"LabelCollapseSeries": "Collapse Series",
"LabelComplete": "Complete",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
"LabelDiscover": "Discover",
"LabelDownload": "Download",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Downloaded",
"LabelDuration": "Duration",
"LabelEbook": "Ebook",
@ -146,8 +150,8 @@
"LabelHeavy": "Heavy",
"LabelHigh": "High",
"LabelHost": "Host",
"LabelIncomplete": "Incomplete",
"LabelInProgress": "In Progress",
"LabelIncomplete": "Incomplete",
"LabelInternalAppStorage": "Internal App Storage",
"LabelJumpBackwardsTime": "Jump backwards time",
"LabelJumpForwardsTime": "Jump forwards time",
@ -170,6 +174,7 @@
"LabelName": "Name",
"LabelNarrator": "Narrator",
"LabelNarrators": "Narrators",
"LabelNever": "Never",
"LabelNewestAuthors": "Newest Authors",
"LabelNewestEpisodes": "Newest Episodes",
"LabelNo": "No",
@ -188,15 +193,15 @@
"LabelProgress": "Progress",
"LabelPubDate": "Pub Date",
"LabelPublishYear": "Publish Year",
"LabelRead": "Read",
"LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Custom owner Email",
"LabelRSSFeedCustomOwnerName": "Custom owner Name",
"LabelRSSFeedPreventIndexing": "Prevent Indexing",
"LabelRSSFeedSlug": "RSS Feed Slug",
"LabelRead": "Read",
"LabelReadAgain": "Read Again",
"LabelRecentSeries": "Recent Series",
"LabelRecentlyAdded": "Recently Added",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
"LabelSeason": "Season",
"LabelSelectADevice": "Select a device",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "minutes",
"LabelStatsMinutesListening": "Minutes Listening",
"LabelStatsWeekListening": "Week Listening",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Tag",
"LabelTags": "Tags",
"LabelTheme": "Theme",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.",
"MessageConfirmDeleteLocalFiles": "Remove local files of this item from your device? The files on the server and your progress will be unaffected.",
"MessageConfirmDiscardProgress": "Are you sure you want to reset your progress?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Discard Progress",
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
"MessageDownloading": "Downloading...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Failed to create bookmark",
"ToastBookmarkRemoveFailed": "Failed to remove bookmark",
"ToastBookmarkUpdateFailed": "Failed to update bookmark",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Failed to mark as Finished",
"ToastItemMarkedAsNotFinishedFailed": "Failed to mark as Not Finished",
"ToastPlaylistCreateFailed": "Failed to create playlist",
"ToastPodcastCreateFailed": "Failed to create podcast",
"ToastPodcastCreateSuccess": "Podcast created successfully",
"ToastRSSFeedCloseFailed": "Failed to close RSS feed",
"ToastRSSFeedCloseSuccess": "RSS feed closed"
}
"ToastRSSFeedCloseSuccess": "RSS feed closed",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Kolekcija",
"HeaderCollectionItems": "Stvari u kolekciji",
"HeaderConnectionStatus": "Connection Status",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Detalji",
"HeaderDownloads": "Downloads",
"HeaderEbookFiles": "Ebook Files",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Table of Contents",
"HeaderUserInterfaceSettings": "User Interface Settings",
"HeaderYourStats": "Tvoja statistika",
"LabelAddToPlaylist": "Add to Playlist",
"LabelAdded": "Added",
"LabelAddedAt": "Added At",
"LabelAddToPlaylist": "Add to Playlist",
"LabelAll": "All",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Autor",
"LabelAuthorFirstLast": "Author (First Last)",
"LabelAuthorLastFirst": "Author (Last, First)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
"LabelBooks": "Knjige",
"LabelChapters": "Chapters",
"LabelChapterTrack": "Chapter Track",
"LabelChapters": "Chapters",
"LabelClosePlayer": "Close player",
"LabelCollapseSeries": "Collapse Series",
"LabelComplete": "Complete",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
"LabelDiscover": "Discover",
"LabelDownload": "Preuzmi",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Downloaded",
"LabelDuration": "Trajanje",
"LabelEbook": "Ebook",
@ -146,8 +150,8 @@
"LabelHeavy": "Heavy",
"LabelHigh": "High",
"LabelHost": "Host",
"LabelIncomplete": "Nepotpuno",
"LabelInProgress": "U tijeku",
"LabelIncomplete": "Nepotpuno",
"LabelInternalAppStorage": "Internal App Storage",
"LabelJumpBackwardsTime": "Jump backwards time",
"LabelJumpForwardsTime": "Jump forwards time",
@ -170,6 +174,7 @@
"LabelName": "Ime",
"LabelNarrator": "Narrator",
"LabelNarrators": "Naratori",
"LabelNever": "Never",
"LabelNewestAuthors": "Newest Authors",
"LabelNewestEpisodes": "Newest Episodes",
"LabelNo": "No",
@ -188,15 +193,15 @@
"LabelProgress": "Napredak",
"LabelPubDate": "Datam izdavanja",
"LabelPublishYear": "Godina izdavanja",
"LabelRead": "Read",
"LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Custom owner Email",
"LabelRSSFeedCustomOwnerName": "Custom owner Name",
"LabelRSSFeedPreventIndexing": "Prevent Indexing",
"LabelRSSFeedSlug": "RSS Feed Slug",
"LabelRead": "Read",
"LabelReadAgain": "Read Again",
"LabelRecentSeries": "Recent Series",
"LabelRecentlyAdded": "Recently Added",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
"LabelSeason": "Sezona",
"LabelSelectADevice": "Select a device",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "minute",
"LabelStatsMinutesListening": "Minuta odslušano",
"LabelStatsWeekListening": "Tjedno slušanje",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Tag",
"LabelTags": "Tags",
"LabelTheme": "Theme",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.",
"MessageConfirmDeleteLocalFiles": "Remove local files of this item from your device? The files on the server and your progress will be unaffected.",
"MessageConfirmDiscardProgress": "Are you sure you want to reset your progress?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Discard Progress",
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
"MessageDownloading": "Downloading...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Kreiranje knjižne bilješke neuspješno",
"ToastBookmarkRemoveFailed": "Brisanje knjižne bilješke nauspješno",
"ToastBookmarkUpdateFailed": "Aktualizacija knjižne bilješke neuspješna",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Označi kao Završeno neuspješno",
"ToastItemMarkedAsNotFinishedFailed": "Označi kao Nezavršeno neuspješno",
"ToastPlaylistCreateFailed": "Failed to create playlist",
"ToastPodcastCreateFailed": "Neuspješno kreiranje podcasta",
"ToastPodcastCreateSuccess": "Podcast uspješno kreiran",
"ToastRSSFeedCloseFailed": "Neuspješno zatvaranje RSS Feeda",
"ToastRSSFeedCloseSuccess": "RSS Feed zatvoren"
}
"ToastRSSFeedCloseSuccess": "RSS Feed zatvoren",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Gyűjtemény",
"HeaderCollectionItems": "Gyűjtemény elemek",
"HeaderConnectionStatus": "Kapcsolat állapota",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Részletek",
"HeaderDownloads": "Letöltések",
"HeaderEbookFiles": "E-könyv fájlok",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Tartalomjegyzék",
"HeaderUserInterfaceSettings": "Felhasználói felület beállításai",
"HeaderYourStats": "Saját statisztikák",
"LabelAddToPlaylist": "Hozzáadás a lejátszási listához",
"LabelAdded": "Hozzáadva",
"LabelAddedAt": "Hozzáadva ekkor",
"LabelAddToPlaylist": "Hozzáadás a lejátszási listához",
"LabelAll": "Összes",
"LabelAllowSeekingOnMediaControls": "Pozíció keresés engedélyezése a média értesítési vezérlőkön",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Szerző",
"LabelAuthorFirstLast": "Szerző (Keresztnév Vezetéknév)",
"LabelAuthorLastFirst": "Szerző (Vezetéknév, Keresztnév)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "Amikor az automatikus alvásidőzítő befejeződik, az elem újrajátszásakor automatikusan visszatekeri a pozíciót.",
"LabelAutoSleepTimerHelp": "Amikor a megadott kezdési és befejezési idők között média lejátszása történik, egy alvásidőzítő automatikusan elindul.",
"LabelBooks": "Könyv",
"LabelChapters": "Fejezetek",
"LabelChapterTrack": "Fejezet sáv",
"LabelChapters": "Fejezetek",
"LabelClosePlayer": "Lejátszó bezárása",
"LabelCollapseSeries": "Sorozatok összecsukása",
"LabelComplete": "Kész",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "Amikor az alvásidőzítő visszaállításra kerül, az eszköz rezegni fog. Engedélyezze ezt a beállítást, hogy ne rezegjen az alvásidőzítő visszaállításakor.",
"LabelDiscover": "Felfedezés",
"LabelDownload": "Letöltés",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Letöltve",
"LabelDuration": "Időtartam",
"LabelEbook": "E-könyv",
@ -146,8 +150,8 @@
"LabelHeavy": "Nehéz",
"LabelHigh": "Magas",
"LabelHost": "Házigazda",
"LabelIncomplete": "Befejezetlen",
"LabelInProgress": "Folyamatban",
"LabelIncomplete": "Befejezetlen",
"LabelInternalAppStorage": "Belső alkalmazástároló",
"LabelJumpBackwardsTime": "Visszaugrás ideje",
"LabelJumpForwardsTime": "Előreugrás ideje",
@ -170,6 +174,7 @@
"LabelName": "Név",
"LabelNarrator": "Előadó",
"LabelNarrators": "Előadók",
"LabelNever": "Never",
"LabelNewestAuthors": "Legújabb szerzők",
"LabelNewestEpisodes": "Legújabb epizódok",
"LabelNo": "Nem",
@ -188,15 +193,15 @@
"LabelProgress": "Haladás",
"LabelPubDate": "Közzététel dátuma",
"LabelPublishYear": "Kiadás éve",
"LabelRead": "Olvasás",
"LabelReadAgain": "Újraolvasás",
"LabelRecentlyAdded": "Legutóbb hozzáadva",
"LabelRecentSeries": "Legutóbbi sorozatok",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Egyéni tulajdonos e-mail",
"LabelRSSFeedCustomOwnerName": "Egyéni tulajdonos neve",
"LabelRSSFeedPreventIndexing": "Indexelés megakadályozása",
"LabelRSSFeedSlug": "RSS hírcsatorna rövid cím",
"LabelRead": "Olvasás",
"LabelReadAgain": "Újraolvasás",
"LabelRecentSeries": "Legutóbbi sorozatok",
"LabelRecentlyAdded": "Legutóbb hozzáadva",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelScaleElapsedTimeBySpeed": "Eltelt idő skálázása sebesség szerint",
"LabelSeason": "Évad",
"LabelSelectADevice": "Eszköz kiválasztása",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "perc",
"LabelStatsMinutesListening": "Hallgatás percekben",
"LabelStatsWeekListening": "Heti hallgatás",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Címke",
"LabelTags": "Címkék",
"LabelTheme": "Téma",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "\"{0}\" helyi epizód eltávolítása az eszközről? A szerveren lévő fájl nem érintett.",
"MessageConfirmDeleteLocalFiles": "Ezen elem helyi fájljainak eltávolítása az eszközről? A szerveren lévő fájlok és a haladás nem érintettek.",
"MessageConfirmDiscardProgress": "Biztosan alaphelyzetbe akarja állítani a haladást?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Biztosan befejezettnek jelöli ezt az elemet?",
"MessageConfirmRemoveBookmark": "Biztosan eltávolítja a könyvjelzőt?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Haladás elvetése",
"MessageDownloadCompleteProcessing": "Letöltés kész. Feldolgozás...",
"MessageDownloading": "Letöltés...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "A könyvjelző létrehozása sikertelen",
"ToastBookmarkRemoveFailed": "A könyvjelző eltávolítása sikertelen",
"ToastBookmarkUpdateFailed": "A könyvjelző frissítése sikertelen",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Az elem befejezettnek jelölése sikertelen",
"ToastItemMarkedAsNotFinishedFailed": "Az elem befejezetlennek jelölése sikertelen",
"ToastPlaylistCreateFailed": "A lejátszási lista létrehozása sikertelen",
"ToastPodcastCreateFailed": "A podcast létrehozása sikertelen",
"ToastPodcastCreateSuccess": "A podcast sikeresen létrehozva",
"ToastRSSFeedCloseFailed": "Az RSS hírcsatorna bezárása sikertelen",
"ToastRSSFeedCloseSuccess": "Az RSS hírcsatorna sikeresen bezárva"
}
"ToastRSSFeedCloseSuccess": "Az RSS hírcsatorna sikeresen bezárva",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Raccolta",
"HeaderCollectionItems": "Elementi della Raccolta",
"HeaderConnectionStatus": "Stato Connessione",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Dettagli",
"HeaderDownloads": "Downloads",
"HeaderEbookFiles": "Ebook File",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Tabella dei Contenuti",
"HeaderUserInterfaceSettings": "Impostazioni Interfaccia Utente",
"HeaderYourStats": "Statistiche Personali",
"LabelAddToPlaylist": "aggiungi alla Playlist",
"LabelAdded": "Aggiunto",
"LabelAddedAt": "Aggiunto il",
"LabelAddToPlaylist": "aggiungi alla Playlist",
"LabelAll": "Tutti",
"LabelAllowSeekingOnMediaControls": "Consenti la ricerca della posizione sui controlli delle notifiche multimediali",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Autore",
"LabelAuthorFirstLast": "Autore (Per Nome)",
"LabelAuthorLastFirst": "Autori (Per Cognome)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "Al termine del timer di spegnimento automatico, la riproduzione dell'elemento riavvolgerà automaticamente la tua posizione.",
"LabelAutoSleepTimerHelp": "Durante la riproduzione di contenuti multimediali tra l'ora di inizio e quella di fine specificate, verrà avviato automaticamente un timer di spegnimento.",
"LabelBooks": "Libri",
"LabelChapters": "Capitoli",
"LabelChapterTrack": "Traccia Capitolo",
"LabelChapters": "Capitoli",
"LabelClosePlayer": "Chiudi player",
"LabelCollapseSeries": "Comprimi Serie",
"LabelComplete": "Completo",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "Quando il timer di spegnimento viene reimpostato, il dispositivo vibrerà. Abilita questa impostazione per non vibrare quando il timer di spegnimento viene reimpostato.",
"LabelDiscover": "Scopri",
"LabelDownload": "Download",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Scaricati",
"LabelDuration": "Durata",
"LabelEbook": "Ebook",
@ -146,8 +150,8 @@
"LabelHeavy": "Forte",
"LabelHigh": "Alto",
"LabelHost": "Host",
"LabelIncomplete": "Incompleta",
"LabelInProgress": "In Corso",
"LabelIncomplete": "Incompleta",
"LabelInternalAppStorage": "Archiviazione interna delle app",
"LabelJumpBackwardsTime": "Vai indietro nel tempo",
"LabelJumpForwardsTime": "Vai avanti nel tempo",
@ -170,6 +174,7 @@
"LabelName": "Nome",
"LabelNarrator": "Narratore",
"LabelNarrators": "Narratori",
"LabelNever": "Never",
"LabelNewestAuthors": "Nuovi Autori",
"LabelNewestEpisodes": "Nuovi Episodi",
"LabelNo": "No",
@ -188,15 +193,15 @@
"LabelProgress": "Cominciati",
"LabelPubDate": "Data Pubblicazione",
"LabelPublishYear": "Anno Pubblicazione",
"LabelRead": "Leggi",
"LabelReadAgain": "Leggi Ancora",
"LabelRecentlyAdded": "Aggiunti Recentemente",
"LabelRecentSeries": "Serie Recenti",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Email del proprietario personalizzato",
"LabelRSSFeedCustomOwnerName": "Nome del proprietario personalizzato",
"LabelRSSFeedPreventIndexing": "Impedisci l'indicizzazione",
"LabelRSSFeedSlug": "RSS Feed Slug",
"LabelRead": "Leggi",
"LabelReadAgain": "Leggi Ancora",
"LabelRecentSeries": "Serie Recenti",
"LabelRecentlyAdded": "Aggiunti Recentemente",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelScaleElapsedTimeBySpeed": "Scala il tempo trascorso in base alla velocità",
"LabelSeason": "Stagione",
"LabelSelectADevice": "Seletiona dispositivo",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "Minuti",
"LabelStatsMinutesListening": "Ascolto in Minuti",
"LabelStatsWeekListening": "Ascolto Settimanale",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Tag",
"LabelTags": "Tags",
"LabelTheme": "Tema",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Rimuovi episodi locali \"{0}\" dal tuo dispositivo? i file sul server non verranno toccati.",
"MessageConfirmDeleteLocalFiles": "Remove i file locali dell'oggetto? i file sul server e i progressi non verranno toccati.",
"MessageConfirmDiscardProgress": "Sei sicuro di voler resettare i tuoi progressi?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Sei sicuro di voler contrassegnare questo elemento come finito?",
"MessageConfirmRemoveBookmark": "Sei sicuro di voler rimuovere il segnalibro?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Elimina Progressi",
"MessageDownloadCompleteProcessing": "Download completato. Elaborazione...",
"MessageDownloading": "Scaricamento...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Creazione segnalibro fallita",
"ToastBookmarkRemoveFailed": "Rimozione Segnalibro fallita",
"ToastBookmarkUpdateFailed": "Aggiornamento Segnalibro fallito",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Errore nel segnare il file come finito",
"ToastItemMarkedAsNotFinishedFailed": "Errore nel segnare il file come non completo",
"ToastPlaylistCreateFailed": "Errore Creazione playlist",
"ToastPodcastCreateFailed": "Errore Creazione podcast",
"ToastPodcastCreateSuccess": "Podcast creato Correttamente",
"ToastRSSFeedCloseFailed": "Errore chiusura RSS feed",
"ToastRSSFeedCloseSuccess": "RSS feed chiuso"
}
"ToastRSSFeedCloseSuccess": "RSS feed chiuso",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Kolekcija",
"HeaderCollectionItems": "Kolekcijos elementai",
"HeaderConnectionStatus": "Connection Status",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Detalės",
"HeaderDownloads": "Downloads",
"HeaderEbookFiles": "Eknygos failai",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Turinys",
"HeaderUserInterfaceSettings": "User Interface Settings",
"HeaderYourStats": "Jūsų statistika",
"LabelAddToPlaylist": "Pridėti į grojaraštį",
"LabelAdded": "Pridėta",
"LabelAddedAt": "Pridėta {0}",
"LabelAddToPlaylist": "Pridėti į grojaraštį",
"LabelAll": "Visi",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Autorius",
"LabelAuthorFirstLast": "Autorius (Vardas Pavardė)",
"LabelAuthorLastFirst": "Autorius (Pavardė, Vardas)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
"LabelBooks": "Knygos",
"LabelChapters": "Skyriai",
"LabelChapterTrack": "Chapter Track",
"LabelChapters": "Skyriai",
"LabelClosePlayer": "Uždaryti grotuvą",
"LabelCollapseSeries": "Suskleisti seriją",
"LabelComplete": "Baigta",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
"LabelDiscover": "Discover",
"LabelDownload": "Atsisiųsti",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Downloaded",
"LabelDuration": "Trukmė",
"LabelEbook": "Elektroninė knyga",
@ -146,8 +150,8 @@
"LabelHeavy": "Heavy",
"LabelHigh": "High",
"LabelHost": "Serveris",
"LabelIncomplete": "Nebaigta",
"LabelInProgress": "Vyksta",
"LabelIncomplete": "Nebaigta",
"LabelInternalAppStorage": "Internal App Storage",
"LabelJumpBackwardsTime": "Jump backwards time",
"LabelJumpForwardsTime": "Jump forwards time",
@ -170,6 +174,7 @@
"LabelName": "Pavadinimas",
"LabelNarrator": "Skaitytojas",
"LabelNarrators": "Skaitytojai",
"LabelNever": "Never",
"LabelNewestAuthors": "Newest Authors",
"LabelNewestEpisodes": "Newest Episodes",
"LabelNo": "No",
@ -188,15 +193,15 @@
"LabelProgress": "Progresas",
"LabelPubDate": "Publikavimo data",
"LabelPublishYear": "Leidimo metai",
"LabelRead": "Skaityta",
"LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Pasirinktinis savininko el. paštas",
"LabelRSSFeedCustomOwnerName": "Pasirinktinis savininko vardas",
"LabelRSSFeedPreventIndexing": "Neleisti indeksuoti",
"LabelRSSFeedSlug": "RSS srauto identifikatorius",
"LabelRead": "Skaityta",
"LabelReadAgain": "Read Again",
"LabelRecentSeries": "Recent Series",
"LabelRecentlyAdded": "Recently Added",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
"LabelSeason": "Sezonas",
"LabelSelectADevice": "Select a device",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "minutės",
"LabelStatsMinutesListening": "Klausyta minučių",
"LabelStatsWeekListening": "Savaitės klausymas",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Žyma",
"LabelTags": "Žymos",
"LabelTheme": "Tema",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.",
"MessageConfirmDeleteLocalFiles": "Remove local files of this item from your device? The files on the server and your progress will be unaffected.",
"MessageConfirmDiscardProgress": "Are you sure you want to reset your progress?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Discard Progress",
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
"MessageDownloading": "Downloading...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Žymos sukurti nepavyko",
"ToastBookmarkRemoveFailed": "Žymos pašalinti nepavyko",
"ToastBookmarkUpdateFailed": "Žymos atnaujinti nepavyko",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Pažymėti kaip Baigta nepavyko",
"ToastItemMarkedAsNotFinishedFailed": "Pažymėti kaip Nebaigta nepavyko",
"ToastPlaylistCreateFailed": "Grojaraščio sukurti nepavyko",
"ToastPodcastCreateFailed": "Tinklalaidės sukurti nepavyko",
"ToastPodcastCreateSuccess": "Tinklalaidė sėkmingai sukurta",
"ToastRSSFeedCloseFailed": "RSS srauto uždaryti nepavyko",
"ToastRSSFeedCloseSuccess": "RSS srautas uždarytas"
}
"ToastRSSFeedCloseSuccess": "RSS srautas uždarytas",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Collectie",
"HeaderCollectionItems": "Collectie-objecten",
"HeaderConnectionStatus": "Connection Status",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Details",
"HeaderDownloads": "Downloads",
"HeaderEbookFiles": "Ebook Files",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Inhoudsopgave",
"HeaderUserInterfaceSettings": "User Interface Settings",
"HeaderYourStats": "Je statistieken",
"LabelAddToPlaylist": "Toevoegen aan afspeellijst",
"LabelAdded": "Toegevoegd",
"LabelAddedAt": "Toegevoegd op",
"LabelAddToPlaylist": "Toevoegen aan afspeellijst",
"LabelAll": "Alle",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Auteur",
"LabelAuthorFirstLast": "Auteur (Voornaam Achternaam)",
"LabelAuthorLastFirst": "Auteur (Achternaam, Voornaam)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
"LabelBooks": "Boeken",
"LabelChapters": "Hoofdstukken",
"LabelChapterTrack": "Chapter Track",
"LabelChapters": "Hoofdstukken",
"LabelClosePlayer": "Sluit speler",
"LabelCollapseSeries": "Series inklappen",
"LabelComplete": "Compleet",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
"LabelDiscover": "Discover",
"LabelDownload": "Download",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Downloaded",
"LabelDuration": "Duur",
"LabelEbook": "Ebook",
@ -146,8 +150,8 @@
"LabelHeavy": "Heavy",
"LabelHigh": "High",
"LabelHost": "Host",
"LabelIncomplete": "Incompleet",
"LabelInProgress": "Bezig",
"LabelIncomplete": "Incompleet",
"LabelInternalAppStorage": "Internal App Storage",
"LabelJumpBackwardsTime": "Jump backwards time",
"LabelJumpForwardsTime": "Jump forwards time",
@ -170,6 +174,7 @@
"LabelName": "Naam",
"LabelNarrator": "Verteller",
"LabelNarrators": "Vertellers",
"LabelNever": "Never",
"LabelNewestAuthors": "Newest Authors",
"LabelNewestEpisodes": "Newest Episodes",
"LabelNo": "No",
@ -188,15 +193,15 @@
"LabelProgress": "Voortgang",
"LabelPubDate": "Publicatiedatum",
"LabelPublishYear": "Jaar van uitgave",
"LabelRead": "Lees",
"LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Aangepast e-mailadres eigenaar",
"LabelRSSFeedCustomOwnerName": "Aangepaste naam eigenaar",
"LabelRSSFeedPreventIndexing": "Voorkom indexering",
"LabelRSSFeedSlug": "RSS-feed slug",
"LabelRead": "Lees",
"LabelReadAgain": "Read Again",
"LabelRecentSeries": "Recent Series",
"LabelRecentlyAdded": "Recently Added",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
"LabelSeason": "Seizoen",
"LabelSelectADevice": "Select a device",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "minuten",
"LabelStatsMinutesListening": "Minuten luisterend",
"LabelStatsWeekListening": "Week luisterend",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Tag",
"LabelTags": "Tags",
"LabelTheme": "Thema",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.",
"MessageConfirmDeleteLocalFiles": "Remove local files of this item from your device? The files on the server and your progress will be unaffected.",
"MessageConfirmDiscardProgress": "Are you sure you want to reset your progress?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Discard Progress",
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
"MessageDownloading": "Downloading...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Aanmaken boekwijzer mislukt",
"ToastBookmarkRemoveFailed": "Verwijderen boekwijzer mislukt",
"ToastBookmarkUpdateFailed": "Bijwerken boekwijzer mislukt",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Markeren als Voltooid mislukt",
"ToastItemMarkedAsNotFinishedFailed": "Markeren als Niet Voltooid mislukt",
"ToastPlaylistCreateFailed": "Aanmaken afspeellijst mislukt",
"ToastPodcastCreateFailed": "Podcast aanmaken mislukt",
"ToastPodcastCreateSuccess": "Podcast aangemaakt",
"ToastRSSFeedCloseFailed": "Sluiten RSS-feed mislukt",
"ToastRSSFeedCloseSuccess": "RSS-feed gesloten"
}
"ToastRSSFeedCloseSuccess": "RSS-feed gesloten",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Samlinger",
"HeaderCollectionItems": "Samlingsgjenstander",
"HeaderConnectionStatus": "Connection Status",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Detaljer",
"HeaderDownloads": "Downloads",
"HeaderEbookFiles": "Ebook filer",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Innholdsfortegnelse",
"HeaderUserInterfaceSettings": "User Interface Settings",
"HeaderYourStats": "Din statistikk",
"LabelAddToPlaylist": "Legg til i spilleliste",
"LabelAdded": "Lagt til",
"LabelAddedAt": "Dato lagt til ",
"LabelAddToPlaylist": "Legg til i spilleliste",
"LabelAll": "Alle",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Forfatter",
"LabelAuthorFirstLast": "Forfatter (Fornavn Etternavn)",
"LabelAuthorLastFirst": "Forfatter (Etternavn Fornavn)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
"LabelBooks": "Bøker",
"LabelChapters": "Kapitler",
"LabelChapterTrack": "Chapter Track",
"LabelChapters": "Kapitler",
"LabelClosePlayer": "Lukk spiller",
"LabelCollapseSeries": "Minimer serier",
"LabelComplete": "Fullfør",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
"LabelDiscover": "Discover",
"LabelDownload": "Last ned",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Downloaded",
"LabelDuration": "Varighet",
"LabelEbook": "Ebok",
@ -146,8 +150,8 @@
"LabelHeavy": "Heavy",
"LabelHigh": "High",
"LabelHost": "Tjener",
"LabelIncomplete": "Ufullstendig",
"LabelInProgress": "I gang",
"LabelIncomplete": "Ufullstendig",
"LabelInternalAppStorage": "Internal App Storage",
"LabelJumpBackwardsTime": "Jump backwards time",
"LabelJumpForwardsTime": "Jump forwards time",
@ -170,6 +174,7 @@
"LabelName": "Navn",
"LabelNarrator": "Forteller",
"LabelNarrators": "Fortellere",
"LabelNever": "Never",
"LabelNewestAuthors": "Newest Authors",
"LabelNewestEpisodes": "Newest Episodes",
"LabelNo": "No",
@ -188,15 +193,15 @@
"LabelProgress": "Framgang",
"LabelPubDate": "Publiseringsdato",
"LabelPublishYear": "Publikasjonsår",
"LabelRead": "Les",
"LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Tilpasset eier Epost",
"LabelRSSFeedCustomOwnerName": "Tilpasset eier Navn",
"LabelRSSFeedPreventIndexing": "Forhindre indeksering",
"LabelRSSFeedSlug": "RSS Feed Slug",
"LabelRead": "Les",
"LabelReadAgain": "Read Again",
"LabelRecentSeries": "Recent Series",
"LabelRecentlyAdded": "Recently Added",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
"LabelSeason": "Sesong",
"LabelSelectADevice": "Select a device",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "minuter",
"LabelStatsMinutesListening": "Minutter lyttet",
"LabelStatsWeekListening": "Uker lyttet",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Tag",
"LabelTags": "Tagger",
"LabelTheme": "Tema",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.",
"MessageConfirmDeleteLocalFiles": "Remove local files of this item from your device? The files on the server and your progress will be unaffected.",
"MessageConfirmDiscardProgress": "Are you sure you want to reset your progress?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Discard Progress",
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
"MessageDownloading": "Downloading...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Misslykkes å opprette bokmerke",
"ToastBookmarkRemoveFailed": "Misslykkes å fjerne bokmerke",
"ToastBookmarkUpdateFailed": "Misslykkes å oppdatere bokmerke",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Misslykkes å markere som Fullført",
"ToastItemMarkedAsNotFinishedFailed": "Misslykkes å markere som Ikke Fullført",
"ToastPlaylistCreateFailed": "Misslykkes å opprette spilleliste",
"ToastPodcastCreateFailed": "Misslykkes å opprette podcast",
"ToastPodcastCreateSuccess": "Podcast opprettet",
"ToastRSSFeedCloseFailed": "Misslykkes å lukke RSS feed",
"ToastRSSFeedCloseSuccess": "RSS feed lukket"
}
"ToastRSSFeedCloseSuccess": "RSS feed lukket",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Kolekcja",
"HeaderCollectionItems": "Elementy kolekcji",
"HeaderConnectionStatus": "Status połączenia",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Szczegóły",
"HeaderDownloads": "Pobrane",
"HeaderEbookFiles": "Pliki ebook",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Spis treści",
"HeaderUserInterfaceSettings": "Ustawienia inferfejsu użytkownika",
"HeaderYourStats": "Twoje statystyki",
"LabelAddToPlaylist": "Dodaj do playlisty",
"LabelAdded": "Dodano",
"LabelAddedAt": "Dodano w",
"LabelAddToPlaylist": "Dodaj do playlisty",
"LabelAll": "Wszystkie",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Autor",
"LabelAuthorFirstLast": "Autor (Rosnąco)",
"LabelAuthorLastFirst": "Author (Malejąco)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "Po zakończeniu automatycznego wyłącznika czasowego ponowne odtworzenie elementu spowoduje automatyczne przewinięcie pozycji do tyłu.",
"LabelAutoSleepTimerHelp": "Podczas odtwarzania multimediów między określonym czasem rozpoczęcia i zakończenia automatycznie uruchomi się wyłącznik czasowy.",
"LabelBooks": "Książki",
"LabelChapters": "Rozdziały",
"LabelChapterTrack": "Postęp rozdziału",
"LabelChapters": "Rozdziały",
"LabelClosePlayer": "Zamknij odtwarzacz",
"LabelCollapseSeries": "Podsumuj serię",
"LabelComplete": "Ukończone",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "Gdy wyłącznik czasowy zostanie zresetowany, urządzenie zacznie wibrować. Włącz to ustawienie, aby nie wibrować po zresetowaniu wyłącznika czasowego.",
"LabelDiscover": "Odkrywaj",
"LabelDownload": "Pobierz",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Pobrane",
"LabelDuration": "Czas trwania",
"LabelEbook": "Ebook",
@ -146,8 +150,8 @@
"LabelHeavy": "Ciężko",
"LabelHigh": "Wysoko",
"LabelHost": "Dostawca",
"LabelIncomplete": "Nieukończone",
"LabelInProgress": "W toku",
"LabelIncomplete": "Nieukończone",
"LabelInternalAppStorage": "Pamięć wewnętrzna aplikacji",
"LabelJumpBackwardsTime": "Przeskok wstecz",
"LabelJumpForwardsTime": "Przeskok w przód",
@ -170,6 +174,7 @@
"LabelName": "Nazwa",
"LabelNarrator": "Narrator",
"LabelNarrators": "Lektorzy",
"LabelNever": "Never",
"LabelNewestAuthors": "Najnowsi autorzy",
"LabelNewestEpisodes": "Najnosze odcinki",
"LabelNo": "No",
@ -188,15 +193,15 @@
"LabelProgress": "Postęp",
"LabelPubDate": "Data publikacji",
"LabelPublishYear": "Rok publikacji",
"LabelRead": "Czytaj",
"LabelReadAgain": "Czytaj ponownie",
"LabelRecentlyAdded": "Ostatnio dodane",
"LabelRecentSeries": "Najnowsze serie",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Custom owner Email",
"LabelRSSFeedCustomOwnerName": "Custom owner Name",
"LabelRSSFeedPreventIndexing": "Zapobiegaj indeksowaniu",
"LabelRSSFeedSlug": "RSS Feed Slug",
"LabelRead": "Czytaj",
"LabelReadAgain": "Czytaj ponownie",
"LabelRecentSeries": "Najnowsze serie",
"LabelRecentlyAdded": "Ostatnio dodane",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelScaleElapsedTimeBySpeed": "Skaluj czas, który upłynął według prędkości",
"LabelSeason": "Sezon",
"LabelSelectADevice": "Wybierz urządzenie",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "Minuty",
"LabelStatsMinutesListening": "Minuty odtwarzania",
"LabelStatsWeekListening": "Tydzień odtwarzania",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Tag",
"LabelTags": "Tagi",
"LabelTheme": "Motyw",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Usunąć lokalny odcinek \"{0}\" ze swojego urządzenia? Nie będzie to miało wpływu na plik na serwerze.",
"MessageConfirmDeleteLocalFiles": "Usunąć lokalne pliki tego elementu ze swojego urządzenia? Nie będzie to miało wpływu na pliki na serwerze i Twoje postępy.",
"MessageConfirmDiscardProgress": "Na pewno chcesz zresetować postęp?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Na pewno chcesz oznaczyć ten element jako ukończony?",
"MessageConfirmRemoveBookmark": "Na pewno chcesz usunąć zakładkę?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Zresetuj postęp",
"MessageDownloadCompleteProcessing": "Pobieranie ukończone. Przetwarzanie...",
"MessageDownloading": "Pobieranie...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Nie udało się utworzyć zakładki",
"ToastBookmarkRemoveFailed": "Nie udało się usunąć zakładki",
"ToastBookmarkUpdateFailed": "Nie udało się zaktualizować zakładki",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Nie udało się oznaczyć jako zakończone",
"ToastItemMarkedAsNotFinishedFailed": "Oznaczenie pozycji jako ukończonej nie powiodło się",
"ToastPlaylistCreateFailed": "Nie udało się utworzyć playlisty",
"ToastPodcastCreateFailed": "Nie udało się utworzyć podcastu",
"ToastPodcastCreateSuccess": "Podcast został pomyślnie utworzony",
"ToastRSSFeedCloseFailed": "Zamknięcie kanału RSS nie powiodło się",
"ToastRSSFeedCloseSuccess": "Zamknięcie kanału RSS powiodło się"
}
"ToastRSSFeedCloseSuccess": "Zamknięcie kanału RSS powiodło się",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Coleção",
"HeaderCollectionItems": "Itens da Coleção",
"HeaderConnectionStatus": "Status da Conexão",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Detalhes",
"HeaderDownloads": "Downloads",
"HeaderEbookFiles": "Arquivos Ebook",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Sumário",
"HeaderUserInterfaceSettings": "Configurações da Interface do Usuário",
"HeaderYourStats": "Suas Estatísticas",
"LabelAddToPlaylist": "Adicionar à Lista de Reprodução",
"LabelAdded": "Acrescentado",
"LabelAddedAt": "Acrescentado Em",
"LabelAddToPlaylist": "Adicionar à Lista de Reprodução",
"LabelAll": "Todos",
"LabelAllowSeekingOnMediaControls": "Permitir busca de posição nos controles de notificação de mídia",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Autor",
"LabelAuthorFirstLast": "Autor (Nome Sobrenome)",
"LabelAuthorLastFirst": "Autor (Sobrenome, Nome)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "Após o timer terminar, da próxima vez que o item for reproduzido a sua posição será retrocedida automaticamente.",
"LabelAutoSleepTimerHelp": "Ao reproduzir uma mídia entre as horas especificadas como inicío e fim, um timer será iniciado automaticamente.",
"LabelBooks": "Livros",
"LabelChapters": "Capítulos",
"LabelChapterTrack": "Trilha do Capítulo",
"LabelChapters": "Capítulos",
"LabelClosePlayer": "Fechar Reprodutor",
"LabelCollapseSeries": "Fechar Série",
"LabelComplete": "Concluído",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "Quando o timer for resetado o seu dispositivo vibrará. Ative essa configuração para não vibrar quando o timer for resetado.",
"LabelDiscover": "Descobrir",
"LabelDownload": "Download",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Download realizado",
"LabelDuration": "Duração",
"LabelEbook": "Ebook",
@ -146,8 +150,8 @@
"LabelHeavy": "Pesado",
"LabelHigh": "Alta",
"LabelHost": "Host",
"LabelIncomplete": "Incompleto",
"LabelInProgress": "Em Andamento",
"LabelIncomplete": "Incompleto",
"LabelInternalAppStorage": "Armazenamento Interno do App",
"LabelJumpBackwardsTime": "Retroceder tempo",
"LabelJumpForwardsTime": "Adiantar tempo",
@ -170,6 +174,7 @@
"LabelName": "Nome",
"LabelNarrator": "Narrador",
"LabelNarrators": "Narradores",
"LabelNever": "Never",
"LabelNewestAuthors": "Novos Autores",
"LabelNewestEpisodes": "Episódios mais recentes",
"LabelNo": "Não",
@ -188,15 +193,15 @@
"LabelProgress": "Progresso",
"LabelPubDate": "Data de Publicação",
"LabelPublishYear": "Ano de Publicação",
"LabelRead": "Lido",
"LabelReadAgain": "Ler Novamente",
"LabelRecentlyAdded": "Novidades",
"LabelRecentSeries": "Séries Recentes",
"LabelRemoveFromPlaylist": "Remover da Lista de Reprodução",
"LabelRSSFeedCustomOwnerEmail": "Email do dono personalizado",
"LabelRSSFeedCustomOwnerName": "Nome do dono personalizado",
"LabelRSSFeedPreventIndexing": "Impedir Indexação",
"LabelRSSFeedSlug": "Slug do Feed RSS",
"LabelRead": "Lido",
"LabelReadAgain": "Ler Novamente",
"LabelRecentSeries": "Séries Recentes",
"LabelRecentlyAdded": "Novidades",
"LabelRemoveFromPlaylist": "Remover da Lista de Reprodução",
"LabelScaleElapsedTimeBySpeed": "Proporcionalizar Tempo Decorrido com a Velocidade",
"LabelSeason": "Temporada",
"LabelSelectADevice": "Selecione um dispositivo",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "minutos",
"LabelStatsMinutesListening": "Minutos Escutando",
"LabelStatsWeekListening": "Tempo escutando na semana",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Etiqueta",
"LabelTags": "Etiquetas",
"LabelTheme": "Tema",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Remover episódio local \"{0}\" do seu dispositivo? O arquivo no servidor não será afetado.",
"MessageConfirmDeleteLocalFiles": "Remover arquivos locais deste item do seu dispositivo? Os arquivos no servidor e o seu progresso não serão afetados.",
"MessageConfirmDiscardProgress": "Tem certeza de que deseja restar o seu progresso?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Tem certeza de que deseja marcar esse item como concluído?",
"MessageConfirmRemoveBookmark": "Tem certeza de que deseja remover o marcador?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Descartar Progresso",
"MessageDownloadCompleteProcessing": "Download concluído. Processando...",
"MessageDownloading": "Realizando o download...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Falha ao criar marcador",
"ToastBookmarkRemoveFailed": "Falha ao remover marcador",
"ToastBookmarkUpdateFailed": "Falha ao atualizar marcador",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Falha ao marcar como Concluído",
"ToastItemMarkedAsNotFinishedFailed": "Falha ao marcar como Não Concluído",
"ToastPlaylistCreateFailed": "Falha ao criar lista de reprodução",
"ToastPodcastCreateFailed": "Falha ao criar podcast",
"ToastPodcastCreateSuccess": "Podcast criado",
"ToastRSSFeedCloseFailed": "Falha ao fechar feed RSS",
"ToastRSSFeedCloseSuccess": "Feed RSS fechado"
}
"ToastRSSFeedCloseSuccess": "Feed RSS fechado",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Коллекция",
"HeaderCollectionItems": "Элементы коллекции",
"HeaderConnectionStatus": "Состояние подключения",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Подробности",
"HeaderDownloads": "Загрузки",
"HeaderEbookFiles": "Файлы e-книг",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Содержание",
"HeaderUserInterfaceSettings": "Настройки интерфейса",
"HeaderYourStats": "Ваша статистика",
"LabelAddToPlaylist": "Добавить в плейлист",
"LabelAdded": "Добавили",
"LabelAddedAt": "Дата добавления",
"LabelAddToPlaylist": "Добавить в плейлист",
"LabelAll": "Все",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Автор",
"LabelAuthorFirstLast": "Автор (Имя Фамилия)",
"LabelAuthorLastFirst": "Автор (Фамилия, Имя)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "Когда таймер сна закончится, то позиция воспроизведения будет отмотана назад.",
"LabelAutoSleepTimerHelp": "Если медиа воспроизводится между указанными началом и окончанием, таймер сна будет включаться автоматически.",
"LabelBooks": "Книги",
"LabelChapters": "Главы",
"LabelChapterTrack": "Трек главы",
"LabelChapters": "Главы",
"LabelClosePlayer": "Закрыть проигрыватель",
"LabelCollapseSeries": "Свернуть серии",
"LabelComplete": "Завершить",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "Когда таймер сна будет сброшен, ваше устройство будет вибрировать. Включите этот параметр, чтобы не вибрировать при сбросе таймера сна.",
"LabelDiscover": "Не начато",
"LabelDownload": "Скачать",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Загружено",
"LabelDuration": "Длина",
"LabelEbook": "E-книга",
@ -146,8 +150,8 @@
"LabelHeavy": "Тяжелый",
"LabelHigh": "Сильно",
"LabelHost": "Хост",
"LabelIncomplete": "Не завершен",
"LabelInProgress": "В процессе",
"LabelIncomplete": "Не завершен",
"LabelInternalAppStorage": "Внутреннее хранилище приложений",
"LabelJumpBackwardsTime": "Перемотка назад",
"LabelJumpForwardsTime": "Перемотка вперед",
@ -170,6 +174,7 @@
"LabelName": "Имя",
"LabelNarrator": "Читает",
"LabelNarrators": "Чтецы",
"LabelNever": "Never",
"LabelNewestAuthors": "Новые авторы",
"LabelNewestEpisodes": "Newest Episodes",
"LabelNo": "Нет",
@ -188,15 +193,15 @@
"LabelProgress": "Прогресс",
"LabelPubDate": "Дата публикации",
"LabelPublishYear": "Год публикации",
"LabelRead": "Читать",
"LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Недавно добавленные",
"LabelRecentSeries": "Недавние серии",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Пользовательский Email владельца",
"LabelRSSFeedCustomOwnerName": "Пользовательское Имя владельца",
"LabelRSSFeedPreventIndexing": "Запретить индексирование",
"LabelRSSFeedSlug": "Встроить RSS-канал",
"LabelRead": "Читать",
"LabelReadAgain": "Read Again",
"LabelRecentSeries": "Недавние серии",
"LabelRecentlyAdded": "Недавно добавленные",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
"LabelSeason": "Сезон",
"LabelSelectADevice": "Выбор девайса",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "минут",
"LabelStatsMinutesListening": "Минут прослушано",
"LabelStatsWeekListening": "Прослушано за неделю",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Тег",
"LabelTags": "Теги",
"LabelTheme": "Тема",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Удалить локальный эпизод \"{0}\" с Вашего устройства? Файл на сервере не будет затронут.",
"MessageConfirmDeleteLocalFiles": "Удалить локальные файлы этого элемента с вашего устройства? Это не повлияет на файлы на сервере и ваш прогресс.",
"MessageConfirmDiscardProgress": "Вы уверены, что хотите сбросить свой прогресс?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Вы уверены, что хотите пометить этот элемент как завершенный?",
"MessageConfirmRemoveBookmark": "Вы уверены, что хотите удалить закладку?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Отбросить прогресс",
"MessageDownloadCompleteProcessing": "Загрузка завершена. Обработка...",
"MessageDownloading": "Загрузка...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Не удалось создать закладку",
"ToastBookmarkRemoveFailed": "Не удалось удалить закладку",
"ToastBookmarkUpdateFailed": "Не удалось обновить закладку",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Не удалось пометить как Завершенный",
"ToastItemMarkedAsNotFinishedFailed": "Не удалось пометить как Незавершенный",
"ToastPlaylistCreateFailed": "Не удалось создать плейлист",
"ToastPodcastCreateFailed": "Не удалось создать подкаст",
"ToastPodcastCreateSuccess": "Подкаст успешно создан",
"ToastRSSFeedCloseFailed": "Не удалось закрыть RSS-канал",
"ToastRSSFeedCloseSuccess": "RSS-канал закрыт"
}
"ToastRSSFeedCloseSuccess": "RSS-канал закрыт",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Samling",
"HeaderCollectionItems": "Samlingselement",
"HeaderConnectionStatus": "Connection Status",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Detaljer",
"HeaderDownloads": "Downloads",
"HeaderEbookFiles": "E-boksfiler",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Innehållsförteckning",
"HeaderUserInterfaceSettings": "User Interface Settings",
"HeaderYourStats": "Dina statistik",
"LabelAddToPlaylist": "Lägg till i Spellista",
"LabelAdded": "Tillagd",
"LabelAddedAt": "Tillagd vid",
"LabelAddToPlaylist": "Lägg till i Spellista",
"LabelAll": "Alla",
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Författare",
"LabelAuthorFirstLast": "Författare (Förnamn Efternamn)",
"LabelAuthorLastFirst": "Författare (Efternamn, Förnamn)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
"LabelBooks": "Böcker",
"LabelChapters": "Kapitel",
"LabelChapterTrack": "Chapter Track",
"LabelChapters": "Kapitel",
"LabelClosePlayer": "Stäng spelaren",
"LabelCollapseSeries": "Fäll ihop serie",
"LabelComplete": "Komplett",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
"LabelDiscover": "Discover",
"LabelDownload": "Ladda ner",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Downloaded",
"LabelDuration": "Varaktighet",
"LabelEbook": "E-bok",
@ -146,8 +150,8 @@
"LabelHeavy": "Heavy",
"LabelHigh": "High",
"LabelHost": "Värd",
"LabelIncomplete": "Ofullständig",
"LabelInProgress": "Pågående",
"LabelIncomplete": "Ofullständig",
"LabelInternalAppStorage": "Internal App Storage",
"LabelJumpBackwardsTime": "Jump backwards time",
"LabelJumpForwardsTime": "Jump forwards time",
@ -170,6 +174,7 @@
"LabelName": "Namn",
"LabelNarrator": "Berättare",
"LabelNarrators": "Berättare",
"LabelNever": "Never",
"LabelNewestAuthors": "Newest Authors",
"LabelNewestEpisodes": "Newest Episodes",
"LabelNo": "No",
@ -188,15 +193,15 @@
"LabelProgress": "Framsteg",
"LabelPubDate": "Publiceringsdatum",
"LabelPublishYear": "Publiceringsår",
"LabelRead": "Läst",
"LabelReadAgain": "Read Again",
"LabelRecentlyAdded": "Recently Added",
"LabelRecentSeries": "Recent Series",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelRSSFeedCustomOwnerEmail": "Anpassad ägarens e-post",
"LabelRSSFeedCustomOwnerName": "Anpassat ägarnamn",
"LabelRSSFeedPreventIndexing": "Förhindra indexering",
"LabelRSSFeedSlug": "RSS-flödesslag",
"LabelRead": "Läst",
"LabelReadAgain": "Read Again",
"LabelRecentSeries": "Recent Series",
"LabelRecentlyAdded": "Recently Added",
"LabelRemoveFromPlaylist": "Remove from Playlist",
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
"LabelSeason": "Säsong",
"LabelSelectADevice": "Select a device",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "minuter",
"LabelStatsMinutesListening": "Minuter av lyssnande",
"LabelStatsWeekListening": "Veckans lyssnande",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Tagg",
"LabelTags": "Taggar",
"LabelTheme": "Tema",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.",
"MessageConfirmDeleteLocalFiles": "Remove local files of this item from your device? The files on the server and your progress will be unaffected.",
"MessageConfirmDiscardProgress": "Are you sure you want to reset your progress?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Discard Progress",
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
"MessageDownloading": "Downloading...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Det gick inte att skapa bokmärket",
"ToastBookmarkRemoveFailed": "Det gick inte att ta bort bokmärket",
"ToastBookmarkUpdateFailed": "Det gick inte att uppdatera bokmärket",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Misslyckades med att markera som färdig",
"ToastItemMarkedAsNotFinishedFailed": "Misslyckades med att markera som ej färdig",
"ToastPlaylistCreateFailed": "Det gick inte att skapa spellistan",
"ToastPodcastCreateFailed": "Misslyckades med att skapa podcasten",
"ToastPodcastCreateSuccess": "Podcasten skapad framgångsrikt",
"ToastRSSFeedCloseFailed": "Misslyckades med att stänga RSS-flödet",
"ToastRSSFeedCloseSuccess": "RSS-flödet stängt"
}
"ToastRSSFeedCloseSuccess": "RSS-flödet stängt",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Добірка",
"HeaderCollectionItems": "Елементи добірки",
"HeaderConnectionStatus": "Стан з'єднання",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Подробиці",
"HeaderDownloads": "Завантаження",
"HeaderEbookFiles": "Файли електронних книг",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Зміст",
"HeaderUserInterfaceSettings": "Налаштування користувацького інтерфейсу",
"HeaderYourStats": "Ваша статистика",
"LabelAddToPlaylist": "Додати до списку відтворення",
"LabelAdded": "Додано",
"LabelAddedAt": "Дата додавання",
"LabelAddToPlaylist": "Додати до списку відтворення",
"LabelAll": "Усе",
"LabelAllowSeekingOnMediaControls": "Увімкнути перемотування в меню управління медіа",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Автор",
"LabelAuthorFirstLast": "Автор (за ім'ям)",
"LabelAuthorLastFirst": "Автор (за прізвищем)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "Коли сплине автотаймер вимкнення, відтворення знову автоматично перемотає доріжку.",
"LabelAutoSleepTimerHelp": "Таймер вимкнення автоматично ввімкнеться при відтворенні медіа між вказаним початковим та кінцевим часом.",
"LabelBooks": "Книги",
"LabelChapters": "Глави",
"LabelChapterTrack": "Прогрес глави",
"LabelChapters": "Глави",
"LabelClosePlayer": "Закрити програвач",
"LabelCollapseSeries": "Згорнути серії",
"LabelComplete": "Завершити",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "Коли таймер вимкнення буде скинуто, ваш пристрій завібрує. Увімкніть цей параметр, щоб не вібрувати при скиданні таймера.",
"LabelDiscover": "Огляд",
"LabelDownload": "Завантажити",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Завантажено",
"LabelDuration": "Тривалість",
"LabelEbook": "Електронна книга",
@ -146,8 +150,8 @@
"LabelHeavy": "Сильно",
"LabelHigh": "Високо",
"LabelHost": "Гост",
"LabelIncomplete": "Не завершено",
"LabelInProgress": "У процесі",
"LabelIncomplete": "Не завершено",
"LabelInternalAppStorage": "Внутрішня пам'ять додатку",
"LabelJumpBackwardsTime": "Час відмотування назад",
"LabelJumpForwardsTime": "Час перемотування вперед",
@ -170,6 +174,7 @@
"LabelName": "Назва",
"LabelNarrator": "Читець",
"LabelNarrators": "Читці",
"LabelNever": "Never",
"LabelNewestAuthors": "Нові автори",
"LabelNewestEpisodes": "Нові епізоди",
"LabelNo": "Ні",
@ -188,15 +193,15 @@
"LabelProgress": "Прогрес",
"LabelPubDate": "Дата публікації",
"LabelPublishYear": "Рік публікації",
"LabelRead": "Читати",
"LabelReadAgain": "Читати знову",
"LabelRecentlyAdded": "Нещодавно додані",
"LabelRecentSeries": "Останні серії",
"LabelRemoveFromPlaylist": "Видалити зі списку",
"LabelRSSFeedCustomOwnerEmail": "Користувацька електронна адреса власника",
"LabelRSSFeedCustomOwnerName": "Користувацьке ім'я власника",
"LabelRSSFeedPreventIndexing": "Запобігати індексації",
"LabelRSSFeedSlug": "Назва RSS-каналу",
"LabelRead": "Читати",
"LabelReadAgain": "Читати знову",
"LabelRecentSeries": "Останні серії",
"LabelRecentlyAdded": "Нещодавно додані",
"LabelRemoveFromPlaylist": "Видалити зі списку",
"LabelScaleElapsedTimeBySpeed": "Час відповідно швидкості",
"LabelSeason": "Сезон",
"LabelSelectADevice": "Обрати пристрій",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "хвилин",
"LabelStatsMinutesListening": "Хвилин прослухано",
"LabelStatsWeekListening": "Прослухано за тиждень",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Мітка",
"LabelTags": "Мітки",
"LabelTheme": "Тема",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Видалити локальний епізод \"{0}\" з вашого пристрою? Файл лишиться на сервері.",
"MessageConfirmDeleteLocalFiles": "Видалити локальні файли цього елемента з вашого пристрою? Файли лишаться на сервері.",
"MessageConfirmDiscardProgress": "Ви дійсно бажаєте скинути ваш прогрес?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Ви дійсно бажаєте позначити цей елемент завершеним?",
"MessageConfirmRemoveBookmark": "Ви дійсно бажаєте видалити закладку?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Скинути прогрес",
"MessageDownloadCompleteProcessing": "Завантаження завершено. Обробка...",
"MessageDownloading": "Завантажується...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Не вдалося створити закладку",
"ToastBookmarkRemoveFailed": "Не вдалося видалити закладку",
"ToastBookmarkUpdateFailed": "Не вдалося оновити закладку",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Не вдалося позначити завершеним",
"ToastItemMarkedAsNotFinishedFailed": "Не вдалося позначити незавершеним",
"ToastPlaylistCreateFailed": "Не вдалося створити список",
"ToastPodcastCreateFailed": "Не вдалося створити подкаст",
"ToastPodcastCreateSuccess": "Подкаст успішно створено",
"ToastRSSFeedCloseFailed": "Не вдалося закрити RSS-канал",
"ToastRSSFeedCloseSuccess": "RSS-канал закрито"
"ToastRSSFeedCloseSuccess": "RSS-канал закрито",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "Bộ Sưu Tập",
"HeaderCollectionItems": "Mục Bộ Sưu Tập",
"HeaderConnectionStatus": "Trạng Thái Kết Nối",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "Chi Tiết",
"HeaderDownloads": "Tải Xuống",
"HeaderEbookFiles": "Tập Tin Ebook",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "Mục Lục",
"HeaderUserInterfaceSettings": "Cài Đặt Giao Diện Người Dùng",
"HeaderYourStats": "Thống Kê của Bạn",
"LabelAddToPlaylist": "Thêm vào Danh Sách Phát",
"LabelAdded": "Đã Thêm",
"LabelAddedAt": "Đã Thêm Vào",
"LabelAddToPlaylist": "Thêm vào Danh Sách Phát",
"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",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "Tác Giả",
"LabelAuthorFirstLast": "Tác Giả (Tên Đầu Tiên, Họ)",
"LabelAuthorLastFirst": "Tác Giả (Họ, Tên Đầu Tiên)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "Khi bộ đếm thời gian ngủ tự động hoàn thành, việc phát lại mục sẽ tự động lùi lại vị trí của bạn.",
"LabelAutoSleepTimerHelp": "Khi phát phương tiện giữa các thời gian bắt đầu và kết thúc được chỉ định, một bộ đếm thời gian ngủ sẽ tự động bắt đầu.",
"LabelBooks": "Sách",
"LabelChapters": "Chương",
"LabelChapterTrack": "Theo Dõi Chương",
"LabelChapters": "Chương",
"LabelClosePlayer": "Đóng Trình Phát",
"LabelCollapseSeries": "Thu Gọn Chuỗi",
"LabelComplete": "Hoàn Thành",
@ -119,6 +122,7 @@
"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á",
"LabelDownload": "Tải Xuống",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "Đã Tải Xuống",
"LabelDuration": "Thời Lượng",
"LabelEbook": "Ebook",
@ -146,8 +150,8 @@
"LabelHeavy": "Nặng",
"LabelHigh": "Cao",
"LabelHost": "Máy Chủ",
"LabelIncomplete": "Chưa Hoàn Thành",
"LabelInProgress": "Đang Tiến Hành",
"LabelIncomplete": "Chưa Hoàn Thành",
"LabelInternalAppStorage": "Bộ Nhớ Ứng Dụng Nội Bộ",
"LabelJumpBackwardsTime": "Nhảy Lùi Thời Gian",
"LabelJumpForwardsTime": "Nhảy Chuyển Tiếp Thời Gian",
@ -170,6 +174,7 @@
"LabelName": "Tên",
"LabelNarrator": "Người Đọc",
"LabelNarrators": "Người Đọc",
"LabelNever": "Never",
"LabelNewestAuthors": "Tác Giả Mới Nhất",
"LabelNewestEpisodes": "Các Tập Phim Mới Nhất",
"LabelNo": "Không",
@ -188,15 +193,15 @@
"LabelProgress": "Tiến Độ",
"LabelPubDate": "Ngày Xuất Bản",
"LabelPublishYear": "Năm Xuất Bản",
"LabelRead": "Đã Đọc",
"LabelReadAgain": "Đọc Lại",
"LabelRecentlyAdded": "Được Thêm Gần Đây",
"LabelRecentSeries": "Chuỗi Gần Đây",
"LabelRemoveFromPlaylist": "Xóa khỏi Danh Sách Phát",
"LabelRSSFeedCustomOwnerEmail": "Email 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",
"LabelRSSFeedSlug": "RSS Feed Slug",
"LabelRead": "Đã Đọc",
"LabelReadAgain": "Đọc Lại",
"LabelRecentSeries": "Chuỗi Gần Đây",
"LabelRecentlyAdded": "Được Thêm Gần Đây",
"LabelRemoveFromPlaylist": "Xóa khỏi Danh Sách Phát",
"LabelScaleElapsedTimeBySpeed": "Tỷ Lệ Thời Gian Đã Trôi Theo Tốc Độ",
"LabelSeason": "Mùa",
"LabelSelectADevice": "Chọn Một Thiết Bị",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "phút",
"LabelStatsMinutesListening": "Phút Đã Nghe",
"LabelStatsWeekListening": "Tuần Đã Nghe",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "Thẻ",
"LabelTags": "Thẻ",
"LabelTheme": "Giao Diện",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "Xóa tập phim địa phương \"{0}\" khỏi thiết bị của bạn? Tập tin trên máy chủ sẽ không bị ảnh hưởng.",
"MessageConfirmDeleteLocalFiles": "Xóa các tập tin địa phương của mục này khỏi thiết bị của bạn? Các tập tin trên máy chủ và tiến trình của bạn sẽ không bị ảnh hưởng.",
"MessageConfirmDiscardProgress": "Bạn có chắc chắn muốn đặt lại tiến trình của mình không?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "Bạn có chắc chắn muốn đánh dấu mục này là đã hoàn thành không?",
"MessageConfirmRemoveBookmark": "Bạn có chắc chắn muốn xóa đánh dấu?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "Hủy Bỏ Tiến Độ",
"MessageDownloadCompleteProcessing": "Tải xuống hoàn tất. Đang xử lý...",
"MessageDownloading": "Đang tải xuống...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "Không thể tạo đánh dấu",
"ToastBookmarkRemoveFailed": "Không thể xóa đánh dấu",
"ToastBookmarkUpdateFailed": "Không thể cập nhật đánh dấu",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "Không thể đánh dấu là Hoàn Thành",
"ToastItemMarkedAsNotFinishedFailed": "Không thể đánh dấu là Chưa Hoàn Thành",
"ToastPlaylistCreateFailed": "Không thể tạo danh sách phát",
"ToastPodcastCreateFailed": "Không thể tạo podcast",
"ToastPodcastCreateSuccess": "Tạo podcast thành công",
"ToastRSSFeedCloseFailed": "Không thể đóng RSS feed",
"ToastRSSFeedCloseSuccess": "Đóng RSS feed thành công"
}
"ToastRSSFeedCloseSuccess": "Đóng RSS feed thành công",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}

View file

@ -56,6 +56,7 @@
"HeaderCollection": "收藏",
"HeaderCollectionItems": "收藏项目",
"HeaderConnectionStatus": "连接状态",
"HeaderDataSettings": "Data Settings",
"HeaderDetails": "详情",
"HeaderDownloads": "下载",
"HeaderEbookFiles": "电子书文件",
@ -82,11 +83,13 @@
"HeaderTableOfContents": "目录",
"HeaderUserInterfaceSettings": "用户界面设置",
"HeaderYourStats": "你的统计数据",
"LabelAddToPlaylist": "添加到播放列表",
"LabelAdded": "添加",
"LabelAddedAt": "添加于",
"LabelAddToPlaylist": "添加到播放列表",
"LabelAll": "全部",
"LabelAllowSeekingOnMediaControls": "允许在媒体通知控件上查找位置",
"LabelAlways": "Always",
"LabelAskConfirmation": "Ask for confirmation",
"LabelAuthor": "作者",
"LabelAuthorFirstLast": "作者 (姓 名)",
"LabelAuthorLastFirst": "作者 (名, 姓)",
@ -98,8 +101,8 @@
"LabelAutoSleepTimerAutoRewindHelp": "当自动睡眠计时器结束时, 再次播放该项目将自动倒带您之前的位置.",
"LabelAutoSleepTimerHelp": "当在指定的时间范围内播放媒体时, 睡眠计时器将自动启动.",
"LabelBooks": "图书",
"LabelChapters": "章节",
"LabelChapterTrack": "章节音轨",
"LabelChapters": "章节",
"LabelClosePlayer": "关闭播放器",
"LabelCollapseSeries": "折叠系列",
"LabelComplete": "已完成",
@ -119,6 +122,7 @@
"LabelDisableVibrateOnResetHelp": "当睡眠计时器重置时, 你的设备会振动. 启用此设置以在睡眠计时器重置时不振动.",
"LabelDiscover": "发现",
"LabelDownload": "下载",
"LabelDownloadUsingCellular": "Download using Cellular",
"LabelDownloaded": "已下载",
"LabelDuration": "持续时间",
"LabelEbook": "电子书",
@ -146,8 +150,8 @@
"LabelHeavy": "重",
"LabelHigh": "高",
"LabelHost": "主机",
"LabelIncomplete": "未听完",
"LabelInProgress": "正在听",
"LabelIncomplete": "未听完",
"LabelInternalAppStorage": "应用内部存储",
"LabelJumpBackwardsTime": "快退时间",
"LabelJumpForwardsTime": "快进时间",
@ -170,6 +174,7 @@
"LabelName": "名称",
"LabelNarrator": "演播者",
"LabelNarrators": "演播者",
"LabelNever": "Never",
"LabelNewestAuthors": "最新作者",
"LabelNewestEpisodes": "最新剧集",
"LabelNo": "取消",
@ -188,15 +193,15 @@
"LabelProgress": "进度",
"LabelPubDate": "出版日期",
"LabelPublishYear": "发布年份",
"LabelRead": "阅读",
"LabelReadAgain": "再次阅读",
"LabelRecentlyAdded": "最近添加",
"LabelRecentSeries": "最近添加系列",
"LabelRemoveFromPlaylist": "从播放列表中删除",
"LabelRSSFeedCustomOwnerEmail": "自定义所有者电子邮件",
"LabelRSSFeedCustomOwnerName": "自定义所有者名称",
"LabelRSSFeedPreventIndexing": "防止索引",
"LabelRSSFeedSlug": "RSS 源段",
"LabelRead": "阅读",
"LabelReadAgain": "再次阅读",
"LabelRecentSeries": "最近添加系列",
"LabelRecentlyAdded": "最近添加",
"LabelRemoveFromPlaylist": "从播放列表中删除",
"LabelScaleElapsedTimeBySpeed": "按速度缩放播放时间",
"LabelSeason": "季",
"LabelSelectADevice": "选择设备",
@ -219,6 +224,7 @@
"LabelStatsMinutes": "分钟",
"LabelStatsMinutesListening": "收听分钟数",
"LabelStatsWeekListening": "每周收听",
"LabelStreamingUsingCellular": "Streaming using Cellular",
"LabelTag": "标签",
"LabelTags": "标签",
"LabelTheme": "主题",
@ -245,8 +251,10 @@
"MessageConfirmDeleteLocalEpisode": "要从设备中删除本地剧集 \"{0}\" 吗? 服务器上的文件将不受影响.",
"MessageConfirmDeleteLocalFiles": "要从设备中删除此项目的本地文件吗? 服务器上的文件和您的进度将不受影响.",
"MessageConfirmDiscardProgress": "您确定要重置进度吗?",
"MessageConfirmDownloadUsingCellular": "You are about to download using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageConfirmMarkAsFinished": "您确定要要将此项目标记为已完成吗?",
"MessageConfirmRemoveBookmark": "您确定要删除书签吗?",
"MessageConfirmStreamingUsingCellular": "You are about to stream using cellular data. This may include carrier data charges. Do you wish to continue?",
"MessageDiscardProgress": "放弃进度",
"MessageDownloadCompleteProcessing": "下载完成.正在处理...",
"MessageDownloading": "下载中...",
@ -286,11 +294,13 @@
"ToastBookmarkCreateFailed": "创建书签失败",
"ToastBookmarkRemoveFailed": "书签删除失败",
"ToastBookmarkUpdateFailed": "书签更新失败",
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
"ToastItemMarkedAsFinishedFailed": "标记为听完失败",
"ToastItemMarkedAsNotFinishedFailed": "标记为未听完失败",
"ToastPlaylistCreateFailed": "创建播放列表失败",
"ToastPodcastCreateFailed": "创建播客失败",
"ToastPodcastCreateSuccess": "已成功创建播客",
"ToastRSSFeedCloseFailed": "关闭 RSS 源失败",
"ToastRSSFeedCloseSuccess": "RSS 源已关闭"
}
"ToastRSSFeedCloseSuccess": "RSS 源已关闭",
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
}