mirror of
https://github.com/advplyr/audiobookshelf-app.git
synced 2026-08-09 05:18:40 +02:00
Compare commits
284
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
af8b5b63d5 | ||
|
|
4485d0833e | ||
|
|
a163a6af88 | ||
|
|
38bb5af04b | ||
|
|
11804d1cb8 | ||
|
|
22529fc1d2 | ||
|
|
62b0c5fd62 | ||
|
|
1ed28a4fd4 | ||
|
|
5044aea1d7 | ||
|
|
47fda0ccca | ||
|
|
742490775a | ||
|
|
95bbed2b21 | ||
|
|
2b446e227d | ||
|
|
ea6417dbb1 | ||
|
|
d902417959 | ||
|
|
358197db03 | ||
|
|
102fd1f1a1 | ||
|
|
fe9168c6cf | ||
|
|
f7663fc17f | ||
|
|
e370ec36ab | ||
|
|
8f181c74d4 | ||
|
|
e2fc5bcbb1 | ||
|
|
67af09c4bd | ||
|
|
b81abf4da5 | ||
|
|
2c288bb34d | ||
|
|
df762e8910 | ||
|
|
253aa19701 | ||
|
|
ea608d875b | ||
|
|
d4340a8b95 | ||
|
|
33b3aafb14 | ||
|
|
6cedc2fe35 | ||
|
|
1bb03015d9 | ||
|
|
c5bef72c63 | ||
|
|
8b7c00b337 | ||
|
|
6199d4fab4 | ||
|
|
2063d8647a | ||
|
|
c0a9f85f77 | ||
|
|
b1651c5b01 | ||
|
|
1a8af2caee | ||
|
|
a593070b9f | ||
|
|
1d700b0663 | ||
|
|
2233885142 | ||
|
|
faf87d2942 | ||
|
|
706673aed0 | ||
|
|
eaea688e33 | ||
|
|
256be3521d | ||
|
|
cec1e8593d | ||
|
|
e18f9be810 | ||
|
|
69dca2db43 | ||
|
|
c03321b55e | ||
|
|
f8b4287229 | ||
|
|
ce2fa0c116 | ||
|
|
ebe9a230fd | ||
|
|
a05ceea4bc | ||
|
|
67c2ded1f0 | ||
|
|
66d09c886e | ||
|
|
bbff7513f1 | ||
|
|
4195279c5d | ||
|
|
464d967a0a | ||
|
|
4dd7bf8916 | ||
|
|
4b134eaef9 | ||
|
|
ece62c8b18 | ||
|
|
b430c185b1 | ||
|
|
5c13ccf9e7 | ||
|
|
cb0e2ba305 | ||
|
|
011fbb38cb | ||
|
|
0a69450bc0 | ||
|
|
b4a97f4347 | ||
|
|
96f7aa95ee | ||
|
|
e92f2177e8 | ||
|
|
ab7bda402e | ||
|
|
d78c168e16 | ||
|
|
2b04b4f008 | ||
|
|
a6cc0d742c | ||
|
|
e7e9a2755c | ||
|
|
56ea4ce2f5 | ||
|
|
05528f6dfd | ||
|
|
49cd36c33e | ||
|
|
898d96ce3a | ||
|
|
b257836b76 | ||
|
|
8fab4e56ef | ||
|
|
8e34c230d7 | ||
|
|
b32f2e2973 | ||
|
|
1047d1a598 | ||
|
|
1e5115b743 | ||
|
|
e1e12de91b | ||
|
|
58950afb99 | ||
|
|
89b64b165f | ||
|
|
90ab927bdc | ||
|
|
50ebf4eacb | ||
|
|
064ba080ab | ||
|
|
4ee0345217 | ||
|
|
d45cbbba98 | ||
|
|
612a7a7063 | ||
|
|
62e3ca4068 | ||
|
|
34dcdc89c3 | ||
|
|
bcc202ff3b | ||
|
|
d4a56b3823 | ||
|
|
626239038b | ||
|
|
f7da431e61 | ||
|
|
6ff59c423b | ||
|
|
076d4977e3 | ||
|
|
2a737a9d72 | ||
|
|
8c77a19eb6 | ||
|
|
3918696477 | ||
|
|
8a6a2b8577 | ||
|
|
584023380c | ||
|
|
1f4dd2bdb7 | ||
|
|
f7d5a0732b | ||
|
|
2a6cc882a5 | ||
|
|
f385339da3 | ||
|
|
c37566a999 | ||
|
|
f90a4b1374 | ||
|
|
b649680d3e | ||
|
|
b84c2abe14 | ||
|
|
58aff762c0 | ||
|
|
e5eef69c91 | ||
|
|
54f91b7a88 | ||
|
|
17676173ef | ||
|
|
31f4aa944a | ||
|
|
b30bd495b7 | ||
|
|
06f893436e | ||
|
|
20a2b3ed90 | ||
|
|
b1e3bc46c8 | ||
|
|
8bc5932889 | ||
|
|
3cd597d71e | ||
|
|
48d5ad462e | ||
|
|
40cab87640 | ||
|
|
f405947ad8 | ||
|
|
fd550c15a5 | ||
|
|
d18537cf04 | ||
|
|
f01f0229a8 | ||
|
|
b369eb2d40 | ||
|
|
f08c65c5bf | ||
|
|
1043f4ecd7 | ||
|
|
4f17a32373 | ||
|
|
2203aae6e6 | ||
|
|
7b60c7b6c5 | ||
|
|
be98e06efc | ||
|
|
45239bca34 | ||
|
|
84509ec1a8 | ||
|
|
2493ce7ed7 | ||
|
|
2b1e53b371 | ||
|
|
d643a1769f | ||
|
|
a63b7a188c | ||
|
|
f9c0162b8a | ||
|
|
cda3cb3512 | ||
|
|
766f6938a7 | ||
|
|
8e1ccb517b | ||
|
|
540aab6f83 | ||
|
|
d1969d7897 | ||
|
|
b69e8fd649 | ||
|
|
2e95cf908d | ||
|
|
b589bae2b0 | ||
|
|
e7e4891d82 | ||
|
|
79df676a13 | ||
|
|
03a46decba | ||
|
|
d80482f443 | ||
|
|
735cce7614 | ||
|
|
8ea35a0b36 | ||
|
|
ad90bd3d05 | ||
|
|
fa3856e845 | ||
|
|
752d4ddc8c | ||
|
|
fd2d7a05d1 | ||
|
|
ccf4675867 | ||
|
|
bc043c73ca | ||
|
|
291ab247bc | ||
|
|
d901f470a1 | ||
|
|
0ebb01e39d | ||
|
|
20ac99bf8d | ||
|
|
90e86e1575 | ||
|
|
28652031e7 | ||
|
|
cd8be40cc8 | ||
|
|
52fc937f96 | ||
|
|
68e4722387 | ||
|
|
5f5b38b2f9 | ||
|
|
65f8d3ce81 | ||
|
|
ac571fd63d | ||
|
|
ea2d6e9f31 | ||
|
|
80b999d648 | ||
|
|
54720039e4 | ||
|
|
8c6717c201 | ||
|
|
6610754e25 | ||
|
|
d38622d8a2 | ||
|
|
cd2750a489 | ||
|
|
30140629ae | ||
|
|
0ce29337ef | ||
|
|
6715f29ebb | ||
|
|
b4a8dc9e26 | ||
|
|
c349a0bf00 | ||
|
|
0dc6c142be | ||
|
|
e46c1d9120 | ||
|
|
27ad554ea1 | ||
|
|
5660772b46 | ||
|
|
dab80642ab | ||
|
|
da46191208 | ||
|
|
6484c4de79 | ||
|
|
6716b6042a | ||
|
|
0686859fa7 | ||
|
|
4180862c3a | ||
|
|
7aa20d3211 | ||
|
|
b694b55710 | ||
|
|
024b613063 | ||
|
|
8768d11a20 | ||
|
|
5898303ba4 | ||
|
|
e79d09941c | ||
|
|
c52a60fe77 | ||
|
|
e64f9aa427 | ||
|
|
ee343f78ef | ||
|
|
1f20d5821f | ||
|
|
b0c512e946 | ||
|
|
0d13b7abd1 | ||
|
|
43fd8285c9 | ||
|
|
2f7e8d618a | ||
|
|
a0b910deeb | ||
|
|
e9dc45613c | ||
|
|
b5e90ec3d2 | ||
|
|
3d9f42c1e1 | ||
|
|
e62f430f37 | ||
|
|
9c53564c46 | ||
|
|
f7add6f6cd | ||
|
|
7786e6a827 | ||
|
|
b213e2aabf | ||
|
|
ebca0fafca | ||
|
|
ac8a2ca985 | ||
|
|
6380d7cc02 | ||
|
|
9056ba6b8d | ||
|
|
23801363c4 | ||
|
|
1cdcd7327f | ||
|
|
50ec50003e | ||
|
|
5ff4db1a3f | ||
|
|
394b44c343 | ||
|
|
eb2aa6f773 | ||
|
|
81130e04e5 | ||
|
|
c0ec0758f4 | ||
|
|
e21f7c545e | ||
|
|
c16dd2fcf6 | ||
|
|
90974e6d73 | ||
|
|
8e4f75d85b | ||
|
|
792ee2adb8 | ||
|
|
2c57489c07 | ||
|
|
e3321770fd | ||
|
|
848673f028 | ||
|
|
e6d3003ecf | ||
|
|
90551b7ce7 | ||
|
|
aabac5da13 | ||
|
|
4fad77f9c1 | ||
|
|
0fb6d746eb | ||
|
|
7fc712d19b | ||
|
|
d6018cfe10 | ||
|
|
5b8f231a98 | ||
|
|
cb503f84e1 | ||
|
|
a34f9b80ac | ||
|
|
3e6696b516 | ||
|
|
9cd8bd439a | ||
|
|
ca5b99e23d | ||
|
|
c44fd74f5b | ||
|
|
f82c4834c3 | ||
|
|
dda95bd69c | ||
|
|
a623cb57a7 | ||
|
|
e798d930fb | ||
|
|
f91b0c9e2f | ||
|
|
b6824cf242 | ||
|
|
41477fdac1 | ||
|
|
d4e8afc2f1 | ||
|
|
d42cbfe3e4 | ||
|
|
c7c3ef52e6 | ||
|
|
92344325b6 | ||
|
|
a8172fb3f9 | ||
|
|
a73ec783d5 | ||
|
|
5c9fc4c9e4 | ||
|
|
494ff38ef3 | ||
|
|
b7e6cbf1ab | ||
|
|
b33623b74f | ||
|
|
4f939ce6fc | ||
|
|
4f45f360df | ||
|
|
4ad54f34fe | ||
|
|
574dda5286 | ||
|
|
d788623509 | ||
|
|
f047f6a23b | ||
|
|
48b30f6b03 | ||
|
|
67d32164d9 | ||
|
|
b833019a14 | ||
|
|
00eeeb2a5a |
+1
-6
@@ -1,13 +1,8 @@
|
|||||||
# editorconfig.org
|
|
||||||
root = true
|
root = true
|
||||||
|
|
||||||
[*]
|
[*]
|
||||||
indent_style = space
|
indent_style = space
|
||||||
indent_size = 2
|
indent_size = 2
|
||||||
end_of_line = lf
|
|
||||||
charset = utf-8
|
charset = utf-8
|
||||||
trim_trailing_whitespace = true
|
|
||||||
insert_final_newline = true
|
insert_final_newline = true
|
||||||
|
trim_trailing_whitespace = true
|
||||||
[*.md]
|
|
||||||
trim_trailing_whitespace = false
|
|
||||||
|
|||||||
@@ -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.*
|
description: Please ensure your app is up to date. *If you are using a 3rd-party app, please reach out to them directly.*
|
||||||
multiple: true
|
multiple: true
|
||||||
options:
|
options:
|
||||||
- Android App - 0.9.63
|
- Android App - 0.9.76
|
||||||
- iOS App - 0.9.63
|
- iOS App - 0.9.76
|
||||||
|
- Android App - 0.9.75
|
||||||
|
- iOS App - 0.9.75
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
- type: dropdown
|
- type: dropdown
|
||||||
|
|||||||
@@ -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.*
|
description: Please ensure your app is up to date. *If you are using a 3rd-party app, please reach out to them directly.*
|
||||||
multiple: true
|
multiple: true
|
||||||
options:
|
options:
|
||||||
- Android App - 0.9.63
|
- Android App - 0.9.76
|
||||||
- iOS App - 0.9.63
|
- iOS App - 0.9.76
|
||||||
|
- Android App - 0.9.75
|
||||||
|
- iOS App - 0.9.75
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
- type: textarea
|
- type: textarea
|
||||||
|
|||||||
@@ -0,0 +1,20 @@
|
|||||||
|
name: Close fixed issues on release.
|
||||||
|
on:
|
||||||
|
release:
|
||||||
|
types: [published]
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
issues: write
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
comment:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Close issues marked as fixed upon a release.
|
||||||
|
uses: gcampbell-msft/fixed-pending-release@7fa1b75a0c04bcd4b375110522878e5f6100cff5
|
||||||
|
with:
|
||||||
|
label: 'awaiting release'
|
||||||
|
removeLabel: true
|
||||||
|
applyToAll: true
|
||||||
|
message: Fixed in [${releaseTag}](${releaseUrl}).
|
||||||
@@ -19,10 +19,10 @@ jobs:
|
|||||||
uses: actions/setup-node@v4
|
uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version: '20'
|
node-version: '20'
|
||||||
|
|
||||||
# The only argument is the `directory`, which is where the i18n files are
|
# The only argument is the `directory`, which is where the i18n files are
|
||||||
# stored.
|
# stored.
|
||||||
- name: Run Update JSON Files action
|
- name: Run Update JSON Files action
|
||||||
uses: audiobookshelf/audiobookshelf-i18n-updater@v1.2.0
|
uses: audiobookshelf/audiobookshelf-i18n-updater@v1.3.0
|
||||||
with:
|
with:
|
||||||
directory: 'strings/' # Adjust the directory path as needed
|
directory: 'strings/' # Adjust the directory path as needed
|
||||||
|
|||||||
+17
@@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
"semi": false,
|
||||||
|
"singleQuote": true,
|
||||||
|
"printWidth": 400,
|
||||||
|
"proseWrap": "never",
|
||||||
|
"trailingComma": "none",
|
||||||
|
"overrides": [
|
||||||
|
{
|
||||||
|
"files": ["*.html"],
|
||||||
|
"options": {
|
||||||
|
"singleQuote": false,
|
||||||
|
"wrapAttributes": false,
|
||||||
|
"sortAttributes": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
Vendored
+7
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"recommendations": [
|
||||||
|
"EditorConfig.EditorConfig",
|
||||||
|
"esbenp.prettier-vscode",
|
||||||
|
"octref.vetur"
|
||||||
|
]
|
||||||
|
}
|
||||||
Vendored
+27
@@ -0,0 +1,27 @@
|
|||||||
|
{
|
||||||
|
"vetur.format.defaultFormatterOptions": {
|
||||||
|
"prettier": {
|
||||||
|
"semi": false,
|
||||||
|
"singleQuote": true,
|
||||||
|
"printWidth": 400,
|
||||||
|
"proseWrap": "never",
|
||||||
|
"trailingComma": "none"
|
||||||
|
},
|
||||||
|
"prettyhtml": {
|
||||||
|
"printWidth": 400,
|
||||||
|
"singleQuote": false,
|
||||||
|
"wrapAttributes": false,
|
||||||
|
"sortAttributes": false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"editor.formatOnSave": true,
|
||||||
|
"editor.detectIndentation": true,
|
||||||
|
"editor.tabSize": 2,
|
||||||
|
"javascript.format.semicolons": "remove",
|
||||||
|
"[javascript][json][jsonc]": {
|
||||||
|
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
||||||
|
},
|
||||||
|
"[vue]": {
|
||||||
|
"editor.defaultFormatter": "octref.vetur"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -28,13 +28,13 @@ android {
|
|||||||
kotlinOptions {
|
kotlinOptions {
|
||||||
freeCompilerArgs = ['-Xjvm-default=all']
|
freeCompilerArgs = ['-Xjvm-default=all']
|
||||||
}
|
}
|
||||||
compileSdkVersion rootProject.ext.compileSdkVersion
|
compileSdkVersion rootProject.ext.compileSdkVersion
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId "com.audiobookshelf.app"
|
applicationId "com.audiobookshelf.app"
|
||||||
minSdkVersion rootProject.ext.minSdkVersion
|
minSdkVersion rootProject.ext.minSdkVersion
|
||||||
targetSdkVersion rootProject.ext.targetSdkVersion
|
targetSdkVersion rootProject.ext.targetSdkVersion
|
||||||
versionCode 105
|
versionCode 108
|
||||||
versionName "0.9.74-beta"
|
versionName "0.9.77-beta"
|
||||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||||
manifestPlaceholders = [
|
manifestPlaceholders = [
|
||||||
"appAuthRedirectScheme": "com.audiobookshelf.app"
|
"appAuthRedirectScheme": "com.audiobookshelf.app"
|
||||||
@@ -64,8 +64,6 @@ repositories {
|
|||||||
dirs '../capacitor-cordova-android-plugins/src/main/libs', 'libs'
|
dirs '../capacitor-cordova-android-plugins/src/main/libs', 'libs'
|
||||||
}
|
}
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
// TODO: Temporarily using SNAPSHOT version of Simple Storage that resolves https://github.com/anggrayudi/SimpleStorage/issues/133
|
|
||||||
maven { url "https://oss.sonatype.org/content/repositories/snapshots" }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
configurations.configureEach {
|
configurations.configureEach {
|
||||||
@@ -120,7 +118,7 @@ dependencies {
|
|||||||
implementation 'io.github.pilgr:paperdb:2.7.2'
|
implementation 'io.github.pilgr:paperdb:2.7.2'
|
||||||
|
|
||||||
// Simple Storage
|
// Simple Storage
|
||||||
implementation "com.anggrayudi:storage:1.5.5-SNAPSHOT"
|
implementation "com.anggrayudi:storage:1.5.6"
|
||||||
|
|
||||||
// OK HTTP
|
// OK HTTP
|
||||||
implementation 'com.squareup.okhttp3:okhttp:4.9.2'
|
implementation 'com.squareup.okhttp3:okhttp:4.9.2'
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ android {
|
|||||||
apply from: "../capacitor-cordova-android-plugins/cordova.variables.gradle"
|
apply from: "../capacitor-cordova-android-plugins/cordova.variables.gradle"
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation project(':byteowls-capacitor-filesharer')
|
implementation project(':byteowls-capacitor-filesharer')
|
||||||
|
implementation project(':capacitor-community-volume-buttons')
|
||||||
implementation project(':capacitor-app')
|
implementation project(':capacitor-app')
|
||||||
implementation project(':capacitor-browser')
|
implementation project(':capacitor-browser')
|
||||||
implementation project(':capacitor-clipboard')
|
implementation project(':capacitor-clipboard')
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
|
|
||||||
<!-- Permissions -->
|
<!-- Permissions -->
|
||||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
|
||||||
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK" />
|
||||||
<uses-permission android:name="android.permission.INTERNET" />
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
<uses-permission
|
<uses-permission
|
||||||
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
|
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
|
||||||
|
|||||||
@@ -3,6 +3,10 @@
|
|||||||
"pkg": "@byteowls/capacitor-filesharer",
|
"pkg": "@byteowls/capacitor-filesharer",
|
||||||
"classpath": "com.byteowls.capacitor.filesharer.FileSharerPlugin"
|
"classpath": "com.byteowls.capacitor.filesharer.FileSharerPlugin"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"pkg": "@capacitor-community/volume-buttons",
|
||||||
|
"classpath": "com.ryltsov.alex.plugins.volume.buttons.VolumeButtonsPlugin"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"pkg": "@capacitor/app",
|
"pkg": "@capacitor/app",
|
||||||
"classpath": "com.capacitorjs.plugins.app.AppPlugin"
|
"classpath": "com.capacitorjs.plugins.app.AppPlugin"
|
||||||
|
|||||||
@@ -96,7 +96,7 @@ class Podcast(
|
|||||||
@JsonIgnore
|
@JsonIgnore
|
||||||
fun addEpisode(audioTrack:AudioTrack, episode:PodcastEpisode):PodcastEpisode {
|
fun addEpisode(audioTrack:AudioTrack, episode:PodcastEpisode):PodcastEpisode {
|
||||||
val localEpisodeId = "local_ep_" + episode.id
|
val localEpisodeId = "local_ep_" + episode.id
|
||||||
val newEpisode = PodcastEpisode(localEpisodeId,(episodes?.size ?: 0) + 1,episode.episode,episode.episodeType,episode.title,episode.subtitle,episode.description,null,null,null,audioTrack,episode.chapters,audioTrack.duration,0, episode.id, localEpisodeId)
|
val newEpisode = PodcastEpisode(localEpisodeId,(episodes?.size ?: 0) + 1,episode.episode,episode.episodeType,episode.title,episode.subtitle,episode.description,null,null,null,audioTrack,episode.chapters,audioTrack.duration,episode.size, episode.id, localEpisodeId)
|
||||||
episodes?.add(newEpisode)
|
episodes?.add(newEpisode)
|
||||||
|
|
||||||
var index = 1
|
var index = 1
|
||||||
|
|||||||
@@ -20,6 +20,14 @@ enum class ShakeSensitivitySetting {
|
|||||||
VERY_LOW, LOW, MEDIUM, HIGH, VERY_HIGH
|
VERY_LOW, LOW, MEDIUM, HIGH, VERY_HIGH
|
||||||
}
|
}
|
||||||
|
|
||||||
|
enum class DownloadUsingCellularSetting {
|
||||||
|
ASK, ALWAYS, NEVER
|
||||||
|
}
|
||||||
|
|
||||||
|
enum class StreamingUsingCellularSetting {
|
||||||
|
ASK, ALWAYS, NEVER
|
||||||
|
}
|
||||||
|
|
||||||
data class ServerConnectionConfig(
|
data class ServerConnectionConfig(
|
||||||
var id:String,
|
var id:String,
|
||||||
var index:Int,
|
var index:Int,
|
||||||
@@ -123,7 +131,9 @@ data class DeviceSettings(
|
|||||||
var sleepTimerLength: Long, // Time in milliseconds
|
var sleepTimerLength: Long, // Time in milliseconds
|
||||||
var disableSleepTimerFadeOut: Boolean,
|
var disableSleepTimerFadeOut: Boolean,
|
||||||
var disableSleepTimerResetFeedback: Boolean,
|
var disableSleepTimerResetFeedback: Boolean,
|
||||||
var languageCode: String
|
var languageCode: String,
|
||||||
|
var downloadUsingCellular: DownloadUsingCellularSetting,
|
||||||
|
var streamingUsingCellular: StreamingUsingCellularSetting
|
||||||
) {
|
) {
|
||||||
companion object {
|
companion object {
|
||||||
// Static method to get default device settings
|
// Static method to get default device settings
|
||||||
@@ -147,7 +157,9 @@ data class DeviceSettings(
|
|||||||
autoSleepTimerAutoRewindTime = 300000L, // 5 minutes
|
autoSleepTimerAutoRewindTime = 300000L, // 5 minutes
|
||||||
disableSleepTimerFadeOut = false,
|
disableSleepTimerFadeOut = false,
|
||||||
disableSleepTimerResetFeedback = false,
|
disableSleepTimerResetFeedback = false,
|
||||||
languageCode = "en-us"
|
languageCode = "en-us",
|
||||||
|
downloadUsingCellular = DownloadUsingCellularSetting.ALWAYS,
|
||||||
|
streamingUsingCellular = StreamingUsingCellularSetting.ALWAYS
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import com.audiobookshelf.app.device.DeviceManager
|
|||||||
import com.fasterxml.jackson.annotation.JsonIgnore
|
import com.fasterxml.jackson.annotation.JsonIgnore
|
||||||
import com.fasterxml.jackson.annotation.JsonIgnoreProperties
|
import com.fasterxml.jackson.annotation.JsonIgnoreProperties
|
||||||
import com.audiobookshelf.app.player.PLAYMETHOD_LOCAL
|
import com.audiobookshelf.app.player.PLAYMETHOD_LOCAL
|
||||||
|
import java.io.File
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
@JsonIgnoreProperties(ignoreUnknown = true)
|
@JsonIgnoreProperties(ignoreUnknown = true)
|
||||||
@@ -78,6 +79,27 @@ class LocalLibraryItem(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@JsonIgnore
|
||||||
|
fun hasTracks(episode:PodcastEpisode?): Boolean {
|
||||||
|
var audioTracks = media.getAudioTracks() as MutableList<AudioTrack>
|
||||||
|
if (episode != null) { // Get podcast episode audio track
|
||||||
|
episode.audioTrack?.let { at -> mutableListOf(at) }?.let { tracks -> audioTracks = tracks }
|
||||||
|
}
|
||||||
|
if (audioTracks.size == 0) return false
|
||||||
|
audioTracks.forEach {
|
||||||
|
// Check that metadata is not null
|
||||||
|
if (it.metadata === null) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
// Check that file exists
|
||||||
|
val file = File(it.metadata!!.path)
|
||||||
|
if (!file.exists()) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
|
||||||
@JsonIgnore
|
@JsonIgnore
|
||||||
fun getPlaybackSession(episode:PodcastEpisode?, deviceInfo:DeviceInfo):PlaybackSession {
|
fun getPlaybackSession(episode:PodcastEpisode?, deviceInfo:DeviceInfo):PlaybackSession {
|
||||||
val localEpisodeId = episode?.id
|
val localEpisodeId = episode?.id
|
||||||
|
|||||||
@@ -53,6 +53,14 @@ object DeviceManager {
|
|||||||
if (deviceData.deviceSettings?.languageCode == null) {
|
if (deviceData.deviceSettings?.languageCode == null) {
|
||||||
deviceData.deviceSettings?.languageCode = "en-us"
|
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 {
|
fun getBase64Id(id:String):String {
|
||||||
|
|||||||
@@ -70,6 +70,7 @@ class FolderScanner(var ctx: Context) {
|
|||||||
)
|
)
|
||||||
localLibraryItem.localFiles.add(localFile)
|
localLibraryItem.localFiles.add(localFile)
|
||||||
|
|
||||||
|
val trackFileMetadata = FileMetadata(file.name, file.extension, file.absolutePath, file.getBasePath(ctx), file.length())
|
||||||
// Create new audio track
|
// Create new audio track
|
||||||
val track = AudioTrack(
|
val track = AudioTrack(
|
||||||
audioTrackFromServer.index,
|
audioTrackFromServer.index,
|
||||||
@@ -78,7 +79,7 @@ class FolderScanner(var ctx: Context) {
|
|||||||
localFile.filename ?: "",
|
localFile.filename ?: "",
|
||||||
localFile.contentUrl,
|
localFile.contentUrl,
|
||||||
localFile.mimeType ?: "",
|
localFile.mimeType ?: "",
|
||||||
null,
|
trackFileMetadata,
|
||||||
true,
|
true,
|
||||||
localFileId,
|
localFileId,
|
||||||
null,
|
null,
|
||||||
@@ -274,7 +275,8 @@ class FolderScanner(var ctx: Context) {
|
|||||||
localLibraryItem.localFiles.add(localFile)
|
localLibraryItem.localFiles.add(localFile)
|
||||||
|
|
||||||
// Create new audio track
|
// Create new audio track
|
||||||
val track = AudioTrack(audioTrackFromServer.index, audioTrackFromServer.startOffset, audioTrackFromServer.duration, localFile.filename ?: "", localFile.contentUrl, localFile.mimeType ?: "", null, true, localFileId, null, audioTrackFromServer.index)
|
val trackFileMetadata = FileMetadata(docFile.name ?: "", docFile.extension ?: "", docFile.getAbsolutePath(ctx), docFile.getBasePath(ctx), docFile.length())
|
||||||
|
val track = AudioTrack(audioTrackFromServer.index, audioTrackFromServer.startOffset, audioTrackFromServer.duration, localFile.filename ?: "", localFile.contentUrl, localFile.mimeType ?: "", trackFileMetadata, true, localFileId, null, audioTrackFromServer.index)
|
||||||
audioTracks.add(track)
|
audioTracks.add(track)
|
||||||
|
|
||||||
Log.d(tag, "scanDownloadItem: Created Audio Track with index ${track.index} from local file ${localFile.absolutePath}")
|
Log.d(tag, "scanDownloadItem: Created Audio Track with index ${track.index} from local file ${localFile.absolutePath}")
|
||||||
|
|||||||
+6
-5
@@ -320,11 +320,10 @@ class PlayerNotificationService : MediaBrowserServiceCompat() {
|
|||||||
val mediaDescriptionBuilder = MediaDescriptionCompat.Builder()
|
val mediaDescriptionBuilder = MediaDescriptionCompat.Builder()
|
||||||
.setExtras(extra)
|
.setExtras(extra)
|
||||||
.setTitle(currentPlaybackSession!!.displayTitle)
|
.setTitle(currentPlaybackSession!!.displayTitle)
|
||||||
.setIconUri(coverUri)
|
|
||||||
|
|
||||||
bitmap?.let {
|
bitmap?.let {
|
||||||
mediaDescriptionBuilder.setIconBitmap(it)
|
mediaDescriptionBuilder.setIconBitmap(it)
|
||||||
}
|
} ?: mediaDescriptionBuilder.setIconUri(coverUri)
|
||||||
|
|
||||||
return mediaDescriptionBuilder.build()
|
return mediaDescriptionBuilder.build()
|
||||||
}
|
}
|
||||||
@@ -888,16 +887,18 @@ class PlayerNotificationService : MediaBrowserServiceCompat() {
|
|||||||
|
|
||||||
fun closePlayback(calledOnError:Boolean? = false) {
|
fun closePlayback(calledOnError:Boolean? = false) {
|
||||||
Log.d(tag, "closePlayback")
|
Log.d(tag, "closePlayback")
|
||||||
|
val config = DeviceManager.serverConnectionConfig
|
||||||
|
|
||||||
val isLocal = mediaProgressSyncer.currentIsLocal
|
val isLocal = mediaProgressSyncer.currentIsLocal
|
||||||
val currentSessionId = mediaProgressSyncer.currentSessionId
|
val currentSessionId = mediaProgressSyncer.currentSessionId
|
||||||
if (mediaProgressSyncer.listeningTimerRunning) {
|
if (mediaProgressSyncer.listeningTimerRunning) {
|
||||||
Log.i(tag, "About to close playback so stopping media progress syncer first")
|
Log.i(tag, "About to close playback so stopping media progress syncer first")
|
||||||
|
|
||||||
mediaProgressSyncer.stop(calledOnError == false) { // If closing on error then do not sync progress (causes exception)
|
mediaProgressSyncer.stop(calledOnError == false) { // If closing on error then do not sync progress (causes exception)
|
||||||
Log.d(tag, "Media Progress syncer stopped")
|
Log.d(tag, "Media Progress syncer stopped")
|
||||||
|
|
||||||
// If not local session then close on server
|
// If not local session then close on server
|
||||||
if (!isLocal && currentSessionId != "") {
|
if (!isLocal && currentSessionId != "") {
|
||||||
apiHandler.closePlaybackSession(currentSessionId) {
|
apiHandler.closePlaybackSession(currentSessionId, config) {
|
||||||
Log.d(tag, "Closed playback session $currentSessionId")
|
Log.d(tag, "Closed playback session $currentSessionId")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -905,7 +906,7 @@ class PlayerNotificationService : MediaBrowserServiceCompat() {
|
|||||||
} else {
|
} else {
|
||||||
// If not local session then close on server
|
// If not local session then close on server
|
||||||
if (!isLocal && currentSessionId != "") {
|
if (!isLocal && currentSessionId != "") {
|
||||||
apiHandler.closePlaybackSession(currentSessionId) {
|
apiHandler.closePlaybackSession(currentSessionId, config) {
|
||||||
Log.d(tag, "Closed playback session $currentSessionId")
|
Log.d(tag, "Closed playback session $currentSessionId")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -198,6 +198,9 @@ class AbsAudioPlayer : Plugin() {
|
|||||||
return call.resolve(JSObject("{\"error\":\"Podcast episode not found\"}"))
|
return call.resolve(JSObject("{\"error\":\"Podcast episode not found\"}"))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (!it.hasTracks(episode)) {
|
||||||
|
return call.resolve(JSObject("{\"error\":\"No audio files found on device. Download book again to fix.\"}"))
|
||||||
|
}
|
||||||
|
|
||||||
Handler(Looper.getMainLooper()).post {
|
Handler(Looper.getMainLooper()).post {
|
||||||
Log.d(tag, "prepareLibraryItem: Preparing Local Media item ${jacksonMapper.writeValueAsString(it)}")
|
Log.d(tag, "prepareLibraryItem: Preparing Local Media item ${jacksonMapper.writeValueAsString(it)}")
|
||||||
|
|||||||
@@ -196,7 +196,11 @@ class AbsFileSystem : Plugin() {
|
|||||||
if (localLibraryItem?.folderId?.startsWith("internal-") == true) {
|
if (localLibraryItem?.folderId?.startsWith("internal-") == true) {
|
||||||
Log.d(tag, "Deleting internal library item at absolutePath $absolutePath")
|
Log.d(tag, "Deleting internal library item at absolutePath $absolutePath")
|
||||||
val file = File(absolutePath)
|
val file = File(absolutePath)
|
||||||
success = file.deleteRecursively()
|
success = if (file.exists()) {
|
||||||
|
file.deleteRecursively()
|
||||||
|
} else {
|
||||||
|
true
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
var subfolderPathToDelete = ""
|
var subfolderPathToDelete = ""
|
||||||
localLibraryItem?.folderId?.let { folderId ->
|
localLibraryItem?.folderId?.let { folderId ->
|
||||||
@@ -218,7 +222,12 @@ class AbsFileSystem : Plugin() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
val docfile = DocumentFileCompat.fromUri(mainActivity, Uri.parse(contentUrl))
|
val docfile = DocumentFileCompat.fromUri(mainActivity, Uri.parse(contentUrl))
|
||||||
success = docfile?.delete() == true
|
if (docfile?.exists() == true) {
|
||||||
|
success = docfile.delete() == true
|
||||||
|
} else {
|
||||||
|
Log.d(tag, "Folder $contentUrl doesn't exist")
|
||||||
|
success = true
|
||||||
|
}
|
||||||
|
|
||||||
if (subfolderPathToDelete != "") {
|
if (subfolderPathToDelete != "") {
|
||||||
Log.d(tag, "Deleting empty subfolder at $subfolderPathToDelete")
|
Log.d(tag, "Deleting empty subfolder at $subfolderPathToDelete")
|
||||||
|
|||||||
@@ -44,10 +44,17 @@ class ApiHandler(var ctx:Context) {
|
|||||||
val address = config?.address ?: DeviceManager.serverAddress
|
val address = config?.address ?: DeviceManager.serverAddress
|
||||||
val token = config?.token ?: DeviceManager.token
|
val token = config?.token ?: DeviceManager.token
|
||||||
|
|
||||||
val request = Request.Builder()
|
try {
|
||||||
.url("${address}$endpoint").addHeader("Authorization", "Bearer $token")
|
val request = Request.Builder()
|
||||||
.build()
|
.url("${address}$endpoint").addHeader("Authorization", "Bearer $token")
|
||||||
makeRequest(request, httpClient, cb)
|
.build()
|
||||||
|
makeRequest(request, httpClient, cb)
|
||||||
|
} catch(e: Exception) {
|
||||||
|
e.printStackTrace()
|
||||||
|
val jsobj = JSObject()
|
||||||
|
jsobj.put("error", "Request failed: ${e.message}")
|
||||||
|
cb(jsobj)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun postRequest(endpoint:String, payload: JSObject?, config:ServerConnectionConfig?, cb: (JSObject) -> Unit) {
|
private fun postRequest(endpoint:String, payload: JSObject?, config:ServerConnectionConfig?, cb: (JSObject) -> Unit) {
|
||||||
@@ -57,23 +64,38 @@ class ApiHandler(var ctx:Context) {
|
|||||||
val requestBody = payload?.toString()?.toRequestBody(mediaType) ?: EMPTY_REQUEST
|
val requestBody = payload?.toString()?.toRequestBody(mediaType) ?: EMPTY_REQUEST
|
||||||
val requestUrl = "${address}$endpoint"
|
val requestUrl = "${address}$endpoint"
|
||||||
Log.d(tag, "postRequest to $requestUrl")
|
Log.d(tag, "postRequest to $requestUrl")
|
||||||
val request = Request.Builder().post(requestBody)
|
try {
|
||||||
.url(requestUrl).addHeader("Authorization", "Bearer ${token}")
|
val request = Request.Builder().post(requestBody)
|
||||||
.build()
|
.url(requestUrl).addHeader("Authorization", "Bearer ${token}")
|
||||||
makeRequest(request, null, cb)
|
.build()
|
||||||
|
makeRequest(request, null, cb)
|
||||||
|
} catch(e: Exception) {
|
||||||
|
e.printStackTrace()
|
||||||
|
val jsobj = JSObject()
|
||||||
|
jsobj.put("error", "Request failed: ${e.message}")
|
||||||
|
cb(jsobj)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun patchRequest(endpoint:String, payload: JSObject, cb: (JSObject) -> Unit) {
|
private fun patchRequest(endpoint:String, payload: JSObject, cb: (JSObject) -> Unit) {
|
||||||
val mediaType = "application/json; charset=utf-8".toMediaType()
|
val mediaType = "application/json; charset=utf-8".toMediaType()
|
||||||
val requestBody = payload.toString().toRequestBody(mediaType)
|
val requestBody = payload.toString().toRequestBody(mediaType)
|
||||||
val request = Request.Builder().patch(requestBody)
|
try {
|
||||||
.url("${DeviceManager.serverAddress}$endpoint").addHeader("Authorization", "Bearer ${DeviceManager.token}")
|
val request = Request.Builder().patch(requestBody)
|
||||||
.build()
|
.url("${DeviceManager.serverAddress}$endpoint").addHeader("Authorization", "Bearer ${DeviceManager.token}")
|
||||||
makeRequest(request, null, cb)
|
.build()
|
||||||
|
makeRequest(request, null, cb)
|
||||||
|
} catch(e: Exception) {
|
||||||
|
e.printStackTrace()
|
||||||
|
val jsobj = JSObject()
|
||||||
|
jsobj.put("error", "Request failed: ${e.message}")
|
||||||
|
cb(jsobj)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun makeRequest(request:Request, httpClient:OkHttpClient?, cb: (JSObject) -> Unit) {
|
private fun makeRequest(request:Request, httpClient:OkHttpClient?, cb: (JSObject) -> Unit) {
|
||||||
val client = httpClient ?: defaultClient
|
val client = httpClient ?: defaultClient
|
||||||
|
|
||||||
client.newCall(request).enqueue(object : Callback {
|
client.newCall(request).enqueue(object : Callback {
|
||||||
override fun onFailure(call: Call, e: IOException) {
|
override fun onFailure(call: Call, e: IOException) {
|
||||||
Log.d(tag, "FAILURE TO CONNECT")
|
Log.d(tag, "FAILURE TO CONNECT")
|
||||||
@@ -297,9 +319,9 @@ class ApiHandler(var ctx:Context) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fun closePlaybackSession(playbackSessionId:String, cb: (Boolean) -> Unit) {
|
fun closePlaybackSession(playbackSessionId:String, config:ServerConnectionConfig?, cb: (Boolean) -> Unit) {
|
||||||
Log.d(tag, "closePlaybackSession: playbackSessionId=$playbackSessionId")
|
Log.d(tag, "closePlaybackSession: playbackSessionId=$playbackSessionId")
|
||||||
postRequest("/api/session/$playbackSessionId/close", null, null) {
|
postRequest("/api/session/$playbackSessionId/close", null, config) {
|
||||||
cb(true)
|
cb(true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
||||||
|
|
||||||
buildscript {
|
buildscript {
|
||||||
ext.kotlin_version = '1.7.20'
|
ext.kotlin_version = '2.0.0'
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
google()
|
google()
|
||||||
|
|||||||
@@ -5,6 +5,9 @@ project(':capacitor-android').projectDir = new File('../node_modules/@capacitor/
|
|||||||
include ':byteowls-capacitor-filesharer'
|
include ':byteowls-capacitor-filesharer'
|
||||||
project(':byteowls-capacitor-filesharer').projectDir = new File('../node_modules/@byteowls/capacitor-filesharer/android')
|
project(':byteowls-capacitor-filesharer').projectDir = new File('../node_modules/@byteowls/capacitor-filesharer/android')
|
||||||
|
|
||||||
|
include ':capacitor-community-volume-buttons'
|
||||||
|
project(':capacitor-community-volume-buttons').projectDir = new File('../node_modules/@capacitor-community/volume-buttons/android')
|
||||||
|
|
||||||
include ':capacitor-app'
|
include ':capacitor-app'
|
||||||
project(':capacitor-app').projectDir = new File('../node_modules/@capacitor/app/android')
|
project(':capacitor-app').projectDir = new File('../node_modules/@capacitor/app/android')
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
ext {
|
ext {
|
||||||
minSdkVersion = 24
|
minSdkVersion = 24
|
||||||
compileSdkVersion = 34
|
compileSdkVersion = 34
|
||||||
targetSdkVersion = 33
|
targetSdkVersion = 34
|
||||||
androidxActivityVersion = '1.7.0'
|
androidxActivityVersion = '1.7.0'
|
||||||
androidxAppCompatVersion = '1.6.1'
|
androidxAppCompatVersion = '1.7.0'
|
||||||
androidxCoordinatorLayoutVersion = '1.2.0'
|
androidxCoordinatorLayoutVersion = '1.2.0'
|
||||||
androidxCoreVersion = '1.10.0'
|
androidxCoreVersion = '1.10.0'
|
||||||
androidPlayCore = '1.9.0'
|
androidPlayCore = '1.9.0'
|
||||||
@@ -13,8 +13,8 @@ ext {
|
|||||||
androidxEspressoCoreVersion = '3.5.1'
|
androidxEspressoCoreVersion = '3.5.1'
|
||||||
cordovaAndroidVersion = '10.1.1'
|
cordovaAndroidVersion = '10.1.1'
|
||||||
androidx_car_version = '1.0.0-alpha7'
|
androidx_car_version = '1.0.0-alpha7'
|
||||||
androidx_core_ktx_version = '1.12.0'
|
androidx_core_ktx_version = '1.13.1'
|
||||||
androidx_media_version = '1.6.0'
|
androidx_media_version = '1.7.0'
|
||||||
androidx_preference_version = '1.1.1'
|
androidx_preference_version = '1.1.1'
|
||||||
androidx_test_runner_version = '1.3.0'
|
androidx_test_runner_version = '1.3.0'
|
||||||
arch_lifecycle_version = '2.2.0'
|
arch_lifecycle_version = '2.2.0'
|
||||||
@@ -27,7 +27,7 @@ ext {
|
|||||||
gradle_version = '3.1.4'
|
gradle_version = '3.1.4'
|
||||||
gson_version = '2.8.5'
|
gson_version = '2.8.5'
|
||||||
junit_version = '4.13'
|
junit_version = '4.13'
|
||||||
kotlin_version = '1.8.10'
|
kotlin_version = '2.0.0'
|
||||||
kotlin_coroutines_version = '1.6.4'
|
kotlin_coroutines_version = '1.6.4'
|
||||||
multidex_version = '1.0.3'
|
multidex_version = '1.0.3'
|
||||||
play_services_auth_version = '18.1.0'
|
play_services_auth_version = '18.1.0'
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<a v-if="showBack" @click="back" class="rounded-full h-10 w-10 flex items-center justify-center mr-2 cursor-pointer">
|
<a v-if="showBack" @click="back" class="rounded-full h-10 w-10 flex items-center justify-center mr-2 cursor-pointer">
|
||||||
<span class="material-icons text-3xl text-fg">arrow_back</span>
|
<span class="material-icons text-3xl text-fg">arrow_back</span>
|
||||||
</a>
|
</a>
|
||||||
<div v-if="user && currentLibrary && networkConnected">
|
<div v-if="user && currentLibrary && socketConnected">
|
||||||
<div class="pl-1.5 pr-2.5 py-2 bg-bg bg-opacity-30 rounded-md flex items-center" @click="clickShowLibraryModal">
|
<div class="pl-1.5 pr-2.5 py-2 bg-bg bg-opacity-30 rounded-md flex items-center" @click="clickShowLibraryModal">
|
||||||
<ui-library-icon :icon="currentLibraryIcon" :size="4" font-size="base" />
|
<ui-library-icon :icon="currentLibraryIcon" :size="4" font-size="base" />
|
||||||
<p class="text-sm leading-4 ml-2 mt-0.5 max-w-24 truncate">{{ currentLibraryName }}</p>
|
<p class="text-sm leading-4 ml-2 mt-0.5 max-w-24 truncate">{{ currentLibraryName }}</p>
|
||||||
@@ -54,8 +54,8 @@ export default {
|
|||||||
this.$store.commit('setCastAvailable', val)
|
this.$store.commit('setCastAvailable', val)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
networkConnected() {
|
socketConnected() {
|
||||||
return this.$store.state.networkConnected
|
return this.$store.state.socketConnected
|
||||||
},
|
},
|
||||||
currentLibrary() {
|
currentLibrary() {
|
||||||
return this.$store.getters['libraries/getCurrentLibrary']
|
return this.$store.getters['libraries/getCurrentLibrary']
|
||||||
@@ -160,4 +160,4 @@ export default {
|
|||||||
transform: translate(10px, 0);
|
transform: translate(10px, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -50,7 +50,7 @@
|
|||||||
<div id="playerContent" class="playerContainer w-full z-20 absolute bottom-0 left-0 right-0 p-2 pointer-events-auto transition-all" :style="{ backgroundColor: showFullscreen ? '' : coverRgb }" @click="clickContainer">
|
<div id="playerContent" class="playerContainer w-full z-20 absolute bottom-0 left-0 right-0 p-2 pointer-events-auto transition-all" :style="{ backgroundColor: showFullscreen ? '' : coverRgb }" @click="clickContainer">
|
||||||
<div v-if="showFullscreen" class="absolute bottom-4 left-0 right-0 w-full pb-4 pt-2 mx-auto px-6" style="max-width: 414px">
|
<div v-if="showFullscreen" class="absolute bottom-4 left-0 right-0 w-full pb-4 pt-2 mx-auto px-6" style="max-width: 414px">
|
||||||
<div class="flex items-center justify-between pointer-events-auto">
|
<div class="flex items-center justify-between pointer-events-auto">
|
||||||
<span v-if="!isPodcast && serverLibraryItemId && networkConnected" class="material-icons text-3xl text-fg-muted cursor-pointer" @click="$emit('showBookmarks')">{{ bookmarks.length ? 'bookmark' : 'bookmark_border' }}</span>
|
<span v-if="!isPodcast && serverLibraryItemId && socketConnected" class="material-icons text-3xl text-fg-muted cursor-pointer" @click="$emit('showBookmarks')">{{ bookmarks.length ? 'bookmark' : 'bookmark_border' }}</span>
|
||||||
<!-- hidden for podcasts but still using this as a placeholder -->
|
<!-- hidden for podcasts but still using this as a placeholder -->
|
||||||
<span v-else class="material-icons text-3xl text-white text-opacity-0">bookmark</span>
|
<span v-else class="material-icons text-3xl text-white text-opacity-0">bookmark</span>
|
||||||
|
|
||||||
@@ -375,8 +375,8 @@ export default {
|
|||||||
return secondsRemaining + 's'
|
return secondsRemaining + 's'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
networkConnected() {
|
socketConnected() {
|
||||||
return this.$store.state.networkConnected
|
return this.$store.state.socketConnected
|
||||||
},
|
},
|
||||||
mediaId() {
|
mediaId() {
|
||||||
if (this.isPodcast || !this.playbackSession) return null
|
if (this.isPodcast || !this.playbackSession) return null
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import { AbsAudioPlayer } from '@/plugins/capacitor'
|
import { AbsAudioPlayer } from '@/plugins/capacitor'
|
||||||
import { Dialog } from '@capacitor/dialog'
|
import { Dialog } from '@capacitor/dialog'
|
||||||
|
import CellularPermissionHelpers from '@/mixins/cellularPermissionHelpers'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
@@ -39,6 +40,7 @@ export default {
|
|||||||
serverEpisodeId: null
|
serverEpisodeId: null
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
mixins: [CellularPermissionHelpers],
|
||||||
computed: {
|
computed: {
|
||||||
bookmarks() {
|
bookmarks() {
|
||||||
if (!this.serverLibraryItemId) return []
|
if (!this.serverLibraryItemId) return []
|
||||||
@@ -193,12 +195,21 @@ export default {
|
|||||||
const startTime = payload.startTime
|
const startTime = payload.startTime
|
||||||
const startWhenReady = !payload.paused
|
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
|
// 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
|
// then store the server library item id so it can be used if a cast is made
|
||||||
const serverLibraryItemId = payload.serverLibraryItemId || null
|
const serverLibraryItemId = payload.serverLibraryItemId || null
|
||||||
const serverEpisodeId = payload.serverEpisodeId || 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({
|
const { value } = await Dialog.confirm({
|
||||||
title: 'Warning',
|
title: 'Warning',
|
||||||
message: `Cannot cast downloaded media items. Confirm to close cast and play on your device.`
|
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)
|
this.$eventBus.$off('device-focus-update', this.deviceFocused)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -171,6 +171,10 @@ export default {
|
|||||||
},
|
},
|
||||||
async logout() {
|
async logout() {
|
||||||
if (this.user) {
|
if (this.user) {
|
||||||
|
if (this.$store.getters['getIsPlayerOpen']) {
|
||||||
|
this.$eventBus.$emit('close-stream')
|
||||||
|
}
|
||||||
|
|
||||||
await this.$nativeHttp.post('/logout').catch((error) => {
|
await this.$nativeHttp.post('/logout').catch((error) => {
|
||||||
console.error('Failed to logout', error)
|
console.error('Failed to logout', error)
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -45,7 +45,7 @@
|
|||||||
<ui-text-input v-model="password" type="password" :disabled="processing" :placeholder="$strings.LabelPassword" class="w-full mb-2 text-lg" />
|
<ui-text-input v-model="password" type="password" :disabled="processing" :placeholder="$strings.LabelPassword" class="w-full mb-2 text-lg" />
|
||||||
|
|
||||||
<div class="flex items-center pt-2">
|
<div class="flex items-center pt-2">
|
||||||
<ui-icon-btn v-if="serverConfig.id" small bg-color="error" icon="delete" @click="removeServerConfigClick" />
|
<ui-icon-btn v-if="serverConfig.id" small bg-color="error" icon="delete" type="button" @click="removeServerConfigClick" />
|
||||||
<div class="flex-grow" />
|
<div class="flex-grow" />
|
||||||
<ui-btn :disabled="processing || !networkConnected" type="submit" class="mt-1 h-10">{{ networkConnected ? $strings.ButtonSubmit : $strings.MessageNoNetworkConnection }}</ui-btn>
|
<ui-btn :disabled="processing || !networkConnected" type="submit" class="mt-1 h-10">{{ networkConnected ? $strings.ButtonSubmit : $strings.MessageNoNetworkConnection }}</ui-btn>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<span class="material-icons px-2" @click="showSortModal = true">sort</span>
|
<span class="material-icons px-2" @click="showSortModal = true">sort</span>
|
||||||
</template>
|
</template>
|
||||||
|
<span v-if="seriesBookPage" class="material-icons px-2" @click="downloadSeries">download</span>
|
||||||
<span v-if="(page == 'library' && isBookLibrary) || seriesBookPage" class="material-icons px-2" @click="showMoreMenuDialog = true">more_vert</span>
|
<span v-if="(page == 'library' && isBookLibrary) || seriesBookPage" class="material-icons px-2" @click="showMoreMenuDialog = true">more_vert</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -144,6 +145,10 @@ export default {
|
|||||||
async changeView() {
|
async changeView() {
|
||||||
this.bookshelfListView = !this.bookshelfListView
|
this.bookshelfListView = !this.bookshelfListView
|
||||||
await this.$hapticsImpact()
|
await this.$hapticsImpact()
|
||||||
|
},
|
||||||
|
downloadSeries() {
|
||||||
|
console.log('Download Series click')
|
||||||
|
this.$eventBus.$emit('download-series-click')
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
|
|||||||
@@ -63,6 +63,10 @@ export default {
|
|||||||
{
|
{
|
||||||
text: this.$strings.LabelFileModified,
|
text: this.$strings.LabelFileModified,
|
||||||
value: 'mtimeMs'
|
value: 'mtimeMs'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: this.$strings.LabelRandomly,
|
||||||
|
value: 'random'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
podcastItems: [
|
podcastItems: [
|
||||||
@@ -89,6 +93,10 @@ export default {
|
|||||||
{
|
{
|
||||||
text: this.$strings.LabelFileModified,
|
text: this.$strings.LabelFileModified,
|
||||||
value: 'mtimeMs'
|
value: 'mtimeMs'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: this.$strings.LabelRandomly,
|
||||||
|
value: 'random'
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
episodeItems: [
|
episodeItems: [
|
||||||
|
|||||||
@@ -65,7 +65,7 @@ export default {
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
manualTimerModal: true,
|
manualTimerModal: false,
|
||||||
manualTimeoutMin: 1
|
manualTimeoutMin: 1
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -34,16 +34,18 @@ export default {
|
|||||||
currentLocationNum: 0,
|
currentLocationNum: 0,
|
||||||
currentLocationCfi: null,
|
currentLocationCfi: null,
|
||||||
inittingDisplay: true,
|
inittingDisplay: true,
|
||||||
|
isRefreshingUI: false,
|
||||||
ereaderSettings: {
|
ereaderSettings: {
|
||||||
theme: 'dark',
|
theme: 'dark',
|
||||||
fontScale: 100,
|
fontScale: 100,
|
||||||
lineSpacing: 115
|
lineSpacing: 115,
|
||||||
|
textStroke: 0
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
isPlayerOpen() {
|
isPlayerOpen() {
|
||||||
this.updateHeight()
|
this.refreshUI()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@@ -112,7 +114,8 @@ export default {
|
|||||||
'*': {
|
'*': {
|
||||||
color: `${fontColor}!important`,
|
color: `${fontColor}!important`,
|
||||||
'background-color': `${backgroundColor}!important`,
|
'background-color': `${backgroundColor}!important`,
|
||||||
'line-height': this.ereaderSettings.lineSpacing + '%!important'
|
'line-height': this.ereaderSettings.lineSpacing + '%!important',
|
||||||
|
'-webkit-text-stroke': this.ereaderSettings.textStroke/100 + 'px ' + fontColor + '!important'
|
||||||
},
|
},
|
||||||
a: {
|
a: {
|
||||||
color: `${fontColor}!important`
|
color: `${fontColor}!important`
|
||||||
@@ -135,11 +138,6 @@ export default {
|
|||||||
goToChapter(href) {
|
goToChapter(href) {
|
||||||
return this.rendition?.display(href)
|
return this.rendition?.display(href)
|
||||||
},
|
},
|
||||||
updateHeight() {
|
|
||||||
if (this.rendition && this.rendition.resize) {
|
|
||||||
this.rendition.resize(window.innerWidth, window.innerHeight - this.readerHeightOffset)
|
|
||||||
}
|
|
||||||
},
|
|
||||||
prev() {
|
prev() {
|
||||||
if (this.rendition) {
|
if (this.rendition) {
|
||||||
this.rendition.prev()
|
this.rendition.prev()
|
||||||
@@ -382,14 +380,54 @@ export default {
|
|||||||
this.rendition.getContents().forEach((c) => {
|
this.rendition.getContents().forEach((c) => {
|
||||||
c.addStylesheetRules(this.themeRules)
|
c.addStylesheetRules(this.themeRules)
|
||||||
})
|
})
|
||||||
|
},
|
||||||
|
async screenOrientationChange() {
|
||||||
|
if (this.isRefreshingUI) return
|
||||||
|
this.isRefreshingUI = true
|
||||||
|
const windowWidth = window.innerWidth
|
||||||
|
this.refreshUI()
|
||||||
|
|
||||||
|
// Window width does not always change right away. Wait up to 250ms for a change.
|
||||||
|
// iPhone 10 on iOS 16 took between 100 - 200ms to update when going from portrait to landscape
|
||||||
|
// but landscape to portrait was immediate
|
||||||
|
for (let i = 0; i < 5; i++) {
|
||||||
|
await new Promise((resolve) => setTimeout(resolve, 50))
|
||||||
|
if (window.innerWidth !== windowWidth) {
|
||||||
|
this.refreshUI()
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.isRefreshingUI = false
|
||||||
|
},
|
||||||
|
refreshUI() {
|
||||||
|
if (this.rendition?.resize) {
|
||||||
|
this.rendition.resize(window.innerWidth, window.innerHeight - this.readerHeightOffset)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
beforeDestroy() {
|
|
||||||
this.book?.destroy()
|
|
||||||
},
|
|
||||||
mounted() {
|
mounted() {
|
||||||
this.initEpub()
|
this.initEpub()
|
||||||
}
|
|
||||||
|
if (screen.orientation) {
|
||||||
|
// Not available on ios
|
||||||
|
screen.orientation.addEventListener('change', this.screenOrientationChange)
|
||||||
|
} else {
|
||||||
|
document.addEventListener('orientationchange', this.screenOrientationChange)
|
||||||
|
}
|
||||||
|
window.addEventListener('resize', this.screenOrientationChange)
|
||||||
|
},
|
||||||
|
beforeDestroy() {
|
||||||
|
this.book?.destroy()
|
||||||
|
|
||||||
|
if (screen.orientation) {
|
||||||
|
// Not available on ios
|
||||||
|
screen.orientation.removeEventListener('change', this.screenOrientationChange)
|
||||||
|
} else {
|
||||||
|
document.removeEventListener('orientationchange', this.screenOrientationChange)
|
||||||
|
}
|
||||||
|
window.removeEventListener('resize', this.screenOrientationChange)
|
||||||
|
},
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
@@ -404,4 +442,4 @@ export default {
|
|||||||
max-height: calc(100% - 132px);
|
max-height: calc(100% - 132px);
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
<div class="h-full flex items-center justify-center">
|
<div class="h-full flex items-center justify-center">
|
||||||
<div :style="{ width: pdfWidth + 'px', height: pdfHeight + 'px' }" class="w-full h-full overflow-auto">
|
<div :style="{ width: pdfWidth + 'px', height: pdfHeight + 'px' }" class="w-full h-full overflow-auto">
|
||||||
<div v-if="loadedRatio > 0 && loadedRatio < 1" style="background-color: green; color: white; text-align: center" :style="{ width: loadedRatio * 100 + '%' }">{{ Math.floor(loadedRatio * 100) }}%</div>
|
<div v-if="loadedRatio > 0 && loadedRatio < 1" style="background-color: green; color: white; text-align: center" :style="{ width: loadedRatio * 100 + '%' }">{{ Math.floor(loadedRatio * 100) }}%</div>
|
||||||
<pdf ref="pdf" class="m-auto z-10 border border-black border-opacity-20 shadow-md bg-white" :src="pdfDocInitParams" :page="page" :rotate="rotate" @progress="loadedRatio = $event" @error="error" @num-pages="numPagesLoaded" @link-clicked="page = $event" @loaded="loadedEvt"></pdf>
|
<pdf v-if="pdfDocInitParams" ref="pdf" class="m-auto z-10 border border-black border-opacity-20 shadow-md bg-white" :src="pdfDocInitParams" :page="page" :rotate="rotate" @progress="loadedRatio = $event" @error="error" @num-pages="numPagesLoaded" @link-clicked="page = $event" @loaded="loadedEvt"></pdf>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -48,7 +48,8 @@ export default {
|
|||||||
page: 1,
|
page: 1,
|
||||||
numPages: 0,
|
numPages: 0,
|
||||||
windowWidth: 0,
|
windowWidth: 0,
|
||||||
windowHeight: 0
|
windowHeight: 0,
|
||||||
|
pdfDocInitParams: null
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@@ -106,14 +107,6 @@ export default {
|
|||||||
if (!this.userItemProgress?.ebookLocation || isNaN(this.userItemProgress.ebookLocation)) return 0
|
if (!this.userItemProgress?.ebookLocation || isNaN(this.userItemProgress.ebookLocation)) return 0
|
||||||
return Number(this.userItemProgress.ebookLocation)
|
return Number(this.userItemProgress.ebookLocation)
|
||||||
},
|
},
|
||||||
pdfDocInitParams() {
|
|
||||||
return {
|
|
||||||
url: this.url,
|
|
||||||
httpHeaders: {
|
|
||||||
Authorization: `Bearer ${this.userToken}`
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
isPlayerOpen() {
|
isPlayerOpen() {
|
||||||
return this.$store.getters['getIsPlayerOpen']
|
return this.$store.getters['getIsPlayerOpen']
|
||||||
}
|
}
|
||||||
@@ -157,6 +150,8 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
numPagesLoaded(e) {
|
numPagesLoaded(e) {
|
||||||
|
if (!e) return
|
||||||
|
|
||||||
this.numPages = e
|
this.numPages = e
|
||||||
},
|
},
|
||||||
prev() {
|
prev() {
|
||||||
@@ -175,6 +170,14 @@ export default {
|
|||||||
screenOrientationChange() {
|
screenOrientationChange() {
|
||||||
this.windowWidth = window.innerWidth
|
this.windowWidth = window.innerWidth
|
||||||
this.windowHeight = window.innerHeight
|
this.windowHeight = window.innerHeight
|
||||||
|
},
|
||||||
|
init() {
|
||||||
|
this.pdfDocInitParams = {
|
||||||
|
url: this.url,
|
||||||
|
httpHeaders: {
|
||||||
|
Authorization: `Bearer ${this.userToken}`
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
@@ -188,6 +191,8 @@ export default {
|
|||||||
document.addEventListener('orientationchange', this.screenOrientationChange)
|
document.addEventListener('orientationchange', this.screenOrientationChange)
|
||||||
}
|
}
|
||||||
window.addEventListener('resize', this.screenOrientationChange)
|
window.addEventListener('resize', this.screenOrientationChange)
|
||||||
|
|
||||||
|
this.init()
|
||||||
},
|
},
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
if (screen.orientation) {
|
if (screen.orientation) {
|
||||||
@@ -199,4 +204,4 @@ export default {
|
|||||||
window.removeEventListener('resize', this.screenOrientationChange)
|
window.removeEventListener('resize', this.screenOrientationChange)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -56,7 +56,7 @@
|
|||||||
<!-- ereader settings modal -->
|
<!-- ereader settings modal -->
|
||||||
<modals-fullscreen-modal v-model="showSettingsModal" :theme="ereaderTheme" half-screen>
|
<modals-fullscreen-modal v-model="showSettingsModal" :theme="ereaderTheme" half-screen>
|
||||||
<div style="box-shadow: 0px -8px 8px #11111155">
|
<div style="box-shadow: 0px -8px 8px #11111155">
|
||||||
<div class="flex items-end justify-between h-20 px-4 pb-2 mb-6">
|
<div class="flex items-end justify-between h-14 px-4 pb-2 mb-6">
|
||||||
<h1 class="text-lg">{{ $strings.HeaderEreaderSettings }}</h1>
|
<h1 class="text-lg">{{ $strings.HeaderEreaderSettings }}</h1>
|
||||||
<button class="flex" @click="showSettingsModal = false">
|
<button class="flex" @click="showSettingsModal = false">
|
||||||
<span class="material-icons">close</span>
|
<span class="material-icons">close</span>
|
||||||
@@ -82,12 +82,24 @@
|
|||||||
</div>
|
</div>
|
||||||
<ui-range-input v-model="ereaderSettings.lineSpacing" :min="100" :max="300" :step="5" input-width="180px" @input="settingsUpdated" />
|
<ui-range-input v-model="ereaderSettings.lineSpacing" :min="100" :max="300" :step="5" input-width="180px" @input="settingsUpdated" />
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center">
|
<div class="flex items-center mb-6">
|
||||||
|
<div class="w-32">
|
||||||
|
<p class="text-base">{{ $strings.LabelFontBoldness }}:</p>
|
||||||
|
</div>
|
||||||
|
<ui-range-input v-model="ereaderSettings.textStroke" :min="0" :max="300" :step="5" input-width="180px" @input="settingsUpdated" />
|
||||||
|
</div>
|
||||||
|
<div class="flex items-center mb-6">
|
||||||
<div class="w-32">
|
<div class="w-32">
|
||||||
<p class="text-base">{{ $strings.LabelLayout }}:</p>
|
<p class="text-base">{{ $strings.LabelLayout }}:</p>
|
||||||
</div>
|
</div>
|
||||||
<ui-toggle-btns v-model="ereaderSettings.spread" :items="spreadItems" @input="settingsUpdated" />
|
<ui-toggle-btns v-model="ereaderSettings.spread" :items="spreadItems" @input="settingsUpdated" />
|
||||||
</div>
|
</div>
|
||||||
|
<div class="flex items-center">
|
||||||
|
<div class="w-32">
|
||||||
|
<p class="text-base">{{ $strings.LabelNavigateWithVolume }}:</p>
|
||||||
|
</div>
|
||||||
|
<ui-toggle-btns v-model="ereaderSettings.navigateWithVolume" :items="navigateWithVolumeItems" @input="settingsUpdated" />
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -97,6 +109,7 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { Capacitor } from '@capacitor/core'
|
import { Capacitor } from '@capacitor/core'
|
||||||
|
import { VolumeButtons } from '@capacitor-community/volume-buttons'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
@@ -112,11 +125,14 @@ export default {
|
|||||||
showSettingsModal: false,
|
showSettingsModal: false,
|
||||||
comicHasMetadata: false,
|
comicHasMetadata: false,
|
||||||
chapters: [],
|
chapters: [],
|
||||||
|
isInittingWatchVolume: false,
|
||||||
ereaderSettings: {
|
ereaderSettings: {
|
||||||
theme: 'dark',
|
theme: 'dark',
|
||||||
fontScale: 100,
|
fontScale: 100,
|
||||||
lineSpacing: 115,
|
lineSpacing: 115,
|
||||||
spread: 'auto'
|
spread: 'auto',
|
||||||
|
textStroke: 0,
|
||||||
|
navigateWithVolume: 'enabled'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -127,13 +143,17 @@ export default {
|
|||||||
this.comicHasMetadata = false
|
this.comicHasMetadata = false
|
||||||
this.registerListeners()
|
this.registerListeners()
|
||||||
this.hideToolbar()
|
this.hideToolbar()
|
||||||
|
|
||||||
console.log('showReader for ebookFile', JSON.stringify(this.ebookFile))
|
|
||||||
} else {
|
} else {
|
||||||
this.unregisterListeners()
|
this.unregisterListeners()
|
||||||
this.$showHideStatusBar(true)
|
this.$showHideStatusBar(true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
isPlayerOpen(newVal, oldVal) {
|
||||||
|
// Closed player
|
||||||
|
if (!newVal && oldVal) {
|
||||||
|
this.initWatchVolume()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@@ -173,6 +193,22 @@ export default {
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
navigateWithVolumeItems() {
|
||||||
|
return [
|
||||||
|
{
|
||||||
|
text: this.$strings.LabelNavigateWithVolumeEnabled,
|
||||||
|
value: 'enabled'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: this.$strings.LabelNavigateWithVolumeMirrored,
|
||||||
|
value: 'mirrored'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: this.$strings.LabelNavigateWithVolumeDisabled,
|
||||||
|
value: 'none'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
themeItems() {
|
themeItems() {
|
||||||
return [
|
return [
|
||||||
{
|
{
|
||||||
@@ -257,6 +293,8 @@ export default {
|
|||||||
settingsUpdated() {
|
settingsUpdated() {
|
||||||
this.$refs.readerComponent?.updateSettings?.(this.ereaderSettings)
|
this.$refs.readerComponent?.updateSettings?.(this.ereaderSettings)
|
||||||
localStorage.setItem('ereaderSettings', JSON.stringify(this.ereaderSettings))
|
localStorage.setItem('ereaderSettings', JSON.stringify(this.ereaderSettings))
|
||||||
|
|
||||||
|
this.initWatchVolume()
|
||||||
},
|
},
|
||||||
goToChapter(href) {
|
goToChapter(href) {
|
||||||
this.showTOCModal = false
|
this.showTOCModal = false
|
||||||
@@ -369,31 +407,71 @@ export default {
|
|||||||
try {
|
try {
|
||||||
const settings = localStorage.getItem('ereaderSettings')
|
const settings = localStorage.getItem('ereaderSettings')
|
||||||
if (settings) {
|
if (settings) {
|
||||||
const ereaderSettings = JSON.parse(settings)
|
const _ereaderSettings = JSON.parse(settings)
|
||||||
if (!ereaderSettings.spread) {
|
for (const key in this.ereaderSettings) {
|
||||||
// Added in 0.9.71
|
if (_ereaderSettings[key] !== undefined) {
|
||||||
ereaderSettings.spread = 'auto'
|
this.ereaderSettings[key] = _ereaderSettings[key]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
this.ereaderSettings = ereaderSettings
|
|
||||||
this.settingsUpdated()
|
this.settingsUpdated()
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('Failed to load ereader settings', error)
|
console.error('Failed to load ereader settings', error)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
async initWatchVolume() {
|
||||||
|
if (this.isInittingWatchVolume || !this.isEpub) return
|
||||||
|
this.isInittingWatchVolume = true
|
||||||
|
const isWatching = await VolumeButtons.isWatching()
|
||||||
|
|
||||||
|
if (this.ereaderSettings.navigateWithVolume !== 'none' && !this.isPlayerOpen) {
|
||||||
|
if (!isWatching.value) {
|
||||||
|
const options = {
|
||||||
|
disableSystemVolumeHandler: true,
|
||||||
|
suppressVolumeIndicator: true
|
||||||
|
}
|
||||||
|
await VolumeButtons.watchVolume(options, this.volumePressed)
|
||||||
|
}
|
||||||
|
} else if (isWatching.value) {
|
||||||
|
await VolumeButtons.clearWatch().catch((error) => {
|
||||||
|
console.error('Failed to clear volume watch', error)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
this.isInittingWatchVolume = false
|
||||||
|
},
|
||||||
registerListeners() {
|
registerListeners() {
|
||||||
this.$eventBus.$on('close-ebook', this.closeEvt)
|
this.$eventBus.$on('close-ebook', this.closeEvt)
|
||||||
document.body.addEventListener('touchstart', this.touchstart)
|
document.body.addEventListener('touchstart', this.touchstart)
|
||||||
document.body.addEventListener('touchend', this.touchend)
|
document.body.addEventListener('touchend', this.touchend)
|
||||||
|
this.initWatchVolume()
|
||||||
},
|
},
|
||||||
unregisterListeners() {
|
unregisterListeners() {
|
||||||
this.$eventBus.$on('close-ebook', this.closeEvt)
|
this.$eventBus.$on('close-ebook', this.closeEvt)
|
||||||
document.body.removeEventListener('touchstart', this.touchstart)
|
document.body.removeEventListener('touchstart', this.touchstart)
|
||||||
document.body.removeEventListener('touchend', this.touchend)
|
document.body.removeEventListener('touchend', this.touchend)
|
||||||
|
VolumeButtons.clearWatch().catch((error) => {
|
||||||
|
console.error('Failed to clear volume watch', error)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
volumePressed(e) {
|
||||||
|
if (this.ereaderSettings.navigateWithVolume == 'enabled') {
|
||||||
|
if (e.direction == 'up') {
|
||||||
|
this.prev()
|
||||||
|
} else {
|
||||||
|
this.next()
|
||||||
|
}
|
||||||
|
} else if (this.ereaderSettings.navigateWithVolume == 'mirrored') {
|
||||||
|
if (e.direction == 'down') {
|
||||||
|
this.prev()
|
||||||
|
} else {
|
||||||
|
this.next()
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
this.unregisterListeners()
|
this.unregisterListeners()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -58,6 +58,7 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { AbsFileSystem, AbsDownloader } from '@/plugins/capacitor'
|
import { AbsFileSystem, AbsDownloader } from '@/plugins/capacitor'
|
||||||
|
import cellularPermissionHelpers from '@/mixins/cellularPermissionHelpers'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
@@ -73,6 +74,7 @@ export default {
|
|||||||
},
|
},
|
||||||
isLocal: Boolean
|
isLocal: Boolean
|
||||||
},
|
},
|
||||||
|
mixins: [cellularPermissionHelpers],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
isProcessingReadUpdate: false,
|
isProcessingReadUpdate: false,
|
||||||
@@ -180,6 +182,9 @@ export default {
|
|||||||
async downloadClick() {
|
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
|
this.startingDownload = true
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.startingDownload = false
|
this.startingDownload = false
|
||||||
|
|||||||
@@ -101,8 +101,8 @@ export default {
|
|||||||
isAdminOrUp() {
|
isAdminOrUp() {
|
||||||
return this.$store.getters['user/getIsAdminOrUp']
|
return this.$store.getters['user/getIsAdminOrUp']
|
||||||
},
|
},
|
||||||
networkConnected() {
|
socketConnected() {
|
||||||
return this.$store.state.networkConnected
|
return this.$store.state.socketConnected
|
||||||
},
|
},
|
||||||
libraryItemId() {
|
libraryItemId() {
|
||||||
return this.libraryItem?.id || null
|
return this.libraryItem?.id || null
|
||||||
@@ -233,7 +233,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
async searchEpisodes() {
|
async searchEpisodes() {
|
||||||
if (!this.networkConnected) {
|
if (!this.socketConnected) {
|
||||||
return this.$toast.error(this.$strings.MessageNoNetworkConnection)
|
return this.$toast.error(this.$strings.MessageNoNetworkConnection)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -314,4 +314,4 @@ export default {
|
|||||||
this.$socket.$off('episode_download_finished', this.episodeDownloadFinished)
|
this.$socket.$off('episode_download_finished', this.episodeDownloadFinished)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -61,6 +61,7 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { AbsFileSystem, AbsDownloader } from '@/plugins/capacitor'
|
import { AbsFileSystem, AbsDownloader } from '@/plugins/capacitor'
|
||||||
|
import CellularPermissionHelpers from '@/mixins/cellularPermissionHelpers'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
@@ -83,6 +84,7 @@ export default {
|
|||||||
processing: false
|
processing: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
mixins: [CellularPermissionHelpers],
|
||||||
computed: {
|
computed: {
|
||||||
bookCoverAspectRatio() {
|
bookCoverAspectRatio() {
|
||||||
return this.$store.getters['libraries/getBookCoverAspectRatio']
|
return this.$store.getters['libraries/getBookCoverAspectRatio']
|
||||||
@@ -187,6 +189,10 @@ export default {
|
|||||||
},
|
},
|
||||||
async downloadClick() {
|
async downloadClick() {
|
||||||
if (this.downloadItem || this.pendingDownload) return
|
if (this.downloadItem || this.pendingDownload) return
|
||||||
|
|
||||||
|
const hasPermission = await this.checkCellularPermission('download')
|
||||||
|
if (!hasPermission) return
|
||||||
|
|
||||||
this.pendingDownload = true
|
this.pendingDownload = true
|
||||||
await this.$hapticsImpact()
|
await this.$hapticsImpact()
|
||||||
if (this.isIos) {
|
if (this.isIos) {
|
||||||
@@ -262,7 +268,6 @@ export default {
|
|||||||
|
|
||||||
if (this.localEpisode && this.localLibraryItemId) {
|
if (this.localEpisode && this.localLibraryItemId) {
|
||||||
console.log('Play local episode', this.localEpisode.id, this.localLibraryItemId)
|
console.log('Play local episode', this.localEpisode.id, this.localLibraryItemId)
|
||||||
|
|
||||||
this.$eventBus.$emit('play-item', {
|
this.$eventBus.$emit('play-item', {
|
||||||
libraryItemId: this.localLibraryItemId,
|
libraryItemId: this.localLibraryItemId,
|
||||||
episodeId: this.localEpisode.id,
|
episodeId: this.localEpisode.id,
|
||||||
@@ -285,7 +290,11 @@ export default {
|
|||||||
const isFinished = !this.userIsFinished
|
const isFinished = !this.userIsFinished
|
||||||
const localLibraryItemId = this.isLocal ? this.libraryItemId : this.localLibraryItemId
|
const localLibraryItemId = this.isLocal ? this.libraryItemId : this.localLibraryItemId
|
||||||
const localEpisodeId = this.isLocal ? this.episode.id : this.localEpisode.id
|
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))
|
console.log('toggleFinished payload', JSON.stringify(payload))
|
||||||
if (payload?.error) {
|
if (payload?.error) {
|
||||||
this.$toast.error(payload?.error || 'Unknown error')
|
this.$toast.error(payload?.error || 'Unknown error')
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<button class="icon-btn rounded-md flex items-center justify-center h-9 w-9 relative" @mousedown.prevent :disabled="disabled || loading" :class="className" @click="clickBtn">
|
<button class="icon-btn rounded-md flex items-center justify-center h-9 w-9 relative" :disabled="disabled || loading" :class="className" :type="type" @mousedown.prevent @click="clickBtn">
|
||||||
<div v-if="loading" class="text-fg absolute top-0 left-0 w-full h-full flex items-center justify-center text-opacity-100">
|
<div v-if="loading" class="text-fg absolute top-0 left-0 w-full h-full flex items-center justify-center text-opacity-100">
|
||||||
<svg class="animate-spin" style="width: 24px; height: 24px" viewBox="0 0 24 24">
|
<svg class="animate-spin" style="width: 24px; height: 24px" viewBox="0 0 24 24">
|
||||||
<path fill="currentColor" d="M12,4V2A10,10 0 0,0 2,12H4A8,8 0 0,1 12,4Z" />
|
<path fill="currentColor" d="M12,4V2A10,10 0 0,0 2,12H4A8,8 0 0,1 12,4Z" />
|
||||||
@@ -13,6 +13,10 @@
|
|||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
icon: String,
|
icon: String,
|
||||||
|
type: {
|
||||||
|
type: String,
|
||||||
|
default: 'button'
|
||||||
|
},
|
||||||
disabled: Boolean,
|
disabled: Boolean,
|
||||||
bgColor: {
|
bgColor: {
|
||||||
type: String,
|
type: String,
|
||||||
@@ -77,4 +81,4 @@ button.icon-btn:disabled::before {
|
|||||||
button.icon-btn:disabled span {
|
button.icon-btn:disabled span {
|
||||||
color: #777;
|
color: #777;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -740,12 +740,12 @@
|
|||||||
ASSETCATALOG_COMPILER_APPICON_NAME = Icons;
|
ASSETCATALOG_COMPILER_APPICON_NAME = Icons;
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
CURRENT_PROJECT_VERSION = 30;
|
CURRENT_PROJECT_VERSION = 34;
|
||||||
DEVELOPMENT_TEAM = 7UFJ7D8V6A;
|
DEVELOPMENT_TEAM = 7UFJ7D8V6A;
|
||||||
INFOPLIST_FILE = App/Info.plist;
|
INFOPLIST_FILE = App/Info.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||||
MARKETING_VERSION = 0.9.73;
|
MARKETING_VERSION = 0.9.77;
|
||||||
OTHER_SWIFT_FLAGS = "$(inherited) \"-D\" \"COCOAPODS\" \"-DDEBUG\"";
|
OTHER_SWIFT_FLAGS = "$(inherited) \"-D\" \"COCOAPODS\" \"-DDEBUG\"";
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.audiobookshelf.app.dev;
|
PRODUCT_BUNDLE_IDENTIFIER = com.audiobookshelf.app.dev;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
@@ -764,12 +764,12 @@
|
|||||||
ASSETCATALOG_COMPILER_APPICON_NAME = Icons;
|
ASSETCATALOG_COMPILER_APPICON_NAME = Icons;
|
||||||
CLANG_ENABLE_MODULES = YES;
|
CLANG_ENABLE_MODULES = YES;
|
||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
CURRENT_PROJECT_VERSION = 30;
|
CURRENT_PROJECT_VERSION = 34;
|
||||||
DEVELOPMENT_TEAM = 7UFJ7D8V6A;
|
DEVELOPMENT_TEAM = 7UFJ7D8V6A;
|
||||||
INFOPLIST_FILE = App/Info.plist;
|
INFOPLIST_FILE = App/Info.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||||
MARKETING_VERSION = 0.9.73;
|
MARKETING_VERSION = 0.9.77;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.audiobookshelf.app;
|
PRODUCT_BUNDLE_IDENTIFIER = com.audiobookshelf.app;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "";
|
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "";
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
|
|||||||
// Override point for customization after application launch.
|
// Override point for customization after application launch.
|
||||||
|
|
||||||
let configuration = Realm.Configuration(
|
let configuration = Realm.Configuration(
|
||||||
schemaVersion: 17,
|
schemaVersion: 18,
|
||||||
migrationBlock: { [weak self] migration, oldSchemaVersion in
|
migrationBlock: { [weak self] migration, oldSchemaVersion in
|
||||||
if (oldSchemaVersion < 1) {
|
if (oldSchemaVersion < 1) {
|
||||||
self?.logger.log("Realm schema version was \(oldSchemaVersion)")
|
self?.logger.log("Realm schema version was \(oldSchemaVersion)")
|
||||||
@@ -54,6 +54,13 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
|
|||||||
newObject?["chapterTrack"] = false
|
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"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -8,13 +8,16 @@
|
|||||||
import Foundation
|
import Foundation
|
||||||
import Capacitor
|
import Capacitor
|
||||||
import RealmSwift
|
import RealmSwift
|
||||||
|
import Network
|
||||||
|
|
||||||
@objc(AbsAudioPlayer)
|
@objc(AbsAudioPlayer)
|
||||||
public class AbsAudioPlayer: CAPPlugin {
|
public class AbsAudioPlayer: CAPPlugin {
|
||||||
private let logger = AppLogger(category: "AbsAudioPlayer")
|
private let logger = AppLogger(category: "AbsAudioPlayer")
|
||||||
|
|
||||||
private var initialPlayWhenReady = false
|
private var initialPlayWhenReady = false
|
||||||
|
private var monitor: NWPathMonitor?
|
||||||
|
private let queue = DispatchQueue.global(qos: .background)
|
||||||
|
|
||||||
override public func load() {
|
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(sendMetadata), name: NSNotification.Name(PlayerEvents.update.rawValue), object: nil)
|
||||||
NotificationCenter.default.addObserver(self, selector: #selector(sendPlaybackClosedEvent), name: NSNotification.Name(PlayerEvents.closed.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(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(onPlaybackFailed), name: NSNotification.Name(PlayerEvents.failed.rawValue), object: nil)
|
||||||
NotificationCenter.default.addObserver(self, selector: #selector(onLocalMediaProgressUpdate), name: NSNotification.Name(PlayerEvents.localProgress.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?.allowsBackForwardNavigationGestures = true;
|
||||||
self.bridge?.webView?.scrollView.alwaysBounceVertical = false;
|
self.bridge?.webView?.scrollView.alwaysBounceVertical = false;
|
||||||
|
|
||||||
|
setupNetworkMonitor()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
deinit {
|
||||||
|
monitor?.cancel()
|
||||||
|
}
|
||||||
|
|
||||||
@objc func onReady(_ call: CAPPluginCall) {
|
@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
|
// 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()
|
call.resolve()
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func startPlaybackSession(_ session: PlaybackSession, playWhenReady: Bool, playbackRate: Float) throws {
|
@objc func startPlaybackSession(_ session: PlaybackSession, playWhenReady: Bool, playbackRate: Float) throws {
|
||||||
guard let libraryItemId = session.libraryItemId else { throw PlayerError.libraryItemIdNotSpecified }
|
guard let libraryItemId = session.libraryItemId else { throw PlayerError.libraryItemIdNotSpecified }
|
||||||
|
|
||||||
self.sendPrepareMetadataEvent(itemId: libraryItemId, playWhenReady: playWhenReady)
|
self.sendPrepareMetadataEvent(itemId: libraryItemId, playWhenReady: playWhenReady)
|
||||||
self.sendPlaybackSession(session: try session.asDictionary())
|
self.sendPlaybackSession(session: try session.asDictionary())
|
||||||
PlayerHandler.startPlayback(sessionId: session.id, playWhenReady: playWhenReady, playbackRate: playbackRate)
|
PlayerHandler.startPlayback(sessionId: session.id, playWhenReady: playWhenReady, playbackRate: playbackRate)
|
||||||
@@ -50,14 +58,14 @@ public class AbsAudioPlayer: CAPPlugin {
|
|||||||
let playWhenReady = call.getBool("playWhenReady", true)
|
let playWhenReady = call.getBool("playWhenReady", true)
|
||||||
let playbackRate = call.getFloat("playbackRate", 1)
|
let playbackRate = call.getFloat("playbackRate", 1)
|
||||||
let startTimeOverride = call.getDouble("startTime")
|
let startTimeOverride = call.getDouble("startTime")
|
||||||
|
|
||||||
if libraryItemId == nil {
|
if libraryItemId == nil {
|
||||||
logger.error("provide library item id")
|
logger.error("provide library item id")
|
||||||
return call.resolve()
|
return call.resolve()
|
||||||
}
|
}
|
||||||
|
|
||||||
PlayerHandler.stopPlayback()
|
PlayerHandler.stopPlayback()
|
||||||
|
|
||||||
let isLocalItem = libraryItemId?.starts(with: "local_") ?? false
|
let isLocalItem = libraryItemId?.starts(with: "local_") ?? false
|
||||||
if (isLocalItem) {
|
if (isLocalItem) {
|
||||||
let item = Database.shared.getLocalLibraryItem(localLibraryItemId: libraryItemId!)
|
let item = Database.shared.getLocalLibraryItem(localLibraryItemId: libraryItemId!)
|
||||||
@@ -66,7 +74,7 @@ public class AbsAudioPlayer: CAPPlugin {
|
|||||||
logger.error("Failed to get local playback session")
|
logger.error("Failed to get local playback session")
|
||||||
return call.resolve([:])
|
return call.resolve([:])
|
||||||
}
|
}
|
||||||
|
|
||||||
do {
|
do {
|
||||||
if (startTimeOverride != nil) {
|
if (startTimeOverride != nil) {
|
||||||
playbackSession.currentTime = startTimeOverride!
|
playbackSession.currentTime = startTimeOverride!
|
||||||
@@ -96,14 +104,14 @@ public class AbsAudioPlayer: CAPPlugin {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func closePlayback(_ call: CAPPluginCall) {
|
@objc func closePlayback(_ call: CAPPluginCall) {
|
||||||
logger.log("Close playback")
|
logger.log("Close playback")
|
||||||
|
|
||||||
PlayerHandler.stopPlayback()
|
PlayerHandler.stopPlayback()
|
||||||
call.resolve()
|
call.resolve()
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func getCurrentTime(_ call: CAPPluginCall) {
|
@objc func getCurrentTime(_ call: CAPPluginCall) {
|
||||||
call.resolve([
|
call.resolve([
|
||||||
"value": PlayerHandler.getCurrentTime() ?? 0,
|
"value": PlayerHandler.getCurrentTime() ?? 0,
|
||||||
@@ -130,7 +138,7 @@ public class AbsAudioPlayer: CAPPlugin {
|
|||||||
PlayerHandler.setChapterTrack()
|
PlayerHandler.setChapterTrack()
|
||||||
call.resolve()
|
call.resolve()
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func playPlayer(_ call: CAPPluginCall) {
|
@objc func playPlayer(_ call: CAPPluginCall) {
|
||||||
PlayerHandler.paused = false
|
PlayerHandler.paused = false
|
||||||
call.resolve()
|
call.resolve()
|
||||||
@@ -144,7 +152,7 @@ public class AbsAudioPlayer: CAPPlugin {
|
|||||||
PlayerHandler.paused = !PlayerHandler.paused
|
PlayerHandler.paused = !PlayerHandler.paused
|
||||||
call.resolve([ "playing": !PlayerHandler.paused ])
|
call.resolve([ "playing": !PlayerHandler.paused ])
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func seek(_ call: CAPPluginCall) {
|
@objc func seek(_ call: CAPPluginCall) {
|
||||||
PlayerHandler.seek(amount: call.getDouble("value", 0.0))
|
PlayerHandler.seek(amount: call.getDouble("value", 0.0))
|
||||||
call.resolve()
|
call.resolve()
|
||||||
@@ -157,7 +165,7 @@ public class AbsAudioPlayer: CAPPlugin {
|
|||||||
PlayerHandler.seekBackward(amount: call.getDouble("value", 0.0))
|
PlayerHandler.seekBackward(amount: call.getDouble("value", 0.0))
|
||||||
call.resolve()
|
call.resolve()
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func sendMetadata() {
|
@objc func sendMetadata() {
|
||||||
self.notifyListeners("onPlayingUpdate", data: [ "value": !PlayerHandler.paused ])
|
self.notifyListeners("onPlayingUpdate", data: [ "value": !PlayerHandler.paused ])
|
||||||
if let metadata = try? PlayerHandler.getMetdata()?.asDictionary() {
|
if let metadata = try? PlayerHandler.getMetdata()?.asDictionary() {
|
||||||
@@ -167,34 +175,34 @@ public class AbsAudioPlayer: CAPPlugin {
|
|||||||
@objc func sendPlaybackClosedEvent() {
|
@objc func sendPlaybackClosedEvent() {
|
||||||
self.notifyListeners("onPlaybackClosed", data: [ "value": true ])
|
self.notifyListeners("onPlaybackClosed", data: [ "value": true ])
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func decreaseSleepTime(_ call: CAPPluginCall) {
|
@objc func decreaseSleepTime(_ call: CAPPluginCall) {
|
||||||
guard let timeString = call.getString("time") else { return call.resolve([ "success": false ]) }
|
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 time = Double(timeString) else { return call.resolve([ "success": false ]) }
|
||||||
guard let _ = PlayerHandler.getSleepTimeRemaining() else { return call.resolve([ "success": false ]) }
|
guard let _ = PlayerHandler.getSleepTimeRemaining() else { return call.resolve([ "success": false ]) }
|
||||||
|
|
||||||
let seconds = time/1000
|
let seconds = time/1000
|
||||||
PlayerHandler.decreaseSleepTime(decreaseSeconds: seconds)
|
PlayerHandler.decreaseSleepTime(decreaseSeconds: seconds)
|
||||||
call.resolve()
|
call.resolve()
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func increaseSleepTime(_ call: CAPPluginCall) {
|
@objc func increaseSleepTime(_ call: CAPPluginCall) {
|
||||||
guard let timeString = call.getString("time") else { return call.resolve([ "success": false ]) }
|
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 time = Double(timeString) else { return call.resolve([ "success": false ]) }
|
||||||
guard let _ = PlayerHandler.getSleepTimeRemaining() else { return call.resolve([ "success": false ]) }
|
guard let _ = PlayerHandler.getSleepTimeRemaining() else { return call.resolve([ "success": false ]) }
|
||||||
|
|
||||||
let seconds = time/1000
|
let seconds = time/1000
|
||||||
PlayerHandler.increaseSleepTime(increaseSeconds: seconds)
|
PlayerHandler.increaseSleepTime(increaseSeconds: seconds)
|
||||||
call.resolve()
|
call.resolve()
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func setSleepTimer(_ call: CAPPluginCall) {
|
@objc func setSleepTimer(_ call: CAPPluginCall) {
|
||||||
guard let timeString = call.getString("time") else { return call.resolve([ "success": false ]) }
|
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 time = Double(timeString) else { return call.resolve([ "success": false ]) }
|
||||||
let isChapterTime = call.getBool("isChapterTime", false)
|
let isChapterTime = call.getBool("isChapterTime", false)
|
||||||
|
|
||||||
let seconds = time / 1000
|
let seconds = time / 1000
|
||||||
|
|
||||||
logger.log("chapter time: \(isChapterTime)")
|
logger.log("chapter time: \(isChapterTime)")
|
||||||
if isChapterTime {
|
if isChapterTime {
|
||||||
PlayerHandler.setChapterSleepTime(stopAt: seconds)
|
PlayerHandler.setChapterSleepTime(stopAt: seconds)
|
||||||
@@ -204,30 +212,30 @@ public class AbsAudioPlayer: CAPPlugin {
|
|||||||
call.resolve([ "success": true ])
|
call.resolve([ "success": true ])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func cancelSleepTimer(_ call: CAPPluginCall) {
|
@objc func cancelSleepTimer(_ call: CAPPluginCall) {
|
||||||
PlayerHandler.cancelSleepTime()
|
PlayerHandler.cancelSleepTime()
|
||||||
call.resolve()
|
call.resolve()
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func getSleepTimerTime(_ call: CAPPluginCall) {
|
@objc func getSleepTimerTime(_ call: CAPPluginCall) {
|
||||||
call.resolve([
|
call.resolve([
|
||||||
"value": PlayerHandler.getSleepTimeRemaining() ?? 0
|
"value": PlayerHandler.getSleepTimeRemaining() ?? 0
|
||||||
])
|
])
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func sendSleepTimerEnded() {
|
@objc func sendSleepTimerEnded() {
|
||||||
self.notifyListeners("onSleepTimerEnded", data: [
|
self.notifyListeners("onSleepTimerEnded", data: [
|
||||||
"value": PlayerHandler.getCurrentTime() ?? 0
|
"value": PlayerHandler.getCurrentTime() ?? 0
|
||||||
])
|
])
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func sendSleepTimerSet() {
|
@objc func sendSleepTimerSet() {
|
||||||
self.notifyListeners("onSleepTimerSet", data: [
|
self.notifyListeners("onSleepTimerSet", data: [
|
||||||
"value": PlayerHandler.getSleepTimeRemaining() ?? 0
|
"value": PlayerHandler.getSleepTimeRemaining() ?? 0
|
||||||
])
|
])
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func onLocalMediaProgressUpdate() {
|
@objc func onLocalMediaProgressUpdate() {
|
||||||
guard let localMediaProgressId = PlayerHandler.getPlaybackSession()?.localMediaProgressId else { return }
|
guard let localMediaProgressId = PlayerHandler.getPlaybackSession()?.localMediaProgressId else { return }
|
||||||
guard let localMediaProgress = Database.shared.getLocalMediaProgress(localMediaProgressId: 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")
|
logger.log("Sending local progress back to the UI")
|
||||||
self.notifyListeners("onLocalMediaProgressUpdate", data: progressUpdate)
|
self.notifyListeners("onLocalMediaProgressUpdate", data: progressUpdate)
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func onPlaybackFailed() {
|
@objc func onPlaybackFailed() {
|
||||||
if (PlayerHandler.getPlayMethod() == PlayMethod.directplay.rawValue) {
|
if (PlayerHandler.getPlayMethod() == PlayMethod.directplay.rawValue) {
|
||||||
let session = PlayerHandler.getPlaybackSession()
|
let session = PlayerHandler.getPlaybackSession()
|
||||||
@@ -243,7 +251,7 @@ public class AbsAudioPlayer: CAPPlugin {
|
|||||||
let libraryItemId = session?.libraryItemId ?? ""
|
let libraryItemId = session?.libraryItemId ?? ""
|
||||||
let episodeId = session?.episodeId ?? nil
|
let episodeId = session?.episodeId ?? nil
|
||||||
logger.log("Forcing Transcode")
|
logger.log("Forcing Transcode")
|
||||||
|
|
||||||
// If direct playing then fallback to transcode
|
// If direct playing then fallback to transcode
|
||||||
ApiClient.startPlaybackSession(libraryItemId: libraryItemId, episodeId: episodeId, forceTranscode: true) { [weak self] session in
|
ApiClient.startPlaybackSession(libraryItemId: libraryItemId, episodeId: episodeId, forceTranscode: true) { [weak self] session in
|
||||||
do {
|
do {
|
||||||
@@ -262,19 +270,38 @@ public class AbsAudioPlayer: CAPPlugin {
|
|||||||
"value": "Playback Error"
|
"value": "Playback Error"
|
||||||
])
|
])
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func sendPrepareMetadataEvent(itemId: String, playWhenReady: Bool) {
|
@objc func sendPrepareMetadataEvent(itemId: String, playWhenReady: Bool) {
|
||||||
self.notifyListeners("onPrepareMedia", data: [
|
self.notifyListeners("onPrepareMedia", data: [
|
||||||
"audiobookId": itemId,
|
"audiobookId": itemId,
|
||||||
"playWhenReady": playWhenReady,
|
"playWhenReady": playWhenReady,
|
||||||
])
|
])
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func sendPlaybackSession(session: [String: Any]) {
|
@objc func sendPlaybackSession(session: [String: Any]) {
|
||||||
self.notifyListeners("onPlaybackSession", data: session)
|
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 {
|
enum PlayerError: String, Error {
|
||||||
|
|||||||
@@ -29,20 +29,20 @@ extension String {
|
|||||||
@objc(AbsDatabase)
|
@objc(AbsDatabase)
|
||||||
public class AbsDatabase: CAPPlugin {
|
public class AbsDatabase: CAPPlugin {
|
||||||
private let logger = AppLogger(category: "AbsDatabase")
|
private let logger = AppLogger(category: "AbsDatabase")
|
||||||
|
|
||||||
@objc func setCurrentServerConnectionConfig(_ call: CAPPluginCall) {
|
@objc func setCurrentServerConnectionConfig(_ call: CAPPluginCall) {
|
||||||
var id = call.getString("id")
|
var id = call.getString("id")
|
||||||
let address = call.getString("address", "")
|
let address = call.getString("address", "")
|
||||||
let userId = call.getString("userId", "")
|
let userId = call.getString("userId", "")
|
||||||
let username = call.getString("username", "")
|
let username = call.getString("username", "")
|
||||||
let token = call.getString("token", "")
|
let token = call.getString("token", "")
|
||||||
|
|
||||||
let name = "\(address) (\(username))"
|
let name = "\(address) (\(username))"
|
||||||
|
|
||||||
if id == nil {
|
if id == nil {
|
||||||
id = "\(address)@\(username)".toBase64()
|
id = "\(address)@\(username)".toBase64()
|
||||||
}
|
}
|
||||||
|
|
||||||
let config = ServerConnectionConfig()
|
let config = ServerConnectionConfig()
|
||||||
config.id = id ?? ""
|
config.id = id ?? ""
|
||||||
config.index = 0
|
config.index = 0
|
||||||
@@ -51,7 +51,7 @@ public class AbsDatabase: CAPPlugin {
|
|||||||
config.userId = userId
|
config.userId = userId
|
||||||
config.username = username
|
config.username = username
|
||||||
config.token = token
|
config.token = token
|
||||||
|
|
||||||
Store.serverConfig = config
|
Store.serverConfig = config
|
||||||
let savedConfig = Store.serverConfig // Fetch the latest value
|
let savedConfig = Store.serverConfig // Fetch the latest value
|
||||||
call.resolve(convertServerConnectionConfigToJSON(config: savedConfig!))
|
call.resolve(convertServerConnectionConfigToJSON(config: savedConfig!))
|
||||||
@@ -59,26 +59,26 @@ public class AbsDatabase: CAPPlugin {
|
|||||||
@objc func removeServerConnectionConfig(_ call: CAPPluginCall) {
|
@objc func removeServerConnectionConfig(_ call: CAPPluginCall) {
|
||||||
let id = call.getString("serverConnectionConfigId", "")
|
let id = call.getString("serverConnectionConfigId", "")
|
||||||
Database.shared.deleteServerConnectionConfig(id: id)
|
Database.shared.deleteServerConnectionConfig(id: id)
|
||||||
|
|
||||||
call.resolve()
|
call.resolve()
|
||||||
}
|
}
|
||||||
@objc func logout(_ call: CAPPluginCall) {
|
@objc func logout(_ call: CAPPluginCall) {
|
||||||
Store.serverConfig = nil
|
Store.serverConfig = nil
|
||||||
call.resolve()
|
call.resolve()
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func getDeviceData(_ call: CAPPluginCall) {
|
@objc func getDeviceData(_ call: CAPPluginCall) {
|
||||||
let configs = Database.shared.getServerConnectionConfigs()
|
let configs = Database.shared.getServerConnectionConfigs()
|
||||||
let index = Database.shared.getLastActiveConfigIndex()
|
let index = Database.shared.getLastActiveConfigIndex()
|
||||||
let settings = Database.shared.getDeviceSettings()
|
let settings = Database.shared.getDeviceSettings()
|
||||||
|
|
||||||
call.resolve([
|
call.resolve([
|
||||||
"serverConnectionConfigs": configs.map { config in convertServerConnectionConfigToJSON(config: config) },
|
"serverConnectionConfigs": configs.map { config in convertServerConnectionConfigToJSON(config: config) },
|
||||||
"lastServerConnectionConfigId": configs.first { config in config.index == index }?.id as Any,
|
"lastServerConnectionConfigId": configs.first { config in config.index == index }?.id as Any,
|
||||||
"deviceSettings": deviceSettingsToJSON(settings: settings)
|
"deviceSettings": deviceSettingsToJSON(settings: settings)
|
||||||
])
|
])
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func getLocalLibraryItems(_ call: CAPPluginCall) {
|
@objc func getLocalLibraryItems(_ call: CAPPluginCall) {
|
||||||
do {
|
do {
|
||||||
let items = Database.shared.getLocalLibraryItems()
|
let items = Database.shared.getLocalLibraryItems()
|
||||||
@@ -89,7 +89,7 @@ public class AbsDatabase: CAPPlugin {
|
|||||||
call.resolve()
|
call.resolve()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func getLocalLibraryItem(_ call: CAPPluginCall) {
|
@objc func getLocalLibraryItem(_ call: CAPPluginCall) {
|
||||||
do {
|
do {
|
||||||
let item = Database.shared.getLocalLibraryItem(localLibraryItemId: call.getString("id") ?? "")
|
let item = Database.shared.getLocalLibraryItem(localLibraryItemId: call.getString("id") ?? "")
|
||||||
@@ -105,7 +105,7 @@ public class AbsDatabase: CAPPlugin {
|
|||||||
call.resolve()
|
call.resolve()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func getLocalLibraryItemByLId(_ call: CAPPluginCall) {
|
@objc func getLocalLibraryItemByLId(_ call: CAPPluginCall) {
|
||||||
do {
|
do {
|
||||||
let item = Database.shared.getLocalLibraryItem(byServerLibraryItemId: call.getString("libraryItemId") ?? "")
|
let item = Database.shared.getLocalLibraryItem(byServerLibraryItemId: call.getString("libraryItemId") ?? "")
|
||||||
@@ -121,11 +121,11 @@ public class AbsDatabase: CAPPlugin {
|
|||||||
call.resolve()
|
call.resolve()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func getLocalLibraryItemsInFolder(_ call: CAPPluginCall) {
|
@objc func getLocalLibraryItemsInFolder(_ call: CAPPluginCall) {
|
||||||
call.resolve([ "value": [] ])
|
call.resolve([ "value": [] ])
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func getAllLocalMediaProgress(_ call: CAPPluginCall) {
|
@objc func getAllLocalMediaProgress(_ call: CAPPluginCall) {
|
||||||
do {
|
do {
|
||||||
call.resolve([ "value": try Database.shared.getAllLocalMediaProgress().asDictionaryArray() ])
|
call.resolve([ "value": try Database.shared.getAllLocalMediaProgress().asDictionaryArray() ])
|
||||||
@@ -135,7 +135,7 @@ public class AbsDatabase: CAPPlugin {
|
|||||||
call.resolve(["value": []])
|
call.resolve(["value": []])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func removeLocalMediaProgress(_ call: CAPPluginCall) {
|
@objc func removeLocalMediaProgress(_ call: CAPPluginCall) {
|
||||||
let localMediaProgressId = call.getString("localMediaProgressId")
|
let localMediaProgressId = call.getString("localMediaProgressId")
|
||||||
guard let localMediaProgressId = localMediaProgressId else {
|
guard let localMediaProgressId = localMediaProgressId else {
|
||||||
@@ -145,7 +145,7 @@ public class AbsDatabase: CAPPlugin {
|
|||||||
try? Database.shared.removeLocalMediaProgress(localMediaProgressId: localMediaProgressId)
|
try? Database.shared.removeLocalMediaProgress(localMediaProgressId: localMediaProgressId)
|
||||||
call.resolve()
|
call.resolve()
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func syncLocalSessionsWithServer(_ call: CAPPluginCall) {
|
@objc func syncLocalSessionsWithServer(_ call: CAPPluginCall) {
|
||||||
let isFirstSync = call.getBool("isFirstSync", false)
|
let isFirstSync = call.getBool("isFirstSync", false)
|
||||||
logger.log("syncLocalSessionsWithServer: Starting (First sync: \(isFirstSync))")
|
logger.log("syncLocalSessionsWithServer: Starting (First sync: \(isFirstSync))")
|
||||||
@@ -153,19 +153,19 @@ public class AbsDatabase: CAPPlugin {
|
|||||||
call.reject("syncLocalSessionsWithServer not connected to server")
|
call.reject("syncLocalSessionsWithServer not connected to server")
|
||||||
return call.resolve()
|
return call.resolve()
|
||||||
}
|
}
|
||||||
|
|
||||||
Task {
|
Task {
|
||||||
await ApiClient.syncLocalSessionsWithServer(isFirstSync: isFirstSync)
|
await ApiClient.syncLocalSessionsWithServer(isFirstSync: isFirstSync)
|
||||||
call.resolve()
|
call.resolve()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func syncServerMediaProgressWithLocalMediaProgress(_ call: CAPPluginCall) {
|
@objc func syncServerMediaProgressWithLocalMediaProgress(_ call: CAPPluginCall) {
|
||||||
let serverMediaProgress = call.getJson("mediaProgress", type: MediaProgress.self)
|
let serverMediaProgress = call.getJson("mediaProgress", type: MediaProgress.self)
|
||||||
let localLibraryItemId = call.getString("localLibraryItemId")
|
let localLibraryItemId = call.getString("localLibraryItemId")
|
||||||
let localEpisodeId = call.getString("localEpisodeId")
|
let localEpisodeId = call.getString("localEpisodeId")
|
||||||
let localMediaProgressId = call.getString("localMediaProgressId")
|
let localMediaProgressId = call.getString("localMediaProgressId")
|
||||||
|
|
||||||
do {
|
do {
|
||||||
guard let serverMediaProgress = serverMediaProgress else {
|
guard let serverMediaProgress = serverMediaProgress else {
|
||||||
return call.reject("serverMediaProgress not specified")
|
return call.reject("serverMediaProgress not specified")
|
||||||
@@ -173,35 +173,35 @@ public class AbsDatabase: CAPPlugin {
|
|||||||
guard localLibraryItemId != nil || localMediaProgressId != nil else {
|
guard localLibraryItemId != nil || localMediaProgressId != nil else {
|
||||||
return call.reject("localLibraryItemId or localMediaProgressId must be specified")
|
return call.reject("localLibraryItemId or localMediaProgressId must be specified")
|
||||||
}
|
}
|
||||||
|
|
||||||
let localMediaProgress = try LocalMediaProgress.fetchOrCreateLocalMediaProgress(localMediaProgressId: localMediaProgressId, localLibraryItemId: localLibraryItemId, localEpisodeId: localEpisodeId)
|
let localMediaProgress = try LocalMediaProgress.fetchOrCreateLocalMediaProgress(localMediaProgressId: localMediaProgressId, localLibraryItemId: localLibraryItemId, localEpisodeId: localEpisodeId)
|
||||||
guard let localMediaProgress = localMediaProgress else {
|
guard let localMediaProgress = localMediaProgress else {
|
||||||
call.reject("Local media progress not found or created")
|
call.reject("Local media progress not found or created")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
logger.log("syncServerMediaProgressWithLocalMediaProgress: Saving local media progress")
|
logger.log("syncServerMediaProgressWithLocalMediaProgress: Saving local media progress")
|
||||||
try localMediaProgress.updateFromServerMediaProgress(serverMediaProgress)
|
try localMediaProgress.updateFromServerMediaProgress(serverMediaProgress)
|
||||||
|
|
||||||
call.resolve(try localMediaProgress.asDictionary())
|
call.resolve(try localMediaProgress.asDictionary())
|
||||||
} catch {
|
} catch {
|
||||||
call.reject("Failed to sync media progress")
|
call.reject("Failed to sync media progress")
|
||||||
debugPrint(error)
|
debugPrint(error)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func updateLocalMediaProgressFinished(_ call: CAPPluginCall) {
|
@objc func updateLocalMediaProgressFinished(_ call: CAPPluginCall) {
|
||||||
let localLibraryItemId = call.getString("localLibraryItemId")
|
let localLibraryItemId = call.getString("localLibraryItemId")
|
||||||
let localEpisodeId = call.getString("localEpisodeId")
|
let localEpisodeId = call.getString("localEpisodeId")
|
||||||
let isFinished = call.getBool("isFinished", false)
|
let isFinished = call.getBool("isFinished", false)
|
||||||
|
|
||||||
var localMediaProgressId = localLibraryItemId ?? ""
|
var localMediaProgressId = localLibraryItemId ?? ""
|
||||||
if localEpisodeId != nil {
|
if localEpisodeId != nil {
|
||||||
localMediaProgressId += "-\(localEpisodeId ?? "")"
|
localMediaProgressId += "-\(localEpisodeId ?? "")"
|
||||||
}
|
}
|
||||||
|
|
||||||
logger.log("updateLocalMediaProgressFinished \(localMediaProgressId) | Is Finished: \(isFinished)")
|
logger.log("updateLocalMediaProgressFinished \(localMediaProgressId) | Is Finished: \(isFinished)")
|
||||||
|
|
||||||
do {
|
do {
|
||||||
let localMediaProgress = try LocalMediaProgress.fetchOrCreateLocalMediaProgress(localMediaProgressId: localMediaProgressId, localLibraryItemId: localLibraryItemId, localEpisodeId: localEpisodeId)
|
let localMediaProgress = try LocalMediaProgress.fetchOrCreateLocalMediaProgress(localMediaProgressId: localMediaProgressId, localLibraryItemId: localLibraryItemId, localEpisodeId: localEpisodeId)
|
||||||
guard let localMediaProgress = localMediaProgress else {
|
guard let localMediaProgress = localMediaProgress else {
|
||||||
@@ -211,11 +211,11 @@ public class AbsDatabase: CAPPlugin {
|
|||||||
|
|
||||||
// Update finished status
|
// Update finished status
|
||||||
try localMediaProgress.updateIsFinished(isFinished)
|
try localMediaProgress.updateIsFinished(isFinished)
|
||||||
|
|
||||||
// Build API response
|
// Build API response
|
||||||
let progressDictionary = try? localMediaProgress.asDictionary()
|
let progressDictionary = try? localMediaProgress.asDictionary()
|
||||||
var response: [String: Any] = ["local": true, "server": false, "localMediaProgress": progressDictionary ?? ""]
|
var response: [String: Any] = ["local": true, "server": false, "localMediaProgress": progressDictionary ?? ""]
|
||||||
|
|
||||||
// Send update to the server if logged in
|
// Send update to the server if logged in
|
||||||
let hasLinkedServer = localMediaProgress.serverConnectionConfigId != nil
|
let hasLinkedServer = localMediaProgress.serverConnectionConfigId != nil
|
||||||
let loggedIntoServer = Store.serverConfig?.id == localMediaProgress.serverConnectionConfigId
|
let loggedIntoServer = Store.serverConfig?.id == localMediaProgress.serverConnectionConfigId
|
||||||
@@ -234,7 +234,7 @@ public class AbsDatabase: CAPPlugin {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func updateDeviceSettings(_ call: CAPPluginCall) {
|
@objc func updateDeviceSettings(_ call: CAPPluginCall) {
|
||||||
let disableAutoRewind = call.getBool("disableAutoRewind") ?? false
|
let disableAutoRewind = call.getBool("disableAutoRewind") ?? false
|
||||||
let enableAltView = call.getBool("enableAltView") ?? false
|
let enableAltView = call.getBool("enableAltView") ?? false
|
||||||
@@ -244,6 +244,8 @@ public class AbsDatabase: CAPPlugin {
|
|||||||
let lockOrientation = call.getString("lockOrientation") ?? "NONE"
|
let lockOrientation = call.getString("lockOrientation") ?? "NONE"
|
||||||
let hapticFeedback = call.getString("hapticFeedback") ?? "LIGHT"
|
let hapticFeedback = call.getString("hapticFeedback") ?? "LIGHT"
|
||||||
let languageCode = call.getString("languageCode") ?? "en-us"
|
let languageCode = call.getString("languageCode") ?? "en-us"
|
||||||
|
let downloadUsingCellular = call.getString("downloadUsingCellular") ?? "ALWAYS"
|
||||||
|
let streamingUsingCellular = call.getString("streamingUsingCellular") ?? "ALWAYS"
|
||||||
let settings = DeviceSettings()
|
let settings = DeviceSettings()
|
||||||
settings.disableAutoRewind = disableAutoRewind
|
settings.disableAutoRewind = disableAutoRewind
|
||||||
settings.enableAltView = enableAltView
|
settings.enableAltView = enableAltView
|
||||||
@@ -253,22 +255,24 @@ public class AbsDatabase: CAPPlugin {
|
|||||||
settings.lockOrientation = lockOrientation
|
settings.lockOrientation = lockOrientation
|
||||||
settings.hapticFeedback = hapticFeedback
|
settings.hapticFeedback = hapticFeedback
|
||||||
settings.languageCode = languageCode
|
settings.languageCode = languageCode
|
||||||
|
settings.downloadUsingCellular = downloadUsingCellular
|
||||||
|
settings.streamingUsingCellular = streamingUsingCellular
|
||||||
|
|
||||||
Database.shared.setDeviceSettings(deviceSettings: settings)
|
Database.shared.setDeviceSettings(deviceSettings: settings)
|
||||||
|
|
||||||
// Updates the media notification controls (for allowSeekingOnMediaControls setting)
|
// Updates the media notification controls (for allowSeekingOnMediaControls setting)
|
||||||
PlayerHandler.updateRemoteTransportControls()
|
PlayerHandler.updateRemoteTransportControls()
|
||||||
|
|
||||||
getDeviceData(call)
|
getDeviceData(call)
|
||||||
}
|
}
|
||||||
|
|
||||||
@objc func updateLocalEbookProgress(_ call: CAPPluginCall) {
|
@objc func updateLocalEbookProgress(_ call: CAPPluginCall) {
|
||||||
let localLibraryItemId = call.getString("localLibraryItemId")
|
let localLibraryItemId = call.getString("localLibraryItemId")
|
||||||
let ebookLocation = call.getString("ebookLocation", "")
|
let ebookLocation = call.getString("ebookLocation", "")
|
||||||
let ebookProgress = call.getDouble("ebookProgress", 0.0)
|
let ebookProgress = call.getDouble("ebookProgress", 0.0)
|
||||||
|
|
||||||
logger.log("updateLocalEbookProgress \(localLibraryItemId ?? "Unknown") | ebookLocation: \(ebookLocation) | ebookProgress: \(ebookProgress)")
|
logger.log("updateLocalEbookProgress \(localLibraryItemId ?? "Unknown") | ebookLocation: \(ebookLocation) | ebookProgress: \(ebookProgress)")
|
||||||
|
|
||||||
do {
|
do {
|
||||||
let localMediaProgress = try LocalMediaProgress.fetchOrCreateLocalMediaProgress(localMediaProgressId: localLibraryItemId, localLibraryItemId: localLibraryItemId, localEpisodeId: nil)
|
let localMediaProgress = try LocalMediaProgress.fetchOrCreateLocalMediaProgress(localMediaProgressId: localLibraryItemId, localLibraryItemId: localLibraryItemId, localEpisodeId: nil)
|
||||||
guard let localMediaProgress = localMediaProgress else {
|
guard let localMediaProgress = localMediaProgress else {
|
||||||
@@ -278,7 +282,7 @@ public class AbsDatabase: CAPPlugin {
|
|||||||
|
|
||||||
// Update finished status
|
// Update finished status
|
||||||
try localMediaProgress.updateEbookProgress(ebookLocation: ebookLocation, ebookProgress: ebookProgress)
|
try localMediaProgress.updateEbookProgress(ebookLocation: ebookLocation, ebookProgress: ebookProgress)
|
||||||
|
|
||||||
// Build API response
|
// Build API response
|
||||||
let progressDictionary = try? localMediaProgress.asDictionary()
|
let progressDictionary = try? localMediaProgress.asDictionary()
|
||||||
let response: [String: Any] = ["localMediaProgress": progressDictionary ?? ""]
|
let response: [String: Any] = ["localMediaProgress": progressDictionary ?? ""]
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ def capacitor_pods
|
|||||||
pod 'Capacitor', :path => '../../node_modules/@capacitor/ios'
|
pod 'Capacitor', :path => '../../node_modules/@capacitor/ios'
|
||||||
pod 'CapacitorCordova', :path => '../../node_modules/@capacitor/ios'
|
pod 'CapacitorCordova', :path => '../../node_modules/@capacitor/ios'
|
||||||
pod 'ByteowlsCapacitorFilesharer', :path => '../../node_modules/@byteowls/capacitor-filesharer'
|
pod 'ByteowlsCapacitorFilesharer', :path => '../../node_modules/@byteowls/capacitor-filesharer'
|
||||||
|
pod 'CapacitorCommunityVolumeButtons', :path => '../../node_modules/@capacitor-community/volume-buttons'
|
||||||
pod 'CapacitorApp', :path => '../../node_modules/@capacitor/app'
|
pod 'CapacitorApp', :path => '../../node_modules/@capacitor/app'
|
||||||
pod 'CapacitorBrowser', :path => '../../node_modules/@capacitor/browser'
|
pod 'CapacitorBrowser', :path => '../../node_modules/@capacitor/browser'
|
||||||
pod 'CapacitorClipboard', :path => '../../node_modules/@capacitor/clipboard'
|
pod 'CapacitorClipboard', :path => '../../node_modules/@capacitor/clipboard'
|
||||||
|
|||||||
+13
-7
@@ -2,7 +2,7 @@ PODS:
|
|||||||
- Alamofire (5.8.1)
|
- Alamofire (5.8.1)
|
||||||
- ByteowlsCapacitorFilesharer (5.0.0):
|
- ByteowlsCapacitorFilesharer (5.0.0):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- Capacitor (5.4.0):
|
- Capacitor (5.6.0):
|
||||||
- CapacitorCordova
|
- CapacitorCordova
|
||||||
- CapacitorApp (5.0.6):
|
- CapacitorApp (5.0.6):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
@@ -10,7 +10,9 @@ PODS:
|
|||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorClipboard (5.0.6):
|
- CapacitorClipboard (5.0.6):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorCordova (5.4.0)
|
- CapacitorCommunityVolumeButtons (1.0.2):
|
||||||
|
- Capacitor
|
||||||
|
- CapacitorCordova (5.6.0)
|
||||||
- CapacitorDialog (5.0.6):
|
- CapacitorDialog (5.0.6):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorHaptics (5.0.6):
|
- CapacitorHaptics (5.0.6):
|
||||||
@@ -21,7 +23,7 @@ PODS:
|
|||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorStatusBar (5.0.6):
|
- CapacitorStatusBar (5.0.6):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CordovaPlugins (5.4.0):
|
- CordovaPlugins (5.6.0):
|
||||||
- CapacitorCordova
|
- CapacitorCordova
|
||||||
- Realm (10.47.0):
|
- Realm (10.47.0):
|
||||||
- Realm/Headers (= 10.47.0)
|
- Realm/Headers (= 10.47.0)
|
||||||
@@ -36,6 +38,7 @@ DEPENDENCIES:
|
|||||||
- "CapacitorApp (from `../../node_modules/@capacitor/app`)"
|
- "CapacitorApp (from `../../node_modules/@capacitor/app`)"
|
||||||
- "CapacitorBrowser (from `../../node_modules/@capacitor/browser`)"
|
- "CapacitorBrowser (from `../../node_modules/@capacitor/browser`)"
|
||||||
- "CapacitorClipboard (from `../../node_modules/@capacitor/clipboard`)"
|
- "CapacitorClipboard (from `../../node_modules/@capacitor/clipboard`)"
|
||||||
|
- "CapacitorCommunityVolumeButtons (from `../../node_modules/@capacitor-community/volume-buttons`)"
|
||||||
- "CapacitorCordova (from `../../node_modules/@capacitor/ios`)"
|
- "CapacitorCordova (from `../../node_modules/@capacitor/ios`)"
|
||||||
- "CapacitorDialog (from `../../node_modules/@capacitor/dialog`)"
|
- "CapacitorDialog (from `../../node_modules/@capacitor/dialog`)"
|
||||||
- "CapacitorHaptics (from `../../node_modules/@capacitor/haptics`)"
|
- "CapacitorHaptics (from `../../node_modules/@capacitor/haptics`)"
|
||||||
@@ -62,6 +65,8 @@ EXTERNAL SOURCES:
|
|||||||
:path: "../../node_modules/@capacitor/browser"
|
:path: "../../node_modules/@capacitor/browser"
|
||||||
CapacitorClipboard:
|
CapacitorClipboard:
|
||||||
:path: "../../node_modules/@capacitor/clipboard"
|
:path: "../../node_modules/@capacitor/clipboard"
|
||||||
|
CapacitorCommunityVolumeButtons:
|
||||||
|
:path: "../../node_modules/@capacitor-community/volume-buttons"
|
||||||
CapacitorCordova:
|
CapacitorCordova:
|
||||||
:path: "../../node_modules/@capacitor/ios"
|
:path: "../../node_modules/@capacitor/ios"
|
||||||
CapacitorDialog:
|
CapacitorDialog:
|
||||||
@@ -80,20 +85,21 @@ EXTERNAL SOURCES:
|
|||||||
SPEC CHECKSUMS:
|
SPEC CHECKSUMS:
|
||||||
Alamofire: 3ca42e259043ee0dc5c0cdd76c4bc568b8e42af7
|
Alamofire: 3ca42e259043ee0dc5c0cdd76c4bc568b8e42af7
|
||||||
ByteowlsCapacitorFilesharer: f6a773825632d65d5404a34764c4a3fd857bb176
|
ByteowlsCapacitorFilesharer: f6a773825632d65d5404a34764c4a3fd857bb176
|
||||||
Capacitor: a5cd803e02b471591c81165f400ace01f40b11d3
|
Capacitor: ebfc16cdb8116d04c101686b080342872da42d43
|
||||||
CapacitorApp: 024e1b1bea5f883d79f6330d309bc441c88ad04a
|
CapacitorApp: 024e1b1bea5f883d79f6330d309bc441c88ad04a
|
||||||
CapacitorBrowser: 7a0fb6a1011abfaaf2dfedfd8248f942a8eda3d6
|
CapacitorBrowser: 7a0fb6a1011abfaaf2dfedfd8248f942a8eda3d6
|
||||||
CapacitorClipboard: 77edf49827ea21da2a9c05c690a4a6a4d07199c4
|
CapacitorClipboard: 77edf49827ea21da2a9c05c690a4a6a4d07199c4
|
||||||
CapacitorCordova: 66ce22f9976de30fd816f746e9e92e07d6befafd
|
CapacitorCommunityVolumeButtons: 132d27a8e482898e45480b7edc882f3d26a00cb6
|
||||||
|
CapacitorCordova: 931b48fcdbc9bc985fc2f16cec9f77c794a27729
|
||||||
CapacitorDialog: 0f3c15dfe9414b83bc64aef4078f1b92bcfead26
|
CapacitorDialog: 0f3c15dfe9414b83bc64aef4078f1b92bcfead26
|
||||||
CapacitorHaptics: 1fffc1217c7e64a472d7845be50fb0c2f7d4204c
|
CapacitorHaptics: 1fffc1217c7e64a472d7845be50fb0c2f7d4204c
|
||||||
CapacitorNetwork: d80b3e79bef6ec37640ee2806c19771f07ff2d0c
|
CapacitorNetwork: d80b3e79bef6ec37640ee2806c19771f07ff2d0c
|
||||||
CapacitorPreferences: f03954bcb0ff09c792909e46bff88e3183c16b10
|
CapacitorPreferences: f03954bcb0ff09c792909e46bff88e3183c16b10
|
||||||
CapacitorStatusBar: 565c0a1ebd79bb40d797606a8992b4a105885309
|
CapacitorStatusBar: 565c0a1ebd79bb40d797606a8992b4a105885309
|
||||||
CordovaPlugins: a5db67e5ac1061b9869a0efd754f2c2f776aeccc
|
CordovaPlugins: dae7dac59b3cce58f5a7ce3894709d8f0f824656
|
||||||
Realm: e43fb540ae947497e3ea8a662443256920602060
|
Realm: e43fb540ae947497e3ea8a662443256920602060
|
||||||
RealmSwift: 8b06ed06b5d16749ae0c4d91c0cba414a9e28189
|
RealmSwift: 8b06ed06b5d16749ae0c4d91c0cba414a9e28189
|
||||||
|
|
||||||
PODFILE CHECKSUM: 02e6ffe2f51a453ce222ee9af0e55e9448d8514c
|
PODFILE CHECKSUM: d0bbe98fb520752929ffc76e7c901d54b2eed7f0
|
||||||
|
|
||||||
COCOAPODS: 1.12.1
|
COCOAPODS: 1.12.1
|
||||||
|
|||||||
@@ -17,6 +17,8 @@ class DeviceSettings: Object {
|
|||||||
@Persisted var lockOrientation: String = "NONE"
|
@Persisted var lockOrientation: String = "NONE"
|
||||||
@Persisted var hapticFeedback: String = "LIGHT"
|
@Persisted var hapticFeedback: String = "LIGHT"
|
||||||
@Persisted var languageCode: String = "en-us"
|
@Persisted var languageCode: String = "en-us"
|
||||||
|
@Persisted var downloadUsingCellular: String = "ALWAYS"
|
||||||
|
@Persisted var streamingUsingCellular: String = "ALWAYS"
|
||||||
}
|
}
|
||||||
|
|
||||||
func getDefaultDeviceSettings() -> DeviceSettings {
|
func getDefaultDeviceSettings() -> DeviceSettings {
|
||||||
@@ -32,6 +34,8 @@ func deviceSettingsToJSON(settings: DeviceSettings) -> Dictionary<String, Any> {
|
|||||||
"jumpForwardTime": settings.jumpForwardTime,
|
"jumpForwardTime": settings.jumpForwardTime,
|
||||||
"lockOrientation": settings.lockOrientation,
|
"lockOrientation": settings.lockOrientation,
|
||||||
"hapticFeedback": settings.hapticFeedback,
|
"hapticFeedback": settings.hapticFeedback,
|
||||||
"languageCode": settings.languageCode
|
"languageCode": settings.languageCode,
|
||||||
|
"downloadUsingCellular": settings.downloadUsingCellular,
|
||||||
|
"streamingUsingCellular": settings.streamingUsingCellular
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -177,10 +177,6 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
userLoggedOut() {
|
|
||||||
// Only cancels stream if streamining not playing downloaded
|
|
||||||
this.$eventBus.$emit('close-stream')
|
|
||||||
},
|
|
||||||
socketConnectionFailed(err) {
|
socketConnectionFailed(err) {
|
||||||
this.$toast.error('Socket connection error: ' + err.message)
|
this.$toast.error('Socket connection error: ' + err.message)
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -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
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Generated
+15
-2
@@ -1,14 +1,15 @@
|
|||||||
{
|
{
|
||||||
"name": "audiobookshelf-app",
|
"name": "audiobookshelf-app",
|
||||||
"version": "0.9.74-beta",
|
"version": "0.9.77-beta",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "audiobookshelf-app",
|
"name": "audiobookshelf-app",
|
||||||
"version": "0.9.74-beta",
|
"version": "0.9.77-beta",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@byteowls/capacitor-filesharer": "^5.0.0",
|
"@byteowls/capacitor-filesharer": "^5.0.0",
|
||||||
|
"@capacitor-community/volume-buttons": "^1.0.2",
|
||||||
"@capacitor/android": "^5.0.0",
|
"@capacitor/android": "^5.0.0",
|
||||||
"@capacitor/app": "^5.0.6",
|
"@capacitor/app": "^5.0.6",
|
||||||
"@capacitor/browser": "^5.1.0",
|
"@capacitor/browser": "^5.1.0",
|
||||||
@@ -1979,6 +1980,18 @@
|
|||||||
"@capacitor/core": ">=5"
|
"@capacitor/core": ">=5"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@capacitor-community/volume-buttons": {
|
||||||
|
"version": "1.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/@capacitor-community/volume-buttons/-/volume-buttons-1.0.2.tgz",
|
||||||
|
"integrity": "sha512-weEwVCgMEdkYF9uWOeZmA3kXltXSbiGlLPTmygF6NMcL1VUg1vBsiCIaikeI5XRne5V4q8UeEda83EfW7eb46g==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=16.0.0",
|
||||||
|
"npm": ">=8.0.0"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@capacitor/core": "^5.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@capacitor/android": {
|
"node_modules/@capacitor/android": {
|
||||||
"version": "5.6.0",
|
"version": "5.6.0",
|
||||||
"resolved": "https://registry.npmjs.org/@capacitor/android/-/android-5.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/@capacitor/android/-/android-5.6.0.tgz",
|
||||||
|
|||||||
+2
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "audiobookshelf-app",
|
"name": "audiobookshelf-app",
|
||||||
"version": "0.9.74-beta",
|
"version": "0.9.77-beta",
|
||||||
"author": "advplyr",
|
"author": "advplyr",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "nuxt --hostname 0.0.0.0 --port 1337",
|
"dev": "nuxt --hostname 0.0.0.0 --port 1337",
|
||||||
@@ -14,6 +14,7 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@byteowls/capacitor-filesharer": "^5.0.0",
|
"@byteowls/capacitor-filesharer": "^5.0.0",
|
||||||
|
"@capacitor-community/volume-buttons": "^1.0.2",
|
||||||
"@capacitor/android": "^5.0.0",
|
"@capacitor/android": "^5.0.0",
|
||||||
"@capacitor/app": "^5.0.6",
|
"@capacitor/app": "^5.0.6",
|
||||||
"@capacitor/browser": "^5.1.0",
|
"@capacitor/browser": "^5.1.0",
|
||||||
|
|||||||
@@ -3,11 +3,11 @@
|
|||||||
<template v-if="!showSelectedFeed">
|
<template v-if="!showSelectedFeed">
|
||||||
<div class="w-full mx-auto h-20 flex items-center px-2">
|
<div class="w-full mx-auto h-20 flex items-center px-2">
|
||||||
<form class="w-full" @submit.prevent="submit">
|
<form class="w-full" @submit.prevent="submit">
|
||||||
<ui-text-input v-model="searchInput" :disabled="processing || !networkConnected" placeholder="Enter search term or RSS feed URL" text-size="sm" />
|
<ui-text-input v-model="searchInput" :disabled="processing || !socketConnected" placeholder="Enter search term or RSS feed URL" text-size="sm" />
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div v-if="!networkConnected" class="w-full text-center py-6">
|
<div v-if="!socketConnected" class="w-full text-center py-6">
|
||||||
<p class="text-lg text-error">{{ $strings.MessageNoNetworkConnection }}</p>
|
<p class="text-lg text-error">{{ $strings.MessageNoNetworkConnection }}</p>
|
||||||
</div>
|
</div>
|
||||||
<div v-else class="w-full mx-auto pb-2 overflow-y-auto overflow-x-hidden h-[calc(100%-85px)]">
|
<div v-else class="w-full mx-auto pb-2 overflow-y-auto overflow-x-hidden h-[calc(100%-85px)]">
|
||||||
@@ -65,8 +65,8 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
networkConnected() {
|
socketConnected() {
|
||||||
return this.$store.state.networkConnected
|
return this.$store.state.socketConnected
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
<h1 class="text-xl mb-2 font-semibold">{{ $strings.HeaderLatestEpisodes }}</h1>
|
<h1 class="text-xl mb-2 font-semibold">{{ $strings.HeaderLatestEpisodes }}</h1>
|
||||||
|
|
||||||
<template v-for="episode in recentEpisodes">
|
<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>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -17,7 +17,6 @@ export default {
|
|||||||
totalEpisodes: 0,
|
totalEpisodes: 0,
|
||||||
currentPage: 0,
|
currentPage: 0,
|
||||||
localLibraryItems: [],
|
localLibraryItems: [],
|
||||||
isLocal: false,
|
|
||||||
loadedLibraryId: null
|
loadedLibraryId: null
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -30,7 +29,10 @@ export default {
|
|||||||
const episodes = []
|
const episodes = []
|
||||||
this.localLibraryItems.forEach((li) => {
|
this.localLibraryItems.forEach((li) => {
|
||||||
if (li.media.episodes?.length) {
|
if (li.media.episodes?.length) {
|
||||||
episodes.push(...li.media.episodes)
|
li.media.episodes.map((ep) => {
|
||||||
|
ep.localLibraryItemId = li.id
|
||||||
|
episodes.push(ep)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
return episodes
|
return episodes
|
||||||
@@ -106,4 +108,4 @@ export default {
|
|||||||
this.$eventBus.$off('new-local-library-item', this.newLocalLibraryItem)
|
this.$eventBus.$off('new-local-library-item', this.newLocalLibraryItem)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -1,8 +1,12 @@
|
|||||||
<template>
|
<template>
|
||||||
<bookshelf-lazy-bookshelf page="series-books" :series-id="seriesId" />
|
<bookshelf-lazy-bookshelf page="series-books" :series-id="seriesId" v-on:downloadSeriesClick="downloadSeriesClick" />
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import { Dialog } from '@capacitor/dialog'
|
||||||
|
import { AbsDownloader } from '@/plugins/capacitor'
|
||||||
|
import cellularPermissionHelpers from '@/mixins/cellularPermissionHelpers'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
async asyncData({ params, app, store, redirect }) {
|
async asyncData({ params, app, store, redirect }) {
|
||||||
var series = await app.$nativeHttp.get(`/api/series/${params.id}`).catch((error) => {
|
var series = await app.$nativeHttp.get(`/api/series/${params.id}`).catch((error) => {
|
||||||
@@ -19,10 +23,162 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {}
|
return {
|
||||||
|
startingDownload: false,
|
||||||
|
mediaType: 'book',
|
||||||
|
booksPerFetch: 20,
|
||||||
|
books: 0,
|
||||||
|
missingFiles: 0,
|
||||||
|
missingFilesSize: 0,
|
||||||
|
libraryIds: []
|
||||||
|
}
|
||||||
},
|
},
|
||||||
computed: {},
|
mixins: [cellularPermissionHelpers],
|
||||||
methods: {},
|
computed: {
|
||||||
mounted() {}
|
isIos() {
|
||||||
|
return this.$platform === 'ios'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
async downloadSeriesClick() {
|
||||||
|
console.log('Download Series clicked')
|
||||||
|
if (this.startingDownload) return
|
||||||
|
|
||||||
|
const hasPermission = await this.checkCellularPermission('download')
|
||||||
|
if (!hasPermission) return
|
||||||
|
|
||||||
|
this.startingDownload = true
|
||||||
|
setTimeout(() => {
|
||||||
|
this.startingDownload = false
|
||||||
|
}, 1000)
|
||||||
|
|
||||||
|
await this.$hapticsImpact()
|
||||||
|
this.download()
|
||||||
|
},
|
||||||
|
buildSearchParams() {
|
||||||
|
let searchParams = new URLSearchParams()
|
||||||
|
searchParams.set('filter', `series.${this.$encode(this.seriesId)}`)
|
||||||
|
return searchParams.toString()
|
||||||
|
},
|
||||||
|
async fetchSeriesEntities(page) {
|
||||||
|
const startIndex = page * this.booksPerFetch
|
||||||
|
|
||||||
|
this.currentSFQueryString = this.buildSearchParams()
|
||||||
|
|
||||||
|
const entityPath = `items`
|
||||||
|
const sfQueryString = this.currentSFQueryString ? this.currentSFQueryString + '&' : ''
|
||||||
|
const fullQueryString = `?${sfQueryString}limit=${this.booksPerFetch}&page=${page}&minified=1&include=rssfeed,numEpisodesIncomplete`
|
||||||
|
|
||||||
|
const payload = await this.$nativeHttp.get(`/api/libraries/${this.series.libraryId}/${entityPath}${fullQueryString}`).catch((error) => {
|
||||||
|
console.error('failed to fetch books', error)
|
||||||
|
return null
|
||||||
|
})
|
||||||
|
|
||||||
|
if (payload && payload.results) {
|
||||||
|
console.log('Received payload', payload)
|
||||||
|
this.books = payload.total
|
||||||
|
|
||||||
|
for (let i = 0; i < payload.results.length; i++) {
|
||||||
|
if (!(await this.$db.getLocalLibraryItem(`local_${payload.results[i].id}`))) {
|
||||||
|
this.missingFiles += payload.results[i].numFiles
|
||||||
|
this.missingFilesSize += payload.results[i].size
|
||||||
|
this.libraryIds.push(payload.results[i].id)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
let totalPages = Math.ceil(this.books / this.booksPerFetch)
|
||||||
|
if (totalPages > page + 1) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
},
|
||||||
|
async download(selectedLocalFolder = null) {
|
||||||
|
// Get the local folder to download to
|
||||||
|
let localFolder = selectedLocalFolder
|
||||||
|
if (!this.isIos && !localFolder) {
|
||||||
|
const localFolders = (await this.$db.getLocalFolders()) || []
|
||||||
|
console.log('Local folders loaded', localFolders.length)
|
||||||
|
const foldersWithMediaType = localFolders.filter((lf) => {
|
||||||
|
console.log('Checking local folder', lf.mediaType)
|
||||||
|
return lf.mediaType == this.mediaType
|
||||||
|
})
|
||||||
|
console.log('Folders with media type', this.mediaType, foldersWithMediaType.length)
|
||||||
|
const internalStorageFolder = foldersWithMediaType.find((f) => f.id === `internal-${this.mediaType}`)
|
||||||
|
if (!foldersWithMediaType.length) {
|
||||||
|
localFolder = {
|
||||||
|
id: `internal-${this.mediaType}`,
|
||||||
|
name: this.$strings.LabelInternalAppStorage,
|
||||||
|
mediaType: this.mediaType
|
||||||
|
}
|
||||||
|
} else if (foldersWithMediaType.length === 1 && internalStorageFolder) {
|
||||||
|
localFolder = internalStorageFolder
|
||||||
|
} else {
|
||||||
|
this.$store.commit('globals/showSelectLocalFolderModal', {
|
||||||
|
mediaType: this.mediaType,
|
||||||
|
callback: (folder) => {
|
||||||
|
this.download(folder)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Fetch series data from server
|
||||||
|
let page = 0
|
||||||
|
let fetchFinished = false
|
||||||
|
this.missingFiles = 0
|
||||||
|
this.missingFilesSize = 0
|
||||||
|
while (fetchFinished === false) {
|
||||||
|
fetchFinished = await this.fetchSeriesEntities(page)
|
||||||
|
page += 1
|
||||||
|
}
|
||||||
|
if (fetchFinished !== true) {
|
||||||
|
console.error('failed to fetch series books data')
|
||||||
|
return null
|
||||||
|
}
|
||||||
|
if (this.missingFiles == 0) {
|
||||||
|
alert(this.$getString('MessageSeriesAlreadyDownloaded'))
|
||||||
|
}
|
||||||
|
|
||||||
|
// Format message for dialog
|
||||||
|
let startDownloadMessage = this.$getString('MessageSeriesDownloadConfirmIos', [this.libraryIds.length, this.missingFiles, this.$bytesPretty(this.missingFilesSize)])
|
||||||
|
if (!this.isIos) {
|
||||||
|
startDownloadMessage = this.$getString('MessageSeriesDownloadConfirm', [this.libraryIds.length, this.missingFiles, this.$bytesPretty(this.missingFilesSize), localFolder.name])
|
||||||
|
}
|
||||||
|
|
||||||
|
// Show confirmation dialog and start downloading if user chooses so
|
||||||
|
const { value } = await Dialog.confirm({
|
||||||
|
title: 'Confirm',
|
||||||
|
message: startDownloadMessage
|
||||||
|
})
|
||||||
|
if (value) {
|
||||||
|
for (let i = 0; i < this.libraryIds.length; i++) {
|
||||||
|
this.startDownload(localFolder, this.libraryIds[i])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.libraryIds = []
|
||||||
|
},
|
||||||
|
async startDownload(localFolder = null, libraryItemId) {
|
||||||
|
const payload = {
|
||||||
|
libraryItemId: libraryItemId
|
||||||
|
}
|
||||||
|
if (localFolder) {
|
||||||
|
console.log('Starting download to local folder', localFolder.name)
|
||||||
|
payload.localFolderId = localFolder.id
|
||||||
|
}
|
||||||
|
var downloadRes = await AbsDownloader.downloadLibraryItem(payload)
|
||||||
|
if (downloadRes && downloadRes.error) {
|
||||||
|
var errorMsg = downloadRes.error || 'Unknown error'
|
||||||
|
console.error('Download error', errorMsg)
|
||||||
|
this.$toast.error(errorMsg)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.$eventBus.$on('download-series-click', this.downloadSeriesClick)
|
||||||
|
},
|
||||||
|
beforeDestroy() {
|
||||||
|
this.$eventBus.$off('download-series-click', this.downloadSeriesClick)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
+2
-6
@@ -34,11 +34,7 @@ export default {
|
|||||||
deviceData: null
|
deviceData: null
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {},
|
||||||
networkConnected() {
|
|
||||||
return this.$store.state.networkConnected
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
methods: {
|
||||||
async init() {
|
async init() {
|
||||||
this.deviceData = await this.$db.getDeviceData()
|
this.deviceData = await this.$db.getDeviceData()
|
||||||
@@ -53,4 +49,4 @@ export default {
|
|||||||
this.init()
|
this.init()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -23,6 +23,9 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
|
<div v-if="localLibraryItems.length" class="mt-4 text-sm text-fg-muted">
|
||||||
|
{{ $strings.LabelTotalSize }}: {{ $bytesPretty(localLibraryItems.reduce((acc, item) => acc + item.size, 0)) }}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@@ -41,7 +41,7 @@
|
|||||||
</ui-btn>
|
</ui-btn>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p class="text-sm text-fg mt-1.5 mb-0.5 default-style" v-html="description" />
|
<p class="text-sm text-fg mt-1.5 mb-0.5 default-style description-container" v-html="transformedDescription"></p>
|
||||||
|
|
||||||
<!-- loading overlay -->
|
<!-- loading overlay -->
|
||||||
<div v-if="processing" class="absolute top-0 left-0 w-full h-full bg-black bg-opacity-30 flex items-center justify-center">
|
<div v-if="processing" class="absolute top-0 left-0 w-full h-full bg-black bg-opacity-30 flex items-center justify-center">
|
||||||
@@ -56,6 +56,7 @@
|
|||||||
import { Capacitor } from '@capacitor/core'
|
import { Capacitor } from '@capacitor/core'
|
||||||
import { Dialog } from '@capacitor/dialog'
|
import { Dialog } from '@capacitor/dialog'
|
||||||
import { AbsFileSystem, AbsDownloader } from '@/plugins/capacitor'
|
import { AbsFileSystem, AbsDownloader } from '@/plugins/capacitor'
|
||||||
|
import cellularPermissionHelpers from '@/mixins/cellularPermissionHelpers'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
async asyncData({ store, params, redirect, app }) {
|
async asyncData({ store, params, redirect, app }) {
|
||||||
@@ -115,7 +116,11 @@ export default {
|
|||||||
startingDownload: false
|
startingDownload: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
mixins: [cellularPermissionHelpers],
|
||||||
computed: {
|
computed: {
|
||||||
|
transformedDescription() {
|
||||||
|
return this.parseDescription(this.description)
|
||||||
|
},
|
||||||
bookCoverAspectRatio() {
|
bookCoverAspectRatio() {
|
||||||
return this.$store.getters['libraries/getBookCoverAspectRatio']
|
return this.$store.getters['libraries/getBookCoverAspectRatio']
|
||||||
},
|
},
|
||||||
@@ -310,6 +315,24 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
parseDescription(description) {
|
||||||
|
const timeMarkerLinkRegex = /<a href="#([^"]*?\b\d{1,2}:\d{1,2}(?::\d{1,2})?)">(.*?)<\/a>/g
|
||||||
|
const timeMarkerRegex = /\b\d{1,2}:\d{1,2}(?::\d{1,2})?\b/g
|
||||||
|
|
||||||
|
function convertToSeconds(time) {
|
||||||
|
const timeParts = time.split(':').map(Number)
|
||||||
|
return timeParts.reduce((acc, part, index) => acc * 60 + part, 0)
|
||||||
|
}
|
||||||
|
|
||||||
|
return description.replace(timeMarkerLinkRegex, (match, href, displayTime) => {
|
||||||
|
const time = displayTime.match(timeMarkerRegex)[0]
|
||||||
|
const seekTimeInSeconds = convertToSeconds(time)
|
||||||
|
return `<span class="time-marker cursor-pointer text-blue-400 hover:text-blue-300" data-time="${seekTimeInSeconds}">${displayTime}</span>`
|
||||||
|
}).replace(timeMarkerRegex, (match) => {
|
||||||
|
const seekTimeInSeconds = convertToSeconds(match)
|
||||||
|
return `<span class="time-marker cursor-pointer text-blue-400 hover:text-blue-300" data-time="${seekTimeInSeconds}">${match}</span>`
|
||||||
|
})
|
||||||
|
},
|
||||||
async deleteLocalEpisode() {
|
async deleteLocalEpisode() {
|
||||||
await this.$hapticsImpact()
|
await this.$hapticsImpact()
|
||||||
|
|
||||||
@@ -351,28 +374,56 @@ export default {
|
|||||||
} else {
|
} else {
|
||||||
this.$store.commit('setPlayerIsStartingPlayback', this.episode.id)
|
this.$store.commit('setPlayerIsStartingPlayback', this.episode.id)
|
||||||
|
|
||||||
if (this.localEpisodeId && this.localLibraryItemId && !this.isLocal) {
|
const playbackData = this.generatePlaybackData()
|
||||||
console.log('Play local episode', this.localEpisodeId, this.localLibraryItemId)
|
this.emitPlayItemEvent(playbackData)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
async clickPlaybackTime(event) {
|
||||||
|
const startTime = event.target.getAttribute('data-time')
|
||||||
|
if (this.playerIsStartingPlayback) return
|
||||||
|
|
||||||
this.$eventBus.$emit('play-item', {
|
await this.$hapticsImpact()
|
||||||
libraryItemId: this.localLibraryItemId,
|
|
||||||
episodeId: this.localEpisodeId,
|
this.$store.commit('setPlayerIsStartingPlayback', this.episode.id)
|
||||||
serverLibraryItemId: this.serverLibraryItemId,
|
|
||||||
serverEpisodeId: this.serverEpisodeId
|
const playbackData = this.generatePlaybackData(startTime)
|
||||||
})
|
this.emitPlayItemEvent(playbackData)
|
||||||
} else {
|
},
|
||||||
this.$eventBus.$emit('play-item', {
|
generatePlaybackData(startTime) {
|
||||||
libraryItemId: this.libraryItemId,
|
const playbackData = {
|
||||||
episodeId: this.episode.id,
|
libraryItemId: this.libraryItemId,
|
||||||
serverLibraryItemId: this.serverLibraryItemId,
|
episodeId: this.episode.id,
|
||||||
serverEpisodeId: this.serverEpisodeId
|
serverLibraryItemId: this.serverLibraryItemId,
|
||||||
})
|
serverEpisodeId: this.serverEpisodeId,
|
||||||
}
|
startTime
|
||||||
|
}
|
||||||
|
|
||||||
|
if (this.localEpisodeId && this.localLibraryItemId && !this.isLocal) {
|
||||||
|
playbackData.libraryItemId = this.localLibraryItemId
|
||||||
|
playbackData.episodeId = this.localEpisodeId
|
||||||
|
}
|
||||||
|
|
||||||
|
return playbackData
|
||||||
|
},
|
||||||
|
emitPlayItemEvent(playbackData) {
|
||||||
|
this.$eventBus.$emit('play-item', playbackData)
|
||||||
|
},
|
||||||
|
bindTimeMarkerEvents() {
|
||||||
|
const container = document.querySelector('.description-container')
|
||||||
|
if (container) {
|
||||||
|
container.addEventListener('click', (event) => {
|
||||||
|
if (event.target.classList.contains('time-marker')) {
|
||||||
|
this.clickPlaybackTime(event)
|
||||||
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
async downloadClick() {
|
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
|
this.startingDownload = true
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.startingDownload = false
|
this.startingDownload = false
|
||||||
@@ -557,9 +608,13 @@ export default {
|
|||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.$eventBus.$on('new-local-library-item', this.newLocalLibraryItem)
|
this.$eventBus.$on('new-local-library-item', this.newLocalLibraryItem)
|
||||||
|
this.bindTimeMarkerEvents()
|
||||||
},
|
},
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
this.$eventBus.$off('new-local-library-item', this.newLocalLibraryItem)
|
this.$eventBus.$off('new-local-library-item', this.newLocalLibraryItem)
|
||||||
|
document.querySelectorAll('.time-marker').forEach(marker => {
|
||||||
|
marker.removeEventListener('click', this.clickPlaybackTime)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -171,6 +171,7 @@
|
|||||||
import { Dialog } from '@capacitor/dialog'
|
import { Dialog } from '@capacitor/dialog'
|
||||||
import { AbsFileSystem, AbsDownloader } from '@/plugins/capacitor'
|
import { AbsFileSystem, AbsDownloader } from '@/plugins/capacitor'
|
||||||
import { FastAverageColor } from 'fast-average-color'
|
import { FastAverageColor } from 'fast-average-color'
|
||||||
|
import cellularPermissionHelpers from '@/mixins/cellularPermissionHelpers'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
async asyncData({ store, params, redirect, app, query }) {
|
async asyncData({ store, params, redirect, app, query }) {
|
||||||
@@ -187,7 +188,7 @@ export default {
|
|||||||
if (libraryItem?.libraryItemId?.startsWith('li_')) {
|
if (libraryItem?.libraryItemId?.startsWith('li_')) {
|
||||||
// Detect old library item id
|
// Detect old library item id
|
||||||
console.error('Local library item has old server library item id', libraryItem.libraryItemId)
|
console.error('Local library item has old server library item id', libraryItem.libraryItemId)
|
||||||
} else if (query.noredirect !== '1' && libraryItem?.libraryItemId && libraryItem?.serverAddress === store.getters['user/getServerAddress'] && store.state.networkConnected) {
|
} else if (query.noredirect !== '1' && libraryItem?.libraryItemId && libraryItem?.serverAddress === store.getters['user/getServerAddress'] && store.state.socketConnected) {
|
||||||
const queryParams = new URLSearchParams()
|
const queryParams = new URLSearchParams()
|
||||||
queryParams.set('localLibraryItemId', libraryItemId)
|
queryParams.set('localLibraryItemId', libraryItemId)
|
||||||
if (libraryItem.mediaType === 'podcast') {
|
if (libraryItem.mediaType === 'podcast') {
|
||||||
@@ -221,6 +222,7 @@ export default {
|
|||||||
startingDownload: false
|
startingDownload: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
mixins: [cellularPermissionHelpers],
|
||||||
computed: {
|
computed: {
|
||||||
isIos() {
|
isIos() {
|
||||||
return this.$platform === 'ios'
|
return this.$platform === 'ios'
|
||||||
@@ -607,9 +609,11 @@ export default {
|
|||||||
this.download(localFolder)
|
this.download(localFolder)
|
||||||
},
|
},
|
||||||
async downloadClick() {
|
async downloadClick() {
|
||||||
if (this.downloadItem || this.startingDownload) {
|
if (this.downloadItem || this.startingDownload) return
|
||||||
return
|
|
||||||
}
|
const hasPermission = await this.checkCellularPermission('download')
|
||||||
|
if (!hasPermission) return
|
||||||
|
|
||||||
this.startingDownload = true
|
this.startingDownload = true
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.startingDownload = false
|
this.startingDownload = false
|
||||||
|
|||||||
@@ -17,7 +17,10 @@
|
|||||||
|
|
||||||
<div class="w-full max-w-full media-item-container overflow-y-auto overflow-x-hidden relative pb-4" :class="{ 'media-order-changed': orderChanged }">
|
<div class="w-full max-w-full media-item-container overflow-y-auto overflow-x-hidden relative pb-4" :class="{ 'media-order-changed': orderChanged }">
|
||||||
<div v-if="!isPodcast && audioTracksCopy.length" class="w-full py-2">
|
<div v-if="!isPodcast && audioTracksCopy.length" class="w-full py-2">
|
||||||
<p class="text-base mb-2">Audio Tracks ({{ audioTracks.length }})</p>
|
<div class="flex justify-between items-center mb-2">
|
||||||
|
<p class="text-base">Audio Tracks ({{ audioTracks.length }})</p>
|
||||||
|
<p class="text-xs text-fg-muted px-2">{{ $strings.LabelTotalSize }}: {{ $bytesPretty(totalAudioSize) }}</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
<draggable v-model="audioTracksCopy" v-bind="dragOptions" handle=".drag-handle" draggable=".item" tag="div" @start="drag = true" @end="drag = false" @update="draggableUpdate" :disabled="isIos">
|
<draggable v-model="audioTracksCopy" v-bind="dragOptions" handle=".drag-handle" draggable=".item" tag="div" @start="drag = true" @end="drag = false" @update="draggableUpdate" :disabled="isIos">
|
||||||
<transition-group type="transition" :name="!drag ? 'dragtrack' : null">
|
<transition-group type="transition" :name="!drag ? 'dragtrack' : null">
|
||||||
@@ -46,7 +49,10 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div v-if="isPodcast" class="w-full py-2">
|
<div v-if="isPodcast" class="w-full py-2">
|
||||||
<p class="text-base mb-2">Episodes ({{ episodes.length }})</p>
|
<div class="flex justify-between items-center mb-2">
|
||||||
|
<p class="text-base">Episodes ({{ episodes.length }})</p>
|
||||||
|
<p class="text-xs text-fg-muted px-2">{{ $strings.LabelTotalSize }}: {{ $bytesPretty(totalEpisodesSize) }}</p>
|
||||||
|
</div>
|
||||||
<template v-for="episode in episodes">
|
<template v-for="episode in episodes">
|
||||||
<div :key="episode.id" class="flex items-center my-1">
|
<div :key="episode.id" class="flex items-center my-1">
|
||||||
<div class="w-10 h-12 flex items-center justify-center" style="min-width: 48px">
|
<div class="w-10 h-12 flex items-center justify-center" style="min-width: 48px">
|
||||||
@@ -83,22 +89,31 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p v-if="otherFiles.length" class="text-lg py-2">Other Files</p>
|
<div v-if="otherFiles.length">
|
||||||
<template v-for="file in otherFiles">
|
<div class="flex justify-between items-center py-2">
|
||||||
<div :key="file.id" class="flex items-center my-1">
|
<p class="text-lg">Other Files</p>
|
||||||
<div class="w-12 h-12 flex items-center justify-center">
|
<p class="text-xs text-fg-muted px-2">{{ $strings.LabelTotalSize }}: {{ $bytesPretty(totalOtherFilesSize) }}</p>
|
||||||
<img v-if="(file.mimeType || '').startsWith('image')" :src="getCapImageSrc(file.contentUrl)" class="w-full h-full object-contain" />
|
|
||||||
<span v-else class="material-icons">music_note</span>
|
|
||||||
</div>
|
|
||||||
<div class="flex-grow px-2">
|
|
||||||
<p class="text-sm">{{ file.filename }}</p>
|
|
||||||
</div>
|
|
||||||
<div class="w-24 text-center text-fg-muted" style="min-width: 96px">
|
|
||||||
<p class="text-xs">{{ file.mimeType }}</p>
|
|
||||||
<p class="text-sm">{{ $bytesPretty(file.size) }}</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
<template v-for="file in otherFiles">
|
||||||
|
<div :key="file.id" class="flex items-center my-1">
|
||||||
|
<div class="w-12 h-12 flex items-center justify-center">
|
||||||
|
<img v-if="(file.mimeType || '').startsWith('image')" :src="getCapImageSrc(file.contentUrl)" class="w-full h-full object-contain" />
|
||||||
|
<span v-else class="material-icons">music_note</span>
|
||||||
|
</div>
|
||||||
|
<div class="flex-grow px-2">
|
||||||
|
<p class="text-sm">{{ file.filename }}</p>
|
||||||
|
</div>
|
||||||
|
<div class="w-24 text-center text-fg-muted" style="min-width: 96px">
|
||||||
|
<p class="text-xs">{{ file.mimeType }}</p>
|
||||||
|
<p class="text-sm">{{ $bytesPretty(file.size) }}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mt-4 text-sm text-fg-muted">
|
||||||
|
{{ $strings.LabelTotalSize }}: {{ $bytesPretty(totalLibraryItemSize) }}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-else class="px-2 w-full h-full">
|
<div v-else class="px-2 w-full h-full">
|
||||||
@@ -218,17 +233,27 @@ export default {
|
|||||||
},
|
},
|
||||||
dialogItems() {
|
dialogItems() {
|
||||||
if (this.selectedAudioTrack || this.selectedEpisode) {
|
if (this.selectedAudioTrack || this.selectedEpisode) {
|
||||||
return [
|
const items = [
|
||||||
{
|
{
|
||||||
text: this.$strings.ButtonDeleteLocalFile,
|
text: this.$strings.ButtonDeleteLocalFile,
|
||||||
value: 'track-delete'
|
value: 'track-delete',
|
||||||
|
icon: 'delete'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
if (this.isPodcast && this.selectedEpisode) {
|
||||||
|
items.unshift({
|
||||||
|
text: this.$strings.ButtonPlayEpisode,
|
||||||
|
value: 'play-episode',
|
||||||
|
icon: 'play_arrow'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
return items
|
||||||
} else {
|
} else {
|
||||||
return [
|
return [
|
||||||
{
|
{
|
||||||
text: this.$strings.ButtonDeleteLocalItem,
|
text: this.$strings.ButtonDeleteLocalItem,
|
||||||
value: 'delete'
|
value: 'delete',
|
||||||
|
icon: 'delete'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -236,6 +261,18 @@ export default {
|
|||||||
playerIsStartingPlayback() {
|
playerIsStartingPlayback() {
|
||||||
// Play has been pressed and waiting for native play response
|
// Play has been pressed and waiting for native play response
|
||||||
return this.$store.state.playerIsStartingPlayback
|
return this.$store.state.playerIsStartingPlayback
|
||||||
|
},
|
||||||
|
totalAudioSize() {
|
||||||
|
return this.audioTracks.reduce((acc, item) => item.metadata ? acc + item.metadata.size : acc, 0)
|
||||||
|
},
|
||||||
|
totalEpisodesSize() {
|
||||||
|
return this.episodes.reduce((acc, item) => acc + item.size, 0)
|
||||||
|
},
|
||||||
|
totalOtherFilesSize() {
|
||||||
|
return this.otherFiles.reduce((acc, item) => acc + item.size, 0)
|
||||||
|
},
|
||||||
|
totalLibraryItemSize() {
|
||||||
|
return this.localFiles.reduce((acc, item) => acc + item.size, 0)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@@ -291,6 +328,19 @@ export default {
|
|||||||
getCapImageSrc(contentUrl) {
|
getCapImageSrc(contentUrl) {
|
||||||
return Capacitor.convertFileSrc(contentUrl)
|
return Capacitor.convertFileSrc(contentUrl)
|
||||||
},
|
},
|
||||||
|
async playEpisode() {
|
||||||
|
if (!this.selectedEpisode) return
|
||||||
|
if (this.playerIsStartingPlayback) return
|
||||||
|
await this.$hapticsImpact()
|
||||||
|
this.$store.commit('setPlayerIsStartingPlayback', this.selectedEpisode.serverEpisodeId)
|
||||||
|
|
||||||
|
this.$eventBus.$emit('play-item', {
|
||||||
|
libraryItemId: this.localLibraryItemId,
|
||||||
|
episodeId: this.selectedEpisode.id,
|
||||||
|
serverLibraryItemId: this.libraryItemId,
|
||||||
|
serverEpisodeId: this.selectedEpisode.serverEpisodeId
|
||||||
|
})
|
||||||
|
},
|
||||||
async dialogAction(action) {
|
async dialogAction(action) {
|
||||||
console.log('Dialog action', action)
|
console.log('Dialog action', action)
|
||||||
await this.$hapticsImpact()
|
await this.$hapticsImpact()
|
||||||
@@ -300,8 +350,10 @@ export default {
|
|||||||
} else if (action == 'track-delete') {
|
} else if (action == 'track-delete') {
|
||||||
if (this.isPodcast) this.deleteEpisode()
|
if (this.isPodcast) this.deleteEpisode()
|
||||||
else this.deleteTrack()
|
else this.deleteTrack()
|
||||||
|
} else if (action == 'play-episode') {
|
||||||
|
this.playEpisode()
|
||||||
}
|
}
|
||||||
this.showDialog = false
|
this.showDialog = false;
|
||||||
},
|
},
|
||||||
getLocalFileForTrack(localFileId) {
|
getLocalFileForTrack(localFileId) {
|
||||||
return this.localFiles.find((lf) => lf.id == localFileId)
|
return this.localFiles.find((lf) => lf.id == localFileId)
|
||||||
|
|||||||
@@ -71,6 +71,7 @@ export default {
|
|||||||
let lastKey = null
|
let lastKey = null
|
||||||
let numSaves = 0
|
let numSaves = 0
|
||||||
let numSyncs = 0
|
let numSyncs = 0
|
||||||
|
let lastSaveName = null
|
||||||
|
|
||||||
this.mediaEvents.forEach((evt) => {
|
this.mediaEvents.forEach((evt) => {
|
||||||
const date = this.$formatDate(evt.timestamp, 'MMM dd, yyyy')
|
const date = this.$formatDate(evt.timestamp, 'MMM dd, yyyy')
|
||||||
@@ -90,7 +91,8 @@ export default {
|
|||||||
|
|
||||||
// Collapse saves
|
// Collapse saves
|
||||||
if (evt.name === 'Save') {
|
if (evt.name === 'Save') {
|
||||||
if (numSaves > 0 && !keyUpdated) {
|
let saveName = evt.name + "-" + evt.serverSyncAttempted + "-" + evt.serverSyncSuccess
|
||||||
|
if (lastSaveName === saveName && numSaves > 0 && !keyUpdated) {
|
||||||
include = false
|
include = false
|
||||||
const totalInGroup = groups[key].length
|
const totalInGroup = groups[key].length
|
||||||
groups[key][totalInGroup - 1].num = numSaves
|
groups[key][totalInGroup - 1].num = numSaves
|
||||||
@@ -98,6 +100,7 @@ export default {
|
|||||||
} else {
|
} else {
|
||||||
numSaves = 1
|
numSaves = 1
|
||||||
}
|
}
|
||||||
|
lastSaveName = saveName
|
||||||
} else {
|
} else {
|
||||||
numSaves = 0
|
numSaves = 0
|
||||||
}
|
}
|
||||||
|
|||||||
+73
-1
@@ -135,6 +135,21 @@
|
|||||||
</div>
|
</div>
|
||||||
</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">
|
<div v-show="loading" class="w-full h-full absolute top-0 left-0 flex items-center justify-center z-10">
|
||||||
<ui-loading-indicator />
|
<ui-loading-indicator />
|
||||||
</div>
|
</div>
|
||||||
@@ -176,7 +191,9 @@ export default {
|
|||||||
disableSleepTimerResetFeedback: false,
|
disableSleepTimerResetFeedback: false,
|
||||||
autoSleepTimerAutoRewind: false,
|
autoSleepTimerAutoRewind: false,
|
||||||
autoSleepTimerAutoRewindTime: 300000, // 5 minutes
|
autoSleepTimerAutoRewindTime: 300000, // 5 minutes
|
||||||
languageCode: 'en-us'
|
languageCode: 'en-us',
|
||||||
|
downloadUsingCellular: 'ALWAYS',
|
||||||
|
streamingUsingCellular: 'ALWAYS'
|
||||||
},
|
},
|
||||||
theme: 'dark',
|
theme: 'dark',
|
||||||
lockCurrentOrientation: false,
|
lockCurrentOrientation: false,
|
||||||
@@ -245,6 +262,34 @@ export default {
|
|||||||
text: this.$strings.LabelVeryHigh,
|
text: this.$strings.LabelVeryHigh,
|
||||||
value: 'VERY_HIGH'
|
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
|
const minutes = Number(this.settings.autoSleepTimerAutoRewindTime) / 1000 / 60
|
||||||
return `${minutes} min`
|
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() {
|
moreMenuItems() {
|
||||||
if (this.moreMenuSetting === 'shakeSensitivity') return this.shakeSensitivityItems
|
if (this.moreMenuSetting === 'shakeSensitivity') return this.shakeSensitivityItems
|
||||||
else if (this.moreMenuSetting === 'hapticFeedback') return this.hapticFeedbackItems
|
else if (this.moreMenuSetting === 'hapticFeedback') return this.hapticFeedbackItems
|
||||||
else if (this.moreMenuSetting === 'language') return this.languageOptionItems
|
else if (this.moreMenuSetting === 'language') return this.languageOptionItems
|
||||||
else if (this.moreMenuSetting === 'theme') return this.themeOptionItems
|
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 []
|
return []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -358,6 +413,14 @@ export default {
|
|||||||
this.moreMenuSetting = 'theme'
|
this.moreMenuSetting = 'theme'
|
||||||
this.showMoreMenuDialog = true
|
this.showMoreMenuDialog = true
|
||||||
},
|
},
|
||||||
|
showDownloadUsingCellularOptions() {
|
||||||
|
this.moreMenuSetting = 'downloadUsingCellular'
|
||||||
|
this.showMoreMenuDialog = true
|
||||||
|
},
|
||||||
|
showStreamingUsingCellularOptions() {
|
||||||
|
this.moreMenuSetting = 'streamingUsingCellular'
|
||||||
|
this.showMoreMenuDialog = true
|
||||||
|
},
|
||||||
clickMenuAction(action) {
|
clickMenuAction(action) {
|
||||||
this.showMoreMenuDialog = false
|
this.showMoreMenuDialog = false
|
||||||
if (this.moreMenuSetting === 'shakeSensitivity') {
|
if (this.moreMenuSetting === 'shakeSensitivity') {
|
||||||
@@ -372,6 +435,12 @@ export default {
|
|||||||
} else if (this.moreMenuSetting === 'theme') {
|
} else if (this.moreMenuSetting === 'theme') {
|
||||||
this.theme = action
|
this.theme = action
|
||||||
this.saveTheme(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) {
|
saveTheme(theme) {
|
||||||
@@ -504,6 +573,9 @@ export default {
|
|||||||
this.settings.autoSleepTimerAutoRewindTime = !isNaN(deviceSettings.autoSleepTimerAutoRewindTime) ? deviceSettings.autoSleepTimerAutoRewindTime : 300000 // 5 minutes
|
this.settings.autoSleepTimerAutoRewindTime = !isNaN(deviceSettings.autoSleepTimerAutoRewindTime) ? deviceSettings.autoSleepTimerAutoRewindTime : 300000 // 5 minutes
|
||||||
|
|
||||||
this.settings.languageCode = deviceSettings.languageCode || 'en-us'
|
this.settings.languageCode = deviceSettings.languageCode || 'en-us'
|
||||||
|
|
||||||
|
this.settings.downloadUsingCellular = deviceSettings.downloadUsingCellular || 'ALWAYS'
|
||||||
|
this.settings.streamingUsingCellular = deviceSettings.streamingUsingCellular || 'ALWAYS'
|
||||||
},
|
},
|
||||||
async init() {
|
async init() {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
|
|||||||
+32
-31
@@ -1,42 +1,41 @@
|
|||||||
import Vue from "vue"
|
import Vue from 'vue'
|
||||||
import enUsStrings from '../strings/en-us.json'
|
import enUsStrings from '../strings/en-us.json'
|
||||||
|
|
||||||
const defaultCode = 'en-us'
|
const defaultCode = 'en-us'
|
||||||
let $localStore = null
|
let $localStore = null
|
||||||
|
|
||||||
const languageCodeMap = {
|
const languageCodeMap = {
|
||||||
'cs': { label: 'Čeština', dateFnsLocale: 'cs' },
|
cs: { label: 'Čeština', dateFnsLocale: 'cs' },
|
||||||
'da': { label: 'Dansk', dateFnsLocale: 'da' },
|
da: { label: 'Dansk', dateFnsLocale: 'da' },
|
||||||
'de': { label: 'Deutsch', dateFnsLocale: 'de' },
|
de: { label: 'Deutsch', dateFnsLocale: 'de' },
|
||||||
'en-us': { label: 'English', dateFnsLocale: 'enUS' },
|
'en-us': { label: 'English', dateFnsLocale: 'enUS' },
|
||||||
'es': { label: 'Español', dateFnsLocale: 'es' },
|
es: { label: 'Español', dateFnsLocale: 'es' },
|
||||||
'fr': { label: 'Français', dateFnsLocale: 'fr' },
|
fi: { label: 'Suomi', dateFnsLocale: 'fi' },
|
||||||
'hr': { label: 'Hrvatski', dateFnsLocale: 'hr' },
|
fr: { label: 'Français', dateFnsLocale: 'fr' },
|
||||||
'it': { label: 'Italiano', dateFnsLocale: 'it' },
|
hr: { label: 'Hrvatski', dateFnsLocale: 'hr' },
|
||||||
'lt': { label: 'Lietuvių', dateFnsLocale: 'lt' },
|
it: { label: 'Italiano', dateFnsLocale: 'it' },
|
||||||
'hu': { label: 'Magyar', dateFnsLocale: 'hu' },
|
lt: { label: 'Lietuvių', dateFnsLocale: 'lt' },
|
||||||
'nl': { label: 'Nederlands', dateFnsLocale: 'nl' },
|
hu: { label: 'Magyar', dateFnsLocale: 'hu' },
|
||||||
'no': { label: 'Norsk', dateFnsLocale: 'no' },
|
nl: { label: 'Nederlands', dateFnsLocale: 'nl' },
|
||||||
'pl': { label: 'Polski', dateFnsLocale: 'pl' },
|
no: { label: 'Norsk', dateFnsLocale: 'no' },
|
||||||
|
pl: { label: 'Polski', dateFnsLocale: 'pl' },
|
||||||
'pt-br': { label: 'Português (Brasil)', dateFnsLocale: 'ptBR' },
|
'pt-br': { label: 'Português (Brasil)', dateFnsLocale: 'ptBR' },
|
||||||
'ru': { label: 'Русский', dateFnsLocale: 'ru' },
|
ru: { label: 'Русский', dateFnsLocale: 'ru' },
|
||||||
'sv': { label: 'Svenska', dateFnsLocale: 'sv' },
|
sv: { label: 'Svenska', dateFnsLocale: 'sv' },
|
||||||
'uk': { label: 'Українська', dateFnsLocale: 'uk' },
|
uk: { label: 'Українська', dateFnsLocale: 'uk' },
|
||||||
'vi-vn': { label: 'Tiếng Việt', dateFnsLocale: 'vi' },
|
'vi-vn': { label: 'Tiếng Việt', dateFnsLocale: 'vi' },
|
||||||
'zh-cn': { label: '简体中文 (Simplified Chinese)', dateFnsLocale: 'zhCN' },
|
'zh-cn': { label: '简体中文 (Simplified Chinese)', dateFnsLocale: 'zhCN' }
|
||||||
}
|
}
|
||||||
|
|
||||||
function supplant(str, subs) {
|
function supplant(str, subs) {
|
||||||
// source: http://crockford.com/javascript/remedial.html
|
// source: http://crockford.com/javascript/remedial.html
|
||||||
return str.replace(/{([^{}]*)}/g,
|
return str.replace(/{([^{}]*)}/g, function (a, b) {
|
||||||
function (a, b) {
|
var r = subs[b]
|
||||||
var r = subs[b]
|
return typeof r === 'string' || typeof r === 'number' ? r : a
|
||||||
return typeof r === 'string' || typeof r === 'number' ? r : a
|
})
|
||||||
}
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Vue.prototype.$languageCodeOptions = Object.keys(languageCodeMap).map(code => {
|
Vue.prototype.$languageCodeOptions = Object.keys(languageCodeMap).map((code) => {
|
||||||
return {
|
return {
|
||||||
text: languageCodeMap[code].label,
|
text: languageCodeMap[code].label,
|
||||||
value: code
|
value: code
|
||||||
@@ -66,12 +65,14 @@ var translations = {
|
|||||||
|
|
||||||
function loadTranslationStrings(code) {
|
function loadTranslationStrings(code) {
|
||||||
return new Promise((resolve) => {
|
return new Promise((resolve) => {
|
||||||
import(`../strings/${code}`).then((fileContents) => {
|
import(`../strings/${code}`)
|
||||||
resolve(fileContents.default)
|
.then((fileContents) => {
|
||||||
}).catch((error) => {
|
resolve(fileContents.default)
|
||||||
console.error('Failed to load i18n strings', code, error)
|
})
|
||||||
resolve(null)
|
.catch((error) => {
|
||||||
})
|
console.error('Failed to load i18n strings', code, error)
|
||||||
|
resolve(null)
|
||||||
|
})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -82,7 +83,7 @@ async function loadi18n(code) {
|
|||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
const strings = translations[code] || await loadTranslationStrings(code)
|
const strings = translations[code] || (await loadTranslationStrings(code))
|
||||||
if (!strings) {
|
if (!strings) {
|
||||||
console.warn(`Invalid lang code ${code}`)
|
console.warn(`Invalid lang code ${code}`)
|
||||||
return false
|
return false
|
||||||
|
|||||||
@@ -3,24 +3,25 @@
|
|||||||
Audiobookshelf is a self-hosted audiobook and podcast server.
|
Audiobookshelf is a self-hosted audiobook and podcast server.
|
||||||
|
|
||||||
### Android (beta)
|
### Android (beta)
|
||||||
|
|
||||||
Get the Android app on the [Google Play Store](https://play.google.com/store/apps/details?id=com.audiobookshelf.app)
|
Get the Android app on the [Google Play Store](https://play.google.com/store/apps/details?id=com.audiobookshelf.app)
|
||||||
|
|
||||||
### iOS (early beta)
|
### iOS (early beta)
|
||||||
**Beta is currently full. Apple has a hard limit of 10k beta testers. Updates will be posted in Discord/Matrix.**
|
|
||||||
|
|
||||||
Using Test Flight: https://testflight.apple.com/join/wiic7QIW ***(beta is full)***
|
**Beta is currently full. Apple has a hard limit of 10k beta testers. Updates will be posted in Discord.**
|
||||||
|
|
||||||
|
Using Test Flight: https://testflight.apple.com/join/wiic7QIW **_(beta is full)_**
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
[Go to the main project repo github.com/advplyr/audiobookshelf](https://github.com/advplyr/audiobookshelf) or the project site [audiobookshelf.org](https://audiobookshelf.org)
|
[Go to the main project repo github.com/advplyr/audiobookshelf](https://github.com/advplyr/audiobookshelf) or the project site [audiobookshelf.org](https://audiobookshelf.org)
|
||||||
|
|
||||||
Join us on [discord](https://discord.gg/pJsjuNCKRq) or [Matrix](https://matrix.to/#/#audiobookshelf:matrix.org)
|
Join us on [discord](https://discord.gg/pJsjuNCKRq)
|
||||||
|
|
||||||
**Requires an Audiobookshelf server to connect with**
|
**Requires an Audiobookshelf server to connect with**
|
||||||
|
|
||||||
<img alt="Screenshot" src="https://github.com/advplyr/audiobookshelf-app/raw/master/screenshots/DeviceDemoScreens.png" />
|
<img alt="Screenshot" src="https://github.com/advplyr/audiobookshelf-app/raw/master/screenshots/DeviceDemoScreens.png" />
|
||||||
|
|
||||||
|
|
||||||
## Contributing
|
## Contributing
|
||||||
|
|
||||||
This application is built using [NuxtJS](https://nuxtjs.org/) and [Capacitor](https://capacitorjs.com/) in order to run on both iOS and Android on the same code base.
|
This application is built using [NuxtJS](https://nuxtjs.org/) and [Capacitor](https://capacitorjs.com/) in order to run on both iOS and Android on the same code base.
|
||||||
@@ -31,11 +32,11 @@ Information on helping with translations of the apps [here](https://www.audioboo
|
|||||||
|
|
||||||
Required Software:
|
Required Software:
|
||||||
|
|
||||||
* [Git](https://git-scm.com/downloads)
|
- [Git](https://git-scm.com/downloads)
|
||||||
* [Node.js](https://nodejs.org/en/) (version 20)
|
- [Node.js](https://nodejs.org/en/) (version 20)
|
||||||
* Code editor of choice([VSCode](https://code.visualstudio.com/download), etc)
|
- Code editor of choice([VSCode](https://code.visualstudio.com/download), etc)
|
||||||
* [Android Studio](https://developer.android.com/studio)
|
- [Android Studio](https://developer.android.com/studio)
|
||||||
* [Android SDK](https://developer.android.com/studio)
|
- [Android SDK](https://developer.android.com/studio)
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>Install the required software with <a href=(https://docs.microsoft.com/en-us/windows/package-manager/winget/#production-recommended)>winget</a></summary>
|
<summary>Install the required software with <a href=(https://docs.microsoft.com/en-us/windows/package-manager/winget/#production-recommended)>winget</a></summary>
|
||||||
@@ -62,10 +63,10 @@ Your Windows environment should now be set up and ready to proceed!
|
|||||||
|
|
||||||
Required Software:
|
Required Software:
|
||||||
|
|
||||||
* [Android Studio](https://developer.android.com/studio)
|
- [Android Studio](https://developer.android.com/studio)
|
||||||
* [Node.js](https://nodejs.org/en/) (version 20)
|
- [Node.js](https://nodejs.org/en/) (version 20)
|
||||||
* [Cocoapods](https://guides.cocoapods.org/using/getting-started.html#installation)
|
- [Cocoapods](https://guides.cocoapods.org/using/getting-started.html#installation)
|
||||||
* [Android SDK](https://developer.android.com/studio)
|
- [Android SDK](https://developer.android.com/studio)
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>Install the required software with <a href=(https://brew.sh/)>homebrew</a></summary>
|
<summary>Install the required software with <a href=(https://brew.sh/)>homebrew</a></summary>
|
||||||
@@ -84,6 +85,7 @@ brew install android-studio node cocoapods
|
|||||||
Clone or fork the project from terminal or powershell and `cd` into the project directory.
|
Clone or fork the project from terminal or powershell and `cd` into the project directory.
|
||||||
|
|
||||||
Install the required node packages:
|
Install the required node packages:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
npm install
|
npm install
|
||||||
```
|
```
|
||||||
@@ -92,10 +94,12 @@ npm install
|
|||||||
<summary>Expand for screenshot</summary>
|
<summary>Expand for screenshot</summary>
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
Generate static web app:
|
Generate static web app:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
npm run generate
|
npm run generate
|
||||||
```
|
```
|
||||||
@@ -104,10 +108,12 @@ npm run generate
|
|||||||
<summary>Expand for screenshot</summary>
|
<summary>Expand for screenshot</summary>
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
Copy web app into native android/ios folders:
|
Copy web app into native android/ios folders:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
npx cap sync
|
npx cap sync
|
||||||
```
|
```
|
||||||
@@ -116,6 +122,7 @@ npx cap sync
|
|||||||
<summary>Expand for screenshot</summary>
|
<summary>Expand for screenshot</summary>
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
@@ -129,6 +136,7 @@ npx cap open android
|
|||||||
<summary>Expand for screenshot</summary>
|
<summary>Expand for screenshot</summary>
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
@@ -138,15 +146,16 @@ Start coding!
|
|||||||
|
|
||||||
Required Software:
|
Required Software:
|
||||||
|
|
||||||
* [Xcode](https://developer.apple.com/xcode/)
|
- [Xcode](https://developer.apple.com/xcode/)
|
||||||
* [Node.js](https://nodejs.org/en/)
|
- [Node.js](https://nodejs.org/en/)
|
||||||
* [Cocoapods](https://guides.cocoapods.org/using/getting-started.html#installation)
|
- [Cocoapods](https://guides.cocoapods.org/using/getting-started.html#installation)
|
||||||
|
|
||||||
### Start working on the iOS app
|
### Start working on the iOS app
|
||||||
|
|
||||||
Clone or fork the project in the terminal and `cd` into the project directory.
|
Clone or fork the project in the terminal and `cd` into the project directory.
|
||||||
|
|
||||||
Install the required node packages:
|
Install the required node packages:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
npm install
|
npm install
|
||||||
```
|
```
|
||||||
@@ -155,10 +164,12 @@ npm install
|
|||||||
<summary>Expand for screenshot</summary>
|
<summary>Expand for screenshot</summary>
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
Generate static web app:
|
Generate static web app:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
npm run generate
|
npm run generate
|
||||||
```
|
```
|
||||||
@@ -167,10 +178,12 @@ npm run generate
|
|||||||
<summary>Expand for screenshot</summary>
|
<summary>Expand for screenshot</summary>
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
Copy web app into native android/ios folders:
|
Copy web app into native android/ios folders:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
npx cap sync
|
npx cap sync
|
||||||
```
|
```
|
||||||
@@ -179,6 +192,7 @@ npx cap sync
|
|||||||
<summary>Expand for screenshot</summary>
|
<summary>Expand for screenshot</summary>
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
@@ -192,6 +206,7 @@ npx cap open ios
|
|||||||
<summary>Expand for screenshot</summary>
|
<summary>Expand for screenshot</summary>
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
|
|||||||
+29
-12
@@ -31,16 +31,16 @@ export const state = () => ({
|
|||||||
})
|
})
|
||||||
|
|
||||||
export const getters = {
|
export const getters = {
|
||||||
getCurrentPlaybackSessionId: state => {
|
getCurrentPlaybackSessionId: (state) => {
|
||||||
return state.currentPlaybackSession?.id || null
|
return state.currentPlaybackSession?.id || null
|
||||||
},
|
},
|
||||||
getIsPlayerOpen: state => {
|
getIsPlayerOpen: (state) => {
|
||||||
return !!state.currentPlaybackSession
|
return !!state.currentPlaybackSession
|
||||||
},
|
},
|
||||||
getIsCurrentSessionLocal: state => {
|
getIsCurrentSessionLocal: (state) => {
|
||||||
return state.currentPlaybackSession?.playMethod == PlayMethod.LOCAL
|
return state.currentPlaybackSession?.playMethod == PlayMethod.LOCAL
|
||||||
},
|
},
|
||||||
getIsMediaStreaming: state => (libraryItemId, episodeId) => {
|
getIsMediaStreaming: (state) => (libraryItemId, episodeId) => {
|
||||||
if (!state.currentPlaybackSession || !libraryItemId) return false
|
if (!state.currentPlaybackSession || !libraryItemId) return false
|
||||||
|
|
||||||
// Check using local library item id and local episode id
|
// Check using local library item id and local episode id
|
||||||
@@ -59,24 +59,32 @@ export const getters = {
|
|||||||
if (!episodeId) return true
|
if (!episodeId) return true
|
||||||
return state.currentPlaybackSession.episodeId === episodeId
|
return state.currentPlaybackSession.episodeId === episodeId
|
||||||
},
|
},
|
||||||
getServerSetting: state => key => {
|
getServerSetting: (state) => (key) => {
|
||||||
if (!state.serverSettings) return null
|
if (!state.serverSettings) return null
|
||||||
return state.serverSettings[key]
|
return state.serverSettings[key]
|
||||||
},
|
},
|
||||||
getJumpForwardTime: state => {
|
getJumpForwardTime: (state) => {
|
||||||
if (!state.deviceData?.deviceSettings) return 10
|
if (!state.deviceData?.deviceSettings) return 10
|
||||||
return state.deviceData.deviceSettings.jumpForwardTime || 10
|
return state.deviceData.deviceSettings.jumpForwardTime || 10
|
||||||
},
|
},
|
||||||
getJumpBackwardsTime: state => {
|
getJumpBackwardsTime: (state) => {
|
||||||
if (!state.deviceData?.deviceSettings) return 10
|
if (!state.deviceData?.deviceSettings) return 10
|
||||||
return state.deviceData.deviceSettings.jumpBackwardsTime || 10
|
return state.deviceData.deviceSettings.jumpBackwardsTime || 10
|
||||||
},
|
},
|
||||||
getAltViewEnabled: state => {
|
getAltViewEnabled: (state) => {
|
||||||
if (!state.deviceData?.deviceSettings) return true
|
if (!state.deviceData?.deviceSettings) return true
|
||||||
return state.deviceData.deviceSettings.enableAltView
|
return state.deviceData.deviceSettings.enableAltView
|
||||||
},
|
},
|
||||||
getOrientationLockSetting: state => {
|
getOrientationLockSetting: (state) => {
|
||||||
return state.deviceData?.deviceSettings?.lockOrientation
|
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'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -116,7 +124,7 @@ export const mutations = {
|
|||||||
setPlaybackSession(state, playbackSession) {
|
setPlaybackSession(state, playbackSession) {
|
||||||
state.currentPlaybackSession = playbackSession
|
state.currentPlaybackSession = playbackSession
|
||||||
|
|
||||||
state.isCasting = playbackSession?.mediaPlayer === "cast-player"
|
state.isCasting = playbackSession?.mediaPlayer === 'cast-player'
|
||||||
},
|
},
|
||||||
setMediaPlayer(state, mediaPlayer) {
|
setMediaPlayer(state, mediaPlayer) {
|
||||||
state.isCasting = mediaPlayer === 'cast-player'
|
state.isCasting = mediaPlayer === 'cast-player'
|
||||||
@@ -157,7 +165,16 @@ export const mutations = {
|
|||||||
state.isNetworkListenerInit = val
|
state.isNetworkListenerInit = val
|
||||||
},
|
},
|
||||||
setNetworkStatus(state, val) {
|
setNetworkStatus(state, val) {
|
||||||
state.networkConnected = val.connected
|
if (val.connectionType !== 'none') {
|
||||||
|
state.networkConnected = true
|
||||||
|
} else {
|
||||||
|
state.networkConnected = false
|
||||||
|
}
|
||||||
|
if (this.$platform === 'ios') {
|
||||||
|
// Capacitor Network plugin only shows ios device connected if internet access is available.
|
||||||
|
// This fix allows iOS users to use local servers without internet access.
|
||||||
|
state.networkConnected = true
|
||||||
|
}
|
||||||
state.networkConnectionType = val.connectionType
|
state.networkConnectionType = val.connectionType
|
||||||
},
|
},
|
||||||
setIsNetworkUnmetered(state, val) {
|
setIsNetworkUnmetered(state, val) {
|
||||||
@@ -180,4 +197,4 @@ export const mutations = {
|
|||||||
state.serverSettings = val
|
state.serverSettings = val
|
||||||
this.$localStore.setServerSettings(state.serverSettings)
|
this.$localStore.setServerSettings(state.serverSettings)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
{}
|
||||||
+314
@@ -0,0 +1,314 @@
|
|||||||
|
{
|
||||||
|
"ButtonAdd": "যোগ করুন",
|
||||||
|
"ButtonAddNewServer": "নতুন সার্ভার যোগ করুন",
|
||||||
|
"ButtonAuthors": "লেখকগণ",
|
||||||
|
"ButtonBack": "পেছনে যান",
|
||||||
|
"ButtonCancel": "বাতিল করুন",
|
||||||
|
"ButtonCancelTimer": "টাইমার বাতিল করুন",
|
||||||
|
"ButtonClearFilter": "ফিল্টার পরিষ্কার করুন",
|
||||||
|
"ButtonCloseFeed": "ফিড বন্ধ করুন",
|
||||||
|
"ButtonCollections": "সংগ্রহ",
|
||||||
|
"ButtonConnect": "সংযোগ করুন",
|
||||||
|
"ButtonConnectToServer": "সার্ভারের সাথে সংযোগ করুন",
|
||||||
|
"ButtonCreate": "তৈরি করুন",
|
||||||
|
"ButtonCreateBookmark": "বুকমার্ক তৈরি করুন",
|
||||||
|
"ButtonCreateNewPlaylist": "নতুন প্লেলিস্ট তৈরি করুন",
|
||||||
|
"ButtonDelete": "মুছুন",
|
||||||
|
"ButtonDeleteLocalEpisode": "স্থানীয় পর্ব মুছে ফেলুন",
|
||||||
|
"ButtonDeleteLocalFile": "স্থানীয় ফাইল মুছে ফেলুন",
|
||||||
|
"ButtonDeleteLocalItem": "স্থানীয় আইটেম মুছে ফেলুন",
|
||||||
|
"ButtonDisableAutoTimer": "স্বয়ংক্রিয় টাইমার নিষ্ক্রিয় করুন",
|
||||||
|
"ButtonDisconnect": "সংযোগ বিচ্ছিন্ন করুন",
|
||||||
|
"ButtonGoToWebClient": "ওয়েব ক্লায়েন্টে যান",
|
||||||
|
"ButtonHistory": "ইতিহাস",
|
||||||
|
"ButtonHome": "নীড়",
|
||||||
|
"ButtonIssues": "ইস্যু",
|
||||||
|
"ButtonLatest": "সর্বশেষ",
|
||||||
|
"ButtonLibrary": "লাইব্রেরি",
|
||||||
|
"ButtonLocalMedia": "স্থানীয় মিডিয়া",
|
||||||
|
"ButtonManageLocalFiles": "স্থানীয় ফাইলগুলো পরিচালনা করুন",
|
||||||
|
"ButtonNewFolder": "নতুন ফোল্ডার",
|
||||||
|
"ButtonNextEpisode": "পরবর্তী পর্ব",
|
||||||
|
"ButtonOpenFeed": "ফিড খুলুন",
|
||||||
|
"ButtonOverride": "ওভাররাইড",
|
||||||
|
"ButtonPause": "বিরতি",
|
||||||
|
"ButtonPlay": "বাজান",
|
||||||
|
"ButtonPlayEpisode": "পর্বটি চালান",
|
||||||
|
"ButtonPlaying": "বাজছে",
|
||||||
|
"ButtonPlaylists": "প্লেলিস্ট",
|
||||||
|
"ButtonRead": "পড়ুন",
|
||||||
|
"ButtonRemove": "মুছে ফেলুন",
|
||||||
|
"ButtonRemoveFromServer": "সার্ভার থেকে সরান",
|
||||||
|
"ButtonSave": "সংরক্ষণ করুন",
|
||||||
|
"ButtonSaveOrder": "অর্ডার সংরক্ষণ করুন",
|
||||||
|
"ButtonSearch": "অনুসন্ধান",
|
||||||
|
"ButtonSendEbookToDevice": "ডিভাইসে ইবুক পাঠান",
|
||||||
|
"ButtonSeries": "সিরিজ",
|
||||||
|
"ButtonSetTimer": "টাইমার সেট করুন",
|
||||||
|
"ButtonStream": "স্ট্রীম",
|
||||||
|
"ButtonSubmit": "জমা দিন",
|
||||||
|
"ButtonSwitchServerUser": "সার্ভার/ব্যবহারকারী পরিবর্তন করুন",
|
||||||
|
"ButtonUserStats": "ব্যবহারকারীর পরিসংখ্যান",
|
||||||
|
"ButtonYes": "হ্যাঁ",
|
||||||
|
"HeaderAccount": "অ্যাকাউন্ট",
|
||||||
|
"HeaderAdvanced": "অ্যাডভান্সড",
|
||||||
|
"HeaderAudioTracks": "অডিও ট্র্যাকসগুলো",
|
||||||
|
"HeaderChapters": "অধ্যায়",
|
||||||
|
"HeaderCollection": "সংগ্রহ",
|
||||||
|
"HeaderCollectionItems": "সংগ্রহ আইটেম",
|
||||||
|
"HeaderConnectionStatus": "সংযোগের অবস্থা",
|
||||||
|
"HeaderDataSettings": "ডেটা সেটিংস",
|
||||||
|
"HeaderDetails": "বিস্তারিত",
|
||||||
|
"HeaderDownloads": "ডাউনলোড",
|
||||||
|
"HeaderEbookFiles": "ই-বই ফাইল",
|
||||||
|
"HeaderEpisodes": "পর্ব",
|
||||||
|
"HeaderEreaderSettings": "ই-রিডার সেটিংস",
|
||||||
|
"HeaderLatestEpisodes": "সর্বশেষ পর্ব",
|
||||||
|
"HeaderLibraries": "লাইব্রেরি",
|
||||||
|
"HeaderLocalFolders": "স্থানীয় ফোল্ডার",
|
||||||
|
"HeaderLocalLibraryItems": "স্থানীয় লাইব্রেরি আইটেম",
|
||||||
|
"HeaderNewPlaylist": "নতুন প্লেলিস্ট",
|
||||||
|
"HeaderOpenRSSFeed": "আরএসএস ফিড খুলুন",
|
||||||
|
"HeaderPlaybackSettings": "প্লেব্যাক সেটিংস",
|
||||||
|
"HeaderPlaylist": "প্লেলিস্ট",
|
||||||
|
"HeaderPlaylistItems": "প্লেলিস্ট আইটেম",
|
||||||
|
"HeaderRSSFeed": "আরএসএস ফিডগুলো",
|
||||||
|
"HeaderRSSFeedGeneral": "আরএসএস বিবরণ",
|
||||||
|
"HeaderRSSFeedIsOpen": "আরএসএস ফিড খোলা আছে",
|
||||||
|
"HeaderSelectDownloadLocation": "ডাউনলোড অবস্থান নির্বাচন করুন",
|
||||||
|
"HeaderSettings": "সেটিংস",
|
||||||
|
"HeaderSleepTimer": "স্লিপ টাইমার",
|
||||||
|
"HeaderSleepTimerSettings": "স্লিপ টাইমার সেটিংস",
|
||||||
|
"HeaderStatsMinutesListeningChart": "মিনিট শ্রবণ (গত ৭ দিন)",
|
||||||
|
"HeaderStatsRecentSessions": "সাম্প্রতিক সেশন",
|
||||||
|
"HeaderTableOfContents": "বিষয়বস্তুর সারণী",
|
||||||
|
"HeaderUserInterfaceSettings": "ব্যবহারকারী ইন্টারফেস সেটিংস",
|
||||||
|
"HeaderYourStats": "আপনার পরিসংখ্যান",
|
||||||
|
"LabelAddToPlaylist": "প্লেলিস্টে যোগ করুন",
|
||||||
|
"LabelAdded": "যোগ করা হয়েছে",
|
||||||
|
"LabelAddedAt": "এতে যোগ করা হয়েছে",
|
||||||
|
"LabelAll": "সব",
|
||||||
|
"LabelAllowSeekingOnMediaControls": "মিডিয়া বিজ্ঞপ্তি নিয়ন্ত্রণে অবস্থান খোঁজার অনুমতি দিন",
|
||||||
|
"LabelAlways": "সর্বদা",
|
||||||
|
"LabelAskConfirmation": "নিশ্চিতকরণের জন্য জিজ্ঞাসা করুন",
|
||||||
|
"LabelAuthor": "লেখক",
|
||||||
|
"LabelAuthorFirstLast": "লেখক (প্রথম শেষ)",
|
||||||
|
"LabelAuthorLastFirst": "লেখক (শেষ, প্রথম)",
|
||||||
|
"LabelAuthors": "লেখকগণ",
|
||||||
|
"LabelAutoDownloadEpisodes": "স্বয়ংক্রিয় ডাউনলোড পর্ব",
|
||||||
|
"LabelAutoRewindTime": "স্বয়ংক্রিয় রিওয়াইন্ড সময়",
|
||||||
|
"LabelAutoSleepTimer": "স্বয়ংক্রিয় ঘুমের টাইমার",
|
||||||
|
"LabelAutoSleepTimerAutoRewind": "অটো স্লিপ টাইমার অটো রিওয়াইন্ড",
|
||||||
|
"LabelAutoSleepTimerAutoRewindHelp": "অটো স্লিপ টাইমার শেষে আইটেমটি আবার চালানো হলে স্বয়ংক্রিয়ভাবে আপনার অবস্থান রিওয়াইন্ড করবে।",
|
||||||
|
"LabelAutoSleepTimerHelp": "নির্দিষ্ট শুরু এবং শেষ সময়ের মধ্যে মিডিয়া চালানোর সময় একটি স্লিপ টাইমার স্বয়ংক্রিয়ভাবে শুরু হবে।",
|
||||||
|
"LabelBooks": "বইগুলো",
|
||||||
|
"LabelChapterTrack": "অধ্যায় ট্র্যাক",
|
||||||
|
"LabelChapters": "অধ্যায়",
|
||||||
|
"LabelClosePlayer": "প্লেয়ার বন্ধ করুন",
|
||||||
|
"LabelCollapseSeries": "সিরিজ সঙ্কুচিত করুন",
|
||||||
|
"LabelComplete": "সম্পূর্ণ",
|
||||||
|
"LabelContinueBooks": "বই চালিয়ে যান",
|
||||||
|
"LabelContinueEpisodes": "পর্ব চালিয়ে যান",
|
||||||
|
"LabelContinueListening": "শোনা চালিয়ে যান",
|
||||||
|
"LabelContinueReading": "পড়া চালিয়ে যান",
|
||||||
|
"LabelContinueSeries": "সিরিজ চালিয়ে যান",
|
||||||
|
"LabelCustomTime": "কাস্টম সময়",
|
||||||
|
"LabelDescription": "বিবরণ",
|
||||||
|
"LabelDisableAudioFadeOut": "অডিও বিবর্ণ হওয়া অক্ষম করুন",
|
||||||
|
"LabelDisableAudioFadeOutHelp": "স্লিপ টাইমারে ১ মিনিটেরও কম সময় বাকি থাকলে অডিওর ভলিউম কমতে শুরু করবে। বিবর্ণ না হওয়ার জন্য এই সেটিংটি সক্ষম করুন।",
|
||||||
|
"LabelDisableAutoRewind": "অটো রিওয়াইন্ড অক্ষম করুন",
|
||||||
|
"LabelDisableShakeToReset": "ঝাঁকালে রিসেট হওয়া অক্ষম করুন",
|
||||||
|
"LabelDisableShakeToResetHelp": "টাইমার চলার সময় বা টাইমারের মেয়াদ শেষ হওয়ার ২ মিনিটের মধ্যে আপনার ডিভাইস ঝাঁকালে ঘুমের টাইমার রিসেট করবে। ঝাঁকালে রিসেট করা অক্ষম করতে এই সেটিংটি সক্ষম করুন।",
|
||||||
|
"LabelDisableVibrateOnReset": "রিসেট করার সময় কম্পন অক্ষম করুন",
|
||||||
|
"LabelDisableVibrateOnResetHelp": "স্লিপ টাইমার রিসেট হয়ে গেলে আপনার ডিভাইস কম্পিত হবে। স্লিপ টাইমার রিসেট করার সময় কম্পন না করতে এই সেটিংটি সক্ষম করুন।",
|
||||||
|
"LabelDiscover": "আবিষ্কার",
|
||||||
|
"LabelDownload": "ডাউনলোড করুন",
|
||||||
|
"LabelDownloadUsingCellular": "সেলুলার ব্যবহার করে ডাউনলোড করুন",
|
||||||
|
"LabelDownloaded": "ডাউনলোড করা হয়েছে",
|
||||||
|
"LabelDuration": "সময়কাল",
|
||||||
|
"LabelEbook": "ই-বই",
|
||||||
|
"LabelEbooks": "ই-বইগুলো",
|
||||||
|
"LabelEnable": "সক্ষম করুন",
|
||||||
|
"LabelEnableMp3IndexSeeking": "এমপি৩ সূচী খোঁজা সক্ষম করুন",
|
||||||
|
"LabelEnableMp3IndexSeekingHelp": "এই সেটিংটি শুধুমাত্র তখনই সক্রিয় করা উচিত যদি আপনার কাছে MP3 ফাইল থাকে যা সঠিকভাবে খুঁজছে না। ভেরিয়েবল বিটরেট (VBR) MP3 ফাইলের কারণে ভুল চাওয়া হয়। এই সেটিংটি সূচী খুঁজতে বাধ্য করবে, যেখানে ফাইলটি পড়ার সাথে-সাথে একটি টাইম-টু-বাইট ম্যাপিং তৈরি করা হয়। বড় MP3 ফাইলের সাথে কিছু ক্ষেত্রে ফাইলের শেষের দিকে খোঁজার সময় বিলম্ব হবে।",
|
||||||
|
"LabelEnd": "সমাপ্ত",
|
||||||
|
"LabelEndOfChapter": "অধ্যায়ের সমাপ্তি",
|
||||||
|
"LabelEndTime": "শেষ সময়",
|
||||||
|
"LabelEpisode": "পর্ব",
|
||||||
|
"LabelFeedURL": "ফিড ইউআরএল",
|
||||||
|
"LabelFile": "ফাইল",
|
||||||
|
"LabelFileBirthtime": "ফাইল জন্মের সময়",
|
||||||
|
"LabelFileModified": "ফাইল পরিবর্তিত",
|
||||||
|
"LabelFilename": "ফাইলের নাম",
|
||||||
|
"LabelFinished": "সমাপ্ত",
|
||||||
|
"LabelFolder": "ফোল্ডার",
|
||||||
|
"LabelFontBoldness": "হরফ বোল্ডনেস",
|
||||||
|
"LabelFontScale": "ফন্ট স্কেল",
|
||||||
|
"LabelGenre": "ঘরানা",
|
||||||
|
"LabelGenres": "ঘরানাগুলো",
|
||||||
|
"LabelHapticFeedback": "হ্যাপটিক প্রতিক্রিয়া",
|
||||||
|
"LabelHasEbook": "ই-বই আছে",
|
||||||
|
"LabelHasSupplementaryEbook": "পরিপূরক ই-বই আছে",
|
||||||
|
"LabelHeavy": "ভারী",
|
||||||
|
"LabelHigh": "উচু",
|
||||||
|
"LabelHost": "নিমন্ত্রণকর্তা",
|
||||||
|
"LabelInProgress": "প্রগতিতে আছে",
|
||||||
|
"LabelIncomplete": "অসম্পূর্ণ",
|
||||||
|
"LabelInternalAppStorage": "অভ্যন্তরীণ অ্যাপ স্টোরেজ",
|
||||||
|
"LabelJumpBackwardsTime": "পিছনের সময়ে ঝাঁপ",
|
||||||
|
"LabelJumpForwardsTime": "সামনের সময়ে ঝাঁপ",
|
||||||
|
"LabelLanguage": "ভাষা",
|
||||||
|
"LabelLayout": "লেআউট",
|
||||||
|
"LabelLayoutAuto": "স্বয়ংক্রিয়",
|
||||||
|
"LabelLayoutSinglePage": "একক পৃষ্ঠা",
|
||||||
|
"LabelLight": "আলো",
|
||||||
|
"LabelLineSpacing": "লাইন স্পেসিং",
|
||||||
|
"LabelListenAgain": "আবার শুনুন",
|
||||||
|
"LabelLocalBooks": "স্থানীয় বই",
|
||||||
|
"LabelLocalPodcasts": "স্থানীয় পডকাস্ট",
|
||||||
|
"LabelLockOrientation": "ওরিয়েন্টেশন লক করুন",
|
||||||
|
"LabelLockPlayer": "প্লেয়ার লক করুন",
|
||||||
|
"LabelLow": "নিচু",
|
||||||
|
"LabelMediaType": "মিডিয়ার ধরন",
|
||||||
|
"LabelMedium": "মাঝারি",
|
||||||
|
"LabelMore": "আরো",
|
||||||
|
"LabelMoreInfo": "আরো তথ্য",
|
||||||
|
"LabelName": "নাম",
|
||||||
|
"LabelNarrator": "কথক",
|
||||||
|
"LabelNarrators": "কথক",
|
||||||
|
"LabelNavigateWithVolume": "ভলিউম বাটন দিয়ে নেভিগেট করুন",
|
||||||
|
"LabelNavigateWithVolumeDisabled": "বন্ধ",
|
||||||
|
"LabelNavigateWithVolumeEnabled": "চালু",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "মিরর করা হয়েছে",
|
||||||
|
"LabelNever": "কখনও না",
|
||||||
|
"LabelNewestAuthors": "নতুন লেখক",
|
||||||
|
"LabelNewestEpisodes": "নতুনতম পর্ব",
|
||||||
|
"LabelNo": "না",
|
||||||
|
"LabelNotFinished": "সমাপ্ত হয়নি",
|
||||||
|
"LabelNotStarted": "শুরু হয়নি",
|
||||||
|
"LabelOff": "বন্ধ",
|
||||||
|
"LabelPassword": "পাসওয়ার্ড",
|
||||||
|
"LabelPath": "পথ",
|
||||||
|
"LabelPlaybackDirect": "সরাসরি",
|
||||||
|
"LabelPlaybackLocal": "স্থানীয়",
|
||||||
|
"LabelPlaybackSpeed": "প্লেব্যাকের গতি",
|
||||||
|
"LabelPlaybackTranscode": "ট্রান্সকোড",
|
||||||
|
"LabelPodcast": "পডকাস্ট",
|
||||||
|
"LabelPodcasts": "পডকাস্টগুলো",
|
||||||
|
"LabelPreventIndexing": "আইটিউনস এবং গুগল পডকাস্ট ডিরেক্টরি দ্বারা আপনার ফিডকে ইন্ডেক্স করা থেকে বিরত রাখুন",
|
||||||
|
"LabelProgress": "প্রগতি",
|
||||||
|
"LabelPubDate": "প্রকাশের তারিখ",
|
||||||
|
"LabelPublishYear": "প্রকাশের বছর",
|
||||||
|
"LabelRSSFeedCustomOwnerEmail": "কাস্টম মালিকের ইমেইল",
|
||||||
|
"LabelRSSFeedCustomOwnerName": "কাস্টম মালিকের নাম",
|
||||||
|
"LabelRSSFeedPreventIndexing": "সূচীকরণ প্রতিরোধ করুন",
|
||||||
|
"LabelRSSFeedSlug": "আরএসএস ফিড স্লাগ",
|
||||||
|
"LabelRandomly": "এলোমেলোভাবে",
|
||||||
|
"LabelRead": "পড়ুন",
|
||||||
|
"LabelReadAgain": "আবার পড়ুন",
|
||||||
|
"LabelRecentSeries": "সাম্প্রতিক সিরিজ",
|
||||||
|
"LabelRecentlyAdded": "সম্প্রতি যোগ করা হয়েছে",
|
||||||
|
"LabelRemoveFromPlaylist": "প্লেলিস্ট থেকে সরান",
|
||||||
|
"LabelScaleElapsedTimeBySpeed": "অতিবাহিত সময় গতি দ্বারা স্কেল করুন",
|
||||||
|
"LabelSeason": "সেশন",
|
||||||
|
"LabelSelectADevice": "একটি ডিভাইস নির্বাচন করুন",
|
||||||
|
"LabelSeries": "সিরিজ",
|
||||||
|
"LabelServerAddress": "সার্ভার ঠিকানা",
|
||||||
|
"LabelSetEbookAsPrimary": "প্রাথমিক হিসাবে সেট করুন",
|
||||||
|
"LabelSetEbookAsSupplementary": "পরিপূরক হিসেবে সেট করুন",
|
||||||
|
"LabelShakeSensitivity": "ঝাঁকুনির সংবেদনশীলতা",
|
||||||
|
"LabelShowAll": "সব দেখান",
|
||||||
|
"LabelSize": "আকার",
|
||||||
|
"LabelSleepTimer": "স্লিপ টাইমার",
|
||||||
|
"LabelStart": "শুরু",
|
||||||
|
"LabelStartTime": "শুরুর সময়",
|
||||||
|
"LabelStatsBestDay": "সেরা দিন",
|
||||||
|
"LabelStatsDailyAverage": "দৈনিক গড়",
|
||||||
|
"LabelStatsDays": "দিন",
|
||||||
|
"LabelStatsDaysListened": "যেদিন শোনা হয়েছে",
|
||||||
|
"LabelStatsInARow": "এক সারিতে",
|
||||||
|
"LabelStatsItemsFinished": "আইটেম সমাপ্ত",
|
||||||
|
"LabelStatsMinutes": "মিনিট",
|
||||||
|
"LabelStatsMinutesListening": "মিনিট শুনছেন",
|
||||||
|
"LabelStatsWeekListening": "সপ্তাহ শোনা",
|
||||||
|
"LabelStreamingUsingCellular": "সেলুলার ব্যবহার করে স্ট্রিমিং",
|
||||||
|
"LabelTag": "ট্যাগ",
|
||||||
|
"LabelTags": "ট্যাগগুলো",
|
||||||
|
"LabelTheme": "থিম",
|
||||||
|
"LabelThemeDark": "অন্ধকার",
|
||||||
|
"LabelThemeLight": "আলো",
|
||||||
|
"LabelTimeRemaining": "{0}টি অবশিষ্ট",
|
||||||
|
"LabelTitle": "শিরোনাম",
|
||||||
|
"LabelTotalSize": "মোট আকার",
|
||||||
|
"LabelTotalTrack": "মোট ট্র্যাক",
|
||||||
|
"LabelTracks": "ট্র্যাকস",
|
||||||
|
"LabelType": "টাইপ",
|
||||||
|
"LabelUnlockPlayer": "প্লেয়ার আনলক করুন",
|
||||||
|
"LabelUseBookshelfView": "বুকশেলফ ভিউ ব্যবহার করুন",
|
||||||
|
"LabelUser": "ব্যবহারকারী",
|
||||||
|
"LabelUsername": "ব্যবহারকারীর নাম",
|
||||||
|
"LabelVeryHigh": "অত্যন্ত উচ্চ",
|
||||||
|
"LabelVeryLow": "খুবই কম",
|
||||||
|
"LabelYourBookmarks": "আপনার বুকমার্কস",
|
||||||
|
"LabelYourProgress": "আপনার অগ্রগতি",
|
||||||
|
"MessageAndroid10Downloads": "অ্যান্ড্রয়েড ১০ এবং এর নীচের সংস্করণগুলি ডাউনলোডের জন্য অভ্যন্তরীণ অ্যাপ স্টোরেজ ব্যবহার করবে।",
|
||||||
|
"MessageAttemptingServerConnection": "সার্ভার সংযোগের চেষ্টা করা হচ্ছে..।",
|
||||||
|
"MessageAudiobookshelfServerNotConnected": "অডিওবুকশেল্ফ সার্ভার সংযুক্ত করা যায়নি",
|
||||||
|
"MessageAudiobookshelfServerRequired": "<strong>গুরুত্বপূর্ণ!</strong> এই অ্যাপটি এমন একটি অডিওবুকশেল্ফ সার্ভারের সাথে কাজ করার জন্য ডিজাইন করা হয়েছে যা আপনি বা আপনার পরিচিত কেউ হোস্ট করছেন৷ এই অ্যাপ্লিকেশনটি নিজে থেকে কোন বিষয়বস্তু প্রদান করে না।",
|
||||||
|
"MessageBookshelfEmpty": "বুকশেলফ খালি",
|
||||||
|
"MessageConfirmDeleteLocalEpisode": "আপনার ডিভাইস থেকে স্থানীয় পর্ব \"{0}\" সরাবেন? সার্ভারে ফাইলটি প্রভাবিত হবে না।",
|
||||||
|
"MessageConfirmDeleteLocalFiles": "আপনার ডিভাইস থেকে এই আইটেমটির স্থানীয় ফাইলগুলি সরাবেন? সার্ভারে থাকা ফাইল এবং আপনার অগ্রগতি প্রভাবিত হবে না।",
|
||||||
|
"MessageConfirmDiscardProgress": "আপনি কি নিশ্চিত আপনার অগ্রগতি পুনরায় সেট করতে চান?",
|
||||||
|
"MessageConfirmDownloadUsingCellular": "আপনি সেলুলার ডেটা ব্যবহার করে ডাউনলোড করতে চলেছেন৷ এর মধ্যে ক্যারিয়ার ডেটা চার্জ অন্তর্ভুক্ত থাকতে পারে। আপনি কি চালিয়ে যেতে চান?",
|
||||||
|
"MessageConfirmMarkAsFinished": "আপনি কি এই আইটেমটিকে সমাপ্ত হিসাবে চিহ্নিত করার বিষয়ে নিশ্চিত?",
|
||||||
|
"MessageConfirmRemoveBookmark": "আপনি কি বুকমার্ক সরানোর বিষয়ে নিশ্চিত?",
|
||||||
|
"MessageConfirmStreamingUsingCellular": "আপনি সেলুলার ডেটা ব্যবহার করে স্ট্রিম করতে চলেছেন৷ এর মধ্যে ক্যারিয়ার ডেটা চার্জ অন্তর্ভুক্ত থাকতে পারে। আপনি কি চালিয়ে যেতে চান?",
|
||||||
|
"MessageDiscardProgress": "অগ্রগতি বাতিল করুন",
|
||||||
|
"MessageDownloadCompleteProcessing": "ডাউনলোড সম্পূর্ণ। প্রক্রিয়া করা হচ্ছে..।",
|
||||||
|
"MessageDownloading": "ডাউনলোড হচ্ছে..।",
|
||||||
|
"MessageDownloadingEpisode": "ডাউনলোডিং পর্ব",
|
||||||
|
"MessageEpisodesQueuedForDownload": "{0} পর্ব(গুলি) ডাউনলোডের জন্য সারিবদ্ধ",
|
||||||
|
"MessageFeedURLWillBe": "ফিড URL হবে {0}",
|
||||||
|
"MessageFetching": "আনয় হচ্ছে.।",
|
||||||
|
"MessageFollowTheProjectOnGithub": "গিটহাবে প্রকল্পটিকে অনুসরণ করুন",
|
||||||
|
"MessageItemDownloadCompleteFailedToCreate": "আইটেম ডাউনলোড সম্পূর্ণ হয়েছে কিন্তু লাইব্রেরি আইটেম তৈরি করতে ব্যর্থ হয়েছে",
|
||||||
|
"MessageLoading": "লোড হচ্ছে.।",
|
||||||
|
"MessageLoadingServerData": "সার্ভার ডেটা লোড হচ্ছে..।",
|
||||||
|
"MessageMarkAsFinished": "সমাপ্ত হিসাবে চিহ্নিত করুন",
|
||||||
|
"MessageMediaLinkedToADifferentServer": "মিডিয়া একটি ভিন্ন ঠিকানায় একটি অডিওবুকশেল্ফ সার্ভারের সাথে লিঙ্ক করা হয়েছে ({0})৷ এই সার্ভার ঠিকানার সাথে সংযুক্ত হলে অগ্রগতি সিঙ্ক করা হবে।",
|
||||||
|
"MessageMediaLinkedToADifferentUser": "মিডিয়া এই সার্ভারের সাথে লিঙ্ক করা হয়েছে কিন্তু অন্য ব্যবহারকারী দ্বারা ডাউনলোড করা হয়েছে৷ অগ্রগতি শুধুমাত্র সেই ব্যবহারকারীর সাথে সিঙ্ক করা হবে যে এটি ডাউনলোড করেছে।",
|
||||||
|
"MessageMediaLinkedToServer": "সার্ভারের সাথে লিঙ্ক করা হয়েছে {0}",
|
||||||
|
"MessageMediaLinkedToThisServer": "ডাউনলোড করা মিডিয়া এই সার্ভারের সাথে লিঙ্ক করা হয়েছে",
|
||||||
|
"MessageMediaNotLinkedToServer": "মিডিয়া কোন অডিওবুকশেল্ফ সার্ভারের সাথে লিঙ্ক করা নেই৷ কোন অগ্রগতি সিঙ্ক করা হবে না।",
|
||||||
|
"MessageNoBookmarks": "কোন বুকমার্ক নেই",
|
||||||
|
"MessageNoChapters": "কোনও অধ্যায় নেই",
|
||||||
|
"MessageNoItems": "কোন আইটেম নেই",
|
||||||
|
"MessageNoItemsFound": "কোন আইটেম পাওয়া যায়নি",
|
||||||
|
"MessageNoListeningSessions": "কোনও শোনার সেশন নেই",
|
||||||
|
"MessageNoMediaFolders": "কোনো মিডিয়া ফোল্ডার নেই",
|
||||||
|
"MessageNoNetworkConnection": "নেটওয়ার্ক সংযোগ নেই",
|
||||||
|
"MessageNoPodcastsFound": "কোন পডকাস্ট পাওয়া যায়নি",
|
||||||
|
"MessageNoSeries": "কোনো সিরিজ নেই",
|
||||||
|
"MessageNoUpdatesWereNecessary": "কোন আপডেটের প্রয়োজন ছিল না",
|
||||||
|
"MessageNoUserPlaylists": "আপনার কোনো প্লেলিস্ট নেই",
|
||||||
|
"MessageReportBugsAndContribute": "বাগ রিপোর্ট করুন, বৈশিষ্ট্যের অনুরোধ করুন এবং এতে অবদান রাখুন",
|
||||||
|
"MessageSocketConnectedOverMeteredCellular": "মিটারযুক্ত সেলুলারের দ্বারা সকেট সংযোগ করা হয়েছে",
|
||||||
|
"MessageSocketConnectedOverMeteredWifi": "মিটারযুক্ত ওয়াইফাইয়ের মাধ্যমে সকেট সংযুক্ত",
|
||||||
|
"MessageSocketConnectedOverUnmeteredCellular": "মিটারবিহীন সেলুলারের দ্বারা সকেট সংযোগ করা হয়েছে",
|
||||||
|
"MessageSocketConnectedOverUnmeteredWifi": "মিটারবিহীন ওয়াইফাইয়ের মাধ্যমে সকেট সংযুক্ত",
|
||||||
|
"MessageSocketNotConnected": "সকেট সংযুক্ত নয়",
|
||||||
|
"NoteRSSFeedPodcastAppsHttps": "সতর্কতা: বেশিরভাগ পডকাস্ট অ্যাপের জন্য প্রয়োজন হবে RSS ফিড URL যেটি HTTPS ব্যবহার করছে",
|
||||||
|
"NoteRSSFeedPodcastAppsPubDate": "সতর্কতা: আপনার 1 বা তার বেশি পর্বের একটি পাব তারিখ নেই। কিছু পডকাস্ট অ্যাপের এটি প্রয়োজন।",
|
||||||
|
"ToastBookmarkCreateFailed": "বুকমার্ক তৈরি করতে ব্যর্থ",
|
||||||
|
"ToastBookmarkRemoveFailed": "বুকমার্ক সরাতে ব্যর্থ",
|
||||||
|
"ToastBookmarkUpdateFailed": "বুকমার্ক আপডেট করতে ব্যর্থ",
|
||||||
|
"ToastDownloadNotAllowedOnCellular": "সেলুলার ডেটাতে ডাউনলোড করার অনুমতি নেই",
|
||||||
|
"ToastItemMarkedAsFinishedFailed": "সমাপ্ত হিসাবে চিহ্নিত করতে ব্যর্থ",
|
||||||
|
"ToastItemMarkedAsNotFinishedFailed": "সমাপ্ত হয়নি হিসাবে চিহ্নিত করতে ব্যর্থ",
|
||||||
|
"ToastPlaylistCreateFailed": "প্লেলিস্ট তৈরি করতে ব্যর্থ",
|
||||||
|
"ToastPodcastCreateFailed": "পডকাস্ট তৈরি করতে ব্যর্থ",
|
||||||
|
"ToastPodcastCreateSuccess": "পডকাস্ট সফলভাবে তৈরি করা হয়েছে",
|
||||||
|
"ToastRSSFeedCloseFailed": "RSS ফিড বন্ধ করতে ব্যর্থ",
|
||||||
|
"ToastRSSFeedCloseSuccess": "RSS ফিড বন্ধ",
|
||||||
|
"ToastStreamingNotAllowedOnCellular": "সেলুলার ডেটাতে স্ট্রিমিং অনুমোদিত নয়"
|
||||||
|
}
|
||||||
+40
-22
@@ -19,7 +19,7 @@
|
|||||||
"ButtonDeleteLocalItem": "Smazat místní položku",
|
"ButtonDeleteLocalItem": "Smazat místní položku",
|
||||||
"ButtonDisableAutoTimer": "Zakázat automatický časovač",
|
"ButtonDisableAutoTimer": "Zakázat automatický časovač",
|
||||||
"ButtonDisconnect": "Odpojit",
|
"ButtonDisconnect": "Odpojit",
|
||||||
"ButtonGoToWebClient": "Go to Web Client",
|
"ButtonGoToWebClient": "Otevřít webového klienta",
|
||||||
"ButtonHistory": "Historie",
|
"ButtonHistory": "Historie",
|
||||||
"ButtonHome": "Domů",
|
"ButtonHome": "Domů",
|
||||||
"ButtonIssues": "Problémy",
|
"ButtonIssues": "Problémy",
|
||||||
@@ -33,7 +33,8 @@
|
|||||||
"ButtonOverride": "Přepsat",
|
"ButtonOverride": "Přepsat",
|
||||||
"ButtonPause": "Pozastavit",
|
"ButtonPause": "Pozastavit",
|
||||||
"ButtonPlay": "Přehrát",
|
"ButtonPlay": "Přehrát",
|
||||||
"ButtonPlaying": "Přehrává se",
|
"ButtonPlayEpisode": "Přehrát epizodu",
|
||||||
|
"ButtonPlaying": "Hraje",
|
||||||
"ButtonPlaylists": "Seznamy skladeb",
|
"ButtonPlaylists": "Seznamy skladeb",
|
||||||
"ButtonRead": "Číst",
|
"ButtonRead": "Číst",
|
||||||
"ButtonRemove": "Odstranit",
|
"ButtonRemove": "Odstranit",
|
||||||
@@ -56,6 +57,7 @@
|
|||||||
"HeaderCollection": "Kolekce",
|
"HeaderCollection": "Kolekce",
|
||||||
"HeaderCollectionItems": "Položky kolekce",
|
"HeaderCollectionItems": "Položky kolekce",
|
||||||
"HeaderConnectionStatus": "Stav připojení",
|
"HeaderConnectionStatus": "Stav připojení",
|
||||||
|
"HeaderDataSettings": "Nastavení dat",
|
||||||
"HeaderDetails": "Podrobnosti",
|
"HeaderDetails": "Podrobnosti",
|
||||||
"HeaderDownloads": "Stahování",
|
"HeaderDownloads": "Stahování",
|
||||||
"HeaderEbookFiles": "Soubory e-knih",
|
"HeaderEbookFiles": "Soubory e-knih",
|
||||||
@@ -77,16 +79,18 @@
|
|||||||
"HeaderSettings": "Nastavení",
|
"HeaderSettings": "Nastavení",
|
||||||
"HeaderSleepTimer": "Časovač spánku",
|
"HeaderSleepTimer": "Časovač spánku",
|
||||||
"HeaderSleepTimerSettings": "Nastavení časovače spánku",
|
"HeaderSleepTimerSettings": "Nastavení časovače spánku",
|
||||||
"HeaderStatsMinutesListeningChart": "Minuty poslechu (posledních 7 dní)",
|
"HeaderStatsMinutesListeningChart": "Poslech za posledních 7 dní (min)",
|
||||||
"HeaderStatsRecentSessions": "Poslední sezení",
|
"HeaderStatsRecentSessions": "Poslední sezení",
|
||||||
"HeaderTableOfContents": "Obsah",
|
"HeaderTableOfContents": "Obsah",
|
||||||
"HeaderUserInterfaceSettings": "Nastavení uživatelského rozhraní",
|
"HeaderUserInterfaceSettings": "Nastavení uživatelského rozhraní",
|
||||||
"HeaderYourStats": "Vaše statistiky",
|
"HeaderYourStats": "Vaše statistiky",
|
||||||
|
"LabelAddToPlaylist": "Přidat do seznamu skladeb",
|
||||||
"LabelAdded": "Přidáno",
|
"LabelAdded": "Přidáno",
|
||||||
"LabelAddedAt": "Přidáno v",
|
"LabelAddedAt": "Přidáno v",
|
||||||
"LabelAddToPlaylist": "Přidat do seznamu skladeb",
|
|
||||||
"LabelAll": "Vše",
|
"LabelAll": "Vše",
|
||||||
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
|
"LabelAllowSeekingOnMediaControls": "Povolit vyhledávání polohy v ovládacích prvcích oznámení médií",
|
||||||
|
"LabelAlways": "Vždy",
|
||||||
|
"LabelAskConfirmation": "Požádat o potvrzení",
|
||||||
"LabelAuthor": "Autor",
|
"LabelAuthor": "Autor",
|
||||||
"LabelAuthorFirstLast": "Autor (jméno a příjmení)",
|
"LabelAuthorFirstLast": "Autor (jméno a příjmení)",
|
||||||
"LabelAuthorLastFirst": "Autor (příjmení a jméno)",
|
"LabelAuthorLastFirst": "Autor (příjmení a jméno)",
|
||||||
@@ -98,8 +102,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.",
|
"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.",
|
"LabelAutoSleepTimerHelp": "Během přehrávání média v časovém rozmezí \"Od\" a \"Do\" se automaticky spustí časovač spánku.",
|
||||||
"LabelBooks": "Knihy",
|
"LabelBooks": "Knihy",
|
||||||
"LabelChapters": "Kapitoly",
|
|
||||||
"LabelChapterTrack": "Stopa kapitoly",
|
"LabelChapterTrack": "Stopa kapitoly",
|
||||||
|
"LabelChapters": "Kapitoly",
|
||||||
"LabelClosePlayer": "Zavřít přehrávač",
|
"LabelClosePlayer": "Zavřít přehrávač",
|
||||||
"LabelCollapseSeries": "Sbalit sérii",
|
"LabelCollapseSeries": "Sbalit sérii",
|
||||||
"LabelComplete": "Dokončeno",
|
"LabelComplete": "Dokončeno",
|
||||||
@@ -119,8 +123,9 @@
|
|||||||
"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.",
|
"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",
|
"LabelDiscover": "Objevit",
|
||||||
"LabelDownload": "Stáhnout",
|
"LabelDownload": "Stáhnout",
|
||||||
|
"LabelDownloadUsingCellular": "Stáhnout přes mobilní data",
|
||||||
"LabelDownloaded": "Staženo",
|
"LabelDownloaded": "Staženo",
|
||||||
"LabelDuration": "Trvání",
|
"LabelDuration": "Délka trvání",
|
||||||
"LabelEbook": "E-kniha",
|
"LabelEbook": "E-kniha",
|
||||||
"LabelEbooks": "E-knihy",
|
"LabelEbooks": "E-knihy",
|
||||||
"LabelEnable": "Povolit",
|
"LabelEnable": "Povolit",
|
||||||
@@ -137,6 +142,7 @@
|
|||||||
"LabelFilename": "Název souboru",
|
"LabelFilename": "Název souboru",
|
||||||
"LabelFinished": "Dokončeno",
|
"LabelFinished": "Dokončeno",
|
||||||
"LabelFolder": "Složka",
|
"LabelFolder": "Složka",
|
||||||
|
"LabelFontBoldness": "Výraznost písma",
|
||||||
"LabelFontScale": "Měřítko písma",
|
"LabelFontScale": "Měřítko písma",
|
||||||
"LabelGenre": "Žánr",
|
"LabelGenre": "Žánr",
|
||||||
"LabelGenres": "Žánry",
|
"LabelGenres": "Žánry",
|
||||||
@@ -146,8 +152,8 @@
|
|||||||
"LabelHeavy": "Těžké",
|
"LabelHeavy": "Těžké",
|
||||||
"LabelHigh": "Vysoké",
|
"LabelHigh": "Vysoké",
|
||||||
"LabelHost": "Hostitel",
|
"LabelHost": "Hostitel",
|
||||||
"LabelIncomplete": "Neúplné",
|
|
||||||
"LabelInProgress": "Probíhá",
|
"LabelInProgress": "Probíhá",
|
||||||
|
"LabelIncomplete": "Neúplné",
|
||||||
"LabelInternalAppStorage": "Interní úložiště aplikace",
|
"LabelInternalAppStorage": "Interní úložiště aplikace",
|
||||||
"LabelJumpBackwardsTime": "Délka skoku zpět v čase",
|
"LabelJumpBackwardsTime": "Délka skoku zpět v čase",
|
||||||
"LabelJumpForwardsTime": "Délka skoku vpřed v čase",
|
"LabelJumpForwardsTime": "Délka skoku vpřed v čase",
|
||||||
@@ -157,7 +163,7 @@
|
|||||||
"LabelLayoutSinglePage": "Jedna stránka",
|
"LabelLayoutSinglePage": "Jedna stránka",
|
||||||
"LabelLight": "Světlé",
|
"LabelLight": "Světlé",
|
||||||
"LabelLineSpacing": "Řádkování",
|
"LabelLineSpacing": "Řádkování",
|
||||||
"LabelListenAgain": "Poslechnout znovu",
|
"LabelListenAgain": "Poslouchat znovu",
|
||||||
"LabelLocalBooks": "Místní knihy",
|
"LabelLocalBooks": "Místní knihy",
|
||||||
"LabelLocalPodcasts": "Místní podcasty",
|
"LabelLocalPodcasts": "Místní podcasty",
|
||||||
"LabelLockOrientation": "Zamknout orientaci",
|
"LabelLockOrientation": "Zamknout orientaci",
|
||||||
@@ -170,6 +176,11 @@
|
|||||||
"LabelName": "Jméno",
|
"LabelName": "Jméno",
|
||||||
"LabelNarrator": "Vypravěč",
|
"LabelNarrator": "Vypravěč",
|
||||||
"LabelNarrators": "Vypravěči",
|
"LabelNarrators": "Vypravěči",
|
||||||
|
"LabelNavigateWithVolume": "Navigace pomocí tlačítek hlasitosti",
|
||||||
|
"LabelNavigateWithVolumeDisabled": "Vypnuto",
|
||||||
|
"LabelNavigateWithVolumeEnabled": "Zapnuto",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "Zrcadleno",
|
||||||
|
"LabelNever": "Nikdy",
|
||||||
"LabelNewestAuthors": "Nejnovější autoři",
|
"LabelNewestAuthors": "Nejnovější autoři",
|
||||||
"LabelNewestEpisodes": "Nejnovější epizody",
|
"LabelNewestEpisodes": "Nejnovější epizody",
|
||||||
"LabelNo": "Ne",
|
"LabelNo": "Ne",
|
||||||
@@ -188,15 +199,16 @@
|
|||||||
"LabelProgress": "Průběh",
|
"LabelProgress": "Průběh",
|
||||||
"LabelPubDate": "Datum vydání",
|
"LabelPubDate": "Datum vydání",
|
||||||
"LabelPublishYear": "Rok 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",
|
"LabelRSSFeedCustomOwnerEmail": "Vlastní e-mail vlastníka",
|
||||||
"LabelRSSFeedCustomOwnerName": "Vlastní jméno vlastníka",
|
"LabelRSSFeedCustomOwnerName": "Vlastní jméno vlastníka",
|
||||||
"LabelRSSFeedPreventIndexing": "Zabránit indexování",
|
"LabelRSSFeedPreventIndexing": "Zabránit indexování",
|
||||||
"LabelRSSFeedSlug": "Klíčové slovo kanálu RSS",
|
"LabelRSSFeedSlug": "Klíčové slovo kanálu RSS",
|
||||||
|
"LabelRandomly": "Náhodně",
|
||||||
|
"LabelRead": "Číst",
|
||||||
|
"LabelReadAgain": "Číst znovu",
|
||||||
|
"LabelRecentSeries": "Nedávné série",
|
||||||
|
"LabelRecentlyAdded": "Nedávno přidáno",
|
||||||
|
"LabelRemoveFromPlaylist": "Odebrat z Playlistu",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Škálovat uplynulý čas podle rychlosti",
|
"LabelScaleElapsedTimeBySpeed": "Škálovat uplynulý čas podle rychlosti",
|
||||||
"LabelSeason": "Sezóna",
|
"LabelSeason": "Sezóna",
|
||||||
"LabelSelectADevice": "Vyberte zařízení",
|
"LabelSelectADevice": "Vyberte zařízení",
|
||||||
@@ -208,7 +220,7 @@
|
|||||||
"LabelShowAll": "Zobrazit vše",
|
"LabelShowAll": "Zobrazit vše",
|
||||||
"LabelSize": "Velikost",
|
"LabelSize": "Velikost",
|
||||||
"LabelSleepTimer": "Spánek po",
|
"LabelSleepTimer": "Spánek po",
|
||||||
"LabelStart": "Začít",
|
"LabelStart": "Spustit",
|
||||||
"LabelStartTime": "Od",
|
"LabelStartTime": "Od",
|
||||||
"LabelStatsBestDay": "Nejlepší den",
|
"LabelStatsBestDay": "Nejlepší den",
|
||||||
"LabelStatsDailyAverage": "Denní průměr",
|
"LabelStatsDailyAverage": "Denní průměr",
|
||||||
@@ -219,6 +231,7 @@
|
|||||||
"LabelStatsMinutes": "minut",
|
"LabelStatsMinutes": "minut",
|
||||||
"LabelStatsMinutesListening": "Minuty poslechu",
|
"LabelStatsMinutesListening": "Minuty poslechu",
|
||||||
"LabelStatsWeekListening": "Za týden",
|
"LabelStatsWeekListening": "Za týden",
|
||||||
|
"LabelStreamingUsingCellular": "Přehrávání přes mobilní data",
|
||||||
"LabelTag": "Štítek",
|
"LabelTag": "Štítek",
|
||||||
"LabelTags": "Štítky",
|
"LabelTags": "Štítky",
|
||||||
"LabelTheme": "Téma",
|
"LabelTheme": "Téma",
|
||||||
@@ -226,6 +239,7 @@
|
|||||||
"LabelThemeLight": "Světlé",
|
"LabelThemeLight": "Světlé",
|
||||||
"LabelTimeRemaining": "{0} zbývá",
|
"LabelTimeRemaining": "{0} zbývá",
|
||||||
"LabelTitle": "Název",
|
"LabelTitle": "Název",
|
||||||
|
"LabelTotalSize": "Celková velikost",
|
||||||
"LabelTotalTrack": "Celková stopa",
|
"LabelTotalTrack": "Celková stopa",
|
||||||
"LabelTracks": "Stopy",
|
"LabelTracks": "Stopy",
|
||||||
"LabelType": "Typ",
|
"LabelType": "Typ",
|
||||||
@@ -245,15 +259,17 @@
|
|||||||
"MessageConfirmDeleteLocalEpisode": "Odebrat místní epizodu „{0}“ ze zařízení? Soubor na serveru zůstane nezměněný.",
|
"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.",
|
"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?",
|
"MessageConfirmDiscardProgress": "Opravdu chcete zahodit svůj pokrok?",
|
||||||
|
"MessageConfirmDownloadUsingCellular": "Chystáte se stahovat přes mobilní data. Toto může zahrnovat poplatky za mobilní data. Chcete pokračovat?",
|
||||||
"MessageConfirmMarkAsFinished": "Opravdu chcete tuto položku označit jako dokončenou?",
|
"MessageConfirmMarkAsFinished": "Opravdu chcete tuto položku označit jako dokončenou?",
|
||||||
"MessageConfirmRemoveBookmark": "Opravdu chcete odebrat záložku?",
|
"MessageConfirmRemoveBookmark": "Opravdu chcete odebrat záložku?",
|
||||||
|
"MessageConfirmStreamingUsingCellular": "Chystáte se přehrávat přes mobilní data. Toto může zahrnovat poplatky za mobilní data. Chcete pokračovat?",
|
||||||
"MessageDiscardProgress": "Zahodit pokrok",
|
"MessageDiscardProgress": "Zahodit pokrok",
|
||||||
"MessageDownloadCompleteProcessing": "Stahování dokončeno. Zpracovává se...",
|
"MessageDownloadCompleteProcessing": "Stahování dokončeno. Zpracovává se...",
|
||||||
"MessageDownloading": "Stahuje se...",
|
"MessageDownloading": "Stahuje se...",
|
||||||
"MessageDownloadingEpisode": "Stahuji epizodu",
|
"MessageDownloadingEpisode": "Stahuji epizodu",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} epizod ve frontě ke stažení",
|
"MessageEpisodesQueuedForDownload": "{0} Epizody zařazené do fronty ke stažení",
|
||||||
"MessageFeedURLWillBe": "URL zdroje bude {0}",
|
"MessageFeedURLWillBe": "URL zdroje bude {0}",
|
||||||
"MessageFetching": "Získává se...",
|
"MessageFetching": "Načítání...",
|
||||||
"MessageFollowTheProjectOnGithub": "Sledujte projekt na GitHubu",
|
"MessageFollowTheProjectOnGithub": "Sledujte projekt na GitHubu",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Stahování položky bylo dokončeno, ale nepodařilo se vytvořit položku v knihovně",
|
"MessageItemDownloadCompleteFailedToCreate": "Stahování položky bylo dokončeno, ale nepodařilo se vytvořit položku v knihovně",
|
||||||
"MessageLoading": "Načítá se...",
|
"MessageLoading": "Načítá se...",
|
||||||
@@ -272,25 +288,27 @@
|
|||||||
"MessageNoMediaFolders": "Žádné složky médií",
|
"MessageNoMediaFolders": "Žádné složky médií",
|
||||||
"MessageNoNetworkConnection": "Žádné připojení k síti",
|
"MessageNoNetworkConnection": "Žádné připojení k síti",
|
||||||
"MessageNoPodcastsFound": "Nebyly nalezeny žádné podcasty",
|
"MessageNoPodcastsFound": "Nebyly nalezeny žádné podcasty",
|
||||||
"MessageNoSeries": "No series",
|
"MessageNoSeries": "Žádné série",
|
||||||
"MessageNoUpdatesWereNecessary": "Nebyly nutné žádné aktualizace",
|
"MessageNoUpdatesWereNecessary": "Nebyly nutné žádné aktualizace",
|
||||||
"MessageNoUserPlaylists": "Nemáte žádné seznamy skladeb",
|
"MessageNoUserPlaylists": "Nemáte žádné seznamy skladeb",
|
||||||
"MessageReportBugsAndContribute": "Nahlašte chyby, vyžádejte si funkce a přispěte na",
|
"MessageReportBugsAndContribute": "Nahlašte chyby, vyžádejte si funkce a přispěte na",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket připojen přes měřenou mobilní síť",
|
"MessageSocketConnectedOverMeteredCellular": "Socket připojen přes měřenou mobilní síť",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket připojen přes měřenou wifi",
|
"MessageSocketConnectedOverMeteredWifi": "Socket připojen přes měřenou Wi-Fi",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Socket připojen přes neměřenou mobilní síť",
|
"MessageSocketConnectedOverUnmeteredCellular": "Socket připojen přes neměřenou mobilní síť",
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Socket připojen přes neměřenou wifi",
|
"MessageSocketConnectedOverUnmeteredWifi": "Socket připojen přes neměřenou Wi-Fi",
|
||||||
"MessageSocketNotConnected": "Socket není připojen",
|
"MessageSocketNotConnected": "Socket není připojen",
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Upozornění: Většina aplikací pro podcasty bude vyžadovat, aby adresa URL kanálu RSS používala protokol HTTPS",
|
"NoteRSSFeedPodcastAppsHttps": "Upozornění: Většina aplikací pro podcasty bude vyžadovat, aby adresa URL kanálu RSS používala protokol HTTPS",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Upozornění: 1 nebo více epizod nemá datum vydání. Některé podcastové aplikace to vyžadují.",
|
"NoteRSSFeedPodcastAppsPubDate": "Upozornění: 1 nebo více epizod nemá datum vydání. Některé podcastové aplikace to vyžadují.",
|
||||||
"ToastBookmarkCreateFailed": "Vytvoření záložky se nezdařilo",
|
"ToastBookmarkCreateFailed": "Vytvoření záložky se nezdařilo",
|
||||||
"ToastBookmarkRemoveFailed": "Nepodařilo se odstranit záložku",
|
"ToastBookmarkRemoveFailed": "Nepodařilo se odstranit záložku",
|
||||||
"ToastBookmarkUpdateFailed": "Aktualizace záložky se nezdařila",
|
"ToastBookmarkUpdateFailed": "Aktualizace záložky se nezdařila",
|
||||||
|
"ToastDownloadNotAllowedOnCellular": "Stahování přes mobilní data není povoleno",
|
||||||
"ToastItemMarkedAsFinishedFailed": "Nepodařilo se označit jako dokončené",
|
"ToastItemMarkedAsFinishedFailed": "Nepodařilo se označit jako dokončené",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "Nepodařilo se označit jako nedokončené",
|
"ToastItemMarkedAsNotFinishedFailed": "Nepodařilo se označit jako nedokončené",
|
||||||
"ToastPlaylistCreateFailed": "Vytvoření seznamu přehrávání se nezdařilo",
|
"ToastPlaylistCreateFailed": "Vytvoření seznamu přehrávání se nezdařilo",
|
||||||
"ToastPodcastCreateFailed": "Vytvoření podcastu se nezdařilo",
|
"ToastPodcastCreateFailed": "Vytvoření podcastu se nezdařilo",
|
||||||
"ToastPodcastCreateSuccess": "Podcast byl úspěšně vytvořen",
|
"ToastPodcastCreateSuccess": "Podcast byl úspěšně vytvořen",
|
||||||
"ToastRSSFeedCloseFailed": "Nepodařilo se zavřít RSS kanál",
|
"ToastRSSFeedCloseFailed": "Nepodařilo se zavřít RSS kanál",
|
||||||
"ToastRSSFeedCloseSuccess": "RSS kanál uzavřen"
|
"ToastRSSFeedCloseSuccess": "RSS kanál uzavřen",
|
||||||
}
|
"ToastStreamingNotAllowedOnCellular": "Přehrávání přes mobilní data není povoleno"
|
||||||
|
}
|
||||||
|
|||||||
+91
-137
@@ -1,53 +1,54 @@
|
|||||||
{
|
{
|
||||||
"ButtonAdd": "Tilføj",
|
"ButtonAdd": "Tilføj",
|
||||||
"ButtonAddNewServer": "Add New Server",
|
"ButtonAddNewServer": "Tilføj ny server",
|
||||||
"ButtonAuthors": "Forfattere",
|
"ButtonAuthors": "Forfattere",
|
||||||
"ButtonBack": "Back",
|
"ButtonBack": "Tilbage",
|
||||||
"ButtonCancel": "Annuller",
|
"ButtonCancel": "Annuller",
|
||||||
"ButtonCancelTimer": "Cancel Timer",
|
"ButtonCancelTimer": "Stop timer",
|
||||||
"ButtonClearFilter": "Ryd filter",
|
"ButtonClearFilter": "Ryd filter",
|
||||||
"ButtonCloseFeed": "Luk feed",
|
"ButtonCloseFeed": "Luk feed",
|
||||||
"ButtonCollections": "Samlinger",
|
"ButtonCollections": "Samlinger",
|
||||||
"ButtonConnect": "Connect",
|
"ButtonConnect": "Forbind",
|
||||||
"ButtonConnectToServer": "Connect to Server",
|
"ButtonConnectToServer": "Forbind til Server",
|
||||||
"ButtonCreate": "Opret",
|
"ButtonCreate": "Opret",
|
||||||
"ButtonCreateBookmark": "Create Bookmark",
|
"ButtonCreateBookmark": "Opret Bogmærker",
|
||||||
"ButtonCreateNewPlaylist": "Create New Playlist",
|
"ButtonCreateNewPlaylist": "Opret Ny Playlist",
|
||||||
"ButtonDelete": "Slet",
|
"ButtonDelete": "Slet",
|
||||||
"ButtonDeleteLocalEpisode": "Delete local episode",
|
"ButtonDeleteLocalEpisode": "Slet lokalt afsnit",
|
||||||
"ButtonDeleteLocalFile": "Delete local file",
|
"ButtonDeleteLocalFile": "Slet lokal fil",
|
||||||
"ButtonDeleteLocalItem": "Delete local item",
|
"ButtonDeleteLocalItem": "Slet lokalt element",
|
||||||
"ButtonDisableAutoTimer": "Disable Auto Timer",
|
"ButtonDisableAutoTimer": "Afbryd Auto Timer",
|
||||||
"ButtonDisconnect": "Disconnect",
|
"ButtonDisconnect": "Luk forbindelse",
|
||||||
"ButtonGoToWebClient": "Go to Web Client",
|
"ButtonGoToWebClient": "Gå til webklient",
|
||||||
"ButtonHistory": "History",
|
"ButtonHistory": "Historik",
|
||||||
"ButtonHome": "Hjem",
|
"ButtonHome": "Hjem",
|
||||||
"ButtonIssues": "Problemer",
|
"ButtonIssues": "Problemer",
|
||||||
"ButtonLatest": "Seneste",
|
"ButtonLatest": "Seneste",
|
||||||
"ButtonLibrary": "Bibliotek",
|
"ButtonLibrary": "Bibliotek",
|
||||||
"ButtonLocalMedia": "Local Media",
|
"ButtonLocalMedia": "Lokalt medie",
|
||||||
"ButtonManageLocalFiles": "Manage Local Files",
|
"ButtonManageLocalFiles": "Administrér Lokale Filer",
|
||||||
"ButtonNewFolder": "New Folder",
|
"ButtonNewFolder": "Ny Folder",
|
||||||
"ButtonNextEpisode": "Next Episode",
|
"ButtonNextEpisode": "Næste Afsnit",
|
||||||
"ButtonOpenFeed": "Åbn feed",
|
"ButtonOpenFeed": "Åbn feed",
|
||||||
"ButtonOverride": "Override",
|
"ButtonOverride": "Override",
|
||||||
"ButtonPause": "Pause",
|
"ButtonPause": "Pause",
|
||||||
"ButtonPlay": "Afspil",
|
"ButtonPlay": "Afspil",
|
||||||
|
"ButtonPlayEpisode": "Afspil Afsnit",
|
||||||
"ButtonPlaying": "Afspiller",
|
"ButtonPlaying": "Afspiller",
|
||||||
"ButtonPlaylists": "Afspilningslister",
|
"ButtonPlaylists": "Afspilningslister",
|
||||||
"ButtonRead": "Læs",
|
"ButtonRead": "Læs",
|
||||||
"ButtonRemove": "Fjern",
|
"ButtonRemove": "Fjern",
|
||||||
"ButtonRemoveFromServer": "Remove from Server",
|
"ButtonRemoveFromServer": "Fjern fra Server",
|
||||||
"ButtonSave": "Gem",
|
"ButtonSave": "Gem",
|
||||||
"ButtonSaveOrder": "Save Order",
|
"ButtonSaveOrder": "Gem Rækkefølge",
|
||||||
"ButtonSearch": "Søg",
|
"ButtonSearch": "Søg",
|
||||||
"ButtonSendEbookToDevice": "Send Ebook to Device",
|
"ButtonSendEbookToDevice": "Send E-bog til Enhed",
|
||||||
"ButtonSeries": "Serie",
|
"ButtonSeries": "Serier",
|
||||||
"ButtonSetTimer": "Set Timer",
|
"ButtonSetTimer": "Indstil timer",
|
||||||
"ButtonStream": "Stream",
|
"ButtonStream": "Stream",
|
||||||
"ButtonSubmit": "Send",
|
"ButtonSubmit": "Send",
|
||||||
"ButtonSwitchServerUser": "Switch Server/User",
|
"ButtonSwitchServerUser": "Skift Server/Bruger",
|
||||||
"ButtonUserStats": "User Stats",
|
"ButtonUserStats": "Bruger statitstik",
|
||||||
"ButtonYes": "Ja",
|
"ButtonYes": "Ja",
|
||||||
"HeaderAccount": "Konto",
|
"HeaderAccount": "Konto",
|
||||||
"HeaderAdvanced": "Avanceret",
|
"HeaderAdvanced": "Avanceret",
|
||||||
@@ -55,7 +56,8 @@
|
|||||||
"HeaderChapters": "Kapitler",
|
"HeaderChapters": "Kapitler",
|
||||||
"HeaderCollection": "Samling",
|
"HeaderCollection": "Samling",
|
||||||
"HeaderCollectionItems": "Samlingselementer",
|
"HeaderCollectionItems": "Samlingselementer",
|
||||||
"HeaderConnectionStatus": "Connection Status",
|
"HeaderConnectionStatus": "Forbindelsesstatus",
|
||||||
|
"HeaderDataSettings": "Data indstillinger",
|
||||||
"HeaderDetails": "Detaljer",
|
"HeaderDetails": "Detaljer",
|
||||||
"HeaderDownloads": "Downloads",
|
"HeaderDownloads": "Downloads",
|
||||||
"HeaderEbookFiles": "E-bogsfiler",
|
"HeaderEbookFiles": "E-bogsfiler",
|
||||||
@@ -63,152 +65,132 @@
|
|||||||
"HeaderEreaderSettings": "E-læser Indstillinger",
|
"HeaderEreaderSettings": "E-læser Indstillinger",
|
||||||
"HeaderLatestEpisodes": "Seneste episoder",
|
"HeaderLatestEpisodes": "Seneste episoder",
|
||||||
"HeaderLibraries": "Biblioteker",
|
"HeaderLibraries": "Biblioteker",
|
||||||
"HeaderLocalFolders": "Local Folders",
|
"HeaderLocalFolders": "Lokale mapper",
|
||||||
"HeaderLocalLibraryItems": "Local Library Items",
|
"HeaderLocalLibraryItems": "Lokale biblioteks elementer",
|
||||||
"HeaderNewPlaylist": "New Playlist",
|
"HeaderNewPlaylist": "Ny afspilningsliste",
|
||||||
"HeaderOpenRSSFeed": "Åbn RSS Feed",
|
"HeaderOpenRSSFeed": "Åbn RSS Feed",
|
||||||
"HeaderPlaybackSettings": "Playback Settings",
|
"HeaderPlaybackSettings": "Afspilnings indstillinger",
|
||||||
"HeaderPlaylist": "Afspilningsliste",
|
"HeaderPlaylist": "Afspilningsliste",
|
||||||
"HeaderPlaylistItems": "Afspilningsliste Elementer",
|
"HeaderPlaylistItems": "Afspilningsliste Elementer",
|
||||||
"HeaderRSSFeed": "RSS Feed",
|
"HeaderRSSFeed": "RSS Feed",
|
||||||
"HeaderRSSFeedGeneral": "RSS Detaljer",
|
"HeaderRSSFeedGeneral": "RSS Detaljer",
|
||||||
"HeaderRSSFeedIsOpen": "RSS Feed er Åben",
|
"HeaderRSSFeedIsOpen": "RSS Feed er Åben",
|
||||||
"HeaderSelectDownloadLocation": "Select Download Location",
|
"HeaderSelectDownloadLocation": "Vælg Download Placering",
|
||||||
"HeaderSettings": "Indstillinger",
|
"HeaderSettings": "Indstillinger",
|
||||||
"HeaderSleepTimer": "Søvntimer",
|
"HeaderSleepTimer": "Søvntimer",
|
||||||
"HeaderSleepTimerSettings": "Sleep Timer Settings",
|
"HeaderSleepTimerSettings": "Sleep Timer instillinger",
|
||||||
"HeaderStatsMinutesListeningChart": "Minutter Lyttet (sidste 7 dage)",
|
"HeaderStatsMinutesListeningChart": "Minutter Lyttet (sidste 7 dage)",
|
||||||
"HeaderStatsRecentSessions": "Seneste Sessions",
|
"HeaderStatsRecentSessions": "Seneste Sessions",
|
||||||
"HeaderTableOfContents": "Indholdsfortegnelse",
|
"HeaderTableOfContents": "Indholdsfortegnelse",
|
||||||
"HeaderUserInterfaceSettings": "User Interface Settings",
|
"HeaderUserInterfaceSettings": "Indstillinger for brugergrænseflade",
|
||||||
"HeaderYourStats": "Dine Statistikker",
|
"HeaderYourStats": "Dine Statistikker",
|
||||||
"LabelAdded": "Tilføjet",
|
|
||||||
"LabelAddedAt": "Tilføjet Kl.",
|
|
||||||
"LabelAddToPlaylist": "Tilføj til Afspilningsliste",
|
"LabelAddToPlaylist": "Tilføj til Afspilningsliste",
|
||||||
|
"LabelAdded": "Tilføjet",
|
||||||
|
"LabelAddedAt": "Tilføjet Kl",
|
||||||
"LabelAll": "Alle",
|
"LabelAll": "Alle",
|
||||||
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
|
"LabelAllowSeekingOnMediaControls": "Tillad positionssøgning på mediemeddelelseskontroller",
|
||||||
|
"LabelAlways": "Altid",
|
||||||
|
"LabelAskConfirmation": "Bed om bekræftelse",
|
||||||
"LabelAuthor": "Forfatter",
|
"LabelAuthor": "Forfatter",
|
||||||
"LabelAuthorFirstLast": "Forfatter (Fornavn Efternavn)",
|
"LabelAuthorFirstLast": "Forfatter (Fornavn Efternavn)",
|
||||||
"LabelAuthorLastFirst": "Forfatter (Efternavn, Fornavn)",
|
"LabelAuthorLastFirst": "Forfatter (Efternavn, Fornavn)",
|
||||||
"LabelAuthors": "Forfattere",
|
"LabelAuthors": "Forfattere",
|
||||||
"LabelAutoDownloadEpisodes": "Auto Download Episoder",
|
"LabelAutoDownloadEpisodes": "Auto Download Episoder",
|
||||||
"LabelAutoRewindTime": "Auto rewind time",
|
"LabelAutoRewindTime": "Automatisk tilbagespolingstid",
|
||||||
"LabelAutoSleepTimer": "Auto sleep timer",
|
"LabelAutoSleepTimer": "Auto sleep timer",
|
||||||
"LabelAutoSleepTimerAutoRewind": "Auto sleep timer auto rewind",
|
"LabelAutoSleepTimerAutoRewind": "Automatisk sleep timer automatisk tilbagespoling",
|
||||||
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
|
"LabelAutoSleepTimerAutoRewindHelp": "Når den automatiske sleep-timer er færdig, vil genafspilning af elementet automatisk spole din position tilbage.",
|
||||||
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
|
"LabelAutoSleepTimerHelp": "Når der afspilles medie mellem de angivne start- og sluttidspunkter, starter en sleep-timer automatisk.",
|
||||||
"LabelBooks": "Bøger",
|
"LabelBooks": "Bøger",
|
||||||
|
"LabelChapterTrack": "Kapitel spor",
|
||||||
"LabelChapters": "Kapitler",
|
"LabelChapters": "Kapitler",
|
||||||
"LabelChapterTrack": "Chapter Track",
|
|
||||||
"LabelClosePlayer": "Luk afspiller",
|
"LabelClosePlayer": "Luk afspiller",
|
||||||
"LabelCollapseSeries": "Fold Serie Sammen",
|
"LabelCollapseSeries": "Fold Serier Sammen",
|
||||||
"LabelComplete": "Fuldfør",
|
"LabelComplete": "Fuldfør",
|
||||||
"LabelContinueBooks": "Continue Books",
|
"LabelContinueBooks": "Fortsæt Bøger",
|
||||||
"LabelContinueEpisodes": "Continue Episodes",
|
"LabelContinueEpisodes": "Fortsæt Episoder",
|
||||||
"LabelContinueListening": "Continue Listening",
|
"LabelContinueListening": "Fortsæt med at lytte",
|
||||||
"LabelContinueReading": "Continue Reading",
|
"LabelContinueReading": "Fortsæt med at læse",
|
||||||
"LabelContinueSeries": "Continue Series",
|
"LabelContinueSeries": "Fortsæt Serien",
|
||||||
"LabelCustomTime": "Custom time",
|
"LabelCustomTime": "Brugerdefineret tid",
|
||||||
"LabelDescription": "Beskrivelse",
|
"LabelDescription": "Beskrivelse",
|
||||||
"LabelDisableAudioFadeOut": "Disable audio fade out",
|
"LabelDisableAudioFadeOut": "Deaktiver lydudtoning",
|
||||||
"LabelDisableAudioFadeOutHelp": "Audio volume will start decreasing when there is less than 1 minute remaining on the sleep timer. Enable this setting to not fade out.",
|
"LabelDisableAudioFadeOutHelp": "Lydstyrken begynder at falde, når der er mindre end 1 minut tilbage på sleep-timeren. Aktiver denne indstilling for ikke at fade ud.",
|
||||||
"LabelDisableAutoRewind": "Disable auto rewind",
|
"LabelDisableAutoRewind": "Deaktiver automatisk tilbagespoling",
|
||||||
"LabelDisableShakeToReset": "Disable shake to reset",
|
"LabelDisableShakeToReset": "Deaktiver ryst for at nulstille",
|
||||||
"LabelDisableShakeToResetHelp": "Shaking your device while the timer is running OR within 2 minutes of the timer expiring will reset the sleep timer. Enable this setting to disable shake to reset.",
|
"LabelDisableShakeToResetHelp": "Hvis du ryster din enhed, mens timeren kører ELLER inden for 2 minutter før, at timeren er udløbet, nulstilles sleeptimeren. Aktiver denne indstilling for at deaktivere \"rystelse for at nulstille\".",
|
||||||
"LabelDisableVibrateOnReset": "Disable vibrate on reset",
|
"LabelDisableVibrateOnReset": "Deaktiver vibrering ved nulstilling",
|
||||||
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
|
"LabelDisableVibrateOnResetHelp": "Når sleep-timeren nulstilles, vil din enhed vibrere. Aktiver denne indstilling for ikke at vibrere, når sleep-timeren nulstilles.",
|
||||||
"LabelDiscover": "Discover",
|
"LabelDiscover": "Opdag",
|
||||||
"LabelDownload": "Download",
|
"LabelDownload": "Download",
|
||||||
"LabelDownloaded": "Downloaded",
|
"LabelDownloadUsingCellular": "Download med mobildata",
|
||||||
|
"LabelDownloaded": "Downloadet",
|
||||||
"LabelDuration": "Varighed",
|
"LabelDuration": "Varighed",
|
||||||
"LabelEbook": "E-bog",
|
"LabelEbook": "E-bog",
|
||||||
"LabelEbooks": "Ebooks",
|
"LabelEbooks": "E-bøger",
|
||||||
"LabelEnable": "Aktivér",
|
"LabelEnable": "Aktivér",
|
||||||
"LabelEnableMp3IndexSeeking": "Enable mp3 index seeking",
|
"LabelEnableMp3IndexSeeking": "Aktiver mp3-indekssøgning",
|
||||||
"LabelEnableMp3IndexSeekingHelp": "This setting should only be enabled if you have mp3 files that are not seeking correctly. Inaccurate seeking is most likely due to Variable birate (VBR) MP3 files. This setting will force index seeking, in which a time-to-byte mapping is built as the file is read. In some cases with large MP3 files there will be a delay when seeking towards the end of the file.",
|
"LabelEnableMp3IndexSeekingHelp": "Denne indstilling bør kun aktiveres, hvis du har mp3-filer, der ikke søger korrekt. Upræcis søgning skyldes højst sandsynligt Variable birate (VBR) MP3-filer. Denne indstilling vil fremtvinge indekssøgning, hvor en tid-til-byte mapping er bygget, mens filen læses. I nogle tilfælde med store MP3-filer vil der være en forsinkelse ved søgning mod slutningen af filen.",
|
||||||
"LabelEnd": "Slut",
|
"LabelEnd": "Slut",
|
||||||
"LabelEndOfChapter": "End of Chapter",
|
"LabelEndOfChapter": "Slutningen af kapitel",
|
||||||
"LabelEndTime": "End time",
|
"LabelEndTime": "Sluttidspunkt",
|
||||||
"LabelEpisode": "Episode",
|
"LabelEpisode": "Episode",
|
||||||
"LabelFeedURL": "Feed URL",
|
"LabelFeedURL": "Feed URL",
|
||||||
"LabelFile": "Fil",
|
"LabelFile": "Fil",
|
||||||
"LabelFileBirthtime": "Fødselstidspunkt for fil",
|
"LabelFileBirthtime": "Oprettelsestidspunkt for fil",
|
||||||
"LabelFileModified": "Fil ændret",
|
"LabelFileModified": "Fil ændret",
|
||||||
"LabelFilename": "Filnavn",
|
"LabelFilename": "Filnavn",
|
||||||
"LabelFinished": "Færdig",
|
"LabelFinished": "Færdig",
|
||||||
"LabelFolder": "Mappe",
|
"LabelFolder": "Mappe",
|
||||||
|
"LabelFontBoldness": "Skrift tykkelse",
|
||||||
"LabelFontScale": "Skriftstørrelse",
|
"LabelFontScale": "Skriftstørrelse",
|
||||||
"LabelGenre": "Genre",
|
"LabelGenre": "Genre",
|
||||||
"LabelGenres": "Genrer",
|
"LabelGenres": "Genrer",
|
||||||
"LabelHapticFeedback": "Haptic feedback",
|
"LabelHapticFeedback": "Haptisk feedback",
|
||||||
"LabelHasEbook": "Has ebook",
|
"LabelHasEbook": "Har e-bog",
|
||||||
"LabelHasSupplementaryEbook": "Has supplementary ebook",
|
"LabelHasSupplementaryEbook": "Har supplerende e-bog",
|
||||||
"LabelHeavy": "Heavy",
|
"LabelHeavy": "Tung",
|
||||||
"LabelHigh": "High",
|
"LabelHigh": "Høj",
|
||||||
"LabelHost": "Vært",
|
"LabelHost": "Vært",
|
||||||
"LabelIncomplete": "Ufuldstændig",
|
|
||||||
"LabelInProgress": "I gang",
|
"LabelInProgress": "I gang",
|
||||||
"LabelInternalAppStorage": "Internal App Storage",
|
"LabelIncomplete": "Ufuldstændig",
|
||||||
"LabelJumpBackwardsTime": "Jump backwards time",
|
"LabelJumpBackwardsTime": "Spring tilbage tid",
|
||||||
"LabelJumpForwardsTime": "Jump forwards time",
|
"LabelJumpForwardsTime": "Spring frem tid",
|
||||||
"LabelLanguage": "Sprog",
|
"LabelLanguage": "Sprog",
|
||||||
"LabelLayout": "Layout",
|
"LabelLayout": "Layout",
|
||||||
"LabelLayoutAuto": "Auto",
|
|
||||||
"LabelLayoutSinglePage": "Single page",
|
|
||||||
"LabelLight": "Light",
|
|
||||||
"LabelLineSpacing": "Linjeafstand",
|
"LabelLineSpacing": "Linjeafstand",
|
||||||
"LabelListenAgain": "Listen Again",
|
"LabelLockPlayer": "Lås afspiller",
|
||||||
"LabelLocalBooks": "Local Books",
|
|
||||||
"LabelLocalPodcasts": "Local Podcasts",
|
|
||||||
"LabelLockOrientation": "Lock orientation",
|
|
||||||
"LabelLockPlayer": "Lock Player",
|
|
||||||
"LabelLow": "Low",
|
|
||||||
"LabelMediaType": "Medietype",
|
"LabelMediaType": "Medietype",
|
||||||
"LabelMedium": "Medium",
|
|
||||||
"LabelMore": "Mere",
|
"LabelMore": "Mere",
|
||||||
"LabelMoreInfo": "Mere info",
|
"LabelMoreInfo": "Mere info",
|
||||||
"LabelName": "Navn",
|
"LabelName": "Navn",
|
||||||
"LabelNarrator": "Fortæller",
|
"LabelNarrator": "Fortæller",
|
||||||
"LabelNarrators": "Fortællere",
|
"LabelNarrators": "Fortællere",
|
||||||
"LabelNewestAuthors": "Newest Authors",
|
"LabelNever": "Aldrig",
|
||||||
"LabelNewestEpisodes": "Newest Episodes",
|
|
||||||
"LabelNo": "No",
|
|
||||||
"LabelNotFinished": "Ikke færdig",
|
"LabelNotFinished": "Ikke færdig",
|
||||||
"LabelNotStarted": "Ikke påbegyndt",
|
"LabelNotStarted": "Ikke påbegyndt",
|
||||||
"LabelOff": "Off",
|
|
||||||
"LabelPassword": "Kodeord",
|
"LabelPassword": "Kodeord",
|
||||||
"LabelPath": "Sti",
|
"LabelPath": "Sti",
|
||||||
"LabelPlaybackDirect": "Direct",
|
"LabelPlaybackSpeed": "Afspilningshastighed",
|
||||||
"LabelPlaybackLocal": "Local",
|
|
||||||
"LabelPlaybackSpeed": "Playback Speed",
|
|
||||||
"LabelPlaybackTranscode": "Transcode",
|
"LabelPlaybackTranscode": "Transcode",
|
||||||
"LabelPodcast": "Podcast",
|
|
||||||
"LabelPodcasts": "Podcasts",
|
|
||||||
"LabelPreventIndexing": "Forhindrer, at dit feed bliver indekseret af iTunes og Google podcastkataloger",
|
"LabelPreventIndexing": "Forhindrer, at dit feed bliver indekseret af iTunes og Google podcastkataloger",
|
||||||
"LabelProgress": "Fremskridt",
|
"LabelProgress": "Fremskridt",
|
||||||
"LabelPubDate": "Udgivelsesdato",
|
"LabelPubDate": "Udgivelsesdato",
|
||||||
"LabelPublishYear": "Udgivelsesår",
|
"LabelPublishYear": "Udgivelsesår",
|
||||||
"LabelRead": "Læst",
|
|
||||||
"LabelReadAgain": "Read Again",
|
|
||||||
"LabelRecentlyAdded": "Recently Added",
|
|
||||||
"LabelRecentSeries": "Recent Series",
|
|
||||||
"LabelRemoveFromPlaylist": "Remove from Playlist",
|
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Brugerdefineret ejerens e-mail",
|
"LabelRSSFeedCustomOwnerEmail": "Brugerdefineret ejerens e-mail",
|
||||||
"LabelRSSFeedCustomOwnerName": "Brugerdefineret ejerens navn",
|
"LabelRSSFeedCustomOwnerName": "Brugerdefineret ejerens navn",
|
||||||
"LabelRSSFeedPreventIndexing": "Forhindrer indeksering",
|
"LabelRSSFeedPreventIndexing": "Forhindrer indeksering",
|
||||||
"LabelRSSFeedSlug": "RSS-feed-slug",
|
"LabelRSSFeedSlug": "RSS-feed-slug",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
|
"LabelRandomly": "Tilfældigt",
|
||||||
|
"LabelRead": "Læst",
|
||||||
|
"LabelRecentSeries": "Seneste serier",
|
||||||
"LabelSeason": "Sæson",
|
"LabelSeason": "Sæson",
|
||||||
"LabelSelectADevice": "Select a device",
|
|
||||||
"LabelSeries": "Serie",
|
"LabelSeries": "Serie",
|
||||||
"LabelServerAddress": "Server address",
|
|
||||||
"LabelSetEbookAsPrimary": "Indstil som primær",
|
"LabelSetEbookAsPrimary": "Indstil som primær",
|
||||||
"LabelSetEbookAsSupplementary": "Indstil som supplerende",
|
"LabelSetEbookAsSupplementary": "Indstil som supplerende",
|
||||||
"LabelShakeSensitivity": "Shake sensitivity",
|
|
||||||
"LabelShowAll": "Vis alle",
|
"LabelShowAll": "Vis alle",
|
||||||
"LabelSize": "Størrelse",
|
"LabelSize": "Størrelse",
|
||||||
"LabelSleepTimer": "Søvntimer",
|
"LabelSleepTimer": "Søvntimer",
|
||||||
"LabelStart": "Start",
|
|
||||||
"LabelStartTime": "Starttid",
|
"LabelStartTime": "Starttid",
|
||||||
"LabelStatsBestDay": "Bedste dag",
|
"LabelStatsBestDay": "Bedste dag",
|
||||||
"LabelStatsDailyAverage": "Daglig gennemsnit",
|
"LabelStatsDailyAverage": "Daglig gennemsnit",
|
||||||
@@ -226,61 +208,33 @@
|
|||||||
"LabelThemeLight": "Lys",
|
"LabelThemeLight": "Lys",
|
||||||
"LabelTimeRemaining": "{0} tilbage",
|
"LabelTimeRemaining": "{0} tilbage",
|
||||||
"LabelTitle": "Titel",
|
"LabelTitle": "Titel",
|
||||||
"LabelTotalTrack": "Total Track",
|
|
||||||
"LabelTracks": "Spor",
|
"LabelTracks": "Spor",
|
||||||
"LabelType": "Type",
|
|
||||||
"LabelUnlockPlayer": "Unlock Player",
|
|
||||||
"LabelUseBookshelfView": "Use bookshelf view",
|
|
||||||
"LabelUser": "Bruger",
|
"LabelUser": "Bruger",
|
||||||
"LabelUsername": "Brugernavn",
|
"LabelUsername": "Brugernavn",
|
||||||
"LabelVeryHigh": "Very High",
|
|
||||||
"LabelVeryLow": "Very Low",
|
|
||||||
"LabelYourBookmarks": "Dine bogmærker",
|
"LabelYourBookmarks": "Dine bogmærker",
|
||||||
"LabelYourProgress": "Din fremgang",
|
"LabelYourProgress": "Din fremgang",
|
||||||
"MessageAndroid10Downloads": "Android 10 and below will use internal app storage for downloads.",
|
"MessageDiscardProgress": "Kassér fremgang",
|
||||||
"MessageAttemptingServerConnection": "Attempting server connection...",
|
"MessageDownloadCompleteProcessing": "Download fuldført. Behandler...",
|
||||||
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf server not connected",
|
"MessageDownloading": "Downloader...",
|
||||||
"MessageAudiobookshelfServerRequired": "<strong>Important!</strong> This app is designed to work with an Audiobookshelf server that you or someone you know is hosting. This app does not provide any content.",
|
|
||||||
"MessageBookshelfEmpty": "Bookshelf empty",
|
|
||||||
"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?",
|
|
||||||
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
|
|
||||||
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
|
|
||||||
"MessageDiscardProgress": "Discard Progress",
|
|
||||||
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
|
|
||||||
"MessageDownloading": "Downloading...",
|
|
||||||
"MessageDownloadingEpisode": "Downloader episode",
|
"MessageDownloadingEpisode": "Downloader episode",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} episoder er sat i kø til download",
|
"MessageEpisodesQueuedForDownload": "{0} episoder er sat i kø til download",
|
||||||
"MessageFeedURLWillBe": "Feed-URL vil være {0}",
|
"MessageFeedURLWillBe": "Feed-URL vil være {0}",
|
||||||
"MessageFetching": "Henter...",
|
"MessageFetching": "Henter...",
|
||||||
"MessageFollowTheProjectOnGithub": "Follow the project on Github",
|
"MessageFollowTheProjectOnGithub": "Follow the project on GitHub",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Item download complete but failed to create library item",
|
|
||||||
"MessageLoading": "Indlæser...",
|
"MessageLoading": "Indlæser...",
|
||||||
"MessageLoadingServerData": "Loading server data...",
|
|
||||||
"MessageMarkAsFinished": "Markér som afsluttet",
|
"MessageMarkAsFinished": "Markér som afsluttet",
|
||||||
"MessageMediaLinkedToADifferentServer": "Media is linked to an Audiobookshelf server on a different address ({0}). Progress will be synced when connected to this server address.",
|
|
||||||
"MessageMediaLinkedToADifferentUser": "Media is linked to this server but was downloaded by a different user. Progress will only be synced to the user that downloaded it.",
|
|
||||||
"MessageMediaLinkedToServer": "Linked to server {0}",
|
|
||||||
"MessageMediaLinkedToThisServer": "Downloaded media is linked to this server",
|
|
||||||
"MessageMediaNotLinkedToServer": "Media is not linked to an Audiobookshelf server. No progress will be synced.",
|
|
||||||
"MessageNoBookmarks": "Ingen bogmærker",
|
"MessageNoBookmarks": "Ingen bogmærker",
|
||||||
"MessageNoChapters": "Ingen kapitler",
|
"MessageNoChapters": "Ingen kapitler",
|
||||||
"MessageNoItems": "Ingen elementer",
|
"MessageNoItems": "Ingen elementer",
|
||||||
"MessageNoItemsFound": "Ingen elementer fundet",
|
"MessageNoItemsFound": "Ingen elementer fundet",
|
||||||
"MessageNoListeningSessions": "Ingen lyttesessioner",
|
"MessageNoListeningSessions": "Ingen lyttesessioner",
|
||||||
"MessageNoMediaFolders": "No Media Folders",
|
|
||||||
"MessageNoNetworkConnection": "No network connection",
|
|
||||||
"MessageNoPodcastsFound": "Ingen podcasts fundet",
|
"MessageNoPodcastsFound": "Ingen podcasts fundet",
|
||||||
"MessageNoSeries": "No series",
|
"MessageNoSeries": "Ingen serier",
|
||||||
"MessageNoUpdatesWereNecessary": "Ingen opdateringer var nødvendige",
|
"MessageNoUpdatesWereNecessary": "Ingen opdateringer var nødvendige",
|
||||||
"MessageNoUserPlaylists": "Du har ingen afspilningslister",
|
"MessageNoUserPlaylists": "Du har ingen afspilningslister",
|
||||||
"MessageReportBugsAndContribute": "Rapporter fejl, anmod om funktioner og bidrag på",
|
"MessageReportBugsAndContribute": "Rapporter fejl, anmod om funktioner og bidrag på",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket connected over metered cellular",
|
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered Wi-Fi",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered wifi",
|
"MessageSocketConnectedOverUnmeteredWifi": "Socket connected over unmetered Wi-Fi",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Socket connected over unmetered cellular",
|
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Socket connected over unmetered wifi",
|
|
||||||
"MessageSocketNotConnected": "Socket not connected",
|
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Advarsel: De fleste podcast-apps kræver, at RSS-feedets URL bruger HTTPS",
|
"NoteRSSFeedPodcastAppsHttps": "Advarsel: De fleste podcast-apps kræver, at RSS-feedets URL bruger HTTPS",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Advarsel: En eller flere af dine episoder har ikke en Pub Date. Nogle podcast-apps kræver dette.",
|
"NoteRSSFeedPodcastAppsPubDate": "Advarsel: En eller flere af dine episoder har ikke en Pub Date. Nogle podcast-apps kræver dette.",
|
||||||
"ToastBookmarkCreateFailed": "Mislykkedes oprettelse af bogmærke",
|
"ToastBookmarkCreateFailed": "Mislykkedes oprettelse af bogmærke",
|
||||||
@@ -293,4 +247,4 @@
|
|||||||
"ToastPodcastCreateSuccess": "Podcast oprettet med succes",
|
"ToastPodcastCreateSuccess": "Podcast oprettet med succes",
|
||||||
"ToastRSSFeedCloseFailed": "Mislykkedes lukning af RSS-feed",
|
"ToastRSSFeedCloseFailed": "Mislykkedes lukning af RSS-feed",
|
||||||
"ToastRSSFeedCloseSuccess": "RSS-feed lukket"
|
"ToastRSSFeedCloseSuccess": "RSS-feed lukket"
|
||||||
}
|
}
|
||||||
|
|||||||
+72
-51
@@ -19,7 +19,7 @@
|
|||||||
"ButtonDeleteLocalItem": "Lösche lokales Element",
|
"ButtonDeleteLocalItem": "Lösche lokales Element",
|
||||||
"ButtonDisableAutoTimer": "Deaktiviere automatischen Timer",
|
"ButtonDisableAutoTimer": "Deaktiviere automatischen Timer",
|
||||||
"ButtonDisconnect": "Trennen",
|
"ButtonDisconnect": "Trennen",
|
||||||
"ButtonGoToWebClient": "Go to Web Client",
|
"ButtonGoToWebClient": "Gehe zum Web Client",
|
||||||
"ButtonHistory": "Historie",
|
"ButtonHistory": "Historie",
|
||||||
"ButtonHome": "Startseite",
|
"ButtonHome": "Startseite",
|
||||||
"ButtonIssues": "Probleme",
|
"ButtonIssues": "Probleme",
|
||||||
@@ -31,20 +31,21 @@
|
|||||||
"ButtonNextEpisode": "Nächste Episode",
|
"ButtonNextEpisode": "Nächste Episode",
|
||||||
"ButtonOpenFeed": "Feed öffnen",
|
"ButtonOpenFeed": "Feed öffnen",
|
||||||
"ButtonOverride": "Überschreiben",
|
"ButtonOverride": "Überschreiben",
|
||||||
"ButtonPause": "Pause",
|
"ButtonPause": "Pausieren",
|
||||||
"ButtonPlay": "Abspielen",
|
"ButtonPlay": "Abspielen",
|
||||||
|
"ButtonPlayEpisode": "Episode abspielen",
|
||||||
"ButtonPlaying": "Spielt",
|
"ButtonPlaying": "Spielt",
|
||||||
"ButtonPlaylists": "Wiedergabelisten",
|
"ButtonPlaylists": "Wiedergabelisten",
|
||||||
"ButtonRead": "Lesen",
|
"ButtonRead": "Lesen",
|
||||||
"ButtonRemove": "Löschen",
|
"ButtonRemove": "Entfernen",
|
||||||
"ButtonRemoveFromServer": "Vom Server entfernen",
|
"ButtonRemoveFromServer": "Vom Server entfernen",
|
||||||
"ButtonSave": "Speichern",
|
"ButtonSave": "Speichern",
|
||||||
"ButtonSaveOrder": "Reihenfolge speichern",
|
"ButtonSaveOrder": "Reihenfolge speichern",
|
||||||
"ButtonSearch": "Suchen",
|
"ButtonSearch": "Suchen",
|
||||||
"ButtonSendEbookToDevice": "Sende E-Book an Gerät",
|
"ButtonSendEbookToDevice": "E-Buch an Gerät senden",
|
||||||
"ButtonSeries": "Serien",
|
"ButtonSeries": "Serien",
|
||||||
"ButtonSetTimer": "Setze Timer",
|
"ButtonSetTimer": "Setze Timer",
|
||||||
"ButtonStream": "Stream",
|
"ButtonStream": "Streamen",
|
||||||
"ButtonSubmit": "Ok",
|
"ButtonSubmit": "Ok",
|
||||||
"ButtonSwitchServerUser": "Wechsle Server/Benutzer",
|
"ButtonSwitchServerUser": "Wechsle Server/Benutzer",
|
||||||
"ButtonUserStats": "Nutzerstatistiken",
|
"ButtonUserStats": "Nutzerstatistiken",
|
||||||
@@ -53,21 +54,22 @@
|
|||||||
"HeaderAdvanced": "Erweitert",
|
"HeaderAdvanced": "Erweitert",
|
||||||
"HeaderAudioTracks": "Audiodateien",
|
"HeaderAudioTracks": "Audiodateien",
|
||||||
"HeaderChapters": "Kapitel",
|
"HeaderChapters": "Kapitel",
|
||||||
"HeaderCollection": "Sammlungen",
|
"HeaderCollection": "Sammlung",
|
||||||
"HeaderCollectionItems": "Sammlungseinträge",
|
"HeaderCollectionItems": "Sammlungseinträge",
|
||||||
"HeaderConnectionStatus": "Verbindungsstatus",
|
"HeaderConnectionStatus": "Verbindungsstatus",
|
||||||
|
"HeaderDataSettings": "Daten-Einstellungen",
|
||||||
"HeaderDetails": "Details",
|
"HeaderDetails": "Details",
|
||||||
"HeaderDownloads": "Downloads",
|
"HeaderDownloads": "Downloads",
|
||||||
"HeaderEbookFiles": "E-Book Dateien",
|
"HeaderEbookFiles": "E-Buch-Dateien",
|
||||||
"HeaderEpisodes": "Episoden",
|
"HeaderEpisodes": "Episoden",
|
||||||
"HeaderEreaderSettings": "E-Reader Einstellungen",
|
"HeaderEreaderSettings": "Einstellungen zum Lesen",
|
||||||
"HeaderLatestEpisodes": "Neueste Episoden",
|
"HeaderLatestEpisodes": "Neueste Episoden",
|
||||||
"HeaderLibraries": "Bibliotheken",
|
"HeaderLibraries": "Bibliotheken",
|
||||||
"HeaderLocalFolders": "Lokale Ordner",
|
"HeaderLocalFolders": "Lokale Ordner",
|
||||||
"HeaderLocalLibraryItems": "Lokale Bibliothek Elemente",
|
"HeaderLocalLibraryItems": "Elemente der lokalen Bibliothek",
|
||||||
"HeaderNewPlaylist": "Neue Wiedergabeliste",
|
"HeaderNewPlaylist": "Neue Wiedergabeliste",
|
||||||
"HeaderOpenRSSFeed": "RSS-Feed öffnen",
|
"HeaderOpenRSSFeed": "RSS-Feed öffnen",
|
||||||
"HeaderPlaybackSettings": "Wiedergabe Einstellungen",
|
"HeaderPlaybackSettings": "Wiedergabe-Einstellungen",
|
||||||
"HeaderPlaylist": "Wiedergabeliste",
|
"HeaderPlaylist": "Wiedergabeliste",
|
||||||
"HeaderPlaylistItems": "Einträge in der Wiedergabeliste",
|
"HeaderPlaylistItems": "Einträge in der Wiedergabeliste",
|
||||||
"HeaderRSSFeed": "RSS-Feed",
|
"HeaderRSSFeed": "RSS-Feed",
|
||||||
@@ -75,33 +77,35 @@
|
|||||||
"HeaderRSSFeedIsOpen": "RSS-Feed ist geöffnet",
|
"HeaderRSSFeedIsOpen": "RSS-Feed ist geöffnet",
|
||||||
"HeaderSelectDownloadLocation": "Wähle Download-Speicherort",
|
"HeaderSelectDownloadLocation": "Wähle Download-Speicherort",
|
||||||
"HeaderSettings": "Einstellungen",
|
"HeaderSettings": "Einstellungen",
|
||||||
"HeaderSleepTimer": "Sleep-Timer",
|
"HeaderSleepTimer": "Schlummerfunktion",
|
||||||
"HeaderSleepTimerSettings": "Sleep-Timer Einstellungen",
|
"HeaderSleepTimerSettings": "Schlummerfunktion Einstellungen",
|
||||||
"HeaderStatsMinutesListeningChart": "Hörminuten (letzte 7 Tage)",
|
"HeaderStatsMinutesListeningChart": "Hörminuten (letzte 7 Tage)",
|
||||||
"HeaderStatsRecentSessions": "Neueste Ereignisse",
|
"HeaderStatsRecentSessions": "Neueste Ereignisse",
|
||||||
"HeaderTableOfContents": "Inhaltsverzeichnis",
|
"HeaderTableOfContents": "Inhaltsverzeichnis",
|
||||||
"HeaderUserInterfaceSettings": "Einstellungen der Benutzeroberfläche",
|
"HeaderUserInterfaceSettings": "Einstellungen der Benutzeroberfläche",
|
||||||
"HeaderYourStats": "Eigene Statistiken",
|
"HeaderYourStats": "Eigene Statistiken",
|
||||||
|
"LabelAddToPlaylist": "Zur Wiedergabeliste hinzufügen",
|
||||||
"LabelAdded": "Hinzugefügt",
|
"LabelAdded": "Hinzugefügt",
|
||||||
"LabelAddedAt": "Hinzugefügt am",
|
"LabelAddedAt": "Hinzugefügt am",
|
||||||
"LabelAddToPlaylist": "Zur Wiedergabeliste hinzufügen",
|
|
||||||
"LabelAll": "Alle",
|
"LabelAll": "Alle",
|
||||||
"LabelAllowSeekingOnMediaControls": "Erlaube Vor- und Zurückspulen auf dem Medienkontrollelement bei den Benachrichtigungen",
|
"LabelAllowSeekingOnMediaControls": "Erlaube Vor- und Zurückspulen auf dem Medienkontrollelement bei den Benachrichtigungen",
|
||||||
|
"LabelAlways": "Immer",
|
||||||
|
"LabelAskConfirmation": "Bestätigung anfordern",
|
||||||
"LabelAuthor": "Autor",
|
"LabelAuthor": "Autor",
|
||||||
"LabelAuthorFirstLast": "Autor (Vorname Nachname)",
|
"LabelAuthorFirstLast": "Autor (Vorname Nachname)",
|
||||||
"LabelAuthorLastFirst": "Autor (Nachname, Vorname)",
|
"LabelAuthorLastFirst": "Autor (Nachname, Vorname)",
|
||||||
"LabelAuthors": "Autoren",
|
"LabelAuthors": "Autoren",
|
||||||
"LabelAutoDownloadEpisodes": "Episoden automatisch herunterladen",
|
"LabelAutoDownloadEpisodes": "Episoden automatisch herunterladen",
|
||||||
"LabelAutoRewindTime": "Automatische Rückspulzeit",
|
"LabelAutoRewindTime": "Automatische Rückspulzeit",
|
||||||
"LabelAutoSleepTimer": "Automatischer Sleep-Timer",
|
"LabelAutoSleepTimer": "Automatische Schlummerfunktion",
|
||||||
"LabelAutoSleepTimerAutoRewind": "Automatischer Sleep-Timer automatische Rückspulzeit",
|
"LabelAutoSleepTimerAutoRewind": "Automatische Schlummerfunktion automatische Rückspulzeit",
|
||||||
"LabelAutoSleepTimerAutoRewindHelp": "Wenn der Sleep-Timer abgelaufen ist, wird bei der erneuten Wiedergabe des Titels die Position automatisch zurückgespult.",
|
"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 ein Sleep-Timer gestartet.",
|
"LabelAutoSleepTimerHelp": "Bei der Wiedergabe von Medien zwischen der angegebenen Start- und Endzeit wird automatisch eine Schlummerfunktion gestartet.",
|
||||||
"LabelBooks": "Bücher",
|
"LabelBooks": "Bücher",
|
||||||
|
"LabelChapterTrack": "Kapitelspur",
|
||||||
"LabelChapters": "Kapitel",
|
"LabelChapters": "Kapitel",
|
||||||
"LabelChapterTrack": "Kapitel Spur",
|
|
||||||
"LabelClosePlayer": "Player schließen",
|
"LabelClosePlayer": "Player schließen",
|
||||||
"LabelCollapseSeries": "Serien zusammenfassen",
|
"LabelCollapseSeries": "Serien einklappen",
|
||||||
"LabelComplete": "Vollständig",
|
"LabelComplete": "Vollständig",
|
||||||
"LabelContinueBooks": "Bücher fortfahren",
|
"LabelContinueBooks": "Bücher fortfahren",
|
||||||
"LabelContinueEpisodes": "Episoden fortfahren",
|
"LabelContinueEpisodes": "Episoden fortfahren",
|
||||||
@@ -119,42 +123,44 @@
|
|||||||
"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.",
|
"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",
|
"LabelDiscover": "Entdecken",
|
||||||
"LabelDownload": "Herunterladen",
|
"LabelDownload": "Herunterladen",
|
||||||
|
"LabelDownloadUsingCellular": "Über mobile Daten herunterladen",
|
||||||
"LabelDownloaded": "Heruntergeladen",
|
"LabelDownloaded": "Heruntergeladen",
|
||||||
"LabelDuration": "Laufzeit",
|
"LabelDuration": "Laufzeit",
|
||||||
"LabelEbook": "E-Book",
|
"LabelEbook": "E-Buch",
|
||||||
"LabelEbooks": "E-Books",
|
"LabelEbooks": "E-Bücher",
|
||||||
"LabelEnable": "Aktivieren",
|
"LabelEnable": "Aktivieren",
|
||||||
"LabelEnableMp3IndexSeeking": "MP3-Indexsuche",
|
"LabelEnableMp3IndexSeeking": "MP3-Indexsuche",
|
||||||
"LabelEnableMp3IndexSeekingHelp": "Diese Einstellung sollte nur aktiviert werden, wenn du MP3-Dateien hast, bei denen das Navigieren (Seeking) nicht korrekt funktioniert. Ungenaues Navigieren ist höchstwahrscheinlich auf MP3-Dateien mit variabler Bitrate (VBR) zurückzuführen. Diese Einstellung erzwingt das Index-Navigieren (Index Seeking), bei dem eine Zeit-zu-Byte-Zuordnung erstellt wird, während die Datei gelesen wird. In einigen Fällen kann es bei großen MP3-Dateien zu einer Verzögerung kommen, wenn gegen Ende der Datei navigiert wird.",
|
"LabelEnableMp3IndexSeekingHelp": "Diese Einstellung sollte nur aktiviert werden, wenn du MP3-Dateien hast, bei denen das Navigieren (Seeking) nicht korrekt funktioniert. Ungenaues Navigieren ist höchstwahrscheinlich auf MP3-Dateien mit variabler Bitrate (VBR) zurückzuführen. Diese Einstellung erzwingt das Index-Navigieren (Index Seeking), bei dem eine Zeit-zu-Byte-Zuordnung erstellt wird, während die Datei gelesen wird. In einigen Fällen kann es bei großen MP3-Dateien zu einer Verzögerung kommen, wenn gegen Ende der Datei navigiert wird.",
|
||||||
"LabelEnd": "Ende",
|
"LabelEnd": "Ende",
|
||||||
"LabelEndOfChapter": "Kapitelende",
|
"LabelEndOfChapter": "Ende des Kapitels",
|
||||||
"LabelEndTime": "Endzeit",
|
"LabelEndTime": "Endzeit",
|
||||||
"LabelEpisode": "Episode",
|
"LabelEpisode": "Episode",
|
||||||
"LabelFeedURL": "Feed URL",
|
"LabelFeedURL": "Feed-URL",
|
||||||
"LabelFile": "Datei",
|
"LabelFile": "Datei",
|
||||||
"LabelFileBirthtime": "Datei erstellt",
|
"LabelFileBirthtime": "Datei erstellt",
|
||||||
"LabelFileModified": "Datei geändert",
|
"LabelFileModified": "Datei geändert",
|
||||||
"LabelFilename": "Dateiname",
|
"LabelFilename": "Dateiname",
|
||||||
"LabelFinished": "Beendet",
|
"LabelFinished": "Beendet",
|
||||||
"LabelFolder": "Ordner",
|
"LabelFolder": "Ordner",
|
||||||
|
"LabelFontBoldness": "Schriftstärke",
|
||||||
"LabelFontScale": "Schriftgröße",
|
"LabelFontScale": "Schriftgröße",
|
||||||
"LabelGenre": "Kategorie",
|
"LabelGenre": "Kategorie",
|
||||||
"LabelGenres": "Kategorien",
|
"LabelGenres": "Kategorien",
|
||||||
"LabelHapticFeedback": "Haptische Rückmeldung",
|
"LabelHapticFeedback": "Haptische Rückmeldung",
|
||||||
"LabelHasEbook": "E-Book verfügbar",
|
"LabelHasEbook": "E-Buch verfügbar",
|
||||||
"LabelHasSupplementaryEbook": "Ergänzendes E-Book verfügbar",
|
"LabelHasSupplementaryEbook": "Ergänzendes E-Buch verfügbar",
|
||||||
"LabelHeavy": "Stark",
|
"LabelHeavy": "Stark",
|
||||||
"LabelHigh": "Hoch",
|
"LabelHigh": "Hoch",
|
||||||
"LabelHost": "Host",
|
"LabelHost": "Anbieter",
|
||||||
"LabelIncomplete": "Unvollständig",
|
|
||||||
"LabelInProgress": "In Bearbeitung",
|
"LabelInProgress": "In Bearbeitung",
|
||||||
|
"LabelIncomplete": "Unvollständig",
|
||||||
"LabelInternalAppStorage": "Interner App Speicher",
|
"LabelInternalAppStorage": "Interner App Speicher",
|
||||||
"LabelJumpBackwardsTime": "Rückspulzeit",
|
"LabelJumpBackwardsTime": "Rückspulzeit",
|
||||||
"LabelJumpForwardsTime": "Vorwärtsspulzeit",
|
"LabelJumpForwardsTime": "Vorwärtsspulzeit",
|
||||||
"LabelLanguage": "Sprache",
|
"LabelLanguage": "Sprache",
|
||||||
"LabelLayout": "Layout",
|
"LabelLayout": "Ansicht",
|
||||||
"LabelLayoutAuto": "Auto",
|
"LabelLayoutAuto": "Auto",
|
||||||
"LabelLayoutSinglePage": "Einzelne Seite",
|
"LabelLayoutSinglePage": "Eine Seite",
|
||||||
"LabelLight": "Leicht",
|
"LabelLight": "Leicht",
|
||||||
"LabelLineSpacing": "Zeilenabstand",
|
"LabelLineSpacing": "Zeilenabstand",
|
||||||
"LabelListenAgain": "Erneut anhören",
|
"LabelListenAgain": "Erneut anhören",
|
||||||
@@ -170,6 +176,11 @@
|
|||||||
"LabelName": "Name",
|
"LabelName": "Name",
|
||||||
"LabelNarrator": "Erzähler",
|
"LabelNarrator": "Erzähler",
|
||||||
"LabelNarrators": "Erzähler",
|
"LabelNarrators": "Erzähler",
|
||||||
|
"LabelNavigateWithVolume": "Mit Lautstärke blättern",
|
||||||
|
"LabelNavigateWithVolumeDisabled": "Aus",
|
||||||
|
"LabelNavigateWithVolumeEnabled": "An",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "Umgekehrt",
|
||||||
|
"LabelNever": "Nie",
|
||||||
"LabelNewestAuthors": "Neueste Autoren",
|
"LabelNewestAuthors": "Neueste Autoren",
|
||||||
"LabelNewestEpisodes": "Neueste Episoden",
|
"LabelNewestEpisodes": "Neueste Episoden",
|
||||||
"LabelNo": "Nein",
|
"LabelNo": "Nein",
|
||||||
@@ -188,26 +199,27 @@
|
|||||||
"LabelProgress": "Fortschritt",
|
"LabelProgress": "Fortschritt",
|
||||||
"LabelPubDate": "Veröffentlichungsdatum",
|
"LabelPubDate": "Veröffentlichungsdatum",
|
||||||
"LabelPublishYear": "Jahr",
|
"LabelPublishYear": "Jahr",
|
||||||
"LabelRead": "Lesen",
|
|
||||||
"LabelReadAgain": "Erneut lesen",
|
|
||||||
"LabelRecentlyAdded": "Kürzlich hinzugefügt",
|
|
||||||
"LabelRecentSeries": "Aktuelle Serien",
|
|
||||||
"LabelRemoveFromPlaylist": "Remove from Playlist",
|
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Benutzerdefinierte Eigentümer-E-Mail",
|
"LabelRSSFeedCustomOwnerEmail": "Benutzerdefinierte Eigentümer-E-Mail",
|
||||||
"LabelRSSFeedCustomOwnerName": "Benutzerdefinierter Name des Eigentümers",
|
"LabelRSSFeedCustomOwnerName": "Benutzerdefinierter Name des Eigentümers",
|
||||||
"LabelRSSFeedPreventIndexing": "Indizierung verhindern",
|
"LabelRSSFeedPreventIndexing": "Indizierung verhindern",
|
||||||
"LabelRSSFeedSlug": "RSS Feed Schlagwort",
|
"LabelRSSFeedSlug": "RSS-Feed-Schlagwort",
|
||||||
|
"LabelRandomly": "Zufällig",
|
||||||
|
"LabelRead": "Lesen",
|
||||||
|
"LabelReadAgain": "Noch einmal Lesen",
|
||||||
|
"LabelRecentSeries": "Aktuelle Serien",
|
||||||
|
"LabelRecentlyAdded": "Kürzlich hinzugefügt",
|
||||||
|
"LabelRemoveFromPlaylist": "Von Wiedergabeliste entfernen",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Vergangene Zeit anhand der Geschwindigkeit skalieren",
|
"LabelScaleElapsedTimeBySpeed": "Vergangene Zeit anhand der Geschwindigkeit skalieren",
|
||||||
"LabelSeason": "Staffel",
|
"LabelSeason": "Staffel",
|
||||||
"LabelSelectADevice": "Wähle ein Gerät",
|
"LabelSelectADevice": "Wähle ein Gerät",
|
||||||
"LabelSeries": "Serien",
|
"LabelSeries": "Serien",
|
||||||
"LabelServerAddress": "Server Adresse",
|
"LabelServerAddress": "Serveradresse",
|
||||||
"LabelSetEbookAsPrimary": "Als Hauptbuch setzen",
|
"LabelSetEbookAsPrimary": "Als Hauptbuch setzen",
|
||||||
"LabelSetEbookAsSupplementary": "Als Ergänzung setzen",
|
"LabelSetEbookAsSupplementary": "Als Ergänzung setzen",
|
||||||
"LabelShakeSensitivity": "Schüttel-Empfindlichkeit",
|
"LabelShakeSensitivity": "Schüttel-Empfindlichkeit",
|
||||||
"LabelShowAll": "Alles anzeigen",
|
"LabelShowAll": "Alles anzeigen",
|
||||||
"LabelSize": "Größe",
|
"LabelSize": "Größe",
|
||||||
"LabelSleepTimer": "Sleep-Timer",
|
"LabelSleepTimer": "Schlummerfunktion",
|
||||||
"LabelStart": "Start",
|
"LabelStart": "Start",
|
||||||
"LabelStartTime": "Startzeit",
|
"LabelStartTime": "Startzeit",
|
||||||
"LabelStatsBestDay": "Bester Tag",
|
"LabelStatsBestDay": "Bester Tag",
|
||||||
@@ -218,14 +230,16 @@
|
|||||||
"LabelStatsItemsFinished": "Gehörte Medien",
|
"LabelStatsItemsFinished": "Gehörte Medien",
|
||||||
"LabelStatsMinutes": "Minuten",
|
"LabelStatsMinutes": "Minuten",
|
||||||
"LabelStatsMinutesListening": "Gehörte Minuten",
|
"LabelStatsMinutesListening": "Gehörte Minuten",
|
||||||
"LabelStatsWeekListening": "Gehörte Wochen",
|
"LabelStatsWeekListening": "Wochenhördauer",
|
||||||
|
"LabelStreamingUsingCellular": "Über mobile Daten streamen",
|
||||||
"LabelTag": "Schlagwort",
|
"LabelTag": "Schlagwort",
|
||||||
"LabelTags": "Schlagwörter",
|
"LabelTags": "Schlagwörter",
|
||||||
"LabelTheme": "Theme",
|
"LabelTheme": "Farbschema",
|
||||||
"LabelThemeDark": "Dunkel",
|
"LabelThemeDark": "Dunkel",
|
||||||
"LabelThemeLight": "Hell",
|
"LabelThemeLight": "Hell",
|
||||||
"LabelTimeRemaining": "{0} verbleibend",
|
"LabelTimeRemaining": "{0} verbleibend",
|
||||||
"LabelTitle": "Titel",
|
"LabelTitle": "Titel",
|
||||||
|
"LabelTotalSize": "Gesamtegröße",
|
||||||
"LabelTotalTrack": "Gesamtanzahl Titel",
|
"LabelTotalTrack": "Gesamtanzahl Titel",
|
||||||
"LabelTracks": "Titel",
|
"LabelTracks": "Titel",
|
||||||
"LabelType": "Typ",
|
"LabelType": "Typ",
|
||||||
@@ -245,18 +259,20 @@
|
|||||||
"MessageConfirmDeleteLocalEpisode": "Soll die lokale Episode \"{0}\" von deinem Gerät entfernt werden? Die Datei auf dem Server bleibt davon unberührt.",
|
"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.",
|
"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?",
|
"MessageConfirmDiscardProgress": "Bist du sicher, dass du deinen Fortschritt zurücksetzen willst?",
|
||||||
|
"MessageConfirmDownloadUsingCellular": "Du bist dabei, über mobile Daten herunterzuladen. Dies kann zu Gebühren deines Mobilfunkanbieters führen. Möchtest du fortfahren?",
|
||||||
"MessageConfirmMarkAsFinished": "Bist du sicher, dass du diesen Artikel als beendet markieren willst?",
|
"MessageConfirmMarkAsFinished": "Bist du sicher, dass du diesen Artikel als beendet markieren willst?",
|
||||||
"MessageConfirmRemoveBookmark": "Bist du sicher, dass du das Lesezeichen entfernen willst?",
|
"MessageConfirmRemoveBookmark": "Bist du sicher, dass du das Lesezeichen entfernen willst?",
|
||||||
|
"MessageConfirmStreamingUsingCellular": "Du bist dabei, über mobile Daten zu streamen. Dies kann zu Gebühren deines Mobilfunkanbieters führen. Möchtest du fortfahren?",
|
||||||
"MessageDiscardProgress": "Fortschritt verwerfen",
|
"MessageDiscardProgress": "Fortschritt verwerfen",
|
||||||
"MessageDownloadCompleteProcessing": "Download abgeschlossen. Verarbeite...",
|
"MessageDownloadCompleteProcessing": "Download abgeschlossen. Wird verarbeitet …",
|
||||||
"MessageDownloading": "Herunterladen...",
|
"MessageDownloading": "Wird heruntergeladen …",
|
||||||
"MessageDownloadingEpisode": "Episode herunterladen",
|
"MessageDownloadingEpisode": "Episode herunterladen",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} Episode(n) in der Warteschlange zum Herunterladen",
|
"MessageEpisodesQueuedForDownload": "{0} Episode(n) in der Warteschlange zum Herunterladen",
|
||||||
"MessageFeedURLWillBe": "Feed-URL wird {0} sein",
|
"MessageFeedURLWillBe": "Feed-URL wird {0} sein",
|
||||||
"MessageFetching": "Abrufen...",
|
"MessageFetching": "Wird abgerufen …",
|
||||||
"MessageFollowTheProjectOnGithub": "Folge dem Projekt auf Github",
|
"MessageFollowTheProjectOnGithub": "Folge dem Projekt auf GitHub",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Element-Download abgeschlossen, aber Bibliothekselement kann nicht erstellt werden",
|
"MessageItemDownloadCompleteFailedToCreate": "Element-Download abgeschlossen, aber Bibliothekselement kann nicht erstellt werden",
|
||||||
"MessageLoading": "Laden...",
|
"MessageLoading": "Wird geladen …",
|
||||||
"MessageLoadingServerData": "Lade Server Daten...",
|
"MessageLoadingServerData": "Lade Server Daten...",
|
||||||
"MessageMarkAsFinished": "Als beendet markieren",
|
"MessageMarkAsFinished": "Als beendet markieren",
|
||||||
"MessageMediaLinkedToADifferentServer": "Die Medien sind mit einem Audiobookshelf-Server mit einer anderen Adresse ({0}) verknüpft. Der Fortschritt wird synchronisiert, wenn eine Verbindung zu dieser Serveradresse besteht.",
|
"MessageMediaLinkedToADifferentServer": "Die Medien sind mit einem Audiobookshelf-Server mit einer anderen Adresse ({0}) verknüpft. Der Fortschritt wird synchronisiert, wenn eine Verbindung zu dieser Serveradresse besteht.",
|
||||||
@@ -272,25 +288,30 @@
|
|||||||
"MessageNoMediaFolders": "Keine Medien Ordner",
|
"MessageNoMediaFolders": "Keine Medien Ordner",
|
||||||
"MessageNoNetworkConnection": "Keine Netzwerkverbindung",
|
"MessageNoNetworkConnection": "Keine Netzwerkverbindung",
|
||||||
"MessageNoPodcastsFound": "Keine Podcasts gefunden",
|
"MessageNoPodcastsFound": "Keine Podcasts gefunden",
|
||||||
"MessageNoSeries": "No series",
|
"MessageNoSeries": "Keine Serie",
|
||||||
"MessageNoUpdatesWereNecessary": "Keine Aktualisierungen waren notwendig",
|
"MessageNoUpdatesWereNecessary": "Keine Aktualisierungen waren notwendig",
|
||||||
"MessageNoUserPlaylists": "Keine Wiedergabelisten vorhanden",
|
"MessageNoUserPlaylists": "Keine Wiedergabelisten vorhanden",
|
||||||
"MessageReportBugsAndContribute": "Fehler melden, Funktionen anfordern und mitwirken",
|
"MessageReportBugsAndContribute": "Fehler melden, Funktionen anfordern und mitwirken",
|
||||||
|
"MessageSeriesAlreadyDownloaded": "Du hast bereits alle Bücher in dieser Serie heruntergeladen.",
|
||||||
|
"MessageSeriesDownloadConfirm": "Lade {0} Bücher mit {1} Daten, zusammen {2}, in den Ordner {3} herunter?",
|
||||||
|
"MessageSeriesDownloadConfirmIos": "Lade {0} Bücher mit {1} Daten, zusammen {2}, herunter?",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket verbunden über getaktetes Mobilfunknetz",
|
"MessageSocketConnectedOverMeteredCellular": "Socket verbunden über getaktetes Mobilfunknetz",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket verbunden über getaktetes WLAN",
|
"MessageSocketConnectedOverMeteredWifi": "Socket verbunden über getaktetes WLAN",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Socket verbunden über ungetaktetes Mobilfunknetz",
|
"MessageSocketConnectedOverUnmeteredCellular": "Socket verbunden über ungetaktetes Mobilfunknetz",
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Socket verbunden über ungetaktetes Mobilfunknetz",
|
"MessageSocketConnectedOverUnmeteredWifi": "Socket verbunden über ungetaktetes Mobilfunknetz",
|
||||||
"MessageSocketNotConnected": "Socket nicht verbunden",
|
"MessageSocketNotConnected": "Socket nicht verbunden",
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Warnung: Die meisten Podcast-Apps verlangen, dass die URL des RSS-Feeds HTTPS verwendet.",
|
"NoteRSSFeedPodcastAppsHttps": "Warnung: Die meisten Podcast-Apps verlangen, dass die URL des RSS-Feeds HTTPS verwendet",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Warnung: 1 oder mehrere deiner Episoden haben kein Veröffentlichungsdatum. Einige Podcast-Apps verlangen dies.",
|
"NoteRSSFeedPodcastAppsPubDate": "Warnung: 1 oder mehrere deiner Episoden haben kein Veröffentlichungsdatum. Einige Podcast-Apps verlangen dies.",
|
||||||
"ToastBookmarkCreateFailed": "Lesezeichen konnte nicht erstellt werden",
|
"ToastBookmarkCreateFailed": "Lesezeichen konnte nicht erstellt werden",
|
||||||
"ToastBookmarkRemoveFailed": "Lesezeichen konnte nicht gelöscht werden",
|
"ToastBookmarkRemoveFailed": "Lesezeichen konnte nicht entfernt werden",
|
||||||
"ToastBookmarkUpdateFailed": "Lesezeichenaktualisierung fehlgeschlagen",
|
"ToastBookmarkUpdateFailed": "Lesezeichenaktualisierung fehlgeschlagen",
|
||||||
"ToastItemMarkedAsFinishedFailed": "Fehler bei der Markierung des Mediums als \"Beendet\"",
|
"ToastDownloadNotAllowedOnCellular": "Das Herunterladen über mobile Daten ist nicht erlaubt",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "Fehler bei der Markierung des Mediums als \"Nicht Beendet\"",
|
"ToastItemMarkedAsFinishedFailed": "Fehler bei der Markierung des Artikels als \"Beendet\"",
|
||||||
|
"ToastItemMarkedAsNotFinishedFailed": "Fehler bei der Markierung des Artikels als \"Nicht Beendet\"",
|
||||||
"ToastPlaylistCreateFailed": "Erstellen der Wiedergabeliste fehlgeschlagen",
|
"ToastPlaylistCreateFailed": "Erstellen der Wiedergabeliste fehlgeschlagen",
|
||||||
"ToastPodcastCreateFailed": "Podcast konnte nicht erstellt werden",
|
"ToastPodcastCreateFailed": "Podcast konnte nicht erstellt werden",
|
||||||
"ToastPodcastCreateSuccess": "Podcast erstellt",
|
"ToastPodcastCreateSuccess": "Podcast erstellt",
|
||||||
"ToastRSSFeedCloseFailed": "RSS-Feed konnte nicht geschlossen werden",
|
"ToastRSSFeedCloseFailed": "RSS-Feed konnte nicht geschlossen werden",
|
||||||
"ToastRSSFeedCloseSuccess": "RSS-Feed geschlossen"
|
"ToastRSSFeedCloseSuccess": "RSS-Feed geschlossen",
|
||||||
}
|
"ToastStreamingNotAllowedOnCellular": "Das Streamen über mobile Daten ist nicht erlaubt"
|
||||||
|
}
|
||||||
|
|||||||
+31
-10
@@ -33,6 +33,7 @@
|
|||||||
"ButtonOverride": "Override",
|
"ButtonOverride": "Override",
|
||||||
"ButtonPause": "Pause",
|
"ButtonPause": "Pause",
|
||||||
"ButtonPlay": "Play",
|
"ButtonPlay": "Play",
|
||||||
|
"ButtonPlayEpisode": "Play Episode",
|
||||||
"ButtonPlaying": "Playing",
|
"ButtonPlaying": "Playing",
|
||||||
"ButtonPlaylists": "Playlists",
|
"ButtonPlaylists": "Playlists",
|
||||||
"ButtonRead": "Read",
|
"ButtonRead": "Read",
|
||||||
@@ -56,6 +57,7 @@
|
|||||||
"HeaderCollection": "Collection",
|
"HeaderCollection": "Collection",
|
||||||
"HeaderCollectionItems": "Collection Items",
|
"HeaderCollectionItems": "Collection Items",
|
||||||
"HeaderConnectionStatus": "Connection Status",
|
"HeaderConnectionStatus": "Connection Status",
|
||||||
|
"HeaderDataSettings": "Data Settings",
|
||||||
"HeaderDetails": "Details",
|
"HeaderDetails": "Details",
|
||||||
"HeaderDownloads": "Downloads",
|
"HeaderDownloads": "Downloads",
|
||||||
"HeaderEbookFiles": "Ebook Files",
|
"HeaderEbookFiles": "Ebook Files",
|
||||||
@@ -82,11 +84,13 @@
|
|||||||
"HeaderTableOfContents": "Table of Contents",
|
"HeaderTableOfContents": "Table of Contents",
|
||||||
"HeaderUserInterfaceSettings": "User Interface Settings",
|
"HeaderUserInterfaceSettings": "User Interface Settings",
|
||||||
"HeaderYourStats": "Your Stats",
|
"HeaderYourStats": "Your Stats",
|
||||||
|
"LabelAddToPlaylist": "Add to Playlist",
|
||||||
"LabelAdded": "Added",
|
"LabelAdded": "Added",
|
||||||
"LabelAddedAt": "Added At",
|
"LabelAddedAt": "Added At",
|
||||||
"LabelAddToPlaylist": "Add to Playlist",
|
|
||||||
"LabelAll": "All",
|
"LabelAll": "All",
|
||||||
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
|
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
|
||||||
|
"LabelAlways": "Always",
|
||||||
|
"LabelAskConfirmation": "Ask for confirmation",
|
||||||
"LabelAuthor": "Author",
|
"LabelAuthor": "Author",
|
||||||
"LabelAuthorFirstLast": "Author (First Last)",
|
"LabelAuthorFirstLast": "Author (First Last)",
|
||||||
"LabelAuthorLastFirst": "Author (Last, First)",
|
"LabelAuthorLastFirst": "Author (Last, First)",
|
||||||
@@ -98,8 +102,8 @@
|
|||||||
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
|
"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.",
|
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
|
||||||
"LabelBooks": "Books",
|
"LabelBooks": "Books",
|
||||||
"LabelChapters": "Chapters",
|
|
||||||
"LabelChapterTrack": "Chapter Track",
|
"LabelChapterTrack": "Chapter Track",
|
||||||
|
"LabelChapters": "Chapters",
|
||||||
"LabelClosePlayer": "Close player",
|
"LabelClosePlayer": "Close player",
|
||||||
"LabelCollapseSeries": "Collapse Series",
|
"LabelCollapseSeries": "Collapse Series",
|
||||||
"LabelComplete": "Complete",
|
"LabelComplete": "Complete",
|
||||||
@@ -119,6 +123,7 @@
|
|||||||
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
|
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
|
||||||
"LabelDiscover": "Discover",
|
"LabelDiscover": "Discover",
|
||||||
"LabelDownload": "Download",
|
"LabelDownload": "Download",
|
||||||
|
"LabelDownloadUsingCellular": "Download using Cellular",
|
||||||
"LabelDownloaded": "Downloaded",
|
"LabelDownloaded": "Downloaded",
|
||||||
"LabelDuration": "Duration",
|
"LabelDuration": "Duration",
|
||||||
"LabelEbook": "Ebook",
|
"LabelEbook": "Ebook",
|
||||||
@@ -137,6 +142,7 @@
|
|||||||
"LabelFilename": "Filename",
|
"LabelFilename": "Filename",
|
||||||
"LabelFinished": "Finished",
|
"LabelFinished": "Finished",
|
||||||
"LabelFolder": "Folder",
|
"LabelFolder": "Folder",
|
||||||
|
"LabelFontBoldness": "Font Boldness",
|
||||||
"LabelFontScale": "Font scale",
|
"LabelFontScale": "Font scale",
|
||||||
"LabelGenre": "Genre",
|
"LabelGenre": "Genre",
|
||||||
"LabelGenres": "Genres",
|
"LabelGenres": "Genres",
|
||||||
@@ -146,8 +152,8 @@
|
|||||||
"LabelHeavy": "Heavy",
|
"LabelHeavy": "Heavy",
|
||||||
"LabelHigh": "High",
|
"LabelHigh": "High",
|
||||||
"LabelHost": "Host",
|
"LabelHost": "Host",
|
||||||
"LabelIncomplete": "Incomplete",
|
|
||||||
"LabelInProgress": "In Progress",
|
"LabelInProgress": "In Progress",
|
||||||
|
"LabelIncomplete": "Incomplete",
|
||||||
"LabelInternalAppStorage": "Internal App Storage",
|
"LabelInternalAppStorage": "Internal App Storage",
|
||||||
"LabelJumpBackwardsTime": "Jump backwards time",
|
"LabelJumpBackwardsTime": "Jump backwards time",
|
||||||
"LabelJumpForwardsTime": "Jump forwards time",
|
"LabelJumpForwardsTime": "Jump forwards time",
|
||||||
@@ -170,6 +176,11 @@
|
|||||||
"LabelName": "Name",
|
"LabelName": "Name",
|
||||||
"LabelNarrator": "Narrator",
|
"LabelNarrator": "Narrator",
|
||||||
"LabelNarrators": "Narrators",
|
"LabelNarrators": "Narrators",
|
||||||
|
"LabelNavigateWithVolume": "Navigate with volume keys",
|
||||||
|
"LabelNavigateWithVolumeDisabled": "Off",
|
||||||
|
"LabelNavigateWithVolumeEnabled": "On",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "Mirrored",
|
||||||
|
"LabelNever": "Never",
|
||||||
"LabelNewestAuthors": "Newest Authors",
|
"LabelNewestAuthors": "Newest Authors",
|
||||||
"LabelNewestEpisodes": "Newest Episodes",
|
"LabelNewestEpisodes": "Newest Episodes",
|
||||||
"LabelNo": "No",
|
"LabelNo": "No",
|
||||||
@@ -188,15 +199,16 @@
|
|||||||
"LabelProgress": "Progress",
|
"LabelProgress": "Progress",
|
||||||
"LabelPubDate": "Pub Date",
|
"LabelPubDate": "Pub Date",
|
||||||
"LabelPublishYear": "Publish Year",
|
"LabelPublishYear": "Publish Year",
|
||||||
"LabelRead": "Read",
|
|
||||||
"LabelReadAgain": "Read Again",
|
|
||||||
"LabelRecentlyAdded": "Recently Added",
|
|
||||||
"LabelRecentSeries": "Recent Series",
|
|
||||||
"LabelRemoveFromPlaylist": "Remove from Playlist",
|
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Custom owner Email",
|
"LabelRSSFeedCustomOwnerEmail": "Custom owner Email",
|
||||||
"LabelRSSFeedCustomOwnerName": "Custom owner Name",
|
"LabelRSSFeedCustomOwnerName": "Custom owner Name",
|
||||||
"LabelRSSFeedPreventIndexing": "Prevent Indexing",
|
"LabelRSSFeedPreventIndexing": "Prevent Indexing",
|
||||||
"LabelRSSFeedSlug": "RSS Feed Slug",
|
"LabelRSSFeedSlug": "RSS Feed Slug",
|
||||||
|
"LabelRandomly": "Randomly",
|
||||||
|
"LabelRead": "Read",
|
||||||
|
"LabelReadAgain": "Read Again",
|
||||||
|
"LabelRecentSeries": "Recent Series",
|
||||||
|
"LabelRecentlyAdded": "Recently Added",
|
||||||
|
"LabelRemoveFromPlaylist": "Remove from Playlist",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
|
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
|
||||||
"LabelSeason": "Season",
|
"LabelSeason": "Season",
|
||||||
"LabelSelectADevice": "Select a device",
|
"LabelSelectADevice": "Select a device",
|
||||||
@@ -219,6 +231,7 @@
|
|||||||
"LabelStatsMinutes": "minutes",
|
"LabelStatsMinutes": "minutes",
|
||||||
"LabelStatsMinutesListening": "Minutes Listening",
|
"LabelStatsMinutesListening": "Minutes Listening",
|
||||||
"LabelStatsWeekListening": "Week Listening",
|
"LabelStatsWeekListening": "Week Listening",
|
||||||
|
"LabelStreamingUsingCellular": "Streaming using Cellular",
|
||||||
"LabelTag": "Tag",
|
"LabelTag": "Tag",
|
||||||
"LabelTags": "Tags",
|
"LabelTags": "Tags",
|
||||||
"LabelTheme": "Theme",
|
"LabelTheme": "Theme",
|
||||||
@@ -226,6 +239,7 @@
|
|||||||
"LabelThemeLight": "Light",
|
"LabelThemeLight": "Light",
|
||||||
"LabelTimeRemaining": "{0} remaining",
|
"LabelTimeRemaining": "{0} remaining",
|
||||||
"LabelTitle": "Title",
|
"LabelTitle": "Title",
|
||||||
|
"LabelTotalSize": "Total Size",
|
||||||
"LabelTotalTrack": "Total Track",
|
"LabelTotalTrack": "Total Track",
|
||||||
"LabelTracks": "Tracks",
|
"LabelTracks": "Tracks",
|
||||||
"LabelType": "Type",
|
"LabelType": "Type",
|
||||||
@@ -245,8 +259,10 @@
|
|||||||
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.",
|
"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.",
|
"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?",
|
"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?",
|
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
|
||||||
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
|
"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",
|
"MessageDiscardProgress": "Discard Progress",
|
||||||
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
|
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
|
||||||
"MessageDownloading": "Downloading...",
|
"MessageDownloading": "Downloading...",
|
||||||
@@ -276,6 +292,9 @@
|
|||||||
"MessageNoUpdatesWereNecessary": "No updates were necessary",
|
"MessageNoUpdatesWereNecessary": "No updates were necessary",
|
||||||
"MessageNoUserPlaylists": "You have no playlists",
|
"MessageNoUserPlaylists": "You have no playlists",
|
||||||
"MessageReportBugsAndContribute": "Report bugs, request features, and contribute on",
|
"MessageReportBugsAndContribute": "Report bugs, request features, and contribute on",
|
||||||
|
"MessageSeriesAlreadyDownloaded": "You have already downloaded all books in this series.",
|
||||||
|
"MessageSeriesDownloadConfirm": "Download missing {0} book(s) with {1} file(s), totaling {2} to folder {3}?",
|
||||||
|
"MessageSeriesDownloadConfirmIos": "Download missing {0} book(s) with {1} file(s), totaling {2}?",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket connected over metered cellular",
|
"MessageSocketConnectedOverMeteredCellular": "Socket connected over metered cellular",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered wifi",
|
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered wifi",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Socket connected over unmetered cellular",
|
"MessageSocketConnectedOverUnmeteredCellular": "Socket connected over unmetered cellular",
|
||||||
@@ -286,11 +305,13 @@
|
|||||||
"ToastBookmarkCreateFailed": "Failed to create bookmark",
|
"ToastBookmarkCreateFailed": "Failed to create bookmark",
|
||||||
"ToastBookmarkRemoveFailed": "Failed to remove bookmark",
|
"ToastBookmarkRemoveFailed": "Failed to remove bookmark",
|
||||||
"ToastBookmarkUpdateFailed": "Failed to update bookmark",
|
"ToastBookmarkUpdateFailed": "Failed to update bookmark",
|
||||||
|
"ToastDownloadNotAllowedOnCellular": "Downloading is not allowed on cellular data",
|
||||||
"ToastItemMarkedAsFinishedFailed": "Failed to mark as Finished",
|
"ToastItemMarkedAsFinishedFailed": "Failed to mark as Finished",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "Failed to mark as Not Finished",
|
"ToastItemMarkedAsNotFinishedFailed": "Failed to mark as Not Finished",
|
||||||
"ToastPlaylistCreateFailed": "Failed to create playlist",
|
"ToastPlaylistCreateFailed": "Failed to create playlist",
|
||||||
"ToastPodcastCreateFailed": "Failed to create podcast",
|
"ToastPodcastCreateFailed": "Failed to create podcast",
|
||||||
"ToastPodcastCreateSuccess": "Podcast created successfully",
|
"ToastPodcastCreateSuccess": "Podcast created successfully",
|
||||||
"ToastRSSFeedCloseFailed": "Failed to close RSS feed",
|
"ToastRSSFeedCloseFailed": "Failed to close RSS feed",
|
||||||
"ToastRSSFeedCloseSuccess": "RSS feed closed"
|
"ToastRSSFeedCloseSuccess": "RSS feed closed",
|
||||||
}
|
"ToastStreamingNotAllowedOnCellular": "Streaming is not allowed on cellular data"
|
||||||
|
}
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
{}
|
||||||
+205
-184
@@ -1,213 +1,225 @@
|
|||||||
{
|
{
|
||||||
"ButtonAdd": "Agregar",
|
"ButtonAdd": "Agregar",
|
||||||
"ButtonAddNewServer": "Add New Server",
|
"ButtonAddNewServer": "Agregar nuevo servidor",
|
||||||
"ButtonAuthors": "Autores",
|
"ButtonAuthors": "Autores",
|
||||||
"ButtonBack": "Back",
|
"ButtonBack": "Atrás",
|
||||||
"ButtonCancel": "Cancelar",
|
"ButtonCancel": "Cancelar",
|
||||||
"ButtonCancelTimer": "Cancel Timer",
|
"ButtonCancelTimer": "Cancelar el temporizador",
|
||||||
"ButtonClearFilter": "Quitar Filtros",
|
"ButtonClearFilter": "Quitar filtros",
|
||||||
"ButtonCloseFeed": "Cerrar Fuente",
|
"ButtonCloseFeed": "Cerrar fuente",
|
||||||
"ButtonCollections": "Colecciones",
|
"ButtonCollections": "Colecciones",
|
||||||
"ButtonConnect": "Connect",
|
"ButtonConnect": "Conectar",
|
||||||
"ButtonConnectToServer": "Connect to Server",
|
"ButtonConnectToServer": "Conectar al servidor",
|
||||||
"ButtonCreate": "Crear",
|
"ButtonCreate": "Crear",
|
||||||
"ButtonCreateBookmark": "Create Bookmark",
|
"ButtonCreateBookmark": "Crear marcador",
|
||||||
"ButtonCreateNewPlaylist": "Create New Playlist",
|
"ButtonCreateNewPlaylist": "Crear nueva lista de reproducción",
|
||||||
"ButtonDelete": "Eliminar",
|
"ButtonDelete": "Eliminar",
|
||||||
"ButtonDeleteLocalEpisode": "Delete local episode",
|
"ButtonDeleteLocalEpisode": "Borrar episodio local",
|
||||||
"ButtonDeleteLocalFile": "Delete local file",
|
"ButtonDeleteLocalFile": "Borrar archivo local",
|
||||||
"ButtonDeleteLocalItem": "Delete local item",
|
"ButtonDeleteLocalItem": "Borrar elemento local",
|
||||||
"ButtonDisableAutoTimer": "Disable Auto Timer",
|
"ButtonDisableAutoTimer": "Desactivar temporizador automático",
|
||||||
"ButtonDisconnect": "Disconnect",
|
"ButtonDisconnect": "Desconectar",
|
||||||
"ButtonGoToWebClient": "Go to Web Client",
|
"ButtonGoToWebClient": "Ir al cliente web",
|
||||||
"ButtonHistory": "History",
|
"ButtonHistory": "Historial",
|
||||||
"ButtonHome": "Inicio",
|
"ButtonHome": "Inicio",
|
||||||
"ButtonIssues": "Problemas",
|
"ButtonIssues": "Problemas",
|
||||||
"ButtonLatest": "Últimos",
|
"ButtonLatest": "Últimos",
|
||||||
"ButtonLibrary": "Biblioteca",
|
"ButtonLibrary": "Biblioteca",
|
||||||
"ButtonLocalMedia": "Local Media",
|
"ButtonLocalMedia": "Medios locales",
|
||||||
"ButtonManageLocalFiles": "Manage Local Files",
|
"ButtonManageLocalFiles": "Gestionar archivos locales",
|
||||||
"ButtonNewFolder": "New Folder",
|
"ButtonNewFolder": "Nueva carpeta",
|
||||||
"ButtonNextEpisode": "Next Episode",
|
"ButtonNextEpisode": "Próximo episodio",
|
||||||
"ButtonOpenFeed": "Abrir Fuente",
|
"ButtonOpenFeed": "Abrir fuente",
|
||||||
"ButtonOverride": "Override",
|
"ButtonOverride": "Sustituir",
|
||||||
"ButtonPause": "Pause",
|
"ButtonPause": "Pausar",
|
||||||
"ButtonPlay": "Reproducir",
|
"ButtonPlay": "Reproducir",
|
||||||
|
"ButtonPlayEpisode": "Reproducir episodio",
|
||||||
"ButtonPlaying": "Reproduciendo",
|
"ButtonPlaying": "Reproduciendo",
|
||||||
"ButtonPlaylists": "Listas de Reproducción",
|
"ButtonPlaylists": "Listas de reproducción",
|
||||||
"ButtonRead": "Leer",
|
"ButtonRead": "Leer",
|
||||||
"ButtonRemove": "Remover",
|
"ButtonRemove": "Eliminar",
|
||||||
"ButtonRemoveFromServer": "Remove from Server",
|
"ButtonRemoveFromServer": "Eliminar del Servidor",
|
||||||
"ButtonSave": "Guardar",
|
"ButtonSave": "Guardar",
|
||||||
"ButtonSaveOrder": "Save Order",
|
"ButtonSaveOrder": "Guardar pedido",
|
||||||
"ButtonSearch": "Buscar",
|
"ButtonSearch": "Buscar",
|
||||||
"ButtonSendEbookToDevice": "Send Ebook to Device",
|
"ButtonSendEbookToDevice": "Enviar libro al dispositivo",
|
||||||
"ButtonSeries": "Series",
|
"ButtonSeries": "Series",
|
||||||
"ButtonSetTimer": "Set Timer",
|
"ButtonSetTimer": "Ajustar el temporizador",
|
||||||
"ButtonStream": "Stream",
|
"ButtonStream": "En directo",
|
||||||
"ButtonSubmit": "Enviar",
|
"ButtonSubmit": "Enviar",
|
||||||
"ButtonSwitchServerUser": "Switch Server/User",
|
"ButtonSwitchServerUser": "Cambiar servidor/usuario",
|
||||||
"ButtonUserStats": "User Stats",
|
"ButtonUserStats": "Estadísticas de usuario",
|
||||||
"ButtonYes": "Aceptar",
|
"ButtonYes": "Sí",
|
||||||
"HeaderAccount": "Cuenta",
|
"HeaderAccount": "Cuenta",
|
||||||
"HeaderAdvanced": "Avanzado",
|
"HeaderAdvanced": "Avanzado",
|
||||||
"HeaderAudioTracks": "Pistas de Audio",
|
"HeaderAudioTracks": "Pistas de audio",
|
||||||
"HeaderChapters": "Capítulos",
|
"HeaderChapters": "Capítulos",
|
||||||
"HeaderCollection": "Colección",
|
"HeaderCollection": "Colección",
|
||||||
"HeaderCollectionItems": "Elementos en la Colección",
|
"HeaderCollectionItems": "Elementos en la colección",
|
||||||
"HeaderConnectionStatus": "Connection Status",
|
"HeaderConnectionStatus": "Estado de la conexión",
|
||||||
|
"HeaderDataSettings": "Ajustes de los datos",
|
||||||
"HeaderDetails": "Detalles",
|
"HeaderDetails": "Detalles",
|
||||||
"HeaderDownloads": "Downloads",
|
"HeaderDownloads": "Descargas",
|
||||||
"HeaderEbookFiles": "Archivos de Ebook",
|
"HeaderEbookFiles": "Archivos de libros digitales",
|
||||||
"HeaderEpisodes": "Episodios",
|
"HeaderEpisodes": "Episodios",
|
||||||
"HeaderEreaderSettings": "Opciones de Ereader",
|
"HeaderEreaderSettings": "Ajustes del lector",
|
||||||
"HeaderLatestEpisodes": "Últimos Episodios",
|
"HeaderLatestEpisodes": "Últimos episodios",
|
||||||
"HeaderLibraries": "Bibliotecas",
|
"HeaderLibraries": "Bibliotecas",
|
||||||
"HeaderLocalFolders": "Local Folders",
|
"HeaderLocalFolders": "Carpetas locales",
|
||||||
"HeaderLocalLibraryItems": "Local Library Items",
|
"HeaderLocalLibraryItems": "Elementos de la biblioteca local",
|
||||||
"HeaderNewPlaylist": "New Playlist",
|
"HeaderNewPlaylist": "Nueva lista de reproducción",
|
||||||
"HeaderOpenRSSFeed": "Abrir fuente RSS",
|
"HeaderOpenRSSFeed": "Abrir fuente RSS",
|
||||||
"HeaderPlaybackSettings": "Playback Settings",
|
"HeaderPlaybackSettings": "Ajustes de reproducción",
|
||||||
"HeaderPlaylist": "Lista de Reproducción",
|
"HeaderPlaylist": "Lista de reproducción",
|
||||||
"HeaderPlaylistItems": "Elementos de Lista de Reproducción",
|
"HeaderPlaylistItems": "Elementos de lista de reproducción",
|
||||||
"HeaderRSSFeed": "RSS Feed",
|
"HeaderRSSFeed": "Fuente RSS",
|
||||||
"HeaderRSSFeedGeneral": "Detalles RSS",
|
"HeaderRSSFeedGeneral": "Detalles RSS",
|
||||||
"HeaderRSSFeedIsOpen": "Fuente RSS esta abierta",
|
"HeaderRSSFeedIsOpen": "Fuente RSS está abierta",
|
||||||
"HeaderSelectDownloadLocation": "Select Download Location",
|
"HeaderSelectDownloadLocation": "Seleccionar ubicación de descarga",
|
||||||
"HeaderSettings": "Configuraciones",
|
"HeaderSettings": "Configuraciones",
|
||||||
"HeaderSleepTimer": "Temporizador para Dormir",
|
"HeaderSleepTimer": "Temporizador de apagado",
|
||||||
"HeaderSleepTimerSettings": "Sleep Timer Settings",
|
"HeaderSleepTimerSettings": "Ajustes del temporizador para dormir",
|
||||||
"HeaderStatsMinutesListeningChart": "Minutos Escuchando (Últimos 7 días)",
|
"HeaderStatsMinutesListeningChart": "Minutos escuchando (Últimos 7 días)",
|
||||||
"HeaderStatsRecentSessions": "Sesiones Recientes",
|
"HeaderStatsRecentSessions": "Sesiones recientes",
|
||||||
"HeaderTableOfContents": "Tabla de Contenidos",
|
"HeaderTableOfContents": "Tabla de contenidos",
|
||||||
"HeaderUserInterfaceSettings": "User Interface Settings",
|
"HeaderUserInterfaceSettings": "Ajustes de la interfaz de usuario",
|
||||||
"HeaderYourStats": "Tus Estadísticas",
|
"HeaderYourStats": "Tus estadísticas",
|
||||||
|
"LabelAddToPlaylist": "Añadido a la lista de reproducción",
|
||||||
"LabelAdded": "Añadido",
|
"LabelAdded": "Añadido",
|
||||||
"LabelAddedAt": "Añadido",
|
"LabelAddedAt": "Añadido",
|
||||||
"LabelAddToPlaylist": "Añadido a la Lista de Reproducción",
|
|
||||||
"LabelAll": "Todos",
|
"LabelAll": "Todos",
|
||||||
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
|
"LabelAllowSeekingOnMediaControls": "Permitir la búsqueda de posición en los controles de notificación de medios",
|
||||||
|
"LabelAlways": "Siempre",
|
||||||
|
"LabelAskConfirmation": "Pedir confirmación",
|
||||||
"LabelAuthor": "Autor",
|
"LabelAuthor": "Autor",
|
||||||
"LabelAuthorFirstLast": "Autor (Nombre Apellido)",
|
"LabelAuthorFirstLast": "Autor (Nombre Apellido)",
|
||||||
"LabelAuthorLastFirst": "Autor (Apellido, Nombre)",
|
"LabelAuthorLastFirst": "Autor (Apellido, Nombre)",
|
||||||
"LabelAuthors": "Autores",
|
"LabelAuthors": "Autores",
|
||||||
"LabelAutoDownloadEpisodes": "Descargar Episodios Automáticamente",
|
"LabelAutoDownloadEpisodes": "Descargar episodios automáticamente",
|
||||||
"LabelAutoRewindTime": "Auto rewind time",
|
"LabelAutoRewindTime": "Tiempo de rebobinado automático",
|
||||||
"LabelAutoSleepTimer": "Auto sleep timer",
|
"LabelAutoSleepTimer": "Temporizador de apagado automático",
|
||||||
"LabelAutoSleepTimerAutoRewind": "Auto sleep timer auto rewind",
|
"LabelAutoSleepTimerAutoRewind": "Temporizador de apagado automático con rebobinado automático",
|
||||||
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
|
"LabelAutoSleepTimerAutoRewindHelp": "Cuando el temporizador de auto apagado finaliza, reproducir el elemento nuevamente rebobinará automáticamente tu posición.",
|
||||||
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
|
"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",
|
"LabelBooks": "Libros",
|
||||||
|
"LabelChapterTrack": "Seguimiento de Capítulo",
|
||||||
"LabelChapters": "Capítulos",
|
"LabelChapters": "Capítulos",
|
||||||
"LabelChapterTrack": "Chapter Track",
|
"LabelClosePlayer": "Cerrar reproductor",
|
||||||
"LabelClosePlayer": "Cerrar Reproductor",
|
"LabelCollapseSeries": "Colapsar serie",
|
||||||
"LabelCollapseSeries": "Colapsar Serie",
|
|
||||||
"LabelComplete": "Completo",
|
"LabelComplete": "Completo",
|
||||||
"LabelContinueBooks": "Continue Books",
|
"LabelContinueBooks": "Continuar libros",
|
||||||
"LabelContinueEpisodes": "Continue Episodes",
|
"LabelContinueEpisodes": "Continuar episodios",
|
||||||
"LabelContinueListening": "Continue Listening",
|
"LabelContinueListening": "Seguir escuchando",
|
||||||
"LabelContinueReading": "Continue Reading",
|
"LabelContinueReading": "Continuar leyendo",
|
||||||
"LabelContinueSeries": "Continue Series",
|
"LabelContinueSeries": "Continuar series",
|
||||||
"LabelCustomTime": "Custom time",
|
"LabelCustomTime": "Tiempo personalizado",
|
||||||
"LabelDescription": "Descripción",
|
"LabelDescription": "Descripción",
|
||||||
"LabelDisableAudioFadeOut": "Disable audio fade out",
|
"LabelDisableAudioFadeOut": "Desactivar el fundido de audio",
|
||||||
"LabelDisableAudioFadeOutHelp": "Audio volume will start decreasing when there is less than 1 minute remaining on the sleep timer. Enable this setting to not fade out.",
|
"LabelDisableAudioFadeOutHelp": "El volumen de audio comenzará a disminuir cuando quede menos de 1 minuto en el temporizador de apagado. Habilite este ajuste para que no se desvanezca.",
|
||||||
"LabelDisableAutoRewind": "Disable auto rewind",
|
"LabelDisableAutoRewind": "Desactivar rebobinado automático",
|
||||||
"LabelDisableShakeToReset": "Disable shake to reset",
|
"LabelDisableShakeToReset": "Desactivar agitar para reiniciar",
|
||||||
"LabelDisableShakeToResetHelp": "Shaking your device while the timer is running OR within 2 minutes of the timer expiring will reset the sleep timer. Enable this setting to disable shake to reset.",
|
"LabelDisableShakeToResetHelp": "Si agitas el dispositivo mientras el temporizador está en marcha o en los 2 minutos siguientes a la expiración del temporizador, éste se reiniciará. Habilita esta configuración para desactivar el restablecimiento al agitar.",
|
||||||
"LabelDisableVibrateOnReset": "Disable vibrate on reset",
|
"LabelDisableVibrateOnReset": "Desactivar vibración al reiniciar",
|
||||||
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
|
"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": "Discover",
|
"LabelDiscover": "Descubrir",
|
||||||
"LabelDownload": "Descargar",
|
"LabelDownload": "Descargar",
|
||||||
"LabelDownloaded": "Downloaded",
|
"LabelDownloadUsingCellular": "Descargar usando el móvil",
|
||||||
|
"LabelDownloaded": "Descargado",
|
||||||
"LabelDuration": "Duración",
|
"LabelDuration": "Duración",
|
||||||
"LabelEbook": "Ebook",
|
"LabelEbook": "Libro electrónico",
|
||||||
"LabelEbooks": "Ebooks",
|
"LabelEbooks": "Libros electrónicos",
|
||||||
"LabelEnable": "Habilitar",
|
"LabelEnable": "Habilitar",
|
||||||
"LabelEnableMp3IndexSeeking": "Enable mp3 index seeking",
|
"LabelEnableMp3IndexSeeking": "Activar la búsqueda de índices mp3",
|
||||||
"LabelEnableMp3IndexSeekingHelp": "This setting should only be enabled if you have mp3 files that are not seeking correctly. Inaccurate seeking is most likely due to Variable birate (VBR) MP3 files. This setting will force index seeking, in which a time-to-byte mapping is built as the file is read. In some cases with large MP3 files there will be a delay when seeking towards the end of the file.",
|
"LabelEnableMp3IndexSeekingHelp": "Esta configuración solo debe habilitarse si tienes archivos mp3 que no se están buscando correctamente. La búsqueda inexacta probablemente se deba a archivos MP3 de tasa de bits variable (VBR). Esta configuración forzará la búsqueda de índice, en la que se construye un mapeo de tiempo a bytes mientras se lee el archivo. En algunos casos, con archivos MP3 grandes, puede haber un retraso al buscar hacia el final del archivo.",
|
||||||
"LabelEnd": "Fin",
|
"LabelEnd": "Fin",
|
||||||
"LabelEndOfChapter": "End of Chapter",
|
"LabelEndOfChapter": "Fin del capítulo",
|
||||||
"LabelEndTime": "End time",
|
"LabelEndTime": "Hora de finalización",
|
||||||
"LabelEpisode": "Episodio",
|
"LabelEpisode": "Episodio",
|
||||||
"LabelFeedURL": "Fuente de URL",
|
"LabelFeedURL": "Fuente de URL",
|
||||||
"LabelFile": "Archivo",
|
"LabelFile": "Archivo",
|
||||||
"LabelFileBirthtime": "Archivo Creado en",
|
"LabelFileBirthtime": "Archivo creado en",
|
||||||
"LabelFileModified": "Archivo modificado",
|
"LabelFileModified": "Archivo modificado",
|
||||||
"LabelFilename": "Nombre del Archivo",
|
"LabelFilename": "Nombre del archivo",
|
||||||
"LabelFinished": "Terminado",
|
"LabelFinished": "Terminado",
|
||||||
"LabelFolder": "Carpeta",
|
"LabelFolder": "Carpeta",
|
||||||
"LabelFontScale": "Tamaño de Fuente",
|
"LabelFontBoldness": "Nivel de negrilla en fuente",
|
||||||
"LabelGenre": "Genero",
|
"LabelFontScale": "Tamaño de fuente",
|
||||||
|
"LabelGenre": "Género",
|
||||||
"LabelGenres": "Géneros",
|
"LabelGenres": "Géneros",
|
||||||
"LabelHapticFeedback": "Haptic feedback",
|
"LabelHapticFeedback": "Respuesta táctil",
|
||||||
"LabelHasEbook": "Has ebook",
|
"LabelHasEbook": "Tiene un libro",
|
||||||
"LabelHasSupplementaryEbook": "Has supplementary ebook",
|
"LabelHasSupplementaryEbook": "Tiene un libro complementario",
|
||||||
"LabelHeavy": "Heavy",
|
"LabelHeavy": "Pesado",
|
||||||
"LabelHigh": "High",
|
"LabelHigh": "Alto",
|
||||||
"LabelHost": "Host",
|
"LabelHost": "Host",
|
||||||
|
"LabelInProgress": "En proceso",
|
||||||
"LabelIncomplete": "Incompleto",
|
"LabelIncomplete": "Incompleto",
|
||||||
"LabelInProgress": "En Proceso",
|
"LabelInternalAppStorage": "Almacenamiento interno de aplicaciones",
|
||||||
"LabelInternalAppStorage": "Internal App Storage",
|
"LabelJumpBackwardsTime": "Saltar atrás en el tiempo",
|
||||||
"LabelJumpBackwardsTime": "Jump backwards time",
|
"LabelJumpForwardsTime": "Salto adelante en el tiempo",
|
||||||
"LabelJumpForwardsTime": "Jump forwards time",
|
"LabelLanguage": "Idioma",
|
||||||
"LabelLanguage": "Lenguaje",
|
"LabelLayout": "Diseño",
|
||||||
"LabelLayout": "Layout",
|
"LabelLayoutAuto": "Automático",
|
||||||
"LabelLayoutAuto": "Auto",
|
"LabelLayoutSinglePage": "Página única",
|
||||||
"LabelLayoutSinglePage": "Single page",
|
"LabelLight": "Claro",
|
||||||
"LabelLight": "Light",
|
|
||||||
"LabelLineSpacing": "Interlineado",
|
"LabelLineSpacing": "Interlineado",
|
||||||
"LabelListenAgain": "Listen Again",
|
"LabelListenAgain": "Volver a escuchar",
|
||||||
"LabelLocalBooks": "Local Books",
|
"LabelLocalBooks": "Libros Locales",
|
||||||
"LabelLocalPodcasts": "Local Podcasts",
|
"LabelLocalPodcasts": "Podcasts Locales",
|
||||||
"LabelLockOrientation": "Lock orientation",
|
"LabelLockOrientation": "Bloquear orientación",
|
||||||
"LabelLockPlayer": "Lock Player",
|
"LabelLockPlayer": "Bloquear el reproductor",
|
||||||
"LabelLow": "Low",
|
"LabelLow": "Bajo",
|
||||||
"LabelMediaType": "Tipo de Multimedia",
|
"LabelMediaType": "Tipo de multimedia",
|
||||||
"LabelMedium": "Medium",
|
"LabelMedium": "Medio",
|
||||||
"LabelMore": "Más",
|
"LabelMore": "Más",
|
||||||
"LabelMoreInfo": "Más Información",
|
"LabelMoreInfo": "Más información",
|
||||||
"LabelName": "Nombre",
|
"LabelName": "Nombre",
|
||||||
"LabelNarrator": "Narrador",
|
"LabelNarrator": "Narrador",
|
||||||
"LabelNarrators": "Narradores",
|
"LabelNarrators": "Narradores",
|
||||||
"LabelNewestAuthors": "Newest Authors",
|
"LabelNavigateWithVolume": "Navegar con las teclas de volumen",
|
||||||
"LabelNewestEpisodes": "Newest Episodes",
|
"LabelNavigateWithVolumeDisabled": "Apagar",
|
||||||
|
"LabelNavigateWithVolumeEnabled": "Encender",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "Espejo",
|
||||||
|
"LabelNever": "Nunca",
|
||||||
|
"LabelNewestAuthors": "Autores más recientes",
|
||||||
|
"LabelNewestEpisodes": "Episodios más recientes",
|
||||||
"LabelNo": "No",
|
"LabelNo": "No",
|
||||||
"LabelNotFinished": "No Terminado",
|
"LabelNotFinished": "No terminado",
|
||||||
"LabelNotStarted": "Sin Iniciar",
|
"LabelNotStarted": "Sin iniciar",
|
||||||
"LabelOff": "Off",
|
"LabelOff": "Apagado",
|
||||||
"LabelPassword": "Contraseña",
|
"LabelPassword": "Contraseña",
|
||||||
"LabelPath": "Ruta de Carpeta",
|
"LabelPath": "Ruta de carpeta",
|
||||||
"LabelPlaybackDirect": "Direct",
|
"LabelPlaybackDirect": "Directo",
|
||||||
"LabelPlaybackLocal": "Local",
|
"LabelPlaybackLocal": "Local",
|
||||||
"LabelPlaybackSpeed": "Playback Speed",
|
"LabelPlaybackSpeed": "Velocidad de reproducción",
|
||||||
"LabelPlaybackTranscode": "Transcode",
|
"LabelPlaybackTranscode": "Transcodificar",
|
||||||
"LabelPodcast": "Podcast",
|
"LabelPodcast": "Podcast",
|
||||||
"LabelPodcasts": "Podcasts",
|
"LabelPodcasts": "Podcasts",
|
||||||
"LabelPreventIndexing": "Evite que su fuente sea indexada por los directorios de podcasts de iTunes y Google",
|
"LabelPreventIndexing": "Evite que su fuente sea indexada por los directorios de podcasts de iTunes y Google",
|
||||||
"LabelProgress": "Progreso",
|
"LabelProgress": "Progreso",
|
||||||
"LabelPubDate": "Fecha de Publicación",
|
"LabelPubDate": "Fecha de publicación",
|
||||||
"LabelPublishYear": "Año de Publicación",
|
"LabelPublishYear": "Año de publicación",
|
||||||
"LabelRead": "Leído",
|
"LabelRSSFeedCustomOwnerEmail": "Correo electrónico de dueño personalizado",
|
||||||
"LabelReadAgain": "Read Again",
|
|
||||||
"LabelRecentlyAdded": "Recently Added",
|
|
||||||
"LabelRecentSeries": "Recent Series",
|
|
||||||
"LabelRemoveFromPlaylist": "Remove from Playlist",
|
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Email de dueño personalizado",
|
|
||||||
"LabelRSSFeedCustomOwnerName": "Nombre de dueño personalizado",
|
"LabelRSSFeedCustomOwnerName": "Nombre de dueño personalizado",
|
||||||
"LabelRSSFeedPreventIndexing": "Prevenir Indexado",
|
"LabelRSSFeedPreventIndexing": "Prevenir indexado",
|
||||||
"LabelRSSFeedSlug": "Fuente RSS Slug",
|
"LabelRSSFeedSlug": "Fuente RSS Slug",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
|
"LabelRandomly": "Aleatorio",
|
||||||
|
"LabelRead": "Leído",
|
||||||
|
"LabelReadAgain": "Volver a leer",
|
||||||
|
"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",
|
"LabelSeason": "Temporada",
|
||||||
"LabelSelectADevice": "Select a device",
|
"LabelSelectADevice": "Selecciona un dispositivo",
|
||||||
"LabelSeries": "Series",
|
"LabelSeries": "Series",
|
||||||
"LabelServerAddress": "Server address",
|
"LabelServerAddress": "Dirección del servidor",
|
||||||
"LabelSetEbookAsPrimary": "Establecer como primario",
|
"LabelSetEbookAsPrimary": "Establecer como primario",
|
||||||
"LabelSetEbookAsSupplementary": "Establecer como suplementario",
|
"LabelSetEbookAsSupplementary": "Establecer como suplementario",
|
||||||
"LabelShakeSensitivity": "Shake sensitivity",
|
"LabelShakeSensitivity": "Sensibilidad a la sacudida",
|
||||||
"LabelShowAll": "Mostrar Todos",
|
"LabelShowAll": "Mostrar Todos",
|
||||||
"LabelSize": "Tamaño",
|
"LabelSize": "Tamaño",
|
||||||
"LabelSleepTimer": "Temporizador para Dormir",
|
"LabelSleepTimer": "Temporizador de apagado",
|
||||||
"LabelStart": "Iniciar",
|
"LabelStart": "Iniciar",
|
||||||
"LabelStartTime": "Tiempo de Inicio",
|
"LabelStartTime": "Tiempo de Inicio",
|
||||||
"LabelStatsBestDay": "Mejor Día",
|
"LabelStatsBestDay": "Mejor Día",
|
||||||
@@ -219,6 +231,7 @@
|
|||||||
"LabelStatsMinutes": "minutos",
|
"LabelStatsMinutes": "minutos",
|
||||||
"LabelStatsMinutesListening": "Minutos Escuchando",
|
"LabelStatsMinutesListening": "Minutos Escuchando",
|
||||||
"LabelStatsWeekListening": "Tiempo escuchando en la Semana",
|
"LabelStatsWeekListening": "Tiempo escuchando en la Semana",
|
||||||
|
"LabelStreamingUsingCellular": "Streaming por móvil",
|
||||||
"LabelTag": "Etiqueta",
|
"LabelTag": "Etiqueta",
|
||||||
"LabelTags": "Etiquetas",
|
"LabelTags": "Etiquetas",
|
||||||
"LabelTheme": "Tema",
|
"LabelTheme": "Tema",
|
||||||
@@ -226,71 +239,79 @@
|
|||||||
"LabelThemeLight": "Claro",
|
"LabelThemeLight": "Claro",
|
||||||
"LabelTimeRemaining": "{0} restante",
|
"LabelTimeRemaining": "{0} restante",
|
||||||
"LabelTitle": "Título",
|
"LabelTitle": "Título",
|
||||||
"LabelTotalTrack": "Total Track",
|
"LabelTotalSize": "Tamaño Total",
|
||||||
|
"LabelTotalTrack": "Pista Total",
|
||||||
"LabelTracks": "Pistas",
|
"LabelTracks": "Pistas",
|
||||||
"LabelType": "Tipo",
|
"LabelType": "Tipo",
|
||||||
"LabelUnlockPlayer": "Unlock Player",
|
"LabelUnlockPlayer": "Desbloquear Reproductor",
|
||||||
"LabelUseBookshelfView": "Use bookshelf view",
|
"LabelUseBookshelfView": "Usar la Vista de Estantería",
|
||||||
"LabelUser": "Usuario",
|
"LabelUser": "Usuario",
|
||||||
"LabelUsername": "Nombre de Usuario",
|
"LabelUsername": "Nombre de Usuario",
|
||||||
"LabelVeryHigh": "Very High",
|
"LabelVeryHigh": "Muy Alto",
|
||||||
"LabelVeryLow": "Very Low",
|
"LabelVeryLow": "Muy Bajo",
|
||||||
"LabelYourBookmarks": "Tus Marcadores",
|
"LabelYourBookmarks": "Tus Marcadores",
|
||||||
"LabelYourProgress": "Tu Progreso",
|
"LabelYourProgress": "Tu Progreso",
|
||||||
"MessageAndroid10Downloads": "Android 10 and below will use internal app storage for downloads.",
|
"MessageAndroid10Downloads": "Android 10 e inferiores utilizarán el almacenamiento interno de aplicaciones para las descargas.",
|
||||||
"MessageAttemptingServerConnection": "Attempting server connection...",
|
"MessageAttemptingServerConnection": "Intentando conectar con el servidor...",
|
||||||
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf server not connected",
|
"MessageAudiobookshelfServerNotConnected": "Servidor de Audiobookshelf no conectado",
|
||||||
"MessageAudiobookshelfServerRequired": "<strong>Important!</strong> This app is designed to work with an Audiobookshelf server that you or someone you know is hosting. This app does not provide any content.",
|
"MessageAudiobookshelfServerRequired": "<strong>¡Importante!</strong> Esta aplicación está diseñada para trabajar con un servidor Audiobookshelf que usted o alguien que usted conoce es el anfitrión. Esta aplicación no proporciona ningún contenido.",
|
||||||
"MessageBookshelfEmpty": "Bookshelf empty",
|
"MessageBookshelfEmpty": "Estantería vacía",
|
||||||
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.",
|
"MessageConfirmDeleteLocalEpisode": "¿Eliminar episodio local \"{0}\" de su dispositivo? El archivo en el servidor no se verá afectado.",
|
||||||
"MessageConfirmDeleteLocalFiles": "Remove local files of this item from your device? The files on the server and your progress will be unaffected.",
|
"MessageConfirmDeleteLocalFiles": "¿Eliminar los archivos locales de este elemento de tu dispositivo? Los archivos del servidor y tu progreso no se verán afectados.",
|
||||||
"MessageConfirmDiscardProgress": "Are you sure you want to reset your progress?",
|
"MessageConfirmDiscardProgress": "¿Estás seguro de que quieres reiniciar tu progreso?",
|
||||||
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
|
"MessageConfirmDownloadUsingCellular": "Estas a punto de realizar una descarga utilizando datos móviles. Esto puede incluir cargos de datos del operador. ¿Deseas continuar?",
|
||||||
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
|
"MessageConfirmMarkAsFinished": "¿Está seguro de que desea marcar este artículo como terminado?",
|
||||||
"MessageDiscardProgress": "Discard Progress",
|
"MessageConfirmRemoveBookmark": "¿Estás seguro de que quieres eliminar el marcador?",
|
||||||
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
|
"MessageConfirmStreamingUsingCellular": "Estás a punto de hacer streaming utilizando datos móviles. Esto puede incluir cargos de datos del operador. ¿Deseas continuar?",
|
||||||
"MessageDownloading": "Downloading...",
|
"MessageDiscardProgress": "Descartar Progreso",
|
||||||
|
"MessageDownloadCompleteProcessing": "Descarga Completada. Procesando...",
|
||||||
|
"MessageDownloading": "Descargando...",
|
||||||
"MessageDownloadingEpisode": "Descargando Capitulo",
|
"MessageDownloadingEpisode": "Descargando Capitulo",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} Episodio(s) en cola para descargar",
|
"MessageEpisodesQueuedForDownload": "{0} Episodio(s) en cola para descargar",
|
||||||
"MessageFeedURLWillBe": "URL de la fuente será {0}",
|
"MessageFeedURLWillBe": "URL de la fuente será {0}",
|
||||||
"MessageFetching": "Buscando...",
|
"MessageFetching": "Buscando...",
|
||||||
"MessageFollowTheProjectOnGithub": "Follow the project on Github",
|
"MessageFollowTheProjectOnGithub": "Sigue el proyecto en GitHub",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Item download complete but failed to create library item",
|
"MessageItemDownloadCompleteFailedToCreate": "Se ha completado la descarga del elemento, pero no se ha podido crear el elemento de la biblioteca",
|
||||||
"MessageLoading": "Cargando...",
|
"MessageLoading": "Cargando...",
|
||||||
"MessageLoadingServerData": "Loading server data...",
|
"MessageLoadingServerData": "Cargando datos del servidor...",
|
||||||
"MessageMarkAsFinished": "Marcar como Terminado",
|
"MessageMarkAsFinished": "Marcar como terminado",
|
||||||
"MessageMediaLinkedToADifferentServer": "Media is linked to an Audiobookshelf server on a different address ({0}). Progress will be synced when connected to this server address.",
|
"MessageMediaLinkedToADifferentServer": "El contenido está vinculado a un servidor de Audiobookshelf en una dirección diferente ({0}). El progreso se sincronizará cuando se conecte a esta dirección de servidor.",
|
||||||
"MessageMediaLinkedToADifferentUser": "Media is linked to this server but was downloaded by a different user. Progress will only be synced to the user that downloaded it.",
|
"MessageMediaLinkedToADifferentUser": "El contenido está vinculado a este servidor pero fue descargado por otro usuario. El progreso solo se sincronizará con el usuario que lo descargó.",
|
||||||
"MessageMediaLinkedToServer": "Linked to server {0}",
|
"MessageMediaLinkedToServer": "Vinculado al servidor {0}",
|
||||||
"MessageMediaLinkedToThisServer": "Downloaded media is linked to this server",
|
"MessageMediaLinkedToThisServer": "El contenido descargado está vinculado a este servidor",
|
||||||
"MessageMediaNotLinkedToServer": "Media is not linked to an Audiobookshelf server. No progress will be synced.",
|
"MessageMediaNotLinkedToServer": "El contenido multimedia no está vinculado a un servidor de Audiobookshelf. No se sincronizará ningún progreso.",
|
||||||
"MessageNoBookmarks": "Sin Marcadores",
|
"MessageNoBookmarks": "Sin marcadores",
|
||||||
"MessageNoChapters": "Sin Capítulos",
|
"MessageNoChapters": "Sin capítulos",
|
||||||
"MessageNoItems": "Sin Elementos",
|
"MessageNoItems": "Sin elementos",
|
||||||
"MessageNoItemsFound": "Ningún Elemento Encontrado",
|
"MessageNoItemsFound": "Ningún elemento encontrado",
|
||||||
"MessageNoListeningSessions": "Ninguna Session Escuchada",
|
"MessageNoListeningSessions": "Ninguna sesión escuchada",
|
||||||
"MessageNoMediaFolders": "No Media Folders",
|
"MessageNoMediaFolders": "Sin carpetas multimedia",
|
||||||
"MessageNoNetworkConnection": "No network connection",
|
"MessageNoNetworkConnection": "Sin conexión de red",
|
||||||
"MessageNoPodcastsFound": "Ningún podcast encontrado",
|
"MessageNoPodcastsFound": "Ningún podcast encontrado",
|
||||||
"MessageNoSeries": "No series",
|
"MessageNoSeries": "Ninguna serie",
|
||||||
"MessageNoUpdatesWereNecessary": "No fue necesario actualizar",
|
"MessageNoUpdatesWereNecessary": "No fue necesario actualizar",
|
||||||
"MessageNoUserPlaylists": "No tienes lista de reproducciones",
|
"MessageNoUserPlaylists": "No tienes ninguna lista de reproducción",
|
||||||
"MessageReportBugsAndContribute": "Reporte erres, solicite funciones y contribuya en",
|
"MessageReportBugsAndContribute": "Reporte erres, solicite funciones y contribuya en",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket connected over metered cellular",
|
"MessageSeriesAlreadyDownloaded": "Ya has descargado todos los libros de esta serie.",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered wifi",
|
"MessageSeriesDownloadConfirm": "¿Descargar {0} libro(s) faltante(s) con {1} archivo(s), totalizando {2} a la carpeta {3}?",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Socket connected over unmetered cellular",
|
"MessageSeriesDownloadConfirmIos": "¿Descargar {0} libro(s) faltantes con {1} archivo(s), con un total de {2}?",
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Socket connected over unmetered wifi",
|
"MessageSocketConnectedOverMeteredCellular": "Conexión de socket a través de red celular de tarifa por consumo",
|
||||||
"MessageSocketNotConnected": "Socket not connected",
|
"MessageSocketConnectedOverMeteredWifi": "Socket conectado a través de una red Wi-Fi con tarificación por consumo",
|
||||||
|
"MessageSocketConnectedOverUnmeteredCellular": "Socket conectado a través de red celular sin tarificación por consumo",
|
||||||
|
"MessageSocketConnectedOverUnmeteredWifi": "Socket conectado a través de una red Wi-Fi sin tarificación por consumo",
|
||||||
|
"MessageSocketNotConnected": "Socket no conectado",
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Advertencia: La mayoría de las aplicaciones de podcast requieren que la URL de la fuente RSS use HTTPS",
|
"NoteRSSFeedPodcastAppsHttps": "Advertencia: La mayoría de las aplicaciones de podcast requieren que la URL de la fuente RSS use HTTPS",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Advertencia: 1 o más de sus episodios no tienen fecha de publicación. Algunas aplicaciones de podcast lo requieren.",
|
"NoteRSSFeedPodcastAppsPubDate": "Advertencia: 1 o más de sus episodios no tienen fecha de publicación. Algunas aplicaciones de podcast lo requieren.",
|
||||||
"ToastBookmarkCreateFailed": "Error al crear marcador",
|
"ToastBookmarkCreateFailed": "Error al crear marcador",
|
||||||
"ToastBookmarkRemoveFailed": "Error al eliminar marcador",
|
"ToastBookmarkRemoveFailed": "Error al eliminar marcador",
|
||||||
"ToastBookmarkUpdateFailed": "Error al actualizar el marcador",
|
"ToastBookmarkUpdateFailed": "Error al actualizar el marcador",
|
||||||
"ToastItemMarkedAsFinishedFailed": "Error al marcar como Terminado",
|
"ToastDownloadNotAllowedOnCellular": "Las descargas no están permitidas con datos móviles",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "Error al marcar como No Terminado",
|
"ToastItemMarkedAsFinishedFailed": "Error al marcar como terminado",
|
||||||
"ToastPlaylistCreateFailed": "Error al crear la lista de reproducción.",
|
"ToastItemMarkedAsNotFinishedFailed": "No se ha podido marcar como no finalizado",
|
||||||
|
"ToastPlaylistCreateFailed": "Error al crear la lista de reproducción",
|
||||||
"ToastPodcastCreateFailed": "Error al crear podcast",
|
"ToastPodcastCreateFailed": "Error al crear podcast",
|
||||||
"ToastPodcastCreateSuccess": "Podcast creado",
|
"ToastPodcastCreateSuccess": "Podcast creado",
|
||||||
"ToastRSSFeedCloseFailed": "Error al cerrar fuente RSS",
|
"ToastRSSFeedCloseFailed": "Error al cerrar fuente RSS",
|
||||||
"ToastRSSFeedCloseSuccess": "Fuente RSS cerrada"
|
"ToastRSSFeedCloseSuccess": "Fuente RSS cerrada",
|
||||||
}
|
"ToastStreamingNotAllowedOnCellular": "El streaming no está permitido con datos móviles"
|
||||||
|
}
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
{}
|
||||||
+280
@@ -0,0 +1,280 @@
|
|||||||
|
{
|
||||||
|
"ButtonAdd": "Lisää",
|
||||||
|
"ButtonAddNewServer": "Lisää uusi palvelin",
|
||||||
|
"ButtonAuthors": "Tekijät",
|
||||||
|
"ButtonBack": "Takaisin",
|
||||||
|
"ButtonCancel": "Peruuta",
|
||||||
|
"ButtonCancelTimer": "Peruuta ajastin",
|
||||||
|
"ButtonClearFilter": "Poista suodatus",
|
||||||
|
"ButtonCloseFeed": "Sulje syöte",
|
||||||
|
"ButtonCollections": "Kokoelmat",
|
||||||
|
"ButtonConnect": "Yhdistä",
|
||||||
|
"ButtonConnectToServer": "Yhdistä palvelimelle",
|
||||||
|
"ButtonCreate": "Luo",
|
||||||
|
"ButtonCreateBookmark": "Luo kirjanmerkki",
|
||||||
|
"ButtonCreateNewPlaylist": "Luo uusi soittolista",
|
||||||
|
"ButtonDelete": "Poista",
|
||||||
|
"ButtonDeleteLocalEpisode": "Poista paikallinen jakso",
|
||||||
|
"ButtonDeleteLocalFile": "Poista paikallinen tiedosto",
|
||||||
|
"ButtonDeleteLocalItem": "Poista paikallinen sisältö",
|
||||||
|
"ButtonDisableAutoTimer": "Sammuta automaattiajastin",
|
||||||
|
"ButtonDisconnect": "Katkaise yhteys",
|
||||||
|
"ButtonGoToWebClient": "Siirry Web-käyttöliittymään",
|
||||||
|
"ButtonHistory": "Historia",
|
||||||
|
"ButtonHome": "Koti",
|
||||||
|
"ButtonIssues": "Ongelmat",
|
||||||
|
"ButtonLatest": "Viimeisimmät",
|
||||||
|
"ButtonLibrary": "Kirjasto",
|
||||||
|
"ButtonLocalMedia": "Paikallinen media",
|
||||||
|
"ButtonManageLocalFiles": "Hallitse paikallsiia tiedostoja",
|
||||||
|
"ButtonNewFolder": "Uusi kansio",
|
||||||
|
"ButtonNextEpisode": "Seuraava jakso",
|
||||||
|
"ButtonOpenFeed": "Avaa syöte",
|
||||||
|
"ButtonOverride": "Ohita",
|
||||||
|
"ButtonPause": "Pysäytä",
|
||||||
|
"ButtonPlay": "Toista",
|
||||||
|
"ButtonPlayEpisode": "Toista jakso",
|
||||||
|
"ButtonPlaying": "Toistetaan",
|
||||||
|
"ButtonPlaylists": "Soittolistat",
|
||||||
|
"ButtonRead": "Lue",
|
||||||
|
"ButtonRemove": "Poista",
|
||||||
|
"ButtonRemoveFromServer": "Poista palvelimelta",
|
||||||
|
"ButtonSave": "Tallenna",
|
||||||
|
"ButtonSaveOrder": "Tallenna järjestys",
|
||||||
|
"ButtonSearch": "Etsi",
|
||||||
|
"ButtonSendEbookToDevice": "Lähetä kirja lukulaitteeseen",
|
||||||
|
"ButtonSeries": "Sarjat",
|
||||||
|
"ButtonSetTimer": "Aseta ajastin",
|
||||||
|
"ButtonStream": "Suoratoisto",
|
||||||
|
"ButtonSubmit": "Lähetä",
|
||||||
|
"ButtonSwitchServerUser": "Vaihda palvelinta/käyttäjää",
|
||||||
|
"ButtonUserStats": "Käyttäjän tilastot",
|
||||||
|
"ButtonYes": "Kyllä",
|
||||||
|
"HeaderAccount": "Tili",
|
||||||
|
"HeaderAdvanced": "Edistynyt",
|
||||||
|
"HeaderAudioTracks": "Ääniraidat",
|
||||||
|
"HeaderChapters": "Luvut",
|
||||||
|
"HeaderCollection": "Kokoelma",
|
||||||
|
"HeaderCollectionItems": "Kokoelman osat",
|
||||||
|
"HeaderConnectionStatus": "Kokoelman tila",
|
||||||
|
"HeaderDataSettings": "Tietojen asetukset",
|
||||||
|
"HeaderDetails": "Yksityiskohdat",
|
||||||
|
"HeaderDownloads": "Lataukset",
|
||||||
|
"HeaderEbookFiles": "E-kirjatiedostot",
|
||||||
|
"HeaderEpisodes": "Jaksot",
|
||||||
|
"HeaderEreaderSettings": "E-lukijan asetukset",
|
||||||
|
"HeaderLatestEpisodes": "Viimeisimmät jaksot",
|
||||||
|
"HeaderLibraries": "Kirjastot",
|
||||||
|
"HeaderLocalFolders": "Paikalliset kansiot",
|
||||||
|
"HeaderLocalLibraryItems": "Paikallisen kirjaston niteet",
|
||||||
|
"HeaderNewPlaylist": "Uusi soittolista",
|
||||||
|
"HeaderOpenRSSFeed": "Avaa RSS-syöte",
|
||||||
|
"HeaderPlaybackSettings": "Toistoasetukset",
|
||||||
|
"HeaderPlaylist": "Soittolista",
|
||||||
|
"HeaderPlaylistItems": "Soittolistan kohteet",
|
||||||
|
"HeaderRSSFeed": "RSS syöte",
|
||||||
|
"HeaderRSSFeedGeneral": "RSS yksityiskohdat",
|
||||||
|
"HeaderRSSFeedIsOpen": "RSS syöte on avoinna",
|
||||||
|
"HeaderSelectDownloadLocation": "Valitse tallennussijainti",
|
||||||
|
"HeaderSettings": "Asetukset",
|
||||||
|
"HeaderSleepTimer": "Uniajastin",
|
||||||
|
"HeaderSleepTimerSettings": "Uniajastimen asetukset",
|
||||||
|
"HeaderStatsMinutesListeningChart": "Kuunteluminuutit (viim. 7 pv)",
|
||||||
|
"HeaderStatsRecentSessions": "Viimeaikaiset istunnot",
|
||||||
|
"HeaderTableOfContents": "Sisällysluettelo",
|
||||||
|
"HeaderUserInterfaceSettings": "Käyttöliittymän asetukset",
|
||||||
|
"HeaderYourStats": "Tilastosi",
|
||||||
|
"LabelAddToPlaylist": "Lisää soittolistaan",
|
||||||
|
"LabelAdded": "Lisätty",
|
||||||
|
"LabelAddedAt": "Lisätty listalle",
|
||||||
|
"LabelAll": "Kaikki",
|
||||||
|
"LabelAllowSeekingOnMediaControls": "Salli kelaaminen ilmoituksen säätimillä",
|
||||||
|
"LabelAlways": "Aina",
|
||||||
|
"LabelAskConfirmation": "Kysy varmistusta",
|
||||||
|
"LabelAuthor": "Tekijä",
|
||||||
|
"LabelAuthorFirstLast": "Tekijä (Etunimi Sukunimi)",
|
||||||
|
"LabelAuthorLastFirst": "Tekijä (Sukunimi, Etunimi)",
|
||||||
|
"LabelAuthors": "Tekijät",
|
||||||
|
"LabelAutoDownloadEpisodes": "Lataa jaksot automaattisesti",
|
||||||
|
"LabelAutoRewindTime": "Automaattisen takaisinkelauksen kesto",
|
||||||
|
"LabelAutoSleepTimer": "Automaattinen uniajastin",
|
||||||
|
"LabelAutoSleepTimerAutoRewind": "Automaattisen uniajastimen automaattinen takaisinkelaus",
|
||||||
|
"LabelAutoSleepTimerAutoRewindHelp": "Kun automaattinen uniajastin päättyy, ensi kerralla toistetaan osa kuunenltua uudelleen.",
|
||||||
|
"LabelAutoSleepTimerHelp": "Toiston alkaessa tällä aikävälillä unikytkin kytketään automaattisesti käyttöön.",
|
||||||
|
"LabelBooks": "Kirjat",
|
||||||
|
"LabelChapterTrack": "Luvun raita",
|
||||||
|
"LabelChapters": "Luvut",
|
||||||
|
"LabelClosePlayer": "Sulje soitin",
|
||||||
|
"LabelCollapseSeries": "Pienennä sarja",
|
||||||
|
"LabelComplete": "Valmis",
|
||||||
|
"LabelContinueBooks": "Jatka kirjoja",
|
||||||
|
"LabelContinueEpisodes": "Jatka jaksoja",
|
||||||
|
"LabelContinueListening": "Jatka kuuntelua",
|
||||||
|
"LabelContinueReading": "Jatka lukemista",
|
||||||
|
"LabelContinueSeries": "Jatka sarjoja",
|
||||||
|
"LabelCustomTime": "Mukautettu aika",
|
||||||
|
"LabelDescription": "Kuvaus",
|
||||||
|
"LabelDisableAudioFadeOut": "Poista äänen häivytys käytöstä",
|
||||||
|
"LabelDisableAudioFadeOutHelp": "Äänenvoimakkuus alkaa laskea kun uniajastimessa on jäljellä alle minuutti. Laita tämä asetus pois päältä estääksesi sen.",
|
||||||
|
"LabelDisableAutoRewind": "Poista käytöstä automaattinen takaisinkelaus",
|
||||||
|
"LabelDisableShakeToReset": "Poista uniajastimnen nollaus ravistamalla käytöstä",
|
||||||
|
"LabelDisableShakeToResetHelp": "Ravistamalla laitettasi uniajastimen kuluessa tai enintään kaksi minuuttia sen loppumisen jälkeen uudistaa ajastimen.",
|
||||||
|
"LabelDisableVibrateOnReset": "Poista värinä käytöstä nollattaessa",
|
||||||
|
"LabelDisableVibrateOnResetHelp": "Kun uniajastin nollautuu, laitteesi tärisee. Kytke tämä asetus päälle poistaaksesi tärinä kun uniajastin nollautuu.",
|
||||||
|
"LabelDiscover": "Löydä",
|
||||||
|
"LabelDownload": "Lataa",
|
||||||
|
"LabelDownloadUsingCellular": "Lataa käyttäen mobiilidataa",
|
||||||
|
"LabelDownloaded": "Ladatut",
|
||||||
|
"LabelDuration": "Kesto",
|
||||||
|
"LabelEbook": "E-kirja",
|
||||||
|
"LabelEbooks": "E-kirjat",
|
||||||
|
"LabelEnable": "Ota käyttöön",
|
||||||
|
"LabelEnd": "Loppu",
|
||||||
|
"LabelEndOfChapter": "Luvun loppu",
|
||||||
|
"LabelEpisode": "Jakso",
|
||||||
|
"LabelFeedURL": "Syötteen URL",
|
||||||
|
"LabelFile": "Tiedosto",
|
||||||
|
"LabelFileBirthtime": "Tiedoston syntymäaika",
|
||||||
|
"LabelFileModified": "Muutettu tiedosto",
|
||||||
|
"LabelFilename": "Tiedostonimi",
|
||||||
|
"LabelFinished": "Valmis",
|
||||||
|
"LabelFolder": "Kansio",
|
||||||
|
"LabelGenre": "Lajityyppi",
|
||||||
|
"LabelGenres": "Lajityypit",
|
||||||
|
"LabelHapticFeedback": "Tuntopalaute",
|
||||||
|
"LabelHigh": "Korkea",
|
||||||
|
"LabelHost": "Isäntä",
|
||||||
|
"LabelInProgress": "Kesken",
|
||||||
|
"LabelIncomplete": "Keskeneräinen",
|
||||||
|
"LabelJumpBackwardsTime": "Hyppää taaksepäin ajassa",
|
||||||
|
"LabelJumpForwardsTime": "Hyppää eteenpäin ajassa",
|
||||||
|
"LabelLanguage": "Kieli",
|
||||||
|
"LabelLight": "Vaalea",
|
||||||
|
"LabelLineSpacing": "Riviväli",
|
||||||
|
"LabelListenAgain": "Kuuntele uudelleen",
|
||||||
|
"LabelLocalBooks": "Paikalliset kirjat",
|
||||||
|
"LabelLocalPodcasts": "Paikalliset podcastit",
|
||||||
|
"LabelLockPlayer": "Lukitse soitin",
|
||||||
|
"LabelLow": "Matala",
|
||||||
|
"LabelMediaType": "Mediatyyppi",
|
||||||
|
"LabelMedium": "Keskitaso",
|
||||||
|
"LabelMore": "Lisää",
|
||||||
|
"LabelMoreInfo": "Lisätietoja",
|
||||||
|
"LabelName": "Nimi",
|
||||||
|
"LabelNarrator": "Lukija",
|
||||||
|
"LabelNarrators": "Lukijat",
|
||||||
|
"LabelNavigateWithVolume": "Navigoi äänenvoimakkuus-painikkeilla",
|
||||||
|
"LabelNavigateWithVolumeDisabled": "Pois päältä",
|
||||||
|
"LabelNavigateWithVolumeEnabled": "Päällä",
|
||||||
|
"LabelNever": "Ei koskaan",
|
||||||
|
"LabelNewestAuthors": "Uusimmat kirjailijat",
|
||||||
|
"LabelNewestEpisodes": "Uusimmat jaksot",
|
||||||
|
"LabelNo": "Ei",
|
||||||
|
"LabelNotStarted": "Ei aloitettu",
|
||||||
|
"LabelOff": "Pois päältä",
|
||||||
|
"LabelPassword": "Salasana",
|
||||||
|
"LabelPath": "Polku",
|
||||||
|
"LabelPlaybackLocal": "Paikallinen",
|
||||||
|
"LabelPlaybackSpeed": "Toistonopeus",
|
||||||
|
"LabelPodcast": "Podcast",
|
||||||
|
"LabelPodcasts": "Podcastit",
|
||||||
|
"LabelPublishYear": "Julkaisuvuosi",
|
||||||
|
"LabelRSSFeedPreventIndexing": "Estä indeksointi",
|
||||||
|
"LabelRandomly": "Satunnaisesti",
|
||||||
|
"LabelRead": "Lue",
|
||||||
|
"LabelReadAgain": "Lue uudelleen",
|
||||||
|
"LabelRecentSeries": "Viimeisimmät sarjat",
|
||||||
|
"LabelRecentlyAdded": "Viimeeksi lisätyt",
|
||||||
|
"LabelRemoveFromPlaylist": "Poista soittolistalta",
|
||||||
|
"LabelScaleElapsedTimeBySpeed": "Skaalaa kulunut aika nopeuden mukaan",
|
||||||
|
"LabelSeason": "Kausi",
|
||||||
|
"LabelSelectADevice": "Valitse laite",
|
||||||
|
"LabelSeries": "Sarja",
|
||||||
|
"LabelServerAddress": "Palvelimen osoite",
|
||||||
|
"LabelSetEbookAsPrimary": "Aseta ensisijaiseksi",
|
||||||
|
"LabelSetEbookAsSupplementary": "Aseta täydentäväksi",
|
||||||
|
"LabelShakeSensitivity": "Ravistusherkkyys",
|
||||||
|
"LabelShowAll": "Näytä kaikki",
|
||||||
|
"LabelSize": "Koko",
|
||||||
|
"LabelSleepTimer": "Uniajastin",
|
||||||
|
"LabelStart": "Aloita",
|
||||||
|
"LabelStartTime": "Aloitusaika",
|
||||||
|
"LabelStatsBestDay": "Paras päivä",
|
||||||
|
"LabelStatsDailyAverage": "Päivittäinen keskiarvo",
|
||||||
|
"LabelStatsDays": "Päivää",
|
||||||
|
"LabelStatsDaysListened": "Päivää kuunneltu",
|
||||||
|
"LabelStatsInARow": "peräjälkeen",
|
||||||
|
"LabelStatsMinutes": "minuuttia",
|
||||||
|
"LabelStatsMinutesListening": "Minuuttia kuunneltu",
|
||||||
|
"LabelStatsWeekListening": "Viikon aikana kuunneltu",
|
||||||
|
"LabelTag": "Tägi",
|
||||||
|
"LabelTags": "Tägit",
|
||||||
|
"LabelTheme": "Teema",
|
||||||
|
"LabelThemeDark": "Tumma",
|
||||||
|
"LabelThemeLight": "Kirkas",
|
||||||
|
"LabelTimeRemaining": "{0} jäljellä",
|
||||||
|
"LabelTitle": "Nimi",
|
||||||
|
"LabelTotalSize": "Kokonaiskoko",
|
||||||
|
"LabelTracks": "Raidat",
|
||||||
|
"LabelType": "Tyyppi",
|
||||||
|
"LabelUseBookshelfView": "Käytä kirjahyllynäkymää",
|
||||||
|
"LabelUser": "Käyttäjä",
|
||||||
|
"LabelUsername": "Käyttäjätunnus",
|
||||||
|
"LabelVeryHigh": "Erittäin korkea",
|
||||||
|
"LabelVeryLow": "Erittäin matala",
|
||||||
|
"LabelYourBookmarks": "Kirjanmerkkisi",
|
||||||
|
"LabelYourProgress": "Edistymisesi",
|
||||||
|
"MessageAndroid10Downloads": "Android 10 ja sitä vanhemmat käyttävät sovelluksen sisäistä tallennustilaa latauksiin.",
|
||||||
|
"MessageAttemptingServerConnection": "Yritetään palvelinyhteyttä...",
|
||||||
|
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf palvelinta ei ole yhdistetty",
|
||||||
|
"MessageAudiobookshelfServerRequired": "<strong>Tärkeää!</strong> Tämä sovellus on suunniteltu toimimaan sinun tai tuttavasi Audiobookshelf-palvelimen kanssa. Tämä sovellus ei tarjoa sisältöä.",
|
||||||
|
"MessageBookshelfEmpty": "Kirjahylly on tyhjä",
|
||||||
|
"MessageConfirmDeleteLocalEpisode": "Poista jakso \"{0}\" laitteeltasi? Tämä ei vaikuta palvelimella olevaan tiedostoon.",
|
||||||
|
"MessageConfirmDeleteLocalFiles": "Poista tämän kohteen tiedostot laitteestasi? Tämä ei vaikuta palvelimella oleviin tiedostoihin tai edistymiseesi.",
|
||||||
|
"MessageConfirmDiscardProgress": "Haluatko varmasti nollata edistymisesi?",
|
||||||
|
"MessageConfirmDownloadUsingCellular": "Olet lataamassa mobiilidatan avulla. Tämä voi aiheuttaa operaattorin datamaksuja. Haluatko jatkaa?",
|
||||||
|
"MessageConfirmMarkAsFinished": "Haluatko varmasti merkitä tämän kohteen valmiiksi?",
|
||||||
|
"MessageConfirmRemoveBookmark": "Haluatko varmasti poistaa kirjanmerkin?",
|
||||||
|
"MessageConfirmStreamingUsingCellular": "Olet suoratoistamassa matkapuhelindatan avulla. Tämä voi aiheuttaa operaattorin datamaksuja. Haluatko jatkaa?",
|
||||||
|
"MessageDiscardProgress": "Hylkää edistyminen",
|
||||||
|
"MessageDownloadCompleteProcessing": "Lataus valmis. Käsitellään...",
|
||||||
|
"MessageDownloading": "Ladataan...",
|
||||||
|
"MessageDownloadingEpisode": "Ladataan jaksoa",
|
||||||
|
"MessageEpisodesQueuedForDownload": "{0} jaksoa on latausjonossa",
|
||||||
|
"MessageFeedURLWillBe": "Syötteen URL tulee olemaan {0}",
|
||||||
|
"MessageFetching": "Haetaan...",
|
||||||
|
"MessageFollowTheProjectOnGithub": "Seuraa projektia Githubissa",
|
||||||
|
"MessageItemDownloadCompleteFailedToCreate": "Kohteen lataus on valmis, mutta kirjastokohteen luominen epäonnistui",
|
||||||
|
"MessageLoading": "Ladataan...",
|
||||||
|
"MessageLoadingServerData": "Ladataan palvelintietoja...",
|
||||||
|
"MessageMarkAsFinished": "Merkitse valmiiksi",
|
||||||
|
"MessageMediaLinkedToADifferentServer": "Media on linkitetty Audiobookshelf-palvelimeen eri osoitteessa ({0}). Edistyminen synkronoidaan, kun olet yhdistänyt tähän palvelinosoitteeseen.",
|
||||||
|
"MessageMediaLinkedToADifferentUser": "Media on linkitetty tähän palvelimeen, mutta sen latasi eri käyttäjä. Edistyminen synkronoidaan vain käyttäjälle, joka latasi sen.",
|
||||||
|
"MessageMediaLinkedToServer": "Linkitetty palvelimeen {0}",
|
||||||
|
"MessageMediaLinkedToThisServer": "Ladattu media on linkitetty tähän palvelimeen",
|
||||||
|
"MessageMediaNotLinkedToServer": "Mediaa ei ole linkitetty Audiobookshelf-palvelimeen. Edistystä ei synkronoida.",
|
||||||
|
"MessageNoBookmarks": "Ei kirjanmerkkejä",
|
||||||
|
"MessageNoChapters": "Ei kappaleita",
|
||||||
|
"MessageNoItems": "Ei kohteita",
|
||||||
|
"MessageNoItemsFound": "Kohteita ei löytynyt",
|
||||||
|
"MessageNoListeningSessions": "Ei kuunteluistuntoja",
|
||||||
|
"MessageNoMediaFolders": "Ei mediakansioita",
|
||||||
|
"MessageNoNetworkConnection": "Ei verkkoyhteyttä",
|
||||||
|
"MessageNoPodcastsFound": "Podcasteja ei löytynyt",
|
||||||
|
"MessageNoSeries": "Ei sarjoja",
|
||||||
|
"MessageNoUpdatesWereNecessary": "Päivityksiä ei tarvittu",
|
||||||
|
"MessageNoUserPlaylists": "Sinulla ei ole soittolistoja",
|
||||||
|
"MessageReportBugsAndContribute": "Ilmoita virheistä, toivo ominaisuuksia ja osallistu",
|
||||||
|
"ToastBookmarkCreateFailed": "Kirjanmerkin luominen epäonnistui",
|
||||||
|
"ToastBookmarkRemoveFailed": "Kirjanmerkin poistaminen epäonnistui",
|
||||||
|
"ToastBookmarkUpdateFailed": "Kirjanmerkin päivittäminen epäonnistui",
|
||||||
|
"ToastDownloadNotAllowedOnCellular": "Lataaminen ei ole sallittua mobiilidatalla",
|
||||||
|
"ToastItemMarkedAsFinishedFailed": "Valmiiksi merkitseminen epäonnistui",
|
||||||
|
"ToastItemMarkedAsNotFinishedFailed": "Valmiiksi merkitsemisen poisto epäonnistui",
|
||||||
|
"ToastPlaylistCreateFailed": "Soittolistan luominen epäonnistui",
|
||||||
|
"ToastPodcastCreateFailed": "Podcastin luominen epäonnistui",
|
||||||
|
"ToastPodcastCreateSuccess": "Podcastin luominen onnistui",
|
||||||
|
"ToastRSSFeedCloseFailed": "RSS syötteen sulkeminen epäonnistui",
|
||||||
|
"ToastRSSFeedCloseSuccess": "RSS syöte suljettu",
|
||||||
|
"ToastStreamingNotAllowedOnCellular": "Suoratoisto ei ole sallittu mobiilidatalla"
|
||||||
|
}
|
||||||
+138
-120
@@ -1,133 +1,138 @@
|
|||||||
{
|
{
|
||||||
"ButtonAdd": "Ajouter",
|
"ButtonAdd": "Ajouter",
|
||||||
"ButtonAddNewServer": "Ajouter un Serveur",
|
"ButtonAddNewServer": "Ajouter un serveur",
|
||||||
"ButtonAuthors": "Auteurs",
|
"ButtonAuthors": "Auteurs",
|
||||||
"ButtonBack": "Retour",
|
"ButtonBack": "Retour",
|
||||||
"ButtonCancel": "Annuler",
|
"ButtonCancel": "Annuler",
|
||||||
"ButtonCancelTimer": "Annuler le Minuteur",
|
"ButtonCancelTimer": "Annuler la minuterie",
|
||||||
"ButtonClearFilter": "Effacer le Filtre",
|
"ButtonClearFilter": "Effacer le filtre",
|
||||||
"ButtonCloseFeed": "Fermer le Flux",
|
"ButtonCloseFeed": "Fermer le flux",
|
||||||
"ButtonCollections": "Collections",
|
"ButtonCollections": "Collections",
|
||||||
"ButtonConnect": "Connexion",
|
"ButtonConnect": "Connecter",
|
||||||
"ButtonConnectToServer": "Se Connecter au Serveur",
|
"ButtonConnectToServer": "Se connecter au serveur",
|
||||||
"ButtonCreate": "Créer",
|
"ButtonCreate": "Créer",
|
||||||
"ButtonCreateBookmark": "Créer un Marque-pages",
|
"ButtonCreateBookmark": "Créer un marque-page",
|
||||||
"ButtonCreateNewPlaylist": "Créer une Nouvelle Liste de Lecture",
|
"ButtonCreateNewPlaylist": "Créer une nouvelle liste de lecture",
|
||||||
"ButtonDelete": "Effacer",
|
"ButtonDelete": "Supprimer",
|
||||||
"ButtonDeleteLocalEpisode": "Supprimer l'Épisode de l'Appareil",
|
"ButtonDeleteLocalEpisode": "Supprimer l’épisode de l’appareil",
|
||||||
"ButtonDeleteLocalFile": "Supprimer le Fichier de l'Appareil",
|
"ButtonDeleteLocalFile": "Supprimer le fichier de l’appareil",
|
||||||
"ButtonDeleteLocalItem": "Supprimer l'Élément de l'Appareil",
|
"ButtonDeleteLocalItem": "Supprimer l’élément de l’appareil",
|
||||||
"ButtonDisableAutoTimer": "Désactiver le Minuteur Automatique",
|
"ButtonDisableAutoTimer": "Désactiver la minuterie automatique",
|
||||||
"ButtonDisconnect": "Déconnexion",
|
"ButtonDisconnect": "Déconnecter",
|
||||||
"ButtonGoToWebClient": "Ouvrir dans le Navigateur",
|
"ButtonGoToWebClient": "Ouvrir dans le navigateur",
|
||||||
"ButtonHistory": "Historique",
|
"ButtonHistory": "Historique",
|
||||||
"ButtonHome": "Accueil",
|
"ButtonHome": "Accueil",
|
||||||
"ButtonIssues": "Parutions",
|
"ButtonIssues": "Problèmes",
|
||||||
"ButtonLatest": "Dernière Version",
|
"ButtonLatest": "Dernière version",
|
||||||
"ButtonLibrary": "Bibliothèque",
|
"ButtonLibrary": "Bibliothèque",
|
||||||
"ButtonLocalMedia": "Medias Locaux",
|
"ButtonLocalMedia": "Médias locaux",
|
||||||
"ButtonManageLocalFiles": "Gérer les Fichiers Locaux",
|
"ButtonManageLocalFiles": "Gérer les fichiers locaux",
|
||||||
"ButtonNewFolder": "Nouveau Dossier",
|
"ButtonNewFolder": "Nouveau dossier",
|
||||||
"ButtonNextEpisode": "Prochain Épisode",
|
"ButtonNextEpisode": "Prochain épisode",
|
||||||
"ButtonOpenFeed": "Ouvrir le Flux",
|
"ButtonOpenFeed": "Ouvrir le flux",
|
||||||
"ButtonOverride": "Remplacer",
|
"ButtonOverride": "Remplacer",
|
||||||
"ButtonPause": "Pause",
|
"ButtonPause": "Pause",
|
||||||
"ButtonPlay": "Écouter",
|
"ButtonPlay": "Lire",
|
||||||
"ButtonPlaying": "En Lecture",
|
"ButtonPlayEpisode": "Lire l’épisode",
|
||||||
"ButtonPlaylists": "Listes de Lecture",
|
"ButtonPlaying": "En lecture",
|
||||||
|
"ButtonPlaylists": "Listes de lecture",
|
||||||
"ButtonRead": "Lire",
|
"ButtonRead": "Lire",
|
||||||
"ButtonRemove": "Supprimer",
|
"ButtonRemove": "Supprimer",
|
||||||
"ButtonRemoveFromServer": "Supprimer du Serveur",
|
"ButtonRemoveFromServer": "Retirer du serveur",
|
||||||
"ButtonSave": "Sauvegarder",
|
"ButtonSave": "Sauvegarder",
|
||||||
"ButtonSaveOrder": "Sauvegarder l'Ordre",
|
"ButtonSaveOrder": "Sauvegarder l’ordre",
|
||||||
"ButtonSearch": "Chercher",
|
"ButtonSearch": "Chercher",
|
||||||
"ButtonSendEbookToDevice": "Envoyer le Livre a l'Appareil",
|
"ButtonSendEbookToDevice": "Envoyer le livre à l’appareil",
|
||||||
"ButtonSeries": "Séries",
|
"ButtonSeries": "Séries",
|
||||||
"ButtonSetTimer": "Lancer",
|
"ButtonSetTimer": "Régler la minuterie",
|
||||||
"ButtonStream": "Streamer",
|
"ButtonStream": "Flux",
|
||||||
"ButtonSubmit": "Soumettre",
|
"ButtonSubmit": "Soumettre",
|
||||||
"ButtonSwitchServerUser": "Changer de Serveur/Utilisateur",
|
"ButtonSwitchServerUser": "Changer de serveur / utilisateur",
|
||||||
"ButtonUserStats": "Statistiques Utilisateur",
|
"ButtonUserStats": "Statistiques utilisateur",
|
||||||
"ButtonYes": "Oui",
|
"ButtonYes": "Oui",
|
||||||
"HeaderAccount": "Compte",
|
"HeaderAccount": "Compte",
|
||||||
"HeaderAdvanced": "Avancé",
|
"HeaderAdvanced": "Avancé",
|
||||||
"HeaderAudioTracks": "Pistes audio",
|
"HeaderAudioTracks": "Pistes audio",
|
||||||
"HeaderChapters": "Chapitres",
|
"HeaderChapters": "Chapitres",
|
||||||
"HeaderCollection": "Collection",
|
"HeaderCollection": "Collection",
|
||||||
"HeaderCollectionItems": "Entrées de la Collection",
|
"HeaderCollectionItems": "Entrées de la collection",
|
||||||
"HeaderConnectionStatus": "Status de Connexion",
|
"HeaderConnectionStatus": "Status de connexion",
|
||||||
|
"HeaderDataSettings": "Paramètres de données",
|
||||||
"HeaderDetails": "Détails",
|
"HeaderDetails": "Détails",
|
||||||
"HeaderDownloads": "Téléchargements",
|
"HeaderDownloads": "Téléchargements",
|
||||||
"HeaderEbookFiles": "Fichier des livres numériques",
|
"HeaderEbookFiles": "Fichiers des livres numériques",
|
||||||
"HeaderEpisodes": "Épisodes",
|
"HeaderEpisodes": "Épisodes",
|
||||||
"HeaderEreaderSettings": "Options Ereader",
|
"HeaderEreaderSettings": "Paramètres de la liseuse",
|
||||||
"HeaderLatestEpisodes": "Dernier épisodes",
|
"HeaderLatestEpisodes": "Dernier épisodes",
|
||||||
"HeaderLibraries": "Bibliothèque",
|
"HeaderLibraries": "Bibliothèque",
|
||||||
"HeaderLocalFolders": "Dossiers Locaux",
|
"HeaderLocalFolders": "Dossiers locaux",
|
||||||
"HeaderLocalLibraryItems": "Éléments de la Bibliothèque Local",
|
"HeaderLocalLibraryItems": "Éléments de la bibliothèque locale",
|
||||||
"HeaderNewPlaylist": "Nouvelle Liste de Lecture",
|
"HeaderNewPlaylist": "Nouvelle liste de lecture",
|
||||||
"HeaderOpenRSSFeed": "Ouvrir Flux RSS",
|
"HeaderOpenRSSFeed": "Ouvrir le flux RSS",
|
||||||
"HeaderPlaybackSettings": "Paramètres de Lecture",
|
"HeaderPlaybackSettings": "Paramètres de lecture",
|
||||||
"HeaderPlaylist": "Liste de lecture",
|
"HeaderPlaylist": "Liste de lecture",
|
||||||
"HeaderPlaylistItems": "Éléments de la Liste de Lecture",
|
"HeaderPlaylistItems": "Éléments de la liste de lecture",
|
||||||
"HeaderRSSFeed": "RSS Feed",
|
"HeaderRSSFeed": "Flux RSS",
|
||||||
"HeaderRSSFeedGeneral": "Détails du Flux RSS",
|
"HeaderRSSFeedGeneral": "Détails du flux RSS",
|
||||||
"HeaderRSSFeedIsOpen": "Le Flux RSS est actif",
|
"HeaderRSSFeedIsOpen": "Le flux RSS est actif",
|
||||||
"HeaderSelectDownloadLocation": "Sélectionner le Dossier de Téléchargement",
|
"HeaderSelectDownloadLocation": "Sélectionner le dossier de téléchargement",
|
||||||
"HeaderSettings": "Paramètres",
|
"HeaderSettings": "Paramètres",
|
||||||
"HeaderSleepTimer": "Minuterie",
|
"HeaderSleepTimer": "Minuterie",
|
||||||
"HeaderSleepTimerSettings": "Paramètres du Minuteur Nocturne",
|
"HeaderSleepTimerSettings": "Paramètres du minuteur nocturne",
|
||||||
"HeaderStatsMinutesListeningChart": "Minutes d’écoute (7 derniers jours)",
|
"HeaderStatsMinutesListeningChart": "Minutes d’écoute (7 derniers jours)",
|
||||||
"HeaderStatsRecentSessions": "Sessions récentes",
|
"HeaderStatsRecentSessions": "Sessions récentes",
|
||||||
"HeaderTableOfContents": "Table des Matières",
|
"HeaderTableOfContents": "Table des matières",
|
||||||
"HeaderUserInterfaceSettings": "Paramètres de l'Interface",
|
"HeaderUserInterfaceSettings": "Paramètres de l'interface",
|
||||||
"HeaderYourStats": "Vos Statistiques",
|
"HeaderYourStats": "Vos statistiques",
|
||||||
|
"LabelAddToPlaylist": "Ajouter à la liste de lecture",
|
||||||
"LabelAdded": "Ajouté",
|
"LabelAdded": "Ajouté",
|
||||||
"LabelAddedAt": "Date d’ajout",
|
"LabelAddedAt": "Date d’ajout",
|
||||||
"LabelAddToPlaylist": "Ajouter à la Liste de Lecture",
|
|
||||||
"LabelAll": "Tout",
|
"LabelAll": "Tout",
|
||||||
"LabelAllowSeekingOnMediaControls": "Autoriser la Recherche de Position depuis la Notification du Lecteur Multimédia",
|
"LabelAllowSeekingOnMediaControls": "Autoriser la recherche de position depuis la notification du lecteur multimédia",
|
||||||
|
"LabelAlways": "Toujours",
|
||||||
|
"LabelAskConfirmation": "Demander une confirmation",
|
||||||
"LabelAuthor": "Auteur",
|
"LabelAuthor": "Auteur",
|
||||||
"LabelAuthorFirstLast": "Auteur (Prénom Nom)",
|
"LabelAuthorFirstLast": "Auteur (Prénom Nom)",
|
||||||
"LabelAuthorLastFirst": "Auteur (Nom, Prénom)",
|
"LabelAuthorLastFirst": "Auteur (Nom, Prénom)",
|
||||||
"LabelAuthors": "Auteurs",
|
"LabelAuthors": "Auteurs",
|
||||||
"LabelAutoDownloadEpisodes": "Téléchargement Automatique d’Épisode",
|
"LabelAutoDownloadEpisodes": "Téléchargement automatique des épisodes",
|
||||||
"LabelAutoRewindTime": "Saut arrière Automatique",
|
"LabelAutoRewindTime": "Saut arrière automatique",
|
||||||
"LabelAutoSleepTimer": "Minuteur Nocturne Automatique",
|
"LabelAutoSleepTimer": "Minuteur nocturne automatique",
|
||||||
"LabelAutoSleepTimerAutoRewind": "Saut arrière Automatique du Minuteur Nocturne",
|
"LabelAutoSleepTimerAutoRewind": "Saut arrière automatique du minuteur nocturne",
|
||||||
"LabelAutoSleepTimerAutoRewindHelp": "Lorsque le minuteur nocturne de termine, relire l'élément fera un saut en arrière.",
|
"LabelAutoSleepTimerAutoRewindHelp": "Lorsque le minuteur nocturne se 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.",
|
"LabelAutoSleepTimerHelp": "Lorsqu'un éléments est lu entre l'heure de début et de fin, un minuteur nocturne se lance automatiquement.",
|
||||||
"LabelBooks": "Livres",
|
"LabelBooks": "Livres",
|
||||||
|
"LabelChapterTrack": "Piste des chapitres",
|
||||||
"LabelChapters": "Chapitres",
|
"LabelChapters": "Chapitres",
|
||||||
"LabelChapterTrack": "Piste des Chapitres",
|
|
||||||
"LabelClosePlayer": "Fermer le lecteur",
|
"LabelClosePlayer": "Fermer le lecteur",
|
||||||
"LabelCollapseSeries": "Réduire les séries",
|
"LabelCollapseSeries": "Réduire les séries",
|
||||||
"LabelComplete": "Complet",
|
"LabelComplete": "Complet",
|
||||||
"LabelContinueBooks": "Continuer les Livres",
|
"LabelContinueBooks": "Continuer les Livres",
|
||||||
"LabelContinueEpisodes": "Continuer les Épisodes",
|
"LabelContinueEpisodes": "Continuer les épisodes",
|
||||||
"LabelContinueListening": "Continuer d'Écouter",
|
"LabelContinueListening": "Continuer la lecture",
|
||||||
"LabelContinueReading": "Continuer la lecture",
|
"LabelContinueReading": "Continuer la lecture",
|
||||||
"LabelContinueSeries": "Continuer les series",
|
"LabelContinueSeries": "Continuer les séries",
|
||||||
"LabelCustomTime": "Temps personalisé",
|
"LabelCustomTime": "Temps personalisé",
|
||||||
"LabelDescription": "Description",
|
"LabelDescription": "Description",
|
||||||
"LabelDisableAudioFadeOut": "Désactiver la diminution automatique du volume",
|
"LabelDisableAudioFadeOut": "Désactiver la diminution automatique du volume",
|
||||||
"LabelDisableAudioFadeOutHelp": "Le volume va diminuer lorsqu'il restera moins d'une minute sur le minuteur nocture. Sélectionner pour désactiver la diminution",
|
"LabelDisableAudioFadeOutHelp": "Le volume audio diminuera lorsqu’il restera moins d’une minute avant la mise en veille. Activez ce paramètre pour que le volume ne diminue pas.",
|
||||||
"LabelDisableAutoRewind": "Désactiver le saut arrière automatique",
|
"LabelDisableAutoRewind": "Désactiver le saut arrière automatique",
|
||||||
"LabelDisableShakeToReset": "Désactiver secouer pour redémarrer",
|
"LabelDisableShakeToReset": "Désactiver secouer pour redémarrer",
|
||||||
"LabelDisableShakeToResetHelp": "Secouer l'appareil pendant le minuteur OU lorsqu'il ne reste que 2 minutes au minuteur va redémarrer le minuteur. Sélectionner pour désactiver ce paramètre",
|
"LabelDisableShakeToResetHelp": "Si vous secouez votre appareil pendant que la minuterie est en cours OU dans les 2 minutes qui suivent son expiration, alors la minuterie de sommeil sera réinitialisée. Activez ce paramètre pour désactiver la fonction « Secouer pour réinitialiser ».",
|
||||||
"LabelDisableVibrateOnReset": "Désactiver la vibration au redémarrage",
|
"LabelDisableVibrateOnReset": "Désactiver la vibration au redémarrage",
|
||||||
"LabelDisableVibrateOnResetHelp": "Lorsque le minuteur est redémarré, l'appareil vibre. Sélectionner pour désactiver les vibrations..",
|
"LabelDisableVibrateOnResetHelp": "Lorsque le minuteur est redémarré, l'appareil vibre. Sélectionner pour désactiver les vibrations.",
|
||||||
"LabelDiscover": "Découvrir",
|
"LabelDiscover": "Découvrir",
|
||||||
"LabelDownload": "Téléchargement",
|
"LabelDownload": "Téléchargement",
|
||||||
|
"LabelDownloadUsingCellular": "Télécharger via les données mobiles",
|
||||||
"LabelDownloaded": "Téléchargé",
|
"LabelDownloaded": "Téléchargé",
|
||||||
"LabelDuration": "Durée",
|
"LabelDuration": "Durée",
|
||||||
"LabelEbook": "Livre numérique",
|
"LabelEbook": "Livre numérique",
|
||||||
"LabelEbooks": "Ebooks",
|
"LabelEbooks": "Livres numériques",
|
||||||
"LabelEnable": "Activer",
|
"LabelEnable": "Activer",
|
||||||
"LabelEnableMp3IndexSeeking": "Activer la recherche par index pour mp3",
|
"LabelEnableMp3IndexSeeking": "Activer la recherche par index pour mp3",
|
||||||
"LabelEnableMp3IndexSeekingHelp": "Ce paramètres ne devrai être activer que si vous avez des problèmes avec des fichiers mp3 que vous ne pouvez pas chercher. La mauvaise indexation est probablement du au Bitrate Variable (VBR) du fichier MP3. Ce paramètre va forcer l'indexation. Une correspondance Temps-Octet est construit durant la lecture. Dans certains cas, avec de gros fichier MP3, il y aura du délais lors de la recherche vers la fin du fichier.",
|
"LabelEnableMp3IndexSeekingHelp": "Ce paramètres ne devrai être activer que si vous avez des problèmes avec des fichiers mp3 que vous ne pouvez pas chercher. La mauvaise indexation est probablement du au Bitrate Variable (VBR) du fichier MP3. Ce paramètre va forcer l'indexation. Une correspondance Temps-Octet est construit durant la lecture. Dans certains cas, avec de gros fichier MP3, il y aura du délais lors de la recherche vers la fin du fichier.",
|
||||||
"LabelEnd": "Fin",
|
"LabelEnd": "Fin",
|
||||||
"LabelEndOfChapter": "Fin du Chapitre",
|
"LabelEndOfChapter": "Fin du chapitre",
|
||||||
"LabelEndTime": "Heure de Fin",
|
"LabelEndTime": "Heure de Fin",
|
||||||
"LabelEpisode": "Épisode",
|
"LabelEpisode": "Épisode",
|
||||||
"LabelFeedURL": "URL du flux",
|
"LabelFeedURL": "URL du flux",
|
||||||
@@ -137,88 +142,96 @@
|
|||||||
"LabelFilename": "Nom de fichier",
|
"LabelFilename": "Nom de fichier",
|
||||||
"LabelFinished": "Fini(e)",
|
"LabelFinished": "Fini(e)",
|
||||||
"LabelFolder": "Dossier",
|
"LabelFolder": "Dossier",
|
||||||
|
"LabelFontBoldness": "Graisse de la police",
|
||||||
"LabelFontScale": "Taille de la police de caractère",
|
"LabelFontScale": "Taille de la police de caractère",
|
||||||
"LabelGenre": "Genre",
|
"LabelGenre": "Genre",
|
||||||
"LabelGenres": "Genres",
|
"LabelGenres": "Genres",
|
||||||
"LabelHapticFeedback": "Retour haptique",
|
"LabelHapticFeedback": "Retour haptique",
|
||||||
"LabelHasEbook": "Contient un ebook",
|
"LabelHasEbook": "A un livre numérique",
|
||||||
"LabelHasSupplementaryEbook": "Has supplementary ebook",
|
"LabelHasSupplementaryEbook": "A un livre numérique supplémentaire",
|
||||||
"LabelHeavy": "Puissant",
|
"LabelHeavy": "Puissant",
|
||||||
"LabelHigh": "Importante",
|
"LabelHigh": "Importante",
|
||||||
"LabelHost": "Hôte",
|
"LabelHost": "Hôte",
|
||||||
"LabelIncomplete": "Incomplet",
|
|
||||||
"LabelInProgress": "En cours",
|
"LabelInProgress": "En cours",
|
||||||
|
"LabelIncomplete": "Incomplet",
|
||||||
"LabelInternalAppStorage": "Stockage Interne de l'application",
|
"LabelInternalAppStorage": "Stockage Interne de l'application",
|
||||||
"LabelJumpBackwardsTime": "Durée du saut arrière",
|
"LabelJumpBackwardsTime": "Durée du saut arrière",
|
||||||
"LabelJumpForwardsTime": "Durée du saut avant",
|
"LabelJumpForwardsTime": "Durée du saut avant",
|
||||||
"LabelLanguage": "Langue",
|
"LabelLanguage": "Langue",
|
||||||
"LabelLayout": "Arrangement",
|
"LabelLayout": "Mise en page",
|
||||||
"LabelLayoutAuto": "Automatique",
|
"LabelLayoutAuto": "Automatique",
|
||||||
"LabelLayoutSinglePage": "Page seul",
|
"LabelLayoutSinglePage": "Page seule",
|
||||||
"LabelLight": "Légé",
|
"LabelLight": "Léger",
|
||||||
"LabelLineSpacing": "Interligne",
|
"LabelLineSpacing": "Interligne",
|
||||||
"LabelListenAgain": "Ré-écouter",
|
"LabelListenAgain": "Écouter à nouveau",
|
||||||
"LabelLocalBooks": "Livres Locaux",
|
"LabelLocalBooks": "Livres locaux",
|
||||||
"LabelLocalPodcasts": "Podcasts Locaux",
|
"LabelLocalPodcasts": "Podcasts locaux",
|
||||||
"LabelLockOrientation": "Verrouiller l'orientation",
|
"LabelLockOrientation": "Verrouiller l'orientation",
|
||||||
"LabelLockPlayer": "Verrouiller le lecteur",
|
"LabelLockPlayer": "Verrouiller le lecteur",
|
||||||
"LabelLow": "Basse",
|
"LabelLow": "Basse",
|
||||||
"LabelMediaType": "Type de média",
|
"LabelMediaType": "Type de média",
|
||||||
"LabelMedium": "Moyenne",
|
"LabelMedium": "Moyenne",
|
||||||
"LabelMore": "Plus",
|
"LabelMore": "Plus",
|
||||||
"LabelMoreInfo": "Plus d’info",
|
"LabelMoreInfo": "Plus d’infos",
|
||||||
"LabelName": "Nom",
|
"LabelName": "Nom",
|
||||||
"LabelNarrator": "Narrateur",
|
"LabelNarrator": "Narrateur",
|
||||||
"LabelNarrators": "Narrateurs",
|
"LabelNarrators": "Narrateurs",
|
||||||
"LabelNewestAuthors": "Auteurs Recents",
|
"LabelNavigateWithVolume": "Naviguer avec les touches de volume",
|
||||||
"LabelNewestEpisodes": "Épisodes Récents",
|
"LabelNavigateWithVolumeDisabled": "Désactivé",
|
||||||
|
"LabelNavigateWithVolumeEnabled": "Activé",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "En miroir",
|
||||||
|
"LabelNever": "Jamais",
|
||||||
|
"LabelNewestAuthors": "Auteurs récents",
|
||||||
|
"LabelNewestEpisodes": "Épisodes récents",
|
||||||
"LabelNo": "Non",
|
"LabelNo": "Non",
|
||||||
"LabelNotFinished": "Non terminé(e)",
|
"LabelNotFinished": "Non terminé",
|
||||||
"LabelNotStarted": "Non Démarré(e)",
|
"LabelNotStarted": "Pas commencé",
|
||||||
"LabelOff": "Éteint",
|
"LabelOff": "Éteint",
|
||||||
"LabelPassword": "Mot de passe",
|
"LabelPassword": "Mot de passe",
|
||||||
"LabelPath": "Chemin",
|
"LabelPath": "Chemin",
|
||||||
"LabelPlaybackDirect": "Direct",
|
"LabelPlaybackDirect": "Direct",
|
||||||
"LabelPlaybackLocal": "Local",
|
"LabelPlaybackLocal": "Local",
|
||||||
"LabelPlaybackSpeed": "Vitesse de Lecture",
|
"LabelPlaybackSpeed": "Vitesse de lecture",
|
||||||
"LabelPlaybackTranscode": "Transcoder",
|
"LabelPlaybackTranscode": "Transcoder",
|
||||||
"LabelPodcast": "Podcast",
|
"LabelPodcast": "Podcast",
|
||||||
"LabelPodcasts": "Podcasts",
|
"LabelPodcasts": "Podcasts",
|
||||||
"LabelPreventIndexing": "Empêcher l’indexation de votre flux par les bases de données iTunes et Google podcast",
|
"LabelPreventIndexing": "Empêcher l’indexation de votre flux par les bases de données iTunes et Google podcast",
|
||||||
"LabelProgress": "Progression",
|
"LabelProgress": "Progression",
|
||||||
"LabelPubDate": "Date de publication",
|
"LabelPubDate": "Date de publication",
|
||||||
"LabelPublishYear": "Année d’édition",
|
"LabelPublishYear": "Année de publication",
|
||||||
"LabelRead": "Lire",
|
"LabelRSSFeedCustomOwnerEmail": "Courriel personnalisée du propriétaire",
|
||||||
"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é",
|
"LabelRSSFeedCustomOwnerName": "Nom propriétaire personnalisé",
|
||||||
"LabelRSSFeedPreventIndexing": "Empêcher l’indexation",
|
"LabelRSSFeedPreventIndexing": "Empêcher l’indexation",
|
||||||
"LabelRSSFeedSlug": "Identificateur d’adresse du Flux RSS ",
|
"LabelRSSFeedSlug": "Identifiant d’URL du flux RSS",
|
||||||
|
"LabelRandomly": "Au hasard",
|
||||||
|
"LabelRead": "Lire",
|
||||||
|
"LabelReadAgain": "Lire à nouveau",
|
||||||
|
"LabelRecentSeries": "Séries récentes",
|
||||||
|
"LabelRecentlyAdded": "Ajouts récents",
|
||||||
|
"LabelRemoveFromPlaylist": "Supprimer de la Liste de Lecture",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Traduire le temps restant en fonction de la vitesse de lecture",
|
"LabelScaleElapsedTimeBySpeed": "Traduire le temps restant en fonction de la vitesse de lecture",
|
||||||
"LabelSeason": "Saison",
|
"LabelSeason": "Saison",
|
||||||
"LabelSelectADevice": "Sélectionner un Appareil",
|
"LabelSelectADevice": "Sélectionner un Appareil",
|
||||||
"LabelSeries": "Séries",
|
"LabelSeries": "Séries",
|
||||||
"LabelServerAddress": "Adresse du Serveur",
|
"LabelServerAddress": "Adresse du serveur",
|
||||||
"LabelSetEbookAsPrimary": "Définir comme principale",
|
"LabelSetEbookAsPrimary": "Définir comme principale",
|
||||||
"LabelSetEbookAsSupplementary": "Définir comme supplémentaire",
|
"LabelSetEbookAsSupplementary": "Définir comme supplémentaire",
|
||||||
"LabelShakeSensitivity": "Sensibilité de la secousse",
|
"LabelShakeSensitivity": "Sensibilité à la secousse",
|
||||||
"LabelShowAll": "Afficher Tout",
|
"LabelShowAll": "Tout afficher",
|
||||||
"LabelSize": "Taille",
|
"LabelSize": "Taille",
|
||||||
"LabelSleepTimer": "Minuterie",
|
"LabelSleepTimer": "Minuterie",
|
||||||
"LabelStart": "Démarrer",
|
"LabelStart": "Démarrer",
|
||||||
"LabelStartTime": "Heure de Démarrage",
|
"LabelStartTime": "Heure de démarrage",
|
||||||
"LabelStatsBestDay": "Meilleur Jour",
|
"LabelStatsBestDay": "Meilleur jour",
|
||||||
"LabelStatsDailyAverage": "Moyenne Journalière",
|
"LabelStatsDailyAverage": "Moyenne Journalière",
|
||||||
"LabelStatsDays": "Jours",
|
"LabelStatsDays": "Jours",
|
||||||
"LabelStatsDaysListened": "Jours d’écoute",
|
"LabelStatsDaysListened": "Jours d’écoute",
|
||||||
"LabelStatsInARow": "d’affilé(s)",
|
"LabelStatsInARow": "d’affilé(s)",
|
||||||
"LabelStatsItemsFinished": "Articles terminés",
|
"LabelStatsItemsFinished": "Éléments terminés",
|
||||||
"LabelStatsMinutes": "minutes",
|
"LabelStatsMinutes": "minutes",
|
||||||
"LabelStatsMinutesListening": "Minutes d’écoute",
|
"LabelStatsMinutesListening": "Minutes d’écoute",
|
||||||
"LabelStatsWeekListening": "Écoute de la semaine",
|
"LabelStatsWeekListening": "Écoute de la semaine",
|
||||||
|
"LabelStreamingUsingCellular": "Diffuser via les données mobiles",
|
||||||
"LabelTag": "Étiquette",
|
"LabelTag": "Étiquette",
|
||||||
"LabelTags": "Étiquettes",
|
"LabelTags": "Étiquettes",
|
||||||
"LabelTheme": "Thème",
|
"LabelTheme": "Thème",
|
||||||
@@ -226,37 +239,40 @@
|
|||||||
"LabelThemeLight": "Clair",
|
"LabelThemeLight": "Clair",
|
||||||
"LabelTimeRemaining": "{0} restantes",
|
"LabelTimeRemaining": "{0} restantes",
|
||||||
"LabelTitle": "Titre",
|
"LabelTitle": "Titre",
|
||||||
|
"LabelTotalSize": "Taille totale",
|
||||||
"LabelTotalTrack": "Pistes totale",
|
"LabelTotalTrack": "Pistes totale",
|
||||||
"LabelTracks": "Pistes",
|
"LabelTracks": "Pistes",
|
||||||
"LabelType": "Type",
|
"LabelType": "Type",
|
||||||
"LabelUnlockPlayer": "Déverrouiller le Lecteur",
|
"LabelUnlockPlayer": "Déverrouiller le lecteur",
|
||||||
"LabelUseBookshelfView": "Utiliser l'interface Bibliothèque",
|
"LabelUseBookshelfView": "Utiliser l'interface bibliothèque",
|
||||||
"LabelUser": "Utilisateur",
|
"LabelUser": "Utilisateur",
|
||||||
"LabelUsername": "Nom d’utilisateur",
|
"LabelUsername": "Nom d’utilisateur",
|
||||||
"LabelVeryHigh": "Très importante",
|
"LabelVeryHigh": "Très importante",
|
||||||
"LabelVeryLow": "Très peu importante",
|
"LabelVeryLow": "Très peu importante",
|
||||||
"LabelYourBookmarks": "Vos marque-pages",
|
"LabelYourBookmarks": "Vos favoris",
|
||||||
"LabelYourProgress": "Votre progression",
|
"LabelYourProgress": "Votre progression",
|
||||||
"MessageAndroid10Downloads": "Android 10 et en dessous utiliseront le stockage interne de l'application pour les téléchargements.",
|
"MessageAndroid10Downloads": "Android 10 et en dessous utiliseront le stockage interne de l'application pour les téléchargements.",
|
||||||
"MessageAttemptingServerConnection": "Tentative de connexion...",
|
"MessageAttemptingServerConnection": "Tentative de connexion...",
|
||||||
"MessageAudiobookshelfServerNotConnected": "Serveur Audiobookshelf non connecté",
|
"MessageAudiobookshelfServerNotConnected": "Serveur Audiobookshelf non connecté",
|
||||||
"MessageAudiobookshelfServerRequired": "<strong>Important!</strong> Cette application est faite pour fonctionner avec un serveur Audiobookshelf. L'application ne fournit aucun contenu.",
|
"MessageAudiobookshelfServerRequired": "<strong>Important !</strong> Cette application est faite pour fonctionner avec un serveur Audiobookshelf. L'application ne fournit aucun contenu.",
|
||||||
"MessageBookshelfEmpty": "Bibliothèque vide",
|
"MessageBookshelfEmpty": "Bibliothèque vide",
|
||||||
"MessageConfirmDeleteLocalEpisode": "Supprimer l'épisode local \"{0}\" de votre appareil ? Le fichier sur le serveur ne sera pas affecté.",
|
"MessageConfirmDeleteLocalEpisode": "Retirer 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.",
|
"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 ?",
|
"MessageConfirmDiscardProgress": "Êtes-vous sûr·e de vouloir supprimer votre progression ?",
|
||||||
"MessageConfirmMarkAsFinished": "Êtes vous sûre de vouloir marquer cette élement comme terminé ?",
|
"MessageConfirmDownloadUsingCellular": "Vous êtes sur le point d’effectuer un téléchargement en utilisant des données mobiles.Il se peut que des frais de données soient facturés par votre opérateur. Souhaitez-vous continuer ?",
|
||||||
"MessageConfirmRemoveBookmark": "Êtes vous sûre de vouloir supprimer le marque-page ?",
|
"MessageConfirmMarkAsFinished": "Êtes-vous sûr·e de vouloir marquer cette élement comme terminé ?",
|
||||||
|
"MessageConfirmRemoveBookmark": "Êtes-vous sûr·e de vouloir supprimer le marque-page ?",
|
||||||
|
"MessageConfirmStreamingUsingCellular": "Vous êtes sur le point de diffuser du contenu en utilisant des données mobiles. Il se peut que des frais de données soient facturés par votre opérateur. Souhaitez-vous continuer ?",
|
||||||
"MessageDiscardProgress": "Supprimer la progression",
|
"MessageDiscardProgress": "Supprimer la progression",
|
||||||
"MessageDownloadCompleteProcessing": "Téléchargements terminé. Analyse..",
|
"MessageDownloadCompleteProcessing": "Téléchargement terminé. Analyse…",
|
||||||
"MessageDownloading": "Téléchargement...",
|
"MessageDownloading": "Téléchargement…",
|
||||||
"MessageDownloadingEpisode": "Téléchargement de l’épisode",
|
"MessageDownloadingEpisode": "Téléchargement de l’épisode",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} épisode(s) mis en file pour téléchargement",
|
"MessageEpisodesQueuedForDownload": "{0} épisode(s) mis en file pour téléchargement",
|
||||||
"MessageFeedURLWillBe": "l’URL du flux sera {0}",
|
"MessageFeedURLWillBe": "l’URL du flux sera {0}",
|
||||||
"MessageFetching": "Récupération…",
|
"MessageFetching": "Récupération…",
|
||||||
"MessageFollowTheProjectOnGithub": "Suivre le project sur Github",
|
"MessageFollowTheProjectOnGithub": "Suivre le projet sur GitHub",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "L'élément à été téléchargé avec succès, mais impossible de créer l'entré dans la bibliothèque.",
|
"MessageItemDownloadCompleteFailedToCreate": "Le téléchargement est terminé mais l’ajout de l’élément dans la bibliothèque a échoué",
|
||||||
"MessageLoading": "Chargement...",
|
"MessageLoading": "Chargement…",
|
||||||
"MessageLoadingServerData": "Chargement des données du serveur...",
|
"MessageLoadingServerData": "Chargement des données du serveur...",
|
||||||
"MessageMarkAsFinished": "Marquer comme terminé",
|
"MessageMarkAsFinished": "Marquer comme terminé",
|
||||||
"MessageMediaLinkedToADifferentServer": "L'élément est lié à un serveur Audiobookshelf sur une autre adresse ({0}). La progression sera synchroniser lors de la connexion au serveur à cette adresse.",
|
"MessageMediaLinkedToADifferentServer": "L'élément est lié à un serveur Audiobookshelf sur une autre adresse ({0}). La progression sera synchroniser lors de la connexion au serveur à cette adresse.",
|
||||||
@@ -264,33 +280,35 @@
|
|||||||
"MessageMediaLinkedToServer": "Lié au serveur {0}",
|
"MessageMediaLinkedToServer": "Lié au serveur {0}",
|
||||||
"MessageMediaLinkedToThisServer": "L'élément téléchargé est lié à a ce serveur",
|
"MessageMediaLinkedToThisServer": "L'élément téléchargé est lié à a ce serveur",
|
||||||
"MessageMediaNotLinkedToServer": "L'élément n'est lié à aucun serveur. La progression ne sera pas synchronisé.",
|
"MessageMediaNotLinkedToServer": "L'élément n'est lié à aucun serveur. La progression ne sera pas synchronisé.",
|
||||||
"MessageNoBookmarks": "Aucun marque-page",
|
"MessageNoBookmarks": "Aucun favoris",
|
||||||
"MessageNoChapters": "Aucun chapitre",
|
"MessageNoChapters": "Aucun chapitre",
|
||||||
"MessageNoItems": "Aucun article",
|
"MessageNoItems": "Aucun élément",
|
||||||
"MessageNoItemsFound": "Aucun article trouvé",
|
"MessageNoItemsFound": "Aucun élément trouvé",
|
||||||
"MessageNoListeningSessions": "Aucune session d’écoute en cours",
|
"MessageNoListeningSessions": "Aucune session d’écoute en cours",
|
||||||
"MessageNoMediaFolders": "Aucun dossier multimédia",
|
"MessageNoMediaFolders": "Aucun dossier multimédia",
|
||||||
"MessageNoNetworkConnection": "Pas de connexion réseau",
|
"MessageNoNetworkConnection": "Pas de connexion réseau",
|
||||||
"MessageNoPodcastsFound": "Aucun podcast trouvé",
|
"MessageNoPodcastsFound": "Aucun podcast trouvé",
|
||||||
"MessageNoSeries": "No series",
|
"MessageNoSeries": "Aucune série",
|
||||||
"MessageNoUpdatesWereNecessary": "Aucune mise à jour n’était nécessaire",
|
"MessageNoUpdatesWereNecessary": "Aucune mise à jour n’était nécessaire",
|
||||||
"MessageNoUserPlaylists": "Vous n’avez aucune liste de lecture",
|
"MessageNoUserPlaylists": "Vous n’avez aucune liste de lecture",
|
||||||
"MessageReportBugsAndContribute": "Remonter des anomalies, demander des fonctionnalités et contribuer sur",
|
"MessageReportBugsAndContribute": "Signalez des anomalies, demandez des fonctionnalités et contribuez sur",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket connecté via données cellulaire limitée",
|
"MessageSocketConnectedOverMeteredCellular": "Socket connecté via données cellulaire limitée",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket connecté via wifi limitée",
|
"MessageSocketConnectedOverMeteredWifi": "Socket connecté via Wi-Fi limitée",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Socket connecté via données cellulaire",
|
"MessageSocketConnectedOverUnmeteredCellular": "Socket connecté via données cellulaire",
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Socket connecté via wifi",
|
"MessageSocketConnectedOverUnmeteredWifi": "Socket connecté via Wi-Fi",
|
||||||
"MessageSocketNotConnected": "Socket non connecté",
|
"MessageSocketNotConnected": "Socket non connecté",
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Attention : la majorité des application de podcast nécessite une adresse de flux en HTTPS.",
|
"NoteRSSFeedPodcastAppsHttps": "Attention : la majorité des application de podcast nécessite une adresse de flux HTTPS",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Attention : un ou plusieurs de vos épisodes ne possèdent pas de date de publication. Certaines applications de podcast le requièrent.",
|
"NoteRSSFeedPodcastAppsPubDate": "Attention : un ou plusieurs de vos épisodes ne possèdent pas de date de publication. Certaines applications de podcast le requièrent.",
|
||||||
"ToastBookmarkCreateFailed": "Échec de la création de marque-page",
|
"ToastBookmarkCreateFailed": "Échec de la création de marque-page",
|
||||||
"ToastBookmarkRemoveFailed": "Échec de la suppression de marque-page",
|
"ToastBookmarkRemoveFailed": "Échec de la suppression de marque-page",
|
||||||
"ToastBookmarkUpdateFailed": "Échec de la mise à jour de marsue-page",
|
"ToastBookmarkUpdateFailed": "Échec de la mise à jour de marsue-page",
|
||||||
|
"ToastDownloadNotAllowedOnCellular": "Le téléchargement sur les données mobile n’est pas autorisé",
|
||||||
"ToastItemMarkedAsFinishedFailed": "Échec de l’annotation terminée",
|
"ToastItemMarkedAsFinishedFailed": "Échec de l’annotation terminée",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "Échec de l’annotation non-terminée",
|
"ToastItemMarkedAsNotFinishedFailed": "Échec de l’annotation non-terminée",
|
||||||
"ToastPlaylistCreateFailed": "Échec de la création de la liste de lecture",
|
"ToastPlaylistCreateFailed": "Échec de la création de la liste de lecture",
|
||||||
"ToastPodcastCreateFailed": "Échec de la création du Podcast",
|
"ToastPodcastCreateFailed": "Échec de la création du Podcast",
|
||||||
"ToastPodcastCreateSuccess": "Podcast créé",
|
"ToastPodcastCreateSuccess": "Podcast créé avec succès",
|
||||||
"ToastRSSFeedCloseFailed": "Échec de la fermeture du flux RSS",
|
"ToastRSSFeedCloseFailed": "Échec de la fermeture du flux RSS",
|
||||||
"ToastRSSFeedCloseSuccess": "Flux RSS fermé"
|
"ToastRSSFeedCloseSuccess": "Flux RSS fermé",
|
||||||
}
|
"ToastStreamingNotAllowedOnCellular": "La diffusion sur les données mobile n’est pas autorisée"
|
||||||
|
}
|
||||||
|
|||||||
+5
-270
@@ -1,296 +1,31 @@
|
|||||||
{
|
{
|
||||||
"ButtonAdd": "ઉમેરો",
|
"ButtonAdd": "ઉમેરો",
|
||||||
"ButtonAddNewServer": "Add New Server",
|
|
||||||
"ButtonAuthors": "લેખકો",
|
"ButtonAuthors": "લેખકો",
|
||||||
"ButtonBack": "Back",
|
|
||||||
"ButtonCancel": "રદ કરો",
|
"ButtonCancel": "રદ કરો",
|
||||||
"ButtonCancelTimer": "Cancel Timer",
|
"ButtonClearFilter": "ફિલ્ટર જતુ કરો",
|
||||||
"ButtonClearFilter": "ફિલ્ટર જતુ કરો ",
|
|
||||||
"ButtonCloseFeed": "ફીડ બંધ કરો",
|
"ButtonCloseFeed": "ફીડ બંધ કરો",
|
||||||
"ButtonCollections": "સંગ્રહ",
|
"ButtonCollections": "સંગ્રહ",
|
||||||
"ButtonConnect": "Connect",
|
|
||||||
"ButtonConnectToServer": "Connect to Server",
|
|
||||||
"ButtonCreate": "બનાવો",
|
"ButtonCreate": "બનાવો",
|
||||||
"ButtonCreateBookmark": "Create Bookmark",
|
|
||||||
"ButtonCreateNewPlaylist": "Create New Playlist",
|
|
||||||
"ButtonDelete": "કાઢી નાખો",
|
"ButtonDelete": "કાઢી નાખો",
|
||||||
"ButtonDeleteLocalEpisode": "Delete local episode",
|
|
||||||
"ButtonDeleteLocalFile": "Delete local file",
|
|
||||||
"ButtonDeleteLocalItem": "Delete local item",
|
|
||||||
"ButtonDisableAutoTimer": "Disable Auto Timer",
|
|
||||||
"ButtonDisconnect": "Disconnect",
|
|
||||||
"ButtonGoToWebClient": "Go to Web Client",
|
|
||||||
"ButtonHistory": "History",
|
|
||||||
"ButtonHome": "ઘર",
|
"ButtonHome": "ઘર",
|
||||||
"ButtonIssues": "સમસ્યાઓ",
|
"ButtonIssues": "સમસ્યાઓ",
|
||||||
"ButtonLatest": "નવીનતમ",
|
"ButtonLatest": "નવીનતમ",
|
||||||
"ButtonLibrary": "પુસ્તકાલય",
|
"ButtonLibrary": "પુસ્તકાલય",
|
||||||
"ButtonLocalMedia": "Local Media",
|
|
||||||
"ButtonManageLocalFiles": "Manage Local Files",
|
|
||||||
"ButtonNewFolder": "New Folder",
|
|
||||||
"ButtonNextEpisode": "Next Episode",
|
|
||||||
"ButtonOpenFeed": "ફીડ ખોલો",
|
"ButtonOpenFeed": "ફીડ ખોલો",
|
||||||
"ButtonOverride": "Override",
|
|
||||||
"ButtonPause": "Pause",
|
|
||||||
"ButtonPlay": "ચલાવો",
|
"ButtonPlay": "ચલાવો",
|
||||||
"ButtonPlaying": "ચલાવી રહ્યું છે",
|
"ButtonPlaying": "ચલાવી રહ્યું છે",
|
||||||
"ButtonPlaylists": "પ્લેલિસ્ટ",
|
"ButtonPlaylists": "પ્લેલિસ્ટ",
|
||||||
"ButtonRead": "વાંચો",
|
"ButtonRead": "વાંચો",
|
||||||
"ButtonRemove": "કાઢી નાખો",
|
"ButtonRemove": "કાઢી નાખો",
|
||||||
"ButtonRemoveFromServer": "Remove from Server",
|
|
||||||
"ButtonSave": "સાચવો",
|
"ButtonSave": "સાચવો",
|
||||||
"ButtonSaveOrder": "Save Order",
|
|
||||||
"ButtonSearch": "શોધો",
|
"ButtonSearch": "શોધો",
|
||||||
"ButtonSendEbookToDevice": "Send Ebook to Device",
|
|
||||||
"ButtonSeries": "સિરીઝ",
|
"ButtonSeries": "સિરીઝ",
|
||||||
"ButtonSetTimer": "Set Timer",
|
|
||||||
"ButtonStream": "Stream",
|
|
||||||
"ButtonSubmit": "સબમિટ કરો",
|
"ButtonSubmit": "સબમિટ કરો",
|
||||||
"ButtonSwitchServerUser": "Switch Server/User",
|
|
||||||
"ButtonUserStats": "User Stats",
|
|
||||||
"ButtonYes": "હા",
|
"ButtonYes": "હા",
|
||||||
"HeaderAccount": "એકાઉન્ટ",
|
"HeaderAccount": "એકાઉન્ટ",
|
||||||
"HeaderAdvanced": "અડ્વાન્સડ",
|
"HeaderAdvanced": "અડ્વાન્સડ",
|
||||||
"HeaderAudioTracks": "Audio Tracks",
|
|
||||||
"HeaderChapters": "Chapters",
|
|
||||||
"HeaderCollection": "Collection",
|
|
||||||
"HeaderCollectionItems": "Collection Items",
|
|
||||||
"HeaderConnectionStatus": "Connection Status",
|
|
||||||
"HeaderDetails": "Details",
|
|
||||||
"HeaderDownloads": "Downloads",
|
|
||||||
"HeaderEbookFiles": "Ebook Files",
|
|
||||||
"HeaderEpisodes": "Episodes",
|
|
||||||
"HeaderEreaderSettings": "Ereader Settings",
|
|
||||||
"HeaderLatestEpisodes": "Latest episodes",
|
|
||||||
"HeaderLibraries": "Libraries",
|
|
||||||
"HeaderLocalFolders": "Local Folders",
|
|
||||||
"HeaderLocalLibraryItems": "Local Library Items",
|
|
||||||
"HeaderNewPlaylist": "New Playlist",
|
|
||||||
"HeaderOpenRSSFeed": "Open RSS Feed",
|
|
||||||
"HeaderPlaybackSettings": "Playback Settings",
|
|
||||||
"HeaderPlaylist": "Playlist",
|
|
||||||
"HeaderPlaylistItems": "Playlist Items",
|
|
||||||
"HeaderRSSFeed": "RSS Feed",
|
|
||||||
"HeaderRSSFeedGeneral": "RSS Details",
|
|
||||||
"HeaderRSSFeedIsOpen": "RSS Feed is Open",
|
|
||||||
"HeaderSelectDownloadLocation": "Select Download Location",
|
|
||||||
"HeaderSettings": "Settings",
|
|
||||||
"HeaderSleepTimer": "Sleep Timer",
|
|
||||||
"HeaderSleepTimerSettings": "Sleep Timer Settings",
|
|
||||||
"HeaderStatsMinutesListeningChart": "Minutes Listening (last 7 days)",
|
|
||||||
"HeaderStatsRecentSessions": "Recent Sessions",
|
|
||||||
"HeaderTableOfContents": "Table of Contents",
|
|
||||||
"HeaderUserInterfaceSettings": "User Interface Settings",
|
|
||||||
"HeaderYourStats": "Your Stats",
|
|
||||||
"LabelAdded": "Added",
|
|
||||||
"LabelAddedAt": "Added At",
|
|
||||||
"LabelAddToPlaylist": "Add to Playlist",
|
|
||||||
"LabelAll": "All",
|
|
||||||
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
|
|
||||||
"LabelAuthor": "Author",
|
|
||||||
"LabelAuthorFirstLast": "Author (First Last)",
|
|
||||||
"LabelAuthorLastFirst": "Author (Last, First)",
|
|
||||||
"LabelAuthors": "Authors",
|
|
||||||
"LabelAutoDownloadEpisodes": "Auto Download Episodes",
|
|
||||||
"LabelAutoRewindTime": "Auto rewind time",
|
|
||||||
"LabelAutoSleepTimer": "Auto sleep timer",
|
|
||||||
"LabelAutoSleepTimerAutoRewind": "Auto sleep timer auto rewind",
|
|
||||||
"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",
|
|
||||||
"LabelClosePlayer": "Close player",
|
|
||||||
"LabelCollapseSeries": "Collapse Series",
|
|
||||||
"LabelComplete": "Complete",
|
|
||||||
"LabelContinueBooks": "Continue Books",
|
|
||||||
"LabelContinueEpisodes": "Continue Episodes",
|
|
||||||
"LabelContinueListening": "Continue Listening",
|
|
||||||
"LabelContinueReading": "Continue Reading",
|
|
||||||
"LabelContinueSeries": "Continue Series",
|
|
||||||
"LabelCustomTime": "Custom time",
|
|
||||||
"LabelDescription": "Description",
|
|
||||||
"LabelDisableAudioFadeOut": "Disable audio fade out",
|
|
||||||
"LabelDisableAudioFadeOutHelp": "Audio volume will start decreasing when there is less than 1 minute remaining on the sleep timer. Enable this setting to not fade out.",
|
|
||||||
"LabelDisableAutoRewind": "Disable auto rewind",
|
|
||||||
"LabelDisableShakeToReset": "Disable shake to reset",
|
|
||||||
"LabelDisableShakeToResetHelp": "Shaking your device while the timer is running OR within 2 minutes of the timer expiring will reset the sleep timer. Enable this setting to disable shake to reset.",
|
|
||||||
"LabelDisableVibrateOnReset": "Disable vibrate on reset",
|
|
||||||
"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",
|
|
||||||
"LabelDownloaded": "Downloaded",
|
|
||||||
"LabelDuration": "Duration",
|
|
||||||
"LabelEbook": "Ebook",
|
|
||||||
"LabelEbooks": "Ebooks",
|
|
||||||
"LabelEnable": "Enable",
|
|
||||||
"LabelEnableMp3IndexSeeking": "Enable mp3 index seeking",
|
|
||||||
"LabelEnableMp3IndexSeekingHelp": "This setting should only be enabled if you have mp3 files that are not seeking correctly. Inaccurate seeking is most likely due to Variable birate (VBR) MP3 files. This setting will force index seeking, in which a time-to-byte mapping is built as the file is read. In some cases with large MP3 files there will be a delay when seeking towards the end of the file.",
|
|
||||||
"LabelEnd": "End",
|
|
||||||
"LabelEndOfChapter": "End of Chapter",
|
|
||||||
"LabelEndTime": "End time",
|
|
||||||
"LabelEpisode": "Episode",
|
|
||||||
"LabelFeedURL": "Feed URL",
|
|
||||||
"LabelFile": "File",
|
|
||||||
"LabelFileBirthtime": "File Birthtime",
|
|
||||||
"LabelFileModified": "File Modified",
|
|
||||||
"LabelFilename": "Filename",
|
|
||||||
"LabelFinished": "Finished",
|
|
||||||
"LabelFolder": "Folder",
|
|
||||||
"LabelFontScale": "Font scale",
|
|
||||||
"LabelGenre": "Genre",
|
|
||||||
"LabelGenres": "Genres",
|
|
||||||
"LabelHapticFeedback": "Haptic feedback",
|
|
||||||
"LabelHasEbook": "Has ebook",
|
|
||||||
"LabelHasSupplementaryEbook": "Has supplementary ebook",
|
|
||||||
"LabelHeavy": "Heavy",
|
|
||||||
"LabelHigh": "High",
|
|
||||||
"LabelHost": "Host",
|
|
||||||
"LabelIncomplete": "Incomplete",
|
|
||||||
"LabelInProgress": "In Progress",
|
|
||||||
"LabelInternalAppStorage": "Internal App Storage",
|
|
||||||
"LabelJumpBackwardsTime": "Jump backwards time",
|
|
||||||
"LabelJumpForwardsTime": "Jump forwards time",
|
|
||||||
"LabelLanguage": "Language",
|
|
||||||
"LabelLayout": "Layout",
|
|
||||||
"LabelLayoutAuto": "Auto",
|
|
||||||
"LabelLayoutSinglePage": "Single page",
|
|
||||||
"LabelLight": "Light",
|
|
||||||
"LabelLineSpacing": "Line spacing",
|
|
||||||
"LabelListenAgain": "Listen Again",
|
|
||||||
"LabelLocalBooks": "Local Books",
|
|
||||||
"LabelLocalPodcasts": "Local Podcasts",
|
|
||||||
"LabelLockOrientation": "Lock orientation",
|
|
||||||
"LabelLockPlayer": "Lock Player",
|
|
||||||
"LabelLow": "Low",
|
|
||||||
"LabelMediaType": "Media Type",
|
|
||||||
"LabelMedium": "Medium",
|
|
||||||
"LabelMore": "More",
|
|
||||||
"LabelMoreInfo": "More Info",
|
|
||||||
"LabelName": "Name",
|
|
||||||
"LabelNarrator": "Narrator",
|
|
||||||
"LabelNarrators": "Narrators",
|
|
||||||
"LabelNewestAuthors": "Newest Authors",
|
|
||||||
"LabelNewestEpisodes": "Newest Episodes",
|
|
||||||
"LabelNo": "No",
|
|
||||||
"LabelNotFinished": "Not Finished",
|
|
||||||
"LabelNotStarted": "Not Started",
|
|
||||||
"LabelOff": "Off",
|
|
||||||
"LabelPassword": "Password",
|
|
||||||
"LabelPath": "Path",
|
|
||||||
"LabelPlaybackDirect": "Direct",
|
|
||||||
"LabelPlaybackLocal": "Local",
|
|
||||||
"LabelPlaybackSpeed": "Playback Speed",
|
|
||||||
"LabelPlaybackTranscode": "Transcode",
|
|
||||||
"LabelPodcast": "Podcast",
|
|
||||||
"LabelPodcasts": "Podcasts",
|
|
||||||
"LabelPreventIndexing": "Prevent your feed from being indexed by iTunes and Google podcast directories",
|
|
||||||
"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",
|
|
||||||
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
|
|
||||||
"LabelSeason": "Season",
|
|
||||||
"LabelSelectADevice": "Select a device",
|
|
||||||
"LabelSeries": "Series",
|
|
||||||
"LabelServerAddress": "Server address",
|
|
||||||
"LabelSetEbookAsPrimary": "Set as primary",
|
|
||||||
"LabelSetEbookAsSupplementary": "Set as supplementary",
|
|
||||||
"LabelShakeSensitivity": "Shake sensitivity",
|
|
||||||
"LabelShowAll": "Show All",
|
|
||||||
"LabelSize": "Size",
|
|
||||||
"LabelSleepTimer": "Sleep timer",
|
|
||||||
"LabelStart": "Start",
|
|
||||||
"LabelStartTime": "Start Time",
|
"LabelStartTime": "Start Time",
|
||||||
"LabelStatsBestDay": "Best Day",
|
"MessageFollowTheProjectOnGithub": "Follow the project on GitHub",
|
||||||
"LabelStatsDailyAverage": "Daily Average",
|
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered Wi-Fi",
|
||||||
"LabelStatsDays": "Days",
|
"MessageSocketConnectedOverUnmeteredWifi": "Socket connected over unmetered Wi-Fi"
|
||||||
"LabelStatsDaysListened": "Days Listened",
|
}
|
||||||
"LabelStatsInARow": "in a row",
|
|
||||||
"LabelStatsItemsFinished": "Items Finished",
|
|
||||||
"LabelStatsMinutes": "minutes",
|
|
||||||
"LabelStatsMinutesListening": "Minutes Listening",
|
|
||||||
"LabelStatsWeekListening": "Week Listening",
|
|
||||||
"LabelTag": "Tag",
|
|
||||||
"LabelTags": "Tags",
|
|
||||||
"LabelTheme": "Theme",
|
|
||||||
"LabelThemeDark": "Dark",
|
|
||||||
"LabelThemeLight": "Light",
|
|
||||||
"LabelTimeRemaining": "{0} remaining",
|
|
||||||
"LabelTitle": "Title",
|
|
||||||
"LabelTotalTrack": "Total Track",
|
|
||||||
"LabelTracks": "Tracks",
|
|
||||||
"LabelType": "Type",
|
|
||||||
"LabelUnlockPlayer": "Unlock Player",
|
|
||||||
"LabelUseBookshelfView": "Use bookshelf view",
|
|
||||||
"LabelUser": "User",
|
|
||||||
"LabelUsername": "Username",
|
|
||||||
"LabelVeryHigh": "Very High",
|
|
||||||
"LabelVeryLow": "Very Low",
|
|
||||||
"LabelYourBookmarks": "Your Bookmarks",
|
|
||||||
"LabelYourProgress": "Your Progress",
|
|
||||||
"MessageAndroid10Downloads": "Android 10 and below will use internal app storage for downloads.",
|
|
||||||
"MessageAttemptingServerConnection": "Attempting server connection...",
|
|
||||||
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf server not connected",
|
|
||||||
"MessageAudiobookshelfServerRequired": "<strong>Important!</strong> This app is designed to work with an Audiobookshelf server that you or someone you know is hosting. This app does not provide any content.",
|
|
||||||
"MessageBookshelfEmpty": "Bookshelf empty",
|
|
||||||
"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?",
|
|
||||||
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
|
|
||||||
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
|
|
||||||
"MessageDiscardProgress": "Discard Progress",
|
|
||||||
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
|
|
||||||
"MessageDownloading": "Downloading...",
|
|
||||||
"MessageDownloadingEpisode": "Downloading episode",
|
|
||||||
"MessageEpisodesQueuedForDownload": "{0} Episode(s) queued for download",
|
|
||||||
"MessageFeedURLWillBe": "Feed URL will be {0}",
|
|
||||||
"MessageFetching": "Fetching...",
|
|
||||||
"MessageFollowTheProjectOnGithub": "Follow the project on Github",
|
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Item download complete but failed to create library item",
|
|
||||||
"MessageLoading": "Loading...",
|
|
||||||
"MessageLoadingServerData": "Loading server data...",
|
|
||||||
"MessageMarkAsFinished": "Mark as Finished",
|
|
||||||
"MessageMediaLinkedToADifferentServer": "Media is linked to an Audiobookshelf server on a different address ({0}). Progress will be synced when connected to this server address.",
|
|
||||||
"MessageMediaLinkedToADifferentUser": "Media is linked to this server but was downloaded by a different user. Progress will only be synced to the user that downloaded it.",
|
|
||||||
"MessageMediaLinkedToServer": "Linked to server {0}",
|
|
||||||
"MessageMediaLinkedToThisServer": "Downloaded media is linked to this server",
|
|
||||||
"MessageMediaNotLinkedToServer": "Media is not linked to an Audiobookshelf server. No progress will be synced.",
|
|
||||||
"MessageNoBookmarks": "No Bookmarks",
|
|
||||||
"MessageNoChapters": "No Chapters",
|
|
||||||
"MessageNoItems": "No Items",
|
|
||||||
"MessageNoItemsFound": "No items found",
|
|
||||||
"MessageNoListeningSessions": "No Listening Sessions",
|
|
||||||
"MessageNoMediaFolders": "No Media Folders",
|
|
||||||
"MessageNoNetworkConnection": "No network connection",
|
|
||||||
"MessageNoPodcastsFound": "No podcasts found",
|
|
||||||
"MessageNoSeries": "No series",
|
|
||||||
"MessageNoUpdatesWereNecessary": "No updates were necessary",
|
|
||||||
"MessageNoUserPlaylists": "You have no playlists",
|
|
||||||
"MessageReportBugsAndContribute": "Report bugs, request features, and contribute on",
|
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket connected over metered cellular",
|
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered wifi",
|
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Socket connected over unmetered cellular",
|
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Socket connected over unmetered wifi",
|
|
||||||
"MessageSocketNotConnected": "Socket not connected",
|
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Warning: Most podcast apps will require the RSS feed URL is using HTTPS",
|
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Warning: 1 or more of your episodes do not have a Pub Date. Some podcast apps require this.",
|
|
||||||
"ToastBookmarkCreateFailed": "Failed to create bookmark",
|
|
||||||
"ToastBookmarkRemoveFailed": "Failed to remove bookmark",
|
|
||||||
"ToastBookmarkUpdateFailed": "Failed to update bookmark",
|
|
||||||
"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"
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
{}
|
||||||
+4
-269
@@ -1,296 +1,31 @@
|
|||||||
{
|
{
|
||||||
"ButtonAdd": "जोड़ें",
|
"ButtonAdd": "जोड़ें",
|
||||||
"ButtonAddNewServer": "Add New Server",
|
|
||||||
"ButtonAuthors": "लेखक",
|
"ButtonAuthors": "लेखक",
|
||||||
"ButtonBack": "Back",
|
|
||||||
"ButtonCancel": "रद्द करें",
|
"ButtonCancel": "रद्द करें",
|
||||||
"ButtonCancelTimer": "Cancel Timer",
|
|
||||||
"ButtonClearFilter": "लागू फ़िल्टर साफ़ करें",
|
"ButtonClearFilter": "लागू फ़िल्टर साफ़ करें",
|
||||||
"ButtonCloseFeed": "फ़ीड बंद करें",
|
"ButtonCloseFeed": "फ़ीड बंद करें",
|
||||||
"ButtonCollections": "संग्रह",
|
"ButtonCollections": "संग्रह",
|
||||||
"ButtonConnect": "Connect",
|
|
||||||
"ButtonConnectToServer": "Connect to Server",
|
|
||||||
"ButtonCreate": "बनाएं",
|
"ButtonCreate": "बनाएं",
|
||||||
"ButtonCreateBookmark": "Create Bookmark",
|
|
||||||
"ButtonCreateNewPlaylist": "Create New Playlist",
|
|
||||||
"ButtonDelete": "हटाएं",
|
"ButtonDelete": "हटाएं",
|
||||||
"ButtonDeleteLocalEpisode": "Delete local episode",
|
|
||||||
"ButtonDeleteLocalFile": "Delete local file",
|
|
||||||
"ButtonDeleteLocalItem": "Delete local item",
|
|
||||||
"ButtonDisableAutoTimer": "Disable Auto Timer",
|
|
||||||
"ButtonDisconnect": "Disconnect",
|
|
||||||
"ButtonGoToWebClient": "Go to Web Client",
|
|
||||||
"ButtonHistory": "History",
|
|
||||||
"ButtonHome": "घर",
|
"ButtonHome": "घर",
|
||||||
"ButtonIssues": "समस्याएं",
|
"ButtonIssues": "समस्याएं",
|
||||||
"ButtonLatest": "नवीनतम",
|
"ButtonLatest": "नवीनतम",
|
||||||
"ButtonLibrary": "पुस्तकालय",
|
"ButtonLibrary": "पुस्तकालय",
|
||||||
"ButtonLocalMedia": "Local Media",
|
|
||||||
"ButtonManageLocalFiles": "Manage Local Files",
|
|
||||||
"ButtonNewFolder": "New Folder",
|
|
||||||
"ButtonNextEpisode": "Next Episode",
|
|
||||||
"ButtonOpenFeed": "फ़ीड खोलें",
|
"ButtonOpenFeed": "फ़ीड खोलें",
|
||||||
"ButtonOverride": "Override",
|
|
||||||
"ButtonPause": "Pause",
|
|
||||||
"ButtonPlay": "चलाएँ",
|
"ButtonPlay": "चलाएँ",
|
||||||
"ButtonPlaying": "चल रही है",
|
"ButtonPlaying": "चल रही है",
|
||||||
"ButtonPlaylists": "प्लेलिस्ट्स",
|
"ButtonPlaylists": "प्लेलिस्ट्स",
|
||||||
"ButtonRead": "पढ़ लिया",
|
"ButtonRead": "पढ़ लिया",
|
||||||
"ButtonRemove": "हटाएं",
|
"ButtonRemove": "हटाएं",
|
||||||
"ButtonRemoveFromServer": "Remove from Server",
|
|
||||||
"ButtonSave": "सहेजें",
|
"ButtonSave": "सहेजें",
|
||||||
"ButtonSaveOrder": "Save Order",
|
|
||||||
"ButtonSearch": "खोजें",
|
"ButtonSearch": "खोजें",
|
||||||
"ButtonSendEbookToDevice": "Send Ebook to Device",
|
|
||||||
"ButtonSeries": "सीरीज",
|
"ButtonSeries": "सीरीज",
|
||||||
"ButtonSetTimer": "Set Timer",
|
|
||||||
"ButtonStream": "Stream",
|
|
||||||
"ButtonSubmit": "जमा करें",
|
"ButtonSubmit": "जमा करें",
|
||||||
"ButtonSwitchServerUser": "Switch Server/User",
|
|
||||||
"ButtonUserStats": "User Stats",
|
|
||||||
"ButtonYes": "हाँ",
|
"ButtonYes": "हाँ",
|
||||||
"HeaderAccount": "खाता",
|
"HeaderAccount": "खाता",
|
||||||
"HeaderAdvanced": "विकसित",
|
"HeaderAdvanced": "विकसित",
|
||||||
"HeaderAudioTracks": "Audio Tracks",
|
|
||||||
"HeaderChapters": "Chapters",
|
|
||||||
"HeaderCollection": "Collection",
|
|
||||||
"HeaderCollectionItems": "Collection Items",
|
|
||||||
"HeaderConnectionStatus": "Connection Status",
|
|
||||||
"HeaderDetails": "Details",
|
|
||||||
"HeaderDownloads": "Downloads",
|
|
||||||
"HeaderEbookFiles": "Ebook Files",
|
|
||||||
"HeaderEpisodes": "Episodes",
|
|
||||||
"HeaderEreaderSettings": "Ereader Settings",
|
|
||||||
"HeaderLatestEpisodes": "Latest episodes",
|
|
||||||
"HeaderLibraries": "Libraries",
|
|
||||||
"HeaderLocalFolders": "Local Folders",
|
|
||||||
"HeaderLocalLibraryItems": "Local Library Items",
|
|
||||||
"HeaderNewPlaylist": "New Playlist",
|
|
||||||
"HeaderOpenRSSFeed": "Open RSS Feed",
|
|
||||||
"HeaderPlaybackSettings": "Playback Settings",
|
|
||||||
"HeaderPlaylist": "Playlist",
|
|
||||||
"HeaderPlaylistItems": "Playlist Items",
|
|
||||||
"HeaderRSSFeed": "RSS Feed",
|
|
||||||
"HeaderRSSFeedGeneral": "RSS Details",
|
|
||||||
"HeaderRSSFeedIsOpen": "RSS Feed is Open",
|
|
||||||
"HeaderSelectDownloadLocation": "Select Download Location",
|
|
||||||
"HeaderSettings": "Settings",
|
|
||||||
"HeaderSleepTimer": "Sleep Timer",
|
|
||||||
"HeaderSleepTimerSettings": "Sleep Timer Settings",
|
|
||||||
"HeaderStatsMinutesListeningChart": "Minutes Listening (last 7 days)",
|
|
||||||
"HeaderStatsRecentSessions": "Recent Sessions",
|
|
||||||
"HeaderTableOfContents": "Table of Contents",
|
|
||||||
"HeaderUserInterfaceSettings": "User Interface Settings",
|
|
||||||
"HeaderYourStats": "Your Stats",
|
|
||||||
"LabelAdded": "Added",
|
|
||||||
"LabelAddedAt": "Added At",
|
|
||||||
"LabelAddToPlaylist": "Add to Playlist",
|
|
||||||
"LabelAll": "All",
|
|
||||||
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
|
|
||||||
"LabelAuthor": "Author",
|
|
||||||
"LabelAuthorFirstLast": "Author (First Last)",
|
|
||||||
"LabelAuthorLastFirst": "Author (Last, First)",
|
|
||||||
"LabelAuthors": "Authors",
|
|
||||||
"LabelAutoDownloadEpisodes": "Auto Download Episodes",
|
|
||||||
"LabelAutoRewindTime": "Auto rewind time",
|
|
||||||
"LabelAutoSleepTimer": "Auto sleep timer",
|
|
||||||
"LabelAutoSleepTimerAutoRewind": "Auto sleep timer auto rewind",
|
|
||||||
"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",
|
|
||||||
"LabelClosePlayer": "Close player",
|
|
||||||
"LabelCollapseSeries": "Collapse Series",
|
|
||||||
"LabelComplete": "Complete",
|
|
||||||
"LabelContinueBooks": "Continue Books",
|
|
||||||
"LabelContinueEpisodes": "Continue Episodes",
|
|
||||||
"LabelContinueListening": "Continue Listening",
|
|
||||||
"LabelContinueReading": "Continue Reading",
|
|
||||||
"LabelContinueSeries": "Continue Series",
|
|
||||||
"LabelCustomTime": "Custom time",
|
|
||||||
"LabelDescription": "Description",
|
|
||||||
"LabelDisableAudioFadeOut": "Disable audio fade out",
|
|
||||||
"LabelDisableAudioFadeOutHelp": "Audio volume will start decreasing when there is less than 1 minute remaining on the sleep timer. Enable this setting to not fade out.",
|
|
||||||
"LabelDisableAutoRewind": "Disable auto rewind",
|
|
||||||
"LabelDisableShakeToReset": "Disable shake to reset",
|
|
||||||
"LabelDisableShakeToResetHelp": "Shaking your device while the timer is running OR within 2 minutes of the timer expiring will reset the sleep timer. Enable this setting to disable shake to reset.",
|
|
||||||
"LabelDisableVibrateOnReset": "Disable vibrate on reset",
|
|
||||||
"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",
|
|
||||||
"LabelDownloaded": "Downloaded",
|
|
||||||
"LabelDuration": "Duration",
|
|
||||||
"LabelEbook": "Ebook",
|
|
||||||
"LabelEbooks": "Ebooks",
|
|
||||||
"LabelEnable": "Enable",
|
|
||||||
"LabelEnableMp3IndexSeeking": "Enable mp3 index seeking",
|
|
||||||
"LabelEnableMp3IndexSeekingHelp": "This setting should only be enabled if you have mp3 files that are not seeking correctly. Inaccurate seeking is most likely due to Variable birate (VBR) MP3 files. This setting will force index seeking, in which a time-to-byte mapping is built as the file is read. In some cases with large MP3 files there will be a delay when seeking towards the end of the file.",
|
|
||||||
"LabelEnd": "End",
|
|
||||||
"LabelEndOfChapter": "End of Chapter",
|
|
||||||
"LabelEndTime": "End time",
|
|
||||||
"LabelEpisode": "Episode",
|
|
||||||
"LabelFeedURL": "Feed URL",
|
|
||||||
"LabelFile": "File",
|
|
||||||
"LabelFileBirthtime": "File Birthtime",
|
|
||||||
"LabelFileModified": "File Modified",
|
|
||||||
"LabelFilename": "Filename",
|
|
||||||
"LabelFinished": "Finished",
|
|
||||||
"LabelFolder": "Folder",
|
|
||||||
"LabelFontScale": "Font scale",
|
|
||||||
"LabelGenre": "Genre",
|
|
||||||
"LabelGenres": "Genres",
|
|
||||||
"LabelHapticFeedback": "Haptic feedback",
|
|
||||||
"LabelHasEbook": "Has ebook",
|
|
||||||
"LabelHasSupplementaryEbook": "Has supplementary ebook",
|
|
||||||
"LabelHeavy": "Heavy",
|
|
||||||
"LabelHigh": "High",
|
|
||||||
"LabelHost": "Host",
|
|
||||||
"LabelIncomplete": "Incomplete",
|
|
||||||
"LabelInProgress": "In Progress",
|
|
||||||
"LabelInternalAppStorage": "Internal App Storage",
|
|
||||||
"LabelJumpBackwardsTime": "Jump backwards time",
|
|
||||||
"LabelJumpForwardsTime": "Jump forwards time",
|
|
||||||
"LabelLanguage": "Language",
|
|
||||||
"LabelLayout": "Layout",
|
|
||||||
"LabelLayoutAuto": "Auto",
|
|
||||||
"LabelLayoutSinglePage": "Single page",
|
|
||||||
"LabelLight": "Light",
|
|
||||||
"LabelLineSpacing": "Line spacing",
|
|
||||||
"LabelListenAgain": "Listen Again",
|
|
||||||
"LabelLocalBooks": "Local Books",
|
|
||||||
"LabelLocalPodcasts": "Local Podcasts",
|
|
||||||
"LabelLockOrientation": "Lock orientation",
|
|
||||||
"LabelLockPlayer": "Lock Player",
|
|
||||||
"LabelLow": "Low",
|
|
||||||
"LabelMediaType": "Media Type",
|
|
||||||
"LabelMedium": "Medium",
|
|
||||||
"LabelMore": "More",
|
|
||||||
"LabelMoreInfo": "More Info",
|
|
||||||
"LabelName": "Name",
|
|
||||||
"LabelNarrator": "Narrator",
|
|
||||||
"LabelNarrators": "Narrators",
|
|
||||||
"LabelNewestAuthors": "Newest Authors",
|
|
||||||
"LabelNewestEpisodes": "Newest Episodes",
|
|
||||||
"LabelNo": "No",
|
|
||||||
"LabelNotFinished": "Not Finished",
|
|
||||||
"LabelNotStarted": "Not Started",
|
|
||||||
"LabelOff": "Off",
|
|
||||||
"LabelPassword": "Password",
|
|
||||||
"LabelPath": "Path",
|
|
||||||
"LabelPlaybackDirect": "Direct",
|
|
||||||
"LabelPlaybackLocal": "Local",
|
|
||||||
"LabelPlaybackSpeed": "Playback Speed",
|
|
||||||
"LabelPlaybackTranscode": "Transcode",
|
|
||||||
"LabelPodcast": "Podcast",
|
|
||||||
"LabelPodcasts": "Podcasts",
|
|
||||||
"LabelPreventIndexing": "Prevent your feed from being indexed by iTunes and Google podcast directories",
|
|
||||||
"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",
|
|
||||||
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
|
|
||||||
"LabelSeason": "Season",
|
|
||||||
"LabelSelectADevice": "Select a device",
|
|
||||||
"LabelSeries": "Series",
|
|
||||||
"LabelServerAddress": "Server address",
|
|
||||||
"LabelSetEbookAsPrimary": "Set as primary",
|
|
||||||
"LabelSetEbookAsSupplementary": "Set as supplementary",
|
|
||||||
"LabelShakeSensitivity": "Shake sensitivity",
|
|
||||||
"LabelShowAll": "Show All",
|
|
||||||
"LabelSize": "Size",
|
|
||||||
"LabelSleepTimer": "Sleep timer",
|
|
||||||
"LabelStart": "Start",
|
|
||||||
"LabelStartTime": "Start Time",
|
"LabelStartTime": "Start Time",
|
||||||
"LabelStatsBestDay": "Best Day",
|
"MessageFollowTheProjectOnGithub": "Follow the project on GitHub",
|
||||||
"LabelStatsDailyAverage": "Daily Average",
|
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered Wi-Fi",
|
||||||
"LabelStatsDays": "Days",
|
"MessageSocketConnectedOverUnmeteredWifi": "Socket connected over unmetered Wi-Fi"
|
||||||
"LabelStatsDaysListened": "Days Listened",
|
}
|
||||||
"LabelStatsInARow": "in a row",
|
|
||||||
"LabelStatsItemsFinished": "Items Finished",
|
|
||||||
"LabelStatsMinutes": "minutes",
|
|
||||||
"LabelStatsMinutesListening": "Minutes Listening",
|
|
||||||
"LabelStatsWeekListening": "Week Listening",
|
|
||||||
"LabelTag": "Tag",
|
|
||||||
"LabelTags": "Tags",
|
|
||||||
"LabelTheme": "Theme",
|
|
||||||
"LabelThemeDark": "Dark",
|
|
||||||
"LabelThemeLight": "Light",
|
|
||||||
"LabelTimeRemaining": "{0} remaining",
|
|
||||||
"LabelTitle": "Title",
|
|
||||||
"LabelTotalTrack": "Total Track",
|
|
||||||
"LabelTracks": "Tracks",
|
|
||||||
"LabelType": "Type",
|
|
||||||
"LabelUnlockPlayer": "Unlock Player",
|
|
||||||
"LabelUseBookshelfView": "Use bookshelf view",
|
|
||||||
"LabelUser": "User",
|
|
||||||
"LabelUsername": "Username",
|
|
||||||
"LabelVeryHigh": "Very High",
|
|
||||||
"LabelVeryLow": "Very Low",
|
|
||||||
"LabelYourBookmarks": "Your Bookmarks",
|
|
||||||
"LabelYourProgress": "Your Progress",
|
|
||||||
"MessageAndroid10Downloads": "Android 10 and below will use internal app storage for downloads.",
|
|
||||||
"MessageAttemptingServerConnection": "Attempting server connection...",
|
|
||||||
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf server not connected",
|
|
||||||
"MessageAudiobookshelfServerRequired": "<strong>Important!</strong> This app is designed to work with an Audiobookshelf server that you or someone you know is hosting. This app does not provide any content.",
|
|
||||||
"MessageBookshelfEmpty": "Bookshelf empty",
|
|
||||||
"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?",
|
|
||||||
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
|
|
||||||
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
|
|
||||||
"MessageDiscardProgress": "Discard Progress",
|
|
||||||
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
|
|
||||||
"MessageDownloading": "Downloading...",
|
|
||||||
"MessageDownloadingEpisode": "Downloading episode",
|
|
||||||
"MessageEpisodesQueuedForDownload": "{0} Episode(s) queued for download",
|
|
||||||
"MessageFeedURLWillBe": "Feed URL will be {0}",
|
|
||||||
"MessageFetching": "Fetching...",
|
|
||||||
"MessageFollowTheProjectOnGithub": "Follow the project on Github",
|
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Item download complete but failed to create library item",
|
|
||||||
"MessageLoading": "Loading...",
|
|
||||||
"MessageLoadingServerData": "Loading server data...",
|
|
||||||
"MessageMarkAsFinished": "Mark as Finished",
|
|
||||||
"MessageMediaLinkedToADifferentServer": "Media is linked to an Audiobookshelf server on a different address ({0}). Progress will be synced when connected to this server address.",
|
|
||||||
"MessageMediaLinkedToADifferentUser": "Media is linked to this server but was downloaded by a different user. Progress will only be synced to the user that downloaded it.",
|
|
||||||
"MessageMediaLinkedToServer": "Linked to server {0}",
|
|
||||||
"MessageMediaLinkedToThisServer": "Downloaded media is linked to this server",
|
|
||||||
"MessageMediaNotLinkedToServer": "Media is not linked to an Audiobookshelf server. No progress will be synced.",
|
|
||||||
"MessageNoBookmarks": "No Bookmarks",
|
|
||||||
"MessageNoChapters": "No Chapters",
|
|
||||||
"MessageNoItems": "No Items",
|
|
||||||
"MessageNoItemsFound": "No items found",
|
|
||||||
"MessageNoListeningSessions": "No Listening Sessions",
|
|
||||||
"MessageNoMediaFolders": "No Media Folders",
|
|
||||||
"MessageNoNetworkConnection": "No network connection",
|
|
||||||
"MessageNoPodcastsFound": "No podcasts found",
|
|
||||||
"MessageNoSeries": "No series",
|
|
||||||
"MessageNoUpdatesWereNecessary": "No updates were necessary",
|
|
||||||
"MessageNoUserPlaylists": "You have no playlists",
|
|
||||||
"MessageReportBugsAndContribute": "Report bugs, request features, and contribute on",
|
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket connected over metered cellular",
|
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered wifi",
|
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Socket connected over unmetered cellular",
|
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Socket connected over unmetered wifi",
|
|
||||||
"MessageSocketNotConnected": "Socket not connected",
|
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Warning: Most podcast apps will require the RSS feed URL is using HTTPS",
|
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Warning: 1 or more of your episodes do not have a Pub Date. Some podcast apps require this.",
|
|
||||||
"ToastBookmarkCreateFailed": "Failed to create bookmark",
|
|
||||||
"ToastBookmarkRemoveFailed": "Failed to remove bookmark",
|
|
||||||
"ToastBookmarkUpdateFailed": "Failed to update bookmark",
|
|
||||||
"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"
|
|
||||||
}
|
|
||||||
|
|||||||
+264
-246
@@ -1,296 +1,314 @@
|
|||||||
{
|
{
|
||||||
"ButtonAdd": "Dodaj",
|
"ButtonAdd": "Dodaj",
|
||||||
"ButtonAddNewServer": "Add New Server",
|
"ButtonAddNewServer": "Dodaj novi poslužitelj",
|
||||||
"ButtonAuthors": "Autori",
|
"ButtonAuthors": "Autori",
|
||||||
"ButtonBack": "Back",
|
"ButtonBack": "Natrag",
|
||||||
"ButtonCancel": "Odustani",
|
"ButtonCancel": "Odustani",
|
||||||
"ButtonCancelTimer": "Cancel Timer",
|
"ButtonCancelTimer": "Poništi timer",
|
||||||
"ButtonClearFilter": "Clear Filter",
|
"ButtonClearFilter": "Poništi filter",
|
||||||
"ButtonCloseFeed": "Zatvori feed",
|
"ButtonCloseFeed": "Zatvori izvor",
|
||||||
"ButtonCollections": "Kolekcije",
|
"ButtonCollections": "Zbirke",
|
||||||
"ButtonConnect": "Connect",
|
"ButtonConnect": "Povezivanje",
|
||||||
"ButtonConnectToServer": "Connect to Server",
|
"ButtonConnectToServer": "Poveži se s poslužiteljem",
|
||||||
"ButtonCreate": "Napravi",
|
"ButtonCreate": "Izradi",
|
||||||
"ButtonCreateBookmark": "Create Bookmark",
|
"ButtonCreateBookmark": "Izradi knjižnu oznaku",
|
||||||
"ButtonCreateNewPlaylist": "Create New Playlist",
|
"ButtonCreateNewPlaylist": "Izradi popis za izvođenje",
|
||||||
"ButtonDelete": "Obriši",
|
"ButtonDelete": "Izbriši",
|
||||||
"ButtonDeleteLocalEpisode": "Delete local episode",
|
"ButtonDeleteLocalEpisode": "Izbriši lokalni nastavak",
|
||||||
"ButtonDeleteLocalFile": "Delete local file",
|
"ButtonDeleteLocalFile": "Izbriši lokalnu datoteku",
|
||||||
"ButtonDeleteLocalItem": "Delete local item",
|
"ButtonDeleteLocalItem": "Izbriši lokalnu stavku",
|
||||||
"ButtonDisableAutoTimer": "Disable Auto Timer",
|
"ButtonDisableAutoTimer": "Onemogući automatski timer",
|
||||||
"ButtonDisconnect": "Disconnect",
|
"ButtonDisconnect": "Prekini vezu",
|
||||||
"ButtonGoToWebClient": "Go to Web Client",
|
"ButtonGoToWebClient": "Otvori web sučelje",
|
||||||
"ButtonHistory": "History",
|
"ButtonHistory": "Povijest",
|
||||||
"ButtonHome": "Početna stranica",
|
"ButtonHome": "Početna stranica",
|
||||||
"ButtonIssues": "Problemi",
|
"ButtonIssues": "Problemi",
|
||||||
"ButtonLatest": "Najnovije",
|
"ButtonLatest": "Najnovije",
|
||||||
"ButtonLibrary": "Biblioteka",
|
"ButtonLibrary": "Knjižnica",
|
||||||
"ButtonLocalMedia": "Local Media",
|
"ButtonLocalMedia": "Lokalni medijski zapisi",
|
||||||
"ButtonManageLocalFiles": "Manage Local Files",
|
"ButtonManageLocalFiles": "Upravljanje lokalnim datotekama",
|
||||||
"ButtonNewFolder": "New Folder",
|
"ButtonNewFolder": "Nova mapa",
|
||||||
"ButtonNextEpisode": "Next Episode",
|
"ButtonNextEpisode": "Sljedeći nastavak",
|
||||||
"ButtonOpenFeed": "Otvori feed",
|
"ButtonOpenFeed": "Otvori izvor",
|
||||||
"ButtonOverride": "Override",
|
"ButtonOverride": "Zanemari",
|
||||||
"ButtonPause": "Pause",
|
"ButtonPause": "Pauziraj",
|
||||||
"ButtonPlay": "Pokreni",
|
"ButtonPlay": "Reproduciraj",
|
||||||
"ButtonPlaying": "Playing",
|
"ButtonPlayEpisode": "Reproduciraj nastavak",
|
||||||
"ButtonPlaylists": "Playlists",
|
"ButtonPlaying": "Izvodi se",
|
||||||
|
"ButtonPlaylists": "Popisi za izvođenje",
|
||||||
"ButtonRead": "Pročitaj",
|
"ButtonRead": "Pročitaj",
|
||||||
"ButtonRemove": "Ukloni",
|
"ButtonRemove": "Ukloni",
|
||||||
"ButtonRemoveFromServer": "Remove from Server",
|
"ButtonRemoveFromServer": "Ukloni s poslužitelja",
|
||||||
"ButtonSave": "Spremi",
|
"ButtonSave": "Spremi",
|
||||||
"ButtonSaveOrder": "Save Order",
|
"ButtonSaveOrder": "Spremi redoslijed",
|
||||||
"ButtonSearch": "Traži",
|
"ButtonSearch": "Traži",
|
||||||
"ButtonSendEbookToDevice": "Send Ebook to Device",
|
"ButtonSendEbookToDevice": "Pošalji e-knjigu na uređaj",
|
||||||
"ButtonSeries": "Serije",
|
"ButtonSeries": "Serijali",
|
||||||
"ButtonSetTimer": "Set Timer",
|
"ButtonSetTimer": "Postavi timer",
|
||||||
"ButtonStream": "Stream",
|
"ButtonStream": "Izvođenje strujanjem",
|
||||||
"ButtonSubmit": "Submit",
|
"ButtonSubmit": "Pošalji",
|
||||||
"ButtonSwitchServerUser": "Switch Server/User",
|
"ButtonSwitchServerUser": "Promijeni poslužitelj/korisnika",
|
||||||
"ButtonUserStats": "User Stats",
|
"ButtonUserStats": "Statistika korisnika",
|
||||||
"ButtonYes": "Da",
|
"ButtonYes": "Da",
|
||||||
"HeaderAccount": "Korisnički račun",
|
"HeaderAccount": "Korisnički račun",
|
||||||
"HeaderAdvanced": "Napredno",
|
"HeaderAdvanced": "Napredno",
|
||||||
"HeaderAudioTracks": "Audio Tracks",
|
"HeaderAudioTracks": "Zvučni zapisi",
|
||||||
"HeaderChapters": "Poglavlja",
|
"HeaderChapters": "Poglavlja",
|
||||||
"HeaderCollection": "Kolekcija",
|
"HeaderCollection": "Zbirka",
|
||||||
"HeaderCollectionItems": "Stvari u kolekciji",
|
"HeaderCollectionItems": "Stavke u zbirci",
|
||||||
"HeaderConnectionStatus": "Connection Status",
|
"HeaderConnectionStatus": "Stanje veze",
|
||||||
"HeaderDetails": "Detalji",
|
"HeaderDataSettings": "Podatkovne postavke",
|
||||||
"HeaderDownloads": "Downloads",
|
"HeaderDetails": "Pojedinosti",
|
||||||
"HeaderEbookFiles": "Ebook Files",
|
"HeaderDownloads": "Preuzimanja",
|
||||||
"HeaderEpisodes": "Epizode",
|
"HeaderEbookFiles": "Datoteke e-knjiga",
|
||||||
"HeaderEreaderSettings": "Ereader Settings",
|
"HeaderEpisodes": "Nastavci",
|
||||||
"HeaderLatestEpisodes": "Najnovije epizode",
|
"HeaderEreaderSettings": "Postavke e-čitača",
|
||||||
"HeaderLibraries": "Biblioteke",
|
"HeaderLatestEpisodes": "Najnoviji nastavci",
|
||||||
"HeaderLocalFolders": "Local Folders",
|
"HeaderLibraries": "Knjižnice",
|
||||||
"HeaderLocalLibraryItems": "Local Library Items",
|
"HeaderLocalFolders": "Lokalne mape",
|
||||||
"HeaderNewPlaylist": "New Playlist",
|
"HeaderLocalLibraryItems": "Stavke iz lokalne knjižnice",
|
||||||
"HeaderOpenRSSFeed": "Otvori RSS Feed",
|
"HeaderNewPlaylist": "Novi popis za izvođenje",
|
||||||
"HeaderPlaybackSettings": "Playback Settings",
|
"HeaderOpenRSSFeed": "Otvori RSS izvor",
|
||||||
"HeaderPlaylist": "Playlist",
|
"HeaderPlaybackSettings": "Postavke izvođenja",
|
||||||
"HeaderPlaylistItems": "Playlist Items",
|
"HeaderPlaylist": "Popis za izvođenje",
|
||||||
"HeaderRSSFeed": "RSS Feed",
|
"HeaderPlaylistItems": "Stavke popisa za izvođenje",
|
||||||
"HeaderRSSFeedGeneral": "RSS Details",
|
"HeaderRSSFeed": "RSS izvor",
|
||||||
"HeaderRSSFeedIsOpen": "RSS Feed je otvoren",
|
"HeaderRSSFeedGeneral": "RSS pojedinosti",
|
||||||
"HeaderSelectDownloadLocation": "Select Download Location",
|
"HeaderRSSFeedIsOpen": "RSS izvor je otvoren",
|
||||||
|
"HeaderSelectDownloadLocation": "Odaberi lokaciju za preuzimanja",
|
||||||
"HeaderSettings": "Postavke",
|
"HeaderSettings": "Postavke",
|
||||||
"HeaderSleepTimer": "Sleep Timer",
|
"HeaderSleepTimer": "Timer za spavanje",
|
||||||
"HeaderSleepTimerSettings": "Sleep Timer Settings",
|
"HeaderSleepTimerSettings": "Postavke timera za spavanje",
|
||||||
"HeaderStatsMinutesListeningChart": "Minuta odslušanih (posljednjih 7 dana)",
|
"HeaderStatsMinutesListeningChart": "Odslušanih minuta (posljednjih 7 dana)",
|
||||||
"HeaderStatsRecentSessions": "Nedavne sesije",
|
"HeaderStatsRecentSessions": "Nedavne sesije",
|
||||||
"HeaderTableOfContents": "Table of Contents",
|
"HeaderTableOfContents": "Sadržaj",
|
||||||
"HeaderUserInterfaceSettings": "User Interface Settings",
|
"HeaderUserInterfaceSettings": "Postavke korisničkog sučelja",
|
||||||
"HeaderYourStats": "Tvoja statistika",
|
"HeaderYourStats": "Vaša statistika",
|
||||||
"LabelAdded": "Added",
|
"LabelAddToPlaylist": "Dodaj na popis za izvođenje",
|
||||||
"LabelAddedAt": "Added At",
|
"LabelAdded": "Dodano",
|
||||||
"LabelAddToPlaylist": "Add to Playlist",
|
"LabelAddedAt": "Dodano",
|
||||||
"LabelAll": "All",
|
"LabelAll": "Sve",
|
||||||
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
|
"LabelAllowSeekingOnMediaControls": "Dopusti pretraživanje položaja na obavijesti s upravljanjem medijima",
|
||||||
|
"LabelAlways": "Uvijek",
|
||||||
|
"LabelAskConfirmation": "Zatraži potvrdu",
|
||||||
"LabelAuthor": "Autor",
|
"LabelAuthor": "Autor",
|
||||||
"LabelAuthorFirstLast": "Author (First Last)",
|
"LabelAuthorFirstLast": "Autor (Ime Prezime)",
|
||||||
"LabelAuthorLastFirst": "Author (Last, First)",
|
"LabelAuthorLastFirst": "Autor (Prezime, Ime)",
|
||||||
"LabelAuthors": "Autori",
|
"LabelAuthors": "Autori",
|
||||||
"LabelAutoDownloadEpisodes": "Automatski preuzmi epizode",
|
"LabelAutoDownloadEpisodes": "Automatski preuzmi nastavke",
|
||||||
"LabelAutoRewindTime": "Auto rewind time",
|
"LabelAutoRewindTime": "Automatsko vraćanje unatrag",
|
||||||
"LabelAutoSleepTimer": "Auto sleep timer",
|
"LabelAutoSleepTimer": "Automatski timer za spavanje",
|
||||||
"LabelAutoSleepTimerAutoRewind": "Auto sleep timer auto rewind",
|
"LabelAutoSleepTimerAutoRewind": "Automatsko vraćanje unatrag timera za spavanje",
|
||||||
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
|
"LabelAutoSleepTimerAutoRewindHelp": "Nakon što se aktivira timer za spavanje, stavka koju ste slušali automatski će se vratiti na zadani položaj.",
|
||||||
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
|
"LabelAutoSleepTimerHelp": "Automatski timer za spavanje uključit će se u zadano vrijeme prilikom izvođenja medija.",
|
||||||
"LabelBooks": "Knjige",
|
"LabelBooks": "Knjige",
|
||||||
"LabelChapters": "Chapters",
|
"LabelChapterTrack": "Zapis poglavlja",
|
||||||
"LabelChapterTrack": "Chapter Track",
|
"LabelChapters": "Poglavlja",
|
||||||
"LabelClosePlayer": "Close player",
|
"LabelClosePlayer": "Zatvori reproduktor",
|
||||||
"LabelCollapseSeries": "Collapse Series",
|
"LabelCollapseSeries": "Serijale prikaži sažeto",
|
||||||
"LabelComplete": "Complete",
|
"LabelComplete": "Dovršeno",
|
||||||
"LabelContinueBooks": "Continue Books",
|
"LabelContinueBooks": "Nastavi knjige",
|
||||||
"LabelContinueEpisodes": "Continue Episodes",
|
"LabelContinueEpisodes": "Nastavi nastavke",
|
||||||
"LabelContinueListening": "Continue Listening",
|
"LabelContinueListening": "Nastavi slušati",
|
||||||
"LabelContinueReading": "Continue Reading",
|
"LabelContinueReading": "Nastavi čitati",
|
||||||
"LabelContinueSeries": "Continue Series",
|
"LabelContinueSeries": "Nastavi serijal",
|
||||||
"LabelCustomTime": "Custom time",
|
"LabelCustomTime": "Prilagođeno vrijeme",
|
||||||
"LabelDescription": "Opis",
|
"LabelDescription": "Opis",
|
||||||
"LabelDisableAudioFadeOut": "Disable audio fade out",
|
"LabelDisableAudioFadeOut": "Onemogući stišavanje zvuka",
|
||||||
"LabelDisableAudioFadeOutHelp": "Audio volume will start decreasing when there is less than 1 minute remaining on the sleep timer. Enable this setting to not fade out.",
|
"LabelDisableAudioFadeOutHelp": "Zvuk će se početi stišavati kada preostane manje od minute na timeru za spavanje. Ako ne želite stišavati zvuk, uključite ovu mogućnost.",
|
||||||
"LabelDisableAutoRewind": "Disable auto rewind",
|
"LabelDisableAutoRewind": "Onemogući automatsko vraćanje",
|
||||||
"LabelDisableShakeToReset": "Disable shake to reset",
|
"LabelDisableShakeToReset": "Onemogući ponovno postavljanje timera trešnjom",
|
||||||
"LabelDisableShakeToResetHelp": "Shaking your device while the timer is running OR within 2 minutes of the timer expiring will reset the sleep timer. Enable this setting to disable shake to reset.",
|
"LabelDisableShakeToResetHelp": "Ukoliko zatresete svoj uređaj tijekom trajanja timera ILI unutar dvije minute od isteka timera, timer će ponovno početi odbrojavati. Uključite ovu mogućnost ako želite onemogućiti tu opciju.",
|
||||||
"LabelDisableVibrateOnReset": "Disable vibrate on reset",
|
"LabelDisableVibrateOnReset": "Onemogući vibraciju prilikom vraćanja timera na početak",
|
||||||
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
|
"LabelDisableVibrateOnResetHelp": "Vaš će uređaj zavibrirati kad timer za spavanje ponovno počne odbrojavati. Ako ne želite da uređaj zavibrira kada odbrojavanje ponovno započne, uključite ovu mogućnost.",
|
||||||
"LabelDiscover": "Discover",
|
"LabelDiscover": "Otkrij",
|
||||||
"LabelDownload": "Preuzmi",
|
"LabelDownload": "Preuzmi",
|
||||||
"LabelDownloaded": "Downloaded",
|
"LabelDownloadUsingCellular": "Preuzmi koristeći mobilne podatke",
|
||||||
|
"LabelDownloaded": "Preuzeto",
|
||||||
"LabelDuration": "Trajanje",
|
"LabelDuration": "Trajanje",
|
||||||
"LabelEbook": "Ebook",
|
"LabelEbook": "E-knjiga",
|
||||||
"LabelEbooks": "Ebooks",
|
"LabelEbooks": "E-knjige",
|
||||||
"LabelEnable": "Uključi",
|
"LabelEnable": "Omogući",
|
||||||
"LabelEnableMp3IndexSeeking": "Enable mp3 index seeking",
|
"LabelEnableMp3IndexSeeking": "Omogući pretraživanje mp3 datoteka po indeksu",
|
||||||
"LabelEnableMp3IndexSeekingHelp": "This setting should only be enabled if you have mp3 files that are not seeking correctly. Inaccurate seeking is most likely due to Variable birate (VBR) MP3 files. This setting will force index seeking, in which a time-to-byte mapping is built as the file is read. In some cases with large MP3 files there will be a delay when seeking towards the end of the file.",
|
"LabelEnableMp3IndexSeekingHelp": "Ovu mogućnost uključite samo ako imate mp3 datoteke koje ne možete pravilno pretraživati. Nepravilno pretraživanje najčešće uzrokuju MP3 datoteke s promjenjivom brzinom protoka (VBR). Ova postavka omogućit će pretraživanje pomoću indeksa, kod kojega se izrađuje mapa vremena i bajtova prilikom čitanja datoteke. U nekim slučajevima, kod velikih MP3 datoteka, može doći do kašnjenja kod pretraživanja na kraju datoteke.",
|
||||||
"LabelEnd": "Kraj",
|
"LabelEnd": "Kraj",
|
||||||
"LabelEndOfChapter": "End of Chapter",
|
"LabelEndOfChapter": "Kraj poglavlja",
|
||||||
"LabelEndTime": "End time",
|
"LabelEndTime": "Vrijeme završetka",
|
||||||
"LabelEpisode": "Epizoda",
|
"LabelEpisode": "Nastavak",
|
||||||
"LabelFeedURL": "Feed URL",
|
"LabelFeedURL": "URL izvora",
|
||||||
"LabelFile": "Datoteka",
|
"LabelFile": "Datoteka",
|
||||||
"LabelFileBirthtime": "File Birthtime",
|
"LabelFileBirthtime": "Datoteka stvorena",
|
||||||
"LabelFileModified": "File Modified",
|
"LabelFileModified": "Datoteka izmijenjena",
|
||||||
"LabelFilename": "Ime datoteke",
|
"LabelFilename": "Naziv datoteke",
|
||||||
"LabelFinished": "Finished",
|
"LabelFinished": "Dovršeno",
|
||||||
"LabelFolder": "Folder",
|
"LabelFolder": "Mapa",
|
||||||
"LabelFontScale": "Font scale",
|
"LabelFontBoldness": "Debljina slova",
|
||||||
"LabelGenre": "Genre",
|
"LabelFontScale": "Veličina slova",
|
||||||
|
"LabelGenre": "Žanr",
|
||||||
"LabelGenres": "Žanrovi",
|
"LabelGenres": "Žanrovi",
|
||||||
"LabelHapticFeedback": "Haptic feedback",
|
"LabelHapticFeedback": "Haptičke povratne informacije",
|
||||||
"LabelHasEbook": "Has ebook",
|
"LabelHasEbook": "Ima e-knjigu",
|
||||||
"LabelHasSupplementaryEbook": "Has supplementary ebook",
|
"LabelHasSupplementaryEbook": "Ima dopunsku e-knjigu",
|
||||||
"LabelHeavy": "Heavy",
|
"LabelHeavy": "Jako",
|
||||||
"LabelHigh": "High",
|
"LabelHigh": "Jako",
|
||||||
"LabelHost": "Host",
|
"LabelHost": "Poslužitelj",
|
||||||
"LabelIncomplete": "Nepotpuno",
|
|
||||||
"LabelInProgress": "U tijeku",
|
"LabelInProgress": "U tijeku",
|
||||||
"LabelInternalAppStorage": "Internal App Storage",
|
"LabelIncomplete": "Nepotpuno",
|
||||||
"LabelJumpBackwardsTime": "Jump backwards time",
|
"LabelInternalAppStorage": "Unutarnja pohrana aplikacije",
|
||||||
"LabelJumpForwardsTime": "Jump forwards time",
|
"LabelJumpBackwardsTime": "Trajanje skoka unatrag",
|
||||||
|
"LabelJumpForwardsTime": "Trajanje skoka unaprijed",
|
||||||
"LabelLanguage": "Jezik",
|
"LabelLanguage": "Jezik",
|
||||||
"LabelLayout": "Layout",
|
"LabelLayout": "Prikaz",
|
||||||
"LabelLayoutAuto": "Auto",
|
"LabelLayoutAuto": "Automatski",
|
||||||
"LabelLayoutSinglePage": "Single page",
|
"LabelLayoutSinglePage": "Jedna stranica",
|
||||||
"LabelLight": "Light",
|
"LabelLight": "Lagano",
|
||||||
"LabelLineSpacing": "Line spacing",
|
"LabelLineSpacing": "Razmak između redaka",
|
||||||
"LabelListenAgain": "Listen Again",
|
"LabelListenAgain": "Ponovno poslušaj",
|
||||||
"LabelLocalBooks": "Local Books",
|
"LabelLocalBooks": "Lokalne knjige",
|
||||||
"LabelLocalPodcasts": "Local Podcasts",
|
"LabelLocalPodcasts": "Lokalni podcasti",
|
||||||
"LabelLockOrientation": "Lock orientation",
|
"LabelLockOrientation": "Zaključaj zakretanje",
|
||||||
"LabelLockPlayer": "Lock Player",
|
"LabelLockPlayer": "Zaključaj upravljanje",
|
||||||
"LabelLow": "Low",
|
"LabelLow": "Slabo",
|
||||||
"LabelMediaType": "Media Type",
|
"LabelMediaType": "Vrsta medija",
|
||||||
"LabelMedium": "Medium",
|
"LabelMedium": "Srednje",
|
||||||
"LabelMore": "Više",
|
"LabelMore": "Više",
|
||||||
"LabelMoreInfo": "More Info",
|
"LabelMoreInfo": "Više informacija",
|
||||||
"LabelName": "Ime",
|
"LabelName": "Ime",
|
||||||
"LabelNarrator": "Narrator",
|
"LabelNarrator": "Pripovjedač",
|
||||||
"LabelNarrators": "Naratori",
|
"LabelNarrators": "Pripovjedači",
|
||||||
"LabelNewestAuthors": "Newest Authors",
|
"LabelNavigateWithVolume": "Navigacija tipkama za glasnoću",
|
||||||
"LabelNewestEpisodes": "Newest Episodes",
|
"LabelNavigateWithVolumeDisabled": "Isključeno",
|
||||||
"LabelNo": "No",
|
"LabelNavigateWithVolumeEnabled": "Uključeno",
|
||||||
"LabelNotFinished": "Nedovršeno",
|
"LabelNavigateWithVolumeMirrored": "Zrcali",
|
||||||
"LabelNotStarted": "Not Started",
|
"LabelNever": "Nikada",
|
||||||
"LabelOff": "Off",
|
"LabelNewestAuthors": "Najnoviji autori",
|
||||||
"LabelPassword": "Lozinka",
|
"LabelNewestEpisodes": "Najnovije epizode",
|
||||||
|
"LabelNo": "Ne",
|
||||||
|
"LabelNotFinished": "Nije dovršeno",
|
||||||
|
"LabelNotStarted": "Nije započeto",
|
||||||
|
"LabelOff": "Isključeno",
|
||||||
|
"LabelPassword": "Zaporka",
|
||||||
"LabelPath": "Putanja",
|
"LabelPath": "Putanja",
|
||||||
"LabelPlaybackDirect": "Direct",
|
"LabelPlaybackDirect": "Izravno",
|
||||||
"LabelPlaybackLocal": "Local",
|
"LabelPlaybackLocal": "Lokalno",
|
||||||
"LabelPlaybackSpeed": "Playback Speed",
|
"LabelPlaybackSpeed": "Brzina izvođenja",
|
||||||
"LabelPlaybackTranscode": "Transcode",
|
"LabelPlaybackTranscode": "Transkodiraj",
|
||||||
"LabelPodcast": "Podcast",
|
"LabelPodcast": "Podcast",
|
||||||
"LabelPodcasts": "Podcasts",
|
"LabelPodcasts": "Podcasti",
|
||||||
"LabelPreventIndexing": "Prevent your feed from being indexed by iTunes and Google podcast directories",
|
"LabelPreventIndexing": "Spriječite da iTunes i Google indeksiraju vaš feed za svoje popise podcasta",
|
||||||
"LabelProgress": "Napredak",
|
"LabelProgress": "Napredak",
|
||||||
"LabelPubDate": "Datam izdavanja",
|
"LabelPubDate": "Datum izdavanja",
|
||||||
"LabelPublishYear": "Godina izdavanja",
|
"LabelPublishYear": "Godina objavljivanja",
|
||||||
"LabelRead": "Read",
|
"LabelRSSFeedCustomOwnerEmail": "Prilagođena adresa e-pošte vlasnika",
|
||||||
"LabelReadAgain": "Read Again",
|
"LabelRSSFeedCustomOwnerName": "Prilagođeno ime vlasnika",
|
||||||
"LabelRecentlyAdded": "Recently Added",
|
"LabelRSSFeedPreventIndexing": "Onemogući indeksiranje",
|
||||||
"LabelRecentSeries": "Recent Series",
|
"LabelRSSFeedSlug": "Slug RSS izvora",
|
||||||
"LabelRemoveFromPlaylist": "Remove from Playlist",
|
"LabelRandomly": "Nasumično",
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Custom owner Email",
|
"LabelRead": "Čitaj",
|
||||||
"LabelRSSFeedCustomOwnerName": "Custom owner Name",
|
"LabelReadAgain": "Ponovno čitaj",
|
||||||
"LabelRSSFeedPreventIndexing": "Prevent Indexing",
|
"LabelRecentSeries": "Najnoviji serijali",
|
||||||
"LabelRSSFeedSlug": "RSS Feed Slug",
|
"LabelRecentlyAdded": "Nedavno dodano",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
|
"LabelRemoveFromPlaylist": "Ukloni s popisa za izvođenje",
|
||||||
|
"LabelScaleElapsedTimeBySpeed": "Prilagodi preostalo vrijeme brzini izvođenja",
|
||||||
"LabelSeason": "Sezona",
|
"LabelSeason": "Sezona",
|
||||||
"LabelSelectADevice": "Select a device",
|
"LabelSelectADevice": "Odabir uređaja",
|
||||||
"LabelSeries": "Serije",
|
"LabelSeries": "Serijal",
|
||||||
"LabelServerAddress": "Server address",
|
"LabelServerAddress": "Adresa poslužitelja",
|
||||||
"LabelSetEbookAsPrimary": "Set as primary",
|
"LabelSetEbookAsPrimary": "Postavi kao primarno",
|
||||||
"LabelSetEbookAsSupplementary": "Set as supplementary",
|
"LabelSetEbookAsSupplementary": "Postavi kao dopunsko",
|
||||||
"LabelShakeSensitivity": "Shake sensitivity",
|
"LabelShakeSensitivity": "Osjetljivost trešnje",
|
||||||
"LabelShowAll": "Prikaži sve",
|
"LabelShowAll": "Prikaži sve",
|
||||||
"LabelSize": "Veličina",
|
"LabelSize": "Veličina",
|
||||||
"LabelSleepTimer": "Sleep timer",
|
"LabelSleepTimer": "Timer za spavanje",
|
||||||
"LabelStart": "Pokreni",
|
"LabelStart": "Početak",
|
||||||
"LabelStartTime": "Vrijeme pokretanja",
|
"LabelStartTime": "Vrijeme pokretanja",
|
||||||
"LabelStatsBestDay": "Najbolji dan",
|
"LabelStatsBestDay": "Najbolji dan",
|
||||||
"LabelStatsDailyAverage": "Dnevni prosjek",
|
"LabelStatsDailyAverage": "Dnevni prosjek",
|
||||||
"LabelStatsDays": "Dani",
|
"LabelStatsDays": "Dani",
|
||||||
"LabelStatsDaysListened": "Dana slušao",
|
"LabelStatsDaysListened": "Dana slušano",
|
||||||
"LabelStatsInARow": "u redu",
|
"LabelStatsInARow": "uzastopno",
|
||||||
"LabelStatsItemsFinished": "Završenih stavki",
|
"LabelStatsItemsFinished": "Dovršenih stavki",
|
||||||
"LabelStatsMinutes": "minute",
|
"LabelStatsMinutes": "minute",
|
||||||
"LabelStatsMinutesListening": "Minuta odslušano",
|
"LabelStatsMinutesListening": "Minuta odslušano",
|
||||||
"LabelStatsWeekListening": "Tjedno slušanje",
|
"LabelStatsWeekListening": "Tjedno slušanje",
|
||||||
"LabelTag": "Tag",
|
"LabelStreamingUsingCellular": "Strujanje preko mobilnih podataka",
|
||||||
"LabelTags": "Tags",
|
"LabelTag": "Oznaka",
|
||||||
"LabelTheme": "Theme",
|
"LabelTags": "Oznake",
|
||||||
"LabelThemeDark": "Dark",
|
"LabelTheme": "Tema",
|
||||||
"LabelThemeLight": "Light",
|
"LabelThemeDark": "Tamna",
|
||||||
|
"LabelThemeLight": "Svijetla",
|
||||||
"LabelTimeRemaining": "{0} preostalo",
|
"LabelTimeRemaining": "{0} preostalo",
|
||||||
"LabelTitle": "Naslov",
|
"LabelTitle": "Naslov",
|
||||||
"LabelTotalTrack": "Total Track",
|
"LabelTotalSize": "Ukupna veličina",
|
||||||
"LabelTracks": "Tracks",
|
"LabelTotalTrack": "Ukupno zapisa",
|
||||||
"LabelType": "Tip",
|
"LabelTracks": "Zvučni zapisi",
|
||||||
"LabelUnlockPlayer": "Unlock Player",
|
"LabelType": "Vrsta",
|
||||||
"LabelUseBookshelfView": "Use bookshelf view",
|
"LabelUnlockPlayer": "Otključaj izvođač",
|
||||||
|
"LabelUseBookshelfView": "Uključi izgled police s knjigama",
|
||||||
"LabelUser": "Korisnik",
|
"LabelUser": "Korisnik",
|
||||||
"LabelUsername": "Korisničko ime",
|
"LabelUsername": "Korisničko ime",
|
||||||
"LabelVeryHigh": "Very High",
|
"LabelVeryHigh": "Vrlo jako",
|
||||||
"LabelVeryLow": "Very Low",
|
"LabelVeryLow": "Vrlo slabo",
|
||||||
"LabelYourBookmarks": "Tvoje knjižne oznake",
|
"LabelYourBookmarks": "Vaše knjižne oznake",
|
||||||
"LabelYourProgress": "Tvoj napredak",
|
"LabelYourProgress": "Vaš napredak",
|
||||||
"MessageAndroid10Downloads": "Android 10 and below will use internal app storage for downloads.",
|
"MessageAndroid10Downloads": "Na Androidu 10 i novijem za preuzimanja se upotrebljava unutarnja pohrana.",
|
||||||
"MessageAttemptingServerConnection": "Attempting server connection...",
|
"MessageAttemptingServerConnection": "Pokušavam se povezati s poslužiteljem...",
|
||||||
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf server not connected",
|
"MessageAudiobookshelfServerNotConnected": "Poslužitelj Audiobookshelf nije povezan",
|
||||||
"MessageAudiobookshelfServerRequired": "<strong>Important!</strong> This app is designed to work with an Audiobookshelf server that you or someone you know is hosting. This app does not provide any content.",
|
"MessageAudiobookshelfServerRequired": "<strong>Važno!</strong> Ova je aplikacija predviđena za rad s poslužiteljem Audiobookshelf na vašem poslužitelju kojim upravljate vi ili netko koga znate. Ova aplikacija ne nudi nikakav sadržaj.",
|
||||||
"MessageBookshelfEmpty": "Bookshelf empty",
|
"MessageBookshelfEmpty": "Polica s knjigama je prazna",
|
||||||
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.",
|
"MessageConfirmDeleteLocalEpisode": "Želite li ukloniti lokalni nastavak \"{0}\" sa svog uređaja? Ovo ne utječe na datoteku na poslužitelju.",
|
||||||
"MessageConfirmDeleteLocalFiles": "Remove local files of this item from your device? The files on the server and your progress will be unaffected.",
|
"MessageConfirmDeleteLocalFiles": "Želite li ukloniti lokalne datoteke ove stavke sa svog uređaja? Ovo ne utječe na datoteke na poslužitelju niti na vaš napredak.",
|
||||||
"MessageConfirmDiscardProgress": "Are you sure you want to reset your progress?",
|
"MessageConfirmDiscardProgress": "Jeste li sigurni da želite iz izbrisati svoj napredak?",
|
||||||
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
|
"MessageConfirmDownloadUsingCellular": "Spremate se pokrenuti preuzimanje koristeći mobilne podatke. Ovo može uzrokovati dodatne troškove. Želite li nastaviti?",
|
||||||
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
|
"MessageConfirmMarkAsFinished": "Sigurno želite označiti ovu stavku dovršenom?",
|
||||||
"MessageDiscardProgress": "Discard Progress",
|
"MessageConfirmRemoveBookmark": "Sigurno želite ukloniti knjižnu oznaku?",
|
||||||
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
|
"MessageConfirmStreamingUsingCellular": "Pokrenut ćete strujanje korištenjem mobilnih podataka. Ovo može uzrokovati dodatne troškove. Želite li nastaviti?",
|
||||||
"MessageDownloading": "Downloading...",
|
"MessageDiscardProgress": "Zanemari napredak",
|
||||||
"MessageDownloadingEpisode": "Preuzimam epizodu",
|
"MessageDownloadCompleteProcessing": "Preuzimanje dovršeno. Obrađujem...",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} Epizoda/-e u redu za preuzimanje",
|
"MessageDownloading": "Preuzimanje...",
|
||||||
"MessageFeedURLWillBe": "Feed URL će biti {0}",
|
"MessageDownloadingEpisode": "Preuzimam nastavak",
|
||||||
"MessageFetching": "Dobavljam...",
|
"MessageEpisodesQueuedForDownload": "{0} nastavak(a) u redu za preuzimanje",
|
||||||
"MessageFollowTheProjectOnGithub": "Follow the project on Github",
|
"MessageFeedURLWillBe": "URL izvora bit će {0}",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Item download complete but failed to create library item",
|
"MessageFetching": "Dohvaćam...",
|
||||||
|
"MessageFollowTheProjectOnGithub": "Pratite projekt na GitHubu",
|
||||||
|
"MessageItemDownloadCompleteFailedToCreate": "Stavka je uspješno preuzeta, ali nije uspjela izrada knjižničke stavke",
|
||||||
"MessageLoading": "Učitavam...",
|
"MessageLoading": "Učitavam...",
|
||||||
"MessageLoadingServerData": "Loading server data...",
|
"MessageLoadingServerData": "Učitavam podatke poslužitelja...",
|
||||||
"MessageMarkAsFinished": "Označi kao završeno",
|
"MessageMarkAsFinished": "Označi kao dovršeno",
|
||||||
"MessageMediaLinkedToADifferentServer": "Media is linked to an Audiobookshelf server on a different address ({0}). Progress will be synced when connected to this server address.",
|
"MessageMediaLinkedToADifferentServer": "Medijski zapis vezan je s Audiobookshelf poslužiteljem na drugoj adresi ({0}). Napredak će se sinkronizirati samo dok ste povezani s poslužiteljem na toj adresi.",
|
||||||
"MessageMediaLinkedToADifferentUser": "Media is linked to this server but was downloaded by a different user. Progress will only be synced to the user that downloaded it.",
|
"MessageMediaLinkedToADifferentUser": "Medijski zapis povezan je s ovim poslužiteljem, ali preuzeo ga je drugi korisnik. Napredak će se sinkronizirati isključivo korisniku koji ga je preuzeo.",
|
||||||
"MessageMediaLinkedToServer": "Linked to server {0}",
|
"MessageMediaLinkedToServer": "Povezani s poslužiteljem {0}",
|
||||||
"MessageMediaLinkedToThisServer": "Downloaded media is linked to this server",
|
"MessageMediaLinkedToThisServer": "Preuzeti medijski zapis povezan je s ovim poslužiteljem",
|
||||||
"MessageMediaNotLinkedToServer": "Media is not linked to an Audiobookshelf server. No progress will be synced.",
|
"MessageMediaNotLinkedToServer": "Medijski zapis nije povezan s poslužiteljem Audiobookshelf. Napredak se neće sinkronizirati.",
|
||||||
"MessageNoBookmarks": "Nema knjižnih bilješki",
|
"MessageNoBookmarks": "Nema knjižnih oznaka",
|
||||||
"MessageNoChapters": "Nema poglavlja",
|
"MessageNoChapters": "Nema poglavlja",
|
||||||
"MessageNoItems": "Nema stavki",
|
"MessageNoItems": "Nema stavki",
|
||||||
"MessageNoItemsFound": "Nijedna stavka pronađena",
|
"MessageNoItemsFound": "Nema pronađenih stavki",
|
||||||
"MessageNoListeningSessions": "Nema Listening Sessions",
|
"MessageNoListeningSessions": "Nema sesija slušanja",
|
||||||
"MessageNoMediaFolders": "No Media Folders",
|
"MessageNoMediaFolders": "Nema medijskih mapa",
|
||||||
"MessageNoNetworkConnection": "No network connection",
|
"MessageNoNetworkConnection": "Nema mrežne veze",
|
||||||
"MessageNoPodcastsFound": "Nijedan podcast pronađen",
|
"MessageNoPodcastsFound": "Nije pronađen niti jedan podcast",
|
||||||
"MessageNoSeries": "No series",
|
"MessageNoSeries": "Nema serijala",
|
||||||
"MessageNoUpdatesWereNecessary": "Aktualiziranje nije bilo potrebno",
|
"MessageNoUpdatesWereNecessary": "Ažuriranje nije bilo potrebno",
|
||||||
"MessageNoUserPlaylists": "You have no playlists",
|
"MessageNoUserPlaylists": "Nemate popisa za izvođenje",
|
||||||
"MessageReportBugsAndContribute": "Prijavte bugove, zatržite featurese i doprinosite na",
|
"MessageReportBugsAndContribute": "Prijavite pogreške, zatražite funkcionalnosti i doprinesite na",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket connected over metered cellular",
|
"MessageSocketConnectedOverMeteredCellular": "Socket je povezan preko mobilnih podataka",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered wifi",
|
"MessageSocketConnectedOverMeteredWifi": "Socket je povezan preko mobilne mreže s praćenjem potrošnje",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Socket connected over unmetered cellular",
|
"MessageSocketConnectedOverUnmeteredCellular": "Socket je povezan preko mobilne mreže kod koje se ne prati potrošnja",
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Socket connected over unmetered wifi",
|
"MessageSocketConnectedOverUnmeteredWifi": "Socket je povezan preko Wi-Fi mreže na kojoj se ne prati potrošnja",
|
||||||
"MessageSocketNotConnected": "Socket not connected",
|
"MessageSocketNotConnected": "Socket nije povezan",
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Upozorenje: Večina podcasta će trebati RSS feed URL koji koristi HTTPS",
|
"NoteRSSFeedPodcastAppsHttps": "Pripazite: Većina aplikacija za podcaste iziskuje URL RSS izvora koji se koristi HTTPS protokolom",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Upozorenje: 1 ili više vaših epizoda nemaju datum objavljivanja. Neke podcast aplikacije zahtjevaju to.",
|
"NoteRSSFeedPodcastAppsPubDate": "Upozorenje: jedan ili više vaših nastavaka nemaju datum objavljivanja. To je obavezno kod nekih aplikacija za podcaste.",
|
||||||
"ToastBookmarkCreateFailed": "Kreiranje knjižne bilješke neuspješno",
|
"ToastBookmarkCreateFailed": "Izrada knjižne oznake nije uspjela",
|
||||||
"ToastBookmarkRemoveFailed": "Brisanje knjižne bilješke nauspješno",
|
"ToastBookmarkRemoveFailed": "Brisanje knjižne bilješke nije uspjelo",
|
||||||
"ToastBookmarkUpdateFailed": "Aktualizacija knjižne bilješke neuspješna",
|
"ToastBookmarkUpdateFailed": "Ažuriranje knjižne oznake nije uspjelo",
|
||||||
"ToastItemMarkedAsFinishedFailed": "Označi kao Završeno neuspješno",
|
"ToastDownloadNotAllowedOnCellular": "Preuzimanje korištenjem mobilnih podataka onemogućeno je",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "Označi kao Nezavršeno neuspješno",
|
"ToastItemMarkedAsFinishedFailed": "Označavanje kao Dovršeno nije uspjelo",
|
||||||
"ToastPlaylistCreateFailed": "Failed to create playlist",
|
"ToastItemMarkedAsNotFinishedFailed": "Označavanje kao Nije dovršeno nije uspjelo",
|
||||||
"ToastPodcastCreateFailed": "Neuspješno kreiranje podcasta",
|
"ToastPlaylistCreateFailed": "Popis za izvođenje nije izrađen",
|
||||||
"ToastPodcastCreateSuccess": "Podcast uspješno kreiran",
|
"ToastPodcastCreateFailed": "Podcast nije izrađen",
|
||||||
"ToastRSSFeedCloseFailed": "Neuspješno zatvaranje RSS Feeda",
|
"ToastPodcastCreateSuccess": "Podcast uspješno izrađen",
|
||||||
"ToastRSSFeedCloseSuccess": "RSS Feed zatvoren"
|
"ToastRSSFeedCloseFailed": "RSS izvor nije uspješno zatvoren",
|
||||||
}
|
"ToastRSSFeedCloseSuccess": "RSS izvor zatvoren",
|
||||||
|
"ToastStreamingNotAllowedOnCellular": "Strujanje korištenjem mobilnih podataka onemogućeno je"
|
||||||
|
}
|
||||||
|
|||||||
+33
-15
@@ -19,7 +19,7 @@
|
|||||||
"ButtonDeleteLocalItem": "Helyi elem törlése",
|
"ButtonDeleteLocalItem": "Helyi elem törlése",
|
||||||
"ButtonDisableAutoTimer": "Automatikus időzítő letiltása",
|
"ButtonDisableAutoTimer": "Automatikus időzítő letiltása",
|
||||||
"ButtonDisconnect": "Kapcsolat bontása",
|
"ButtonDisconnect": "Kapcsolat bontása",
|
||||||
"ButtonGoToWebClient": "Go to Web Client",
|
"ButtonGoToWebClient": "Webes kliens megnyitása",
|
||||||
"ButtonHistory": "Előzmények",
|
"ButtonHistory": "Előzmények",
|
||||||
"ButtonHome": "Kezdőlap",
|
"ButtonHome": "Kezdőlap",
|
||||||
"ButtonIssues": "Problémák",
|
"ButtonIssues": "Problémák",
|
||||||
@@ -33,6 +33,7 @@
|
|||||||
"ButtonOverride": "Felülírás",
|
"ButtonOverride": "Felülírás",
|
||||||
"ButtonPause": "Szünet",
|
"ButtonPause": "Szünet",
|
||||||
"ButtonPlay": "Lejátszás",
|
"ButtonPlay": "Lejátszás",
|
||||||
|
"ButtonPlayEpisode": "Epizód lejátszása",
|
||||||
"ButtonPlaying": "Lejátszás folyamatban",
|
"ButtonPlaying": "Lejátszás folyamatban",
|
||||||
"ButtonPlaylists": "Lejátszási listák",
|
"ButtonPlaylists": "Lejátszási listák",
|
||||||
"ButtonRead": "Olvasás",
|
"ButtonRead": "Olvasás",
|
||||||
@@ -56,6 +57,7 @@
|
|||||||
"HeaderCollection": "Gyűjtemény",
|
"HeaderCollection": "Gyűjtemény",
|
||||||
"HeaderCollectionItems": "Gyűjtemény elemek",
|
"HeaderCollectionItems": "Gyűjtemény elemek",
|
||||||
"HeaderConnectionStatus": "Kapcsolat állapota",
|
"HeaderConnectionStatus": "Kapcsolat állapota",
|
||||||
|
"HeaderDataSettings": "Adat beállítások",
|
||||||
"HeaderDetails": "Részletek",
|
"HeaderDetails": "Részletek",
|
||||||
"HeaderDownloads": "Letöltések",
|
"HeaderDownloads": "Letöltések",
|
||||||
"HeaderEbookFiles": "E-könyv fájlok",
|
"HeaderEbookFiles": "E-könyv fájlok",
|
||||||
@@ -82,11 +84,13 @@
|
|||||||
"HeaderTableOfContents": "Tartalomjegyzék",
|
"HeaderTableOfContents": "Tartalomjegyzék",
|
||||||
"HeaderUserInterfaceSettings": "Felhasználói felület beállításai",
|
"HeaderUserInterfaceSettings": "Felhasználói felület beállításai",
|
||||||
"HeaderYourStats": "Saját statisztikák",
|
"HeaderYourStats": "Saját statisztikák",
|
||||||
|
"LabelAddToPlaylist": "Hozzáadás a lejátszási listához",
|
||||||
"LabelAdded": "Hozzáadva",
|
"LabelAdded": "Hozzáadva",
|
||||||
"LabelAddedAt": "Hozzáadva ekkor",
|
"LabelAddedAt": "Hozzáadva ekkor",
|
||||||
"LabelAddToPlaylist": "Hozzáadás a lejátszási listához",
|
|
||||||
"LabelAll": "Összes",
|
"LabelAll": "Összes",
|
||||||
"LabelAllowSeekingOnMediaControls": "Pozíció keresés engedélyezése a média értesítési vezérlőkön",
|
"LabelAllowSeekingOnMediaControls": "Pozíció keresés engedélyezése a média értesítési vezérlőkön",
|
||||||
|
"LabelAlways": "Mindig",
|
||||||
|
"LabelAskConfirmation": "Kérjen megerősítést",
|
||||||
"LabelAuthor": "Szerző",
|
"LabelAuthor": "Szerző",
|
||||||
"LabelAuthorFirstLast": "Szerző (Keresztnév Vezetéknév)",
|
"LabelAuthorFirstLast": "Szerző (Keresztnév Vezetéknév)",
|
||||||
"LabelAuthorLastFirst": "Szerző (Vezetéknév, Keresztnév)",
|
"LabelAuthorLastFirst": "Szerző (Vezetéknév, Keresztnév)",
|
||||||
@@ -98,8 +102,8 @@
|
|||||||
"LabelAutoSleepTimerAutoRewindHelp": "Amikor az automatikus alvásidőzítő befejeződik, az elem újrajátszásakor automatikusan visszatekeri a pozíciót.",
|
"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.",
|
"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",
|
"LabelBooks": "Könyv",
|
||||||
"LabelChapters": "Fejezetek",
|
|
||||||
"LabelChapterTrack": "Fejezet sáv",
|
"LabelChapterTrack": "Fejezet sáv",
|
||||||
|
"LabelChapters": "Fejezetek",
|
||||||
"LabelClosePlayer": "Lejátszó bezárása",
|
"LabelClosePlayer": "Lejátszó bezárása",
|
||||||
"LabelCollapseSeries": "Sorozatok összecsukása",
|
"LabelCollapseSeries": "Sorozatok összecsukása",
|
||||||
"LabelComplete": "Kész",
|
"LabelComplete": "Kész",
|
||||||
@@ -119,6 +123,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.",
|
"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",
|
"LabelDiscover": "Felfedezés",
|
||||||
"LabelDownload": "Letöltés",
|
"LabelDownload": "Letöltés",
|
||||||
|
"LabelDownloadUsingCellular": "Letöltés mobilinternettel",
|
||||||
"LabelDownloaded": "Letöltve",
|
"LabelDownloaded": "Letöltve",
|
||||||
"LabelDuration": "Időtartam",
|
"LabelDuration": "Időtartam",
|
||||||
"LabelEbook": "E-könyv",
|
"LabelEbook": "E-könyv",
|
||||||
@@ -137,6 +142,7 @@
|
|||||||
"LabelFilename": "Fájlnév",
|
"LabelFilename": "Fájlnév",
|
||||||
"LabelFinished": "Befejezve",
|
"LabelFinished": "Befejezve",
|
||||||
"LabelFolder": "Mappa",
|
"LabelFolder": "Mappa",
|
||||||
|
"LabelFontBoldness": "Betű vastagság",
|
||||||
"LabelFontScale": "Betűméret skála",
|
"LabelFontScale": "Betűméret skála",
|
||||||
"LabelGenre": "Műfaj",
|
"LabelGenre": "Műfaj",
|
||||||
"LabelGenres": "Műfajok",
|
"LabelGenres": "Műfajok",
|
||||||
@@ -145,9 +151,9 @@
|
|||||||
"LabelHasSupplementaryEbook": "Van kiegészítő e-könyv",
|
"LabelHasSupplementaryEbook": "Van kiegészítő e-könyv",
|
||||||
"LabelHeavy": "Nehéz",
|
"LabelHeavy": "Nehéz",
|
||||||
"LabelHigh": "Magas",
|
"LabelHigh": "Magas",
|
||||||
"LabelHost": "Házigazda",
|
"LabelHost": "Kiszolgáló",
|
||||||
"LabelIncomplete": "Befejezetlen",
|
|
||||||
"LabelInProgress": "Folyamatban",
|
"LabelInProgress": "Folyamatban",
|
||||||
|
"LabelIncomplete": "Befejezetlen",
|
||||||
"LabelInternalAppStorage": "Belső alkalmazástároló",
|
"LabelInternalAppStorage": "Belső alkalmazástároló",
|
||||||
"LabelJumpBackwardsTime": "Visszaugrás ideje",
|
"LabelJumpBackwardsTime": "Visszaugrás ideje",
|
||||||
"LabelJumpForwardsTime": "Előreugrás ideje",
|
"LabelJumpForwardsTime": "Előreugrás ideje",
|
||||||
@@ -170,6 +176,11 @@
|
|||||||
"LabelName": "Név",
|
"LabelName": "Név",
|
||||||
"LabelNarrator": "Előadó",
|
"LabelNarrator": "Előadó",
|
||||||
"LabelNarrators": "Előadók",
|
"LabelNarrators": "Előadók",
|
||||||
|
"LabelNavigateWithVolume": "Navigálás a hangerőgombokkal",
|
||||||
|
"LabelNavigateWithVolumeDisabled": "Kikapcsolva",
|
||||||
|
"LabelNavigateWithVolumeEnabled": "Bekapcsolva",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "Tükrözve",
|
||||||
|
"LabelNever": "Soha",
|
||||||
"LabelNewestAuthors": "Legújabb szerzők",
|
"LabelNewestAuthors": "Legújabb szerzők",
|
||||||
"LabelNewestEpisodes": "Legújabb epizódok",
|
"LabelNewestEpisodes": "Legújabb epizódok",
|
||||||
"LabelNo": "Nem",
|
"LabelNo": "Nem",
|
||||||
@@ -188,15 +199,16 @@
|
|||||||
"LabelProgress": "Haladás",
|
"LabelProgress": "Haladás",
|
||||||
"LabelPubDate": "Közzététel dátuma",
|
"LabelPubDate": "Közzététel dátuma",
|
||||||
"LabelPublishYear": "Kiadás éve",
|
"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",
|
"LabelRSSFeedCustomOwnerEmail": "Egyéni tulajdonos e-mail",
|
||||||
"LabelRSSFeedCustomOwnerName": "Egyéni tulajdonos neve",
|
"LabelRSSFeedCustomOwnerName": "Egyéni tulajdonos neve",
|
||||||
"LabelRSSFeedPreventIndexing": "Indexelés megakadályozása",
|
"LabelRSSFeedPreventIndexing": "Indexelés megakadályozása",
|
||||||
"LabelRSSFeedSlug": "RSS hírcsatorna rövid cím",
|
"LabelRSSFeedSlug": "RSS hírcsatorna rövid cím",
|
||||||
|
"LabelRandomly": "Véletlenszerűen",
|
||||||
|
"LabelRead": "Olvasás",
|
||||||
|
"LabelReadAgain": "Újraolvasás",
|
||||||
|
"LabelRecentSeries": "Legutóbbi sorozatok",
|
||||||
|
"LabelRecentlyAdded": "Legutóbb hozzáadva",
|
||||||
|
"LabelRemoveFromPlaylist": "Eltávolítás a lejátszási listáról",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Eltelt idő skálázása sebesség szerint",
|
"LabelScaleElapsedTimeBySpeed": "Eltelt idő skálázása sebesség szerint",
|
||||||
"LabelSeason": "Évad",
|
"LabelSeason": "Évad",
|
||||||
"LabelSelectADevice": "Eszköz kiválasztása",
|
"LabelSelectADevice": "Eszköz kiválasztása",
|
||||||
@@ -219,6 +231,7 @@
|
|||||||
"LabelStatsMinutes": "perc",
|
"LabelStatsMinutes": "perc",
|
||||||
"LabelStatsMinutesListening": "Hallgatás percekben",
|
"LabelStatsMinutesListening": "Hallgatás percekben",
|
||||||
"LabelStatsWeekListening": "Heti hallgatás",
|
"LabelStatsWeekListening": "Heti hallgatás",
|
||||||
|
"LabelStreamingUsingCellular": "Streamelés mobilinternettel",
|
||||||
"LabelTag": "Címke",
|
"LabelTag": "Címke",
|
||||||
"LabelTags": "Címkék",
|
"LabelTags": "Címkék",
|
||||||
"LabelTheme": "Téma",
|
"LabelTheme": "Téma",
|
||||||
@@ -226,6 +239,7 @@
|
|||||||
"LabelThemeLight": "Világos",
|
"LabelThemeLight": "Világos",
|
||||||
"LabelTimeRemaining": "{0} maradt",
|
"LabelTimeRemaining": "{0} maradt",
|
||||||
"LabelTitle": "Cím",
|
"LabelTitle": "Cím",
|
||||||
|
"LabelTotalSize": "Összes méret",
|
||||||
"LabelTotalTrack": "Összes szám",
|
"LabelTotalTrack": "Összes szám",
|
||||||
"LabelTracks": "Számok",
|
"LabelTracks": "Számok",
|
||||||
"LabelType": "Típus",
|
"LabelType": "Típus",
|
||||||
@@ -245,8 +259,10 @@
|
|||||||
"MessageConfirmDeleteLocalEpisode": "\"{0}\" helyi epizód eltávolítása az eszközről? A szerveren lévő fájl nem érintett.",
|
"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.",
|
"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?",
|
"MessageConfirmDiscardProgress": "Biztosan alaphelyzetbe akarja állítani a haladást?",
|
||||||
|
"MessageConfirmDownloadUsingCellular": "Mobiladat-hálózaton keresztül készülsz letölteni. Ez adatforgalmi díjakkal járhat. Szeretnéd folytatni?",
|
||||||
"MessageConfirmMarkAsFinished": "Biztosan befejezettnek jelöli ezt az elemet?",
|
"MessageConfirmMarkAsFinished": "Biztosan befejezettnek jelöli ezt az elemet?",
|
||||||
"MessageConfirmRemoveBookmark": "Biztosan eltávolítja a könyvjelzőt?",
|
"MessageConfirmRemoveBookmark": "Biztosan eltávolítja a könyvjelzőt?",
|
||||||
|
"MessageConfirmStreamingUsingCellular": "Mobiladat-hálózaton keresztül készülsz streamelni. Ez adatforgalmi díjakkal járhat. Szeretnéd folytatni?",
|
||||||
"MessageDiscardProgress": "Haladás elvetése",
|
"MessageDiscardProgress": "Haladás elvetése",
|
||||||
"MessageDownloadCompleteProcessing": "Letöltés kész. Feldolgozás...",
|
"MessageDownloadCompleteProcessing": "Letöltés kész. Feldolgozás...",
|
||||||
"MessageDownloading": "Letöltés...",
|
"MessageDownloading": "Letöltés...",
|
||||||
@@ -254,7 +270,7 @@
|
|||||||
"MessageEpisodesQueuedForDownload": "{0} epizód letöltésre vár",
|
"MessageEpisodesQueuedForDownload": "{0} epizód letöltésre vár",
|
||||||
"MessageFeedURLWillBe": "A hírcsatorna URL-je lesz: {0}",
|
"MessageFeedURLWillBe": "A hírcsatorna URL-je lesz: {0}",
|
||||||
"MessageFetching": "Lekérdezés...",
|
"MessageFetching": "Lekérdezés...",
|
||||||
"MessageFollowTheProjectOnGithub": "Kövesse a projektet a Githubon",
|
"MessageFollowTheProjectOnGithub": "Kövesse a projektet a GitHubon",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "A könyv letöltése befejeződött, de nem sikerült létrehozni a könyvtári elemet",
|
"MessageItemDownloadCompleteFailedToCreate": "A könyv letöltése befejeződött, de nem sikerült létrehozni a könyvtári elemet",
|
||||||
"MessageLoading": "Betöltés...",
|
"MessageLoading": "Betöltés...",
|
||||||
"MessageLoadingServerData": "Szerveradatok betöltése...",
|
"MessageLoadingServerData": "Szerveradatok betöltése...",
|
||||||
@@ -272,10 +288,10 @@
|
|||||||
"MessageNoMediaFolders": "Nincsenek médiamappák",
|
"MessageNoMediaFolders": "Nincsenek médiamappák",
|
||||||
"MessageNoNetworkConnection": "Nincs hálózati kapcsolat",
|
"MessageNoNetworkConnection": "Nincs hálózati kapcsolat",
|
||||||
"MessageNoPodcastsFound": "Nem találhatók podcastok",
|
"MessageNoPodcastsFound": "Nem találhatók podcastok",
|
||||||
"MessageNoSeries": "No series",
|
"MessageNoSeries": "Nincsenek sorozatok",
|
||||||
"MessageNoUpdatesWereNecessary": "Nem volt szükséges frissítés",
|
"MessageNoUpdatesWereNecessary": "Nem volt szükséges frissítés",
|
||||||
"MessageNoUserPlaylists": "Nincsenek lejátszási listái",
|
"MessageNoUserPlaylists": "Nincsenek lejátszási listái",
|
||||||
"MessageReportBugsAndContribute": "Hibák jelentése, funkciók kérése és hozzájárulás a",
|
"MessageReportBugsAndContribute": "Hibák jelentése, funkciók kérése és hozzájárulás itt",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Csatlakoztatva mért mobilhálózaton keresztül",
|
"MessageSocketConnectedOverMeteredCellular": "Csatlakoztatva mért mobilhálózaton keresztül",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Csatlakoztatva mért Wi-Fi hálózaton keresztül",
|
"MessageSocketConnectedOverMeteredWifi": "Csatlakoztatva mért Wi-Fi hálózaton keresztül",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Csatlakoztatva korlátlan mobilhálózaton keresztül",
|
"MessageSocketConnectedOverUnmeteredCellular": "Csatlakoztatva korlátlan mobilhálózaton keresztül",
|
||||||
@@ -286,11 +302,13 @@
|
|||||||
"ToastBookmarkCreateFailed": "A könyvjelző létrehozása sikertelen",
|
"ToastBookmarkCreateFailed": "A könyvjelző létrehozása sikertelen",
|
||||||
"ToastBookmarkRemoveFailed": "A könyvjelző eltávolítása sikertelen",
|
"ToastBookmarkRemoveFailed": "A könyvjelző eltávolítása sikertelen",
|
||||||
"ToastBookmarkUpdateFailed": "A könyvjelző frissítése sikertelen",
|
"ToastBookmarkUpdateFailed": "A könyvjelző frissítése sikertelen",
|
||||||
|
"ToastDownloadNotAllowedOnCellular": "Letöltés mobilinternettel nem engedélyezett",
|
||||||
"ToastItemMarkedAsFinishedFailed": "Az elem befejezettnek jelölése sikertelen",
|
"ToastItemMarkedAsFinishedFailed": "Az elem befejezettnek jelölése sikertelen",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "Az elem befejezetlennek jelölése sikertelen",
|
"ToastItemMarkedAsNotFinishedFailed": "Az elem befejezetlennek jelölése sikertelen",
|
||||||
"ToastPlaylistCreateFailed": "A lejátszási lista létrehozása sikertelen",
|
"ToastPlaylistCreateFailed": "A lejátszási lista létrehozása sikertelen",
|
||||||
"ToastPodcastCreateFailed": "A podcast létrehozása sikertelen",
|
"ToastPodcastCreateFailed": "A podcast létrehozása sikertelen",
|
||||||
"ToastPodcastCreateSuccess": "A podcast sikeresen létrehozva",
|
"ToastPodcastCreateSuccess": "A podcast sikeresen létrehozva",
|
||||||
"ToastRSSFeedCloseFailed": "Az RSS hírcsatorna bezárása sikertelen",
|
"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": "Streamelés mobilinternettel nem engedélyezett"
|
||||||
|
}
|
||||||
|
|||||||
+158
-140
@@ -1,77 +1,79 @@
|
|||||||
{
|
{
|
||||||
"ButtonAdd": "Aggiungi",
|
"ButtonAdd": "Aggiungi",
|
||||||
"ButtonAddNewServer": "Aggiungi Nuovo Server",
|
"ButtonAddNewServer": "Aggiungi un nuovo server",
|
||||||
"ButtonAuthors": "Autori",
|
"ButtonAuthors": "Autori",
|
||||||
"ButtonBack": "Indietro",
|
"ButtonBack": "Indietro",
|
||||||
"ButtonCancel": "Cancella",
|
"ButtonCancel": "Cancella",
|
||||||
"ButtonCancelTimer": "Cancella Timer",
|
"ButtonCancelTimer": "Annulla il timer",
|
||||||
"ButtonClearFilter": "Elimina Filtri",
|
"ButtonClearFilter": "Elimina filtri",
|
||||||
"ButtonCloseFeed": "Chudi i Feed",
|
"ButtonCloseFeed": "Chiudi flusso",
|
||||||
"ButtonCollections": "Raccolte",
|
"ButtonCollections": "Raccolte",
|
||||||
"ButtonConnect": "Connetti",
|
"ButtonConnect": "Connetti",
|
||||||
"ButtonConnectToServer": "Connetti al Server",
|
"ButtonConnectToServer": "Connetti al server",
|
||||||
"ButtonCreate": "Crea",
|
"ButtonCreate": "Crea",
|
||||||
"ButtonCreateBookmark": "Crea Segnalibro",
|
"ButtonCreateBookmark": "Crea un segnalibro",
|
||||||
"ButtonCreateNewPlaylist": "Crea Nuova Playlist",
|
"ButtonCreateNewPlaylist": "Crea una nuova playlist",
|
||||||
"ButtonDelete": "Elimina",
|
"ButtonDelete": "Elimina",
|
||||||
"ButtonDeleteLocalEpisode": "Cancella episodio locale",
|
"ButtonDeleteLocalEpisode": "Cancella episodio locale",
|
||||||
"ButtonDeleteLocalFile": "Elimina File locale",
|
"ButtonDeleteLocalFile": "Elimina il file locale",
|
||||||
"ButtonDeleteLocalItem": "Elimina oggetto locale",
|
"ButtonDeleteLocalItem": "Elimina l'oggetto locale",
|
||||||
"ButtonDisableAutoTimer": "Disattiva Auto Timer",
|
"ButtonDisableAutoTimer": "Disattiva il timer automatico",
|
||||||
"ButtonDisconnect": "Disconnetti",
|
"ButtonDisconnect": "Disconnetti",
|
||||||
"ButtonGoToWebClient": "Apri il Web Client",
|
"ButtonGoToWebClient": "Apri il client web",
|
||||||
"ButtonHistory": "Cronologia",
|
"ButtonHistory": "Cronologia",
|
||||||
"ButtonHome": "Home",
|
"ButtonHome": "Pagina principale",
|
||||||
"ButtonIssues": "Errori",
|
"ButtonIssues": "Errori",
|
||||||
"ButtonLatest": "Ultimi",
|
"ButtonLatest": "Ultimi",
|
||||||
"ButtonLibrary": "Libreria",
|
"ButtonLibrary": "Biblioteca",
|
||||||
"ButtonLocalMedia": "Media Locali",
|
"ButtonLocalMedia": "Media locali",
|
||||||
"ButtonManageLocalFiles": "Gestisci file Locali",
|
"ButtonManageLocalFiles": "Gestisci file locali",
|
||||||
"ButtonNewFolder": "Nuova Cartella",
|
"ButtonNewFolder": "Nuova cartella",
|
||||||
"ButtonNextEpisode": "Prossimo Episodio",
|
"ButtonNextEpisode": "Prossimo episodio",
|
||||||
"ButtonOpenFeed": "Apri Feed",
|
"ButtonOpenFeed": "Apri il flusso",
|
||||||
"ButtonOverride": "Oltrepassa",
|
"ButtonOverride": "Oltrepassa",
|
||||||
"ButtonPause": "Pausa",
|
"ButtonPause": "Pausa",
|
||||||
"ButtonPlay": "Play",
|
"ButtonPlay": "Riproduci",
|
||||||
"ButtonPlaying": "In Riproduzione",
|
"ButtonPlayEpisode": "Riproduci episodio",
|
||||||
"ButtonPlaylists": "Playlists",
|
"ButtonPlaying": "In riproduzione",
|
||||||
|
"ButtonPlaylists": "Playlist",
|
||||||
"ButtonRead": "Leggi",
|
"ButtonRead": "Leggi",
|
||||||
"ButtonRemove": "Rimuovi",
|
"ButtonRemove": "Rimuovi",
|
||||||
"ButtonRemoveFromServer": "Rimuovi dal server",
|
"ButtonRemoveFromServer": "Rimuovi dal server",
|
||||||
"ButtonSave": "Salva",
|
"ButtonSave": "Salva",
|
||||||
"ButtonSaveOrder": "Salva Ordine",
|
"ButtonSaveOrder": "Salva l'ordine",
|
||||||
"ButtonSearch": "Cerca",
|
"ButtonSearch": "Cerca",
|
||||||
"ButtonSendEbookToDevice": "Invia Ebook al Dispositivo",
|
"ButtonSendEbookToDevice": "Invia il libro al dispositivo",
|
||||||
"ButtonSeries": "Serie",
|
"ButtonSeries": "Serie",
|
||||||
"ButtonSetTimer": "Imposta Timer",
|
"ButtonSetTimer": "Imposta Timer",
|
||||||
"ButtonStream": "Stream",
|
"ButtonStream": "Stream",
|
||||||
"ButtonSubmit": "Invia",
|
"ButtonSubmit": "Invia",
|
||||||
"ButtonSwitchServerUser": "Cambia Server/Utente",
|
"ButtonSwitchServerUser": "Cambia Server/Utente",
|
||||||
"ButtonUserStats": "Statistiche Utente",
|
"ButtonUserStats": "Statistiche utente",
|
||||||
"ButtonYes": "Si",
|
"ButtonYes": "Sì",
|
||||||
"HeaderAccount": "Account",
|
"HeaderAccount": "Account",
|
||||||
"HeaderAdvanced": "Avanzate",
|
"HeaderAdvanced": "Avanzate",
|
||||||
"HeaderAudioTracks": "Tracce Audio",
|
"HeaderAudioTracks": "Tracce audio",
|
||||||
"HeaderChapters": "Capitoli",
|
"HeaderChapters": "Capitoli",
|
||||||
"HeaderCollection": "Raccolta",
|
"HeaderCollection": "Raccolta",
|
||||||
"HeaderCollectionItems": "Elementi della Raccolta",
|
"HeaderCollectionItems": "Elementi della raccolta",
|
||||||
"HeaderConnectionStatus": "Stato Connessione",
|
"HeaderConnectionStatus": "Stato connessione",
|
||||||
|
"HeaderDataSettings": "Impostazioni dei dati",
|
||||||
"HeaderDetails": "Dettagli",
|
"HeaderDetails": "Dettagli",
|
||||||
"HeaderDownloads": "Downloads",
|
"HeaderDownloads": "Scaricamenti",
|
||||||
"HeaderEbookFiles": "Ebook File",
|
"HeaderEbookFiles": "File dei libri",
|
||||||
"HeaderEpisodes": "Episodi",
|
"HeaderEpisodes": "Episodi",
|
||||||
"HeaderEreaderSettings": "Impostazioni Ereader",
|
"HeaderEreaderSettings": "Impostazioni lettore",
|
||||||
"HeaderLatestEpisodes": "Ultimi Episodi",
|
"HeaderLatestEpisodes": "Ultimi Episodi",
|
||||||
"HeaderLibraries": "Librerie",
|
"HeaderLibraries": "Biblioteche",
|
||||||
"HeaderLocalFolders": "Cartelle Locali",
|
"HeaderLocalFolders": "Cartelle locali",
|
||||||
"HeaderLocalLibraryItems": "Oggetti Libreria Locale",
|
"HeaderLocalLibraryItems": "Oggetti della biblioteca locale",
|
||||||
"HeaderNewPlaylist": "Nuova Playlist",
|
"HeaderNewPlaylist": "Nuova playlist",
|
||||||
"HeaderOpenRSSFeed": "Apri RSS Feed",
|
"HeaderOpenRSSFeed": "Apri il flusso RSS",
|
||||||
"HeaderPlaybackSettings": "Impostazioni Playback",
|
"HeaderPlaybackSettings": "Impostazioni rirpoduzione",
|
||||||
"HeaderPlaylist": "Playlist",
|
"HeaderPlaylist": "Playlist",
|
||||||
"HeaderPlaylistItems": "Elementi della playlist",
|
"HeaderPlaylistItems": "Elementi della playlist",
|
||||||
"HeaderRSSFeed": "RSS Feed",
|
"HeaderRSSFeed": "Flusso RSS",
|
||||||
"HeaderRSSFeedGeneral": "RSS Dettagli",
|
"HeaderRSSFeedGeneral": "Dettagli RSS",
|
||||||
"HeaderRSSFeedIsOpen": "RSS Feed è aperto",
|
"HeaderRSSFeedIsOpen": "RSS Feed è aperto",
|
||||||
"HeaderSelectDownloadLocation": "Selezione Posizione Download",
|
"HeaderSelectDownloadLocation": "Selezione Posizione Download",
|
||||||
"HeaderSettings": "Impostazioni",
|
"HeaderSettings": "Impostazioni",
|
||||||
@@ -79,14 +81,16 @@
|
|||||||
"HeaderSleepTimerSettings": "Impostazione tempo Sleep",
|
"HeaderSleepTimerSettings": "Impostazione tempo Sleep",
|
||||||
"HeaderStatsMinutesListeningChart": "Minuti ascoltati (Ultimi 7 Giorni)",
|
"HeaderStatsMinutesListeningChart": "Minuti ascoltati (Ultimi 7 Giorni)",
|
||||||
"HeaderStatsRecentSessions": "Sessioni Recenti",
|
"HeaderStatsRecentSessions": "Sessioni Recenti",
|
||||||
"HeaderTableOfContents": "Tabella dei Contenuti",
|
"HeaderTableOfContents": "Indice",
|
||||||
"HeaderUserInterfaceSettings": "Impostazioni Interfaccia Utente",
|
"HeaderUserInterfaceSettings": "Impostazioni interfaccia utente",
|
||||||
"HeaderYourStats": "Statistiche Personali",
|
"HeaderYourStats": "Statistiche personali",
|
||||||
|
"LabelAddToPlaylist": "Aggiungi alla playlist",
|
||||||
"LabelAdded": "Aggiunto",
|
"LabelAdded": "Aggiunto",
|
||||||
"LabelAddedAt": "Aggiunto il",
|
"LabelAddedAt": "Aggiunto il",
|
||||||
"LabelAddToPlaylist": "aggiungi alla Playlist",
|
|
||||||
"LabelAll": "Tutti",
|
"LabelAll": "Tutti",
|
||||||
"LabelAllowSeekingOnMediaControls": "Consenti la ricerca della posizione sui controlli delle notifiche multimediali",
|
"LabelAllowSeekingOnMediaControls": "Consenti la ricerca della posizione sui controlli delle notifiche multimediali",
|
||||||
|
"LabelAlways": "Sempre",
|
||||||
|
"LabelAskConfirmation": "Richiedi una conferma",
|
||||||
"LabelAuthor": "Autore",
|
"LabelAuthor": "Autore",
|
||||||
"LabelAuthorFirstLast": "Autore (Per Nome)",
|
"LabelAuthorFirstLast": "Autore (Per Nome)",
|
||||||
"LabelAuthorLastFirst": "Autori (Per Cognome)",
|
"LabelAuthorLastFirst": "Autori (Per Cognome)",
|
||||||
@@ -98,8 +102,8 @@
|
|||||||
"LabelAutoSleepTimerAutoRewindHelp": "Al termine del timer di spegnimento automatico, la riproduzione dell'elemento riavvolgerà automaticamente la tua posizione.",
|
"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.",
|
"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",
|
"LabelBooks": "Libri",
|
||||||
|
"LabelChapterTrack": "Traccia capitolo",
|
||||||
"LabelChapters": "Capitoli",
|
"LabelChapters": "Capitoli",
|
||||||
"LabelChapterTrack": "Traccia Capitolo",
|
|
||||||
"LabelClosePlayer": "Chiudi player",
|
"LabelClosePlayer": "Chiudi player",
|
||||||
"LabelCollapseSeries": "Comprimi Serie",
|
"LabelCollapseSeries": "Comprimi Serie",
|
||||||
"LabelComplete": "Completo",
|
"LabelComplete": "Completo",
|
||||||
@@ -107,190 +111,204 @@
|
|||||||
"LabelContinueEpisodes": "Continua Episodi",
|
"LabelContinueEpisodes": "Continua Episodi",
|
||||||
"LabelContinueListening": "Continua Ascolto",
|
"LabelContinueListening": "Continua Ascolto",
|
||||||
"LabelContinueReading": "Continua Lettura",
|
"LabelContinueReading": "Continua Lettura",
|
||||||
"LabelContinueSeries": "Continua Serie",
|
"LabelContinueSeries": "Continua serie",
|
||||||
"LabelCustomTime": "Personalizza tempo",
|
"LabelCustomTime": "Personalizza tempo",
|
||||||
"LabelDescription": "Descrizione",
|
"LabelDescription": "Descrizione",
|
||||||
"LabelDisableAudioFadeOut": "Disabilita dissolvenza audio in uscita",
|
"LabelDisableAudioFadeOut": "Disabilita dissolvenza audio in uscita",
|
||||||
"LabelDisableAudioFadeOutHelp": "Il volume dell'audio inizierà a diminuire quando rimane meno di 1 minuto sul timer di spegnimento. Abilita questa impostazione per non diminuirlo.",
|
"LabelDisableAudioFadeOutHelp": "Il volume dell'audio inizierà a diminuire quando rimane meno di 1 minuto sul timer di spegnimento. Abilita questa impostazione per non diminuirlo.",
|
||||||
"LabelDisableAutoRewind": "Disabilita auto riavvolgimento",
|
"LabelDisableAutoRewind": "Disabilita auto riavvolgimento",
|
||||||
"LabelDisableShakeToReset": "Disabilita shake to reset",
|
"LabelDisableShakeToReset": "Disabilita Agita per ripristinare",
|
||||||
"LabelDisableShakeToResetHelp": "Scuotendo il dispositivo mentre il timer è in esecuzione O entro 2 minuti dalla scadenza del timer si ripristinerà il timer di spegnimento. Abilita questa impostazione per disabilitare lo scuotimento per ripristinare.",
|
"LabelDisableShakeToResetHelp": "Scuotendo il dispositivo mentre il timer è in esecuzione O entro 2 minuti dalla scadenza del timer si ripristinerà il timer di spegnimento. Abilita questa impostazione per disabilitare lo scuotimento per ripristinare.",
|
||||||
"LabelDisableVibrateOnReset": "Disabilita vibrazione reset",
|
"LabelDisableVibrateOnReset": "Disabilita vibrazione ripristino",
|
||||||
"LabelDisableVibrateOnResetHelp": "Quando il timer di spegnimento viene reimpostato, il dispositivo vibrerà. Abilita questa impostazione per non vibrare quando il timer di spegnimento viene reimpostato.",
|
"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",
|
"LabelDiscover": "Scopri",
|
||||||
"LabelDownload": "Download",
|
"LabelDownload": "Scarica",
|
||||||
|
"LabelDownloadUsingCellular": "Scarica usando i dati mobili",
|
||||||
"LabelDownloaded": "Scaricati",
|
"LabelDownloaded": "Scaricati",
|
||||||
"LabelDuration": "Durata",
|
"LabelDuration": "Durata",
|
||||||
"LabelEbook": "Ebook",
|
"LabelEbook": "Libro digitale",
|
||||||
"LabelEbooks": "Ebooks",
|
"LabelEbooks": "Libri digitali",
|
||||||
"LabelEnable": "Abilita",
|
"LabelEnable": "Abilita",
|
||||||
"LabelEnableMp3IndexSeeking": "Abilita la ricerca dell'indice mp3",
|
"LabelEnableMp3IndexSeeking": "Abilita la ricerca dell'indice mp3",
|
||||||
"LabelEnableMp3IndexSeekingHelp": "Questa impostazione dovrebbe essere abilitata solo se hai file mp3 che non vengono ricercati correttamente. La ricerca imprecisa è molto probabilmente dovuta ai file MP3 a birate variabile (VBR). Questa impostazione imporrà la ricerca dell'indice, in cui viene creata una mappatura tempo-byte durante la lettura del file. In alcuni casi, con file MP3 di grandi dimensioni, si verificherà un ritardo durante la ricerca verso la fine del file.",
|
"LabelEnableMp3IndexSeekingHelp": "Questa impostazione dovrebbe essere abilitata solo se hai file mp3 che non vengono ricercati correttamente. La ricerca imprecisa è molto probabilmente dovuta ai file MP3 a birate variabile (VBR). Questa impostazione imporrà la ricerca dell'indice, in cui viene creata una mappatura tempo-byte durante la lettura del file. In alcuni casi, con file MP3 di grandi dimensioni, si verificherà un ritardo durante la ricerca verso la fine del file.",
|
||||||
"LabelEnd": "Fine",
|
"LabelEnd": "Fine",
|
||||||
"LabelEndOfChapter": "Fine del capitolo",
|
"LabelEndOfChapter": "Fine Capitolo",
|
||||||
"LabelEndTime": "Tempo alla fine",
|
"LabelEndTime": "Tempo alla fine",
|
||||||
"LabelEpisode": "Episodio",
|
"LabelEpisode": "Episodio",
|
||||||
"LabelFeedURL": "Feed URL",
|
"LabelFeedURL": "URL del flusso",
|
||||||
"LabelFile": "File",
|
"LabelFile": "File",
|
||||||
"LabelFileBirthtime": "Data Creazione",
|
"LabelFileBirthtime": "Data di creazione",
|
||||||
"LabelFileModified": "Ultima modifica",
|
"LabelFileModified": "Ultima modifica",
|
||||||
"LabelFilename": "Nome File",
|
"LabelFilename": "Nome del file",
|
||||||
"LabelFinished": "Finita",
|
"LabelFinished": "Finita",
|
||||||
"LabelFolder": "Cartella",
|
"LabelFolder": "Cartella",
|
||||||
"LabelFontScale": "Dimensione Font",
|
"LabelFontBoldness": "Grassetto",
|
||||||
|
"LabelFontScale": "Dimensione font",
|
||||||
"LabelGenre": "Genere",
|
"LabelGenre": "Genere",
|
||||||
"LabelGenres": "Generi",
|
"LabelGenres": "Generi",
|
||||||
"LabelHapticFeedback": "Feedback tattile",
|
"LabelHapticFeedback": "Feedback tattile",
|
||||||
"LabelHasEbook": "Ha l'ebook",
|
"LabelHasEbook": "Ha un libro",
|
||||||
"LabelHasSupplementaryEbook": "Ha un ebook supplementale",
|
"LabelHasSupplementaryEbook": "Ha un libro supplementale",
|
||||||
"LabelHeavy": "Forte",
|
"LabelHeavy": "Forte",
|
||||||
"LabelHigh": "Alto",
|
"LabelHigh": "Alto",
|
||||||
"LabelHost": "Host",
|
"LabelHost": "Host",
|
||||||
|
"LabelInProgress": "In corso",
|
||||||
"LabelIncomplete": "Incompleta",
|
"LabelIncomplete": "Incompleta",
|
||||||
"LabelInProgress": "In Corso",
|
|
||||||
"LabelInternalAppStorage": "Archiviazione interna delle app",
|
"LabelInternalAppStorage": "Archiviazione interna delle app",
|
||||||
"LabelJumpBackwardsTime": "Vai indietro nel tempo",
|
"LabelJumpBackwardsTime": "Vai indietro nel tempo",
|
||||||
"LabelJumpForwardsTime": "Vai avanti nel tempo",
|
"LabelJumpForwardsTime": "Vai avanti nel tempo",
|
||||||
"LabelLanguage": "Lingua",
|
"LabelLanguage": "Lingua",
|
||||||
"LabelLayout": "Layout",
|
"LabelLayout": "Disposizione",
|
||||||
"LabelLayoutAuto": "Auto",
|
"LabelLayoutAuto": "Automatico",
|
||||||
"LabelLayoutSinglePage": "Pagina singola",
|
"LabelLayoutSinglePage": "Pagina singola",
|
||||||
"LabelLight": "Leggera",
|
"LabelLight": "Leggera",
|
||||||
"LabelLineSpacing": "Interlinea",
|
"LabelLineSpacing": "Interlinea",
|
||||||
"LabelListenAgain": "Ascolta ancora",
|
"LabelListenAgain": "Ascolta ancora",
|
||||||
"LabelLocalBooks": "Libri Locali",
|
"LabelLocalBooks": "Libri locali",
|
||||||
"LabelLocalPodcasts": "Podcasts Locali",
|
"LabelLocalPodcasts": "Podcast locali",
|
||||||
"LabelLockOrientation": "Blocca orientamento",
|
"LabelLockOrientation": "Blocca orientamento",
|
||||||
"LabelLockPlayer": "Blocca Player",
|
"LabelLockPlayer": "Blocca Player",
|
||||||
"LabelLow": "Bassa",
|
"LabelLow": "Bassa",
|
||||||
"LabelMediaType": "Tipo Media",
|
"LabelMediaType": "Tipo Media",
|
||||||
"LabelMedium": "Medio",
|
"LabelMedium": "Medio",
|
||||||
"LabelMore": "Molto",
|
"LabelMore": "Molto",
|
||||||
"LabelMoreInfo": "Più Info",
|
"LabelMoreInfo": "Più info",
|
||||||
"LabelName": "Nome",
|
"LabelName": "Nome",
|
||||||
"LabelNarrator": "Narratore",
|
"LabelNarrator": "Narratore",
|
||||||
"LabelNarrators": "Narratori",
|
"LabelNarrators": "Narratori",
|
||||||
"LabelNewestAuthors": "Nuovi Autori",
|
"LabelNavigateWithVolume": "Navigare con i tasti del volume",
|
||||||
"LabelNewestEpisodes": "Nuovi Episodi",
|
"LabelNavigateWithVolumeDisabled": "Disattivo",
|
||||||
|
"LabelNavigateWithVolumeEnabled": "Attivo",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "Invertito",
|
||||||
|
"LabelNever": "Mai",
|
||||||
|
"LabelNewestAuthors": "Nuovi autori",
|
||||||
|
"LabelNewestEpisodes": "Nuovi episodi",
|
||||||
"LabelNo": "No",
|
"LabelNo": "No",
|
||||||
"LabelNotFinished": "Da Completare",
|
"LabelNotFinished": "Da completare",
|
||||||
"LabelNotStarted": "Non iniziato",
|
"LabelNotStarted": "Non iniziato",
|
||||||
"LabelOff": "Off",
|
"LabelOff": "Disattivato",
|
||||||
"LabelPassword": "Password",
|
"LabelPassword": "Password",
|
||||||
"LabelPath": "Percorso",
|
"LabelPath": "Percorso",
|
||||||
"LabelPlaybackDirect": "Diretto",
|
"LabelPlaybackDirect": "Diretto",
|
||||||
"LabelPlaybackLocal": "Local",
|
"LabelPlaybackLocal": "Locale",
|
||||||
"LabelPlaybackSpeed": "Velocità Playback",
|
"LabelPlaybackSpeed": "Velocità di riproduzione",
|
||||||
"LabelPlaybackTranscode": "Transcodifica",
|
"LabelPlaybackTranscode": "Transcodifica",
|
||||||
"LabelPodcast": "Podcast",
|
"LabelPodcast": "Podcast",
|
||||||
"LabelPodcasts": "Podcasts",
|
"LabelPodcasts": "Podcast",
|
||||||
"LabelPreventIndexing": "Impedisci che il tuo feed venga indicizzato da iTunes e dalle directory dei podcast di Google",
|
"LabelPreventIndexing": "Impedisci che il tuo feed venga indicizzato da iTunes e dalle directory dei podcast di Google",
|
||||||
"LabelProgress": "Cominciati",
|
"LabelProgress": "Cominciati",
|
||||||
"LabelPubDate": "Data Pubblicazione",
|
"LabelPubDate": "Data di pubblicazione",
|
||||||
"LabelPublishYear": "Anno Pubblicazione",
|
"LabelPublishYear": "Anno di pubblicazione",
|
||||||
"LabelRead": "Leggi",
|
"LabelRSSFeedCustomOwnerEmail": "E-mail del proprietario personalizzato",
|
||||||
"LabelReadAgain": "Leggi Ancora",
|
|
||||||
"LabelRecentlyAdded": "Aggiunti Recentemente",
|
|
||||||
"LabelRecentSeries": "Serie Recenti",
|
|
||||||
"LabelRemoveFromPlaylist": "Remove from Playlist",
|
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Email del proprietario personalizzato",
|
|
||||||
"LabelRSSFeedCustomOwnerName": "Nome del proprietario personalizzato",
|
"LabelRSSFeedCustomOwnerName": "Nome del proprietario personalizzato",
|
||||||
"LabelRSSFeedPreventIndexing": "Impedisci l'indicizzazione",
|
"LabelRSSFeedPreventIndexing": "Impedisci l'indicizzazione",
|
||||||
"LabelRSSFeedSlug": "RSS Feed Slug",
|
"LabelRSSFeedSlug": "Parole chiave del flusso RSS",
|
||||||
|
"LabelRandomly": "Casualmente",
|
||||||
|
"LabelRead": "Leggi",
|
||||||
|
"LabelReadAgain": "Leggi ancora",
|
||||||
|
"LabelRecentSeries": "Serie recenti",
|
||||||
|
"LabelRecentlyAdded": "Aggiunti recentemente",
|
||||||
|
"LabelRemoveFromPlaylist": "Rimuovi dalla playlist",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Scala il tempo trascorso in base alla velocità",
|
"LabelScaleElapsedTimeBySpeed": "Scala il tempo trascorso in base alla velocità",
|
||||||
"LabelSeason": "Stagione",
|
"LabelSeason": "Stagione",
|
||||||
"LabelSelectADevice": "Seletiona dispositivo",
|
"LabelSelectADevice": "Seletiona dispositivo",
|
||||||
"LabelSeries": "Serie",
|
"LabelSeries": "Serie",
|
||||||
"LabelServerAddress": "Indiritto Server",
|
"LabelServerAddress": "Indiritto server",
|
||||||
"LabelSetEbookAsPrimary": "Imposta come Primario",
|
"LabelSetEbookAsPrimary": "Imposta come primario",
|
||||||
"LabelSetEbookAsSupplementary": "Imposta come Suplementare",
|
"LabelSetEbookAsSupplementary": "Imposta come suplementare",
|
||||||
"LabelShakeSensitivity": "Sensibilita Shake",
|
"LabelShakeSensitivity": "Sensibilità alla scossa",
|
||||||
"LabelShowAll": "Mostra Tutto",
|
"LabelShowAll": "Mostra tutto",
|
||||||
"LabelSize": "Dimensione",
|
"LabelSize": "Dimensione",
|
||||||
"LabelSleepTimer": "Sleep timer",
|
"LabelSleepTimer": "Temporizzatore",
|
||||||
"LabelStart": "Inizo",
|
"LabelStart": "Inizo",
|
||||||
"LabelStartTime": "Tempo di inizio",
|
"LabelStartTime": "Tempo di inizio",
|
||||||
"LabelStatsBestDay": "Giorno Migliore",
|
"LabelStatsBestDay": "Giorno migliore",
|
||||||
"LabelStatsDailyAverage": "Media giornaliera",
|
"LabelStatsDailyAverage": "Media giornaliera",
|
||||||
"LabelStatsDays": "Giorni",
|
"LabelStatsDays": "Giorni",
|
||||||
"LabelStatsDaysListened": "Giorni di Ascolto",
|
"LabelStatsDaysListened": "Giorni di ascolto",
|
||||||
"LabelStatsInARow": "Di fila",
|
"LabelStatsInARow": "di fila",
|
||||||
"LabelStatsItemsFinished": "Libri Completati",
|
"LabelStatsItemsFinished": "Libri completati",
|
||||||
"LabelStatsMinutes": "Minuti",
|
"LabelStatsMinutes": "minuti",
|
||||||
"LabelStatsMinutesListening": "Ascolto in Minuti",
|
"LabelStatsMinutesListening": "Minuti di ascolto",
|
||||||
"LabelStatsWeekListening": "Ascolto Settimanale",
|
"LabelStatsWeekListening": "Ascolto settimanale",
|
||||||
"LabelTag": "Tag",
|
"LabelStreamingUsingCellular": "Streaming usando i dati mobili",
|
||||||
"LabelTags": "Tags",
|
"LabelTag": "Etichetta",
|
||||||
|
"LabelTags": "Etichette",
|
||||||
"LabelTheme": "Tema",
|
"LabelTheme": "Tema",
|
||||||
"LabelThemeDark": "Scuro",
|
"LabelThemeDark": "Scuro",
|
||||||
"LabelThemeLight": "Chiaro",
|
"LabelThemeLight": "Chiaro",
|
||||||
"LabelTimeRemaining": "{0} rimanente",
|
"LabelTimeRemaining": "{0} rimanente",
|
||||||
"LabelTitle": "Titolo",
|
"LabelTitle": "Titolo",
|
||||||
"LabelTotalTrack": "Traccia Totale",
|
"LabelTotalSize": "Dimensione totale",
|
||||||
|
"LabelTotalTrack": "Traccia totale",
|
||||||
"LabelTracks": "Traccia",
|
"LabelTracks": "Traccia",
|
||||||
"LabelType": "Tipo",
|
"LabelType": "Tipo",
|
||||||
"LabelUnlockPlayer": "Sblocca Player",
|
"LabelUnlockPlayer": "Sblocca il player",
|
||||||
"LabelUseBookshelfView": "Usa visualizzazione libreria",
|
"LabelUseBookshelfView": "Usa visualizzazione biblioteca",
|
||||||
"LabelUser": "Utente",
|
"LabelUser": "Utente",
|
||||||
"LabelUsername": "Username",
|
"LabelUsername": "Nome utente",
|
||||||
"LabelVeryHigh": "Molto Alto",
|
"LabelVeryHigh": "Molto alto",
|
||||||
"LabelVeryLow": "Molto Basso",
|
"LabelVeryLow": "Molto basso",
|
||||||
"LabelYourBookmarks": "I tuoi Preferiti",
|
"LabelYourBookmarks": "I tuoi preferiti",
|
||||||
"LabelYourProgress": "Completato al",
|
"LabelYourProgress": "Completato al",
|
||||||
"MessageAndroid10Downloads": "Android 10 e versioni precedenti utilizzeranno la memoria interna dell'app per i download.",
|
"MessageAndroid10Downloads": "Android 10 e versioni precedenti utilizzeranno la memoria interna dell'app per gli scaricamenti.",
|
||||||
"MessageAttemptingServerConnection": "Tentativo di connessione al server...",
|
"MessageAttemptingServerConnection": "Tentativo di connessione al server…",
|
||||||
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf server non connesso",
|
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf server non connesso",
|
||||||
"MessageAudiobookshelfServerRequired": "<strong>Importante!</strong> Questa app è progettata per funzionare con un server Audiobookshelf ospitato da te o da qualcuno che conosci. Questa app non fornisce alcun contenuto.",
|
"MessageAudiobookshelfServerRequired": "<strong>Importante!</strong> Questa app è progettata per funzionare con un server Audiobookshelf ospitato da te o da qualcuno che conosci. Questa app non fornisce alcun contenuto.",
|
||||||
"MessageBookshelfEmpty": "Scaffale vuoto",
|
"MessageBookshelfEmpty": "Scaffale vuoto",
|
||||||
"MessageConfirmDeleteLocalEpisode": "Rimuovi episodi locali \"{0}\" dal tuo dispositivo? i file sul server non verranno toccati.",
|
"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.",
|
"MessageConfirmDeleteLocalFiles": "Rimuovi i file locali dell'oggetto? I file sul server e i progressi non verranno toccati.",
|
||||||
"MessageConfirmDiscardProgress": "Sei sicuro di voler resettare i tuoi progressi?",
|
"MessageConfirmDiscardProgress": "Sei sicuro/sicura di voler ripristinare i tuoi progressi?",
|
||||||
"MessageConfirmMarkAsFinished": "Sei sicuro di voler contrassegnare questo elemento come finito?",
|
"MessageConfirmDownloadUsingCellular": "Stai per eseguire il download utilizzando la rete dati cellulare. Ciò potrebbe includere addebiti per i dati dell'operatore. Vuoi continuare?",
|
||||||
"MessageConfirmRemoveBookmark": "Sei sicuro di voler rimuovere il segnalibro?",
|
"MessageConfirmMarkAsFinished": "Sei sicuro/sicura di voler contrassegnare questo elemento come finito?",
|
||||||
"MessageDiscardProgress": "Elimina Progressi",
|
"MessageConfirmRemoveBookmark": "Sei sicuro/sicura di voler rimuovere il segnalibro?",
|
||||||
"MessageDownloadCompleteProcessing": "Download completato. Elaborazione...",
|
"MessageConfirmStreamingUsingCellular": "Stai per eseguire lo streaming utilizzando la rete dati. Ciò potrebbe includere addebiti per i dati dell'operatore. Vuoi continuare?",
|
||||||
"MessageDownloading": "Scaricamento...",
|
"MessageDiscardProgress": "Elimina i progressi",
|
||||||
"MessageDownloadingEpisode": "Download episodio in corso",
|
"MessageDownloadCompleteProcessing": "Scaricamento completato. Elaborazione…",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} Episodio(i) in coda per il Download",
|
"MessageDownloading": "Scaricamento…",
|
||||||
"MessageFeedURLWillBe": "Feed URL Saranno {0}",
|
"MessageDownloadingEpisode": "Scaricamento dell’episodio in corso",
|
||||||
"MessageFetching": "Recupero Info...",
|
"MessageEpisodesQueuedForDownload": "{0} episodio(i) in coda per lo scaricamento",
|
||||||
"MessageFollowTheProjectOnGithub": "Segui il progetto su Github",
|
"MessageFeedURLWillBe": "l’URL del flusso sarà {0}",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Download dell'elemento completato ma impossibile creare l'elemento della libreria",
|
"MessageFetching": "Recupero info…",
|
||||||
"MessageLoading": "Caricamento...",
|
"MessageFollowTheProjectOnGithub": "Segui il progetto su GitHub",
|
||||||
"MessageLoadingServerData": "Caricamento dati dal server...",
|
"MessageItemDownloadCompleteFailedToCreate": "Scaricamento dell’elemento completato ma impossibile creare l'elemento nella biblioteca",
|
||||||
|
"MessageLoading": "Caricamento…",
|
||||||
|
"MessageLoadingServerData": "Caricamento dati dal server…",
|
||||||
"MessageMarkAsFinished": "Segna come finito",
|
"MessageMarkAsFinished": "Segna come finito",
|
||||||
"MessageMediaLinkedToADifferentServer": "Il supporto è collegato a un server Audiobookshelf su un indirizzo diverso ({0}). I progressi verranno sincronizzati quando ci si connette a questo indirizzo del server.",
|
"MessageMediaLinkedToADifferentServer": "L’elemento è collegato a un server Audiobookshelf su un indirizzo diverso ({0}). I progressi verranno sincronizzati quando ci si connette a questo indirizzo del server.",
|
||||||
"MessageMediaLinkedToADifferentUser": "Il contenuto multimediale è collegato a questo server ma è stato scaricato da un utente diverso. I progressi verranno sincronizzati solo con l'utente che lo ha scaricato.",
|
"MessageMediaLinkedToADifferentUser": "Il contenuto multimediale è collegato a questo server ma è stato scaricato da un utente diverso. I progressi verranno sincronizzati solo con l'utente che lo ha scaricato.",
|
||||||
"MessageMediaLinkedToServer": "Collegato al server {0}",
|
"MessageMediaLinkedToServer": "Collegato al server {0}",
|
||||||
"MessageMediaLinkedToThisServer": "Il supporto scaricato è collegato a questo server",
|
"MessageMediaLinkedToThisServer": "L’elemento scaricato è collegato a questo server",
|
||||||
"MessageMediaNotLinkedToServer": "I contenuti multimediali non sono collegati a un server Audiobookshelf. Nessun progresso verrà sincronizzato.",
|
"MessageMediaNotLinkedToServer": "I contenuti multimediali non sono collegati a un server Audiobookshelf. Nessun progresso verrà sincronizzato.",
|
||||||
"MessageNoBookmarks": "Nessun Preferito",
|
"MessageNoBookmarks": "Nessun preferito",
|
||||||
"MessageNoChapters": "Nessun Capitolo",
|
"MessageNoChapters": "Nessun capitolo",
|
||||||
"MessageNoItems": "Nessun Oggetto",
|
"MessageNoItems": "Nessun oggetto",
|
||||||
"MessageNoItemsFound": "Nessun Oggetto trovato",
|
"MessageNoItemsFound": "Nessun oggetto trovato",
|
||||||
"MessageNoListeningSessions": "Nessuna sessione di ascolto",
|
"MessageNoListeningSessions": "Nessuna sessione di ascolto",
|
||||||
"MessageNoMediaFolders": "Nessuna Cartella Media",
|
"MessageNoMediaFolders": "Nessuna cartella media",
|
||||||
"MessageNoNetworkConnection": "Nessuna connessione di rete",
|
"MessageNoNetworkConnection": "Nessuna connessione di rete",
|
||||||
"MessageNoPodcastsFound": "Nessun podcasts trovato",
|
"MessageNoPodcastsFound": "Nessun podcast trovato",
|
||||||
"MessageNoSeries": "No series",
|
"MessageNoSeries": "Nessuna serie",
|
||||||
"MessageNoUpdatesWereNecessary": "Nessun aggiornamento necessario",
|
"MessageNoUpdatesWereNecessary": "Nessun aggiornamento necessario",
|
||||||
"MessageNoUserPlaylists": "Non hai nessuna Playlist",
|
"MessageNoUserPlaylists": "Non hai nessuna Playlist",
|
||||||
"MessageReportBugsAndContribute": "Segnala bug, richiedi funzionalità e contribuisci",
|
"MessageReportBugsAndContribute": "Segnala errori, richiedi funzionalità e contribuisci",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Collegato tramite Rete cellulare a consumo",
|
"MessageSocketConnectedOverMeteredCellular": "Collegato tramite rete cellulare a consumo",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Collegato tramite rete wifi a consumo",
|
"MessageSocketConnectedOverMeteredWifi": "Collegato tramite rete Wi-Fi a consumo",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Collegato tramite Rete cellularer",
|
"MessageSocketConnectedOverUnmeteredCellular": "Collegato tramite rete cellulare",
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Collegato tramite rete wif",
|
"MessageSocketConnectedOverUnmeteredWifi": "Collegato tramite rete Wi-Fi",
|
||||||
"MessageSocketNotConnected": "Non connesso",
|
"MessageSocketNotConnected": "Non connesso",
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Avviso: la maggior parte delle app di podcast richiede che l'URL del feed RSS utilizzi HTTPS",
|
"NoteRSSFeedPodcastAppsHttps": "Avviso: la maggior parte delle app di podcast richiede che l'URL del feed RSS utilizzi HTTPS",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Avviso: 1 o più delle tue puntate non hanno una data di pubblicazione. Alcune app di podcast lo richiedono.",
|
"NoteRSSFeedPodcastAppsPubDate": "Avviso: 1 o più delle tue puntate non hanno una data di pubblicazione. Alcune app di podcast lo richiedono.",
|
||||||
"ToastBookmarkCreateFailed": "Creazione segnalibro fallita",
|
"ToastBookmarkCreateFailed": "Creazione segnalibro fallita",
|
||||||
"ToastBookmarkRemoveFailed": "Rimozione Segnalibro fallita",
|
"ToastBookmarkRemoveFailed": "Rimozione segnalibro fallita",
|
||||||
"ToastBookmarkUpdateFailed": "Aggiornamento Segnalibro fallito",
|
"ToastBookmarkUpdateFailed": "Aggiornamento segnalibro fallito",
|
||||||
|
"ToastDownloadNotAllowedOnCellular": "Lo scaricamento non è consentito sui dati mobili",
|
||||||
"ToastItemMarkedAsFinishedFailed": "Errore nel segnare il file come finito",
|
"ToastItemMarkedAsFinishedFailed": "Errore nel segnare il file come finito",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "Errore nel segnare il file come non completo",
|
"ToastItemMarkedAsNotFinishedFailed": "Errore nel segnare il file come non completo",
|
||||||
"ToastPlaylistCreateFailed": "Errore Creazione playlist",
|
"ToastPlaylistCreateFailed": "Errore creazione playlist",
|
||||||
"ToastPodcastCreateFailed": "Errore Creazione podcast",
|
"ToastPodcastCreateFailed": "Errore creazione podcast",
|
||||||
"ToastPodcastCreateSuccess": "Podcast creato Correttamente",
|
"ToastPodcastCreateSuccess": "Podcast creato correttamente",
|
||||||
"ToastRSSFeedCloseFailed": "Errore chiusura RSS feed",
|
"ToastRSSFeedCloseFailed": "Errore chiusura flusso RSS",
|
||||||
"ToastRSSFeedCloseSuccess": "RSS feed chiuso"
|
"ToastRSSFeedCloseSuccess": "Flusso RSS chiuso",
|
||||||
}
|
"ToastStreamingNotAllowedOnCellular": "Lo streaming non è consentito sui dati mobili"
|
||||||
|
}
|
||||||
|
|||||||
+11
-137
@@ -1,53 +1,28 @@
|
|||||||
{
|
{
|
||||||
"ButtonAdd": "Pridėti",
|
"ButtonAdd": "Pridėti",
|
||||||
"ButtonAddNewServer": "Add New Server",
|
|
||||||
"ButtonAuthors": "Autoriai",
|
"ButtonAuthors": "Autoriai",
|
||||||
"ButtonBack": "Back",
|
"ButtonBack": "Atgal",
|
||||||
"ButtonCancel": "Atšaukti",
|
"ButtonCancel": "Atšaukti",
|
||||||
"ButtonCancelTimer": "Cancel Timer",
|
|
||||||
"ButtonClearFilter": "Valyti filtrą",
|
"ButtonClearFilter": "Valyti filtrą",
|
||||||
"ButtonCloseFeed": "Uždaryti srautą",
|
"ButtonCloseFeed": "Uždaryti srautą",
|
||||||
"ButtonCollections": "Kolekcijos",
|
"ButtonCollections": "Kolekcijos",
|
||||||
"ButtonConnect": "Connect",
|
|
||||||
"ButtonConnectToServer": "Connect to Server",
|
|
||||||
"ButtonCreate": "Kurti",
|
"ButtonCreate": "Kurti",
|
||||||
"ButtonCreateBookmark": "Create Bookmark",
|
|
||||||
"ButtonCreateNewPlaylist": "Create New Playlist",
|
|
||||||
"ButtonDelete": "Ištrinti",
|
"ButtonDelete": "Ištrinti",
|
||||||
"ButtonDeleteLocalEpisode": "Delete local episode",
|
|
||||||
"ButtonDeleteLocalFile": "Delete local file",
|
|
||||||
"ButtonDeleteLocalItem": "Delete local item",
|
|
||||||
"ButtonDisableAutoTimer": "Disable Auto Timer",
|
|
||||||
"ButtonDisconnect": "Disconnect",
|
|
||||||
"ButtonGoToWebClient": "Go to Web Client",
|
|
||||||
"ButtonHistory": "History",
|
|
||||||
"ButtonHome": "Pradžia",
|
"ButtonHome": "Pradžia",
|
||||||
"ButtonIssues": "Problemos",
|
"ButtonIssues": "Problemos",
|
||||||
"ButtonLatest": "Naujausias",
|
"ButtonLatest": "Naujausias",
|
||||||
"ButtonLibrary": "Biblioteka",
|
"ButtonLibrary": "Biblioteka",
|
||||||
"ButtonLocalMedia": "Local Media",
|
|
||||||
"ButtonManageLocalFiles": "Manage Local Files",
|
|
||||||
"ButtonNewFolder": "New Folder",
|
|
||||||
"ButtonNextEpisode": "Next Episode",
|
|
||||||
"ButtonOpenFeed": "Atidaryti srautą",
|
"ButtonOpenFeed": "Atidaryti srautą",
|
||||||
"ButtonOverride": "Override",
|
"ButtonPause": "Pauzė",
|
||||||
"ButtonPause": "Pause",
|
|
||||||
"ButtonPlay": "Groti",
|
"ButtonPlay": "Groti",
|
||||||
"ButtonPlaying": "Grojama",
|
"ButtonPlaying": "Grojama",
|
||||||
"ButtonPlaylists": "Grojaraščiai",
|
"ButtonPlaylists": "Grojaraščiai",
|
||||||
"ButtonRead": "Skaityti",
|
"ButtonRead": "Skaityti",
|
||||||
"ButtonRemove": "Pašalinti",
|
"ButtonRemove": "Pašalinti",
|
||||||
"ButtonRemoveFromServer": "Remove from Server",
|
|
||||||
"ButtonSave": "Išsaugoti",
|
"ButtonSave": "Išsaugoti",
|
||||||
"ButtonSaveOrder": "Save Order",
|
|
||||||
"ButtonSearch": "Ieškoti",
|
"ButtonSearch": "Ieškoti",
|
||||||
"ButtonSendEbookToDevice": "Send Ebook to Device",
|
|
||||||
"ButtonSeries": "Serijos",
|
"ButtonSeries": "Serijos",
|
||||||
"ButtonSetTimer": "Set Timer",
|
|
||||||
"ButtonStream": "Stream",
|
|
||||||
"ButtonSubmit": "Pateikti",
|
"ButtonSubmit": "Pateikti",
|
||||||
"ButtonSwitchServerUser": "Switch Server/User",
|
|
||||||
"ButtonUserStats": "User Stats",
|
|
||||||
"ButtonYes": "Taip",
|
"ButtonYes": "Taip",
|
||||||
"HeaderAccount": "Paskyra",
|
"HeaderAccount": "Paskyra",
|
||||||
"HeaderAdvanced": "Papildomi",
|
"HeaderAdvanced": "Papildomi",
|
||||||
@@ -55,80 +30,43 @@
|
|||||||
"HeaderChapters": "Skyriai",
|
"HeaderChapters": "Skyriai",
|
||||||
"HeaderCollection": "Kolekcija",
|
"HeaderCollection": "Kolekcija",
|
||||||
"HeaderCollectionItems": "Kolekcijos elementai",
|
"HeaderCollectionItems": "Kolekcijos elementai",
|
||||||
"HeaderConnectionStatus": "Connection Status",
|
|
||||||
"HeaderDetails": "Detalės",
|
"HeaderDetails": "Detalės",
|
||||||
"HeaderDownloads": "Downloads",
|
|
||||||
"HeaderEbookFiles": "Eknygos failai",
|
"HeaderEbookFiles": "Eknygos failai",
|
||||||
"HeaderEpisodes": "Epizodai",
|
"HeaderEpisodes": "Epizodai",
|
||||||
"HeaderEreaderSettings": "Elektroninių skaitytuvų nustatymai",
|
"HeaderEreaderSettings": "Elektroninių skaitytuvų nustatymai",
|
||||||
"HeaderLatestEpisodes": "Naujausi epizodai",
|
"HeaderLatestEpisodes": "Naujausi epizodai",
|
||||||
"HeaderLibraries": "Bibliotekos",
|
"HeaderLibraries": "Bibliotekos",
|
||||||
"HeaderLocalFolders": "Local Folders",
|
|
||||||
"HeaderLocalLibraryItems": "Local Library Items",
|
|
||||||
"HeaderNewPlaylist": "New Playlist",
|
|
||||||
"HeaderOpenRSSFeed": "Atidaryti RSS srautą",
|
"HeaderOpenRSSFeed": "Atidaryti RSS srautą",
|
||||||
"HeaderPlaybackSettings": "Playback Settings",
|
|
||||||
"HeaderPlaylist": "Grojaraštis",
|
"HeaderPlaylist": "Grojaraštis",
|
||||||
"HeaderPlaylistItems": "Grojaraščio elementai",
|
"HeaderPlaylistItems": "Grojaraščio elementai",
|
||||||
"HeaderRSSFeed": "RSS Feed",
|
|
||||||
"HeaderRSSFeedGeneral": "RSS informacija",
|
"HeaderRSSFeedGeneral": "RSS informacija",
|
||||||
"HeaderRSSFeedIsOpen": "RSS srautas yra atidarytas",
|
"HeaderRSSFeedIsOpen": "RSS srautas yra atidarytas",
|
||||||
"HeaderSelectDownloadLocation": "Select Download Location",
|
|
||||||
"HeaderSettings": "Nustatymai",
|
"HeaderSettings": "Nustatymai",
|
||||||
"HeaderSleepTimer": "Miego laikmatis",
|
"HeaderSleepTimer": "Miego laikmatis",
|
||||||
"HeaderSleepTimerSettings": "Sleep Timer Settings",
|
|
||||||
"HeaderStatsMinutesListeningChart": "Klausymo minutės (paskutinės 7 dienos)",
|
"HeaderStatsMinutesListeningChart": "Klausymo minutės (paskutinės 7 dienos)",
|
||||||
"HeaderStatsRecentSessions": "Naujausios sesijos",
|
"HeaderStatsRecentSessions": "Naujausios sesijos",
|
||||||
"HeaderTableOfContents": "Turinys",
|
"HeaderTableOfContents": "Turinys",
|
||||||
"HeaderUserInterfaceSettings": "User Interface Settings",
|
|
||||||
"HeaderYourStats": "Jūsų statistika",
|
"HeaderYourStats": "Jūsų statistika",
|
||||||
|
"LabelAddToPlaylist": "Pridėti į grojaraštį",
|
||||||
"LabelAdded": "Pridėta",
|
"LabelAdded": "Pridėta",
|
||||||
"LabelAddedAt": "Pridėta {0}",
|
"LabelAddedAt": "Pridėta {0}",
|
||||||
"LabelAddToPlaylist": "Pridėti į grojaraštį",
|
|
||||||
"LabelAll": "Visi",
|
"LabelAll": "Visi",
|
||||||
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
|
|
||||||
"LabelAuthor": "Autorius",
|
"LabelAuthor": "Autorius",
|
||||||
"LabelAuthorFirstLast": "Autorius (Vardas Pavardė)",
|
"LabelAuthorFirstLast": "Autorius (Vardas Pavardė)",
|
||||||
"LabelAuthorLastFirst": "Autorius (Pavardė, Vardas)",
|
"LabelAuthorLastFirst": "Autorius (Pavardė, Vardas)",
|
||||||
"LabelAuthors": "Autoriai",
|
"LabelAuthors": "Autoriai",
|
||||||
"LabelAutoDownloadEpisodes": "Automatiškai atsisiųsti epizodus",
|
"LabelAutoDownloadEpisodes": "Automatiškai atsisiųsti epizodus",
|
||||||
"LabelAutoRewindTime": "Auto rewind time",
|
|
||||||
"LabelAutoSleepTimer": "Auto sleep timer",
|
|
||||||
"LabelAutoSleepTimerAutoRewind": "Auto sleep timer auto rewind",
|
|
||||||
"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",
|
"LabelBooks": "Knygos",
|
||||||
"LabelChapters": "Skyriai",
|
"LabelChapters": "Skyriai",
|
||||||
"LabelChapterTrack": "Chapter Track",
|
|
||||||
"LabelClosePlayer": "Uždaryti grotuvą",
|
"LabelClosePlayer": "Uždaryti grotuvą",
|
||||||
"LabelCollapseSeries": "Suskleisti seriją",
|
"LabelCollapseSeries": "Suskleisti seriją",
|
||||||
"LabelComplete": "Baigta",
|
"LabelComplete": "Baigta",
|
||||||
"LabelContinueBooks": "Continue Books",
|
|
||||||
"LabelContinueEpisodes": "Continue Episodes",
|
|
||||||
"LabelContinueListening": "Continue Listening",
|
|
||||||
"LabelContinueReading": "Continue Reading",
|
|
||||||
"LabelContinueSeries": "Continue Series",
|
|
||||||
"LabelCustomTime": "Custom time",
|
|
||||||
"LabelDescription": "Aprašymas",
|
"LabelDescription": "Aprašymas",
|
||||||
"LabelDisableAudioFadeOut": "Disable audio fade out",
|
|
||||||
"LabelDisableAudioFadeOutHelp": "Audio volume will start decreasing when there is less than 1 minute remaining on the sleep timer. Enable this setting to not fade out.",
|
|
||||||
"LabelDisableAutoRewind": "Disable auto rewind",
|
|
||||||
"LabelDisableShakeToReset": "Disable shake to reset",
|
|
||||||
"LabelDisableShakeToResetHelp": "Shaking your device while the timer is running OR within 2 minutes of the timer expiring will reset the sleep timer. Enable this setting to disable shake to reset.",
|
|
||||||
"LabelDisableVibrateOnReset": "Disable vibrate on reset",
|
|
||||||
"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",
|
"LabelDownload": "Atsisiųsti",
|
||||||
"LabelDownloaded": "Downloaded",
|
|
||||||
"LabelDuration": "Trukmė",
|
"LabelDuration": "Trukmė",
|
||||||
"LabelEbook": "Elektroninė knyga",
|
"LabelEbook": "Elektroninė knyga",
|
||||||
"LabelEbooks": "Ebooks",
|
|
||||||
"LabelEnable": "Įjungti",
|
"LabelEnable": "Įjungti",
|
||||||
"LabelEnableMp3IndexSeeking": "Enable mp3 index seeking",
|
|
||||||
"LabelEnableMp3IndexSeekingHelp": "This setting should only be enabled if you have mp3 files that are not seeking correctly. Inaccurate seeking is most likely due to Variable birate (VBR) MP3 files. This setting will force index seeking, in which a time-to-byte mapping is built as the file is read. In some cases with large MP3 files there will be a delay when seeking towards the end of the file.",
|
|
||||||
"LabelEnd": "Pabaiga",
|
"LabelEnd": "Pabaiga",
|
||||||
"LabelEndOfChapter": "End of Chapter",
|
|
||||||
"LabelEndTime": "End time",
|
|
||||||
"LabelEpisode": "Epizodas",
|
"LabelEpisode": "Epizodas",
|
||||||
"LabelFeedURL": "Srauto URL",
|
"LabelFeedURL": "Srauto URL",
|
||||||
"LabelFile": "Failas",
|
"LabelFile": "Failas",
|
||||||
@@ -140,71 +78,38 @@
|
|||||||
"LabelFontScale": "Šrifto mastelis",
|
"LabelFontScale": "Šrifto mastelis",
|
||||||
"LabelGenre": "Žanras",
|
"LabelGenre": "Žanras",
|
||||||
"LabelGenres": "Žanrai",
|
"LabelGenres": "Žanrai",
|
||||||
"LabelHapticFeedback": "Haptic feedback",
|
|
||||||
"LabelHasEbook": "Has ebook",
|
|
||||||
"LabelHasSupplementaryEbook": "Has supplementary ebook",
|
|
||||||
"LabelHeavy": "Heavy",
|
|
||||||
"LabelHigh": "High",
|
|
||||||
"LabelHost": "Serveris",
|
"LabelHost": "Serveris",
|
||||||
"LabelIncomplete": "Nebaigta",
|
|
||||||
"LabelInProgress": "Vyksta",
|
"LabelInProgress": "Vyksta",
|
||||||
"LabelInternalAppStorage": "Internal App Storage",
|
"LabelIncomplete": "Nebaigta",
|
||||||
"LabelJumpBackwardsTime": "Jump backwards time",
|
|
||||||
"LabelJumpForwardsTime": "Jump forwards time",
|
|
||||||
"LabelLanguage": "Kalba",
|
"LabelLanguage": "Kalba",
|
||||||
"LabelLayout": "Layout",
|
|
||||||
"LabelLayoutAuto": "Auto",
|
|
||||||
"LabelLayoutSinglePage": "Single page",
|
|
||||||
"LabelLight": "Light",
|
|
||||||
"LabelLineSpacing": "Tarpas tarp eilučių",
|
"LabelLineSpacing": "Tarpas tarp eilučių",
|
||||||
"LabelListenAgain": "Listen Again",
|
"LabelListenAgain": "Klausytis iš naujo",
|
||||||
"LabelLocalBooks": "Local Books",
|
|
||||||
"LabelLocalPodcasts": "Local Podcasts",
|
|
||||||
"LabelLockOrientation": "Lock orientation",
|
|
||||||
"LabelLockPlayer": "Lock Player",
|
|
||||||
"LabelLow": "Low",
|
|
||||||
"LabelMediaType": "Medijos tipas",
|
"LabelMediaType": "Medijos tipas",
|
||||||
"LabelMedium": "Medium",
|
|
||||||
"LabelMore": "Daugiau",
|
"LabelMore": "Daugiau",
|
||||||
"LabelMoreInfo": "Daugiau informacijos",
|
"LabelMoreInfo": "Daugiau informacijos",
|
||||||
"LabelName": "Pavadinimas",
|
"LabelName": "Pavadinimas",
|
||||||
"LabelNarrator": "Skaitytojas",
|
"LabelNarrator": "Skaitytojas",
|
||||||
"LabelNarrators": "Skaitytojai",
|
"LabelNarrators": "Skaitytojai",
|
||||||
"LabelNewestAuthors": "Newest Authors",
|
|
||||||
"LabelNewestEpisodes": "Newest Episodes",
|
|
||||||
"LabelNo": "No",
|
|
||||||
"LabelNotFinished": "Nebaigta",
|
"LabelNotFinished": "Nebaigta",
|
||||||
"LabelNotStarted": "Nepasileista",
|
"LabelNotStarted": "Nepasileista",
|
||||||
"LabelOff": "Off",
|
|
||||||
"LabelPassword": "Slaptažodis",
|
"LabelPassword": "Slaptažodis",
|
||||||
"LabelPath": "Kelias",
|
"LabelPath": "Kelias",
|
||||||
"LabelPlaybackDirect": "Direct",
|
|
||||||
"LabelPlaybackLocal": "Local",
|
|
||||||
"LabelPlaybackSpeed": "Playback Speed",
|
|
||||||
"LabelPlaybackTranscode": "Transcode",
|
|
||||||
"LabelPodcast": "Tinklalaidė",
|
"LabelPodcast": "Tinklalaidė",
|
||||||
"LabelPodcasts": "Tinklalaidės",
|
"LabelPodcasts": "Tinklalaidės",
|
||||||
"LabelPreventIndexing": "Neleisti indeksuoti jūsų srauto „iTunes“ ir Google podcast kataloguose",
|
"LabelPreventIndexing": "Neleisti indeksuoti jūsų srauto „iTunes“ ir Google podcast kataloguose",
|
||||||
"LabelProgress": "Progresas",
|
"LabelProgress": "Progresas",
|
||||||
"LabelPubDate": "Publikavimo data",
|
"LabelPubDate": "Publikavimo data",
|
||||||
"LabelPublishYear": "Leidimo metai",
|
"LabelPublishYear": "Leidimo metai",
|
||||||
"LabelRead": "Skaityta",
|
|
||||||
"LabelReadAgain": "Read Again",
|
|
||||||
"LabelRecentlyAdded": "Recently Added",
|
|
||||||
"LabelRecentSeries": "Recent Series",
|
|
||||||
"LabelRemoveFromPlaylist": "Remove from Playlist",
|
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Pasirinktinis savininko el. paštas",
|
"LabelRSSFeedCustomOwnerEmail": "Pasirinktinis savininko el. paštas",
|
||||||
"LabelRSSFeedCustomOwnerName": "Pasirinktinis savininko vardas",
|
"LabelRSSFeedCustomOwnerName": "Pasirinktinis savininko vardas",
|
||||||
"LabelRSSFeedPreventIndexing": "Neleisti indeksuoti",
|
"LabelRSSFeedPreventIndexing": "Neleisti indeksuoti",
|
||||||
"LabelRSSFeedSlug": "RSS srauto identifikatorius",
|
"LabelRSSFeedSlug": "RSS srauto identifikatorius",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
|
"LabelRead": "Skaityta",
|
||||||
|
"LabelReadAgain": "Skaityti dar kartą",
|
||||||
"LabelSeason": "Sezonas",
|
"LabelSeason": "Sezonas",
|
||||||
"LabelSelectADevice": "Select a device",
|
|
||||||
"LabelSeries": "Serija",
|
"LabelSeries": "Serija",
|
||||||
"LabelServerAddress": "Server address",
|
|
||||||
"LabelSetEbookAsPrimary": "Nustatyti kaip pagrindinę",
|
"LabelSetEbookAsPrimary": "Nustatyti kaip pagrindinę",
|
||||||
"LabelSetEbookAsSupplementary": "Nustatyti kaip papildomą",
|
"LabelSetEbookAsSupplementary": "Nustatyti kaip papildomą",
|
||||||
"LabelShakeSensitivity": "Shake sensitivity",
|
|
||||||
"LabelShowAll": "Rodyti viską",
|
"LabelShowAll": "Rodyti viską",
|
||||||
"LabelSize": "Dydis",
|
"LabelSize": "Dydis",
|
||||||
"LabelSleepTimer": "Miego laikmatis",
|
"LabelSleepTimer": "Miego laikmatis",
|
||||||
@@ -226,61 +131,30 @@
|
|||||||
"LabelThemeLight": "Šviesi",
|
"LabelThemeLight": "Šviesi",
|
||||||
"LabelTimeRemaining": "{0} likę",
|
"LabelTimeRemaining": "{0} likę",
|
||||||
"LabelTitle": "Pavadinimas",
|
"LabelTitle": "Pavadinimas",
|
||||||
"LabelTotalTrack": "Total Track",
|
|
||||||
"LabelTracks": "Takeliai",
|
"LabelTracks": "Takeliai",
|
||||||
"LabelType": "Tipas",
|
"LabelType": "Tipas",
|
||||||
"LabelUnlockPlayer": "Unlock Player",
|
|
||||||
"LabelUseBookshelfView": "Use bookshelf view",
|
|
||||||
"LabelUser": "Vartotojas",
|
"LabelUser": "Vartotojas",
|
||||||
"LabelUsername": "Vartotojo vardas",
|
"LabelUsername": "Vartotojo vardas",
|
||||||
"LabelVeryHigh": "Very High",
|
|
||||||
"LabelVeryLow": "Very Low",
|
|
||||||
"LabelYourBookmarks": "Jūsų skirtukai",
|
"LabelYourBookmarks": "Jūsų skirtukai",
|
||||||
"LabelYourProgress": "Jūsų pažanga",
|
"LabelYourProgress": "Jūsų pažanga",
|
||||||
"MessageAndroid10Downloads": "Android 10 and below will use internal app storage for downloads.",
|
|
||||||
"MessageAttemptingServerConnection": "Attempting server connection...",
|
|
||||||
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf server not connected",
|
|
||||||
"MessageAudiobookshelfServerRequired": "<strong>Important!</strong> This app is designed to work with an Audiobookshelf server that you or someone you know is hosting. This app does not provide any content.",
|
|
||||||
"MessageBookshelfEmpty": "Bookshelf empty",
|
|
||||||
"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?",
|
|
||||||
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
|
|
||||||
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
|
|
||||||
"MessageDiscardProgress": "Discard Progress",
|
|
||||||
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
|
|
||||||
"MessageDownloading": "Downloading...",
|
|
||||||
"MessageDownloadingEpisode": "Epizodas atsisiunčiamas",
|
"MessageDownloadingEpisode": "Epizodas atsisiunčiamas",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} epizodai laukia atsisiuntimo",
|
"MessageEpisodesQueuedForDownload": "{0} epizodai laukia atsisiuntimo",
|
||||||
"MessageFeedURLWillBe": "Srauto URL bus {0}",
|
"MessageFeedURLWillBe": "Srauto URL bus {0}",
|
||||||
"MessageFetching": "Surenkama...",
|
"MessageFetching": "Surenkama...",
|
||||||
"MessageFollowTheProjectOnGithub": "Follow the project on Github",
|
"MessageFollowTheProjectOnGithub": "Follow the project on GitHub",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Item download complete but failed to create library item",
|
|
||||||
"MessageLoading": "Kraunama...",
|
"MessageLoading": "Kraunama...",
|
||||||
"MessageLoadingServerData": "Loading server data...",
|
|
||||||
"MessageMarkAsFinished": "Pažymėti kaip užbaigtą",
|
"MessageMarkAsFinished": "Pažymėti kaip užbaigtą",
|
||||||
"MessageMediaLinkedToADifferentServer": "Media is linked to an Audiobookshelf server on a different address ({0}). Progress will be synced when connected to this server address.",
|
|
||||||
"MessageMediaLinkedToADifferentUser": "Media is linked to this server but was downloaded by a different user. Progress will only be synced to the user that downloaded it.",
|
|
||||||
"MessageMediaLinkedToServer": "Linked to server {0}",
|
|
||||||
"MessageMediaLinkedToThisServer": "Downloaded media is linked to this server",
|
|
||||||
"MessageMediaNotLinkedToServer": "Media is not linked to an Audiobookshelf server. No progress will be synced.",
|
|
||||||
"MessageNoBookmarks": "Nėra žymų",
|
"MessageNoBookmarks": "Nėra žymų",
|
||||||
"MessageNoChapters": "Nėra skyrių",
|
"MessageNoChapters": "Nėra skyrių",
|
||||||
"MessageNoItems": "Nėra elementų",
|
"MessageNoItems": "Nėra elementų",
|
||||||
"MessageNoItemsFound": "Elementų nerasta",
|
"MessageNoItemsFound": "Elementų nerasta",
|
||||||
"MessageNoListeningSessions": "Klausymo sesijų nėra",
|
"MessageNoListeningSessions": "Klausymo sesijų nėra",
|
||||||
"MessageNoMediaFolders": "No Media Folders",
|
|
||||||
"MessageNoNetworkConnection": "No network connection",
|
|
||||||
"MessageNoPodcastsFound": "Tinklalaidžių nerasta",
|
"MessageNoPodcastsFound": "Tinklalaidžių nerasta",
|
||||||
"MessageNoSeries": "No series",
|
|
||||||
"MessageNoUpdatesWereNecessary": "Nereikalingi jokie atnaujinimai",
|
"MessageNoUpdatesWereNecessary": "Nereikalingi jokie atnaujinimai",
|
||||||
"MessageNoUserPlaylists": "Neturite grojaraščių",
|
"MessageNoUserPlaylists": "Neturite grojaraščių",
|
||||||
"MessageReportBugsAndContribute": "Praneškite apie klaidas, prašykite naujovių ir prisidėkite",
|
"MessageReportBugsAndContribute": "Praneškite apie klaidas, prašykite naujovių ir prisidėkite",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket connected over metered cellular",
|
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered Wi-Fi",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered wifi",
|
"MessageSocketConnectedOverUnmeteredWifi": "Socket connected over unmetered Wi-Fi",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Socket connected over unmetered cellular",
|
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Socket connected over unmetered wifi",
|
|
||||||
"MessageSocketNotConnected": "Socket not connected",
|
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Įspėjimas: Dauguma tinklalaidžių programų reikalauja, kad RSS kanalo URL būtų naudojamas su HTTPS",
|
"NoteRSSFeedPodcastAppsHttps": "Įspėjimas: Dauguma tinklalaidžių programų reikalauja, kad RSS kanalo URL būtų naudojamas su HTTPS",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Įspėjimas: Vienas ar daugiau jūsų epizodų neturi publikavimo datos. Kai kurios tinklalaidžių programos to reikalauja.",
|
"NoteRSSFeedPodcastAppsPubDate": "Įspėjimas: Vienas ar daugiau jūsų epizodų neturi publikavimo datos. Kai kurios tinklalaidžių programos to reikalauja.",
|
||||||
"ToastBookmarkCreateFailed": "Žymos sukurti nepavyko",
|
"ToastBookmarkCreateFailed": "Žymos sukurti nepavyko",
|
||||||
@@ -293,4 +167,4 @@
|
|||||||
"ToastPodcastCreateSuccess": "Tinklalaidė sėkmingai sukurta",
|
"ToastPodcastCreateSuccess": "Tinklalaidė sėkmingai sukurta",
|
||||||
"ToastRSSFeedCloseFailed": "RSS srauto uždaryti nepavyko",
|
"ToastRSSFeedCloseFailed": "RSS srauto uždaryti nepavyko",
|
||||||
"ToastRSSFeedCloseSuccess": "RSS srautas uždarytas"
|
"ToastRSSFeedCloseSuccess": "RSS srautas uždarytas"
|
||||||
}
|
}
|
||||||
|
|||||||
+155
-137
@@ -1,53 +1,54 @@
|
|||||||
{
|
{
|
||||||
"ButtonAdd": "Toevoegen",
|
"ButtonAdd": "Toevoegen",
|
||||||
"ButtonAddNewServer": "Add New Server",
|
"ButtonAddNewServer": "Nieuwe server toevoegen",
|
||||||
"ButtonAuthors": "Auteurs",
|
"ButtonAuthors": "Auteurs",
|
||||||
"ButtonBack": "Back",
|
"ButtonBack": "Terug",
|
||||||
"ButtonCancel": "Annuleren",
|
"ButtonCancel": "Annuleren",
|
||||||
"ButtonCancelTimer": "Cancel Timer",
|
"ButtonCancelTimer": "Timer annuleren",
|
||||||
"ButtonClearFilter": "Filter verwijderen",
|
"ButtonClearFilter": "Filter verwijderen",
|
||||||
"ButtonCloseFeed": "Feed sluiten",
|
"ButtonCloseFeed": "Feed sluiten",
|
||||||
"ButtonCollections": "Collecties",
|
"ButtonCollections": "Collecties",
|
||||||
"ButtonConnect": "Connect",
|
"ButtonConnect": "Verbinden",
|
||||||
"ButtonConnectToServer": "Connect to Server",
|
"ButtonConnectToServer": "Verbind met server",
|
||||||
"ButtonCreate": "Creëer",
|
"ButtonCreate": "Creëer",
|
||||||
"ButtonCreateBookmark": "Create Bookmark",
|
"ButtonCreateBookmark": "Creëer bladwijzer",
|
||||||
"ButtonCreateNewPlaylist": "Create New Playlist",
|
"ButtonCreateNewPlaylist": "Maak nieuwe afspeellijst",
|
||||||
"ButtonDelete": "Verwijder",
|
"ButtonDelete": "Verwijder",
|
||||||
"ButtonDeleteLocalEpisode": "Delete local episode",
|
"ButtonDeleteLocalEpisode": "Verwijder lokale aflevering",
|
||||||
"ButtonDeleteLocalFile": "Delete local file",
|
"ButtonDeleteLocalFile": "Verwijder lokaal bestand",
|
||||||
"ButtonDeleteLocalItem": "Delete local item",
|
"ButtonDeleteLocalItem": "Verwijder lokaal item",
|
||||||
"ButtonDisableAutoTimer": "Disable Auto Timer",
|
"ButtonDisableAutoTimer": "Automatische Timer Uitschakelen",
|
||||||
"ButtonDisconnect": "Disconnect",
|
"ButtonDisconnect": "Verbreek verbinding",
|
||||||
"ButtonGoToWebClient": "Go to Web Client",
|
"ButtonGoToWebClient": "Ga naar Web Client",
|
||||||
"ButtonHistory": "History",
|
"ButtonHistory": "Geschiedenis",
|
||||||
"ButtonHome": "Home",
|
"ButtonHome": "Thuis",
|
||||||
"ButtonIssues": "Issues",
|
"ButtonIssues": "Problemen",
|
||||||
"ButtonLatest": "Meest recent",
|
"ButtonLatest": "Meest recent",
|
||||||
"ButtonLibrary": "Bibliotheek",
|
"ButtonLibrary": "Bibliotheek",
|
||||||
"ButtonLocalMedia": "Local Media",
|
"ButtonLocalMedia": "Lokale Media",
|
||||||
"ButtonManageLocalFiles": "Manage Local Files",
|
"ButtonManageLocalFiles": "Beheer Lokale Bestanden",
|
||||||
"ButtonNewFolder": "New Folder",
|
"ButtonNewFolder": "Nieuwe map",
|
||||||
"ButtonNextEpisode": "Next Episode",
|
"ButtonNextEpisode": "Volgende aflevering",
|
||||||
"ButtonOpenFeed": "Feed openen",
|
"ButtonOpenFeed": "Feed openen",
|
||||||
"ButtonOverride": "Override",
|
"ButtonOverride": "Overschrijven",
|
||||||
"ButtonPause": "Pause",
|
"ButtonPause": "Pauze",
|
||||||
"ButtonPlay": "Afspelen",
|
"ButtonPlay": "Afspelen",
|
||||||
|
"ButtonPlayEpisode": "Aflevering afspelen",
|
||||||
"ButtonPlaying": "Speelt",
|
"ButtonPlaying": "Speelt",
|
||||||
"ButtonPlaylists": "Afspeellijsten",
|
"ButtonPlaylists": "Afspeellijsten",
|
||||||
"ButtonRead": "Lees",
|
"ButtonRead": "Lees",
|
||||||
"ButtonRemove": "Verwijder",
|
"ButtonRemove": "Verwijder",
|
||||||
"ButtonRemoveFromServer": "Remove from Server",
|
"ButtonRemoveFromServer": "Verwijder van server",
|
||||||
"ButtonSave": "Opslaan",
|
"ButtonSave": "Opslaan",
|
||||||
"ButtonSaveOrder": "Save Order",
|
"ButtonSaveOrder": "Volgorde bewaren",
|
||||||
"ButtonSearch": "Zoeken",
|
"ButtonSearch": "Zoeken",
|
||||||
"ButtonSendEbookToDevice": "Send Ebook to Device",
|
"ButtonSendEbookToDevice": "Verzend Ebook naar Apparaat",
|
||||||
"ButtonSeries": "Series",
|
"ButtonSeries": "Series",
|
||||||
"ButtonSetTimer": "Set Timer",
|
"ButtonSetTimer": "Zet Timer",
|
||||||
"ButtonStream": "Stream",
|
"ButtonStream": "Streamen",
|
||||||
"ButtonSubmit": "Indienen",
|
"ButtonSubmit": "Indienen",
|
||||||
"ButtonSwitchServerUser": "Switch Server/User",
|
"ButtonSwitchServerUser": "Verwissel server/gebruiker",
|
||||||
"ButtonUserStats": "User Stats",
|
"ButtonUserStats": "Gebruiker statistieken",
|
||||||
"ButtonYes": "Ja",
|
"ButtonYes": "Ja",
|
||||||
"HeaderAccount": "Account",
|
"HeaderAccount": "Account",
|
||||||
"HeaderAdvanced": "Geavanceerd",
|
"HeaderAdvanced": "Geavanceerd",
|
||||||
@@ -55,80 +56,84 @@
|
|||||||
"HeaderChapters": "Hoofdstukken",
|
"HeaderChapters": "Hoofdstukken",
|
||||||
"HeaderCollection": "Collectie",
|
"HeaderCollection": "Collectie",
|
||||||
"HeaderCollectionItems": "Collectie-objecten",
|
"HeaderCollectionItems": "Collectie-objecten",
|
||||||
"HeaderConnectionStatus": "Connection Status",
|
"HeaderConnectionStatus": "Verbindingsstatus",
|
||||||
|
"HeaderDataSettings": "Data Instellingen",
|
||||||
"HeaderDetails": "Details",
|
"HeaderDetails": "Details",
|
||||||
"HeaderDownloads": "Downloads",
|
"HeaderDownloads": "Downloads",
|
||||||
"HeaderEbookFiles": "Ebook Files",
|
"HeaderEbookFiles": "Ebook bestanden",
|
||||||
"HeaderEpisodes": "Afleveringen",
|
"HeaderEpisodes": "Afleveringen",
|
||||||
"HeaderEreaderSettings": "Ereader-instellingen",
|
"HeaderEreaderSettings": "Ereader-instellingen",
|
||||||
"HeaderLatestEpisodes": "Laatste afleveringen",
|
"HeaderLatestEpisodes": "Laatste afleveringen",
|
||||||
"HeaderLibraries": "Bibliotheken",
|
"HeaderLibraries": "Bibliotheken",
|
||||||
"HeaderLocalFolders": "Local Folders",
|
"HeaderLocalFolders": "Lokale Folders",
|
||||||
"HeaderLocalLibraryItems": "Local Library Items",
|
"HeaderLocalLibraryItems": "Lokale Bibliotheek Items",
|
||||||
"HeaderNewPlaylist": "New Playlist",
|
"HeaderNewPlaylist": "Nieuwe afspeellijst",
|
||||||
"HeaderOpenRSSFeed": "Open RSS-feed",
|
"HeaderOpenRSSFeed": "Open RSS-feed",
|
||||||
"HeaderPlaybackSettings": "Playback Settings",
|
"HeaderPlaybackSettings": "Afspeel instellingen",
|
||||||
"HeaderPlaylist": "Afspeellijst",
|
"HeaderPlaylist": "Afspeellijst",
|
||||||
"HeaderPlaylistItems": "Onderdelen in afspeellijst",
|
"HeaderPlaylistItems": "Onderdelen in afspeellijst",
|
||||||
"HeaderRSSFeed": "RSS Feed",
|
"HeaderRSSFeed": "RSS Feed",
|
||||||
"HeaderRSSFeedGeneral": "RSS-details",
|
"HeaderRSSFeedGeneral": "RSS-details",
|
||||||
"HeaderRSSFeedIsOpen": "RSS-feed is open",
|
"HeaderRSSFeedIsOpen": "RSS-feed is open",
|
||||||
"HeaderSelectDownloadLocation": "Select Download Location",
|
"HeaderSelectDownloadLocation": "Selecteer Download Locatie",
|
||||||
"HeaderSettings": "Instellingen",
|
"HeaderSettings": "Instellingen",
|
||||||
"HeaderSleepTimer": "Slaaptimer",
|
"HeaderSleepTimer": "Slaaptimer",
|
||||||
"HeaderSleepTimerSettings": "Sleep Timer Settings",
|
"HeaderSleepTimerSettings": "Sleep Timer Instellingen",
|
||||||
"HeaderStatsMinutesListeningChart": "Minuten geluisterd (laatste 7 dagen)",
|
"HeaderStatsMinutesListeningChart": "Minuten geluisterd (laatste 7 dagen)",
|
||||||
"HeaderStatsRecentSessions": "Recente sessies",
|
"HeaderStatsRecentSessions": "Recente sessies",
|
||||||
"HeaderTableOfContents": "Inhoudsopgave",
|
"HeaderTableOfContents": "Inhoudsopgave",
|
||||||
"HeaderUserInterfaceSettings": "User Interface Settings",
|
"HeaderUserInterfaceSettings": "Gebruiker Interface Instellingen",
|
||||||
"HeaderYourStats": "Je statistieken",
|
"HeaderYourStats": "Je statistieken",
|
||||||
|
"LabelAddToPlaylist": "Toevoegen aan afspeellijst",
|
||||||
"LabelAdded": "Toegevoegd",
|
"LabelAdded": "Toegevoegd",
|
||||||
"LabelAddedAt": "Toegevoegd op",
|
"LabelAddedAt": "Toegevoegd op",
|
||||||
"LabelAddToPlaylist": "Toevoegen aan afspeellijst",
|
|
||||||
"LabelAll": "Alle",
|
"LabelAll": "Alle",
|
||||||
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
|
"LabelAllowSeekingOnMediaControls": "Positie zoeken toestaan via media notificatie",
|
||||||
|
"LabelAlways": "Altijd",
|
||||||
|
"LabelAskConfirmation": "Vraag voor bevestiging",
|
||||||
"LabelAuthor": "Auteur",
|
"LabelAuthor": "Auteur",
|
||||||
"LabelAuthorFirstLast": "Auteur (Voornaam Achternaam)",
|
"LabelAuthorFirstLast": "Auteur (Voornaam Achternaam)",
|
||||||
"LabelAuthorLastFirst": "Auteur (Achternaam, Voornaam)",
|
"LabelAuthorLastFirst": "Auteur (Achternaam, Voornaam)",
|
||||||
"LabelAuthors": "Auteurs",
|
"LabelAuthors": "Auteurs",
|
||||||
"LabelAutoDownloadEpisodes": "Afleveringen automatisch downloaden",
|
"LabelAutoDownloadEpisodes": "Afleveringen automatisch downloaden",
|
||||||
"LabelAutoRewindTime": "Auto rewind time",
|
"LabelAutoRewindTime": "Automatisch Terugspoelen",
|
||||||
"LabelAutoSleepTimer": "Auto sleep timer",
|
"LabelAutoSleepTimer": "Automatische sleep timer",
|
||||||
"LabelAutoSleepTimerAutoRewind": "Auto sleep timer auto rewind",
|
"LabelAutoSleepTimerAutoRewind": "Automatische slaap timer automatisch terugspoelen.",
|
||||||
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
|
"LabelAutoSleepTimerAutoRewindHelp": "Wanneer de automatische slaap timer afloop zal het item terugspoelen naar de vorige positie.",
|
||||||
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
|
"LabelAutoSleepTimerHelp": "Wanneer er tussen de opgegeven begin- en eindtijd media wordt afgespeeld, start er automatisch een slaaptimer.",
|
||||||
"LabelBooks": "Boeken",
|
"LabelBooks": "Boeken",
|
||||||
|
"LabelChapterTrack": "Hoofdstuk Track",
|
||||||
"LabelChapters": "Hoofdstukken",
|
"LabelChapters": "Hoofdstukken",
|
||||||
"LabelChapterTrack": "Chapter Track",
|
|
||||||
"LabelClosePlayer": "Sluit speler",
|
"LabelClosePlayer": "Sluit speler",
|
||||||
"LabelCollapseSeries": "Series inklappen",
|
"LabelCollapseSeries": "Series inklappen",
|
||||||
"LabelComplete": "Compleet",
|
"LabelComplete": "Compleet",
|
||||||
"LabelContinueBooks": "Continue Books",
|
"LabelContinueBooks": "Doorgaan met Boeken",
|
||||||
"LabelContinueEpisodes": "Continue Episodes",
|
"LabelContinueEpisodes": "Doorgaan met Episodes",
|
||||||
"LabelContinueListening": "Continue Listening",
|
"LabelContinueListening": "Verder Luisteren",
|
||||||
"LabelContinueReading": "Continue Reading",
|
"LabelContinueReading": "Verder lezen",
|
||||||
"LabelContinueSeries": "Continue Series",
|
"LabelContinueSeries": "Doorgaan met Serie",
|
||||||
"LabelCustomTime": "Custom time",
|
"LabelCustomTime": "Custom Tijd",
|
||||||
"LabelDescription": "Beschrijving",
|
"LabelDescription": "Beschrijving",
|
||||||
"LabelDisableAudioFadeOut": "Disable audio fade out",
|
"LabelDisableAudioFadeOut": "Audio fade out uitschakelen",
|
||||||
"LabelDisableAudioFadeOutHelp": "Audio volume will start decreasing when there is less than 1 minute remaining on the sleep timer. Enable this setting to not fade out.",
|
"LabelDisableAudioFadeOutHelp": "Het audiovolume zal afnemen wanneer er minder dan 1 minuut resteert op de slaaptimer. Schakel deze instelling in om niet uit te faden.",
|
||||||
"LabelDisableAutoRewind": "Disable auto rewind",
|
"LabelDisableAutoRewind": "Automatisch terugspoelen uitschakelen",
|
||||||
"LabelDisableShakeToReset": "Disable shake to reset",
|
"LabelDisableShakeToReset": "Schudden om te resetten uitschakelen",
|
||||||
"LabelDisableShakeToResetHelp": "Shaking your device while the timer is running OR within 2 minutes of the timer expiring will reset the sleep timer. Enable this setting to disable shake to reset.",
|
"LabelDisableShakeToResetHelp": "Schudden van uw apparaat terwijl de timer loopt OF binnen 2 minuten nadat de timer afloopt, zal de slaaptimer resetten. Schakel deze instelling in om schudden om te resetten uit te schakelen.",
|
||||||
"LabelDisableVibrateOnReset": "Disable vibrate on reset",
|
"LabelDisableVibrateOnReset": "Vibratie bij reset uitschakelen",
|
||||||
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
|
"LabelDisableVibrateOnResetHelp": "Wanneer de slaaptimer wordt gereset, trilt uw apparaat. Schakel deze instelling in om niet te trillen wanneer de slaaptimer wordt gereset.",
|
||||||
"LabelDiscover": "Discover",
|
"LabelDiscover": "Ontdekken",
|
||||||
"LabelDownload": "Download",
|
"LabelDownload": "Download",
|
||||||
"LabelDownloaded": "Downloaded",
|
"LabelDownloadUsingCellular": "Download met mobiele data",
|
||||||
|
"LabelDownloaded": "Gedownload",
|
||||||
"LabelDuration": "Duur",
|
"LabelDuration": "Duur",
|
||||||
"LabelEbook": "Ebook",
|
"LabelEbook": "Ebook",
|
||||||
"LabelEbooks": "Ebooks",
|
"LabelEbooks": "Eboeken",
|
||||||
"LabelEnable": "Inschakelen",
|
"LabelEnable": "Inschakelen",
|
||||||
"LabelEnableMp3IndexSeeking": "Enable mp3 index seeking",
|
"LabelEnableMp3IndexSeeking": "MP3-index zoeken inschakelen",
|
||||||
"LabelEnableMp3IndexSeekingHelp": "This setting should only be enabled if you have mp3 files that are not seeking correctly. Inaccurate seeking is most likely due to Variable birate (VBR) MP3 files. This setting will force index seeking, in which a time-to-byte mapping is built as the file is read. In some cases with large MP3 files there will be a delay when seeking towards the end of the file.",
|
"LabelEnableMp3IndexSeekingHelp": "Deze instelling moet alleen worden ingeschakeld als u mp3-bestanden hebt die niet correct zoeken. Onnauwkeurig zoeken is waarschijnlijk te wijten aan Variable birate (VBR) MP3-bestanden. Deze instelling forceert indexzoeken, waarbij een time-to-byte mapping wordt opgebouwd terwijl het bestand wordt gelezen. In sommige gevallen met grote MP3-bestanden zal er een vertraging zijn bij het zoeken richting het einde van het bestand.",
|
||||||
"LabelEnd": "Einde",
|
"LabelEnd": "Einde",
|
||||||
"LabelEndOfChapter": "End of Chapter",
|
"LabelEndOfChapter": "Einde van het Hoofdstuk",
|
||||||
"LabelEndTime": "End time",
|
"LabelEndTime": "Eindtijd",
|
||||||
"LabelEpisode": "Aflevering",
|
"LabelEpisode": "Aflevering",
|
||||||
"LabelFeedURL": "Feed URL",
|
"LabelFeedURL": "Feed URL",
|
||||||
"LabelFile": "Bestand",
|
"LabelFile": "Bestand",
|
||||||
@@ -137,32 +142,33 @@
|
|||||||
"LabelFilename": "Bestandsnaam",
|
"LabelFilename": "Bestandsnaam",
|
||||||
"LabelFinished": "Voltooid",
|
"LabelFinished": "Voltooid",
|
||||||
"LabelFolder": "Map",
|
"LabelFolder": "Map",
|
||||||
|
"LabelFontBoldness": "Font Boldness",
|
||||||
"LabelFontScale": "Lettertype schaal",
|
"LabelFontScale": "Lettertype schaal",
|
||||||
"LabelGenre": "Genre",
|
"LabelGenre": "Genre",
|
||||||
"LabelGenres": "Genres",
|
"LabelGenres": "Genres",
|
||||||
"LabelHapticFeedback": "Haptic feedback",
|
"LabelHapticFeedback": "Haptische feedback",
|
||||||
"LabelHasEbook": "Has ebook",
|
"LabelHasEbook": "Heeft Ebook",
|
||||||
"LabelHasSupplementaryEbook": "Has supplementary ebook",
|
"LabelHasSupplementaryEbook": "Heeft aanvullend Ebook",
|
||||||
"LabelHeavy": "Heavy",
|
"LabelHeavy": "Zwaar",
|
||||||
"LabelHigh": "High",
|
"LabelHigh": "Hoog",
|
||||||
"LabelHost": "Host",
|
"LabelHost": "Host",
|
||||||
"LabelIncomplete": "Incompleet",
|
|
||||||
"LabelInProgress": "Bezig",
|
"LabelInProgress": "Bezig",
|
||||||
"LabelInternalAppStorage": "Internal App Storage",
|
"LabelIncomplete": "Incompleet",
|
||||||
"LabelJumpBackwardsTime": "Jump backwards time",
|
"LabelInternalAppStorage": "Interne App Opslag",
|
||||||
"LabelJumpForwardsTime": "Jump forwards time",
|
"LabelJumpBackwardsTime": "Terug in tijd springen",
|
||||||
|
"LabelJumpForwardsTime": "Verder in tijd springen",
|
||||||
"LabelLanguage": "Taal",
|
"LabelLanguage": "Taal",
|
||||||
"LabelLayout": "Layout",
|
"LabelLayout": "Layout",
|
||||||
"LabelLayoutAuto": "Auto",
|
"LabelLayoutAuto": "Automatisch",
|
||||||
"LabelLayoutSinglePage": "Single page",
|
"LabelLayoutSinglePage": "Enkele pagina",
|
||||||
"LabelLight": "Light",
|
"LabelLight": "Licht",
|
||||||
"LabelLineSpacing": "Regelruimte",
|
"LabelLineSpacing": "Regelruimte",
|
||||||
"LabelListenAgain": "Listen Again",
|
"LabelListenAgain": "Opnieuw Beluisteren",
|
||||||
"LabelLocalBooks": "Local Books",
|
"LabelLocalBooks": "Lokale Boeken",
|
||||||
"LabelLocalPodcasts": "Local Podcasts",
|
"LabelLocalPodcasts": "Lokale Podcasts",
|
||||||
"LabelLockOrientation": "Lock orientation",
|
"LabelLockOrientation": "Oriëntatie vergrendelen",
|
||||||
"LabelLockPlayer": "Lock Player",
|
"LabelLockPlayer": "Speler vergrendelen",
|
||||||
"LabelLow": "Low",
|
"LabelLow": "Laag",
|
||||||
"LabelMediaType": "Mediatype",
|
"LabelMediaType": "Mediatype",
|
||||||
"LabelMedium": "Medium",
|
"LabelMedium": "Medium",
|
||||||
"LabelMore": "Meer",
|
"LabelMore": "Meer",
|
||||||
@@ -170,41 +176,47 @@
|
|||||||
"LabelName": "Naam",
|
"LabelName": "Naam",
|
||||||
"LabelNarrator": "Verteller",
|
"LabelNarrator": "Verteller",
|
||||||
"LabelNarrators": "Vertellers",
|
"LabelNarrators": "Vertellers",
|
||||||
"LabelNewestAuthors": "Newest Authors",
|
"LabelNavigateWithVolume": "Navigeer met volume knoppen",
|
||||||
"LabelNewestEpisodes": "Newest Episodes",
|
"LabelNavigateWithVolumeDisabled": "Uit",
|
||||||
"LabelNo": "No",
|
"LabelNavigateWithVolumeEnabled": "Aam",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "Gespiegeld",
|
||||||
|
"LabelNever": "Nooit",
|
||||||
|
"LabelNewestAuthors": "Nieuwste Auteurs",
|
||||||
|
"LabelNewestEpisodes": "Nieuwste Afleveringen",
|
||||||
|
"LabelNo": "Nee",
|
||||||
"LabelNotFinished": "Niet Voltooid",
|
"LabelNotFinished": "Niet Voltooid",
|
||||||
"LabelNotStarted": "Niet Gestart",
|
"LabelNotStarted": "Niet Gestart",
|
||||||
"LabelOff": "Off",
|
"LabelOff": "Uit",
|
||||||
"LabelPassword": "Wachtwoord",
|
"LabelPassword": "Wachtwoord",
|
||||||
"LabelPath": "Pad",
|
"LabelPath": "Pad",
|
||||||
"LabelPlaybackDirect": "Direct",
|
"LabelPlaybackDirect": "Direct",
|
||||||
"LabelPlaybackLocal": "Local",
|
"LabelPlaybackLocal": "Lokaal",
|
||||||
"LabelPlaybackSpeed": "Playback Speed",
|
"LabelPlaybackSpeed": "Afspeelsnelheid",
|
||||||
"LabelPlaybackTranscode": "Transcode",
|
"LabelPlaybackTranscode": "Transcoderen",
|
||||||
"LabelPodcast": "Podcast",
|
"LabelPodcast": "Podcast",
|
||||||
"LabelPodcasts": "Podcasts",
|
"LabelPodcasts": "Podcasts",
|
||||||
"LabelPreventIndexing": "Voorkom indexering van je feed door iTunes- en Google podcastmappen",
|
"LabelPreventIndexing": "Voorkom indexering van je feed door iTunes- en Google podcastmappen",
|
||||||
"LabelProgress": "Voortgang",
|
"LabelProgress": "Voortgang",
|
||||||
"LabelPubDate": "Publicatiedatum",
|
"LabelPubDate": "Publicatiedatum",
|
||||||
"LabelPublishYear": "Jaar van uitgave",
|
"LabelPublishYear": "Jaar van uitgave",
|
||||||
"LabelRead": "Lees",
|
|
||||||
"LabelReadAgain": "Read Again",
|
|
||||||
"LabelRecentlyAdded": "Recently Added",
|
|
||||||
"LabelRecentSeries": "Recent Series",
|
|
||||||
"LabelRemoveFromPlaylist": "Remove from Playlist",
|
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Aangepast e-mailadres eigenaar",
|
"LabelRSSFeedCustomOwnerEmail": "Aangepast e-mailadres eigenaar",
|
||||||
"LabelRSSFeedCustomOwnerName": "Aangepaste naam eigenaar",
|
"LabelRSSFeedCustomOwnerName": "Aangepaste naam eigenaar",
|
||||||
"LabelRSSFeedPreventIndexing": "Voorkom indexering",
|
"LabelRSSFeedPreventIndexing": "Voorkom indexering",
|
||||||
"LabelRSSFeedSlug": "RSS-feed slug",
|
"LabelRSSFeedSlug": "RSS-feed slug",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
|
"LabelRandomly": "Willekeurig",
|
||||||
|
"LabelRead": "Lees",
|
||||||
|
"LabelReadAgain": "Opnieuw Lezen",
|
||||||
|
"LabelRecentSeries": "Recente Serie",
|
||||||
|
"LabelRecentlyAdded": "Recent Toegevoegd",
|
||||||
|
"LabelRemoveFromPlaylist": "Verwijder van Afspeellijst",
|
||||||
|
"LabelScaleElapsedTimeBySpeed": "Schaal verstreken tijd per snelheid",
|
||||||
"LabelSeason": "Seizoen",
|
"LabelSeason": "Seizoen",
|
||||||
"LabelSelectADevice": "Select a device",
|
"LabelSelectADevice": "Apparaat Selecteren",
|
||||||
"LabelSeries": "Serie",
|
"LabelSeries": "Serie",
|
||||||
"LabelServerAddress": "Server address",
|
"LabelServerAddress": "Server adres",
|
||||||
"LabelSetEbookAsPrimary": "Stel in als primair",
|
"LabelSetEbookAsPrimary": "Stel in als primair",
|
||||||
"LabelSetEbookAsSupplementary": "Stel in als supplementair",
|
"LabelSetEbookAsSupplementary": "Stel in als supplementair",
|
||||||
"LabelShakeSensitivity": "Shake sensitivity",
|
"LabelShakeSensitivity": "Schud-gevoeligheid",
|
||||||
"LabelShowAll": "Toon alle",
|
"LabelShowAll": "Toon alle",
|
||||||
"LabelSize": "Grootte",
|
"LabelSize": "Grootte",
|
||||||
"LabelSleepTimer": "Slaaptimer",
|
"LabelSleepTimer": "Slaaptimer",
|
||||||
@@ -219,6 +231,7 @@
|
|||||||
"LabelStatsMinutes": "minuten",
|
"LabelStatsMinutes": "minuten",
|
||||||
"LabelStatsMinutesListening": "Minuten luisterend",
|
"LabelStatsMinutesListening": "Minuten luisterend",
|
||||||
"LabelStatsWeekListening": "Week luisterend",
|
"LabelStatsWeekListening": "Week luisterend",
|
||||||
|
"LabelStreamingUsingCellular": "Streamen met Mobiele Data",
|
||||||
"LabelTag": "Tag",
|
"LabelTag": "Tag",
|
||||||
"LabelTags": "Tags",
|
"LabelTags": "Tags",
|
||||||
"LabelTheme": "Thema",
|
"LabelTheme": "Thema",
|
||||||
@@ -226,71 +239,76 @@
|
|||||||
"LabelThemeLight": "Licht",
|
"LabelThemeLight": "Licht",
|
||||||
"LabelTimeRemaining": "{0} te gaan",
|
"LabelTimeRemaining": "{0} te gaan",
|
||||||
"LabelTitle": "Titel",
|
"LabelTitle": "Titel",
|
||||||
"LabelTotalTrack": "Total Track",
|
"LabelTotalSize": "Totale grootte",
|
||||||
"LabelTracks": "Tracks",
|
"LabelTotalTrack": "Totaal audiospoor",
|
||||||
|
"LabelTracks": "Audiosporen",
|
||||||
"LabelType": "Type",
|
"LabelType": "Type",
|
||||||
"LabelUnlockPlayer": "Unlock Player",
|
"LabelUnlockPlayer": "Speler Ontgrendelen",
|
||||||
"LabelUseBookshelfView": "Use bookshelf view",
|
"LabelUseBookshelfView": "Gebruik boekenplankweergave",
|
||||||
"LabelUser": "Gebruiker",
|
"LabelUser": "Gebruiker",
|
||||||
"LabelUsername": "Gebruikersnaam",
|
"LabelUsername": "Gebruikersnaam",
|
||||||
"LabelVeryHigh": "Very High",
|
"LabelVeryHigh": "Zeer Hoog",
|
||||||
"LabelVeryLow": "Very Low",
|
"LabelVeryLow": "Zeer Laag",
|
||||||
"LabelYourBookmarks": "Je boekwijzers",
|
"LabelYourBookmarks": "Je boekwijzers",
|
||||||
"LabelYourProgress": "Je voortgang",
|
"LabelYourProgress": "Je voortgang",
|
||||||
"MessageAndroid10Downloads": "Android 10 and below will use internal app storage for downloads.",
|
"MessageAndroid10Downloads": "Android 10 en onder zullen interne app opslag gebruiken voor downloads.",
|
||||||
"MessageAttemptingServerConnection": "Attempting server connection...",
|
"MessageAttemptingServerConnection": "Serverconnectie proberen...",
|
||||||
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf server not connected",
|
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf server niet geconnecteerd",
|
||||||
"MessageAudiobookshelfServerRequired": "<strong>Important!</strong> This app is designed to work with an Audiobookshelf server that you or someone you know is hosting. This app does not provide any content.",
|
"MessageAudiobookshelfServerRequired": "<strong>Important!</strong> Deze app is ontworpen om te werken met een Audiobookshelf-server die u of iemand die u kent host. Deze app biedt geen content.",
|
||||||
"MessageBookshelfEmpty": "Bookshelf empty",
|
"MessageBookshelfEmpty": "Boekenplank leeg",
|
||||||
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.",
|
"MessageConfirmDeleteLocalEpisode": "Lokale aflevering \"{0}\" van uw apparaat verwijderen? Het bestand op de server blijft onaangetast.",
|
||||||
"MessageConfirmDeleteLocalFiles": "Remove local files of this item from your device? The files on the server and your progress will be unaffected.",
|
"MessageConfirmDeleteLocalFiles": "Lokale bestanden van dit item van uw apparaat verwijderen? De bestanden op de server en uw voortgang worden niet beïnvloed.",
|
||||||
"MessageConfirmDiscardProgress": "Are you sure you want to reset your progress?",
|
"MessageConfirmDiscardProgress": "Weet u zeker dat u uw voortgang wilt resetten?",
|
||||||
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
|
"MessageConfirmDownloadUsingCellular": "U staat op het punt om te downloaden met behulp van mobiele data. Dit kan kosten voor data van de provider met zich meebrengen. Wilt u doorgaan?",
|
||||||
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
|
"MessageConfirmMarkAsFinished": "Weet u zeker dat u dit item als voltooid wilt markeren?",
|
||||||
"MessageDiscardProgress": "Discard Progress",
|
"MessageConfirmRemoveBookmark": "Weet u zeker dat u de bladwijzer wilt verwijderen?",
|
||||||
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
|
"MessageConfirmStreamingUsingCellular": "U staat op het punt om te streamen met behulp van mobiele data. Dit kan kosten voor data van de provider met zich meebrengen. Wilt u doorgaan?",
|
||||||
"MessageDownloading": "Downloading...",
|
"MessageDiscardProgress": "Voortgang negeren",
|
||||||
|
"MessageDownloadCompleteProcessing": "Download compleet. Verwerken...",
|
||||||
|
"MessageDownloading": "Downloaden...",
|
||||||
"MessageDownloadingEpisode": "Aflevering aan het dowloaden",
|
"MessageDownloadingEpisode": "Aflevering aan het dowloaden",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} aflevering(en) in de rij om te downloaden",
|
"MessageEpisodesQueuedForDownload": "{0} aflevering(en) in de rij om te downloaden",
|
||||||
"MessageFeedURLWillBe": "Feed URL zal {0} zijn",
|
"MessageFeedURLWillBe": "Feed URL zal {0} zijn",
|
||||||
"MessageFetching": "Aan het ophalen...",
|
"MessageFetching": "Aan het ophalen...",
|
||||||
"MessageFollowTheProjectOnGithub": "Follow the project on Github",
|
"MessageFollowTheProjectOnGithub": "Volg dit project op Github",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Item download complete but failed to create library item",
|
"MessageItemDownloadCompleteFailedToCreate": "Itemdownload voltooid, maar het aanmaken van een bibliotheekitem is mislukt",
|
||||||
"MessageLoading": "Aan het laden...",
|
"MessageLoading": "Aan het laden...",
|
||||||
"MessageLoadingServerData": "Loading server data...",
|
"MessageLoadingServerData": "Server data laden...",
|
||||||
"MessageMarkAsFinished": "Markeer als Voltooid",
|
"MessageMarkAsFinished": "Markeer als Voltooid",
|
||||||
"MessageMediaLinkedToADifferentServer": "Media is linked to an Audiobookshelf server on a different address ({0}). Progress will be synced when connected to this server address.",
|
"MessageMediaLinkedToADifferentServer": "Media is gekoppeld aan een Audiobookshelf-server op een ander adres ({0}). De voortgang wordt gesynchroniseerd wanneer er verbinding is met dit serveradres.",
|
||||||
"MessageMediaLinkedToADifferentUser": "Media is linked to this server but was downloaded by a different user. Progress will only be synced to the user that downloaded it.",
|
"MessageMediaLinkedToADifferentUser": "Media is gekoppeld aan deze server, maar is gedownload door een andere gebruiker. De voortgang wordt alleen gesynchroniseerd met de gebruiker die het heeft gedownload.",
|
||||||
"MessageMediaLinkedToServer": "Linked to server {0}",
|
"MessageMediaLinkedToServer": "Gelinkt met server {0}",
|
||||||
"MessageMediaLinkedToThisServer": "Downloaded media is linked to this server",
|
"MessageMediaLinkedToThisServer": "Gedownloade media is gekoppeld aan deze server",
|
||||||
"MessageMediaNotLinkedToServer": "Media is not linked to an Audiobookshelf server. No progress will be synced.",
|
"MessageMediaNotLinkedToServer": "Media is niet gekoppeld aan een Audiobookshelf-server. Er wordt geen voortgang gesynchroniseerd.",
|
||||||
"MessageNoBookmarks": "Geen boekwijzers",
|
"MessageNoBookmarks": "Geen boekwijzers",
|
||||||
"MessageNoChapters": "Geen hoofdstukken",
|
"MessageNoChapters": "Geen hoofdstukken",
|
||||||
"MessageNoItems": "Geen onderdelen",
|
"MessageNoItems": "Geen onderdelen",
|
||||||
"MessageNoItemsFound": "Geen onderdelen gevonden",
|
"MessageNoItemsFound": "Geen onderdelen gevonden",
|
||||||
"MessageNoListeningSessions": "Geen luistersessies",
|
"MessageNoListeningSessions": "Geen luistersessies",
|
||||||
"MessageNoMediaFolders": "No Media Folders",
|
"MessageNoMediaFolders": "Geen Media Folders",
|
||||||
"MessageNoNetworkConnection": "No network connection",
|
"MessageNoNetworkConnection": "Geen netwerk connectie",
|
||||||
"MessageNoPodcastsFound": "Geen podcasts gevonden",
|
"MessageNoPodcastsFound": "Geen podcasts gevonden",
|
||||||
"MessageNoSeries": "No series",
|
"MessageNoSeries": "Geen series",
|
||||||
"MessageNoUpdatesWereNecessary": "Geen bijwerkingen waren noodzakelijk",
|
"MessageNoUpdatesWereNecessary": "Geen bijwerkingen waren noodzakelijk",
|
||||||
"MessageNoUserPlaylists": "Je hebt geen afspeellijsten",
|
"MessageNoUserPlaylists": "Je hebt geen afspeellijsten",
|
||||||
"MessageReportBugsAndContribute": "Rapporteer bugs, vraag functionaliteiten aan en draag bij op",
|
"MessageReportBugsAndContribute": "Rapporteer bugs, vraag functionaliteiten aan en draag bij op",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket connected over metered cellular",
|
"MessageSocketConnectedOverMeteredCellular": "Socket verbonden via gemeten mobiele verbinding",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered wifi",
|
"MessageSocketConnectedOverMeteredWifi": "Socket verbonden via gemeten WiFi",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Socket connected over unmetered cellular",
|
"MessageSocketConnectedOverUnmeteredCellular": "Socket verbonden via ongemeten mobiele verbinding",
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Socket connected over unmetered wifi",
|
"MessageSocketConnectedOverUnmeteredWifi": "Socket verbonden via ongemeten WiFi",
|
||||||
"MessageSocketNotConnected": "Socket not connected",
|
"MessageSocketNotConnected": "Socket niet verbonden",
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Waarschuwing: De meeste podcast-apps zullen eisen dat de RSS-feed URL HTTPS gebruikt",
|
"NoteRSSFeedPodcastAppsHttps": "Waarschuwing: De meeste podcast-apps zullen eisen dat de RSS-feed URL HTTPS gebruikt",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Waarschuwing: 1 of meer van je afleveringen hebben geen Pub Datum. Sommige podcast-apps vereisen dit.",
|
"NoteRSSFeedPodcastAppsPubDate": "Waarschuwing: 1 of meer van je afleveringen hebben geen Pub Datum. Sommige podcast-apps vereisen dit.",
|
||||||
"ToastBookmarkCreateFailed": "Aanmaken boekwijzer mislukt",
|
"ToastBookmarkCreateFailed": "Aanmaken boekwijzer mislukt",
|
||||||
"ToastBookmarkRemoveFailed": "Verwijderen boekwijzer mislukt",
|
"ToastBookmarkRemoveFailed": "Verwijderen boekwijzer mislukt",
|
||||||
"ToastBookmarkUpdateFailed": "Bijwerken boekwijzer mislukt",
|
"ToastBookmarkUpdateFailed": "Bijwerken boekwijzer mislukt",
|
||||||
|
"ToastDownloadNotAllowedOnCellular": "Downloaden is niet toegestaan via mobiele verbinding",
|
||||||
"ToastItemMarkedAsFinishedFailed": "Markeren als Voltooid mislukt",
|
"ToastItemMarkedAsFinishedFailed": "Markeren als Voltooid mislukt",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "Markeren als Niet Voltooid mislukt",
|
"ToastItemMarkedAsNotFinishedFailed": "Markeren als Niet Voltooid mislukt",
|
||||||
"ToastPlaylistCreateFailed": "Aanmaken afspeellijst mislukt",
|
"ToastPlaylistCreateFailed": "Aanmaken afspeellijst mislukt",
|
||||||
"ToastPodcastCreateFailed": "Podcast aanmaken mislukt",
|
"ToastPodcastCreateFailed": "Podcast aanmaken mislukt",
|
||||||
"ToastPodcastCreateSuccess": "Podcast aangemaakt",
|
"ToastPodcastCreateSuccess": "Podcast aangemaakt",
|
||||||
"ToastRSSFeedCloseFailed": "Sluiten RSS-feed mislukt",
|
"ToastRSSFeedCloseFailed": "Sluiten RSS-feed mislukt",
|
||||||
"ToastRSSFeedCloseSuccess": "RSS-feed gesloten"
|
"ToastRSSFeedCloseSuccess": "RSS-feed gesloten",
|
||||||
}
|
"ToastStreamingNotAllowedOnCellular": "Streamen is niet toegstaan via mobiele verbinding"
|
||||||
|
}
|
||||||
|
|||||||
+134
-147
@@ -1,53 +1,47 @@
|
|||||||
{
|
{
|
||||||
"ButtonAdd": "Legg til",
|
"ButtonAdd": "Legg til",
|
||||||
"ButtonAddNewServer": "Add New Server",
|
"ButtonAddNewServer": "Legg til ny tjener",
|
||||||
"ButtonAuthors": "Forfatter",
|
"ButtonAuthors": "Forfatter",
|
||||||
"ButtonBack": "Back",
|
"ButtonBack": "Tilbake",
|
||||||
"ButtonCancel": "Avbryt",
|
"ButtonCancel": "Avbryt",
|
||||||
"ButtonCancelTimer": "Cancel Timer",
|
"ButtonCancelTimer": "Avbryt tidsur",
|
||||||
"ButtonClearFilter": "Bytt filter",
|
"ButtonClearFilter": "Bytt filter",
|
||||||
"ButtonCloseFeed": "Lukk Feed",
|
"ButtonCloseFeed": "Lukk Feed",
|
||||||
"ButtonCollections": "Samlinger",
|
"ButtonCollections": "Samlinger",
|
||||||
"ButtonConnect": "Connect",
|
"ButtonConnect": "Koble til",
|
||||||
"ButtonConnectToServer": "Connect to Server",
|
"ButtonConnectToServer": "Koble til tjener",
|
||||||
"ButtonCreate": "Opprett",
|
"ButtonCreate": "Opprett",
|
||||||
"ButtonCreateBookmark": "Create Bookmark",
|
"ButtonCreateBookmark": "Opprett bokmerke",
|
||||||
"ButtonCreateNewPlaylist": "Create New Playlist",
|
"ButtonCreateNewPlaylist": "Opprett ny spilleliste",
|
||||||
"ButtonDelete": "Slett",
|
"ButtonDelete": "Slett",
|
||||||
"ButtonDeleteLocalEpisode": "Delete local episode",
|
"ButtonDeleteLocalEpisode": "Slett episode på enheten",
|
||||||
"ButtonDeleteLocalFile": "Delete local file",
|
"ButtonDisableAutoTimer": "Skru av automatisk tidsur",
|
||||||
"ButtonDeleteLocalItem": "Delete local item",
|
"ButtonDisconnect": "Koble fra",
|
||||||
"ButtonDisableAutoTimer": "Disable Auto Timer",
|
"ButtonHistory": "Historikk",
|
||||||
"ButtonDisconnect": "Disconnect",
|
|
||||||
"ButtonGoToWebClient": "Go to Web Client",
|
|
||||||
"ButtonHistory": "History",
|
|
||||||
"ButtonHome": "Hjem",
|
"ButtonHome": "Hjem",
|
||||||
"ButtonIssues": "Problemer",
|
"ButtonIssues": "Problemer",
|
||||||
"ButtonLatest": "Siste",
|
"ButtonLatest": "Siste",
|
||||||
"ButtonLibrary": "Bibliotek",
|
"ButtonLibrary": "Bibliotek",
|
||||||
"ButtonLocalMedia": "Local Media",
|
"ButtonManageLocalFiles": "Administrer Lokale Filer",
|
||||||
"ButtonManageLocalFiles": "Manage Local Files",
|
"ButtonNewFolder": "Ny mappe",
|
||||||
"ButtonNewFolder": "New Folder",
|
"ButtonNextEpisode": "Neste episode",
|
||||||
"ButtonNextEpisode": "Next Episode",
|
|
||||||
"ButtonOpenFeed": "Åpne Feed",
|
"ButtonOpenFeed": "Åpne Feed",
|
||||||
"ButtonOverride": "Override",
|
"ButtonOverride": "Overstyr",
|
||||||
"ButtonPause": "Pause",
|
|
||||||
"ButtonPlay": "Spill av",
|
"ButtonPlay": "Spill av",
|
||||||
|
"ButtonPlayEpisode": "Spill episode",
|
||||||
"ButtonPlaying": "Spiller av",
|
"ButtonPlaying": "Spiller av",
|
||||||
"ButtonPlaylists": "Spilleliste",
|
"ButtonPlaylists": "Spillelister",
|
||||||
"ButtonRead": "Les",
|
"ButtonRead": "Les",
|
||||||
"ButtonRemove": "Fjern",
|
"ButtonRemove": "Fjern",
|
||||||
"ButtonRemoveFromServer": "Remove from Server",
|
"ButtonRemoveFromServer": "Fjern fra tjeneren",
|
||||||
"ButtonSave": "Lagre",
|
"ButtonSave": "Lagre",
|
||||||
"ButtonSaveOrder": "Save Order",
|
"ButtonSaveOrder": "Lagre Rekkefølge",
|
||||||
"ButtonSearch": "Søk",
|
"ButtonSearch": "Søk",
|
||||||
"ButtonSendEbookToDevice": "Send Ebook to Device",
|
"ButtonSendEbookToDevice": "Send e-bok til enhet",
|
||||||
"ButtonSeries": "Serier",
|
"ButtonSeries": "Serier",
|
||||||
"ButtonSetTimer": "Set Timer",
|
"ButtonStream": "Strøm",
|
||||||
"ButtonStream": "Stream",
|
|
||||||
"ButtonSubmit": "Send inn",
|
"ButtonSubmit": "Send inn",
|
||||||
"ButtonSwitchServerUser": "Switch Server/User",
|
"ButtonSwitchServerUser": "Bytt tjener/bruker",
|
||||||
"ButtonUserStats": "User Stats",
|
|
||||||
"ButtonYes": "Ja",
|
"ButtonYes": "Ja",
|
||||||
"HeaderAccount": "Konto",
|
"HeaderAccount": "Konto",
|
||||||
"HeaderAdvanced": "Avansert",
|
"HeaderAdvanced": "Avansert",
|
||||||
@@ -55,81 +49,83 @@
|
|||||||
"HeaderChapters": "Kapittel",
|
"HeaderChapters": "Kapittel",
|
||||||
"HeaderCollection": "Samlinger",
|
"HeaderCollection": "Samlinger",
|
||||||
"HeaderCollectionItems": "Samlingsgjenstander",
|
"HeaderCollectionItems": "Samlingsgjenstander",
|
||||||
"HeaderConnectionStatus": "Connection Status",
|
"HeaderConnectionStatus": "Tilkoblingsstatus",
|
||||||
|
"HeaderDataSettings": "Datainnstillinger",
|
||||||
"HeaderDetails": "Detaljer",
|
"HeaderDetails": "Detaljer",
|
||||||
"HeaderDownloads": "Downloads",
|
|
||||||
"HeaderEbookFiles": "Ebook filer",
|
"HeaderEbookFiles": "Ebook filer",
|
||||||
"HeaderEpisodes": "Episoder",
|
"HeaderEpisodes": "Episoder",
|
||||||
"HeaderEreaderSettings": "Ereader innstillinger",
|
"HeaderEreaderSettings": "Ereader innstillinger",
|
||||||
"HeaderLatestEpisodes": "Siste episoder",
|
"HeaderLatestEpisodes": "Siste episoder",
|
||||||
"HeaderLibraries": "Biblioteker",
|
"HeaderLibraries": "Biblioteker",
|
||||||
"HeaderLocalFolders": "Local Folders",
|
"HeaderLocalFolders": "Lokale Mapper",
|
||||||
"HeaderLocalLibraryItems": "Local Library Items",
|
"HeaderLocalLibraryItems": "Elementer i bibliotek på enheten",
|
||||||
"HeaderNewPlaylist": "New Playlist",
|
"HeaderNewPlaylist": "Ny spilleliste",
|
||||||
"HeaderOpenRSSFeed": "Åpne RSS Feed",
|
"HeaderOpenRSSFeed": "Åpne RSS Feed",
|
||||||
"HeaderPlaybackSettings": "Playback Settings",
|
"HeaderPlaybackSettings": "Avspillingsinnstillinger",
|
||||||
"HeaderPlaylist": "Spilleliste",
|
"HeaderPlaylist": "Spilleliste",
|
||||||
"HeaderPlaylistItems": "Spillelisteelement",
|
"HeaderPlaylistItems": "Spillelisteelement",
|
||||||
"HeaderRSSFeed": "RSS Feed",
|
"HeaderRSSFeed": "RSS-informasjonskanal",
|
||||||
"HeaderRSSFeedGeneral": "RSS Detailer",
|
"HeaderRSSFeedGeneral": "RSS Detailer",
|
||||||
"HeaderRSSFeedIsOpen": "RSS Feed er åpen",
|
"HeaderRSSFeedIsOpen": "RSS Feed er åpen",
|
||||||
"HeaderSelectDownloadLocation": "Select Download Location",
|
"HeaderSelectDownloadLocation": "Velg Nedlastningssted",
|
||||||
"HeaderSettings": "Innstillinger",
|
"HeaderSettings": "Innstillinger",
|
||||||
"HeaderSleepTimer": "Sove timer",
|
"HeaderSleepTimer": "Sove timer",
|
||||||
"HeaderSleepTimerSettings": "Sleep Timer Settings",
|
"HeaderSleepTimerSettings": "Innstillinger for Søvntidtaker",
|
||||||
"HeaderStatsMinutesListeningChart": "Minutter lyttet (siste 7 dagene)",
|
"HeaderStatsMinutesListeningChart": "Minutter lyttet (siste 7 dagene)",
|
||||||
"HeaderStatsRecentSessions": "Siste sesjoner",
|
"HeaderStatsRecentSessions": "Siste sesjoner",
|
||||||
"HeaderTableOfContents": "Innholdsfortegnelse",
|
"HeaderTableOfContents": "Innholdsfortegnelse",
|
||||||
"HeaderUserInterfaceSettings": "User Interface Settings",
|
"HeaderUserInterfaceSettings": "Innstillinger for Brukergrensesnitt",
|
||||||
"HeaderYourStats": "Din statistikk",
|
"HeaderYourStats": "Din statistikk",
|
||||||
"LabelAdded": "Lagt til",
|
|
||||||
"LabelAddedAt": "Dato lagt til ",
|
|
||||||
"LabelAddToPlaylist": "Legg til i spilleliste",
|
"LabelAddToPlaylist": "Legg til i spilleliste",
|
||||||
|
"LabelAdded": "Lagt til",
|
||||||
|
"LabelAddedAt": "Lagt Til",
|
||||||
"LabelAll": "Alle",
|
"LabelAll": "Alle",
|
||||||
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
|
"LabelAllowSeekingOnMediaControls": "Tillat posisjonsblafring i mediamerknadskontroller",
|
||||||
|
"LabelAlways": "Alltid",
|
||||||
|
"LabelAskConfirmation": "Spør om bekreftelse",
|
||||||
"LabelAuthor": "Forfatter",
|
"LabelAuthor": "Forfatter",
|
||||||
"LabelAuthorFirstLast": "Forfatter (Fornavn Etternavn)",
|
"LabelAuthorFirstLast": "Forfatter (Fornavn Etternavn)",
|
||||||
"LabelAuthorLastFirst": "Forfatter (Etternavn Fornavn)",
|
"LabelAuthorLastFirst": "Forfatter (Etternavn Fornavn)",
|
||||||
"LabelAuthors": "Forfattere",
|
"LabelAuthors": "Forfattere",
|
||||||
"LabelAutoDownloadEpisodes": "Last ned episoder automatisk",
|
"LabelAutoDownloadEpisodes": "Last ned episoder automatisk",
|
||||||
"LabelAutoRewindTime": "Auto rewind time",
|
"LabelAutoRewindTime": "Automatisk tilbakespolingstid",
|
||||||
"LabelAutoSleepTimer": "Auto sleep timer",
|
"LabelAutoSleepTimer": "Automatisk søvntidsur",
|
||||||
"LabelAutoSleepTimerAutoRewind": "Auto sleep timer auto rewind",
|
"LabelAutoSleepTimerAutoRewind": "Automatisk tilbakespoling for automatisk søvntidsur",
|
||||||
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
|
"LabelAutoSleepTimerAutoRewindHelp": "Når automatisk søvntidsur fullføres vil avspilling av elementet automatisk spole tilbake posisjonen din.",
|
||||||
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
|
"LabelAutoSleepTimerHelp": "Ved avspilling av media mellom angitt start og slutt vil automatisk søvntidsur starte automatisk.",
|
||||||
"LabelBooks": "Bøker",
|
"LabelBooks": "Bøker",
|
||||||
|
"LabelChapterTrack": "Kapittelspor",
|
||||||
"LabelChapters": "Kapitler",
|
"LabelChapters": "Kapitler",
|
||||||
"LabelChapterTrack": "Chapter Track",
|
|
||||||
"LabelClosePlayer": "Lukk spiller",
|
"LabelClosePlayer": "Lukk spiller",
|
||||||
"LabelCollapseSeries": "Minimer serier",
|
"LabelCollapseSeries": "Minimer serier",
|
||||||
"LabelComplete": "Fullfør",
|
"LabelComplete": "Fullfør",
|
||||||
"LabelContinueBooks": "Continue Books",
|
"LabelContinueBooks": "Fortsett bøker",
|
||||||
"LabelContinueEpisodes": "Continue Episodes",
|
"LabelContinueEpisodes": "Fortsett episoder",
|
||||||
"LabelContinueListening": "Continue Listening",
|
"LabelContinueListening": "Fortsett lytting",
|
||||||
"LabelContinueReading": "Continue Reading",
|
"LabelContinueReading": "Fortsett lesing",
|
||||||
"LabelContinueSeries": "Continue Series",
|
"LabelContinueSeries": "Fortsett serier",
|
||||||
"LabelCustomTime": "Custom time",
|
"LabelCustomTime": "Egendefinert tid",
|
||||||
"LabelDescription": "Beskrivelse",
|
"LabelDescription": "Beskrivelse",
|
||||||
"LabelDisableAudioFadeOut": "Disable audio fade out",
|
"LabelDisableAudioFadeOut": "Skru av automatisk uttoning",
|
||||||
"LabelDisableAudioFadeOutHelp": "Audio volume will start decreasing when there is less than 1 minute remaining on the sleep timer. Enable this setting to not fade out.",
|
"LabelDisableAudioFadeOutHelp": "Lydstyrke vil minkes når det er mindre enn ett minutt igjen på søvntidsuret. Skru av dette for å ikke ha uttoning.",
|
||||||
"LabelDisableAutoRewind": "Disable auto rewind",
|
"LabelDisableAutoRewind": "Skru av automatisk tilbakespoling",
|
||||||
"LabelDisableShakeToReset": "Disable shake to reset",
|
"LabelDisableShakeToReset": "Skru av risting for å tilbakestille",
|
||||||
"LabelDisableShakeToResetHelp": "Shaking your device while the timer is running OR within 2 minutes of the timer expiring will reset the sleep timer. Enable this setting to disable shake to reset.",
|
"LabelDisableShakeToResetHelp": "Risting av enheten mens tidsuret kjører, eller opptil to minutter etter utløp av tidsuret tilbakestiller søvntidsuret. Skru på denne innstillinger for å skru av risting for å tilbakestille.",
|
||||||
"LabelDisableVibrateOnReset": "Disable vibrate on reset",
|
"LabelDisableVibrateOnReset": "Skru av vibrering ved tilbakestilling",
|
||||||
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
|
"LabelDisableVibrateOnResetHelp": "Når søvntidsuret blir tilbakestilt vil enheten din vibrere. Skru på denne innstillingen for å skru av vibrering når tidsuret tilbakestilles.",
|
||||||
"LabelDiscover": "Discover",
|
"LabelDiscover": "Oppdagelse",
|
||||||
"LabelDownload": "Last ned",
|
"LabelDownload": "Last ned",
|
||||||
"LabelDownloaded": "Downloaded",
|
"LabelDownloadUsingCellular": "Last ned med mobildata",
|
||||||
|
"LabelDownloaded": "Nedlastet",
|
||||||
"LabelDuration": "Varighet",
|
"LabelDuration": "Varighet",
|
||||||
"LabelEbook": "Ebok",
|
"LabelEbook": "Ebok",
|
||||||
"LabelEbooks": "Ebooks",
|
"LabelEbooks": "E-bøker",
|
||||||
"LabelEnable": "Aktiver",
|
"LabelEnable": "Aktiver",
|
||||||
"LabelEnableMp3IndexSeeking": "Enable mp3 index seeking",
|
"LabelEnableMp3IndexSeeking": "Skru på MP3-indeksblafring",
|
||||||
"LabelEnableMp3IndexSeekingHelp": "This setting should only be enabled if you have mp3 files that are not seeking correctly. Inaccurate seeking is most likely due to Variable birate (VBR) MP3 files. This setting will force index seeking, in which a time-to-byte mapping is built as the file is read. In some cases with large MP3 files there will be a delay when seeking towards the end of the file.",
|
"LabelEnableMp3IndexSeekingHelp": "Skru på dette hvis du har MP3-filer som ikke kan blafres på rett vis. Det skyldes som oftest variabel bitrate (VBR). Innstillingen påtvinger indeksblafring, som er en tid-til-byte -tilknytning som bygges når filen leses. I noen fall vil man med store MP3-filer få litt forsinkelse når man blafrer mot slutten av filen.",
|
||||||
"LabelEnd": "Slutt",
|
"LabelEnd": "Slutt",
|
||||||
"LabelEndOfChapter": "End of Chapter",
|
"LabelEndOfChapter": "Slutt på kapittel",
|
||||||
"LabelEndTime": "End time",
|
"LabelEndTime": "Slutt-tid",
|
||||||
"LabelEpisode": "Episode",
|
|
||||||
"LabelFeedURL": "Feed Adresse",
|
"LabelFeedURL": "Feed Adresse",
|
||||||
"LabelFile": "Fil",
|
"LabelFile": "Fil",
|
||||||
"LabelFileBirthtime": "Fil Opprettelsesdato",
|
"LabelFileBirthtime": "Fil Opprettelsesdato",
|
||||||
@@ -137,78 +133,67 @@
|
|||||||
"LabelFilename": "Filnavn",
|
"LabelFilename": "Filnavn",
|
||||||
"LabelFinished": "Fullført",
|
"LabelFinished": "Fullført",
|
||||||
"LabelFolder": "Mappe",
|
"LabelFolder": "Mappe",
|
||||||
|
"LabelFontBoldness": "Skrifttykkelse",
|
||||||
"LabelFontScale": "Font størrelse",
|
"LabelFontScale": "Font størrelse",
|
||||||
"LabelGenre": "Sjanger",
|
"LabelGenre": "Sjanger",
|
||||||
"LabelGenres": "Sjangers",
|
"LabelGenres": "Sjangers",
|
||||||
"LabelHapticFeedback": "Haptic feedback",
|
"LabelHapticFeedback": "Føllighetsrespons",
|
||||||
"LabelHasEbook": "Has ebook",
|
"LabelHasEbook": "Har e-bok",
|
||||||
"LabelHasSupplementaryEbook": "Has supplementary ebook",
|
"LabelHasSupplementaryEbook": "Har komplimentær e-bok",
|
||||||
"LabelHeavy": "Heavy",
|
"LabelHeavy": "Tung",
|
||||||
"LabelHigh": "High",
|
|
||||||
"LabelHost": "Tjener",
|
"LabelHost": "Tjener",
|
||||||
"LabelIncomplete": "Ufullstendig",
|
|
||||||
"LabelInProgress": "I gang",
|
"LabelInProgress": "I gang",
|
||||||
"LabelInternalAppStorage": "Internal App Storage",
|
"LabelIncomplete": "Ufullstendig",
|
||||||
"LabelJumpBackwardsTime": "Jump backwards time",
|
"LabelInternalAppStorage": "Programlager på enheten",
|
||||||
"LabelJumpForwardsTime": "Jump forwards time",
|
"LabelJumpBackwardsTime": "Tilbakespolingstid",
|
||||||
|
"LabelJumpForwardsTime": "Foroverspolingstid",
|
||||||
"LabelLanguage": "Språk",
|
"LabelLanguage": "Språk",
|
||||||
"LabelLayout": "Layout",
|
"LabelLayoutSinglePage": "Enkeltside",
|
||||||
"LabelLayoutAuto": "Auto",
|
"LabelLight": "Lett",
|
||||||
"LabelLayoutSinglePage": "Single page",
|
|
||||||
"LabelLight": "Light",
|
|
||||||
"LabelLineSpacing": "Linjemellomrom",
|
"LabelLineSpacing": "Linjemellomrom",
|
||||||
"LabelListenAgain": "Listen Again",
|
"LabelListenAgain": "Lytt igjen",
|
||||||
"LabelLocalBooks": "Local Books",
|
"LabelLocalBooks": "Bøker på enheten",
|
||||||
"LabelLocalPodcasts": "Local Podcasts",
|
"LabelLockPlayer": "Lås avspiller",
|
||||||
"LabelLockOrientation": "Lock orientation",
|
|
||||||
"LabelLockPlayer": "Lock Player",
|
|
||||||
"LabelLow": "Low",
|
|
||||||
"LabelMediaType": "Medie type",
|
"LabelMediaType": "Medie type",
|
||||||
"LabelMedium": "Medium",
|
|
||||||
"LabelMore": "Mer",
|
"LabelMore": "Mer",
|
||||||
"LabelMoreInfo": "Mer info",
|
"LabelMoreInfo": "Mer info",
|
||||||
"LabelName": "Navn",
|
"LabelName": "Navn",
|
||||||
"LabelNarrator": "Forteller",
|
"LabelNarrator": "Forteller",
|
||||||
"LabelNarrators": "Fortellere",
|
"LabelNarrators": "Fortellere",
|
||||||
"LabelNewestAuthors": "Newest Authors",
|
"LabelNever": "Aldri",
|
||||||
"LabelNewestEpisodes": "Newest Episodes",
|
"LabelNewestAuthors": "Nyeste forfattere",
|
||||||
"LabelNo": "No",
|
"LabelNewestEpisodes": "Nyeste episoder",
|
||||||
"LabelNotFinished": "Ikke fullført",
|
"LabelNotFinished": "Ikke fullført",
|
||||||
"LabelNotStarted": "Ikke startet",
|
"LabelNotStarted": "Ikke startet",
|
||||||
"LabelOff": "Off",
|
"LabelOff": "Av",
|
||||||
"LabelPassword": "Passord",
|
"LabelPassword": "Passord",
|
||||||
"LabelPath": "Sti",
|
"LabelPath": "Sti",
|
||||||
"LabelPlaybackDirect": "Direct",
|
"LabelPlaybackDirect": "Direkte",
|
||||||
"LabelPlaybackLocal": "Local",
|
"LabelPlaybackSpeed": "Avspillingshastighet",
|
||||||
"LabelPlaybackSpeed": "Playback Speed",
|
"LabelPlaybackTranscode": "Transkoding",
|
||||||
"LabelPlaybackTranscode": "Transcode",
|
|
||||||
"LabelPodcast": "Podcast",
|
|
||||||
"LabelPodcasts": "Podcaster",
|
"LabelPodcasts": "Podcaster",
|
||||||
"LabelPreventIndexing": "Forhindre at din feed fra å bli indeksert av iTunes og Google podcast kataloger",
|
"LabelPreventIndexing": "Forhindre at din feed fra å bli indeksert av iTunes og Google podcast kataloger",
|
||||||
"LabelProgress": "Framgang",
|
"LabelProgress": "Framgang",
|
||||||
"LabelPubDate": "Publiseringsdato",
|
"LabelPubDate": "Publiseringsdato",
|
||||||
"LabelPublishYear": "Publikasjonsår",
|
"LabelPublishYear": "Publikasjonsår",
|
||||||
"LabelRead": "Les",
|
"LabelRSSFeedCustomOwnerEmail": "Tilpasset eier e-post",
|
||||||
"LabelReadAgain": "Read Again",
|
|
||||||
"LabelRecentlyAdded": "Recently Added",
|
|
||||||
"LabelRecentSeries": "Recent Series",
|
|
||||||
"LabelRemoveFromPlaylist": "Remove from Playlist",
|
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Tilpasset eier Epost",
|
|
||||||
"LabelRSSFeedCustomOwnerName": "Tilpasset eier Navn",
|
"LabelRSSFeedCustomOwnerName": "Tilpasset eier Navn",
|
||||||
"LabelRSSFeedPreventIndexing": "Forhindre indeksering",
|
"LabelRSSFeedPreventIndexing": "Forhindre indeksering",
|
||||||
"LabelRSSFeedSlug": "RSS Feed Slug",
|
"LabelRSSFeedSlug": "RSS-informasjonskanalunderadresse",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
|
"LabelRead": "Les",
|
||||||
|
"LabelReadAgain": "Les igjen",
|
||||||
|
"LabelRecentlyAdded": "Nylig tillagt",
|
||||||
|
"LabelRemoveFromPlaylist": "Fjern fra spilleliste",
|
||||||
|
"LabelScaleElapsedTimeBySpeed": "Skaler forløpt tid etter hastighet",
|
||||||
"LabelSeason": "Sesong",
|
"LabelSeason": "Sesong",
|
||||||
"LabelSelectADevice": "Select a device",
|
"LabelSelectADevice": "Velg en enhet",
|
||||||
"LabelSeries": "Serier",
|
"LabelSeries": "Serier",
|
||||||
"LabelServerAddress": "Server address",
|
|
||||||
"LabelSetEbookAsPrimary": "Sett som primær",
|
"LabelSetEbookAsPrimary": "Sett som primær",
|
||||||
"LabelSetEbookAsSupplementary": "Sett som supplerende",
|
"LabelSetEbookAsSupplementary": "Sett som supplerende",
|
||||||
"LabelShakeSensitivity": "Shake sensitivity",
|
"LabelShakeSensitivity": "Ristingsterskel",
|
||||||
"LabelShowAll": "Vis alt",
|
"LabelShowAll": "Vis alt",
|
||||||
"LabelSize": "Størrelse",
|
"LabelSize": "Størrelse",
|
||||||
"LabelSleepTimer": "Sove-timer",
|
"LabelSleepTimer": "Sove-timer",
|
||||||
"LabelStart": "Start",
|
|
||||||
"LabelStartTime": "Start Tid",
|
"LabelStartTime": "Start Tid",
|
||||||
"LabelStatsBestDay": "Beste dag",
|
"LabelStatsBestDay": "Beste dag",
|
||||||
"LabelStatsDailyAverage": "Daglig gjennomsnitt",
|
"LabelStatsDailyAverage": "Daglig gjennomsnitt",
|
||||||
@@ -219,78 +204,80 @@
|
|||||||
"LabelStatsMinutes": "minuter",
|
"LabelStatsMinutes": "minuter",
|
||||||
"LabelStatsMinutesListening": "Minutter lyttet",
|
"LabelStatsMinutesListening": "Minutter lyttet",
|
||||||
"LabelStatsWeekListening": "Uker lyttet",
|
"LabelStatsWeekListening": "Uker lyttet",
|
||||||
"LabelTag": "Tag",
|
"LabelStreamingUsingCellular": "Strømmer via mobildata",
|
||||||
"LabelTags": "Tagger",
|
"LabelTags": "Tagger",
|
||||||
"LabelTheme": "Tema",
|
"LabelTheme": "Tema",
|
||||||
"LabelThemeDark": "Mørk",
|
"LabelThemeDark": "Mørk",
|
||||||
"LabelThemeLight": "Lys",
|
"LabelThemeLight": "Lys",
|
||||||
"LabelTimeRemaining": "{0} gjennstående",
|
"LabelTimeRemaining": "{0} gjennstående",
|
||||||
"LabelTitle": "Tittel",
|
"LabelTitle": "Tittel",
|
||||||
"LabelTotalTrack": "Total Track",
|
"LabelTotalSize": "Total størrelse",
|
||||||
|
"LabelTotalTrack": "Totalt antall spor",
|
||||||
"LabelTracks": "Spor",
|
"LabelTracks": "Spor",
|
||||||
"LabelType": "Type",
|
"LabelUnlockPlayer": "Lås opp avspiller",
|
||||||
"LabelUnlockPlayer": "Unlock Player",
|
"LabelUseBookshelfView": "Bruk bokhyllevisning",
|
||||||
"LabelUseBookshelfView": "Use bookshelf view",
|
|
||||||
"LabelUser": "Bruker",
|
"LabelUser": "Bruker",
|
||||||
"LabelUsername": "Brukernavn",
|
"LabelUsername": "Brukernavn",
|
||||||
"LabelVeryHigh": "Very High",
|
"LabelVeryHigh": "Veldig høy",
|
||||||
"LabelVeryLow": "Very Low",
|
"LabelVeryLow": "Veldig lav",
|
||||||
"LabelYourBookmarks": "Dine bokmerker",
|
"LabelYourBookmarks": "Dine bokmerker",
|
||||||
"LabelYourProgress": "Din fremgang",
|
"LabelYourProgress": "Din fremgang",
|
||||||
"MessageAndroid10Downloads": "Android 10 and below will use internal app storage for downloads.",
|
"MessageAndroid10Downloads": "Android 10 og tidligere bruker lagringsplass på enheten for nedlastninger.",
|
||||||
"MessageAttemptingServerConnection": "Attempting server connection...",
|
"MessageAttemptingServerConnection": "Kobler til tjener …",
|
||||||
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf server not connected",
|
"MessageAudiobookshelfServerNotConnected": "Ikke tilkoblet Audiobookshelf-tjener",
|
||||||
"MessageAudiobookshelfServerRequired": "<strong>Important!</strong> This app is designed to work with an Audiobookshelf server that you or someone you know is hosting. This app does not provide any content.",
|
"MessageAudiobookshelfServerRequired": "<strong>Viktig!</strong> Programmet fungerer kun med en Audiobookshelf-tjener som du eller noen annen vertstjener. Programmet tilbyr ikke innhold.",
|
||||||
"MessageBookshelfEmpty": "Bookshelf empty",
|
"MessageBookshelfEmpty": "Tom bokhylle",
|
||||||
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.",
|
"MessageConfirmDeleteLocalEpisode": "Fjen episoden «{0}» fra enheten? Filen på tjeneren forblir som den er.",
|
||||||
"MessageConfirmDeleteLocalFiles": "Remove local files of this item from your device? The files on the server and your progress will be unaffected.",
|
"MessageConfirmDeleteLocalFiles": "Fjern dette elementets filer fra enheten? Filene på tjeneren og framdriften forblir som den er.",
|
||||||
"MessageConfirmDiscardProgress": "Are you sure you want to reset your progress?",
|
"MessageConfirmDiscardProgress": "Tilbakestill framgang?",
|
||||||
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
|
"MessageConfirmDownloadUsingCellular": "Last ned over mobildata selv om kostnader kan tilkomme?",
|
||||||
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
|
"MessageConfirmMarkAsFinished": "Merk element som fullført?",
|
||||||
"MessageDiscardProgress": "Discard Progress",
|
"MessageConfirmRemoveBookmark": "Fjern bokmerke?",
|
||||||
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
|
"MessageConfirmStreamingUsingCellular": "Strøm via mobildata selv om kostnader kan tilkomme?",
|
||||||
"MessageDownloading": "Downloading...",
|
"MessageDiscardProgress": "Forkast framdrift",
|
||||||
|
"MessageDownloadCompleteProcessing": "Behandler …",
|
||||||
|
"MessageDownloading": "Laster ned …",
|
||||||
"MessageDownloadingEpisode": "Laster ned episode",
|
"MessageDownloadingEpisode": "Laster ned episode",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} Episode(r) lagt til i kø for nedlasting",
|
"MessageEpisodesQueuedForDownload": "{0} Episode(r) lagt til i kø for nedlasting",
|
||||||
"MessageFeedURLWillBe": "Feed URL vil bli {0}",
|
"MessageFeedURLWillBe": "Feed URL vil bli {0}",
|
||||||
"MessageFetching": "Henter...",
|
"MessageFetching": "Henter...",
|
||||||
"MessageFollowTheProjectOnGithub": "Follow the project on Github",
|
"MessageFollowTheProjectOnGithub": "Følg prosjektet på GitHub",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Item download complete but failed to create library item",
|
"MessageItemDownloadCompleteFailedToCreate": "Element nedlastet, men kunne ikke opprette bibliotekselement",
|
||||||
"MessageLoading": "Laster...",
|
"MessageLoading": "Laster...",
|
||||||
"MessageLoadingServerData": "Loading server data...",
|
"MessageLoadingServerData": "Laster inn tjenerdata …",
|
||||||
"MessageMarkAsFinished": "Marker som Fullført",
|
"MessageMarkAsFinished": "Marker som Fullført",
|
||||||
"MessageMediaLinkedToADifferentServer": "Media is linked to an Audiobookshelf server on a different address ({0}). Progress will be synced when connected to this server address.",
|
"MessageMediaLinkedToADifferentServer": "Media er lenket til en Audiobookshelf-tjener på en annen adresse ({0}). Framdriften vil bli synkronisert når tilkoblet denne tjeneradressen.",
|
||||||
"MessageMediaLinkedToADifferentUser": "Media is linked to this server but was downloaded by a different user. Progress will only be synced to the user that downloaded it.",
|
"MessageMediaLinkedToADifferentUser": "Media er lenket til denne tjeneren, men ble lastet ned av en annen bruker. Framdriften vil kun synkroniseres til brukeren som lastet den ned.",
|
||||||
"MessageMediaLinkedToServer": "Linked to server {0}",
|
"MessageMediaLinkedToServer": "Lenket til tjener {0}",
|
||||||
"MessageMediaLinkedToThisServer": "Downloaded media is linked to this server",
|
"MessageMediaLinkedToThisServer": "Nedlastet media er lenket til denne tjeneren",
|
||||||
"MessageMediaNotLinkedToServer": "Media is not linked to an Audiobookshelf server. No progress will be synced.",
|
"MessageMediaNotLinkedToServer": "Media er ikke lenket til en Audiobookshelf-tjener. Ingen fremdrift vil bli synkronisert.",
|
||||||
"MessageNoBookmarks": "Ingen bokmerker",
|
"MessageNoBookmarks": "Ingen bokmerker",
|
||||||
"MessageNoChapters": "Ingen kapitler",
|
"MessageNoChapters": "Ingen kapitler",
|
||||||
"MessageNoItems": "Ingen gjenstander",
|
"MessageNoItems": "Ingen gjenstander",
|
||||||
"MessageNoItemsFound": "Ingen gjenstander funnet",
|
"MessageNoItemsFound": "Ingen gjenstander funnet",
|
||||||
"MessageNoListeningSessions": "Ingen Lyttesesjoner",
|
"MessageNoListeningSessions": "Ingen Lyttesesjoner",
|
||||||
"MessageNoMediaFolders": "No Media Folders",
|
"MessageNoMediaFolders": "Ingen mediamapper",
|
||||||
"MessageNoNetworkConnection": "No network connection",
|
"MessageNoNetworkConnection": "Ingen nettverkstilkobling",
|
||||||
"MessageNoPodcastsFound": "Ingen podcaster funnet",
|
"MessageNoPodcastsFound": "Ingen podcaster funnet",
|
||||||
"MessageNoSeries": "No series",
|
|
||||||
"MessageNoUpdatesWereNecessary": "Ingen oppdatering var nødvendig",
|
"MessageNoUpdatesWereNecessary": "Ingen oppdatering var nødvendig",
|
||||||
"MessageNoUserPlaylists": "Du har ingen spillelister",
|
"MessageNoUserPlaylists": "Du har ingen spillelister",
|
||||||
"MessageReportBugsAndContribute": "Rapporter feil, forespør funksjoner og tillegg og bidra på",
|
"MessageReportBugsAndContribute": "Rapporter feil, forespør funksjoner og tillegg og bidra på",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket connected over metered cellular",
|
"MessageSocketConnectedOverMeteredCellular": "Socket tilkoblet over kvotebasert mobildata",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered wifi",
|
"MessageSocketConnectedOverMeteredWifi": "Socket tilkoblet over kvotebasert Wi-Fi",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Socket connected over unmetered cellular",
|
"MessageSocketConnectedOverUnmeteredWifi": "Socket tilkoblet over ubegrenset Wi-Fi",
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Socket connected over unmetered wifi",
|
"MessageSocketNotConnected": "Socket ikke tilkoblet",
|
||||||
"MessageSocketNotConnected": "Socket not connected",
|
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Advarsel! De fleste podcast applikasjoner trenger RSS feed URL som bruker HTTPS",
|
"NoteRSSFeedPodcastAppsHttps": "Advarsel! De fleste podcast applikasjoner trenger RSS feed URL som bruker HTTPS",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Advarsel! 1 eller flere av episodene har ikke publikasjonsdato. Noen podcast applikasjoner trenger dette.",
|
"NoteRSSFeedPodcastAppsPubDate": "Advarsel! 1 eller flere av episodene har ikke publikasjonsdato. Noen podcast applikasjoner trenger dette.",
|
||||||
"ToastBookmarkCreateFailed": "Misslykkes å opprette bokmerke",
|
"ToastBookmarkCreateFailed": "Misslykkes å opprette bokmerke",
|
||||||
"ToastBookmarkRemoveFailed": "Misslykkes å fjerne bokmerke",
|
"ToastBookmarkRemoveFailed": "Misslykkes å fjerne bokmerke",
|
||||||
"ToastBookmarkUpdateFailed": "Misslykkes å oppdatere bokmerke",
|
"ToastBookmarkUpdateFailed": "Misslykkes å oppdatere bokmerke",
|
||||||
|
"ToastDownloadNotAllowedOnCellular": "Nedlasting tillates ikke over mobildata",
|
||||||
"ToastItemMarkedAsFinishedFailed": "Misslykkes å markere som Fullført",
|
"ToastItemMarkedAsFinishedFailed": "Misslykkes å markere som Fullført",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "Misslykkes å markere som Ikke Fullført",
|
"ToastItemMarkedAsNotFinishedFailed": "Misslykkes å markere som Ikke Fullført",
|
||||||
"ToastPlaylistCreateFailed": "Misslykkes å opprette spilleliste",
|
"ToastPlaylistCreateFailed": "Misslykkes å opprette spilleliste",
|
||||||
"ToastPodcastCreateFailed": "Misslykkes å opprette podcast",
|
"ToastPodcastCreateFailed": "Misslykkes å opprette podcast",
|
||||||
"ToastPodcastCreateSuccess": "Podcast opprettet",
|
"ToastPodcastCreateSuccess": "Podcast opprettet",
|
||||||
"ToastRSSFeedCloseFailed": "Misslykkes å lukke RSS feed",
|
"ToastRSSFeedCloseFailed": "Misslykkes å lukke RSS feed",
|
||||||
"ToastRSSFeedCloseSuccess": "RSS feed lukket"
|
"ToastRSSFeedCloseSuccess": "RSS feed lukket",
|
||||||
}
|
"ToastStreamingNotAllowedOnCellular": "Strømming tillates ikke over mobildata"
|
||||||
|
}
|
||||||
|
|||||||
+45
-44
@@ -2,7 +2,7 @@
|
|||||||
"ButtonAdd": "Dodaj",
|
"ButtonAdd": "Dodaj",
|
||||||
"ButtonAddNewServer": "Dodaj nowy serwer",
|
"ButtonAddNewServer": "Dodaj nowy serwer",
|
||||||
"ButtonAuthors": "Autorzy",
|
"ButtonAuthors": "Autorzy",
|
||||||
"ButtonBack": "Powrót",
|
"ButtonBack": "Wstecz",
|
||||||
"ButtonCancel": "Anuluj",
|
"ButtonCancel": "Anuluj",
|
||||||
"ButtonCancelTimer": "Anuluj wyłącznik",
|
"ButtonCancelTimer": "Anuluj wyłącznik",
|
||||||
"ButtonClearFilter": "Wyczyść filtr",
|
"ButtonClearFilter": "Wyczyść filtr",
|
||||||
@@ -19,11 +19,11 @@
|
|||||||
"ButtonDeleteLocalItem": "Usuń lokalny element",
|
"ButtonDeleteLocalItem": "Usuń lokalny element",
|
||||||
"ButtonDisableAutoTimer": "Wyłącz automatyczny wyłącznik",
|
"ButtonDisableAutoTimer": "Wyłącz automatyczny wyłącznik",
|
||||||
"ButtonDisconnect": "Rozłącz",
|
"ButtonDisconnect": "Rozłącz",
|
||||||
"ButtonGoToWebClient": "Go to Web Client",
|
"ButtonGoToWebClient": "Idź do wersji webowej",
|
||||||
"ButtonHistory": "Historia",
|
"ButtonHistory": "Historia",
|
||||||
"ButtonHome": "Strona główna",
|
"ButtonHome": "Strona główna",
|
||||||
"ButtonIssues": "Błędy",
|
"ButtonIssues": "Błędy",
|
||||||
"ButtonLatest": "Aktualna wersja:",
|
"ButtonLatest": "Aktualna wersja",
|
||||||
"ButtonLibrary": "Biblioteka",
|
"ButtonLibrary": "Biblioteka",
|
||||||
"ButtonLocalMedia": "Media lokalne",
|
"ButtonLocalMedia": "Media lokalne",
|
||||||
"ButtonManageLocalFiles": "Zarządzaj lokalnymi plikami",
|
"ButtonManageLocalFiles": "Zarządzaj lokalnymi plikami",
|
||||||
@@ -31,10 +31,11 @@
|
|||||||
"ButtonNextEpisode": "Następny odcinek",
|
"ButtonNextEpisode": "Następny odcinek",
|
||||||
"ButtonOpenFeed": "Otwórz feed",
|
"ButtonOpenFeed": "Otwórz feed",
|
||||||
"ButtonOverride": "Nadpisz",
|
"ButtonOverride": "Nadpisz",
|
||||||
"ButtonPause": "Pause",
|
"ButtonPause": "Wstrzymaj",
|
||||||
"ButtonPlay": "Odtwarzaj",
|
"ButtonPlay": "Odtwarzaj",
|
||||||
|
"ButtonPlayEpisode": "Odtwórz odcinek",
|
||||||
"ButtonPlaying": "Odtwarzane",
|
"ButtonPlaying": "Odtwarzane",
|
||||||
"ButtonPlaylists": "Playlisty",
|
"ButtonPlaylists": "Listy odtwarzania",
|
||||||
"ButtonRead": "Czytaj",
|
"ButtonRead": "Czytaj",
|
||||||
"ButtonRemove": "Usuń",
|
"ButtonRemove": "Usuń",
|
||||||
"ButtonRemoveFromServer": "Usuń z serwera",
|
"ButtonRemoveFromServer": "Usuń z serwera",
|
||||||
@@ -45,7 +46,7 @@
|
|||||||
"ButtonSeries": "Seria",
|
"ButtonSeries": "Seria",
|
||||||
"ButtonSetTimer": "Ustaw wyłącznik",
|
"ButtonSetTimer": "Ustaw wyłącznik",
|
||||||
"ButtonStream": "Strumieniuj",
|
"ButtonStream": "Strumieniuj",
|
||||||
"ButtonSubmit": "Zaloguj",
|
"ButtonSubmit": "Zapisz",
|
||||||
"ButtonSwitchServerUser": "Przełącz serwer/użytkownika",
|
"ButtonSwitchServerUser": "Przełącz serwer/użytkownika",
|
||||||
"ButtonUserStats": "Statystyki użytkownika",
|
"ButtonUserStats": "Statystyki użytkownika",
|
||||||
"ButtonYes": "Tak",
|
"ButtonYes": "Tak",
|
||||||
@@ -58,9 +59,9 @@
|
|||||||
"HeaderConnectionStatus": "Status połączenia",
|
"HeaderConnectionStatus": "Status połączenia",
|
||||||
"HeaderDetails": "Szczegóły",
|
"HeaderDetails": "Szczegóły",
|
||||||
"HeaderDownloads": "Pobrane",
|
"HeaderDownloads": "Pobrane",
|
||||||
"HeaderEbookFiles": "Pliki ebook",
|
"HeaderEbookFiles": "Pliki Ebook",
|
||||||
"HeaderEpisodes": "Odcinki",
|
"HeaderEpisodes": "Odcinki",
|
||||||
"HeaderEreaderSettings": "Ustawienia Ereader",
|
"HeaderEreaderSettings": "Ustawienia czytnika",
|
||||||
"HeaderLatestEpisodes": "Najnowsze odcinki",
|
"HeaderLatestEpisodes": "Najnowsze odcinki",
|
||||||
"HeaderLibraries": "Biblioteki",
|
"HeaderLibraries": "Biblioteki",
|
||||||
"HeaderLocalFolders": "Lokalne foldery",
|
"HeaderLocalFolders": "Lokalne foldery",
|
||||||
@@ -69,7 +70,7 @@
|
|||||||
"HeaderOpenRSSFeed": "Utwórz kanał RSS",
|
"HeaderOpenRSSFeed": "Utwórz kanał RSS",
|
||||||
"HeaderPlaybackSettings": "Ustawienia odtwarzania",
|
"HeaderPlaybackSettings": "Ustawienia odtwarzania",
|
||||||
"HeaderPlaylist": "Playlista",
|
"HeaderPlaylist": "Playlista",
|
||||||
"HeaderPlaylistItems": "Elementy playlisty",
|
"HeaderPlaylistItems": "Pozycje listy odtwarzania",
|
||||||
"HeaderRSSFeed": "Kanał RSS",
|
"HeaderRSSFeed": "Kanał RSS",
|
||||||
"HeaderRSSFeedGeneral": "Szczegóły RSS",
|
"HeaderRSSFeedGeneral": "Szczegóły RSS",
|
||||||
"HeaderRSSFeedIsOpen": "Kanał RSS jest otwarty",
|
"HeaderRSSFeedIsOpen": "Kanał RSS jest otwarty",
|
||||||
@@ -82,11 +83,12 @@
|
|||||||
"HeaderTableOfContents": "Spis treści",
|
"HeaderTableOfContents": "Spis treści",
|
||||||
"HeaderUserInterfaceSettings": "Ustawienia inferfejsu użytkownika",
|
"HeaderUserInterfaceSettings": "Ustawienia inferfejsu użytkownika",
|
||||||
"HeaderYourStats": "Twoje statystyki",
|
"HeaderYourStats": "Twoje statystyki",
|
||||||
"LabelAdded": "Dodano",
|
|
||||||
"LabelAddedAt": "Dodano w",
|
|
||||||
"LabelAddToPlaylist": "Dodaj do playlisty",
|
"LabelAddToPlaylist": "Dodaj do playlisty",
|
||||||
|
"LabelAdded": "Dodane",
|
||||||
|
"LabelAddedAt": "Dodano w",
|
||||||
"LabelAll": "Wszystkie",
|
"LabelAll": "Wszystkie",
|
||||||
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
|
"LabelAlways": "Zawsze",
|
||||||
|
"LabelAskConfirmation": "Pytaj o potwierdzenie",
|
||||||
"LabelAuthor": "Autor",
|
"LabelAuthor": "Autor",
|
||||||
"LabelAuthorFirstLast": "Autor (Rosnąco)",
|
"LabelAuthorFirstLast": "Autor (Rosnąco)",
|
||||||
"LabelAuthorLastFirst": "Author (Malejąco)",
|
"LabelAuthorLastFirst": "Author (Malejąco)",
|
||||||
@@ -98,14 +100,14 @@
|
|||||||
"LabelAutoSleepTimerAutoRewindHelp": "Po zakończeniu automatycznego wyłącznika czasowego ponowne odtworzenie elementu spowoduje automatyczne przewinięcie pozycji do tyłu.",
|
"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.",
|
"LabelAutoSleepTimerHelp": "Podczas odtwarzania multimediów między określonym czasem rozpoczęcia i zakończenia automatycznie uruchomi się wyłącznik czasowy.",
|
||||||
"LabelBooks": "Książki",
|
"LabelBooks": "Książki",
|
||||||
"LabelChapters": "Rozdziały",
|
|
||||||
"LabelChapterTrack": "Postęp rozdziału",
|
"LabelChapterTrack": "Postęp rozdziału",
|
||||||
|
"LabelChapters": "Rozdziały",
|
||||||
"LabelClosePlayer": "Zamknij odtwarzacz",
|
"LabelClosePlayer": "Zamknij odtwarzacz",
|
||||||
"LabelCollapseSeries": "Podsumuj serię",
|
"LabelCollapseSeries": "Podsumuj serię",
|
||||||
"LabelComplete": "Ukończone",
|
"LabelComplete": "Ukończone",
|
||||||
"LabelContinueBooks": "Kontynuuj książki",
|
"LabelContinueBooks": "Kontynuuj książki",
|
||||||
"LabelContinueEpisodes": "Kontynuuj odcinki",
|
"LabelContinueEpisodes": "Kontynuuj odcinki",
|
||||||
"LabelContinueListening": "Kontynuuj odtwarzanie",
|
"LabelContinueListening": "Kontynuuj słuchanie",
|
||||||
"LabelContinueReading": "Kontynuuj czytanie",
|
"LabelContinueReading": "Kontynuuj czytanie",
|
||||||
"LabelContinueSeries": "Kontynuuj serię",
|
"LabelContinueSeries": "Kontynuuj serię",
|
||||||
"LabelCustomTime": "Własny czas",
|
"LabelCustomTime": "Własny czas",
|
||||||
@@ -119,6 +121,7 @@
|
|||||||
"LabelDisableVibrateOnResetHelp": "Gdy wyłącznik czasowy zostanie zresetowany, urządzenie zacznie wibrować. Włącz to ustawienie, aby nie wibrować po zresetowaniu wyłącznika czasowego.",
|
"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",
|
"LabelDiscover": "Odkrywaj",
|
||||||
"LabelDownload": "Pobierz",
|
"LabelDownload": "Pobierz",
|
||||||
|
"LabelDownloadUsingCellular": "Pobierz przez Dane Komórkowe",
|
||||||
"LabelDownloaded": "Pobrane",
|
"LabelDownloaded": "Pobrane",
|
||||||
"LabelDuration": "Czas trwania",
|
"LabelDuration": "Czas trwania",
|
||||||
"LabelEbook": "Ebook",
|
"LabelEbook": "Ebook",
|
||||||
@@ -136,27 +139,27 @@
|
|||||||
"LabelFileModified": "Data modyfikacji pliku",
|
"LabelFileModified": "Data modyfikacji pliku",
|
||||||
"LabelFilename": "Nazwa pliku",
|
"LabelFilename": "Nazwa pliku",
|
||||||
"LabelFinished": "Zakończone",
|
"LabelFinished": "Zakończone",
|
||||||
"LabelFolder": "Folder",
|
"LabelFolder": "Katalog",
|
||||||
|
"LabelFontBoldness": "Grubość czcionki",
|
||||||
"LabelFontScale": "Rozmiar czcionki",
|
"LabelFontScale": "Rozmiar czcionki",
|
||||||
"LabelGenre": "Gatunek",
|
"LabelGenre": "Gatunek",
|
||||||
"LabelGenres": "Gatunki",
|
"LabelGenres": "Gatunki",
|
||||||
"LabelHapticFeedback": "Dotykowe sprzężenie zwrotne",
|
"LabelHapticFeedback": "Dotykowe sprzężenie zwrotne",
|
||||||
"LabelHasEbook": "Zawiera wersję ebook",
|
"LabelHasEbook": "Ma ebooka",
|
||||||
"LabelHasSupplementaryEbook": "Posiada dodatkowy ebook",
|
"LabelHasSupplementaryEbook": "Posiada dodatkowy ebook",
|
||||||
"LabelHeavy": "Ciężko",
|
"LabelHeavy": "Ciężko",
|
||||||
"LabelHigh": "Wysoko",
|
"LabelHigh": "Wysoko",
|
||||||
"LabelHost": "Dostawca",
|
"LabelHost": "Host",
|
||||||
"LabelIncomplete": "Nieukończone",
|
|
||||||
"LabelInProgress": "W toku",
|
"LabelInProgress": "W toku",
|
||||||
|
"LabelIncomplete": "Nieukończone",
|
||||||
"LabelInternalAppStorage": "Pamięć wewnętrzna aplikacji",
|
"LabelInternalAppStorage": "Pamięć wewnętrzna aplikacji",
|
||||||
"LabelJumpBackwardsTime": "Przeskok wstecz",
|
"LabelJumpBackwardsTime": "Przeskok wstecz",
|
||||||
"LabelJumpForwardsTime": "Przeskok w przód",
|
"LabelJumpForwardsTime": "Przeskok w przód",
|
||||||
"LabelLanguage": "Język",
|
"LabelLanguage": "Język",
|
||||||
"LabelLayout": "Układ",
|
"LabelLayout": "Układ",
|
||||||
"LabelLayoutAuto": "Auto",
|
|
||||||
"LabelLayoutSinglePage": "Pojedyncza strona",
|
"LabelLayoutSinglePage": "Pojedyncza strona",
|
||||||
"LabelLight": "Lekko",
|
"LabelLight": "Lekko",
|
||||||
"LabelLineSpacing": "Interlinia",
|
"LabelLineSpacing": "Odstęp między wierszami",
|
||||||
"LabelListenAgain": "Słuchaj ponownie",
|
"LabelListenAgain": "Słuchaj ponownie",
|
||||||
"LabelLocalBooks": "Książki lokalne",
|
"LabelLocalBooks": "Książki lokalne",
|
||||||
"LabelLocalPodcasts": "Podcasty lokalne",
|
"LabelLocalPodcasts": "Podcasty lokalne",
|
||||||
@@ -168,11 +171,11 @@
|
|||||||
"LabelMore": "Więcej",
|
"LabelMore": "Więcej",
|
||||||
"LabelMoreInfo": "Więcej informacji",
|
"LabelMoreInfo": "Więcej informacji",
|
||||||
"LabelName": "Nazwa",
|
"LabelName": "Nazwa",
|
||||||
"LabelNarrator": "Narrator",
|
"LabelNarrator": "Lektor",
|
||||||
"LabelNarrators": "Lektorzy",
|
"LabelNarrators": "Lektorzy",
|
||||||
|
"LabelNever": "Nigdy",
|
||||||
"LabelNewestAuthors": "Najnowsi autorzy",
|
"LabelNewestAuthors": "Najnowsi autorzy",
|
||||||
"LabelNewestEpisodes": "Najnosze odcinki",
|
"LabelNewestEpisodes": "Najnowsze odcinki",
|
||||||
"LabelNo": "No",
|
|
||||||
"LabelNotFinished": "Nieukończone",
|
"LabelNotFinished": "Nieukończone",
|
||||||
"LabelNotStarted": "Nie rozpoczęto",
|
"LabelNotStarted": "Nie rozpoczęto",
|
||||||
"LabelOff": "Wyłącz",
|
"LabelOff": "Wyłącz",
|
||||||
@@ -182,28 +185,25 @@
|
|||||||
"LabelPlaybackLocal": "Lokalnie",
|
"LabelPlaybackLocal": "Lokalnie",
|
||||||
"LabelPlaybackSpeed": "Prędkość odtwarzania",
|
"LabelPlaybackSpeed": "Prędkość odtwarzania",
|
||||||
"LabelPlaybackTranscode": "Transkoduj",
|
"LabelPlaybackTranscode": "Transkoduj",
|
||||||
"LabelPodcast": "Podcast",
|
|
||||||
"LabelPodcasts": "Podcasty",
|
"LabelPodcasts": "Podcasty",
|
||||||
"LabelPreventIndexing": "Zapobiegaj indeksowaniu kanału przez katalogi podcastów iTunes i Google",
|
"LabelPreventIndexing": "Zapobiega indeksowaniu przez iTunes i Google",
|
||||||
"LabelProgress": "Postęp",
|
"LabelProgress": "Postęp",
|
||||||
"LabelPubDate": "Data publikacji",
|
"LabelPubDate": "Data publikacji",
|
||||||
"LabelPublishYear": "Rok publikacji",
|
"LabelPublishYear": "Rok publikacji",
|
||||||
|
"LabelRSSFeedPreventIndexing": "Zapobiegaj indeksowaniu",
|
||||||
|
"LabelRandomly": "Losowo",
|
||||||
"LabelRead": "Czytaj",
|
"LabelRead": "Czytaj",
|
||||||
"LabelReadAgain": "Czytaj ponownie",
|
"LabelReadAgain": "Czytaj ponownie",
|
||||||
"LabelRecentlyAdded": "Ostatnio dodane",
|
|
||||||
"LabelRecentSeries": "Najnowsze serie",
|
"LabelRecentSeries": "Najnowsze serie",
|
||||||
"LabelRemoveFromPlaylist": "Remove from Playlist",
|
"LabelRecentlyAdded": "Niedawno dodane",
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Custom owner Email",
|
"LabelRemoveFromPlaylist": "Usuń z listy odtwarzania",
|
||||||
"LabelRSSFeedCustomOwnerName": "Custom owner Name",
|
|
||||||
"LabelRSSFeedPreventIndexing": "Zapobiegaj indeksowaniu",
|
|
||||||
"LabelRSSFeedSlug": "RSS Feed Slug",
|
|
||||||
"LabelScaleElapsedTimeBySpeed": "Skaluj czas, który upłynął według prędkości",
|
"LabelScaleElapsedTimeBySpeed": "Skaluj czas, który upłynął według prędkości",
|
||||||
"LabelSeason": "Sezon",
|
"LabelSeason": "Sezon",
|
||||||
"LabelSelectADevice": "Wybierz urządzenie",
|
"LabelSelectADevice": "Wybierz urządzenie",
|
||||||
"LabelSeries": "Serie",
|
"LabelSeries": "Serie",
|
||||||
"LabelServerAddress": "Adres serwera",
|
"LabelServerAddress": "Adres serwera",
|
||||||
"LabelSetEbookAsPrimary": "Ustaw jako podstawowy ebook",
|
"LabelSetEbookAsPrimary": "Ustaw jako pierwszy",
|
||||||
"LabelSetEbookAsSupplementary": "Ustaw jako dodatkowy ebook",
|
"LabelSetEbookAsSupplementary": "Ustaw jako dodatkowy",
|
||||||
"LabelShakeSensitivity": "Czułość potrząsania",
|
"LabelShakeSensitivity": "Czułość potrząsania",
|
||||||
"LabelShowAll": "Pokaż wszystko",
|
"LabelShowAll": "Pokaż wszystko",
|
||||||
"LabelSize": "Rozmiar",
|
"LabelSize": "Rozmiar",
|
||||||
@@ -217,17 +217,17 @@
|
|||||||
"LabelStatsInARow": "z rzędu",
|
"LabelStatsInARow": "z rzędu",
|
||||||
"LabelStatsItemsFinished": "Pozycje zakończone",
|
"LabelStatsItemsFinished": "Pozycje zakończone",
|
||||||
"LabelStatsMinutes": "Minuty",
|
"LabelStatsMinutes": "Minuty",
|
||||||
"LabelStatsMinutesListening": "Minuty odtwarzania",
|
"LabelStatsMinutesListening": "Minuty słuchania",
|
||||||
"LabelStatsWeekListening": "Tydzień odtwarzania",
|
"LabelStatsWeekListening": "Tydzień słuchania",
|
||||||
"LabelTag": "Tag",
|
|
||||||
"LabelTags": "Tagi",
|
"LabelTags": "Tagi",
|
||||||
"LabelTheme": "Motyw",
|
"LabelTheme": "Motyw",
|
||||||
"LabelThemeDark": "Ciemny",
|
"LabelThemeDark": "Ciemny",
|
||||||
"LabelThemeLight": "Jasny",
|
"LabelThemeLight": "Jasny",
|
||||||
"LabelTimeRemaining": "Pozostało {0}",
|
"LabelTimeRemaining": "Pozostało {0}",
|
||||||
"LabelTitle": "Tytuł",
|
"LabelTitle": "Tytuł",
|
||||||
|
"LabelTotalSize": "Całkowity Rozmiar",
|
||||||
"LabelTotalTrack": "Postęp całkowity",
|
"LabelTotalTrack": "Postęp całkowity",
|
||||||
"LabelTracks": "Postępy",
|
"LabelTracks": "Ścieżki",
|
||||||
"LabelType": "Typ",
|
"LabelType": "Typ",
|
||||||
"LabelUnlockPlayer": "Odblokuj odtwarzacz",
|
"LabelUnlockPlayer": "Odblokuj odtwarzacz",
|
||||||
"LabelUseBookshelfView": "Użyj widoku półki",
|
"LabelUseBookshelfView": "Użyj widoku półki",
|
||||||
@@ -245,6 +245,7 @@
|
|||||||
"MessageConfirmDeleteLocalEpisode": "Usunąć lokalny odcinek \"{0}\" ze swojego urządzenia? Nie będzie to miało wpływu na plik na serwerze.",
|
"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.",
|
"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?",
|
"MessageConfirmDiscardProgress": "Na pewno chcesz zresetować postęp?",
|
||||||
|
"MessageConfirmDownloadUsingCellular": "Zamierzasz pobrać poprzez dane komórkowe. Może to wpłynąć na wysokość rachunku. Czy chcesz kontynuować?",
|
||||||
"MessageConfirmMarkAsFinished": "Na pewno chcesz oznaczyć ten element jako ukończony?",
|
"MessageConfirmMarkAsFinished": "Na pewno chcesz oznaczyć ten element jako ukończony?",
|
||||||
"MessageConfirmRemoveBookmark": "Na pewno chcesz usunąć zakładkę?",
|
"MessageConfirmRemoveBookmark": "Na pewno chcesz usunąć zakładkę?",
|
||||||
"MessageDiscardProgress": "Zresetuj postęp",
|
"MessageDiscardProgress": "Zresetuj postęp",
|
||||||
@@ -254,7 +255,7 @@
|
|||||||
"MessageEpisodesQueuedForDownload": "{0} odcinki w kolejce do pobrania",
|
"MessageEpisodesQueuedForDownload": "{0} odcinki w kolejce do pobrania",
|
||||||
"MessageFeedURLWillBe": "URL kanału: {0}",
|
"MessageFeedURLWillBe": "URL kanału: {0}",
|
||||||
"MessageFetching": "Pobieranie...",
|
"MessageFetching": "Pobieranie...",
|
||||||
"MessageFollowTheProjectOnGithub": "Śledź projekt na Githubie",
|
"MessageFollowTheProjectOnGithub": "Śledź projekt na GitHubie",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Pobieranie elementu zostało zakończone, ale nie udało się utworzyć elementu biblioteki",
|
"MessageItemDownloadCompleteFailedToCreate": "Pobieranie elementu zostało zakończone, ale nie udało się utworzyć elementu biblioteki",
|
||||||
"MessageLoading": "Ładowanie...",
|
"MessageLoading": "Ładowanie...",
|
||||||
"MessageLoadingServerData": "Ładowanie danych serwera...",
|
"MessageLoadingServerData": "Ładowanie danych serwera...",
|
||||||
@@ -268,29 +269,29 @@
|
|||||||
"MessageNoChapters": "Brak rozdziałów",
|
"MessageNoChapters": "Brak rozdziałów",
|
||||||
"MessageNoItems": "Brak elementów",
|
"MessageNoItems": "Brak elementów",
|
||||||
"MessageNoItemsFound": "Nie znaleziono żadnych elementów",
|
"MessageNoItemsFound": "Nie znaleziono żadnych elementów",
|
||||||
"MessageNoListeningSessions": "Brak sesji odtwarzania",
|
"MessageNoListeningSessions": "Brak sesji słuchania",
|
||||||
"MessageNoMediaFolders": "Brak folderów z mediami",
|
"MessageNoMediaFolders": "Brak folderów z mediami",
|
||||||
"MessageNoNetworkConnection": "Brak połączenia sieciowego",
|
"MessageNoNetworkConnection": "Brak połączenia sieciowego",
|
||||||
"MessageNoPodcastsFound": "Nie znaleziono podcastów",
|
"MessageNoPodcastsFound": "Nie znaleziono podcastów",
|
||||||
"MessageNoSeries": "No series",
|
|
||||||
"MessageNoUpdatesWereNecessary": "Brak aktualizacji",
|
"MessageNoUpdatesWereNecessary": "Brak aktualizacji",
|
||||||
"MessageNoUserPlaylists": "Nie posiadasz playlist",
|
"MessageNoUserPlaylists": "Nie masz żadnych list odtwarzania",
|
||||||
"MessageReportBugsAndContribute": "Zgłoś błędy, pomysły i pomóż rozwijać aplikację na",
|
"MessageReportBugsAndContribute": "Zgłoś błędy, pomysły i pomóż rozwijać aplikację na",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Gniazdo podłączone przez sieć komórkową z limitem danych",
|
"MessageSocketConnectedOverMeteredCellular": "Gniazdo podłączone przez sieć komórkową z limitem danych",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Gniazdo podłączone przez Wi-Fi z limitem danych",
|
"MessageSocketConnectedOverMeteredWifi": "Gniazdo podłączone przez Wi-Fi z limitem danych",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Gniazdo podłączone przez sieć komórkową bez limitu danych",
|
"MessageSocketConnectedOverUnmeteredCellular": "Gniazdo podłączone przez sieć komórkową bez limitu danych",
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Gniazdo podłączone przez Wi-Fi bez limitu danych",
|
"MessageSocketConnectedOverUnmeteredWifi": "Gniazdo podłączone przez Wi-Fi bez limitu danych",
|
||||||
"MessageSocketNotConnected": "Gniazdo nie jest podłączone",
|
"MessageSocketNotConnected": "Gniazdo nie jest podłączone",
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Ostrzeżenie: Większość aplikacji do obsługi podcastów wymaga, aby adres URL kanału RSS korzystał z protokołu HTTPS.",
|
"NoteRSSFeedPodcastAppsHttps": "Ostrzeżenie: Większość aplikacji do obsługi podcastów wymaga, aby adres URL kanału RSS korzystał z protokołu HTTPS",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Ostrzeżenie: 1 lub więcej odcinków nie ma daty publikacji. Niektóre aplikacje do słuchania podcastów tego wymagają.",
|
"NoteRSSFeedPodcastAppsPubDate": "Ostrzeżenie: 1 lub więcej odcinków nie ma daty publikacji. Niektóre aplikacje do słuchania podcastów tego wymagają.",
|
||||||
"ToastBookmarkCreateFailed": "Nie udało się utworzyć zakładki",
|
"ToastBookmarkCreateFailed": "Nie udało się utworzyć zakładki",
|
||||||
"ToastBookmarkRemoveFailed": "Nie udało się usunąć zakładki",
|
"ToastBookmarkRemoveFailed": "Nie udało się usunąć zakładki",
|
||||||
"ToastBookmarkUpdateFailed": "Nie udało się zaktualizować zakładki",
|
"ToastBookmarkUpdateFailed": "Nie udało się zaktualizować zakładki",
|
||||||
"ToastItemMarkedAsFinishedFailed": "Nie udało się oznaczyć jako zakończone",
|
"ToastDownloadNotAllowedOnCellular": "Ściąganie poprzez dane komórkowe jest niedozwolone",
|
||||||
|
"ToastItemMarkedAsFinishedFailed": "Nie udało się oznaczyć jako ukończone",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "Oznaczenie pozycji jako ukończonej nie powiodło się",
|
"ToastItemMarkedAsNotFinishedFailed": "Oznaczenie pozycji jako ukończonej nie powiodło się",
|
||||||
"ToastPlaylistCreateFailed": "Nie udało się utworzyć playlisty",
|
"ToastPlaylistCreateFailed": "Nie udało się utworzyć playlisty",
|
||||||
"ToastPodcastCreateFailed": "Nie udało się utworzyć podcastu",
|
"ToastPodcastCreateFailed": "Nie udało się utworzyć podcastu",
|
||||||
"ToastPodcastCreateSuccess": "Podcast został pomyślnie utworzony",
|
"ToastPodcastCreateSuccess": "Podcast został pomyślnie utworzony",
|
||||||
"ToastRSSFeedCloseFailed": "Zamknięcie kanału RSS nie powiodło się",
|
"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ę"
|
||||||
}
|
}
|
||||||
|
|||||||
+32
-29
@@ -33,6 +33,7 @@
|
|||||||
"ButtonOverride": "Sobrepor",
|
"ButtonOverride": "Sobrepor",
|
||||||
"ButtonPause": "Pausar",
|
"ButtonPause": "Pausar",
|
||||||
"ButtonPlay": "Reproduzir",
|
"ButtonPlay": "Reproduzir",
|
||||||
|
"ButtonPlayEpisode": "Reproduzir Episódio",
|
||||||
"ButtonPlaying": "Reproduzindo",
|
"ButtonPlaying": "Reproduzindo",
|
||||||
"ButtonPlaylists": "Lista de Reprodução",
|
"ButtonPlaylists": "Lista de Reprodução",
|
||||||
"ButtonRead": "Ler",
|
"ButtonRead": "Ler",
|
||||||
@@ -44,7 +45,7 @@
|
|||||||
"ButtonSendEbookToDevice": "Enviar Ebook para Dispositivo",
|
"ButtonSendEbookToDevice": "Enviar Ebook para Dispositivo",
|
||||||
"ButtonSeries": "Série",
|
"ButtonSeries": "Série",
|
||||||
"ButtonSetTimer": "Definir Timer",
|
"ButtonSetTimer": "Definir Timer",
|
||||||
"ButtonStream": "Stream",
|
"ButtonStream": "Fazer o Stream",
|
||||||
"ButtonSubmit": "Enviar",
|
"ButtonSubmit": "Enviar",
|
||||||
"ButtonSwitchServerUser": "Trocar Servidor/Usuário",
|
"ButtonSwitchServerUser": "Trocar Servidor/Usuário",
|
||||||
"ButtonUserStats": "Estatísticas do Usuário",
|
"ButtonUserStats": "Estatísticas do Usuário",
|
||||||
@@ -56,8 +57,8 @@
|
|||||||
"HeaderCollection": "Coleção",
|
"HeaderCollection": "Coleção",
|
||||||
"HeaderCollectionItems": "Itens da Coleção",
|
"HeaderCollectionItems": "Itens da Coleção",
|
||||||
"HeaderConnectionStatus": "Status da Conexão",
|
"HeaderConnectionStatus": "Status da Conexão",
|
||||||
|
"HeaderDataSettings": "Configurações de dados",
|
||||||
"HeaderDetails": "Detalhes",
|
"HeaderDetails": "Detalhes",
|
||||||
"HeaderDownloads": "Downloads",
|
|
||||||
"HeaderEbookFiles": "Arquivos Ebook",
|
"HeaderEbookFiles": "Arquivos Ebook",
|
||||||
"HeaderEpisodes": "Episódios",
|
"HeaderEpisodes": "Episódios",
|
||||||
"HeaderEreaderSettings": "Configurações Ereader",
|
"HeaderEreaderSettings": "Configurações Ereader",
|
||||||
@@ -82,11 +83,13 @@
|
|||||||
"HeaderTableOfContents": "Sumário",
|
"HeaderTableOfContents": "Sumário",
|
||||||
"HeaderUserInterfaceSettings": "Configurações da Interface do Usuário",
|
"HeaderUserInterfaceSettings": "Configurações da Interface do Usuário",
|
||||||
"HeaderYourStats": "Suas Estatísticas",
|
"HeaderYourStats": "Suas Estatísticas",
|
||||||
|
"LabelAddToPlaylist": "Adicionar à Lista de Reprodução",
|
||||||
"LabelAdded": "Acrescentado",
|
"LabelAdded": "Acrescentado",
|
||||||
"LabelAddedAt": "Acrescentado Em",
|
"LabelAddedAt": "Acrescentado Em",
|
||||||
"LabelAddToPlaylist": "Adicionar à Lista de Reprodução",
|
|
||||||
"LabelAll": "Todos",
|
"LabelAll": "Todos",
|
||||||
"LabelAllowSeekingOnMediaControls": "Permitir busca de posição nos controles de notificação de mídia",
|
"LabelAllowSeekingOnMediaControls": "Permitir busca de posição nos controles de notificação de mídia",
|
||||||
|
"LabelAlways": "Sempre",
|
||||||
|
"LabelAskConfirmation": "Pedir confirmação",
|
||||||
"LabelAuthor": "Autor",
|
"LabelAuthor": "Autor",
|
||||||
"LabelAuthorFirstLast": "Autor (Nome Sobrenome)",
|
"LabelAuthorFirstLast": "Autor (Nome Sobrenome)",
|
||||||
"LabelAuthorLastFirst": "Autor (Sobrenome, Nome)",
|
"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.",
|
"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.",
|
"LabelAutoSleepTimerHelp": "Ao reproduzir uma mídia entre as horas especificadas como inicío e fim, um timer será iniciado automaticamente.",
|
||||||
"LabelBooks": "Livros",
|
"LabelBooks": "Livros",
|
||||||
"LabelChapters": "Capítulos",
|
|
||||||
"LabelChapterTrack": "Trilha do Capítulo",
|
"LabelChapterTrack": "Trilha do Capítulo",
|
||||||
|
"LabelChapters": "Capítulos",
|
||||||
"LabelClosePlayer": "Fechar Reprodutor",
|
"LabelClosePlayer": "Fechar Reprodutor",
|
||||||
"LabelCollapseSeries": "Fechar Série",
|
"LabelCollapseSeries": "Fechar Série",
|
||||||
"LabelComplete": "Concluído",
|
"LabelComplete": "Concluído",
|
||||||
@@ -118,12 +121,10 @@
|
|||||||
"LabelDisableVibrateOnReset": "Desativar vibração ao resetar",
|
"LabelDisableVibrateOnReset": "Desativar vibração ao resetar",
|
||||||
"LabelDisableVibrateOnResetHelp": "Quando o timer for resetado o seu dispositivo vibrará. Ative essa configuração para não vibrar quando o timer for resetado.",
|
"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",
|
"LabelDiscover": "Descobrir",
|
||||||
"LabelDownload": "Download",
|
"LabelDownloadUsingCellular": "Download usando o celular",
|
||||||
"LabelDownloaded": "Download realizado",
|
"LabelDownloaded": "Download realizado",
|
||||||
"LabelDuration": "Duração",
|
"LabelDuration": "Duração",
|
||||||
"LabelEbook": "Ebook",
|
"LabelEnable": "Habilitar",
|
||||||
"LabelEbooks": "Ebooks",
|
|
||||||
"LabelEnable": "Ativar",
|
|
||||||
"LabelEnableMp3IndexSeeking": "Ativar busca por índice mp3",
|
"LabelEnableMp3IndexSeeking": "Ativar busca por índice mp3",
|
||||||
"LabelEnableMp3IndexSeekingHelp": "Esta configuração só deve ser ativada se a busca em arquivos mp3 não estiver funcionando corretamente. Buscas incorretas são normalmente causadas por arquivos MP3 com bitrate variável (VBR). Esta configuração forçará a busca por índice, que é uma consulta do tempo-para-byte, elaborado durante a leitura do arquivo. Em alguns casos, com arquivos MP3 maiores, haverá um atraso ao buscar perto do final do arquivo.",
|
"LabelEnableMp3IndexSeekingHelp": "Esta configuração só deve ser ativada se a busca em arquivos mp3 não estiver funcionando corretamente. Buscas incorretas são normalmente causadas por arquivos MP3 com bitrate variável (VBR). Esta configuração forçará a busca por índice, que é uma consulta do tempo-para-byte, elaborado durante a leitura do arquivo. Em alguns casos, com arquivos MP3 maiores, haverá um atraso ao buscar perto do final do arquivo.",
|
||||||
"LabelEnd": "Fim",
|
"LabelEnd": "Fim",
|
||||||
@@ -137,6 +138,7 @@
|
|||||||
"LabelFilename": "Nome do Arquivo",
|
"LabelFilename": "Nome do Arquivo",
|
||||||
"LabelFinished": "Concluído",
|
"LabelFinished": "Concluído",
|
||||||
"LabelFolder": "Pasta",
|
"LabelFolder": "Pasta",
|
||||||
|
"LabelFontBoldness": "Intensidade do negrito",
|
||||||
"LabelFontScale": "Escala de fonte",
|
"LabelFontScale": "Escala de fonte",
|
||||||
"LabelGenre": "Gênero",
|
"LabelGenre": "Gênero",
|
||||||
"LabelGenres": "Gêneros",
|
"LabelGenres": "Gêneros",
|
||||||
@@ -145,14 +147,12 @@
|
|||||||
"LabelHasSupplementaryEbook": "Tem ebook complementar",
|
"LabelHasSupplementaryEbook": "Tem ebook complementar",
|
||||||
"LabelHeavy": "Pesado",
|
"LabelHeavy": "Pesado",
|
||||||
"LabelHigh": "Alta",
|
"LabelHigh": "Alta",
|
||||||
"LabelHost": "Host",
|
|
||||||
"LabelIncomplete": "Incompleto",
|
|
||||||
"LabelInProgress": "Em Andamento",
|
"LabelInProgress": "Em Andamento",
|
||||||
|
"LabelIncomplete": "Incompleto",
|
||||||
"LabelInternalAppStorage": "Armazenamento Interno do App",
|
"LabelInternalAppStorage": "Armazenamento Interno do App",
|
||||||
"LabelJumpBackwardsTime": "Retroceder tempo",
|
"LabelJumpBackwardsTime": "Retroceder tempo",
|
||||||
"LabelJumpForwardsTime": "Adiantar tempo",
|
"LabelJumpForwardsTime": "Adiantar tempo",
|
||||||
"LabelLanguage": "Idioma",
|
"LabelLanguage": "Idioma",
|
||||||
"LabelLayout": "Layout",
|
|
||||||
"LabelLayoutAuto": "Automático",
|
"LabelLayoutAuto": "Automático",
|
||||||
"LabelLayoutSinglePage": "Uma página",
|
"LabelLayoutSinglePage": "Uma página",
|
||||||
"LabelLight": "Leve",
|
"LabelLight": "Leve",
|
||||||
@@ -170,33 +170,31 @@
|
|||||||
"LabelName": "Nome",
|
"LabelName": "Nome",
|
||||||
"LabelNarrator": "Narrador",
|
"LabelNarrator": "Narrador",
|
||||||
"LabelNarrators": "Narradores",
|
"LabelNarrators": "Narradores",
|
||||||
|
"LabelNever": "Nunca",
|
||||||
"LabelNewestAuthors": "Novos Autores",
|
"LabelNewestAuthors": "Novos Autores",
|
||||||
"LabelNewestEpisodes": "Episódios mais recentes",
|
"LabelNewestEpisodes": "Episódios mais recentes",
|
||||||
"LabelNo": "Não",
|
"LabelNo": "Não",
|
||||||
"LabelNotFinished": "Não Concluído",
|
"LabelNotFinished": "Não concluído",
|
||||||
"LabelNotStarted": "Não Iniciado",
|
"LabelNotStarted": "Não Iniciado",
|
||||||
"LabelOff": "Desligado",
|
"LabelOff": "Desligado",
|
||||||
"LabelPassword": "Senha",
|
"LabelPassword": "Senha",
|
||||||
"LabelPath": "Caminho",
|
"LabelPath": "Caminho",
|
||||||
"LabelPlaybackDirect": "Direto",
|
"LabelPlaybackDirect": "Direto",
|
||||||
"LabelPlaybackLocal": "Local",
|
|
||||||
"LabelPlaybackSpeed": "Velocidade de Reprodução",
|
"LabelPlaybackSpeed": "Velocidade de Reprodução",
|
||||||
"LabelPlaybackTranscode": "Transcodificar",
|
"LabelPlaybackTranscode": "Transcodificar",
|
||||||
"LabelPodcast": "Podcast",
|
|
||||||
"LabelPodcasts": "Podcasts",
|
|
||||||
"LabelPreventIndexing": "Evitar que o seu feed seja indexado pelos diretórios de podcast do iTunes e Google",
|
"LabelPreventIndexing": "Evitar que o seu feed seja indexado pelos diretórios de podcast do iTunes e Google",
|
||||||
"LabelProgress": "Progresso",
|
"LabelProgress": "Progresso",
|
||||||
"LabelPubDate": "Data de Publicação",
|
"LabelPubDate": "Data de Publicação",
|
||||||
"LabelPublishYear": "Ano de Publicação",
|
"LabelPublishYear": "Ano de Publicação",
|
||||||
"LabelRead": "Lido",
|
"LabelRSSFeedCustomOwnerEmail": "E-mail do dono personalizado",
|
||||||
"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",
|
"LabelRSSFeedCustomOwnerName": "Nome do dono personalizado",
|
||||||
"LabelRSSFeedPreventIndexing": "Impedir Indexação",
|
"LabelRSSFeedPreventIndexing": "Impedir Indexação",
|
||||||
"LabelRSSFeedSlug": "Slug do Feed RSS",
|
"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",
|
"LabelScaleElapsedTimeBySpeed": "Proporcionalizar Tempo Decorrido com a Velocidade",
|
||||||
"LabelSeason": "Temporada",
|
"LabelSeason": "Temporada",
|
||||||
"LabelSelectADevice": "Selecione um dispositivo",
|
"LabelSelectADevice": "Selecione um dispositivo",
|
||||||
@@ -219,6 +217,7 @@
|
|||||||
"LabelStatsMinutes": "minutos",
|
"LabelStatsMinutes": "minutos",
|
||||||
"LabelStatsMinutesListening": "Minutos Escutando",
|
"LabelStatsMinutesListening": "Minutos Escutando",
|
||||||
"LabelStatsWeekListening": "Tempo escutando na semana",
|
"LabelStatsWeekListening": "Tempo escutando na semana",
|
||||||
|
"LabelStreamingUsingCellular": "Streaming usando o celular",
|
||||||
"LabelTag": "Etiqueta",
|
"LabelTag": "Etiqueta",
|
||||||
"LabelTags": "Etiquetas",
|
"LabelTags": "Etiquetas",
|
||||||
"LabelTheme": "Tema",
|
"LabelTheme": "Tema",
|
||||||
@@ -226,13 +225,14 @@
|
|||||||
"LabelThemeLight": "Claro",
|
"LabelThemeLight": "Claro",
|
||||||
"LabelTimeRemaining": "{0} restantes",
|
"LabelTimeRemaining": "{0} restantes",
|
||||||
"LabelTitle": "Título",
|
"LabelTitle": "Título",
|
||||||
|
"LabelTotalSize": "Tamanho total",
|
||||||
"LabelTotalTrack": "Total da Trilha",
|
"LabelTotalTrack": "Total da Trilha",
|
||||||
"LabelTracks": "Trilhas",
|
"LabelTracks": "Trilhas",
|
||||||
"LabelType": "Tipo",
|
"LabelType": "Tipo",
|
||||||
"LabelUnlockPlayer": "Destravar Reprodutor",
|
"LabelUnlockPlayer": "Destravar Reprodutor",
|
||||||
"LabelUseBookshelfView": "Usar visão estante",
|
"LabelUseBookshelfView": "Usar visão estante",
|
||||||
"LabelUser": "Usuário",
|
"LabelUser": "Usuário",
|
||||||
"LabelUsername": "Nome do Usuário",
|
"LabelUsername": "Nome do usuário",
|
||||||
"LabelVeryHigh": "Muito Alta",
|
"LabelVeryHigh": "Muito Alta",
|
||||||
"LabelVeryLow": "Muito Baixa",
|
"LabelVeryLow": "Muito Baixa",
|
||||||
"LabelYourBookmarks": "Seus Marcadores",
|
"LabelYourBookmarks": "Seus Marcadores",
|
||||||
@@ -244,9 +244,11 @@
|
|||||||
"MessageBookshelfEmpty": "Estante vazia",
|
"MessageBookshelfEmpty": "Estante vazia",
|
||||||
"MessageConfirmDeleteLocalEpisode": "Remover episódio local \"{0}\" do seu dispositivo? O arquivo no servidor não será afetado.",
|
"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.",
|
"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?",
|
"MessageConfirmDiscardProgress": "Tem certeza de que deseja resetar o seu progresso?",
|
||||||
|
"MessageConfirmDownloadUsingCellular": "Você irá fazer o download usando dados do celular. Isso pode incidir em cobrança por sua operadora. Deseja continuar?",
|
||||||
"MessageConfirmMarkAsFinished": "Tem certeza de que deseja marcar esse item como concluído?",
|
"MessageConfirmMarkAsFinished": "Tem certeza de que deseja marcar esse item como concluído?",
|
||||||
"MessageConfirmRemoveBookmark": "Tem certeza de que deseja remover o marcador?",
|
"MessageConfirmRemoveBookmark": "Tem certeza de que deseja remover o marcador?",
|
||||||
|
"MessageConfirmStreamingUsingCellular": "Você irá fazer o streaming usando dados do celular. Isso pode incidir em cobrança por sua operadora. Deseja continuar?",
|
||||||
"MessageDiscardProgress": "Descartar Progresso",
|
"MessageDiscardProgress": "Descartar Progresso",
|
||||||
"MessageDownloadCompleteProcessing": "Download concluído. Processando...",
|
"MessageDownloadCompleteProcessing": "Download concluído. Processando...",
|
||||||
"MessageDownloading": "Realizando o download...",
|
"MessageDownloading": "Realizando o download...",
|
||||||
@@ -254,7 +256,7 @@
|
|||||||
"MessageEpisodesQueuedForDownload": "{0} Episódio(s) na fila de download",
|
"MessageEpisodesQueuedForDownload": "{0} Episódio(s) na fila de download",
|
||||||
"MessageFeedURLWillBe": "URL do Feed será {0}",
|
"MessageFeedURLWillBe": "URL do Feed será {0}",
|
||||||
"MessageFetching": "Buscando...",
|
"MessageFetching": "Buscando...",
|
||||||
"MessageFollowTheProjectOnGithub": "Siga este projeto no Github",
|
"MessageFollowTheProjectOnGithub": "Siga este projeto no GitHub",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Download concluído mas não foi possível criar item da biblioteca",
|
"MessageItemDownloadCompleteFailedToCreate": "Download concluído mas não foi possível criar item da biblioteca",
|
||||||
"MessageLoading": "Carregando...",
|
"MessageLoading": "Carregando...",
|
||||||
"MessageLoadingServerData": "Carregando dados do servidor...",
|
"MessageLoadingServerData": "Carregando dados do servidor...",
|
||||||
@@ -272,25 +274,26 @@
|
|||||||
"MessageNoMediaFolders": "Sem Pastas de Mídia",
|
"MessageNoMediaFolders": "Sem Pastas de Mídia",
|
||||||
"MessageNoNetworkConnection": "Nem conexão de rede",
|
"MessageNoNetworkConnection": "Nem conexão de rede",
|
||||||
"MessageNoPodcastsFound": "Nenhum podcast encontrado",
|
"MessageNoPodcastsFound": "Nenhum podcast encontrado",
|
||||||
"MessageNoSeries": "No series",
|
|
||||||
"MessageNoUpdatesWereNecessary": "Nenhuma atualização é necessária",
|
"MessageNoUpdatesWereNecessary": "Nenhuma atualização é necessária",
|
||||||
"MessageNoUserPlaylists": "Você não tem listas de reprodução",
|
"MessageNoUserPlaylists": "Você não tem listas de reprodução",
|
||||||
"MessageReportBugsAndContribute": "Reporte bugs, peça funcionalidades e contribua em",
|
"MessageReportBugsAndContribute": "Reporte bugs, peça funcionalidades e contribua em",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket conectado usando rede celular limitada",
|
"MessageSocketConnectedOverMeteredCellular": "Socket conectado usando rede celular limitada",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket conectado usando wifi limitada",
|
"MessageSocketConnectedOverMeteredWifi": "Socket conectado usando Wi-Fi limitada",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Socket conectado usando rede celular ilimitada",
|
"MessageSocketConnectedOverUnmeteredCellular": "Socket conectado usando rede celular ilimitada",
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Socket conectado usando wifi ilimitada",
|
"MessageSocketConnectedOverUnmeteredWifi": "Socket conectado usando Wi-Fi ilimitada",
|
||||||
"MessageSocketNotConnected": "Socket não conectado",
|
"MessageSocketNotConnected": "Socket não conectado",
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Atenção: A maioria dos aplicativos de podcasts requer que a URL do feed RSS use HTTPS",
|
"NoteRSSFeedPodcastAppsHttps": "Atenção: A maioria dos aplicativos de podcasts requer que a URL do feed RSS use HTTPS",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Atenção: Um ou mais dos seus episódios não tem uma data de publicação. Alguns aplicativos de podcasts requerem isto.",
|
"NoteRSSFeedPodcastAppsPubDate": "Atenção: Um ou mais dos seus episódios não tem uma data de publicação. Alguns aplicativos de podcasts requerem isto.",
|
||||||
"ToastBookmarkCreateFailed": "Falha ao criar marcador",
|
"ToastBookmarkCreateFailed": "Falha ao criar marcador",
|
||||||
"ToastBookmarkRemoveFailed": "Falha ao remover marcador",
|
"ToastBookmarkRemoveFailed": "Falha ao remover marcador",
|
||||||
"ToastBookmarkUpdateFailed": "Falha ao atualizar marcador",
|
"ToastBookmarkUpdateFailed": "Falha ao atualizar marcador",
|
||||||
|
"ToastDownloadNotAllowedOnCellular": "O download não é permitido usando dados do celular",
|
||||||
"ToastItemMarkedAsFinishedFailed": "Falha ao marcar como Concluído",
|
"ToastItemMarkedAsFinishedFailed": "Falha ao marcar como Concluído",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "Falha ao marcar como Não Concluído",
|
"ToastItemMarkedAsNotFinishedFailed": "Falha ao marcar como Não Concluído",
|
||||||
"ToastPlaylistCreateFailed": "Falha ao criar lista de reprodução",
|
"ToastPlaylistCreateFailed": "Falha ao criar lista de reprodução",
|
||||||
"ToastPodcastCreateFailed": "Falha ao criar podcast",
|
"ToastPodcastCreateFailed": "Falha ao criar podcast",
|
||||||
"ToastPodcastCreateSuccess": "Podcast criado",
|
"ToastPodcastCreateSuccess": "Podcast criado",
|
||||||
"ToastRSSFeedCloseFailed": "Falha ao fechar feed RSS",
|
"ToastRSSFeedCloseFailed": "Falha ao fechar feed RSS",
|
||||||
"ToastRSSFeedCloseSuccess": "Feed RSS fechado"
|
"ToastRSSFeedCloseSuccess": "Feed RSS fechado",
|
||||||
}
|
"ToastStreamingNotAllowedOnCellular": "Streaming não é permitido usando dados do celular"
|
||||||
|
}
|
||||||
|
|||||||
+41
-23
@@ -19,7 +19,7 @@
|
|||||||
"ButtonDeleteLocalItem": "Удалить локальный элемент",
|
"ButtonDeleteLocalItem": "Удалить локальный элемент",
|
||||||
"ButtonDisableAutoTimer": "Отключить автоматический таймер",
|
"ButtonDisableAutoTimer": "Отключить автоматический таймер",
|
||||||
"ButtonDisconnect": "Отключиться",
|
"ButtonDisconnect": "Отключиться",
|
||||||
"ButtonGoToWebClient": "Go to Web Client",
|
"ButtonGoToWebClient": "Перейти в веб-клиент",
|
||||||
"ButtonHistory": "История",
|
"ButtonHistory": "История",
|
||||||
"ButtonHome": "Домой",
|
"ButtonHome": "Домой",
|
||||||
"ButtonIssues": "Проблемы",
|
"ButtonIssues": "Проблемы",
|
||||||
@@ -33,6 +33,7 @@
|
|||||||
"ButtonOverride": "Переопределить",
|
"ButtonOverride": "Переопределить",
|
||||||
"ButtonPause": "Пауза",
|
"ButtonPause": "Пауза",
|
||||||
"ButtonPlay": "Слушать",
|
"ButtonPlay": "Слушать",
|
||||||
|
"ButtonPlayEpisode": "Воспроизвести эпизод",
|
||||||
"ButtonPlaying": "Проигрывается",
|
"ButtonPlaying": "Проигрывается",
|
||||||
"ButtonPlaylists": "Плейлисты",
|
"ButtonPlaylists": "Плейлисты",
|
||||||
"ButtonRead": "Читать",
|
"ButtonRead": "Читать",
|
||||||
@@ -56,6 +57,7 @@
|
|||||||
"HeaderCollection": "Коллекция",
|
"HeaderCollection": "Коллекция",
|
||||||
"HeaderCollectionItems": "Элементы коллекции",
|
"HeaderCollectionItems": "Элементы коллекции",
|
||||||
"HeaderConnectionStatus": "Состояние подключения",
|
"HeaderConnectionStatus": "Состояние подключения",
|
||||||
|
"HeaderDataSettings": "Настройки данных",
|
||||||
"HeaderDetails": "Подробности",
|
"HeaderDetails": "Подробности",
|
||||||
"HeaderDownloads": "Загрузки",
|
"HeaderDownloads": "Загрузки",
|
||||||
"HeaderEbookFiles": "Файлы e-книг",
|
"HeaderEbookFiles": "Файлы e-книг",
|
||||||
@@ -82,11 +84,13 @@
|
|||||||
"HeaderTableOfContents": "Содержание",
|
"HeaderTableOfContents": "Содержание",
|
||||||
"HeaderUserInterfaceSettings": "Настройки интерфейса",
|
"HeaderUserInterfaceSettings": "Настройки интерфейса",
|
||||||
"HeaderYourStats": "Ваша статистика",
|
"HeaderYourStats": "Ваша статистика",
|
||||||
|
"LabelAddToPlaylist": "Добавить в плейлист",
|
||||||
"LabelAdded": "Добавили",
|
"LabelAdded": "Добавили",
|
||||||
"LabelAddedAt": "Дата добавления",
|
"LabelAddedAt": "Дата добавления",
|
||||||
"LabelAddToPlaylist": "Добавить в плейлист",
|
|
||||||
"LabelAll": "Все",
|
"LabelAll": "Все",
|
||||||
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
|
"LabelAllowSeekingOnMediaControls": "Разрешить перемотку элементами управления мультимедиа",
|
||||||
|
"LabelAlways": "Всегда",
|
||||||
|
"LabelAskConfirmation": "Запросить подтверждение",
|
||||||
"LabelAuthor": "Автор",
|
"LabelAuthor": "Автор",
|
||||||
"LabelAuthorFirstLast": "Автор (Имя Фамилия)",
|
"LabelAuthorFirstLast": "Автор (Имя Фамилия)",
|
||||||
"LabelAuthorLastFirst": "Автор (Фамилия, Имя)",
|
"LabelAuthorLastFirst": "Автор (Фамилия, Имя)",
|
||||||
@@ -98,15 +102,15 @@
|
|||||||
"LabelAutoSleepTimerAutoRewindHelp": "Когда таймер сна закончится, то позиция воспроизведения будет отмотана назад.",
|
"LabelAutoSleepTimerAutoRewindHelp": "Когда таймер сна закончится, то позиция воспроизведения будет отмотана назад.",
|
||||||
"LabelAutoSleepTimerHelp": "Если медиа воспроизводится между указанными началом и окончанием, таймер сна будет включаться автоматически.",
|
"LabelAutoSleepTimerHelp": "Если медиа воспроизводится между указанными началом и окончанием, таймер сна будет включаться автоматически.",
|
||||||
"LabelBooks": "Книги",
|
"LabelBooks": "Книги",
|
||||||
"LabelChapters": "Главы",
|
|
||||||
"LabelChapterTrack": "Трек главы",
|
"LabelChapterTrack": "Трек главы",
|
||||||
|
"LabelChapters": "Главы",
|
||||||
"LabelClosePlayer": "Закрыть проигрыватель",
|
"LabelClosePlayer": "Закрыть проигрыватель",
|
||||||
"LabelCollapseSeries": "Свернуть серии",
|
"LabelCollapseSeries": "Свернуть серии",
|
||||||
"LabelComplete": "Завершить",
|
"LabelComplete": "Завершить",
|
||||||
"LabelContinueBooks": "Продолжить",
|
"LabelContinueBooks": "Продолжить",
|
||||||
"LabelContinueEpisodes": "Продолжить эпизоды",
|
"LabelContinueEpisodes": "Продолжить эпизоды",
|
||||||
"LabelContinueListening": "Продолжить слушать",
|
"LabelContinueListening": "Продолжить слушать",
|
||||||
"LabelContinueReading": "Continue Reading",
|
"LabelContinueReading": "Продолжить чтение",
|
||||||
"LabelContinueSeries": "Продолжить серии",
|
"LabelContinueSeries": "Продолжить серии",
|
||||||
"LabelCustomTime": "Пользовательское время",
|
"LabelCustomTime": "Пользовательское время",
|
||||||
"LabelDescription": "Описание",
|
"LabelDescription": "Описание",
|
||||||
@@ -119,6 +123,7 @@
|
|||||||
"LabelDisableVibrateOnResetHelp": "Когда таймер сна будет сброшен, ваше устройство будет вибрировать. Включите этот параметр, чтобы не вибрировать при сбросе таймера сна.",
|
"LabelDisableVibrateOnResetHelp": "Когда таймер сна будет сброшен, ваше устройство будет вибрировать. Включите этот параметр, чтобы не вибрировать при сбросе таймера сна.",
|
||||||
"LabelDiscover": "Не начато",
|
"LabelDiscover": "Не начато",
|
||||||
"LabelDownload": "Скачать",
|
"LabelDownload": "Скачать",
|
||||||
|
"LabelDownloadUsingCellular": "Загрузка с помощью сотовой связи",
|
||||||
"LabelDownloaded": "Загружено",
|
"LabelDownloaded": "Загружено",
|
||||||
"LabelDuration": "Длина",
|
"LabelDuration": "Длина",
|
||||||
"LabelEbook": "E-книга",
|
"LabelEbook": "E-книга",
|
||||||
@@ -137,6 +142,7 @@
|
|||||||
"LabelFilename": "Имя файла",
|
"LabelFilename": "Имя файла",
|
||||||
"LabelFinished": "Закончен",
|
"LabelFinished": "Закончен",
|
||||||
"LabelFolder": "Папка",
|
"LabelFolder": "Папка",
|
||||||
|
"LabelFontBoldness": "Жирность шрифта",
|
||||||
"LabelFontScale": "Масштаб шрифта",
|
"LabelFontScale": "Масштаб шрифта",
|
||||||
"LabelGenre": "Жанр",
|
"LabelGenre": "Жанр",
|
||||||
"LabelGenres": "Жанры",
|
"LabelGenres": "Жанры",
|
||||||
@@ -146,18 +152,18 @@
|
|||||||
"LabelHeavy": "Тяжелый",
|
"LabelHeavy": "Тяжелый",
|
||||||
"LabelHigh": "Сильно",
|
"LabelHigh": "Сильно",
|
||||||
"LabelHost": "Хост",
|
"LabelHost": "Хост",
|
||||||
"LabelIncomplete": "Не завершен",
|
|
||||||
"LabelInProgress": "В процессе",
|
"LabelInProgress": "В процессе",
|
||||||
|
"LabelIncomplete": "Не завершен",
|
||||||
"LabelInternalAppStorage": "Внутреннее хранилище приложений",
|
"LabelInternalAppStorage": "Внутреннее хранилище приложений",
|
||||||
"LabelJumpBackwardsTime": "Перемотка назад",
|
"LabelJumpBackwardsTime": "Перемотка назад",
|
||||||
"LabelJumpForwardsTime": "Перемотка вперед",
|
"LabelJumpForwardsTime": "Перемотка вперед",
|
||||||
"LabelLanguage": "Язык",
|
"LabelLanguage": "Язык",
|
||||||
"LabelLayout": "Layout",
|
"LabelLayout": "Макет",
|
||||||
"LabelLayoutAuto": "Auto",
|
"LabelLayoutAuto": "Авто",
|
||||||
"LabelLayoutSinglePage": "Single page",
|
"LabelLayoutSinglePage": "Одна страница",
|
||||||
"LabelLight": "Подсветка",
|
"LabelLight": "Подсветка",
|
||||||
"LabelLineSpacing": "Межстрочный интервал",
|
"LabelLineSpacing": "Межстрочный интервал",
|
||||||
"LabelListenAgain": "Слушать снова",
|
"LabelListenAgain": "Послушать снова",
|
||||||
"LabelLocalBooks": "Локальные книги",
|
"LabelLocalBooks": "Локальные книги",
|
||||||
"LabelLocalPodcasts": "Локальные подкасты",
|
"LabelLocalPodcasts": "Локальные подкасты",
|
||||||
"LabelLockOrientation": "Блокировка ориентации",
|
"LabelLockOrientation": "Блокировка ориентации",
|
||||||
@@ -170,8 +176,13 @@
|
|||||||
"LabelName": "Имя",
|
"LabelName": "Имя",
|
||||||
"LabelNarrator": "Читает",
|
"LabelNarrator": "Читает",
|
||||||
"LabelNarrators": "Чтецы",
|
"LabelNarrators": "Чтецы",
|
||||||
|
"LabelNavigateWithVolume": "Навигация с помощью клавиш регулировки громкости",
|
||||||
|
"LabelNavigateWithVolumeDisabled": "Выключить",
|
||||||
|
"LabelNavigateWithVolumeEnabled": "Включён",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "Зеркало",
|
||||||
|
"LabelNever": "Никогда",
|
||||||
"LabelNewestAuthors": "Новые авторы",
|
"LabelNewestAuthors": "Новые авторы",
|
||||||
"LabelNewestEpisodes": "Newest Episodes",
|
"LabelNewestEpisodes": "Новые эпизоды",
|
||||||
"LabelNo": "Нет",
|
"LabelNo": "Нет",
|
||||||
"LabelNotFinished": "Не завершено",
|
"LabelNotFinished": "Не завершено",
|
||||||
"LabelNotStarted": "Не запущено",
|
"LabelNotStarted": "Не запущено",
|
||||||
@@ -188,16 +199,17 @@
|
|||||||
"LabelProgress": "Прогресс",
|
"LabelProgress": "Прогресс",
|
||||||
"LabelPubDate": "Дата публикации",
|
"LabelPubDate": "Дата публикации",
|
||||||
"LabelPublishYear": "Год публикации",
|
"LabelPublishYear": "Год публикации",
|
||||||
"LabelRead": "Читать",
|
|
||||||
"LabelReadAgain": "Read Again",
|
|
||||||
"LabelRecentlyAdded": "Недавно добавленные",
|
|
||||||
"LabelRecentSeries": "Недавние серии",
|
|
||||||
"LabelRemoveFromPlaylist": "Remove from Playlist",
|
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Пользовательский Email владельца",
|
"LabelRSSFeedCustomOwnerEmail": "Пользовательский Email владельца",
|
||||||
"LabelRSSFeedCustomOwnerName": "Пользовательское Имя владельца",
|
"LabelRSSFeedCustomOwnerName": "Пользовательское Имя владельца",
|
||||||
"LabelRSSFeedPreventIndexing": "Запретить индексирование",
|
"LabelRSSFeedPreventIndexing": "Запретить индексирование",
|
||||||
"LabelRSSFeedSlug": "Встроить RSS-канал",
|
"LabelRSSFeedSlug": "Встроить RSS-канал",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
|
"LabelRandomly": "Случайно",
|
||||||
|
"LabelRead": "Читать",
|
||||||
|
"LabelReadAgain": "Читать снова",
|
||||||
|
"LabelRecentSeries": "Недавние серии",
|
||||||
|
"LabelRecentlyAdded": "Недавно добавленные",
|
||||||
|
"LabelRemoveFromPlaylist": "Удалить из плейлиста",
|
||||||
|
"LabelScaleElapsedTimeBySpeed": "Масштабирование затраченного времени по скорости",
|
||||||
"LabelSeason": "Сезон",
|
"LabelSeason": "Сезон",
|
||||||
"LabelSelectADevice": "Выбор девайса",
|
"LabelSelectADevice": "Выбор девайса",
|
||||||
"LabelSeries": "Серия",
|
"LabelSeries": "Серия",
|
||||||
@@ -219,6 +231,7 @@
|
|||||||
"LabelStatsMinutes": "минут",
|
"LabelStatsMinutes": "минут",
|
||||||
"LabelStatsMinutesListening": "Минут прослушано",
|
"LabelStatsMinutesListening": "Минут прослушано",
|
||||||
"LabelStatsWeekListening": "Прослушано за неделю",
|
"LabelStatsWeekListening": "Прослушано за неделю",
|
||||||
|
"LabelStreamingUsingCellular": "Потоковая передача с использованием сотовой связи",
|
||||||
"LabelTag": "Тег",
|
"LabelTag": "Тег",
|
||||||
"LabelTags": "Теги",
|
"LabelTags": "Теги",
|
||||||
"LabelTheme": "Тема",
|
"LabelTheme": "Тема",
|
||||||
@@ -226,6 +239,7 @@
|
|||||||
"LabelThemeLight": "Светлая",
|
"LabelThemeLight": "Светлая",
|
||||||
"LabelTimeRemaining": "{0} осталось",
|
"LabelTimeRemaining": "{0} осталось",
|
||||||
"LabelTitle": "Название",
|
"LabelTitle": "Название",
|
||||||
|
"LabelTotalSize": "Общий размер",
|
||||||
"LabelTotalTrack": "Всего треков",
|
"LabelTotalTrack": "Всего треков",
|
||||||
"LabelTracks": "Треков",
|
"LabelTracks": "Треков",
|
||||||
"LabelType": "Тип",
|
"LabelType": "Тип",
|
||||||
@@ -245,8 +259,10 @@
|
|||||||
"MessageConfirmDeleteLocalEpisode": "Удалить локальный эпизод \"{0}\" с Вашего устройства? Файл на сервере не будет затронут.",
|
"MessageConfirmDeleteLocalEpisode": "Удалить локальный эпизод \"{0}\" с Вашего устройства? Файл на сервере не будет затронут.",
|
||||||
"MessageConfirmDeleteLocalFiles": "Удалить локальные файлы этого элемента с вашего устройства? Это не повлияет на файлы на сервере и ваш прогресс.",
|
"MessageConfirmDeleteLocalFiles": "Удалить локальные файлы этого элемента с вашего устройства? Это не повлияет на файлы на сервере и ваш прогресс.",
|
||||||
"MessageConfirmDiscardProgress": "Вы уверены, что хотите сбросить свой прогресс?",
|
"MessageConfirmDiscardProgress": "Вы уверены, что хотите сбросить свой прогресс?",
|
||||||
|
"MessageConfirmDownloadUsingCellular": "Вы собираетесь выполнить загрузку с помощью сотовых данных. Это может включать плату за передачу данных оператором. Хотите продолжить?",
|
||||||
"MessageConfirmMarkAsFinished": "Вы уверены, что хотите пометить этот элемент как завершенный?",
|
"MessageConfirmMarkAsFinished": "Вы уверены, что хотите пометить этот элемент как завершенный?",
|
||||||
"MessageConfirmRemoveBookmark": "Вы уверены, что хотите удалить закладку?",
|
"MessageConfirmRemoveBookmark": "Вы уверены, что хотите удалить закладку?",
|
||||||
|
"MessageConfirmStreamingUsingCellular": "Вы собираетесь вести потоковую передачу с использованием сотовых данных. Это может включать плату за передачу данных оператором. Хотите продолжить?",
|
||||||
"MessageDiscardProgress": "Отбросить прогресс",
|
"MessageDiscardProgress": "Отбросить прогресс",
|
||||||
"MessageDownloadCompleteProcessing": "Загрузка завершена. Обработка...",
|
"MessageDownloadCompleteProcessing": "Загрузка завершена. Обработка...",
|
||||||
"MessageDownloading": "Загрузка...",
|
"MessageDownloading": "Загрузка...",
|
||||||
@@ -254,7 +270,7 @@
|
|||||||
"MessageEpisodesQueuedForDownload": "{0} Эпизод(ов) запланировано для закачки",
|
"MessageEpisodesQueuedForDownload": "{0} Эпизод(ов) запланировано для закачки",
|
||||||
"MessageFeedURLWillBe": "URL канала будет {0}",
|
"MessageFeedURLWillBe": "URL канала будет {0}",
|
||||||
"MessageFetching": "Завершается...",
|
"MessageFetching": "Завершается...",
|
||||||
"MessageFollowTheProjectOnGithub": "Следите за проектом на Github",
|
"MessageFollowTheProjectOnGithub": "Следите за проектом на GitHub",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Загрузка элемента завершена, но не удалось создать элемент библиотеки",
|
"MessageItemDownloadCompleteFailedToCreate": "Загрузка элемента завершена, но не удалось создать элемент библиотеки",
|
||||||
"MessageLoading": "Загрузка...",
|
"MessageLoading": "Загрузка...",
|
||||||
"MessageLoadingServerData": "Загрузка данных сервера...",
|
"MessageLoadingServerData": "Загрузка данных сервера...",
|
||||||
@@ -272,25 +288,27 @@
|
|||||||
"MessageNoMediaFolders": "Нет папок мультимедиа",
|
"MessageNoMediaFolders": "Нет папок мультимедиа",
|
||||||
"MessageNoNetworkConnection": "Нет подключения к сети",
|
"MessageNoNetworkConnection": "Нет подключения к сети",
|
||||||
"MessageNoPodcastsFound": "Подкасты не найдены",
|
"MessageNoPodcastsFound": "Подкасты не найдены",
|
||||||
"MessageNoSeries": "No series",
|
"MessageNoSeries": "Нет серии",
|
||||||
"MessageNoUpdatesWereNecessary": "Обновления не требовались",
|
"MessageNoUpdatesWereNecessary": "Обновления не требовались",
|
||||||
"MessageNoUserPlaylists": "У вас нет плейлистов",
|
"MessageNoUserPlaylists": "У вас нет плейлистов",
|
||||||
"MessageReportBugsAndContribute": "Сообщайте об ошибках, запрашивайте функции и вносите свой вклад на",
|
"MessageReportBugsAndContribute": "Сообщайте об ошибках, запрашивайте функции и вносите свой вклад на",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Сокет подключен по лимитной сотовой связи",
|
"MessageSocketConnectedOverMeteredCellular": "Сокет подключен по лимитной сотовой связи",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Сокет подключен через лимитный wi-fi",
|
"MessageSocketConnectedOverMeteredWifi": "Сокет подключен через лимитный Wi-Fi",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Сокет подключен по безлимитной сотовой связи",
|
"MessageSocketConnectedOverUnmeteredCellular": "Сокет подключен по безлимитной сотовой связи",
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Сокет подключен через безлимитный wi-fi",
|
"MessageSocketConnectedOverUnmeteredWifi": "Сокет подключен через безлимитный Wi-Fi",
|
||||||
"MessageSocketNotConnected": "Сокет не подключен",
|
"MessageSocketNotConnected": "Сокет не подключен",
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Предупреждение: Большинству приложений подкастов потребуется, чтобы URL-адрес RSS-канала использовал HTTPS",
|
"NoteRSSFeedPodcastAppsHttps": "Предупреждение: Большинству приложений подкастов потребуется, чтобы URL-адрес RSS-канала использовал HTTPS",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Предупреждение: 1 или более эпизодов не имеют даты публикации. Некоторые приложения для подкастов требуют этого.",
|
"NoteRSSFeedPodcastAppsPubDate": "Предупреждение: 1 или более эпизодов не имеют даты публикации. Некоторые приложения для подкастов требуют этого.",
|
||||||
"ToastBookmarkCreateFailed": "Не удалось создать закладку",
|
"ToastBookmarkCreateFailed": "Не удалось создать закладку",
|
||||||
"ToastBookmarkRemoveFailed": "Не удалось удалить закладку",
|
"ToastBookmarkRemoveFailed": "Не удалось удалить закладку",
|
||||||
"ToastBookmarkUpdateFailed": "Не удалось обновить закладку",
|
"ToastBookmarkUpdateFailed": "Не удалось обновить закладку",
|
||||||
|
"ToastDownloadNotAllowedOnCellular": "Загрузка данных по сотовой сети запрещена",
|
||||||
"ToastItemMarkedAsFinishedFailed": "Не удалось пометить как Завершенный",
|
"ToastItemMarkedAsFinishedFailed": "Не удалось пометить как Завершенный",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "Не удалось пометить как Незавершенный",
|
"ToastItemMarkedAsNotFinishedFailed": "Не удалось пометить как Незавершенный",
|
||||||
"ToastPlaylistCreateFailed": "Не удалось создать плейлист",
|
"ToastPlaylistCreateFailed": "Не удалось создать плейлист",
|
||||||
"ToastPodcastCreateFailed": "Не удалось создать подкаст",
|
"ToastPodcastCreateFailed": "Не удалось создать подкаст",
|
||||||
"ToastPodcastCreateSuccess": "Подкаст успешно создан",
|
"ToastPodcastCreateSuccess": "Подкаст успешно создан",
|
||||||
"ToastRSSFeedCloseFailed": "Не удалось закрыть RSS-канал",
|
"ToastRSSFeedCloseFailed": "Не удалось закрыть RSS-канал",
|
||||||
"ToastRSSFeedCloseSuccess": "RSS-канал закрыт"
|
"ToastRSSFeedCloseSuccess": "RSS-канал закрыт",
|
||||||
}
|
"ToastStreamingNotAllowedOnCellular": "Потоковая передача данных по сотовой сети запрещена"
|
||||||
|
}
|
||||||
|
|||||||
+317
@@ -0,0 +1,317 @@
|
|||||||
|
{
|
||||||
|
"ButtonAdd": "Dodaj",
|
||||||
|
"ButtonAddNewServer": "Dodaj nov strežnik",
|
||||||
|
"ButtonAuthors": "Avtorji",
|
||||||
|
"ButtonBack": "Nazaj",
|
||||||
|
"ButtonCancel": "Prekliči",
|
||||||
|
"ButtonCancelTimer": "Prekliči časovnik",
|
||||||
|
"ButtonClearFilter": "Počisti filter",
|
||||||
|
"ButtonCloseFeed": "Zapri vir",
|
||||||
|
"ButtonCollections": "Zbirke",
|
||||||
|
"ButtonConnect": "Poveži",
|
||||||
|
"ButtonConnectToServer": "Poveži se na strežnik",
|
||||||
|
"ButtonCreate": "Ustvari",
|
||||||
|
"ButtonCreateBookmark": "Ustvari zaznamek",
|
||||||
|
"ButtonCreateNewPlaylist": "Ustvari nov seznam predvajanja",
|
||||||
|
"ButtonDelete": "Izbriši",
|
||||||
|
"ButtonDeleteLocalEpisode": "Izbriši lokalno epizodo",
|
||||||
|
"ButtonDeleteLocalFile": "Izbriši lokalno datoteko",
|
||||||
|
"ButtonDeleteLocalItem": "Izbriši lokalni element",
|
||||||
|
"ButtonDisableAutoTimer": "Onemogoči samodejni časovnik",
|
||||||
|
"ButtonDisconnect": "Prekini povezavo",
|
||||||
|
"ButtonGoToWebClient": "Pojdi na spletno stran klienta",
|
||||||
|
"ButtonHistory": "Zgodovina",
|
||||||
|
"ButtonHome": "Domov",
|
||||||
|
"ButtonIssues": "Težave",
|
||||||
|
"ButtonLatest": "Najnovejše",
|
||||||
|
"ButtonLibrary": "Knjižnica",
|
||||||
|
"ButtonLocalMedia": "Lokalni mediji",
|
||||||
|
"ButtonManageLocalFiles": "Upravljanje lokalnih datotek",
|
||||||
|
"ButtonNewFolder": "Nova mapa",
|
||||||
|
"ButtonNextEpisode": "Naslednja epizoda",
|
||||||
|
"ButtonOpenFeed": "Odpri vir",
|
||||||
|
"ButtonOverride": "Preglasi",
|
||||||
|
"ButtonPause": "Premor",
|
||||||
|
"ButtonPlay": "Predvajaj",
|
||||||
|
"ButtonPlayEpisode": "Predvajan epizodo",
|
||||||
|
"ButtonPlaying": "Predvajam",
|
||||||
|
"ButtonPlaylists": "Seznami predvajanj",
|
||||||
|
"ButtonRead": "Preberi",
|
||||||
|
"ButtonRemove": "Odstrani",
|
||||||
|
"ButtonRemoveFromServer": "Odstrani iz strežnika",
|
||||||
|
"ButtonSave": "Shrani",
|
||||||
|
"ButtonSaveOrder": "Shrani vrstni red",
|
||||||
|
"ButtonSearch": "Poišči",
|
||||||
|
"ButtonSendEbookToDevice": "Pošlji e-knjigo v napravo",
|
||||||
|
"ButtonSeries": "Serije",
|
||||||
|
"ButtonSetTimer": "Nastavi časovnik",
|
||||||
|
"ButtonStream": "Pretoči",
|
||||||
|
"ButtonSubmit": "Potrdi",
|
||||||
|
"ButtonSwitchServerUser": "Preklopi strežnik/uporabnik",
|
||||||
|
"ButtonUserStats": "Uporabniška statistika",
|
||||||
|
"ButtonYes": "Da",
|
||||||
|
"HeaderAccount": "Račun",
|
||||||
|
"HeaderAdvanced": "Napredno",
|
||||||
|
"HeaderAudioTracks": "Zvočni posnetki",
|
||||||
|
"HeaderChapters": "Poglavja",
|
||||||
|
"HeaderCollection": "Zbirka",
|
||||||
|
"HeaderCollectionItems": "Elementi zbirke",
|
||||||
|
"HeaderConnectionStatus": "Stanje povezave",
|
||||||
|
"HeaderDataSettings": "Podatkovne nastavitve",
|
||||||
|
"HeaderDetails": "Podrobnosti",
|
||||||
|
"HeaderDownloads": "Prenosi",
|
||||||
|
"HeaderEbookFiles": "Datoteke e-knjig",
|
||||||
|
"HeaderEpisodes": "Epizode",
|
||||||
|
"HeaderEreaderSettings": "Nastavitve ebralnika",
|
||||||
|
"HeaderLatestEpisodes": "Zadnje epizode",
|
||||||
|
"HeaderLibraries": "Knjižnice",
|
||||||
|
"HeaderLocalFolders": "Lokalne mape",
|
||||||
|
"HeaderLocalLibraryItems": "Predmeti lokalne knjižnice",
|
||||||
|
"HeaderNewPlaylist": "Nov seznam predvajanja",
|
||||||
|
"HeaderOpenRSSFeed": "Odpri vir RSS",
|
||||||
|
"HeaderPlaybackSettings": "Nastavitve predvajanja",
|
||||||
|
"HeaderPlaylist": "Seznam predvajanja",
|
||||||
|
"HeaderPlaylistItems": "Elementi seznama predvajanja",
|
||||||
|
"HeaderRSSFeed": "RSS vir",
|
||||||
|
"HeaderRSSFeedGeneral": "RSS podrobnosti",
|
||||||
|
"HeaderRSSFeedIsOpen": "Vir RSS je odprt",
|
||||||
|
"HeaderSelectDownloadLocation": "Izberi mesto prenosa",
|
||||||
|
"HeaderSettings": "Nastavitve",
|
||||||
|
"HeaderSleepTimer": "Časovnik za izklop",
|
||||||
|
"HeaderSleepTimerSettings": "Nastavitve časovnika za izklop",
|
||||||
|
"HeaderStatsMinutesListeningChart": "Minut poslušanja (zadnjih 7 dni)",
|
||||||
|
"HeaderStatsRecentSessions": "Nedavne seje",
|
||||||
|
"HeaderTableOfContents": "Kazalo",
|
||||||
|
"HeaderUserInterfaceSettings": "Nastavitve uporabniškega vmesnika",
|
||||||
|
"HeaderYourStats": "Tvoja statistika",
|
||||||
|
"LabelAddToPlaylist": "Dodaj na seznam predvajanja",
|
||||||
|
"LabelAdded": "Dodano",
|
||||||
|
"LabelAddedAt": "Dodano ob",
|
||||||
|
"LabelAll": "Vse",
|
||||||
|
"LabelAllowSeekingOnMediaControls": "Dovoli premikanje položaja v kontrolnikih za obvestila o medijih",
|
||||||
|
"LabelAlways": "Vedno",
|
||||||
|
"LabelAskConfirmation": "Prosi za potrditev",
|
||||||
|
"LabelAuthor": "Avtor",
|
||||||
|
"LabelAuthorFirstLast": "Avtor (ime priimek)",
|
||||||
|
"LabelAuthorLastFirst": "Avtor (priimek, ime)",
|
||||||
|
"LabelAuthors": "Avtorji",
|
||||||
|
"LabelAutoDownloadEpisodes": "Samodejni prenos epizod",
|
||||||
|
"LabelAutoRewindTime": "Čas samodejnega previjanja nazaj",
|
||||||
|
"LabelAutoSleepTimer": "Samodejni časovnik za spanje",
|
||||||
|
"LabelAutoSleepTimerAutoRewind": "Samodejni časovnik za spanje samodejnega previjanja nazaj",
|
||||||
|
"LabelAutoSleepTimerAutoRewindHelp": "Ko se samodejni časovnik za spanje konča, bo ponovno predvajanje elementa samodejno previlo na zadnji položaj.",
|
||||||
|
"LabelAutoSleepTimerHelp": "Pri predvajanju medijev med določenim začetnim in končnim časom se samodejno zažene časovnik spanja.",
|
||||||
|
"LabelBooks": "knjig",
|
||||||
|
"LabelChapterTrack": "Posnetek poglavja",
|
||||||
|
"LabelChapters": "Poglavja",
|
||||||
|
"LabelClosePlayer": "Zapri predvajalnik",
|
||||||
|
"LabelCollapseSeries": "Strni serije",
|
||||||
|
"LabelComplete": "Končano",
|
||||||
|
"LabelContinueBooks": "Nadaljuj s knjigami",
|
||||||
|
"LabelContinueEpisodes": "Nadaljuj z epizodami",
|
||||||
|
"LabelContinueListening": "Nadaljuj poslušanje",
|
||||||
|
"LabelContinueReading": "Nadaljuj branje",
|
||||||
|
"LabelContinueSeries": "Nadaljuj s serijo",
|
||||||
|
"LabelCustomTime": "Čas po meri",
|
||||||
|
"LabelDescription": "Opis",
|
||||||
|
"LabelDisableAudioFadeOut": "Onemogoči postopno utišanje zvoka",
|
||||||
|
"LabelDisableAudioFadeOutHelp": "Glasnost zvoka se bo začela zmanjševati, ko je na časovniku izklopa manj kot 1 minuta. Omogočite to nastavitev, da se ne zmanjšuje.",
|
||||||
|
"LabelDisableAutoRewind": "Onemogoči samodejno previjanje nazaj",
|
||||||
|
"LabelDisableShakeToReset": "Onemogoči tresenje za ponastavitev",
|
||||||
|
"LabelDisableShakeToResetHelp": "Če stresete napravo, medtem ko časovnik teče ALI v 2 minutah po izteku časovnika, se ponastavi časovnik spanja. Omogočite to nastavitev, da onemogočite tresenje za ponastavitev.",
|
||||||
|
"LabelDisableVibrateOnReset": "Onemogoči vibriranje ob ponastavitvi",
|
||||||
|
"LabelDisableVibrateOnResetHelp": "Ko se časovnik spanja ponastavi, bo vaša naprava vibrirala. Omogočite to nastavitev, da ne vibrira, ko se časovnik spanja ponastavi.",
|
||||||
|
"LabelDiscover": "Odkrij",
|
||||||
|
"LabelDownload": "Prenos",
|
||||||
|
"LabelDownloadUsingCellular": "Prenos prek mobilnega omrežja",
|
||||||
|
"LabelDownloaded": "Preneseno",
|
||||||
|
"LabelDuration": "Trajanje",
|
||||||
|
"LabelEbook": "E-knjiga",
|
||||||
|
"LabelEbooks": "E-knjige",
|
||||||
|
"LabelEnable": "Omogoči",
|
||||||
|
"LabelEnableMp3IndexSeeking": "Omogoči iskanje po indeksu mp3",
|
||||||
|
"LabelEnableMp3IndexSeekingHelp": "To nastavitev naj bo omogočena le, če imate datoteke mp3, ki ne iščejo pravilno. Netočno iskanje je najverjetneje posledica datotek MP3 s spremenljivo hitrostjo (VBR). Ta nastavitev bo vsilila iskanje po indeksu, pri katerem se med branjem datoteke gradi preslikava časa v podatke. V nekaterih primerih bo pri velikih datotekah MP3 prišlo do zakasnitve pri iskanju proti koncu datoteke.",
|
||||||
|
"LabelEnd": "Konec",
|
||||||
|
"LabelEndOfChapter": "Konec poglavja",
|
||||||
|
"LabelEndTime": "Končni čas",
|
||||||
|
"LabelEpisode": "Epizoda",
|
||||||
|
"LabelFeedURL": "URL vir",
|
||||||
|
"LabelFile": "Datoteka",
|
||||||
|
"LabelFileBirthtime": "Čas ustvarjanja datoteke",
|
||||||
|
"LabelFileModified": "Datoteke spremenjena",
|
||||||
|
"LabelFilename": "Ime datoteke",
|
||||||
|
"LabelFinished": "Zaključeno",
|
||||||
|
"LabelFolder": "Mapa",
|
||||||
|
"LabelFontBoldness": "Krepkost pisave",
|
||||||
|
"LabelFontScale": "Merilo pisave",
|
||||||
|
"LabelGenre": "Žanr",
|
||||||
|
"LabelGenres": "Žanri",
|
||||||
|
"LabelHapticFeedback": "Haptična povratna informacija",
|
||||||
|
"LabelHasEbook": "Ima e-knjigo",
|
||||||
|
"LabelHasSupplementaryEbook": "Ima dodatno e-knjigo",
|
||||||
|
"LabelHeavy": "Težka",
|
||||||
|
"LabelHigh": "Visoka",
|
||||||
|
"LabelHost": "Gostitelj",
|
||||||
|
"LabelInProgress": "V teku",
|
||||||
|
"LabelIncomplete": "Nedokončano",
|
||||||
|
"LabelInternalAppStorage": "Notranja shramba aplikacij",
|
||||||
|
"LabelJumpBackwardsTime": "Skoči čas nazaj",
|
||||||
|
"LabelJumpForwardsTime": "Preskoči čas naprej",
|
||||||
|
"LabelLanguage": "Jezik",
|
||||||
|
"LabelLayout": "Postavitev",
|
||||||
|
"LabelLayoutAuto": "Samodejno",
|
||||||
|
"LabelLayoutSinglePage": "Ena stran",
|
||||||
|
"LabelLight": "Svetlo",
|
||||||
|
"LabelLineSpacing": "Razmik med vrsticami",
|
||||||
|
"LabelListenAgain": "Poslušaj znova",
|
||||||
|
"LabelLocalBooks": "Lokalne knjige",
|
||||||
|
"LabelLocalPodcasts": "Lokalni podcasti",
|
||||||
|
"LabelLockOrientation": "Zakleni usmerjenost",
|
||||||
|
"LabelLockPlayer": "Zakleni predvajalnik",
|
||||||
|
"LabelLow": "Nizko",
|
||||||
|
"LabelMediaType": "Vrsta medija",
|
||||||
|
"LabelMedium": "Srednje",
|
||||||
|
"LabelMore": "Več",
|
||||||
|
"LabelMoreInfo": "Več informacij",
|
||||||
|
"LabelName": "Naziv",
|
||||||
|
"LabelNarrator": "Bralec",
|
||||||
|
"LabelNarrators": "Bralci",
|
||||||
|
"LabelNavigateWithVolume": "Krmarite s tipkami za glasnost",
|
||||||
|
"LabelNavigateWithVolumeDisabled": "Izključeno",
|
||||||
|
"LabelNavigateWithVolumeEnabled": "Vključeno",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "Zrcalno",
|
||||||
|
"LabelNever": "Nikoli",
|
||||||
|
"LabelNewestAuthors": "Najnovejši avtorji",
|
||||||
|
"LabelNewestEpisodes": "Najnovejše epizode",
|
||||||
|
"LabelNo": "Ne",
|
||||||
|
"LabelNotFinished": "Ni dokončano",
|
||||||
|
"LabelNotStarted": "Ni zagnano",
|
||||||
|
"LabelOff": "Izključeno",
|
||||||
|
"LabelPassword": "Geslo",
|
||||||
|
"LabelPath": "Pot",
|
||||||
|
"LabelPlaybackDirect": "Neposredno",
|
||||||
|
"LabelPlaybackLocal": "Lokalno",
|
||||||
|
"LabelPlaybackSpeed": "Hitrost predvajanja",
|
||||||
|
"LabelPlaybackTranscode": "Transkodiraj",
|
||||||
|
"LabelPodcast": "Podcast",
|
||||||
|
"LabelPodcasts": "Podcasti",
|
||||||
|
"LabelPreventIndexing": "Preprečite, da bi vaš vir indeksirali imeniki podcastov iTunes in Google",
|
||||||
|
"LabelProgress": "Napredek",
|
||||||
|
"LabelPubDate": "Datum objave",
|
||||||
|
"LabelPublishYear": "Leto izdaje",
|
||||||
|
"LabelRSSFeedCustomOwnerEmail": "E-pošta lastnika po meri",
|
||||||
|
"LabelRSSFeedCustomOwnerName": "Ime lastnika po meri",
|
||||||
|
"LabelRSSFeedPreventIndexing": "Prepreči indeksiranje",
|
||||||
|
"LabelRSSFeedSlug": "Slug RSS vira",
|
||||||
|
"LabelRandomly": "Naključno",
|
||||||
|
"LabelRead": "Preberi",
|
||||||
|
"LabelReadAgain": "Ponovno preberi",
|
||||||
|
"LabelRecentSeries": "Nedavne serije",
|
||||||
|
"LabelRecentlyAdded": "Nedavno dodano",
|
||||||
|
"LabelRemoveFromPlaylist": "Odstrani s seznama predvajanja",
|
||||||
|
"LabelScaleElapsedTimeBySpeed": "Meri pretečeni čas glede na hitrost",
|
||||||
|
"LabelSeason": "Sezona",
|
||||||
|
"LabelSelectADevice": "Izberite napravo",
|
||||||
|
"LabelSeries": "Serije",
|
||||||
|
"LabelServerAddress": "Naslov strežnika",
|
||||||
|
"LabelSetEbookAsPrimary": "Nastavi kot primarno",
|
||||||
|
"LabelSetEbookAsSupplementary": "Nastavi kot dodatno",
|
||||||
|
"LabelShakeSensitivity": "Občutljivost tresenja",
|
||||||
|
"LabelShowAll": "Prikaži vse",
|
||||||
|
"LabelSize": "Velikost",
|
||||||
|
"LabelSleepTimer": "Časovnik za spanje",
|
||||||
|
"LabelStart": "Začetek",
|
||||||
|
"LabelStartTime": "Začetni čas",
|
||||||
|
"LabelStatsBestDay": "Najboljši dan",
|
||||||
|
"LabelStatsDailyAverage": "Dnevno povprečje",
|
||||||
|
"LabelStatsDays": "Dnevi",
|
||||||
|
"LabelStatsDaysListened": "Dnevi poslušanja",
|
||||||
|
"LabelStatsInARow": "v vrsti",
|
||||||
|
"LabelStatsItemsFinished": "Končani elementi",
|
||||||
|
"LabelStatsMinutes": "minute",
|
||||||
|
"LabelStatsMinutesListening": "Minut poslušanja",
|
||||||
|
"LabelStatsWeekListening": "Tednov poslušanja",
|
||||||
|
"LabelStreamingUsingCellular": "Pretakanje prek mobilnega omrežja",
|
||||||
|
"LabelTag": "Oznaka",
|
||||||
|
"LabelTags": "Oznake",
|
||||||
|
"LabelTheme": "Tema",
|
||||||
|
"LabelThemeDark": "Temna",
|
||||||
|
"LabelThemeLight": "Svetla",
|
||||||
|
"LabelTimeRemaining": "Še {0}",
|
||||||
|
"LabelTitle": "Naslov",
|
||||||
|
"LabelTotalSize": "Skupna velikost",
|
||||||
|
"LabelTotalTrack": "Skupaj posnetkov",
|
||||||
|
"LabelTracks": "Posnetki",
|
||||||
|
"LabelType": "Vrsta",
|
||||||
|
"LabelUnlockPlayer": "Odkleni predvajalnik",
|
||||||
|
"LabelUseBookshelfView": "Uporabi pogled knjižne police",
|
||||||
|
"LabelUser": "Uporabnik",
|
||||||
|
"LabelUsername": "Uporabniško ime",
|
||||||
|
"LabelVeryHigh": "Zelo visoko",
|
||||||
|
"LabelVeryLow": "Zelo nizko",
|
||||||
|
"LabelYourBookmarks": "Tvoji zaznamki",
|
||||||
|
"LabelYourProgress": "Tvoj napredek",
|
||||||
|
"MessageAndroid10Downloads": "Android 10 in starejši bodo za prenose uporabljali notranji pomnilnik aplikacij.",
|
||||||
|
"MessageAttemptingServerConnection": "Poskus povezave s strežnikom...",
|
||||||
|
"MessageAudiobookshelfServerNotConnected": "Strežnik Audiobookshelf ni povezan",
|
||||||
|
"MessageAudiobookshelfServerRequired": "<strong>Pomembno!</strong> Ta aplikacija je zasnovana za delo s strežnikom Audiobookshelf, ki ga gostite vi ali nekdo, ki ga poznate. Ta aplikacija ne ponuja nobene vsebine.",
|
||||||
|
"MessageBookshelfEmpty": "Knjižna polica prazna",
|
||||||
|
"MessageConfirmDeleteLocalEpisode": "Ali želite odstraniti lokalno epizodo \"{0}\" iz svoje naprave? Datoteka na strežniku ne bo prizadeta.",
|
||||||
|
"MessageConfirmDeleteLocalFiles": "Želite odstraniti lokalne datoteke tega elementa iz naprave? Datoteke na strežniku in vaš napredek ne bodo prizadeti.",
|
||||||
|
"MessageConfirmDiscardProgress": "Ali ste prepričani, da želite ponastaviti svoj napredek?",
|
||||||
|
"MessageConfirmDownloadUsingCellular": "Prenesli boste z uporabo mobilnih podatkov. To lahko vključuje stroške prenosa podatkov. Želite nadaljevati?",
|
||||||
|
"MessageConfirmMarkAsFinished": "Ali ste prepričani, da želite označiti ta element kot dokončan?",
|
||||||
|
"MessageConfirmRemoveBookmark": "Ali ste prepričani, da želite odstraniti zaznamek?",
|
||||||
|
"MessageConfirmStreamingUsingCellular": "Pretakali boste prek mobilnih podatkov. To lahko vključuje stroške prenosa podatkov. Želite nadaljevati?",
|
||||||
|
"MessageDiscardProgress": "Zavrzi napredek",
|
||||||
|
"MessageDownloadCompleteProcessing": "Prenos končan. Obdelujem...",
|
||||||
|
"MessageDownloading": "Prenašanje...",
|
||||||
|
"MessageDownloadingEpisode": "Prenašam epizodo",
|
||||||
|
"MessageEpisodesQueuedForDownload": "{0} epizod v čakalni vrsti za prenos",
|
||||||
|
"MessageFeedURLWillBe": "URL vira bo {0}",
|
||||||
|
"MessageFetching": "Pridobivam...",
|
||||||
|
"MessageFollowTheProjectOnGithub": "Sledite projektu na Githubu",
|
||||||
|
"MessageItemDownloadCompleteFailedToCreate": "Prenos elementa je končan, vendar elementa knjižnice ni bilo mogoče ustvariti",
|
||||||
|
"MessageLoading": "Nalagam...",
|
||||||
|
"MessageLoadingServerData": "Nalaganje podatkov strežnika...",
|
||||||
|
"MessageMarkAsFinished": "Označi kot dokončano",
|
||||||
|
"MessageMediaLinkedToADifferentServer": "Predstavnost je povezana s strežnikom Audiobookshelf na drugem naslovu ({0}). Napredek bo sinhroniziran, ko bo vzpostavljena povezava s tem naslovom strežnika.",
|
||||||
|
"MessageMediaLinkedToADifferentUser": "Predstavnost je povezana s tem strežnikom, vendar jo je prenesel drug uporabnik. Napredek bo sinhroniziran samo z uporabnikom, ki ga je prenesel.",
|
||||||
|
"MessageMediaLinkedToServer": "Povezano s strežnikom {0}",
|
||||||
|
"MessageMediaLinkedToThisServer": "Prenesena predstavnost je povezana s tem strežnikom",
|
||||||
|
"MessageMediaNotLinkedToServer": "Mediji niso povezani s strežnikom Audiobookshelf. Noben napredek ne bo sinhroniziran.",
|
||||||
|
"MessageNoBookmarks": "Brez zaznamkov",
|
||||||
|
"MessageNoChapters": "Brez poglavij",
|
||||||
|
"MessageNoItems": "Ni elementov",
|
||||||
|
"MessageNoItemsFound": "Ni najdenih elementov",
|
||||||
|
"MessageNoListeningSessions": "Ni sej poslušanja",
|
||||||
|
"MessageNoMediaFolders": "Brez medijskih map",
|
||||||
|
"MessageNoNetworkConnection": "Ni omrežne povezave",
|
||||||
|
"MessageNoPodcastsFound": "Ni podcastov",
|
||||||
|
"MessageNoSeries": "Ni serij",
|
||||||
|
"MessageNoUpdatesWereNecessary": "Posodobitve niso bile potrebne",
|
||||||
|
"MessageNoUserPlaylists": "Nimate seznamov predvajanja",
|
||||||
|
"MessageReportBugsAndContribute": "Prijavite hrošče, zahtevajte nove funkcije in prispevajte še naprej",
|
||||||
|
"MessageSeriesAlreadyDownloaded": "Prenesli ste že vse knjige iz te serije.",
|
||||||
|
"MessageSeriesDownloadConfirm": "Prenesi manjkajoče knjige ({0}) z {1} datotekami, skupno vseh {2}, v mapo {3}?",
|
||||||
|
"MessageSeriesDownloadConfirmIos": "Prenesi manjkajoče knjige ({0}) z {1} datotekami, skupno {2}?",
|
||||||
|
"MessageSocketConnectedOverMeteredCellular": "Omrežna povezava je priklopljena prek mobilnega omrežja z merjenim prenosom podatkov",
|
||||||
|
"MessageSocketConnectedOverMeteredWifi": "Omrežna povezava je priklopljena prek brezžičnega omrežja z merjenim prenosom podatkov",
|
||||||
|
"MessageSocketConnectedOverUnmeteredCellular": "Omrežna povezava je priklopljena prek mobilnega omrežja brez merjenja prenosa podatkov",
|
||||||
|
"MessageSocketConnectedOverUnmeteredWifi": "Omrežna povezava je priklopljena prek brezžičnega omrežja brez merjenja prenosa podatkov",
|
||||||
|
"MessageSocketNotConnected": "Omrežna poveza ni priklopljena",
|
||||||
|
"NoteRSSFeedPodcastAppsHttps": "Opozorilo: večina aplikacij za podcaste bo zahtevala, da URL vira RSS uporablja HTTPS",
|
||||||
|
"NoteRSSFeedPodcastAppsPubDate": "Opozorilo: 1 ali več vaših epizod nima datuma objave. Nekatere aplikacije za podcaste to zahtevajo.",
|
||||||
|
"ToastBookmarkCreateFailed": "Zaznamka ni bilo mogoče ustvariti",
|
||||||
|
"ToastBookmarkRemoveFailed": "Zaznamka ni bilo mogoče odstraniti",
|
||||||
|
"ToastBookmarkUpdateFailed": "Zaznamka ni bilo mogoče posodobiti",
|
||||||
|
"ToastDownloadNotAllowedOnCellular": "Prenos ni dovoljen na mobilnih podatkih",
|
||||||
|
"ToastItemMarkedAsFinishedFailed": "Označevanje kot dokončano ni uspelo",
|
||||||
|
"ToastItemMarkedAsNotFinishedFailed": "Ni bilo mogoče označiti kot nedokončano",
|
||||||
|
"ToastPlaylistCreateFailed": "Seznama predvajanja ni bilo mogoče ustvariti",
|
||||||
|
"ToastPodcastCreateFailed": "Podcasta ni bilo mogoče ustvariti",
|
||||||
|
"ToastPodcastCreateSuccess": "Podcast je bil uspešno ustvarjen",
|
||||||
|
"ToastRSSFeedCloseFailed": "Vira RSS ni bilo mogoče zapreti",
|
||||||
|
"ToastRSSFeedCloseSuccess": "Vir RSS je bil zaprt",
|
||||||
|
"ToastStreamingNotAllowedOnCellular": "Pretakanje ni dovoljeno na mobilnih podatkih"
|
||||||
|
}
|
||||||
+152
-137
@@ -1,53 +1,54 @@
|
|||||||
{
|
{
|
||||||
"ButtonAdd": "Lägg till",
|
"ButtonAdd": "Lägg till",
|
||||||
"ButtonAddNewServer": "Add New Server",
|
"ButtonAddNewServer": "Lägg Till Ny Server",
|
||||||
"ButtonAuthors": "Författare",
|
"ButtonAuthors": "Författare",
|
||||||
"ButtonBack": "Back",
|
"ButtonBack": "Tillbaka",
|
||||||
"ButtonCancel": "Avbryt",
|
"ButtonCancel": "Avbryt",
|
||||||
"ButtonCancelTimer": "Cancel Timer",
|
"ButtonCancelTimer": "Inaktivera Timer",
|
||||||
"ButtonClearFilter": "Rensa filter",
|
"ButtonClearFilter": "Rensa filter",
|
||||||
"ButtonCloseFeed": "Stäng flöde",
|
"ButtonCloseFeed": "Stäng flöde",
|
||||||
"ButtonCollections": "Samlingar",
|
"ButtonCollections": "Samlingar",
|
||||||
"ButtonConnect": "Connect",
|
"ButtonConnect": "Anslut",
|
||||||
"ButtonConnectToServer": "Connect to Server",
|
"ButtonConnectToServer": "Anslut till Server",
|
||||||
"ButtonCreate": "Skapa",
|
"ButtonCreate": "Skapa",
|
||||||
"ButtonCreateBookmark": "Create Bookmark",
|
"ButtonCreateBookmark": "Skapa Bokmärke",
|
||||||
"ButtonCreateNewPlaylist": "Create New Playlist",
|
"ButtonCreateNewPlaylist": "Skapa Ny Spellista",
|
||||||
"ButtonDelete": "Radera",
|
"ButtonDelete": "Radera",
|
||||||
"ButtonDeleteLocalEpisode": "Delete local episode",
|
"ButtonDeleteLocalEpisode": "Radera lokal episod",
|
||||||
"ButtonDeleteLocalFile": "Delete local file",
|
"ButtonDeleteLocalFile": "Radera lokal fil",
|
||||||
"ButtonDeleteLocalItem": "Delete local item",
|
"ButtonDeleteLocalItem": "Radera lokalt objekt",
|
||||||
"ButtonDisableAutoTimer": "Disable Auto Timer",
|
"ButtonDisableAutoTimer": "Inaktivera Automatisk Timer",
|
||||||
"ButtonDisconnect": "Disconnect",
|
"ButtonDisconnect": "Koppla ur",
|
||||||
"ButtonGoToWebClient": "Go to Web Client",
|
"ButtonGoToWebClient": "Öppna i Webbläsare",
|
||||||
"ButtonHistory": "History",
|
"ButtonHistory": "Histora",
|
||||||
"ButtonHome": "Hem",
|
"ButtonHome": "Hem",
|
||||||
"ButtonIssues": "Problem",
|
"ButtonIssues": "Problem",
|
||||||
"ButtonLatest": "Senaste",
|
"ButtonLatest": "Senaste",
|
||||||
"ButtonLibrary": "Bibliotek",
|
"ButtonLibrary": "Bibliotek",
|
||||||
"ButtonLocalMedia": "Local Media",
|
"ButtonLocalMedia": "Lokal media",
|
||||||
"ButtonManageLocalFiles": "Manage Local Files",
|
"ButtonManageLocalFiles": "Hantera Lokal Filer",
|
||||||
"ButtonNewFolder": "New Folder",
|
"ButtonNewFolder": "Ny Katalog",
|
||||||
"ButtonNextEpisode": "Next Episode",
|
"ButtonNextEpisode": "Ny Episod",
|
||||||
"ButtonOpenFeed": "Öppna flöde",
|
"ButtonOpenFeed": "Öppna flöde",
|
||||||
"ButtonOverride": "Override",
|
"ButtonOverride": "Åsidosätt",
|
||||||
"ButtonPause": "Pause",
|
"ButtonPause": "Pausa",
|
||||||
"ButtonPlay": "Spela",
|
"ButtonPlay": "Spela",
|
||||||
|
"ButtonPlayEpisode": "Spela Episod",
|
||||||
"ButtonPlaying": "Spelar",
|
"ButtonPlaying": "Spelar",
|
||||||
"ButtonPlaylists": "Spellistor",
|
"ButtonPlaylists": "Spellistor",
|
||||||
"ButtonRead": "Läs",
|
"ButtonRead": "Läs",
|
||||||
"ButtonRemove": "Ta bort",
|
"ButtonRemove": "Ta bort",
|
||||||
"ButtonRemoveFromServer": "Remove from Server",
|
"ButtonRemoveFromServer": "Ta bort från Server",
|
||||||
"ButtonSave": "Spara",
|
"ButtonSave": "Spara",
|
||||||
"ButtonSaveOrder": "Save Order",
|
"ButtonSaveOrder": "Spara Ordning",
|
||||||
"ButtonSearch": "Sök",
|
"ButtonSearch": "Sök",
|
||||||
"ButtonSendEbookToDevice": "Send Ebook to Device",
|
"ButtonSendEbookToDevice": "Skicka E-bok till Enhet",
|
||||||
"ButtonSeries": "Serie",
|
"ButtonSeries": "Serie",
|
||||||
"ButtonSetTimer": "Set Timer",
|
"ButtonSetTimer": "Ställ in timer",
|
||||||
"ButtonStream": "Stream",
|
"ButtonStream": "Ström",
|
||||||
"ButtonSubmit": "Skicka",
|
"ButtonSubmit": "Skicka",
|
||||||
"ButtonSwitchServerUser": "Switch Server/User",
|
"ButtonSwitchServerUser": "Byt Server/Användare",
|
||||||
"ButtonUserStats": "User Stats",
|
"ButtonUserStats": "Användarstatistik",
|
||||||
"ButtonYes": "Ja",
|
"ButtonYes": "Ja",
|
||||||
"HeaderAccount": "Konto",
|
"HeaderAccount": "Konto",
|
||||||
"HeaderAdvanced": "Avancerad",
|
"HeaderAdvanced": "Avancerad",
|
||||||
@@ -55,80 +56,84 @@
|
|||||||
"HeaderChapters": "Kapitel",
|
"HeaderChapters": "Kapitel",
|
||||||
"HeaderCollection": "Samling",
|
"HeaderCollection": "Samling",
|
||||||
"HeaderCollectionItems": "Samlingselement",
|
"HeaderCollectionItems": "Samlingselement",
|
||||||
"HeaderConnectionStatus": "Connection Status",
|
"HeaderConnectionStatus": "Anslutnings Status",
|
||||||
|
"HeaderDataSettings": "Data Inställningar",
|
||||||
"HeaderDetails": "Detaljer",
|
"HeaderDetails": "Detaljer",
|
||||||
"HeaderDownloads": "Downloads",
|
"HeaderDownloads": "Nedladdningar",
|
||||||
"HeaderEbookFiles": "E-boksfiler",
|
"HeaderEbookFiles": "E-boksfiler",
|
||||||
"HeaderEpisodes": "Avsnitt",
|
"HeaderEpisodes": "Avsnitt",
|
||||||
"HeaderEreaderSettings": "E-boksinställningar",
|
"HeaderEreaderSettings": "E-boksinställningar",
|
||||||
"HeaderLatestEpisodes": "Senaste avsnitt",
|
"HeaderLatestEpisodes": "Senaste avsnitt",
|
||||||
"HeaderLibraries": "Bibliotek",
|
"HeaderLibraries": "Bibliotek",
|
||||||
"HeaderLocalFolders": "Local Folders",
|
"HeaderLocalFolders": "Lokala Kataloger",
|
||||||
"HeaderLocalLibraryItems": "Local Library Items",
|
"HeaderLocalLibraryItems": "Lokala Bibliotek Filer",
|
||||||
"HeaderNewPlaylist": "New Playlist",
|
"HeaderNewPlaylist": "Ny Spellista",
|
||||||
"HeaderOpenRSSFeed": "Öppna RSS-flöde",
|
"HeaderOpenRSSFeed": "Öppna RSS-flöde",
|
||||||
"HeaderPlaybackSettings": "Playback Settings",
|
"HeaderPlaybackSettings": "Uppspelningsinställningar",
|
||||||
"HeaderPlaylist": "Spellista",
|
"HeaderPlaylist": "Spellista",
|
||||||
"HeaderPlaylistItems": "Spellistobjekt",
|
"HeaderPlaylistItems": "Spellistobjekt",
|
||||||
"HeaderRSSFeed": "RSS Feed",
|
"HeaderRSSFeed": "RSS flöde",
|
||||||
"HeaderRSSFeedGeneral": "RSS-information",
|
"HeaderRSSFeedGeneral": "RSS-information",
|
||||||
"HeaderRSSFeedIsOpen": "RSS-flödet är öppet",
|
"HeaderRSSFeedIsOpen": "RSS-flödet är öppet",
|
||||||
"HeaderSelectDownloadLocation": "Select Download Location",
|
"HeaderSelectDownloadLocation": "Välj Nedladdnings Plats",
|
||||||
"HeaderSettings": "Inställningar",
|
"HeaderSettings": "Inställningar",
|
||||||
"HeaderSleepTimer": "Sovtidtagare",
|
"HeaderSleepTimer": "Sovtidtagare",
|
||||||
"HeaderSleepTimerSettings": "Sleep Timer Settings",
|
"HeaderSleepTimerSettings": "Sovtimer Inställningar",
|
||||||
"HeaderStatsMinutesListeningChart": "Minuters lyssning (senaste 7 dagar)",
|
"HeaderStatsMinutesListeningChart": "Minuters lyssning (senaste 7 dagar)",
|
||||||
"HeaderStatsRecentSessions": "Senaste sessioner",
|
"HeaderStatsRecentSessions": "Senaste sessioner",
|
||||||
"HeaderTableOfContents": "Innehållsförteckning",
|
"HeaderTableOfContents": "Innehållsförteckning",
|
||||||
"HeaderUserInterfaceSettings": "User Interface Settings",
|
"HeaderUserInterfaceSettings": "Användargränssnittsinställningar",
|
||||||
"HeaderYourStats": "Dina statistik",
|
"HeaderYourStats": "Dina statistik",
|
||||||
|
"LabelAddToPlaylist": "Lägg till i Spellista",
|
||||||
"LabelAdded": "Tillagd",
|
"LabelAdded": "Tillagd",
|
||||||
"LabelAddedAt": "Tillagd vid",
|
"LabelAddedAt": "Tillagd vid",
|
||||||
"LabelAddToPlaylist": "Lägg till i Spellista",
|
|
||||||
"LabelAll": "Alla",
|
"LabelAll": "Alla",
|
||||||
"LabelAllowSeekingOnMediaControls": "Allow position seeking on media notification controls",
|
"LabelAllowSeekingOnMediaControls": "Tillåt positionssökning på medieaviseringskontroller",
|
||||||
|
"LabelAlways": "Alltid",
|
||||||
|
"LabelAskConfirmation": "Fråga efter bekräftelse",
|
||||||
"LabelAuthor": "Författare",
|
"LabelAuthor": "Författare",
|
||||||
"LabelAuthorFirstLast": "Författare (Förnamn Efternamn)",
|
"LabelAuthorFirstLast": "Författare (Förnamn Efternamn)",
|
||||||
"LabelAuthorLastFirst": "Författare (Efternamn, Förnamn)",
|
"LabelAuthorLastFirst": "Författare (Efternamn, Förnamn)",
|
||||||
"LabelAuthors": "Författare",
|
"LabelAuthors": "Författare",
|
||||||
"LabelAutoDownloadEpisodes": "Automatisk nedladdning av avsnitt",
|
"LabelAutoDownloadEpisodes": "Automatisk nedladdning av avsnitt",
|
||||||
"LabelAutoRewindTime": "Auto rewind time",
|
"LabelAutoRewindTime": "Automatisk tillbakaspolningstid",
|
||||||
"LabelAutoSleepTimer": "Auto sleep timer",
|
"LabelAutoSleepTimer": "Automatisk insomningstimer",
|
||||||
"LabelAutoSleepTimerAutoRewind": "Auto sleep timer auto rewind",
|
"LabelAutoSleepTimerAutoRewind": "Automatisk insomningstimer automatisk bakåtspolning",
|
||||||
"LabelAutoSleepTimerAutoRewindHelp": "When the auto sleep timer finishes, playing the item again will automatically rewind your position.",
|
"LabelAutoSleepTimerAutoRewindHelp": "När den automatiska insomningstimern är klar spolas din position automatiskt tillbaka.",
|
||||||
"LabelAutoSleepTimerHelp": "When playing media between the specified start and end times a sleep timer will automatically start.",
|
"LabelAutoSleepTimerHelp": "Vid uppspelning av media mellan de angivna start- och sluttiderna startar en insomningstimer automatiskt.",
|
||||||
"LabelBooks": "Böcker",
|
"LabelBooks": "Böcker",
|
||||||
|
"LabelChapterTrack": "Kapitel Spår",
|
||||||
"LabelChapters": "Kapitel",
|
"LabelChapters": "Kapitel",
|
||||||
"LabelChapterTrack": "Chapter Track",
|
|
||||||
"LabelClosePlayer": "Stäng spelaren",
|
"LabelClosePlayer": "Stäng spelaren",
|
||||||
"LabelCollapseSeries": "Fäll ihop serie",
|
"LabelCollapseSeries": "Fäll ihop serie",
|
||||||
"LabelComplete": "Komplett",
|
"LabelComplete": "Komplett",
|
||||||
"LabelContinueBooks": "Continue Books",
|
"LabelContinueBooks": "Fortsätt Böcker",
|
||||||
"LabelContinueEpisodes": "Continue Episodes",
|
"LabelContinueEpisodes": "Fortsätt Episoder",
|
||||||
"LabelContinueListening": "Continue Listening",
|
"LabelContinueListening": "Fortsätt Lyssna",
|
||||||
"LabelContinueReading": "Continue Reading",
|
"LabelContinueReading": "Fortsätt Läsa",
|
||||||
"LabelContinueSeries": "Continue Series",
|
"LabelContinueSeries": "Forsätt Serie",
|
||||||
"LabelCustomTime": "Custom time",
|
"LabelCustomTime": "Anpassad tid",
|
||||||
"LabelDescription": "Beskrivning",
|
"LabelDescription": "Beskrivning",
|
||||||
"LabelDisableAudioFadeOut": "Disable audio fade out",
|
"LabelDisableAudioFadeOut": "Inaktivera att ljudet tonas ut",
|
||||||
"LabelDisableAudioFadeOutHelp": "Audio volume will start decreasing when there is less than 1 minute remaining on the sleep timer. Enable this setting to not fade out.",
|
"LabelDisableAudioFadeOutHelp": "Ljudvolymen börjar minska när det är mindre än 1 minut kvar på insomningstimern. Aktivera den här inställningen för att inte tona ut.",
|
||||||
"LabelDisableAutoRewind": "Disable auto rewind",
|
"LabelDisableAutoRewind": "Inaktivera automatisk tillbakaspolning",
|
||||||
"LabelDisableShakeToReset": "Disable shake to reset",
|
"LabelDisableShakeToReset": "Inaktivera skakning för att återställa",
|
||||||
"LabelDisableShakeToResetHelp": "Shaking your device while the timer is running OR within 2 minutes of the timer expiring will reset the sleep timer. Enable this setting to disable shake to reset.",
|
"LabelDisableShakeToResetHelp": "Om du skakar enheten medan timern är igång eller inom 2 minuter efter att timern har löpt ut återställs insomningstimern. Aktivera den här inställningen för att inaktivera skakning för att återställa.",
|
||||||
"LabelDisableVibrateOnReset": "Disable vibrate on reset",
|
"LabelDisableVibrateOnReset": "Inaktivera vibration vid återställning",
|
||||||
"LabelDisableVibrateOnResetHelp": "When the sleep timer gets reset your device will vibrate. Enable this setting to not vibrate when the sleep timer resets.",
|
"LabelDisableVibrateOnResetHelp": "När insomningstimern återställs kommer din enhet att vibrera. Aktivera den här inställningen för att inte vibrera när insomningstimern återställs.",
|
||||||
"LabelDiscover": "Discover",
|
"LabelDiscover": "Upptäck",
|
||||||
"LabelDownload": "Ladda ner",
|
"LabelDownload": "Ladda ner",
|
||||||
"LabelDownloaded": "Downloaded",
|
"LabelDownloadUsingCellular": "Ladda ner med mobildata",
|
||||||
|
"LabelDownloaded": "Nedladdat",
|
||||||
"LabelDuration": "Varaktighet",
|
"LabelDuration": "Varaktighet",
|
||||||
"LabelEbook": "E-bok",
|
"LabelEbook": "E-bok",
|
||||||
"LabelEbooks": "Ebooks",
|
"LabelEbooks": "Eböcker",
|
||||||
"LabelEnable": "Aktivera",
|
"LabelEnable": "Aktivera",
|
||||||
"LabelEnableMp3IndexSeeking": "Enable mp3 index seeking",
|
"LabelEnableMp3IndexSeeking": "Aktivera mp3 index sökning",
|
||||||
"LabelEnableMp3IndexSeekingHelp": "This setting should only be enabled if you have mp3 files that are not seeking correctly. Inaccurate seeking is most likely due to Variable birate (VBR) MP3 files. This setting will force index seeking, in which a time-to-byte mapping is built as the file is read. In some cases with large MP3 files there will be a delay when seeking towards the end of the file.",
|
"LabelEnableMp3IndexSeekingHelp": "Den här inställningen bör endast aktiveras om du har mp3-filer som inte söker korrekt. Felaktig sökning beror med största sannolikhet på MP3-filer med variabel birate (VBR). Den här inställningen tvingar fram indexsökning, där en tid-till-byte-mappning byggs upp när filen läses. I vissa fall med stora MP3-filer blir det en fördröjning vid sökning mot slutet av filen.",
|
||||||
"LabelEnd": "Slut",
|
"LabelEnd": "Slut",
|
||||||
"LabelEndOfChapter": "End of Chapter",
|
"LabelEndOfChapter": "Slut av kapitel",
|
||||||
"LabelEndTime": "End time",
|
"LabelEndTime": "Slut tid",
|
||||||
"LabelEpisode": "Avsnitt",
|
"LabelEpisode": "Avsnitt",
|
||||||
"LabelFeedURL": "Flödes-URL",
|
"LabelFeedURL": "Flödes-URL",
|
||||||
"LabelFile": "Fil",
|
"LabelFile": "Fil",
|
||||||
@@ -137,78 +142,85 @@
|
|||||||
"LabelFilename": "Filnamn",
|
"LabelFilename": "Filnamn",
|
||||||
"LabelFinished": "Avslutad",
|
"LabelFinished": "Avslutad",
|
||||||
"LabelFolder": "Mapp",
|
"LabelFolder": "Mapp",
|
||||||
|
"LabelFontBoldness": "Fetstil",
|
||||||
"LabelFontScale": "Teckensnittsskala",
|
"LabelFontScale": "Teckensnittsskala",
|
||||||
"LabelGenre": "Genre",
|
"LabelGenre": "Genre",
|
||||||
"LabelGenres": "Genrer",
|
"LabelGenres": "Genrer",
|
||||||
"LabelHapticFeedback": "Haptic feedback",
|
"LabelHapticFeedback": "Haptisk feedback",
|
||||||
"LabelHasEbook": "Has ebook",
|
"LabelHasEbook": "Har E-bok",
|
||||||
"LabelHasSupplementaryEbook": "Has supplementary ebook",
|
"LabelHasSupplementaryEbook": "Har komplimenterande E-bok",
|
||||||
"LabelHeavy": "Heavy",
|
"LabelHeavy": "Tung",
|
||||||
"LabelHigh": "High",
|
"LabelHigh": "Hög",
|
||||||
"LabelHost": "Värd",
|
"LabelHost": "Värd",
|
||||||
"LabelIncomplete": "Ofullständig",
|
|
||||||
"LabelInProgress": "Pågående",
|
"LabelInProgress": "Pågående",
|
||||||
"LabelInternalAppStorage": "Internal App Storage",
|
"LabelIncomplete": "Ofullständig",
|
||||||
"LabelJumpBackwardsTime": "Jump backwards time",
|
"LabelInternalAppStorage": "Intern App Lagring",
|
||||||
"LabelJumpForwardsTime": "Jump forwards time",
|
"LabelJumpBackwardsTime": "hoppa-bakåt-tid",
|
||||||
|
"LabelJumpForwardsTime": "hoppa-framåt-tid",
|
||||||
"LabelLanguage": "Språk",
|
"LabelLanguage": "Språk",
|
||||||
"LabelLayout": "Layout",
|
"LabelLayout": "Layout",
|
||||||
"LabelLayoutAuto": "Auto",
|
"LabelLayoutAuto": "Automatisk",
|
||||||
"LabelLayoutSinglePage": "Single page",
|
"LabelLayoutSinglePage": "En sida",
|
||||||
"LabelLight": "Light",
|
"LabelLight": "Ljust",
|
||||||
"LabelLineSpacing": "Radavstånd",
|
"LabelLineSpacing": "Radavstånd",
|
||||||
"LabelListenAgain": "Listen Again",
|
"LabelListenAgain": "Lyssna igen",
|
||||||
"LabelLocalBooks": "Local Books",
|
"LabelLocalBooks": "Lokala böcker",
|
||||||
"LabelLocalPodcasts": "Local Podcasts",
|
"LabelLocalPodcasts": "Lokala podcasts",
|
||||||
"LabelLockOrientation": "Lock orientation",
|
"LabelLockOrientation": "Lås skärmorientering",
|
||||||
"LabelLockPlayer": "Lock Player",
|
"LabelLockPlayer": "Lås spelare",
|
||||||
"LabelLow": "Low",
|
"LabelLow": "Låg",
|
||||||
"LabelMediaType": "Mediatyp",
|
"LabelMediaType": "Mediatyp",
|
||||||
"LabelMedium": "Medium",
|
"LabelMedium": "Medel",
|
||||||
"LabelMore": "Mer",
|
"LabelMore": "Mer",
|
||||||
"LabelMoreInfo": "Mer information",
|
"LabelMoreInfo": "Mer information",
|
||||||
"LabelName": "Namn",
|
"LabelName": "Namn",
|
||||||
"LabelNarrator": "Berättare",
|
"LabelNarrator": "Berättare",
|
||||||
"LabelNarrators": "Berättare",
|
"LabelNarrators": "Berättare",
|
||||||
"LabelNewestAuthors": "Newest Authors",
|
"LabelNavigateWithVolume": "Navigera med volymknapparna",
|
||||||
"LabelNewestEpisodes": "Newest Episodes",
|
"LabelNavigateWithVolumeDisabled": "Av",
|
||||||
"LabelNo": "No",
|
"LabelNavigateWithVolumeEnabled": "På",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "Speglad",
|
||||||
|
"LabelNever": "Aldrig",
|
||||||
|
"LabelNewestAuthors": "Senast tillagda författare",
|
||||||
|
"LabelNewestEpisodes": "Senast tillagda avsnitt",
|
||||||
|
"LabelNo": "Nej",
|
||||||
"LabelNotFinished": "Ej avslutad",
|
"LabelNotFinished": "Ej avslutad",
|
||||||
"LabelNotStarted": "Inte påbörjad",
|
"LabelNotStarted": "Inte påbörjad",
|
||||||
"LabelOff": "Off",
|
"LabelOff": "Av",
|
||||||
"LabelPassword": "Lösenord",
|
"LabelPassword": "Lösenord",
|
||||||
"LabelPath": "Sökväg",
|
"LabelPath": "Sökväg",
|
||||||
"LabelPlaybackDirect": "Direct",
|
"LabelPlaybackDirect": "Direct",
|
||||||
"LabelPlaybackLocal": "Local",
|
"LabelPlaybackLocal": "Lokal",
|
||||||
"LabelPlaybackSpeed": "Playback Speed",
|
"LabelPlaybackSpeed": "Uppspelningshastighet",
|
||||||
"LabelPlaybackTranscode": "Transcode",
|
"LabelPlaybackTranscode": "Transkodning",
|
||||||
"LabelPodcast": "Podcast",
|
"LabelPodcast": "Podcast",
|
||||||
"LabelPodcasts": "Podcasts",
|
"LabelPodcasts": "Podcasts",
|
||||||
"LabelPreventIndexing": "Förhindra att ditt flöde indexeras av iTunes och Google-podcastsökmotorer",
|
"LabelPreventIndexing": "Förhindra att ditt flöde indexeras av iTunes och Google-podcastsökmotorer",
|
||||||
"LabelProgress": "Framsteg",
|
"LabelProgress": "Framsteg",
|
||||||
"LabelPubDate": "Publiceringsdatum",
|
"LabelPubDate": "Publiceringsdatum",
|
||||||
"LabelPublishYear": "Publiceringsår",
|
"LabelPublishYear": "Publiceringsår",
|
||||||
"LabelRead": "Läst",
|
|
||||||
"LabelReadAgain": "Read Again",
|
|
||||||
"LabelRecentlyAdded": "Recently Added",
|
|
||||||
"LabelRecentSeries": "Recent Series",
|
|
||||||
"LabelRemoveFromPlaylist": "Remove from Playlist",
|
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Anpassad ägarens e-post",
|
"LabelRSSFeedCustomOwnerEmail": "Anpassad ägarens e-post",
|
||||||
"LabelRSSFeedCustomOwnerName": "Anpassat ägarnamn",
|
"LabelRSSFeedCustomOwnerName": "Anpassat ägarnamn",
|
||||||
"LabelRSSFeedPreventIndexing": "Förhindra indexering",
|
"LabelRSSFeedPreventIndexing": "Förhindra indexering",
|
||||||
"LabelRSSFeedSlug": "RSS-flödesslag",
|
"LabelRSSFeedSlug": "RSS-flödesslag",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Scale Elapsed Time by Speed",
|
"LabelRandomly": "Slumpartat",
|
||||||
|
"LabelRead": "Läst",
|
||||||
|
"LabelReadAgain": "Läs igen",
|
||||||
|
"LabelRecentSeries": "Senaste serier",
|
||||||
|
"LabelRecentlyAdded": "Nyligen tillagd",
|
||||||
|
"LabelRemoveFromPlaylist": "Ta bort från spellista",
|
||||||
|
"LabelScaleElapsedTimeBySpeed": "Skaländra uppspelningsposition efter uppspelningshastighet.",
|
||||||
"LabelSeason": "Säsong",
|
"LabelSeason": "Säsong",
|
||||||
"LabelSelectADevice": "Select a device",
|
"LabelSelectADevice": "Välj en enhet",
|
||||||
"LabelSeries": "Serie",
|
"LabelSeries": "Serie",
|
||||||
"LabelServerAddress": "Server address",
|
"LabelServerAddress": "Server-adress",
|
||||||
"LabelSetEbookAsPrimary": "Ange som primär",
|
"LabelSetEbookAsPrimary": "Ange som primär",
|
||||||
"LabelSetEbookAsSupplementary": "Ange som kompletterande",
|
"LabelSetEbookAsSupplementary": "Ange som kompletterande",
|
||||||
"LabelShakeSensitivity": "Shake sensitivity",
|
"LabelShakeSensitivity": "Skakkänslighet",
|
||||||
"LabelShowAll": "Visa alla",
|
"LabelShowAll": "Visa alla",
|
||||||
"LabelSize": "Storlek",
|
"LabelSize": "Storlek",
|
||||||
"LabelSleepTimer": "Sleeptimer",
|
"LabelSleepTimer": "Sleeptimer",
|
||||||
"LabelStart": "Start",
|
"LabelStart": "Starta",
|
||||||
"LabelStartTime": "Starttid",
|
"LabelStartTime": "Starttid",
|
||||||
"LabelStatsBestDay": "Bästa dag",
|
"LabelStatsBestDay": "Bästa dag",
|
||||||
"LabelStatsDailyAverage": "Dagligt genomsnitt",
|
"LabelStatsDailyAverage": "Dagligt genomsnitt",
|
||||||
@@ -219,6 +231,7 @@
|
|||||||
"LabelStatsMinutes": "minuter",
|
"LabelStatsMinutes": "minuter",
|
||||||
"LabelStatsMinutesListening": "Minuter av lyssnande",
|
"LabelStatsMinutesListening": "Minuter av lyssnande",
|
||||||
"LabelStatsWeekListening": "Veckans lyssnande",
|
"LabelStatsWeekListening": "Veckans lyssnande",
|
||||||
|
"LabelStreamingUsingCellular": "Strömma över mobildata",
|
||||||
"LabelTag": "Tagg",
|
"LabelTag": "Tagg",
|
||||||
"LabelTags": "Taggar",
|
"LabelTags": "Taggar",
|
||||||
"LabelTheme": "Tema",
|
"LabelTheme": "Tema",
|
||||||
@@ -226,71 +239,73 @@
|
|||||||
"LabelThemeLight": "Ljust",
|
"LabelThemeLight": "Ljust",
|
||||||
"LabelTimeRemaining": "{0} kvar",
|
"LabelTimeRemaining": "{0} kvar",
|
||||||
"LabelTitle": "Titel",
|
"LabelTitle": "Titel",
|
||||||
"LabelTotalTrack": "Total Track",
|
"LabelTotalSize": "Total Storlek",
|
||||||
|
"LabelTotalTrack": "Total Spår",
|
||||||
"LabelTracks": "Spår",
|
"LabelTracks": "Spår",
|
||||||
"LabelType": "Typ",
|
"LabelType": "Typ",
|
||||||
"LabelUnlockPlayer": "Unlock Player",
|
"LabelUnlockPlayer": "Lås upp spelare",
|
||||||
"LabelUseBookshelfView": "Use bookshelf view",
|
"LabelUseBookshelfView": "Använd bokhyllevyn",
|
||||||
"LabelUser": "Användare",
|
"LabelUser": "Användare",
|
||||||
"LabelUsername": "Användarnamn",
|
"LabelUsername": "Användarnamn",
|
||||||
"LabelVeryHigh": "Very High",
|
"LabelVeryHigh": "Väldigt hög",
|
||||||
"LabelVeryLow": "Very Low",
|
"LabelVeryLow": "Väldigt låg",
|
||||||
"LabelYourBookmarks": "Dina bokmärken",
|
"LabelYourBookmarks": "Dina bokmärken",
|
||||||
"LabelYourProgress": "Din framsteg",
|
"LabelYourProgress": "Din framsteg",
|
||||||
"MessageAndroid10Downloads": "Android 10 and below will use internal app storage for downloads.",
|
"MessageAndroid10Downloads": "Android 10 och lägre använder intern applagring för nedladdningar.",
|
||||||
"MessageAttemptingServerConnection": "Attempting server connection...",
|
"MessageAttemptingServerConnection": "Försöker ansluta till server...",
|
||||||
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf server not connected",
|
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf-server är ej ansluten",
|
||||||
"MessageAudiobookshelfServerRequired": "<strong>Important!</strong> This app is designed to work with an Audiobookshelf server that you or someone you know is hosting. This app does not provide any content.",
|
"MessageAudiobookshelfServerRequired": "<strong>Viktigt!</strong> Den här appen måste användas tillsammans med en Audiobookshelf-server som hostas av dig eller dina bekanta. Appen tillhandahåller själv inget innehåll.",
|
||||||
"MessageBookshelfEmpty": "Bookshelf empty",
|
"MessageBookshelfEmpty": "Bokhyllan är tom",
|
||||||
"MessageConfirmDeleteLocalEpisode": "Remove local episode \"{0}\" from your device? The file on the server will be unaffected.",
|
"MessageConfirmDeleteLocalEpisode": "Ta bort lokalt avsnitt \"{0}\" från enheten? Filen på servern påverkas inte.",
|
||||||
"MessageConfirmDeleteLocalFiles": "Remove local files of this item from your device? The files on the server and your progress will be unaffected.",
|
"MessageConfirmDeleteLocalFiles": "Ta bort lokala filer för detta objekt från din enhet? Filerna på servern och din uppspelningsposition raderas inte.",
|
||||||
"MessageConfirmDiscardProgress": "Are you sure you want to reset your progress?",
|
"MessageConfirmDiscardProgress": "Är du säker på att du vill återställa din uppspelningsposition?",
|
||||||
"MessageConfirmMarkAsFinished": "Are you sure you want to mark this item as finished?",
|
"MessageConfirmDownloadUsingCellular": "Du kommer påbörja en nedladdning över mobildata. Detta kan leda till avgifter från din operatör. Vill du fortsätta?",
|
||||||
"MessageConfirmRemoveBookmark": "Are you sure you want to remove bookmark?",
|
"MessageConfirmMarkAsFinished": "Är du säker på att du vill färdigmarkera det här objektet.",
|
||||||
"MessageDiscardProgress": "Discard Progress",
|
"MessageConfirmRemoveBookmark": "Är du säker på att du vill ta bort bokmärket?",
|
||||||
"MessageDownloadCompleteProcessing": "Download complete. Processing...",
|
"MessageConfirmStreamingUsingCellular": "Du kommer påbörja en strömmning över mobildata. Detta kan leda till avgifter från din operatör. Vill du fortsätta?",
|
||||||
"MessageDownloading": "Downloading...",
|
"MessageDiscardProgress": "Avfärda uppspelningsposition",
|
||||||
|
"MessageDownloadCompleteProcessing": "Nedladdning klar. Behandlar...",
|
||||||
|
"MessageDownloading": "Laddar ned...",
|
||||||
"MessageDownloadingEpisode": "Laddar ner avsnitt",
|
"MessageDownloadingEpisode": "Laddar ner avsnitt",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} avsnitt i kö för nedladdning",
|
"MessageEpisodesQueuedForDownload": "{0} avsnitt i kö för nedladdning",
|
||||||
"MessageFeedURLWillBe": "Flödes-URL kommer att vara {0}",
|
"MessageFeedURLWillBe": "Flödes-URL kommer att vara {0}",
|
||||||
"MessageFetching": "Hämtar...",
|
"MessageFetching": "Hämtar...",
|
||||||
"MessageFollowTheProjectOnGithub": "Follow the project on Github",
|
"MessageFollowTheProjectOnGithub": "Follow the project on GitHub",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Item download complete but failed to create library item",
|
"MessageItemDownloadCompleteFailedToCreate": "Objektet laddades ned men det gick inte att skapa ett biblioteksobjekt",
|
||||||
"MessageLoading": "Laddar...",
|
"MessageLoading": "Laddar...",
|
||||||
"MessageLoadingServerData": "Loading server data...",
|
"MessageLoadingServerData": "Läser in serverdata...",
|
||||||
"MessageMarkAsFinished": "Markera som avslutad",
|
"MessageMarkAsFinished": "Markera som avslutad",
|
||||||
"MessageMediaLinkedToADifferentServer": "Media is linked to an Audiobookshelf server on a different address ({0}). Progress will be synced when connected to this server address.",
|
"MessageMediaLinkedToADifferentServer": "Detta media är länkat till en Audiobookshelf-server på annan adress ({0}). Uppspelningspositioner kommer synkas nästa gång appen kan ansluta till servern.",
|
||||||
"MessageMediaLinkedToADifferentUser": "Media is linked to this server but was downloaded by a different user. Progress will only be synced to the user that downloaded it.",
|
"MessageMediaLinkedToADifferentUser": "Detta media är länkat till den här servern men laddades ned av en annan användare. Uppspelningspositioner kommer endast synkas för den användaren som laddade ned objektet.",
|
||||||
"MessageMediaLinkedToServer": "Linked to server {0}",
|
"MessageMediaLinkedToServer": "Länkad till server {0}",
|
||||||
"MessageMediaLinkedToThisServer": "Downloaded media is linked to this server",
|
"MessageMediaLinkedToThisServer": "Nedladdad media är länkad till denna server",
|
||||||
"MessageMediaNotLinkedToServer": "Media is not linked to an Audiobookshelf server. No progress will be synced.",
|
"MessageMediaNotLinkedToServer": "Detta media är inte länkat till en Audiobookshelf-server. Inga uppspelningspositioner kommer synkas.",
|
||||||
"MessageNoBookmarks": "Inga bokmärken",
|
"MessageNoBookmarks": "Inga bokmärken",
|
||||||
"MessageNoChapters": "Inga kapitel",
|
"MessageNoChapters": "Inga kapitel",
|
||||||
"MessageNoItems": "Inga objekt",
|
"MessageNoItems": "Inga objekt",
|
||||||
"MessageNoItemsFound": "Inga objekt hittades",
|
"MessageNoItemsFound": "Inga objekt hittades",
|
||||||
"MessageNoListeningSessions": "Inga lyssningssessioner",
|
"MessageNoListeningSessions": "Inga lyssningssessioner",
|
||||||
"MessageNoMediaFolders": "No Media Folders",
|
"MessageNoMediaFolders": "Inga Mediamappar",
|
||||||
"MessageNoNetworkConnection": "No network connection",
|
"MessageNoNetworkConnection": "Ingen nätverksanslutning",
|
||||||
"MessageNoPodcastsFound": "Inga podcasts hittade",
|
"MessageNoPodcastsFound": "Inga podcasts hittade",
|
||||||
"MessageNoSeries": "No series",
|
"MessageNoSeries": "Inga serier",
|
||||||
"MessageNoUpdatesWereNecessary": "Inga uppdateringar var nödvändiga",
|
"MessageNoUpdatesWereNecessary": "Inga uppdateringar var nödvändiga",
|
||||||
"MessageNoUserPlaylists": "Du har inga spellistor",
|
"MessageNoUserPlaylists": "Du har inga spellistor",
|
||||||
"MessageReportBugsAndContribute": "Rapportera buggar, begär funktioner och bidra på",
|
"MessageReportBugsAndContribute": "Rapportera buggar, begär funktioner och bidra på",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Socket connected over metered cellular",
|
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered Wi-Fi",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Socket connected over metered wifi",
|
"MessageSocketConnectedOverUnmeteredWifi": "Socket connected over unmetered Wi-Fi",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Socket connected over unmetered cellular",
|
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Socket connected over unmetered wifi",
|
|
||||||
"MessageSocketNotConnected": "Socket not connected",
|
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Varning: De flesta podcastappar kräver att RSS-flödets URL används med HTTPS",
|
"NoteRSSFeedPodcastAppsHttps": "Varning: De flesta podcastappar kräver att RSS-flödets URL används med HTTPS",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Varning: 1 eller flera av dina avsnitt har inte ett publiceringsdatum. Vissa podcastappar kräver detta.",
|
"NoteRSSFeedPodcastAppsPubDate": "Varning: 1 eller flera av dina avsnitt har inte ett publiceringsdatum. Vissa podcastappar kräver detta.",
|
||||||
"ToastBookmarkCreateFailed": "Det gick inte att skapa bokmärket",
|
"ToastBookmarkCreateFailed": "Det gick inte att skapa bokmärket",
|
||||||
"ToastBookmarkRemoveFailed": "Det gick inte att ta bort bokmärket",
|
"ToastBookmarkRemoveFailed": "Det gick inte att ta bort bokmärket",
|
||||||
"ToastBookmarkUpdateFailed": "Det gick inte att uppdatera bokmärket",
|
"ToastBookmarkUpdateFailed": "Det gick inte att uppdatera bokmärket",
|
||||||
|
"ToastDownloadNotAllowedOnCellular": "Nedladdning tillåts inte över mobildata",
|
||||||
"ToastItemMarkedAsFinishedFailed": "Misslyckades med att markera som färdig",
|
"ToastItemMarkedAsFinishedFailed": "Misslyckades med att markera som färdig",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "Misslyckades med att markera som ej färdig",
|
"ToastItemMarkedAsNotFinishedFailed": "Misslyckades med att markera som ej färdig",
|
||||||
"ToastPlaylistCreateFailed": "Det gick inte att skapa spellistan",
|
"ToastPlaylistCreateFailed": "Det gick inte att skapa spellistan",
|
||||||
"ToastPodcastCreateFailed": "Misslyckades med att skapa podcasten",
|
"ToastPodcastCreateFailed": "Misslyckades med att skapa podcasten",
|
||||||
"ToastPodcastCreateSuccess": "Podcasten skapad framgångsrikt",
|
"ToastPodcastCreateSuccess": "Podcasten skapad framgångsrikt",
|
||||||
"ToastRSSFeedCloseFailed": "Misslyckades med att stänga RSS-flödet",
|
"ToastRSSFeedCloseFailed": "Misslyckades med att stänga RSS-flödet",
|
||||||
"ToastRSSFeedCloseSuccess": "RSS-flödet stängt"
|
"ToastRSSFeedCloseSuccess": "RSS-flödet stängt",
|
||||||
}
|
"ToastStreamingNotAllowedOnCellular": "Strömning tillåts inte över mobildata."
|
||||||
|
}
|
||||||
|
|||||||
+26
-12
@@ -32,7 +32,8 @@
|
|||||||
"ButtonOpenFeed": "Відкрити стрічку",
|
"ButtonOpenFeed": "Відкрити стрічку",
|
||||||
"ButtonOverride": "Перевизначити",
|
"ButtonOverride": "Перевизначити",
|
||||||
"ButtonPause": "Призупинити",
|
"ButtonPause": "Призупинити",
|
||||||
"ButtonPlay": "Відтворити",
|
"ButtonPlay": "Слухати",
|
||||||
|
"ButtonPlayEpisode": "Слухати епізод",
|
||||||
"ButtonPlaying": "Відтворюється",
|
"ButtonPlaying": "Відтворюється",
|
||||||
"ButtonPlaylists": "Списки відтворення",
|
"ButtonPlaylists": "Списки відтворення",
|
||||||
"ButtonRead": "Читати",
|
"ButtonRead": "Читати",
|
||||||
@@ -56,6 +57,7 @@
|
|||||||
"HeaderCollection": "Добірка",
|
"HeaderCollection": "Добірка",
|
||||||
"HeaderCollectionItems": "Елементи добірки",
|
"HeaderCollectionItems": "Елементи добірки",
|
||||||
"HeaderConnectionStatus": "Стан з'єднання",
|
"HeaderConnectionStatus": "Стан з'єднання",
|
||||||
|
"HeaderDataSettings": "Налаштування даних",
|
||||||
"HeaderDetails": "Подробиці",
|
"HeaderDetails": "Подробиці",
|
||||||
"HeaderDownloads": "Завантаження",
|
"HeaderDownloads": "Завантаження",
|
||||||
"HeaderEbookFiles": "Файли електронних книг",
|
"HeaderEbookFiles": "Файли електронних книг",
|
||||||
@@ -69,7 +71,7 @@
|
|||||||
"HeaderOpenRSSFeed": "Відкрити RSS-канал",
|
"HeaderOpenRSSFeed": "Відкрити RSS-канал",
|
||||||
"HeaderPlaybackSettings": "Налаштування відтворення",
|
"HeaderPlaybackSettings": "Налаштування відтворення",
|
||||||
"HeaderPlaylist": "Список відтворення",
|
"HeaderPlaylist": "Список відтворення",
|
||||||
"HeaderPlaylistItems": "Елементи списку",
|
"HeaderPlaylistItems": "Елементи списку відтворення",
|
||||||
"HeaderRSSFeed": "RSS-канал",
|
"HeaderRSSFeed": "RSS-канал",
|
||||||
"HeaderRSSFeedGeneral": "Деталі RSS",
|
"HeaderRSSFeedGeneral": "Деталі RSS",
|
||||||
"HeaderRSSFeedIsOpen": "RSS-канал відкрито",
|
"HeaderRSSFeedIsOpen": "RSS-канал відкрито",
|
||||||
@@ -82,11 +84,13 @@
|
|||||||
"HeaderTableOfContents": "Зміст",
|
"HeaderTableOfContents": "Зміст",
|
||||||
"HeaderUserInterfaceSettings": "Налаштування користувацького інтерфейсу",
|
"HeaderUserInterfaceSettings": "Налаштування користувацького інтерфейсу",
|
||||||
"HeaderYourStats": "Ваша статистика",
|
"HeaderYourStats": "Ваша статистика",
|
||||||
|
"LabelAddToPlaylist": "Додати до списку відтворення",
|
||||||
"LabelAdded": "Додано",
|
"LabelAdded": "Додано",
|
||||||
"LabelAddedAt": "Дата додавання",
|
"LabelAddedAt": "Дата додавання",
|
||||||
"LabelAddToPlaylist": "Додати до списку відтворення",
|
|
||||||
"LabelAll": "Усе",
|
"LabelAll": "Усе",
|
||||||
"LabelAllowSeekingOnMediaControls": "Увімкнути перемотування в меню управління медіа",
|
"LabelAllowSeekingOnMediaControls": "Увімкнути перемотування в меню управління медіа",
|
||||||
|
"LabelAlways": "Завжди",
|
||||||
|
"LabelAskConfirmation": "Щоразу запитувати",
|
||||||
"LabelAuthor": "Автор",
|
"LabelAuthor": "Автор",
|
||||||
"LabelAuthorFirstLast": "Автор (за ім'ям)",
|
"LabelAuthorFirstLast": "Автор (за ім'ям)",
|
||||||
"LabelAuthorLastFirst": "Автор (за прізвищем)",
|
"LabelAuthorLastFirst": "Автор (за прізвищем)",
|
||||||
@@ -98,8 +102,8 @@
|
|||||||
"LabelAutoSleepTimerAutoRewindHelp": "Коли сплине автотаймер вимкнення, відтворення знову автоматично перемотає доріжку.",
|
"LabelAutoSleepTimerAutoRewindHelp": "Коли сплине автотаймер вимкнення, відтворення знову автоматично перемотає доріжку.",
|
||||||
"LabelAutoSleepTimerHelp": "Таймер вимкнення автоматично ввімкнеться при відтворенні медіа між вказаним початковим та кінцевим часом.",
|
"LabelAutoSleepTimerHelp": "Таймер вимкнення автоматично ввімкнеться при відтворенні медіа між вказаним початковим та кінцевим часом.",
|
||||||
"LabelBooks": "Книги",
|
"LabelBooks": "Книги",
|
||||||
"LabelChapters": "Глави",
|
|
||||||
"LabelChapterTrack": "Прогрес глави",
|
"LabelChapterTrack": "Прогрес глави",
|
||||||
|
"LabelChapters": "Глави",
|
||||||
"LabelClosePlayer": "Закрити програвач",
|
"LabelClosePlayer": "Закрити програвач",
|
||||||
"LabelCollapseSeries": "Згорнути серії",
|
"LabelCollapseSeries": "Згорнути серії",
|
||||||
"LabelComplete": "Завершити",
|
"LabelComplete": "Завершити",
|
||||||
@@ -119,6 +123,7 @@
|
|||||||
"LabelDisableVibrateOnResetHelp": "Коли таймер вимкнення буде скинуто, ваш пристрій завібрує. Увімкніть цей параметр, щоб не вібрувати при скиданні таймера.",
|
"LabelDisableVibrateOnResetHelp": "Коли таймер вимкнення буде скинуто, ваш пристрій завібрує. Увімкніть цей параметр, щоб не вібрувати при скиданні таймера.",
|
||||||
"LabelDiscover": "Огляд",
|
"LabelDiscover": "Огляд",
|
||||||
"LabelDownload": "Завантажити",
|
"LabelDownload": "Завантажити",
|
||||||
|
"LabelDownloadUsingCellular": "Завантажувати через мобільний інтернет",
|
||||||
"LabelDownloaded": "Завантажено",
|
"LabelDownloaded": "Завантажено",
|
||||||
"LabelDuration": "Тривалість",
|
"LabelDuration": "Тривалість",
|
||||||
"LabelEbook": "Електронна книга",
|
"LabelEbook": "Електронна книга",
|
||||||
@@ -137,6 +142,7 @@
|
|||||||
"LabelFilename": "Ім'я файлу",
|
"LabelFilename": "Ім'я файлу",
|
||||||
"LabelFinished": "Завершено",
|
"LabelFinished": "Завершено",
|
||||||
"LabelFolder": "Тека",
|
"LabelFolder": "Тека",
|
||||||
|
"LabelFontBoldness": "Товщина шрифту",
|
||||||
"LabelFontScale": "Розмір шрифту",
|
"LabelFontScale": "Розмір шрифту",
|
||||||
"LabelGenre": "Жанр",
|
"LabelGenre": "Жанр",
|
||||||
"LabelGenres": "Жанри",
|
"LabelGenres": "Жанри",
|
||||||
@@ -146,8 +152,8 @@
|
|||||||
"LabelHeavy": "Сильно",
|
"LabelHeavy": "Сильно",
|
||||||
"LabelHigh": "Високо",
|
"LabelHigh": "Високо",
|
||||||
"LabelHost": "Гост",
|
"LabelHost": "Гост",
|
||||||
"LabelIncomplete": "Не завершено",
|
|
||||||
"LabelInProgress": "У процесі",
|
"LabelInProgress": "У процесі",
|
||||||
|
"LabelIncomplete": "Не завершено",
|
||||||
"LabelInternalAppStorage": "Внутрішня пам'ять додатку",
|
"LabelInternalAppStorage": "Внутрішня пам'ять додатку",
|
||||||
"LabelJumpBackwardsTime": "Час відмотування назад",
|
"LabelJumpBackwardsTime": "Час відмотування назад",
|
||||||
"LabelJumpForwardsTime": "Час перемотування вперед",
|
"LabelJumpForwardsTime": "Час перемотування вперед",
|
||||||
@@ -170,6 +176,7 @@
|
|||||||
"LabelName": "Назва",
|
"LabelName": "Назва",
|
||||||
"LabelNarrator": "Читець",
|
"LabelNarrator": "Читець",
|
||||||
"LabelNarrators": "Читці",
|
"LabelNarrators": "Читці",
|
||||||
|
"LabelNever": "Ніколи",
|
||||||
"LabelNewestAuthors": "Нові автори",
|
"LabelNewestAuthors": "Нові автори",
|
||||||
"LabelNewestEpisodes": "Нові епізоди",
|
"LabelNewestEpisodes": "Нові епізоди",
|
||||||
"LabelNo": "Ні",
|
"LabelNo": "Ні",
|
||||||
@@ -188,15 +195,16 @@
|
|||||||
"LabelProgress": "Прогрес",
|
"LabelProgress": "Прогрес",
|
||||||
"LabelPubDate": "Дата публікації",
|
"LabelPubDate": "Дата публікації",
|
||||||
"LabelPublishYear": "Рік публікації",
|
"LabelPublishYear": "Рік публікації",
|
||||||
"LabelRead": "Читати",
|
|
||||||
"LabelReadAgain": "Читати знову",
|
|
||||||
"LabelRecentlyAdded": "Нещодавно додані",
|
|
||||||
"LabelRecentSeries": "Останні серії",
|
|
||||||
"LabelRemoveFromPlaylist": "Видалити зі списку",
|
|
||||||
"LabelRSSFeedCustomOwnerEmail": "Користувацька електронна адреса власника",
|
"LabelRSSFeedCustomOwnerEmail": "Користувацька електронна адреса власника",
|
||||||
"LabelRSSFeedCustomOwnerName": "Користувацьке ім'я власника",
|
"LabelRSSFeedCustomOwnerName": "Користувацьке ім'я власника",
|
||||||
"LabelRSSFeedPreventIndexing": "Запобігати індексації",
|
"LabelRSSFeedPreventIndexing": "Запобігати індексації",
|
||||||
"LabelRSSFeedSlug": "Назва RSS-каналу",
|
"LabelRSSFeedSlug": "Назва RSS-каналу",
|
||||||
|
"LabelRandomly": "Випадково",
|
||||||
|
"LabelRead": "Читати",
|
||||||
|
"LabelReadAgain": "Читати знову",
|
||||||
|
"LabelRecentSeries": "Останні серії",
|
||||||
|
"LabelRecentlyAdded": "Нещодавно додані",
|
||||||
|
"LabelRemoveFromPlaylist": "Видалити зі списку",
|
||||||
"LabelScaleElapsedTimeBySpeed": "Час відповідно швидкості",
|
"LabelScaleElapsedTimeBySpeed": "Час відповідно швидкості",
|
||||||
"LabelSeason": "Сезон",
|
"LabelSeason": "Сезон",
|
||||||
"LabelSelectADevice": "Обрати пристрій",
|
"LabelSelectADevice": "Обрати пристрій",
|
||||||
@@ -219,6 +227,7 @@
|
|||||||
"LabelStatsMinutes": "хвилин",
|
"LabelStatsMinutes": "хвилин",
|
||||||
"LabelStatsMinutesListening": "Хвилин прослухано",
|
"LabelStatsMinutesListening": "Хвилин прослухано",
|
||||||
"LabelStatsWeekListening": "Прослухано за тиждень",
|
"LabelStatsWeekListening": "Прослухано за тиждень",
|
||||||
|
"LabelStreamingUsingCellular": "Транслювати через мобільний інтернет",
|
||||||
"LabelTag": "Мітка",
|
"LabelTag": "Мітка",
|
||||||
"LabelTags": "Мітки",
|
"LabelTags": "Мітки",
|
||||||
"LabelTheme": "Тема",
|
"LabelTheme": "Тема",
|
||||||
@@ -226,6 +235,7 @@
|
|||||||
"LabelThemeLight": "Світла",
|
"LabelThemeLight": "Світла",
|
||||||
"LabelTimeRemaining": "Лишилося: {0}",
|
"LabelTimeRemaining": "Лишилося: {0}",
|
||||||
"LabelTitle": "Назва",
|
"LabelTitle": "Назва",
|
||||||
|
"LabelTotalSize": "Загальний розмір",
|
||||||
"LabelTotalTrack": "Загальний прогрес",
|
"LabelTotalTrack": "Загальний прогрес",
|
||||||
"LabelTracks": "Доріжки",
|
"LabelTracks": "Доріжки",
|
||||||
"LabelType": "Тип",
|
"LabelType": "Тип",
|
||||||
@@ -245,8 +255,10 @@
|
|||||||
"MessageConfirmDeleteLocalEpisode": "Видалити локальний епізод \"{0}\" з вашого пристрою? Файл лишиться на сервері.",
|
"MessageConfirmDeleteLocalEpisode": "Видалити локальний епізод \"{0}\" з вашого пристрою? Файл лишиться на сервері.",
|
||||||
"MessageConfirmDeleteLocalFiles": "Видалити локальні файли цього елемента з вашого пристрою? Файли лишаться на сервері.",
|
"MessageConfirmDeleteLocalFiles": "Видалити локальні файли цього елемента з вашого пристрою? Файли лишаться на сервері.",
|
||||||
"MessageConfirmDiscardProgress": "Ви дійсно бажаєте скинути ваш прогрес?",
|
"MessageConfirmDiscardProgress": "Ви дійсно бажаєте скинути ваш прогрес?",
|
||||||
|
"MessageConfirmDownloadUsingCellular": "Ви збираєтеся завантажувати через мобільний інтернет. Оператор може брати кошти. Бажаєте продовжити?",
|
||||||
"MessageConfirmMarkAsFinished": "Ви дійсно бажаєте позначити цей елемент завершеним?",
|
"MessageConfirmMarkAsFinished": "Ви дійсно бажаєте позначити цей елемент завершеним?",
|
||||||
"MessageConfirmRemoveBookmark": "Ви дійсно бажаєте видалити закладку?",
|
"MessageConfirmRemoveBookmark": "Ви дійсно бажаєте видалити закладку?",
|
||||||
|
"MessageConfirmStreamingUsingCellular": "Ви збираєтеся транслювати через мобільний інтернет. Оператор може брати кошти. Бажаєте продовжити?",
|
||||||
"MessageDiscardProgress": "Скинути прогрес",
|
"MessageDiscardProgress": "Скинути прогрес",
|
||||||
"MessageDownloadCompleteProcessing": "Завантаження завершено. Обробка...",
|
"MessageDownloadCompleteProcessing": "Завантаження завершено. Обробка...",
|
||||||
"MessageDownloading": "Завантажується...",
|
"MessageDownloading": "Завантажується...",
|
||||||
@@ -254,7 +266,7 @@
|
|||||||
"MessageEpisodesQueuedForDownload": "Епізодів у черзі завантаження: {0}",
|
"MessageEpisodesQueuedForDownload": "Епізодів у черзі завантаження: {0}",
|
||||||
"MessageFeedURLWillBe": "URL-адреса каналу буде {0}",
|
"MessageFeedURLWillBe": "URL-адреса каналу буде {0}",
|
||||||
"MessageFetching": "Отримання...",
|
"MessageFetching": "Отримання...",
|
||||||
"MessageFollowTheProjectOnGithub": "Слідкуйте за проєктом на Github",
|
"MessageFollowTheProjectOnGithub": "Слідкуйте за проєктом на GitHub",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Завантаження завершено, але не вдалося створити елемент бібліотеки",
|
"MessageItemDownloadCompleteFailedToCreate": "Завантаження завершено, але не вдалося створити елемент бібліотеки",
|
||||||
"MessageLoading": "Завантаження...",
|
"MessageLoading": "Завантаження...",
|
||||||
"MessageLoadingServerData": "Завантаження даних сервера...",
|
"MessageLoadingServerData": "Завантаження даних сервера...",
|
||||||
@@ -286,11 +298,13 @@
|
|||||||
"ToastBookmarkCreateFailed": "Не вдалося створити закладку",
|
"ToastBookmarkCreateFailed": "Не вдалося створити закладку",
|
||||||
"ToastBookmarkRemoveFailed": "Не вдалося видалити закладку",
|
"ToastBookmarkRemoveFailed": "Не вдалося видалити закладку",
|
||||||
"ToastBookmarkUpdateFailed": "Не вдалося оновити закладку",
|
"ToastBookmarkUpdateFailed": "Не вдалося оновити закладку",
|
||||||
|
"ToastDownloadNotAllowedOnCellular": "Завантаження через мобільний інтернет заборонено",
|
||||||
"ToastItemMarkedAsFinishedFailed": "Не вдалося позначити завершеним",
|
"ToastItemMarkedAsFinishedFailed": "Не вдалося позначити завершеним",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "Не вдалося позначити незавершеним",
|
"ToastItemMarkedAsNotFinishedFailed": "Не вдалося позначити незавершеним",
|
||||||
"ToastPlaylistCreateFailed": "Не вдалося створити список",
|
"ToastPlaylistCreateFailed": "Не вдалося створити список",
|
||||||
"ToastPodcastCreateFailed": "Не вдалося створити подкаст",
|
"ToastPodcastCreateFailed": "Не вдалося створити подкаст",
|
||||||
"ToastPodcastCreateSuccess": "Подкаст успішно створено",
|
"ToastPodcastCreateSuccess": "Подкаст успішно створено",
|
||||||
"ToastRSSFeedCloseFailed": "Не вдалося закрити RSS-канал",
|
"ToastRSSFeedCloseFailed": "Не вдалося закрити RSS-канал",
|
||||||
"ToastRSSFeedCloseSuccess": "RSS-канал закрито"
|
"ToastRSSFeedCloseSuccess": "RSS-канал закрито",
|
||||||
|
"ToastStreamingNotAllowedOnCellular": "Трансляція через мобільний інтернет заборонена"
|
||||||
}
|
}
|
||||||
|
|||||||
+12
-20
@@ -19,7 +19,6 @@
|
|||||||
"ButtonDeleteLocalItem": "Xóa mục địa phương",
|
"ButtonDeleteLocalItem": "Xóa mục địa phương",
|
||||||
"ButtonDisableAutoTimer": "Tắt Bộ Đếm Tự Động",
|
"ButtonDisableAutoTimer": "Tắt Bộ Đếm Tự Động",
|
||||||
"ButtonDisconnect": "Ngắt Kết Nối",
|
"ButtonDisconnect": "Ngắt Kết Nối",
|
||||||
"ButtonGoToWebClient": "Go to Web Client",
|
|
||||||
"ButtonHistory": "Lịch Sử",
|
"ButtonHistory": "Lịch Sử",
|
||||||
"ButtonHome": "Trang Chủ",
|
"ButtonHome": "Trang Chủ",
|
||||||
"ButtonIssues": "Vấn Đề",
|
"ButtonIssues": "Vấn Đề",
|
||||||
@@ -70,7 +69,6 @@
|
|||||||
"HeaderPlaybackSettings": "Cài Đặt Phát Lại",
|
"HeaderPlaybackSettings": "Cài Đặt Phát Lại",
|
||||||
"HeaderPlaylist": "Danh Sách Phát",
|
"HeaderPlaylist": "Danh Sách Phát",
|
||||||
"HeaderPlaylistItems": "Các Mục Danh Sách Phát",
|
"HeaderPlaylistItems": "Các Mục Danh Sách Phát",
|
||||||
"HeaderRSSFeed": "RSS Feed",
|
|
||||||
"HeaderRSSFeedGeneral": "Thông Tin Chi Tiết về RSS",
|
"HeaderRSSFeedGeneral": "Thông Tin Chi Tiết về RSS",
|
||||||
"HeaderRSSFeedIsOpen": "RSS Feed đã được Mở",
|
"HeaderRSSFeedIsOpen": "RSS Feed đã được Mở",
|
||||||
"HeaderSelectDownloadLocation": "Chọn Vị Trí Tải Xuống",
|
"HeaderSelectDownloadLocation": "Chọn Vị Trí Tải Xuống",
|
||||||
@@ -82,9 +80,9 @@
|
|||||||
"HeaderTableOfContents": "Mục Lục",
|
"HeaderTableOfContents": "Mục Lục",
|
||||||
"HeaderUserInterfaceSettings": "Cài Đặt Giao Diện Người Dùng",
|
"HeaderUserInterfaceSettings": "Cài Đặt Giao Diện Người Dùng",
|
||||||
"HeaderYourStats": "Thống Kê của Bạn",
|
"HeaderYourStats": "Thống Kê của Bạn",
|
||||||
|
"LabelAddToPlaylist": "Thêm vào Danh Sách Phát",
|
||||||
"LabelAdded": "Đã Thêm",
|
"LabelAdded": "Đã Thêm",
|
||||||
"LabelAddedAt": "Đã Thêm Vào",
|
"LabelAddedAt": "Đã Thêm Vào",
|
||||||
"LabelAddToPlaylist": "Thêm vào Danh Sách Phát",
|
|
||||||
"LabelAll": "Tất Cả",
|
"LabelAll": "Tất Cả",
|
||||||
"LabelAllowSeekingOnMediaControls": "Cho phép tìm kiếm vị trí trên các điều khiển phương tiện thông báo",
|
"LabelAllowSeekingOnMediaControls": "Cho phép tìm kiếm vị trí trên các điều khiển phương tiện thông báo",
|
||||||
"LabelAuthor": "Tác Giả",
|
"LabelAuthor": "Tác Giả",
|
||||||
@@ -98,8 +96,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.",
|
"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.",
|
"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",
|
"LabelBooks": "Sách",
|
||||||
"LabelChapters": "Chương",
|
|
||||||
"LabelChapterTrack": "Theo Dõi Chương",
|
"LabelChapterTrack": "Theo Dõi Chương",
|
||||||
|
"LabelChapters": "Chương",
|
||||||
"LabelClosePlayer": "Đóng Trình Phát",
|
"LabelClosePlayer": "Đóng Trình Phát",
|
||||||
"LabelCollapseSeries": "Thu Gọn Chuỗi",
|
"LabelCollapseSeries": "Thu Gọn Chuỗi",
|
||||||
"LabelComplete": "Hoàn Thành",
|
"LabelComplete": "Hoàn Thành",
|
||||||
@@ -121,8 +119,6 @@
|
|||||||
"LabelDownload": "Tải Xuống",
|
"LabelDownload": "Tải Xuống",
|
||||||
"LabelDownloaded": "Đã Tải Xuống",
|
"LabelDownloaded": "Đã Tải Xuống",
|
||||||
"LabelDuration": "Thời Lượng",
|
"LabelDuration": "Thời Lượng",
|
||||||
"LabelEbook": "Ebook",
|
|
||||||
"LabelEbooks": "Ebooks",
|
|
||||||
"LabelEnable": "Bật",
|
"LabelEnable": "Bật",
|
||||||
"LabelEnableMp3IndexSeeking": "Bật Tìm Kiếm Chỉ Mục Mp3",
|
"LabelEnableMp3IndexSeeking": "Bật Tìm Kiếm Chỉ Mục Mp3",
|
||||||
"LabelEnableMp3IndexSeekingHelp": "Cài đặt này chỉ nên được bật nếu bạn có các tập tin mp3 không tìm kiếm đúng cách. Việc tìm kiếm không chính xác chủ yếu là do các tập tin MP3 biến đổi biến (VBR). Cài đặt này sẽ buộc tìm kiếm chỉ mục, trong đó một bản đồ thời gian-đến-byte được xây dựng khi tập tin được đọc. Trong một số trường hợp với các tập tin MP3 lớn, có thể có một sự trễ khi tìm kiếm về phía cuối của tập tin.",
|
"LabelEnableMp3IndexSeekingHelp": "Cài đặt này chỉ nên được bật nếu bạn có các tập tin mp3 không tìm kiếm đúng cách. Việc tìm kiếm không chính xác chủ yếu là do các tập tin MP3 biến đổi biến (VBR). Cài đặt này sẽ buộc tìm kiếm chỉ mục, trong đó một bản đồ thời gian-đến-byte được xây dựng khi tập tin được đọc. Trong một số trường hợp với các tập tin MP3 lớn, có thể có một sự trễ khi tìm kiếm về phía cuối của tập tin.",
|
||||||
@@ -146,8 +142,8 @@
|
|||||||
"LabelHeavy": "Nặng",
|
"LabelHeavy": "Nặng",
|
||||||
"LabelHigh": "Cao",
|
"LabelHigh": "Cao",
|
||||||
"LabelHost": "Máy Chủ",
|
"LabelHost": "Máy Chủ",
|
||||||
"LabelIncomplete": "Chưa Hoàn Thành",
|
|
||||||
"LabelInProgress": "Đang Tiến Hành",
|
"LabelInProgress": "Đang Tiến Hành",
|
||||||
|
"LabelIncomplete": "Chưa Hoàn Thành",
|
||||||
"LabelInternalAppStorage": "Bộ Nhớ Ứng Dụng Nội Bộ",
|
"LabelInternalAppStorage": "Bộ Nhớ Ứng Dụng Nội Bộ",
|
||||||
"LabelJumpBackwardsTime": "Nhảy Lùi Thời Gian",
|
"LabelJumpBackwardsTime": "Nhảy Lùi Thời Gian",
|
||||||
"LabelJumpForwardsTime": "Nhảy Chuyển Tiếp Thời Gian",
|
"LabelJumpForwardsTime": "Nhảy Chuyển Tiếp Thời Gian",
|
||||||
@@ -182,21 +178,18 @@
|
|||||||
"LabelPlaybackLocal": "Địa Phương",
|
"LabelPlaybackLocal": "Địa Phương",
|
||||||
"LabelPlaybackSpeed": "Tốc Độ Phát Lại",
|
"LabelPlaybackSpeed": "Tốc Độ Phát Lại",
|
||||||
"LabelPlaybackTranscode": "Chuyển Đổi",
|
"LabelPlaybackTranscode": "Chuyển Đổi",
|
||||||
"LabelPodcast": "Podcast",
|
|
||||||
"LabelPodcasts": "Podcasts",
|
|
||||||
"LabelPreventIndexing": "Ngăn Chặn Feed của bạn được lập chỉ mục bởi iTunes và Google podcast directories",
|
"LabelPreventIndexing": "Ngăn Chặn Feed của bạn được lập chỉ mục bởi iTunes và Google podcast directories",
|
||||||
"LabelProgress": "Tiến Độ",
|
"LabelProgress": "Tiến Độ",
|
||||||
"LabelPubDate": "Ngày Xuất Bản",
|
"LabelPubDate": "Ngày Xuất Bản",
|
||||||
"LabelPublishYear": "Năm Xuất Bản",
|
"LabelPublishYear": "Năm Xuất Bản",
|
||||||
"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",
|
"LabelRSSFeedCustomOwnerEmail": "Email Chủ Sở Hữu Tùy Chỉnh",
|
||||||
"LabelRSSFeedCustomOwnerName": "Tên Chủ Sở Hữu Tùy Chỉnh",
|
"LabelRSSFeedCustomOwnerName": "Tên Chủ Sở Hữu Tùy Chỉnh",
|
||||||
"LabelRSSFeedPreventIndexing": "Ngăn Chặn Lập Chỉ Mục",
|
"LabelRSSFeedPreventIndexing": "Ngăn Chặn Lập Chỉ Mục",
|
||||||
"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 Độ",
|
"LabelScaleElapsedTimeBySpeed": "Tỷ Lệ Thời Gian Đã Trôi Theo Tốc Độ",
|
||||||
"LabelSeason": "Mùa",
|
"LabelSeason": "Mùa",
|
||||||
"LabelSelectADevice": "Chọn Một Thiết Bị",
|
"LabelSelectADevice": "Chọn Một Thiết Bị",
|
||||||
@@ -254,7 +247,7 @@
|
|||||||
"MessageEpisodesQueuedForDownload": "{0} Tập phim được xếp hàng để tải xuống",
|
"MessageEpisodesQueuedForDownload": "{0} Tập phim được xếp hàng để tải xuống",
|
||||||
"MessageFeedURLWillBe": "URL Feed sẽ là {0}",
|
"MessageFeedURLWillBe": "URL Feed sẽ là {0}",
|
||||||
"MessageFetching": "Đang lấy dữ liệu...",
|
"MessageFetching": "Đang lấy dữ liệu...",
|
||||||
"MessageFollowTheProjectOnGithub": "Theo dõi dự án trên Github",
|
"MessageFollowTheProjectOnGithub": "Theo dõi dự án trên GitHub",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "Tải xuống mục hoàn tất nhưng không thể tạo mục thư viện",
|
"MessageItemDownloadCompleteFailedToCreate": "Tải xuống mục hoàn tất nhưng không thể tạo mục thư viện",
|
||||||
"MessageLoading": "Đang tải...",
|
"MessageLoading": "Đang tải...",
|
||||||
"MessageLoadingServerData": "Đang tải dữ liệu máy chủ...",
|
"MessageLoadingServerData": "Đang tải dữ liệu máy chủ...",
|
||||||
@@ -272,14 +265,13 @@
|
|||||||
"MessageNoMediaFolders": "Không có Thư Mục Phương Tiện",
|
"MessageNoMediaFolders": "Không có Thư Mục Phương Tiện",
|
||||||
"MessageNoNetworkConnection": "Không có kết nối mạng",
|
"MessageNoNetworkConnection": "Không có kết nối mạng",
|
||||||
"MessageNoPodcastsFound": "Không tìm thấy podcast",
|
"MessageNoPodcastsFound": "Không tìm thấy podcast",
|
||||||
"MessageNoSeries": "No series",
|
|
||||||
"MessageNoUpdatesWereNecessary": "Không cần cập nhật nào",
|
"MessageNoUpdatesWereNecessary": "Không cần cập nhật nào",
|
||||||
"MessageNoUserPlaylists": "Bạn không có danh sách phát nào",
|
"MessageNoUserPlaylists": "Bạn không có danh sách phát nào",
|
||||||
"MessageReportBugsAndContribute": "Báo cáo lỗi, yêu cầu tính năng và đóng góp tại",
|
"MessageReportBugsAndContribute": "Báo cáo lỗi, yêu cầu tính năng và đóng góp tại",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "Kết nối Socket qua dữ liệu di động đo lường",
|
"MessageSocketConnectedOverMeteredCellular": "Kết nối Socket qua dữ liệu di động đo lường",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "Kết nối Socket qua wifi đo lường",
|
"MessageSocketConnectedOverMeteredWifi": "Kết nối Socket qua Wi-Fi đo lường",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "Kết nối Socket qua dữ liệu di động không đo lường",
|
"MessageSocketConnectedOverUnmeteredCellular": "Kết nối Socket qua dữ liệu di động không đo lường",
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "Kết nối Socket qua wifi không đo lường",
|
"MessageSocketConnectedOverUnmeteredWifi": "Kết nối Socket qua Wi-Fi không đo lường",
|
||||||
"MessageSocketNotConnected": "Socket không kết nối",
|
"MessageSocketNotConnected": "Socket không kết nối",
|
||||||
"NoteRSSFeedPodcastAppsHttps": "Lưu ý: Hầu hết các ứng dụng podcast sẽ yêu cầu URL feed RSS sử dụng HTTPS",
|
"NoteRSSFeedPodcastAppsHttps": "Lưu ý: Hầu hết các ứng dụng podcast sẽ yêu cầu URL feed RSS sử dụng HTTPS",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "Lưu ý: 1 hoặc nhiều tập phim của bạn không có Ngày Xuất Bản. Một số ứng dụng podcast yêu cầu điều này.",
|
"NoteRSSFeedPodcastAppsPubDate": "Lưu ý: 1 hoặc nhiều tập phim của bạn không có Ngày Xuất Bản. Một số ứng dụng podcast yêu cầu điều này.",
|
||||||
@@ -293,4 +285,4 @@
|
|||||||
"ToastPodcastCreateSuccess": "Tạo podcast thành công",
|
"ToastPodcastCreateSuccess": "Tạo podcast thành công",
|
||||||
"ToastRSSFeedCloseFailed": "Không thể đóng RSS feed",
|
"ToastRSSFeedCloseFailed": "Không thể đóng RSS feed",
|
||||||
"ToastRSSFeedCloseSuccess": "Đóng RSS feed thành công"
|
"ToastRSSFeedCloseSuccess": "Đóng RSS feed thành công"
|
||||||
}
|
}
|
||||||
|
|||||||
+52
-34
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"ButtonAdd": "增加",
|
"ButtonAdd": "添加",
|
||||||
"ButtonAddNewServer": "添加新服务器",
|
"ButtonAddNewServer": "添加新服务器",
|
||||||
"ButtonAuthors": "作者",
|
"ButtonAuthors": "作者",
|
||||||
"ButtonBack": "返回",
|
"ButtonBack": "返回",
|
||||||
@@ -33,6 +33,7 @@
|
|||||||
"ButtonOverride": "覆盖",
|
"ButtonOverride": "覆盖",
|
||||||
"ButtonPause": "暂停",
|
"ButtonPause": "暂停",
|
||||||
"ButtonPlay": "播放",
|
"ButtonPlay": "播放",
|
||||||
|
"ButtonPlayEpisode": "播放剧集",
|
||||||
"ButtonPlaying": "正在播放",
|
"ButtonPlaying": "正在播放",
|
||||||
"ButtonPlaylists": "播放列表",
|
"ButtonPlaylists": "播放列表",
|
||||||
"ButtonRead": "读取",
|
"ButtonRead": "读取",
|
||||||
@@ -56,16 +57,17 @@
|
|||||||
"HeaderCollection": "收藏",
|
"HeaderCollection": "收藏",
|
||||||
"HeaderCollectionItems": "收藏项目",
|
"HeaderCollectionItems": "收藏项目",
|
||||||
"HeaderConnectionStatus": "连接状态",
|
"HeaderConnectionStatus": "连接状态",
|
||||||
|
"HeaderDataSettings": "数据设置",
|
||||||
"HeaderDetails": "详情",
|
"HeaderDetails": "详情",
|
||||||
"HeaderDownloads": "下载",
|
"HeaderDownloads": "下载",
|
||||||
"HeaderEbookFiles": "电子书文件",
|
"HeaderEbookFiles": "电子书文件",
|
||||||
"HeaderEpisodes": "剧集",
|
"HeaderEpisodes": "剧集",
|
||||||
"HeaderEreaderSettings": "阅读器设置",
|
"HeaderEreaderSettings": "电子阅读器设置",
|
||||||
"HeaderLatestEpisodes": "最新剧集",
|
"HeaderLatestEpisodes": "最新剧集",
|
||||||
"HeaderLibraries": "媒体库",
|
"HeaderLibraries": "媒体库",
|
||||||
"HeaderLocalFolders": "本地文件夹",
|
"HeaderLocalFolders": "本地文件夹",
|
||||||
"HeaderLocalLibraryItems": "本地库项目",
|
"HeaderLocalLibraryItems": "本地库项目",
|
||||||
"HeaderNewPlaylist": "新的播放列表",
|
"HeaderNewPlaylist": "新建播放列表",
|
||||||
"HeaderOpenRSSFeed": "打开 RSS 源",
|
"HeaderOpenRSSFeed": "打开 RSS 源",
|
||||||
"HeaderPlaybackSettings": "播放设置",
|
"HeaderPlaybackSettings": "播放设置",
|
||||||
"HeaderPlaylist": "播放列表",
|
"HeaderPlaylist": "播放列表",
|
||||||
@@ -82,24 +84,26 @@
|
|||||||
"HeaderTableOfContents": "目录",
|
"HeaderTableOfContents": "目录",
|
||||||
"HeaderUserInterfaceSettings": "用户界面设置",
|
"HeaderUserInterfaceSettings": "用户界面设置",
|
||||||
"HeaderYourStats": "你的统计数据",
|
"HeaderYourStats": "你的统计数据",
|
||||||
|
"LabelAddToPlaylist": "添加到播放列表",
|
||||||
"LabelAdded": "添加",
|
"LabelAdded": "添加",
|
||||||
"LabelAddedAt": "添加于",
|
"LabelAddedAt": "添加于",
|
||||||
"LabelAddToPlaylist": "添加到播放列表",
|
|
||||||
"LabelAll": "全部",
|
"LabelAll": "全部",
|
||||||
"LabelAllowSeekingOnMediaControls": "允许在媒体通知控件上查找位置",
|
"LabelAllowSeekingOnMediaControls": "允许在媒体通知控件上查找位置",
|
||||||
|
"LabelAlways": "总是",
|
||||||
|
"LabelAskConfirmation": "要求确认",
|
||||||
"LabelAuthor": "作者",
|
"LabelAuthor": "作者",
|
||||||
"LabelAuthorFirstLast": "作者 (姓 名)",
|
"LabelAuthorFirstLast": "作者 (姓 名)",
|
||||||
"LabelAuthorLastFirst": "作者 (名, 姓)",
|
"LabelAuthorLastFirst": "作者 (名, 姓)",
|
||||||
"LabelAuthors": "作者",
|
"LabelAuthors": "作者",
|
||||||
"LabelAutoDownloadEpisodes": "自动下载剧集",
|
"LabelAutoDownloadEpisodes": "自动下载剧集",
|
||||||
"LabelAutoRewindTime": "自动倒带时间",
|
"LabelAutoRewindTime": "自动倒带时间",
|
||||||
"LabelAutoSleepTimer": "自动睡眠定时器",
|
"LabelAutoSleepTimer": "自动睡眠定时器",
|
||||||
"LabelAutoSleepTimerAutoRewind": "自动睡眠定时器自动倒带",
|
"LabelAutoSleepTimerAutoRewind": "自动睡眠定时器自动倒带",
|
||||||
"LabelAutoSleepTimerAutoRewindHelp": "当自动睡眠计时器结束时, 再次播放该项目将自动倒带您之前的位置.",
|
"LabelAutoSleepTimerAutoRewindHelp": "当自动睡眠计时器结束时, 再次播放该项目将自动倒带你之前的位置.",
|
||||||
"LabelAutoSleepTimerHelp": "当在指定的时间范围内播放媒体时, 睡眠计时器将自动启动.",
|
"LabelAutoSleepTimerHelp": "当在指定的时间范围内播放媒体时, 睡眠计时器将自动启动.",
|
||||||
"LabelBooks": "图书",
|
"LabelBooks": "图书",
|
||||||
"LabelChapters": "章节",
|
|
||||||
"LabelChapterTrack": "章节音轨",
|
"LabelChapterTrack": "章节音轨",
|
||||||
|
"LabelChapters": "章节",
|
||||||
"LabelClosePlayer": "关闭播放器",
|
"LabelClosePlayer": "关闭播放器",
|
||||||
"LabelCollapseSeries": "折叠系列",
|
"LabelCollapseSeries": "折叠系列",
|
||||||
"LabelComplete": "已完成",
|
"LabelComplete": "已完成",
|
||||||
@@ -119,15 +123,16 @@
|
|||||||
"LabelDisableVibrateOnResetHelp": "当睡眠计时器重置时, 你的设备会振动. 启用此设置以在睡眠计时器重置时不振动.",
|
"LabelDisableVibrateOnResetHelp": "当睡眠计时器重置时, 你的设备会振动. 启用此设置以在睡眠计时器重置时不振动.",
|
||||||
"LabelDiscover": "发现",
|
"LabelDiscover": "发现",
|
||||||
"LabelDownload": "下载",
|
"LabelDownload": "下载",
|
||||||
|
"LabelDownloadUsingCellular": "使用移动数据网络进行下载",
|
||||||
"LabelDownloaded": "已下载",
|
"LabelDownloaded": "已下载",
|
||||||
"LabelDuration": "持续时间",
|
"LabelDuration": "持续时间",
|
||||||
"LabelEbook": "电子书",
|
"LabelEbook": "电子书",
|
||||||
"LabelEbooks": "电子书",
|
"LabelEbooks": "电子书",
|
||||||
"LabelEnable": "启用",
|
"LabelEnable": "启用",
|
||||||
"LabelEnableMp3IndexSeeking": "启用 mp3 索引搜索",
|
"LabelEnableMp3IndexSeeking": "启用 mp3 索引搜索",
|
||||||
"LabelEnableMp3IndexSeekingHelp": "只有当您的mp3文件未正确查找时, 才应启用此设置.不准确的搜索很可能是由于可变二进制(VBR)MP3文件. 此设置将强制进行索引查找, 即在读取文件时构建时间到字节的映射. 在某些情况下, 对于大型MP3文件, 在查找文件末尾时会有延迟.",
|
"LabelEnableMp3IndexSeekingHelp": "只有当你的 mp3 文件未正确查找时, 才应启用此设置. 不准确的搜索很可能是由于可变二进制 (VBR) MP3 文件. 此设置将强制进行索引查找, 即在读取文件时构建时间到字节的映射. 在某些情况下, 对于大型MP3文件, 在查找文件末尾时会有延迟.",
|
||||||
"LabelEnd": "结束",
|
"LabelEnd": "结束",
|
||||||
"LabelEndOfChapter": "章节结尾",
|
"LabelEndOfChapter": "章节结束",
|
||||||
"LabelEndTime": "结束时间",
|
"LabelEndTime": "结束时间",
|
||||||
"LabelEpisode": "剧集",
|
"LabelEpisode": "剧集",
|
||||||
"LabelFeedURL": "源 URL",
|
"LabelFeedURL": "源 URL",
|
||||||
@@ -137,6 +142,7 @@
|
|||||||
"LabelFilename": "文件名",
|
"LabelFilename": "文件名",
|
||||||
"LabelFinished": "已听完",
|
"LabelFinished": "已听完",
|
||||||
"LabelFolder": "文件夹",
|
"LabelFolder": "文件夹",
|
||||||
|
"LabelFontBoldness": "字体粗细",
|
||||||
"LabelFontScale": "字体比例",
|
"LabelFontScale": "字体比例",
|
||||||
"LabelGenre": "流派",
|
"LabelGenre": "流派",
|
||||||
"LabelGenres": "流派",
|
"LabelGenres": "流派",
|
||||||
@@ -146,8 +152,8 @@
|
|||||||
"LabelHeavy": "重",
|
"LabelHeavy": "重",
|
||||||
"LabelHigh": "高",
|
"LabelHigh": "高",
|
||||||
"LabelHost": "主机",
|
"LabelHost": "主机",
|
||||||
"LabelIncomplete": "未听完",
|
|
||||||
"LabelInProgress": "正在听",
|
"LabelInProgress": "正在听",
|
||||||
|
"LabelIncomplete": "未听完",
|
||||||
"LabelInternalAppStorage": "应用内部存储",
|
"LabelInternalAppStorage": "应用内部存储",
|
||||||
"LabelJumpBackwardsTime": "快退时间",
|
"LabelJumpBackwardsTime": "快退时间",
|
||||||
"LabelJumpForwardsTime": "快进时间",
|
"LabelJumpForwardsTime": "快进时间",
|
||||||
@@ -166,10 +172,15 @@
|
|||||||
"LabelMediaType": "媒体类型",
|
"LabelMediaType": "媒体类型",
|
||||||
"LabelMedium": "中等",
|
"LabelMedium": "中等",
|
||||||
"LabelMore": "更多",
|
"LabelMore": "更多",
|
||||||
"LabelMoreInfo": "更多..",
|
"LabelMoreInfo": "更多信息",
|
||||||
"LabelName": "名称",
|
"LabelName": "名称",
|
||||||
"LabelNarrator": "演播者",
|
"LabelNarrator": "演播者",
|
||||||
"LabelNarrators": "演播者",
|
"LabelNarrators": "演播者",
|
||||||
|
"LabelNavigateWithVolume": "使用音量键导航",
|
||||||
|
"LabelNavigateWithVolumeDisabled": "关闭",
|
||||||
|
"LabelNavigateWithVolumeEnabled": "打开",
|
||||||
|
"LabelNavigateWithVolumeMirrored": "镜像",
|
||||||
|
"LabelNever": "从不",
|
||||||
"LabelNewestAuthors": "最新作者",
|
"LabelNewestAuthors": "最新作者",
|
||||||
"LabelNewestEpisodes": "最新剧集",
|
"LabelNewestEpisodes": "最新剧集",
|
||||||
"LabelNo": "取消",
|
"LabelNo": "取消",
|
||||||
@@ -188,15 +199,16 @@
|
|||||||
"LabelProgress": "进度",
|
"LabelProgress": "进度",
|
||||||
"LabelPubDate": "出版日期",
|
"LabelPubDate": "出版日期",
|
||||||
"LabelPublishYear": "发布年份",
|
"LabelPublishYear": "发布年份",
|
||||||
"LabelRead": "阅读",
|
|
||||||
"LabelReadAgain": "再次阅读",
|
|
||||||
"LabelRecentlyAdded": "最近添加",
|
|
||||||
"LabelRecentSeries": "最近添加系列",
|
|
||||||
"LabelRemoveFromPlaylist": "从播放列表中删除",
|
|
||||||
"LabelRSSFeedCustomOwnerEmail": "自定义所有者电子邮件",
|
"LabelRSSFeedCustomOwnerEmail": "自定义所有者电子邮件",
|
||||||
"LabelRSSFeedCustomOwnerName": "自定义所有者名称",
|
"LabelRSSFeedCustomOwnerName": "自定义所有者名称",
|
||||||
"LabelRSSFeedPreventIndexing": "防止索引",
|
"LabelRSSFeedPreventIndexing": "防止索引",
|
||||||
"LabelRSSFeedSlug": "RSS 源段",
|
"LabelRSSFeedSlug": "RSS 源段",
|
||||||
|
"LabelRandomly": "随机",
|
||||||
|
"LabelRead": "阅读",
|
||||||
|
"LabelReadAgain": "再次阅读",
|
||||||
|
"LabelRecentSeries": "最近添加系列",
|
||||||
|
"LabelRecentlyAdded": "最近添加",
|
||||||
|
"LabelRemoveFromPlaylist": "从播放列表中删除",
|
||||||
"LabelScaleElapsedTimeBySpeed": "按速度缩放播放时间",
|
"LabelScaleElapsedTimeBySpeed": "按速度缩放播放时间",
|
||||||
"LabelSeason": "季",
|
"LabelSeason": "季",
|
||||||
"LabelSelectADevice": "选择设备",
|
"LabelSelectADevice": "选择设备",
|
||||||
@@ -219,6 +231,7 @@
|
|||||||
"LabelStatsMinutes": "分钟",
|
"LabelStatsMinutes": "分钟",
|
||||||
"LabelStatsMinutesListening": "收听分钟数",
|
"LabelStatsMinutesListening": "收听分钟数",
|
||||||
"LabelStatsWeekListening": "每周收听",
|
"LabelStatsWeekListening": "每周收听",
|
||||||
|
"LabelStreamingUsingCellular": "使用移动数据进行流媒体播放",
|
||||||
"LabelTag": "标签",
|
"LabelTag": "标签",
|
||||||
"LabelTags": "标签",
|
"LabelTags": "标签",
|
||||||
"LabelTheme": "主题",
|
"LabelTheme": "主题",
|
||||||
@@ -226,6 +239,7 @@
|
|||||||
"LabelThemeLight": "明亮",
|
"LabelThemeLight": "明亮",
|
||||||
"LabelTimeRemaining": "剩余 {0}",
|
"LabelTimeRemaining": "剩余 {0}",
|
||||||
"LabelTitle": "标题",
|
"LabelTitle": "标题",
|
||||||
|
"LabelTotalSize": "总大小",
|
||||||
"LabelTotalTrack": "音轨总数",
|
"LabelTotalTrack": "音轨总数",
|
||||||
"LabelTracks": "音轨",
|
"LabelTracks": "音轨",
|
||||||
"LabelType": "类型",
|
"LabelType": "类型",
|
||||||
@@ -240,26 +254,28 @@
|
|||||||
"MessageAndroid10Downloads": "Android 10 及以下版本将使用内部应用程序存储进行下载.",
|
"MessageAndroid10Downloads": "Android 10 及以下版本将使用内部应用程序存储进行下载.",
|
||||||
"MessageAttemptingServerConnection": "正在尝试连接服务器...",
|
"MessageAttemptingServerConnection": "正在尝试连接服务器...",
|
||||||
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf 服务器未连接",
|
"MessageAudiobookshelfServerNotConnected": "Audiobookshelf 服务器未连接",
|
||||||
"MessageAudiobookshelfServerRequired": "<strong>重要!</strong> 此应用程序设计用于与您或您认识的人托管的 Audiobookshelf 服务器配合使用. 此应用程序不提供任何内容.",
|
"MessageAudiobookshelfServerRequired": "<strong>重要!</strong> 此应用程序设计用于与你或你认识的人托管的 Audiobookshelf 服务器配合使用. 此应用程序不提供任何内容.",
|
||||||
"MessageBookshelfEmpty": "书架是空的",
|
"MessageBookshelfEmpty": "书架是空的",
|
||||||
"MessageConfirmDeleteLocalEpisode": "要从设备中删除本地剧集 \"{0}\" 吗? 服务器上的文件将不受影响.",
|
"MessageConfirmDeleteLocalEpisode": "要从设备中删除本地剧集 \"{0}\" 吗? 服务器上的文件将不受影响.",
|
||||||
"MessageConfirmDeleteLocalFiles": "要从设备中删除此项目的本地文件吗? 服务器上的文件和您的进度将不受影响.",
|
"MessageConfirmDeleteLocalFiles": "要从设备中删除此项目的本地文件吗? 服务器上的文件和你的进度将不受影响.",
|
||||||
"MessageConfirmDiscardProgress": "您确定要重置进度吗?",
|
"MessageConfirmDiscardProgress": "你确定要重置进度吗?",
|
||||||
"MessageConfirmMarkAsFinished": "您确定要要将此项目标记为已完成吗?",
|
"MessageConfirmDownloadUsingCellular": "你即将使用移动数据进行下载. 这可能包括运营商数据费用. 是否要继续?",
|
||||||
"MessageConfirmRemoveBookmark": "您确定要删除书签吗?",
|
"MessageConfirmMarkAsFinished": "你确定要要将此项目标记为已完成吗?",
|
||||||
|
"MessageConfirmRemoveBookmark": "你确定要删除书签吗?",
|
||||||
|
"MessageConfirmStreamingUsingCellular": "你将使用移动数据进行流媒体播放. 这可能包括运营商数据费用. 是否要继续?",
|
||||||
"MessageDiscardProgress": "放弃进度",
|
"MessageDiscardProgress": "放弃进度",
|
||||||
"MessageDownloadCompleteProcessing": "下载完成.正在处理...",
|
"MessageDownloadCompleteProcessing": "下载完成. 正在处理...",
|
||||||
"MessageDownloading": "下载中...",
|
"MessageDownloading": "下载中...",
|
||||||
"MessageDownloadingEpisode": "正在下载剧集",
|
"MessageDownloadingEpisode": "正在下载剧集",
|
||||||
"MessageEpisodesQueuedForDownload": "{0} 个剧集排队等待下载",
|
"MessageEpisodesQueuedForDownload": "{0} 个剧集排队等待下载",
|
||||||
"MessageFeedURLWillBe": "源 URL 将改为 {0}",
|
"MessageFeedURLWillBe": "源 URL 将改为 {0}",
|
||||||
"MessageFetching": "正在获取...",
|
"MessageFetching": "正在获取...",
|
||||||
"MessageFollowTheProjectOnGithub": "在 Github 上关注此项目",
|
"MessageFollowTheProjectOnGithub": "在 GitHub 上关注此项目",
|
||||||
"MessageItemDownloadCompleteFailedToCreate": "项目下载完成, 但未能创建库项目",
|
"MessageItemDownloadCompleteFailedToCreate": "项目下载完成, 但未能创建库项目",
|
||||||
"MessageLoading": "加载...",
|
"MessageLoading": "正在加载...",
|
||||||
"MessageLoadingServerData": "正在加载服务器数据...",
|
"MessageLoadingServerData": "正在加载服务器数据...",
|
||||||
"MessageMarkAsFinished": "标记为已听完",
|
"MessageMarkAsFinished": "标记为已听完",
|
||||||
"MessageMediaLinkedToADifferentServer": "媒体链接到了一个地址不同({0})的 Audiobookshelf 服务器上. 连接到此服务器地址时将同步进度.",
|
"MessageMediaLinkedToADifferentServer": "媒体链接到了一个地址不同 ({0}) 的 Audiobookshelf 服务器上. 连接到此服务器地址时将同步进度.",
|
||||||
"MessageMediaLinkedToADifferentUser": "媒体链接到此服务器, 但是由其他用户下载. 进度将只同步到下载的用户.",
|
"MessageMediaLinkedToADifferentUser": "媒体链接到此服务器, 但是由其他用户下载. 进度将只同步到下载的用户.",
|
||||||
"MessageMediaLinkedToServer": "链接到服务器 {0}",
|
"MessageMediaLinkedToServer": "链接到服务器 {0}",
|
||||||
"MessageMediaLinkedToThisServer": "下载的媒体链接到此服务器",
|
"MessageMediaLinkedToThisServer": "下载的媒体链接到此服务器",
|
||||||
@@ -272,25 +288,27 @@
|
|||||||
"MessageNoMediaFolders": "没有媒体文件夹",
|
"MessageNoMediaFolders": "没有媒体文件夹",
|
||||||
"MessageNoNetworkConnection": "无网络连接",
|
"MessageNoNetworkConnection": "无网络连接",
|
||||||
"MessageNoPodcastsFound": "未找到播客",
|
"MessageNoPodcastsFound": "未找到播客",
|
||||||
"MessageNoSeries": "No series",
|
"MessageNoSeries": "没有系列",
|
||||||
"MessageNoUpdatesWereNecessary": "无需更新",
|
"MessageNoUpdatesWereNecessary": "无需更新",
|
||||||
"MessageNoUserPlaylists": "你没有播放列表",
|
"MessageNoUserPlaylists": "你没有播放列表",
|
||||||
"MessageReportBugsAndContribute": "报告错误, 请求功能和贡献在",
|
"MessageReportBugsAndContribute": "报告错误、请求功能和贡献在",
|
||||||
"MessageSocketConnectedOverMeteredCellular": "通过按流量计费的蜂窝网络完成连接",
|
"MessageSocketConnectedOverMeteredCellular": "通过按流量计费的移动数据网络完成连接",
|
||||||
"MessageSocketConnectedOverMeteredWifi": "通过按流量计费的无线网络完成连接",
|
"MessageSocketConnectedOverMeteredWifi": "通过按流量计费的无线网络完成连接",
|
||||||
"MessageSocketConnectedOverUnmeteredCellular": "通过不计量的蜂窝网络完成连接",
|
"MessageSocketConnectedOverUnmeteredCellular": "通过不计量的移动数据网络完成连接",
|
||||||
"MessageSocketConnectedOverUnmeteredWifi": "通过不计量的无线网络完成连接",
|
"MessageSocketConnectedOverUnmeteredWifi": "通过不计量的无线网络完成连接",
|
||||||
"MessageSocketNotConnected": "未连接",
|
"MessageSocketNotConnected": "未连接",
|
||||||
"NoteRSSFeedPodcastAppsHttps": "警告: 大多数播客应用程序都需要 RSS 源 URL 使用 HTTPS",
|
"NoteRSSFeedPodcastAppsHttps": "警告: 大多数播客应用程序都需要 RSS 源 URL 使用 HTTPS",
|
||||||
"NoteRSSFeedPodcastAppsPubDate": "警告: 您的一集或多集没有发布日期. 一些播客应用程序要求这样做.",
|
"NoteRSSFeedPodcastAppsPubDate": "警告: 你的一集或多集没有发布日期. 一些播客应用程序要求这样做.",
|
||||||
"ToastBookmarkCreateFailed": "创建书签失败",
|
"ToastBookmarkCreateFailed": "创建书签失败",
|
||||||
"ToastBookmarkRemoveFailed": "书签删除失败",
|
"ToastBookmarkRemoveFailed": "书签删除失败",
|
||||||
"ToastBookmarkUpdateFailed": "书签更新失败",
|
"ToastBookmarkUpdateFailed": "书签更新失败",
|
||||||
"ToastItemMarkedAsFinishedFailed": "标记为听完失败",
|
"ToastDownloadNotAllowedOnCellular": "不允许通过移动数据进行下载",
|
||||||
"ToastItemMarkedAsNotFinishedFailed": "标记为未听完失败",
|
"ToastItemMarkedAsFinishedFailed": "无法标记为已听完",
|
||||||
|
"ToastItemMarkedAsNotFinishedFailed": "无法标记为未听完",
|
||||||
"ToastPlaylistCreateFailed": "创建播放列表失败",
|
"ToastPlaylistCreateFailed": "创建播放列表失败",
|
||||||
"ToastPodcastCreateFailed": "创建播客失败",
|
"ToastPodcastCreateFailed": "创建播客失败",
|
||||||
"ToastPodcastCreateSuccess": "已成功创建播客",
|
"ToastPodcastCreateSuccess": "已成功创建播客",
|
||||||
"ToastRSSFeedCloseFailed": "关闭 RSS 源失败",
|
"ToastRSSFeedCloseFailed": "关闭 RSS 源失败",
|
||||||
"ToastRSSFeedCloseSuccess": "RSS 源已关闭"
|
"ToastRSSFeedCloseSuccess": "RSS 源已关闭",
|
||||||
}
|
"ToastStreamingNotAllowedOnCellular": "不允许通过移动数据进行流媒体播放"
|
||||||
|
}
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
{}
|
||||||
Reference in New Issue
Block a user