Compare commits
230 Commits
jtr/test-s
...
jtr/chore-
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7ab2238b6a | ||
|
|
150c225933 | ||
|
|
c260003b50 | ||
|
|
d71c91a00c | ||
|
|
f1fd8bbba6 | ||
|
|
34c91a2767 | ||
|
|
0727930103 | ||
|
|
1dab94d577 | ||
|
|
edf96ce418 | ||
|
|
c3768ac232 | ||
|
|
04dec46ba9 | ||
|
|
0f6e5c565b | ||
|
|
fa4575836b | ||
|
|
8a3c617cb5 | ||
|
|
8adf7b73f5 | ||
|
|
dff3fee9f2 | ||
|
|
1c6d28f034 | ||
|
|
c9c9ea77a9 | ||
|
|
1fd167e6f4 | ||
|
|
f1fcd03cc5 | ||
|
|
ca0be4eb80 | ||
|
|
6901bfbeb7 | ||
|
|
eef028e632 | ||
|
|
e7b2d26d2f | ||
|
|
2a690fd154 | ||
|
|
5f54a06994 | ||
|
|
134fa6779b | ||
|
|
bea82ac656 | ||
|
|
72150d6deb | ||
|
|
be2c26a75b | ||
|
|
b51d332719 | ||
|
|
82d33b7727 | ||
|
|
aa47e85c25 | ||
|
|
79c07d38aa | ||
|
|
687261fc8c | ||
|
|
2d0a24f042 | ||
|
|
6112526fbc | ||
|
|
ba88bf4727 | ||
|
|
0478825fac | ||
|
|
af33953078 | ||
|
|
7a0093c163 | ||
|
|
d09b8c99de | ||
|
|
65b985efde | ||
|
|
5ada35c153 | ||
|
|
227371c0de | ||
|
|
8372533cff | ||
|
|
45750b3f29 | ||
|
|
9561ce24f5 | ||
|
|
edeba296b3 | ||
|
|
3310ec30c4 | ||
|
|
e15b429aea | ||
|
|
65c9e346da | ||
|
|
720e588727 | ||
|
|
522663b9f0 | ||
|
|
b79af98a31 | ||
|
|
1bdc27202a | ||
|
|
f46eea1eac | ||
|
|
315241fb44 | ||
|
|
d73d5a25cb | ||
|
|
34c2125217 | ||
|
|
70fd0e3348 | ||
|
|
9caa4e20e5 | ||
|
|
ce19caa37e | ||
|
|
128d708ac3 | ||
|
|
b5092e598f | ||
|
|
550b15a19a | ||
|
|
55fe320359 | ||
|
|
370d9f4d47 | ||
|
|
e10805fb35 | ||
|
|
c3ddf91572 | ||
|
|
e48f871bd0 | ||
|
|
1f6fe21527 | ||
|
|
4775ce4266 | ||
|
|
b1fbfc693d | ||
|
|
418f9598c3 | ||
|
|
ba99550d06 | ||
|
|
e76cc5a7d0 | ||
|
|
2386328401 | ||
|
|
4a4c30af55 | ||
|
|
264cfed5f4 | ||
|
|
11d0f8b6d7 | ||
|
|
5e238a68f6 | ||
|
|
761a6979a7 | ||
|
|
51a4bc519b | ||
|
|
f61ef6d7e6 | ||
|
|
a08aec2dbd | ||
|
|
5d0acf80dd | ||
|
|
aedae2c601 | ||
|
|
4a077c3454 | ||
|
|
2066eb4275 | ||
|
|
400fe317e9 | ||
|
|
a228601ed0 | ||
|
|
8160f0af8a | ||
|
|
b1a114ded5 | ||
|
|
f2373f1102 | ||
|
|
04ddeeec4a | ||
|
|
37dbe1324e | ||
|
|
7f71b46942 | ||
|
|
e140081811 | ||
|
|
b08fca0abe | ||
|
|
cdc951ea45 | ||
|
|
33d6f1e984 | ||
|
|
6e40f6e8a6 | ||
|
|
668ad4faac | ||
|
|
cf1fc78175 | ||
|
|
21ab477b35 | ||
|
|
c6c11d474b | ||
|
|
8bb13df6cf | ||
|
|
f81475445d | ||
|
|
6408ed0b51 | ||
|
|
b040fb1c73 | ||
|
|
0390c067ab | ||
|
|
a8d69ffed1 | ||
|
|
ef226e9ec6 | ||
|
|
080335009b | ||
|
|
8d671640d9 | ||
|
|
ac2257a202 | ||
|
|
53be1f245d | ||
|
|
ff2b182df4 | ||
|
|
cad90ac28a | ||
|
|
7100c71166 | ||
|
|
916ce3f8ec | ||
|
|
fd3878448b | ||
|
|
ebfdbf86b9 | ||
|
|
c04c320e61 | ||
|
|
d7fa94b90b | ||
|
|
bcbb64443b | ||
|
|
45a924cafd | ||
|
|
730b30381f | ||
|
|
dde7b7cf87 | ||
|
|
8d08553f0c | ||
|
|
79155a956f | ||
|
|
442efad6b4 | ||
|
|
abe86a9bc2 | ||
|
|
9775923137 | ||
|
|
61a9fe6655 | ||
|
|
4b015568fc | ||
|
|
11b36dfd22 | ||
|
|
69bac42bba | ||
|
|
fa1f6e2efb | ||
|
|
b4b5986be9 | ||
|
|
16fbf5ac9b | ||
|
|
50c849ebf9 | ||
|
|
bf5c11a8fa | ||
|
|
46f87f6e46 | ||
|
|
7da87dcbfd | ||
|
|
f71f19c0c7 | ||
|
|
027bb149a4 | ||
|
|
8443e166af | ||
|
|
1e8374d509 | ||
|
|
de4f41bc78 | ||
|
|
b2e332fa69 | ||
|
|
ae73f7aaf5 | ||
|
|
dbee8cf5d8 | ||
|
|
5c85757f4f | ||
|
|
2fbcbc0eaf | ||
|
|
c378e95ad6 | ||
|
|
b41bf5c7ef | ||
|
|
149c8b31e1 | ||
|
|
f2a5a8d70e | ||
|
|
a17f4d4eb1 | ||
|
|
c8989d853c | ||
|
|
85ba4e0fa1 | ||
|
|
128f56c8c8 | ||
|
|
93c254f451 | ||
|
|
5bc3ae7a75 | ||
|
|
e81f01e5a0 | ||
|
|
34fe033ace | ||
|
|
873ae96c6b | ||
|
|
8713730419 | ||
|
|
3d09e8d912 | ||
|
|
3950ef8b16 | ||
|
|
d56b24112e | ||
|
|
50cc3439af | ||
|
|
e4522ca961 | ||
|
|
105eaeae74 | ||
|
|
2e4ede0320 | ||
|
|
87022e1ae1 | ||
|
|
2d648e36b9 | ||
|
|
a6bcb1075f | ||
|
|
929e165466 | ||
|
|
e2c4db1541 | ||
|
|
b7c6240327 | ||
|
|
92d9ca66cd | ||
|
|
90deae46c5 | ||
|
|
fc94930b16 | ||
|
|
0fe01de26c | ||
|
|
61a5371ec6 | ||
|
|
2437046e25 | ||
|
|
a93ada7112 | ||
|
|
60b6e834cc | ||
|
|
0ba517b1b0 | ||
|
|
9b547f5c8d | ||
|
|
30fa7e5390 | ||
|
|
fae36e04ea | ||
|
|
ed6bb52821 | ||
|
|
588f7cdf96 | ||
|
|
bfed45ffe3 | ||
|
|
afde920978 | ||
|
|
c258ea9338 | ||
|
|
afe1c1ebde | ||
|
|
0d6a469321 | ||
|
|
955478a853 | ||
|
|
7321ec7f23 | ||
|
|
0747954803 | ||
|
|
80c0945b47 | ||
|
|
ebf9cbf4a1 | ||
|
|
e25f864e28 | ||
|
|
efdf1ccf36 | ||
|
|
790a1bfca8 | ||
|
|
59b68e1248 | ||
|
|
12f1b91ee1 | ||
|
|
a0871deec4 | ||
|
|
772e0349fc | ||
|
|
8af5e06b62 | ||
|
|
1f64141928 | ||
|
|
ce9119a708 | ||
|
|
7352aaff03 | ||
|
|
481fe1574a | ||
|
|
cc6f49b762 | ||
|
|
45bae0ea48 | ||
|
|
b4dfdf6492 | ||
|
|
4da7137278 | ||
|
|
3900c45ea4 | ||
|
|
2ad593cc3a | ||
|
|
09a1ca3981 | ||
|
|
4dba1455a6 | ||
|
|
b378a21733 | ||
|
|
7a025ffb0b | ||
|
|
6149168129 |
4
.github/workflows/autocheckers.yml
vendored
4
.github/workflows/autocheckers.yml
vendored
@@ -52,7 +52,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
@@ -82,7 +82,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
@@ -31,7 +31,7 @@ jobs:
|
||||
- 'version.php'
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
6
.github/workflows/codeql.yml
vendored
6
.github/workflows/codeql.yml
vendored
@@ -32,18 +32,18 @@ jobs:
|
||||
build-mode: none
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@cdefb33c0f6224e58673d9004f47f7cb3e328b89 # v4.31.10
|
||||
uses: github/codeql-action/init@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # v4.32.0
|
||||
with:
|
||||
languages: ${{ matrix.language }}
|
||||
build-mode: ${{ matrix.build-mode }}
|
||||
config-file: ./.github/codeql-config.yml
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@cdefb33c0f6224e58673d9004f47f7cb3e328b89 # v4.31.10
|
||||
uses: github/codeql-action/analyze@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # v4.32.0
|
||||
with:
|
||||
category: "/language:${{matrix.language}}"
|
||||
|
||||
2
.github/workflows/command-compile.yml
vendored
2
.github/workflows/command-compile.yml
vendored
@@ -103,7 +103,7 @@ jobs:
|
||||
key: git-repo
|
||||
|
||||
- name: Checkout ${{ needs.init.outputs.head_ref }}
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
# Needed to allow force push later
|
||||
persist-credentials: true
|
||||
|
||||
2
.github/workflows/command-pull-3rdparty.yml
vendored
2
.github/workflows/command-pull-3rdparty.yml
vendored
@@ -38,7 +38,7 @@ jobs:
|
||||
id: comment-branch
|
||||
|
||||
- name: Checkout ${{ steps.comment-branch.outputs.head_ref }}
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
fetch-depth: 0
|
||||
|
||||
12
.github/workflows/cypress.yml
vendored
12
.github/workflows/cypress.yml
vendored
@@ -48,7 +48,7 @@ jobs:
|
||||
exit 1
|
||||
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
# We need to checkout submodules for 3rdparty
|
||||
@@ -107,7 +107,7 @@ jobs:
|
||||
services:
|
||||
mysql:
|
||||
# Only start mysql if we are running the setup tests
|
||||
image: ${{matrix.containers == 'setup' && 'ghcr.io/nextcloud/continuous-integration-mysql-8.4:latest' || ''}}
|
||||
image: ${{matrix.containers == 'setup' && 'ghcr.io/nextcloud/continuous-integration-mysql-8.4:latest' || ''}} # zizmor: ignore[unpinned-images]
|
||||
ports:
|
||||
- '3306/tcp'
|
||||
env:
|
||||
@@ -119,7 +119,7 @@ jobs:
|
||||
|
||||
mariadb:
|
||||
# Only start mariadb if we are running the setup tests
|
||||
image: ${{matrix.containers == 'setup' && 'mariadb:11.4' || ''}}
|
||||
image: ${{matrix.containers == 'setup' && 'mariadb:11.4' || ''}} # zizmor: ignore[unpinned-images]
|
||||
ports:
|
||||
- '3306/tcp'
|
||||
env:
|
||||
@@ -131,7 +131,7 @@ jobs:
|
||||
|
||||
postgres:
|
||||
# Only start postgres if we are running the setup tests
|
||||
image: ${{matrix.containers == 'setup' && 'ghcr.io/nextcloud/continuous-integration-postgres-17:latest' || ''}}
|
||||
image: ${{matrix.containers == 'setup' && 'ghcr.io/nextcloud/continuous-integration-postgres-17:latest' || ''}} # zizmor: ignore[unpinned-images]
|
||||
ports:
|
||||
- '5432/tcp'
|
||||
env:
|
||||
@@ -142,7 +142,7 @@ jobs:
|
||||
|
||||
oracle:
|
||||
# Only start oracle if we are running the setup tests
|
||||
image: ${{matrix.containers == 'setup' && 'ghcr.io/gvenzl/oracle-free:23' || ''}}
|
||||
image: ${{matrix.containers == 'setup' && 'ghcr.io/gvenzl/oracle-free:23' || ''}} # zizmor: ignore[unpinned-images]
|
||||
ports:
|
||||
- '1521'
|
||||
env:
|
||||
@@ -171,7 +171,7 @@ jobs:
|
||||
run: ./node_modules/cypress/bin/cypress install
|
||||
|
||||
- name: Run ${{ matrix.containers == 'component' && 'component' || 'E2E' }} cypress tests
|
||||
uses: cypress-io/github-action@dca986193e4336cb32820819b07e9ecacacaaaf6 # v7.0.0
|
||||
uses: cypress-io/github-action@0f330ebf0d60f87608ed72f1d6232e5644aa3171 # v7.1.1
|
||||
with:
|
||||
# We already installed the dependencies in the init job
|
||||
install: false
|
||||
|
||||
2
.github/workflows/files-external-ftp.yml
vendored
2
.github/workflows/files-external-ftp.yml
vendored
@@ -65,7 +65,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
4
.github/workflows/files-external-s3.yml
vendored
4
.github/workflows/files-external-s3.yml
vendored
@@ -74,7 +74,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
@@ -163,7 +163,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
2
.github/workflows/files-external-sftp.yml
vendored
2
.github/workflows/files-external-sftp.yml
vendored
@@ -65,7 +65,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
@@ -56,13 +56,13 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
- name: Checkout user_saml
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
repository: nextcloud/user_saml
|
||||
|
||||
2
.github/workflows/files-external-smb.yml
vendored
2
.github/workflows/files-external-smb.yml
vendored
@@ -75,7 +75,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
2
.github/workflows/files-external-webdav.yml
vendored
2
.github/workflows/files-external-webdav.yml
vendored
@@ -70,7 +70,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
2
.github/workflows/files-external.yml
vendored
2
.github/workflows/files-external.yml
vendored
@@ -64,7 +64,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
@@ -24,14 +24,14 @@ jobs:
|
||||
require: write
|
||||
|
||||
- name: Checkout github_helper
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
repository: nextcloud/github_helper
|
||||
path: github_helper
|
||||
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
path: server
|
||||
|
||||
4
.github/workflows/integration-dav.yml
vendored
4
.github/workflows/integration-dav.yml
vendored
@@ -53,7 +53,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
@@ -71,7 +71,7 @@ jobs:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Set up Python
|
||||
uses: LizardByte/actions/actions/setup_python@e6bc045033a5614035b66daafc38ff86faecb23a # v2026.116.208
|
||||
uses: LizardByte/actions/actions/setup_python@09a6e10dc8175f2933c20bdf35fde0a193a9c00e # v2026.129.194351
|
||||
with:
|
||||
python-version: '2.7'
|
||||
|
||||
|
||||
2
.github/workflows/integration-litmus.yml
vendored
2
.github/workflows/integration-litmus.yml
vendored
@@ -52,7 +52,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
2
.github/workflows/integration-s3-primary.yml
vendored
2
.github/workflows/integration-s3-primary.yml
vendored
@@ -76,7 +76,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
6
.github/workflows/integration-sqlite.yml
vendored
6
.github/workflows/integration-sqlite.yml
vendored
@@ -97,14 +97,14 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
- name: Checkout Talk app
|
||||
if: ${{ matrix.test-suite == 'videoverification_features' }}
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
repository: nextcloud/spreed
|
||||
@@ -113,7 +113,7 @@ jobs:
|
||||
|
||||
- name: Checkout Activity app
|
||||
if: ${{ matrix.test-suite == 'sharing_features' }}
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
repository: nextcloud/activity
|
||||
|
||||
2
.github/workflows/lint-eslint.yml
vendored
2
.github/workflows/lint-eslint.yml
vendored
@@ -56,7 +56,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
2
.github/workflows/lint-php-cs.yml
vendored
2
.github/workflows/lint-php-cs.yml
vendored
@@ -48,7 +48,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
2
.github/workflows/lint-php.yml
vendored
2
.github/workflows/lint-php.yml
vendored
@@ -53,7 +53,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
2
.github/workflows/lint-stylelint.yml
vendored
2
.github/workflows/lint-stylelint.yml
vendored
@@ -25,7 +25,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
2
.github/workflows/node-test-handlebars.yml
vendored
2
.github/workflows/node-test-handlebars.yml
vendored
@@ -59,7 +59,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
2
.github/workflows/node-test.yml
vendored
2
.github/workflows/node-test.yml
vendored
@@ -58,7 +58,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
2
.github/workflows/node.yml
vendored
2
.github/workflows/node.yml
vendored
@@ -56,7 +56,7 @@ jobs:
|
||||
name: NPM build
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
2
.github/workflows/npm-audit-fix.yml
vendored
2
.github/workflows/npm-audit-fix.yml
vendored
@@ -35,7 +35,7 @@ jobs:
|
||||
steps:
|
||||
- name: Checkout
|
||||
id: checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
ref: ${{ matrix.branches }}
|
||||
|
||||
2
.github/workflows/object-storage-azure.yml
vendored
2
.github/workflows/object-storage-azure.yml
vendored
@@ -79,7 +79,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
2
.github/workflows/object-storage-s3.yml
vendored
2
.github/workflows/object-storage-s3.yml
vendored
@@ -80,7 +80,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
2
.github/workflows/object-storage-swift.yml
vendored
2
.github/workflows/object-storage-swift.yml
vendored
@@ -77,7 +77,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
2
.github/workflows/openapi.yml
vendored
2
.github/workflows/openapi.yml
vendored
@@ -26,7 +26,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
2
.github/workflows/performance.yml
vendored
2
.github/workflows/performance.yml
vendored
@@ -35,7 +35,7 @@ jobs:
|
||||
exit 1
|
||||
|
||||
- name: Checkout server before PR
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
2
.github/workflows/phpunit-32bits.yml
vendored
2
.github/workflows/phpunit-32bits.yml
vendored
@@ -33,7 +33,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
2
.github/workflows/phpunit-mariadb.yml
vendored
2
.github/workflows/phpunit-mariadb.yml
vendored
@@ -92,7 +92,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
2
.github/workflows/phpunit-memcached.yml
vendored
2
.github/workflows/phpunit-memcached.yml
vendored
@@ -72,7 +72,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
2
.github/workflows/phpunit-mysql-sharding.yml
vendored
2
.github/workflows/phpunit-mysql-sharding.yml
vendored
@@ -121,7 +121,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
2
.github/workflows/phpunit-mysql.yml
vendored
2
.github/workflows/phpunit-mysql.yml
vendored
@@ -92,7 +92,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
2
.github/workflows/phpunit-nodb.yml
vendored
2
.github/workflows/phpunit-nodb.yml
vendored
@@ -75,7 +75,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
@@ -72,7 +72,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
2
.github/workflows/phpunit-oci.yml
vendored
2
.github/workflows/phpunit-oci.yml
vendored
@@ -99,7 +99,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
2
.github/workflows/phpunit-pgsql.yml
vendored
2
.github/workflows/phpunit-pgsql.yml
vendored
@@ -92,7 +92,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
13
.github/workflows/phpunit-sqlite.yml
vendored
13
.github/workflows/phpunit-sqlite.yml
vendored
@@ -75,7 +75,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout server
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
@@ -86,14 +86,17 @@ jobs:
|
||||
with:
|
||||
php-version: ${{ matrix.php-versions }}
|
||||
# https://docs.nextcloud.com/server/stable/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation
|
||||
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
|
||||
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, imagick, intl, json, libxml, mbstring, openssl, pcntl, posix, redis, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite
|
||||
coverage: ${{ matrix.coverage && 'xdebug' || 'none' }}
|
||||
ini-file: development
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Set up dependencies
|
||||
run: composer i
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y ghostscript
|
||||
composer i
|
||||
|
||||
- name: Set up Nextcloud
|
||||
run: |
|
||||
@@ -107,7 +110,7 @@ jobs:
|
||||
run: ./occ app:list && echo "======= System config =======" && ./occ config:list system
|
||||
|
||||
- name: PHPUnit database tests
|
||||
run: composer run test:db -- --log-junit junit.xml ${{ matrix.coverage && '--coverage-clover ./clover.db.xml' || '' }}
|
||||
run: composer run test:db -- --log-junit junit.xml ${{ matrix.coverage && '--coverage-clover ./clover.db.xml' || '' }} tests/lib/Preview/PostscriptTest.php
|
||||
|
||||
- name: Upload db code coverage
|
||||
if: ${{ !cancelled() && matrix.coverage }}
|
||||
@@ -125,6 +128,8 @@ jobs:
|
||||
- name: Print logs
|
||||
if: always()
|
||||
run: |
|
||||
gs --version
|
||||
cat /etc/ImageMagick-6/policy.xml
|
||||
cat data/nextcloud.log
|
||||
|
||||
summary:
|
||||
|
||||
45
.github/workflows/rector.yml
vendored
Normal file
45
.github/workflows/rector.yml
vendored
Normal file
@@ -0,0 +1,45 @@
|
||||
# SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
|
||||
# SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
name: Rector
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: rector-${{ github.head_ref || github.run_id }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
strict:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
if: ${{ github.event_name != 'push' && github.repository_owner != 'nextcloud-gmbh' }}
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
- name: Set up php
|
||||
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 #v2.36.0
|
||||
with:
|
||||
php-version: '8.2'
|
||||
extensions: apcu,ctype,curl,dom,fileinfo,ftp,gd,imagick,intl,json,ldap,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
|
||||
coverage: none
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Composer install
|
||||
run: composer i
|
||||
|
||||
- name: Rector
|
||||
run: composer run rector:strict
|
||||
|
||||
- name: Show changes
|
||||
if: always()
|
||||
run: git diff --exit-code -- . ':!lib/composer'
|
||||
2
.github/workflows/reuse.yml
vendored
2
.github/workflows/reuse.yml
vendored
@@ -19,7 +19,7 @@ jobs:
|
||||
runs-on: ubuntu-latest-low
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
|
||||
|
||||
41
.github/workflows/static-code-analysis.yml
vendored
41
.github/workflows/static-code-analysis.yml
vendored
@@ -15,7 +15,6 @@ on:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
security-events: write
|
||||
|
||||
concurrency:
|
||||
group: static-code-analysis-${{ github.head_ref || github.run_id }}
|
||||
@@ -29,7 +28,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
@@ -59,9 +58,12 @@ jobs:
|
||||
|
||||
if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
|
||||
|
||||
permissions:
|
||||
security-events: write
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
@@ -86,7 +88,7 @@ jobs:
|
||||
|
||||
- name: Upload Security Analysis results to GitHub
|
||||
if: always()
|
||||
uses: github/codeql-action/upload-sarif@cdefb33c0f6224e58673d9004f47f7cb3e328b89 # v3
|
||||
uses: github/codeql-action/upload-sarif@b20883b0cd1f46c72ae0ba6d1090936928f9fa30 # v3
|
||||
with:
|
||||
sarif_file: results.sarif
|
||||
|
||||
@@ -97,7 +99,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
@@ -129,7 +131,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
@@ -149,3 +151,30 @@ jobs:
|
||||
|
||||
- name: Psalm
|
||||
run: composer run psalm:ncu -- --threads=1 --monochrome --no-progress --output-format=github
|
||||
|
||||
static-code-analysis-strict:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
if: ${{ github.event_name != 'push' && github.repository_owner != 'nextcloud-gmbh' }}
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
- name: Set up php
|
||||
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 #v2.36.0
|
||||
with:
|
||||
php-version: '8.2'
|
||||
extensions: ctype,curl,dom,fileinfo,gd,imagick,intl,json,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
|
||||
coverage: none
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Composer install
|
||||
run: composer i
|
||||
|
||||
- name: Psalm
|
||||
run: composer run psalm:strict -- --threads=1 --monochrome --no-progress --output-format=github
|
||||
|
||||
2
.github/workflows/update-cacert-bundle.yml
vendored
2
.github/workflows/update-cacert-bundle.yml
vendored
@@ -22,7 +22,7 @@ jobs:
|
||||
name: update-ca-certificate-bundle-${{ matrix.branches }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
ref: ${{ matrix.branches }}
|
||||
|
||||
@@ -22,7 +22,7 @@ jobs:
|
||||
name: update-code-signing-crl-${{ matrix.branches }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
ref: ${{ matrix.branches }}
|
||||
|
||||
@@ -16,7 +16,7 @@ jobs:
|
||||
runs-on: ubuntu-latest-low
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
||||
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||
with:
|
||||
persist-credentials: false
|
||||
submodules: true
|
||||
|
||||
@@ -35,8 +35,8 @@ Enterprise? Public Sector or Education user? You may want to have a look into [*
|
||||
## Get in touch 💬
|
||||
|
||||
* [📋 Forum](https://help.nextcloud.com)
|
||||
* [🦋 Bluesky](https://bsky.app/profile/nextcloud.bsky.social)
|
||||
* [👥 Facebook](https://www.facebook.com/nextclouders)
|
||||
* [🐣 Twitter](https://twitter.com/Nextclouders)
|
||||
* [🐘 Mastodon](https://mastodon.xyz/@nextcloud)
|
||||
|
||||
You can also [get support for Nextcloud](https://nextcloud.com/support)!
|
||||
|
||||
@@ -10,11 +10,18 @@ OC.L10N.register(
|
||||
"{author} commented on {file}" : "{author} je komentirao {file}",
|
||||
"<strong>Comments</strong> for files" : "<strong>Komentari</strong> za datoteke",
|
||||
"Files" : "Datoteke",
|
||||
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted" : "Spomenuti ste u komentaru na „{file}” od računa koji je u međuvremenu izbrisan.",
|
||||
"{user} mentioned you in a comment on \"{file}\"" : "{user} vas je spomenuo u komentaru na „{file}”",
|
||||
"Files app plugin to add comments to files" : "Dodatak za aplikaciju Datoteke za dodavanje komentara na datoteke",
|
||||
"Edit comment" : "Uredi komentar",
|
||||
"Delete comment" : "Izbriši komentar",
|
||||
"Cancel edit" : "Otkaži uređivanje",
|
||||
"New comment" : "Novi komentar",
|
||||
"Write a comment …" : "Napiši komentar …",
|
||||
"Post comment" : "Objavi komentar",
|
||||
"@ for mentions, : for emoji, / for smart picker" : "@ za spominjanje, : za emoji, / za pametni odabir",
|
||||
"Could not reload comments" : "Nije moguće ponovno učitati komentare",
|
||||
"Failed to mark comments as read" : "Nije uspjelo označavanje komentara kao pročitani",
|
||||
"Unable to load the comments list" : "Nije moguće učitati popis komentara",
|
||||
"No comments yet, start the conversation!" : "Još nema komentara, započnite razgovor!",
|
||||
"No more messages" : "Nema više poruka",
|
||||
@@ -24,6 +31,7 @@ OC.L10N.register(
|
||||
"An error occurred while trying to edit the comment" : "Došlo je do pogreške prilikom uređivanja komentara",
|
||||
"Comment deleted" : "Komentar izbrisan",
|
||||
"An error occurred while trying to delete the comment" : "Došlo je do pogreške prilikom brisanja komentara",
|
||||
"An error occurred while trying to create the comment" : "Došlo je do pogreške prilikom stvaranja komentara"
|
||||
"An error occurred while trying to create the comment" : "Došlo je do pogreške prilikom stvaranja komentara",
|
||||
"Write a comment …" : "Napiši komentar …"
|
||||
},
|
||||
"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;");
|
||||
|
||||
@@ -8,11 +8,18 @@
|
||||
"{author} commented on {file}" : "{author} je komentirao {file}",
|
||||
"<strong>Comments</strong> for files" : "<strong>Komentari</strong> za datoteke",
|
||||
"Files" : "Datoteke",
|
||||
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted" : "Spomenuti ste u komentaru na „{file}” od računa koji je u međuvremenu izbrisan.",
|
||||
"{user} mentioned you in a comment on \"{file}\"" : "{user} vas je spomenuo u komentaru na „{file}”",
|
||||
"Files app plugin to add comments to files" : "Dodatak za aplikaciju Datoteke za dodavanje komentara na datoteke",
|
||||
"Edit comment" : "Uredi komentar",
|
||||
"Delete comment" : "Izbriši komentar",
|
||||
"Cancel edit" : "Otkaži uređivanje",
|
||||
"New comment" : "Novi komentar",
|
||||
"Write a comment …" : "Napiši komentar …",
|
||||
"Post comment" : "Objavi komentar",
|
||||
"@ for mentions, : for emoji, / for smart picker" : "@ za spominjanje, : za emoji, / za pametni odabir",
|
||||
"Could not reload comments" : "Nije moguće ponovno učitati komentare",
|
||||
"Failed to mark comments as read" : "Nije uspjelo označavanje komentara kao pročitani",
|
||||
"Unable to load the comments list" : "Nije moguće učitati popis komentara",
|
||||
"No comments yet, start the conversation!" : "Još nema komentara, započnite razgovor!",
|
||||
"No more messages" : "Nema više poruka",
|
||||
@@ -22,6 +29,7 @@
|
||||
"An error occurred while trying to edit the comment" : "Došlo je do pogreške prilikom uređivanja komentara",
|
||||
"Comment deleted" : "Komentar izbrisan",
|
||||
"An error occurred while trying to delete the comment" : "Došlo je do pogreške prilikom brisanja komentara",
|
||||
"An error occurred while trying to create the comment" : "Došlo je do pogreške prilikom stvaranja komentara"
|
||||
"An error occurred while trying to create the comment" : "Došlo je do pogreške prilikom stvaranja komentara",
|
||||
"Write a comment …" : "Napiši komentar …"
|
||||
},"pluralForm" :"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"
|
||||
}
|
||||
@@ -2,6 +2,8 @@ OC.L10N.register(
|
||||
"contactsinteraction",
|
||||
{
|
||||
"Recently contacted" : "Nedavno kontaktiran",
|
||||
"Contacts Interaction" : "Interakcija kontakata"
|
||||
"Contacts Interaction" : "Interakcija kontakata",
|
||||
"Manages interaction between accounts and contacts" : "Upravlja interakcijom između računa i kontakata",
|
||||
"Collect data about accounts and contacts interactions and provide an address book for the data" : "Prikuplja podatke o interakcijama između računa i kontakata te pruža adresar za te podatke"
|
||||
},
|
||||
"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;");
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
{ "translations": {
|
||||
"Recently contacted" : "Nedavno kontaktiran",
|
||||
"Contacts Interaction" : "Interakcija kontakata"
|
||||
"Contacts Interaction" : "Interakcija kontakata",
|
||||
"Manages interaction between accounts and contacts" : "Upravlja interakcijom između računa i kontakata",
|
||||
"Collect data about accounts and contacts interactions and provide an address book for the data" : "Prikuplja podatke o interakcijama između računa i kontakata te pruža adresar za te podatke"
|
||||
},"pluralForm" :"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"
|
||||
}
|
||||
@@ -3,6 +3,7 @@ OC.L10N.register(
|
||||
{
|
||||
"Dashboard" : "Nadzorna ploča",
|
||||
"Dashboard app" : "Nadzorna ploča aplikacije",
|
||||
"Start your day informed\n\nThe Nextcloud Dashboard is your starting point of the day, giving you an overview of your upcoming appointments, urgent emails, chat messages, incoming tickets, latest tweets and much more! People can add the widgets they like and change the background to their liking." : "Započnite dan informirani\n\nNextcloud nadzorna ploča vaša je početna točka dana i pruža vam pregled nadolazećih termina, hitnih e-poruka, poruka u chatu, dolaznih tiketa, najnovijih tweetova i još mnogo toga! Korisnici mogu dodavati widgete koji im odgovaraju i prilagoditi pozadinu prema vlastitim željama.",
|
||||
"Weather" : "Vrijeme",
|
||||
"Status" : "Status",
|
||||
"Good morning" : "Dobro jutro",
|
||||
@@ -13,10 +14,13 @@ OC.L10N.register(
|
||||
"Good evening, {name}" : "Dobar dan, {name}",
|
||||
"Hello" : "Pozdrav",
|
||||
"Hello, {name}" : "Pozdrav, {name}",
|
||||
"Happy birthday 🥳🤩🎂🎉" : "Sretan rođendan 🥳🤩🎂🎉",
|
||||
"Happy birthday, {name} 🥳🤩🎂🎉" : "Sretan rođendan, {name} 🥳🤩🎂🎉",
|
||||
"Customize" : "Uredi",
|
||||
"Edit widgets" : "Uredi widgete",
|
||||
"Get more widgets from the App Store" : "Nabavite više widgeta iz trgovine aplikacijama",
|
||||
"Weather service" : "Davatelj vremenske prognoze",
|
||||
"For your privacy, the weather data is requested by your {productName} server on your behalf so the weather service receives no personal information." : "Radi vaše privatnosti, podatke o vremenu u vaše ime dohvaća vaš {productName} poslužitelj, tako da vremenska usluga ne prima nikakve osobne podatke.",
|
||||
"Weather data from Met.no" : "Podaci o vremenskoj prognozi iz Met.no",
|
||||
"geocoding with Nominatim" : "geokodiranje uz Nominatim",
|
||||
"elevation data from OpenTopoData" : "podaci o nadmorskoj visini iz OpenTopoData",
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{ "translations": {
|
||||
"Dashboard" : "Nadzorna ploča",
|
||||
"Dashboard app" : "Nadzorna ploča aplikacije",
|
||||
"Start your day informed\n\nThe Nextcloud Dashboard is your starting point of the day, giving you an overview of your upcoming appointments, urgent emails, chat messages, incoming tickets, latest tweets and much more! People can add the widgets they like and change the background to their liking." : "Započnite dan informirani\n\nNextcloud nadzorna ploča vaša je početna točka dana i pruža vam pregled nadolazećih termina, hitnih e-poruka, poruka u chatu, dolaznih tiketa, najnovijih tweetova i još mnogo toga! Korisnici mogu dodavati widgete koji im odgovaraju i prilagoditi pozadinu prema vlastitim željama.",
|
||||
"Weather" : "Vrijeme",
|
||||
"Status" : "Status",
|
||||
"Good morning" : "Dobro jutro",
|
||||
@@ -11,10 +12,13 @@
|
||||
"Good evening, {name}" : "Dobar dan, {name}",
|
||||
"Hello" : "Pozdrav",
|
||||
"Hello, {name}" : "Pozdrav, {name}",
|
||||
"Happy birthday 🥳🤩🎂🎉" : "Sretan rođendan 🥳🤩🎂🎉",
|
||||
"Happy birthday, {name} 🥳🤩🎂🎉" : "Sretan rođendan, {name} 🥳🤩🎂🎉",
|
||||
"Customize" : "Uredi",
|
||||
"Edit widgets" : "Uredi widgete",
|
||||
"Get more widgets from the App Store" : "Nabavite više widgeta iz trgovine aplikacijama",
|
||||
"Weather service" : "Davatelj vremenske prognoze",
|
||||
"For your privacy, the weather data is requested by your {productName} server on your behalf so the weather service receives no personal information." : "Radi vaše privatnosti, podatke o vremenu u vaše ime dohvaća vaš {productName} poslužitelj, tako da vremenska usluga ne prima nikakve osobne podatke.",
|
||||
"Weather data from Met.no" : "Podaci o vremenskoj prognozi iz Met.no",
|
||||
"geocoding with Nominatim" : "geokodiranje uz Nominatim",
|
||||
"elevation data from OpenTopoData" : "podaci o nadmorskoj visini iz OpenTopoData",
|
||||
|
||||
@@ -234,6 +234,8 @@ OC.L10N.register(
|
||||
"Could not rename part file to final file, canceled by hook" : "Nedaří se zapsat přejmenovat částečný soubor na ten končený – zrušeno háčkem (hook)",
|
||||
"Could not rename part file to final file" : "Nedaří se přejmenovat částečný soubor na ten konečný",
|
||||
"Failed to check file size: %1$s" : "Nepodařilo se zkontrolovat velikost souboru: %1$s",
|
||||
"Could not open file: %1$s (%2$d), file does seem to exist" : "Nebylo možné otevřít soubor: %1$s (%2$d) – zdá se, že soubor existuje",
|
||||
"Could not open file: %1$s (%2$d), file doesn't seem to exist" : "Nebylo možné otevřít soubor: %1$s (%2$d) – zdá se, že soubor neexistuje",
|
||||
"Encryption not ready: %1$s" : "Šifrování není připraveno: %1$s",
|
||||
"Failed to open file: %1$s" : "Nepodařilo se otevřít soubor: %1$s",
|
||||
"Failed to unlink: %1$s" : "Nepodařilo se zrušit propojení: %1$s",
|
||||
|
||||
@@ -232,6 +232,8 @@
|
||||
"Could not rename part file to final file, canceled by hook" : "Nedaří se zapsat přejmenovat částečný soubor na ten končený – zrušeno háčkem (hook)",
|
||||
"Could not rename part file to final file" : "Nedaří se přejmenovat částečný soubor na ten konečný",
|
||||
"Failed to check file size: %1$s" : "Nepodařilo se zkontrolovat velikost souboru: %1$s",
|
||||
"Could not open file: %1$s (%2$d), file does seem to exist" : "Nebylo možné otevřít soubor: %1$s (%2$d) – zdá se, že soubor existuje",
|
||||
"Could not open file: %1$s (%2$d), file doesn't seem to exist" : "Nebylo možné otevřít soubor: %1$s (%2$d) – zdá se, že soubor neexistuje",
|
||||
"Encryption not ready: %1$s" : "Šifrování není připraveno: %1$s",
|
||||
"Failed to open file: %1$s" : "Nepodařilo se otevřít soubor: %1$s",
|
||||
"Failed to unlink: %1$s" : "Nepodařilo se zrušit propojení: %1$s",
|
||||
|
||||
@@ -73,7 +73,19 @@ OC.L10N.register(
|
||||
"Where: %s" : "Où : %s",
|
||||
"%1$s via %2$s" : "%1$s via %2$s",
|
||||
"In the past on %1$s for the entire day" : "Dans le passé toute la journée du %1$s ",
|
||||
"_In %n minute on %1$s for the entire day_::_In %n minutes on %1$s for the entire day_" : ["Dans une minute le %1$s pour la journée entière","Dans %n minutes le %1$s pour la journée entière","Dans %n minutes le %1$s pour la journée entière"],
|
||||
"_In %n hour on %1$s for the entire day_::_In %n hours on %1$s for the entire day_" : ["Dans une heure le %1$s pour la journée entière","Dans %n heures le %1$s pour la journée entière","Dans %n heures le %1$s pour la journée entière"],
|
||||
"_In %n day on %1$s for the entire day_::_In %n days on %1$s for the entire day_" : ["Dans un jour le %1$s pour la journée entière","Dans %n jours le %1$s pour la journée entière","Dans %n jours le %1$s pour la journée entière"],
|
||||
"_In %n week on %1$s for the entire day_::_In %n weeks on %1$s for the entire day_" : ["Dans une semaine le %1$s pour la journée entière","Dans %n semaines le %1$s pour la journée entière","Dans %n semaines le %1$s pour la journée entière"],
|
||||
"_In %n month on %1$s for the entire day_::_In %n months on %1$s for the entire day_" : ["Dans un mois toute la journée du %1$s","Dans %n mois toute la journée du %1$s","Dans %n mois toute la journée du %1$s"],
|
||||
"_In %n year on %1$s for the entire day_::_In %n years on %1$s for the entire day_" : ["Dans un an toute la journée du %1$s","Dans %n années toute la journée du %1$s","Dans %n années toute la journée du %1$s"],
|
||||
"In the past on %1$s between %2$s - %3$s" : "Dans le passé le %1$s entre %2$s et %3$s",
|
||||
"_In %n minute on %1$s between %2$s - %3$s_::_In %n minutes on %1$s between %2$s - %3$s_" : ["Dans une minute le %1$s entre %2$s - %3$s","Dans %n minutes le %1$s entre %2$s - %3$s","Dans %n minutes le %1$s entre %2$s et %3$s"],
|
||||
"_In %n hour on %1$s between %2$s - %3$s_::_In %n hours on %1$s between %2$s - %3$s_" : ["Dans une heure le %1$s entre %2$s et %3$s","Dans %n heures le %1$s entre %2$s et %3$s","Dans %n heures le %1$s entre %2$s et %3$s"],
|
||||
"_In %n day on %1$s between %2$s - %3$s_::_In %n days on %1$s between %2$s - %3$s_" : ["Demain le %1$s entre %2$s et %3$s","Dans %n jours le %1$s entre %2$s et %3$s","Dans %n jours le %1$s entre %2$s et %3$s"],
|
||||
"_In %n week on %1$s between %2$s - %3$s_::_In %n weeks on %1$s between %2$s - %3$s_" : ["La semaine prochaine le %1$s entre %2$s et %3$s","Dans %n semaines le %1$s entre %2$s et %3$s","Dans %n semaines le %1$s entre %2$s et %3$s"],
|
||||
"_In %n month on %1$s between %2$s - %3$s_::_In %n months on %1$s between %2$s - %3$s_" : ["Dans un mois le %1$s entre %2$s et %3$s","Dans %n mois le %1$s entre %2$s et %3$s","Dans %n mois le %1$s entre %2$s et %3$s"],
|
||||
"_In %n year on %1$s between %2$s - %3$s_::_In %n years on %1$s between %2$s - %3$s_" : ["L'an prochain le %1$s entre %2$s et %3$s","Dans %n ans le %1$s entre %2$s et %3$s","Dans %n ans le %1$s entre %2$s et %3$s"],
|
||||
"Could not generate when statement" : "Impossible de déterminer quand",
|
||||
"Every Day for the entire day" : "Chaque jour pour toute la journée",
|
||||
"Every Day for the entire day until %1$s" : "Chaque jour pour la journée entière jusqu'au %1$s",
|
||||
@@ -111,8 +123,26 @@ OC.L10N.register(
|
||||
"On specific dates for the entire day until %1$s" : "À une date spécifique pour la journée entière jusqu'au %1$s",
|
||||
"On specific dates between %1$s - %2$s until %3$s" : "À des dates spécifiques entre %1$s et %2$s jusqu'au %3$s",
|
||||
"In the past on %1$s" : "Dans le passé en %1$s",
|
||||
"_In %n minute on %1$s_::_In %n minutes on %1$s_" : ["Dans une minute en %1$s","Dans %n minutes en %1$s","Dans %n minutes en %1$s"],
|
||||
"_In %n hour on %1$s_::_In %n hours on %1$s_" : ["Dans %n heure le %1$s","Dans %n heures le %1$s","Dans %n le %1$s"],
|
||||
"_In %n day on %1$s_::_In %n days on %1$s_" : ["Demain le %1$s","Dans %n jours le %1$s","Dans %n jours le %1$s"],
|
||||
"_In %n week on %1$s_::_In %n weeks on %1$s_" : ["La semaine prochaine le %1$s","Dans %n semaines le %1$s","Dans %n semaines le %1$s"],
|
||||
"_In %n month on %1$s_::_In %n months on %1$s_" : ["Le mois prochain le %1$s","Dans %n mois le %1$s","Dans %n mois le %1$s"],
|
||||
"_In %n year on %1$s_::_In %n years on %1$s_" : ["L'an prochain le %1$s","Dans %n ans le %1$s","Dans %n ans le %1$s"],
|
||||
"In the past on %1$s then on %2$s" : "Dans le passé le %1$s puis le %2$s",
|
||||
"_In %n minute on %1$s then on %2$s_::_In %n minutes on %1$s then on %2$s_" : ["Dans une minute le %1$s puis le %2$s","Dans %n minutes le %1$s puis le %2$s","Dans %n minutes le %1$s puis le %2$s"],
|
||||
"_In %n hour on %1$s then on %2$s_::_In %n hours on %1$s then on %2$s_" : ["Dans une heure le %1$s puis le %2$s","Dans %n heures le %1$s puis le %2$s","Dans %n heures le %1$s puis le %2$s"],
|
||||
"_In %n day on %1$s then on %2$s_::_In %n days on %1$s then on %2$s_" : ["Demain le %1$s puis le %2$s","Dans %n jours le %1$s puis le %2$s","Dans %n jours le %1$s puis le %2$s"],
|
||||
"_In %n week on %1$s then on %2$s_::_In %n weeks on %1$s then on %2$s_" : ["La semaine prochaine le %1$s puis le %2$s","Dans %n semaines le %1$s puis le %2$s","Dans %n semaines le %1$s puis le %2$s"],
|
||||
"_In %n month on %1$s then on %2$s_::_In %n months on %1$s then on %2$s_" : ["Le mois prochain le %1$s puis le %2$s","Dans %n mois le %1$s puis le %2$s","Dans %n mois le %1$s puis le %2$s"],
|
||||
"_In %n year on %1$s then on %2$s_::_In %n years on %1$s then on %2$s_" : ["L'an prochain le %1$s puis le %2$s","Dans %n ans le %1$s puis le %2$s","Dans %n ans le %1$s puis le %2$s"],
|
||||
"In the past on %1$s then on %2$s and %3$s" : "Dans le passé le %1$s puis le %2$s et %3$s",
|
||||
"_In %n minute on %1$s then on %2$s and %3$s_::_In %n minutes on %1$s then on %2$s and %3$s_" : ["Dans une minute le %1$s puis le %2$s et le %3$s","Dans %n minutes le %1$s puis le %2$s et le %3$s","Dans %n minutes le %1$s puis le %2$s et le %3$s"],
|
||||
"_In %n hour on %1$s then on %2$s and %3$s_::_In %n hours on %1$s then on %2$s and %3$s_" : ["Dans une heure le %1$s puis le %2$s et le %3$s","Dans %n heures le %1$s puis le %2$s et le %3$s","Dans %n heures le %1$s puis le %2$s et le %3$s"],
|
||||
"_In %n day on %1$s then on %2$s and %3$s_::_In %n days on %1$s then on %2$s and %3$s_" : ["Demain le %1$s puis le %2$s et le %3$s","Dans %n jours le %1$s puis le %2$s et le %3$s","Dans %n jours le %1$s puis le %2$s et le %3$s"],
|
||||
"_In %n week on %1$s then on %2$s and %3$s_::_In %n weeks on %1$s then on %2$s and %3$s_" : ["La semaine prochaine le %1$s puis le %2$s et le %3$s","Dans %n semaines le %1$s puis le %2$s et le %3$s","Dans %n semaines le %1$s puis le %2$s et le%3$s"],
|
||||
"_In %n month on %1$s then on %2$s and %3$s_::_In %n months on %1$s then on %2$s and %3$s_" : ["Dans un mois le %1$s puis le %2$s et le %3$s","Dans %n mois le %1$s puis le %2$s et le %3$s","Dans %n mois le %1$s puis le %2$s et le %3$s"],
|
||||
"_In %n year on %1$s then on %2$s and %3$s_::_In %n years on %1$s then on %2$s and %3$s_" : ["Dans un an sur %1$spuis le %2$s et le %3$s","Dans %n années sur %1$s puis le %2$s et le %3$s","Dans %n années sur %1$s puis le %2$s et le %3$s"],
|
||||
"Could not generate next recurrence statement" : "Impossible de déterminer la prochaine récurrence",
|
||||
"Cancelled: %1$s" : "Annulé : %1$s",
|
||||
"\"%1$s\" has been canceled" : "\"%1$s\" a été annulé(e)",
|
||||
@@ -190,6 +220,8 @@ OC.L10N.register(
|
||||
"{actor} updated contact {card} in address book {addressbook}" : "{actor} a mis à jour le contact {card} dans le carnet d'adresses {addressbook}",
|
||||
"You updated contact {card} in address book {addressbook}" : "Vous avez mis à jour le contact {card} dans le carnet d'adresses {addressbook}",
|
||||
"A <strong>contact</strong> or <strong>address book</strong> was modified" : "Un <strong>contact</strong> ou <strong>carnet d'adresses</strong> a été modifié",
|
||||
"System address book disabled" : "Le carnet d'adresses du système est désactivé",
|
||||
"The system contacts address book has been automatically disabled during upgrade. This means that the address book will no longer be available to users in the contacts app or other clients. The system contacts address book was disabled because the amount of contacts in the address book exceeded the maximum recommended number of contacts. This limit is set to prevent performance issues. You can re-enable the system address book with the following command {command}" : "Le carnet d'adresses système a été automatiquement désactivé lors de la mise à jour. Cela signifie que le carnet d'adresses ne sera plus disponible pour les utilisateurs dans l'application Contacts ou d'autres clients. Le carnet d'adresses du système a été désactivé car le nombre de contacts dans le carnet dépassait le nombre maximum recommandé de contacts. Cette limite est fixée afin d'éviter des problèmes de performance. Vous pouvez réactiver le carnet d'adresses système avec la commande suivante : {command}",
|
||||
"Accounts" : "Comptes",
|
||||
"System address book which holds all accounts" : "Carnet d'adresses système qui regroupe tous les comptes",
|
||||
"File is not updatable: %1$s" : "Ce fichier ne peut pas être mis à jour : %1$s",
|
||||
@@ -202,6 +234,8 @@ OC.L10N.register(
|
||||
"Could not rename part file to final file, canceled by hook" : "Impossible de renommer le fichier partiel en fichier final, annulé par le hook",
|
||||
"Could not rename part file to final file" : "Impossible de renommer le fichier partiel en fichier définitif",
|
||||
"Failed to check file size: %1$s" : "Impossible de vérifier la taille du fichier : %1$s",
|
||||
"Could not open file: %1$s (%2$d), file does seem to exist" : "Impossible d'ouvrir le fichier : %1$s (%2$d), le fichier semble exister",
|
||||
"Could not open file: %1$s (%2$d), file doesn't seem to exist" : "Impossible d'ouvrir le fichier : %1$s (%2$d), le fichier ne semble pas exister",
|
||||
"Encryption not ready: %1$s" : "Chiffrement pas prêt : %1$s",
|
||||
"Failed to open file: %1$s" : "Impossible d'ouvrir le fichier : %1$s",
|
||||
"Failed to unlink: %1$s" : "Impossible de supprimer le lien :%1$s",
|
||||
@@ -226,6 +260,10 @@ OC.L10N.register(
|
||||
"DAV system address book" : "Carnet d'adresses système DAV",
|
||||
"No outstanding DAV system address book sync." : "Pas de synchronisation DAV en cours du carnet d'adresses système.",
|
||||
"The DAV system address book sync has not run yet as your instance has more than 1000 users or because an error occurred. Please run it manually by calling \"occ dav:sync-system-addressbook\"." : "La synchronisation du carnet d'adresses système DAV n'a pas encore été effectuée car votre instance a plus de 1 000 utilisateurs ou parce qu'une erreur est survenue. Merci de l'exécuter manuellement en tapant la commande \"occ dav:sync-system-addressbook\".",
|
||||
"DAV system address book size" : "Taille du carnet d'adresses système",
|
||||
"The system address book is disabled" : "Le carnet d'adresses système est désactivé",
|
||||
"The system address book is enabled, but contains more than the configured limit of %d contacts" : "Le carnet d'adresses système est activé, mais il contient plus de contacts que la limite fixée à %d ",
|
||||
"The system address book is enabled and contains less than the configured limit of %d contacts" : "Le carnet d'adresses système est activé est contient moins de contacts que la limite fixée à %d ",
|
||||
"WebDAV endpoint" : "Point de terminaison WebDAV",
|
||||
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually." : "Impossible de vérifier si votre serveur web est correctement configuré pour permettre la synchronisation de fichiers via WebDAV. Veuillez vérifier manuellement.",
|
||||
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Votre serveur web n’est pas encore correctement configuré pour la synchronisation de fichiers parce que l’interface WebDAV semble ne pas fonctionner.",
|
||||
|
||||
@@ -71,7 +71,19 @@
|
||||
"Where: %s" : "Où : %s",
|
||||
"%1$s via %2$s" : "%1$s via %2$s",
|
||||
"In the past on %1$s for the entire day" : "Dans le passé toute la journée du %1$s ",
|
||||
"_In %n minute on %1$s for the entire day_::_In %n minutes on %1$s for the entire day_" : ["Dans une minute le %1$s pour la journée entière","Dans %n minutes le %1$s pour la journée entière","Dans %n minutes le %1$s pour la journée entière"],
|
||||
"_In %n hour on %1$s for the entire day_::_In %n hours on %1$s for the entire day_" : ["Dans une heure le %1$s pour la journée entière","Dans %n heures le %1$s pour la journée entière","Dans %n heures le %1$s pour la journée entière"],
|
||||
"_In %n day on %1$s for the entire day_::_In %n days on %1$s for the entire day_" : ["Dans un jour le %1$s pour la journée entière","Dans %n jours le %1$s pour la journée entière","Dans %n jours le %1$s pour la journée entière"],
|
||||
"_In %n week on %1$s for the entire day_::_In %n weeks on %1$s for the entire day_" : ["Dans une semaine le %1$s pour la journée entière","Dans %n semaines le %1$s pour la journée entière","Dans %n semaines le %1$s pour la journée entière"],
|
||||
"_In %n month on %1$s for the entire day_::_In %n months on %1$s for the entire day_" : ["Dans un mois toute la journée du %1$s","Dans %n mois toute la journée du %1$s","Dans %n mois toute la journée du %1$s"],
|
||||
"_In %n year on %1$s for the entire day_::_In %n years on %1$s for the entire day_" : ["Dans un an toute la journée du %1$s","Dans %n années toute la journée du %1$s","Dans %n années toute la journée du %1$s"],
|
||||
"In the past on %1$s between %2$s - %3$s" : "Dans le passé le %1$s entre %2$s et %3$s",
|
||||
"_In %n minute on %1$s between %2$s - %3$s_::_In %n minutes on %1$s between %2$s - %3$s_" : ["Dans une minute le %1$s entre %2$s - %3$s","Dans %n minutes le %1$s entre %2$s - %3$s","Dans %n minutes le %1$s entre %2$s et %3$s"],
|
||||
"_In %n hour on %1$s between %2$s - %3$s_::_In %n hours on %1$s between %2$s - %3$s_" : ["Dans une heure le %1$s entre %2$s et %3$s","Dans %n heures le %1$s entre %2$s et %3$s","Dans %n heures le %1$s entre %2$s et %3$s"],
|
||||
"_In %n day on %1$s between %2$s - %3$s_::_In %n days on %1$s between %2$s - %3$s_" : ["Demain le %1$s entre %2$s et %3$s","Dans %n jours le %1$s entre %2$s et %3$s","Dans %n jours le %1$s entre %2$s et %3$s"],
|
||||
"_In %n week on %1$s between %2$s - %3$s_::_In %n weeks on %1$s between %2$s - %3$s_" : ["La semaine prochaine le %1$s entre %2$s et %3$s","Dans %n semaines le %1$s entre %2$s et %3$s","Dans %n semaines le %1$s entre %2$s et %3$s"],
|
||||
"_In %n month on %1$s between %2$s - %3$s_::_In %n months on %1$s between %2$s - %3$s_" : ["Dans un mois le %1$s entre %2$s et %3$s","Dans %n mois le %1$s entre %2$s et %3$s","Dans %n mois le %1$s entre %2$s et %3$s"],
|
||||
"_In %n year on %1$s between %2$s - %3$s_::_In %n years on %1$s between %2$s - %3$s_" : ["L'an prochain le %1$s entre %2$s et %3$s","Dans %n ans le %1$s entre %2$s et %3$s","Dans %n ans le %1$s entre %2$s et %3$s"],
|
||||
"Could not generate when statement" : "Impossible de déterminer quand",
|
||||
"Every Day for the entire day" : "Chaque jour pour toute la journée",
|
||||
"Every Day for the entire day until %1$s" : "Chaque jour pour la journée entière jusqu'au %1$s",
|
||||
@@ -109,8 +121,26 @@
|
||||
"On specific dates for the entire day until %1$s" : "À une date spécifique pour la journée entière jusqu'au %1$s",
|
||||
"On specific dates between %1$s - %2$s until %3$s" : "À des dates spécifiques entre %1$s et %2$s jusqu'au %3$s",
|
||||
"In the past on %1$s" : "Dans le passé en %1$s",
|
||||
"_In %n minute on %1$s_::_In %n minutes on %1$s_" : ["Dans une minute en %1$s","Dans %n minutes en %1$s","Dans %n minutes en %1$s"],
|
||||
"_In %n hour on %1$s_::_In %n hours on %1$s_" : ["Dans %n heure le %1$s","Dans %n heures le %1$s","Dans %n le %1$s"],
|
||||
"_In %n day on %1$s_::_In %n days on %1$s_" : ["Demain le %1$s","Dans %n jours le %1$s","Dans %n jours le %1$s"],
|
||||
"_In %n week on %1$s_::_In %n weeks on %1$s_" : ["La semaine prochaine le %1$s","Dans %n semaines le %1$s","Dans %n semaines le %1$s"],
|
||||
"_In %n month on %1$s_::_In %n months on %1$s_" : ["Le mois prochain le %1$s","Dans %n mois le %1$s","Dans %n mois le %1$s"],
|
||||
"_In %n year on %1$s_::_In %n years on %1$s_" : ["L'an prochain le %1$s","Dans %n ans le %1$s","Dans %n ans le %1$s"],
|
||||
"In the past on %1$s then on %2$s" : "Dans le passé le %1$s puis le %2$s",
|
||||
"_In %n minute on %1$s then on %2$s_::_In %n minutes on %1$s then on %2$s_" : ["Dans une minute le %1$s puis le %2$s","Dans %n minutes le %1$s puis le %2$s","Dans %n minutes le %1$s puis le %2$s"],
|
||||
"_In %n hour on %1$s then on %2$s_::_In %n hours on %1$s then on %2$s_" : ["Dans une heure le %1$s puis le %2$s","Dans %n heures le %1$s puis le %2$s","Dans %n heures le %1$s puis le %2$s"],
|
||||
"_In %n day on %1$s then on %2$s_::_In %n days on %1$s then on %2$s_" : ["Demain le %1$s puis le %2$s","Dans %n jours le %1$s puis le %2$s","Dans %n jours le %1$s puis le %2$s"],
|
||||
"_In %n week on %1$s then on %2$s_::_In %n weeks on %1$s then on %2$s_" : ["La semaine prochaine le %1$s puis le %2$s","Dans %n semaines le %1$s puis le %2$s","Dans %n semaines le %1$s puis le %2$s"],
|
||||
"_In %n month on %1$s then on %2$s_::_In %n months on %1$s then on %2$s_" : ["Le mois prochain le %1$s puis le %2$s","Dans %n mois le %1$s puis le %2$s","Dans %n mois le %1$s puis le %2$s"],
|
||||
"_In %n year on %1$s then on %2$s_::_In %n years on %1$s then on %2$s_" : ["L'an prochain le %1$s puis le %2$s","Dans %n ans le %1$s puis le %2$s","Dans %n ans le %1$s puis le %2$s"],
|
||||
"In the past on %1$s then on %2$s and %3$s" : "Dans le passé le %1$s puis le %2$s et %3$s",
|
||||
"_In %n minute on %1$s then on %2$s and %3$s_::_In %n minutes on %1$s then on %2$s and %3$s_" : ["Dans une minute le %1$s puis le %2$s et le %3$s","Dans %n minutes le %1$s puis le %2$s et le %3$s","Dans %n minutes le %1$s puis le %2$s et le %3$s"],
|
||||
"_In %n hour on %1$s then on %2$s and %3$s_::_In %n hours on %1$s then on %2$s and %3$s_" : ["Dans une heure le %1$s puis le %2$s et le %3$s","Dans %n heures le %1$s puis le %2$s et le %3$s","Dans %n heures le %1$s puis le %2$s et le %3$s"],
|
||||
"_In %n day on %1$s then on %2$s and %3$s_::_In %n days on %1$s then on %2$s and %3$s_" : ["Demain le %1$s puis le %2$s et le %3$s","Dans %n jours le %1$s puis le %2$s et le %3$s","Dans %n jours le %1$s puis le %2$s et le %3$s"],
|
||||
"_In %n week on %1$s then on %2$s and %3$s_::_In %n weeks on %1$s then on %2$s and %3$s_" : ["La semaine prochaine le %1$s puis le %2$s et le %3$s","Dans %n semaines le %1$s puis le %2$s et le %3$s","Dans %n semaines le %1$s puis le %2$s et le%3$s"],
|
||||
"_In %n month on %1$s then on %2$s and %3$s_::_In %n months on %1$s then on %2$s and %3$s_" : ["Dans un mois le %1$s puis le %2$s et le %3$s","Dans %n mois le %1$s puis le %2$s et le %3$s","Dans %n mois le %1$s puis le %2$s et le %3$s"],
|
||||
"_In %n year on %1$s then on %2$s and %3$s_::_In %n years on %1$s then on %2$s and %3$s_" : ["Dans un an sur %1$spuis le %2$s et le %3$s","Dans %n années sur %1$s puis le %2$s et le %3$s","Dans %n années sur %1$s puis le %2$s et le %3$s"],
|
||||
"Could not generate next recurrence statement" : "Impossible de déterminer la prochaine récurrence",
|
||||
"Cancelled: %1$s" : "Annulé : %1$s",
|
||||
"\"%1$s\" has been canceled" : "\"%1$s\" a été annulé(e)",
|
||||
@@ -188,6 +218,8 @@
|
||||
"{actor} updated contact {card} in address book {addressbook}" : "{actor} a mis à jour le contact {card} dans le carnet d'adresses {addressbook}",
|
||||
"You updated contact {card} in address book {addressbook}" : "Vous avez mis à jour le contact {card} dans le carnet d'adresses {addressbook}",
|
||||
"A <strong>contact</strong> or <strong>address book</strong> was modified" : "Un <strong>contact</strong> ou <strong>carnet d'adresses</strong> a été modifié",
|
||||
"System address book disabled" : "Le carnet d'adresses du système est désactivé",
|
||||
"The system contacts address book has been automatically disabled during upgrade. This means that the address book will no longer be available to users in the contacts app or other clients. The system contacts address book was disabled because the amount of contacts in the address book exceeded the maximum recommended number of contacts. This limit is set to prevent performance issues. You can re-enable the system address book with the following command {command}" : "Le carnet d'adresses système a été automatiquement désactivé lors de la mise à jour. Cela signifie que le carnet d'adresses ne sera plus disponible pour les utilisateurs dans l'application Contacts ou d'autres clients. Le carnet d'adresses du système a été désactivé car le nombre de contacts dans le carnet dépassait le nombre maximum recommandé de contacts. Cette limite est fixée afin d'éviter des problèmes de performance. Vous pouvez réactiver le carnet d'adresses système avec la commande suivante : {command}",
|
||||
"Accounts" : "Comptes",
|
||||
"System address book which holds all accounts" : "Carnet d'adresses système qui regroupe tous les comptes",
|
||||
"File is not updatable: %1$s" : "Ce fichier ne peut pas être mis à jour : %1$s",
|
||||
@@ -200,6 +232,8 @@
|
||||
"Could not rename part file to final file, canceled by hook" : "Impossible de renommer le fichier partiel en fichier final, annulé par le hook",
|
||||
"Could not rename part file to final file" : "Impossible de renommer le fichier partiel en fichier définitif",
|
||||
"Failed to check file size: %1$s" : "Impossible de vérifier la taille du fichier : %1$s",
|
||||
"Could not open file: %1$s (%2$d), file does seem to exist" : "Impossible d'ouvrir le fichier : %1$s (%2$d), le fichier semble exister",
|
||||
"Could not open file: %1$s (%2$d), file doesn't seem to exist" : "Impossible d'ouvrir le fichier : %1$s (%2$d), le fichier ne semble pas exister",
|
||||
"Encryption not ready: %1$s" : "Chiffrement pas prêt : %1$s",
|
||||
"Failed to open file: %1$s" : "Impossible d'ouvrir le fichier : %1$s",
|
||||
"Failed to unlink: %1$s" : "Impossible de supprimer le lien :%1$s",
|
||||
@@ -224,6 +258,10 @@
|
||||
"DAV system address book" : "Carnet d'adresses système DAV",
|
||||
"No outstanding DAV system address book sync." : "Pas de synchronisation DAV en cours du carnet d'adresses système.",
|
||||
"The DAV system address book sync has not run yet as your instance has more than 1000 users or because an error occurred. Please run it manually by calling \"occ dav:sync-system-addressbook\"." : "La synchronisation du carnet d'adresses système DAV n'a pas encore été effectuée car votre instance a plus de 1 000 utilisateurs ou parce qu'une erreur est survenue. Merci de l'exécuter manuellement en tapant la commande \"occ dav:sync-system-addressbook\".",
|
||||
"DAV system address book size" : "Taille du carnet d'adresses système",
|
||||
"The system address book is disabled" : "Le carnet d'adresses système est désactivé",
|
||||
"The system address book is enabled, but contains more than the configured limit of %d contacts" : "Le carnet d'adresses système est activé, mais il contient plus de contacts que la limite fixée à %d ",
|
||||
"The system address book is enabled and contains less than the configured limit of %d contacts" : "Le carnet d'adresses système est activé est contient moins de contacts que la limite fixée à %d ",
|
||||
"WebDAV endpoint" : "Point de terminaison WebDAV",
|
||||
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually." : "Impossible de vérifier si votre serveur web est correctement configuré pour permettre la synchronisation de fichiers via WebDAV. Veuillez vérifier manuellement.",
|
||||
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Votre serveur web n’est pas encore correctement configuré pour la synchronisation de fichiers parce que l’interface WebDAV semble ne pas fonctionner.",
|
||||
|
||||
376
apps/dav/l10n/hr.js
Normal file
376
apps/dav/l10n/hr.js
Normal file
@@ -0,0 +1,376 @@
|
||||
OC.L10N.register(
|
||||
"dav",
|
||||
{
|
||||
"Calendar" : "Kalendar",
|
||||
"Tasks" : "Zadaci",
|
||||
"Personal" : "Osobno",
|
||||
"{actor} created calendar {calendar}" : "{actor} je stvorio kalendar {calendar}",
|
||||
"You created calendar {calendar}" : "Stvorili ste kalendar {calendar}",
|
||||
"{actor} deleted calendar {calendar}" : "{actor} je izbrisao kalendar {calendar}",
|
||||
"You deleted calendar {calendar}" : "Izbrisali ste kalendar {calendar}",
|
||||
"{actor} updated calendar {calendar}" : "{actor} je ažurirao kalendar {calendar}",
|
||||
"You updated calendar {calendar}" : "Ažurirali ste kalendar {calendar}",
|
||||
"{actor} restored calendar {calendar}" : "{actor} je vratio kalendar {calendar}",
|
||||
"You restored calendar {calendar}" : "Vratili ste kalendar {calendar}",
|
||||
"You shared calendar {calendar} as public link" : "Podijelili ste kalendar {calendar} putem javne poveznice",
|
||||
"You removed public link for calendar {calendar}" : "Uklonili ste javnu poveznicu na kalendar {calendar}",
|
||||
"{actor} shared calendar {calendar} with you" : "{actor} dijeli kalendar {calendar} s vama",
|
||||
"You shared calendar {calendar} with {user}" : "Podijelili ste kalendar {calendar} s {user}",
|
||||
"{actor} shared calendar {calendar} with {user}" : "{actor} dijeli kalendar {calendar} s {user}",
|
||||
"{actor} unshared calendar {calendar} from you" : "{actor} više ne dijeli kalendar {calendar} s vama",
|
||||
"You unshared calendar {calendar} from {user}" : "Više ne dijelite kalendar {calendar} s {user}",
|
||||
"{actor} unshared calendar {calendar} from {user}" : "{actor} više ne dijeli kalendar {calendar} s {user}",
|
||||
"{actor} unshared calendar {calendar} from themselves" : "{actor} više ne dijeli kalendar {calendar} sam sa sobom",
|
||||
"You shared calendar {calendar} with group {group}" : "Podijelili ste kalendar {calendar} s grupom {group}",
|
||||
"{actor} shared calendar {calendar} with group {group}" : "{actor} dijeli kalendar {calendar} s grupom {group}",
|
||||
"You unshared calendar {calendar} from group {group}" : "Više ne dijelite kalendar {calendar} s grupom {group}",
|
||||
"{actor} unshared calendar {calendar} from group {group}" : "{actor} više ne dijeli kalendar {calendar} s grupom {group}",
|
||||
"Untitled event" : "Događaj bez naslova",
|
||||
"{actor} created event {event} in calendar {calendar}" : "{actor} je stvorio događaj {event} u kalendaru {calendar}",
|
||||
"You created event {event} in calendar {calendar}" : "Stvorili ste događaj {event} u kalendaru {calendar}",
|
||||
"{actor} deleted event {event} from calendar {calendar}" : "{actor} je izbrisao događaj {event} iz kalendara {calendar}",
|
||||
"You deleted event {event} from calendar {calendar}" : "Izbrisali ste događaj {event} iz kalendara {calendar}",
|
||||
"{actor} updated event {event} in calendar {calendar}" : "{actor} je ažurirao događaj {event} u kalendaru {calendar}",
|
||||
"You updated event {event} in calendar {calendar}" : "Ažurirali ste događaj {event} u kalendaru {calendar}",
|
||||
"{actor} moved event {event} from calendar {sourceCalendar} to calendar {targetCalendar}" : "{actor} je premjestio događaj {event} iz kalendara {sourceCalendar} u kalendar {targetCalendar}",
|
||||
"You moved event {event} from calendar {sourceCalendar} to calendar {targetCalendar}" : "Premjestili ste događaj {event} iz kalendara {sourceCalendar} u kalendar {targetCalendar}",
|
||||
"{actor} restored event {event} of calendar {calendar}" : "{actor} je vratio događaj {event} kalendara {calendar}",
|
||||
"You restored event {event} of calendar {calendar}" : "Vratili ste događaj {event} kalendara {calendar}",
|
||||
"Busy" : "Zauzeto",
|
||||
"{actor} created to-do {todo} in list {calendar}" : "{actor} je stvorio zadatak {todo} u popisu {calendar}",
|
||||
"You created to-do {todo} in list {calendar}" : "Stvorili ste zadatak {todo} u popisu {calendar}",
|
||||
"{actor} deleted to-do {todo} from list {calendar}" : "{actor} je izbrisao zadatak {todo} iz popisa {calendar}",
|
||||
"You deleted to-do {todo} from list {calendar}" : "Izbrisali ste zadatak {todo} iz popisa {calendar}",
|
||||
"{actor} updated to-do {todo} in list {calendar}" : "{actor} je ažurirao zadatak {todo} u popisu {calendar}",
|
||||
"You updated to-do {todo} in list {calendar}" : "Ažurirali ste zadatak {todo} u popisu {calendar}",
|
||||
"{actor} solved to-do {todo} in list {calendar}" : "{actor} je riješio zadatak {todo} u popisu {calendar}",
|
||||
"You solved to-do {todo} in list {calendar}" : "Riješili ste zadatak {todo} u popisu {calendar}",
|
||||
"{actor} reopened to-do {todo} in list {calendar}" : "{actor} je ponovno otvorio zadatak {todo} u popisu {calendar}",
|
||||
"You reopened to-do {todo} in list {calendar}" : "Ponovno ste otvorili zadatak {todo} u popisu {calendar}",
|
||||
"{actor} moved to-do {todo} from list {sourceCalendar} to list {targetCalendar}" : "{actor} je premjestio zadatak {todo} iz popisa {sourceCalendar} u popis {targetCalendar}",
|
||||
"You moved to-do {todo} from list {sourceCalendar} to list {targetCalendar}" : "Premjestili ste zadatak {todo} iz popisa {sourceCalendar} u popis {targetCalendar}",
|
||||
"Calendar, contacts and tasks" : "Kalendar, kontakti i zadaci",
|
||||
"A <strong>calendar</strong> was modified" : "Izmijenjen je <strong>kalendar</strong>",
|
||||
"A calendar <strong>event</strong> was modified" : "Izmijenjen je <strong>događaj</strong> u kalendaru",
|
||||
"A calendar <strong>to-do</strong> was modified" : "Izmijenjen je <strong>zadatak</strong> u kalendaru",
|
||||
"Contact birthdays" : "Rođendani kontakata",
|
||||
"Death of %s" : "Smrt %s",
|
||||
"Untitled calendar" : "Kalendar bez naslova",
|
||||
"Calendar:" : "Kalendar:",
|
||||
"Date:" : "Datum:",
|
||||
"Where:" : "Gdje:",
|
||||
"Description:" : "Opis:",
|
||||
"_%n year_::_%n years_" : ["%n godina","%n godina","%n godina"],
|
||||
"_%n month_::_%n months_" : ["%n mjesec","%n mjeseci","%n mjeseci"],
|
||||
"_%n day_::_%n days_" : ["%n dan","%n dana","%n dana"],
|
||||
"_%n hour_::_%n hours_" : ["%n sat","%n sati","%n sati"],
|
||||
"_%n minute_::_%n minutes_" : ["%n minute/minuta","%n minuta","%n minuta"],
|
||||
"%s (in %s)" : "%s (u %s)",
|
||||
"%s (%s ago)" : "%s (prije %s)",
|
||||
"Calendar: %s" : "Kalendar: %s",
|
||||
"Date: %s" : "Datum: %s",
|
||||
"Description: %s" : "Opis: %s",
|
||||
"Where: %s" : "Gdje: %s",
|
||||
"%1$s via %2$s" : "%1$s putem %2$s",
|
||||
"In the past on %1$s for the entire day" : "U prošlosti, dana %1$s, tijekom cijelog dana",
|
||||
"_In %n minute on %1$s for the entire day_::_In %n minutes on %1$s for the entire day_" : ["Za %n minutu, dana %1$s, tijekom cijelog dana","Za %n minute, dana %1$s, tijekom cijelog dana","Za %n minuta, dana %1$s, tijekom cijelog dana"],
|
||||
"_In %n hour on %1$s for the entire day_::_In %n hours on %1$s for the entire day_" : ["Za %n sat, dana %1$s, tijekom cijelog dana","Za %n sata, dana %1$s, tijekom cijelog dana","Za %n sati, dana %1$s, tijekom cijelog dana"],
|
||||
"_In %n day on %1$s for the entire day_::_In %n days on %1$s for the entire day_" : ["Za %n dan, dana %1$s, tijekom cijelog dana","Za %n dana, dana %1$s, tijekom cijelog dana","Za %n dana, dana %1$s, tijekom cijelog dana"],
|
||||
"_In %n week on %1$s for the entire day_::_In %n weeks on %1$s for the entire day_" : ["Za %n tjedan, dana %1$s, tijekom cijelog dana","Za %n tjedna, dana %1$s, tijekom cijelog dana","Za %n tjedana, dana %1$s, tijekom cijelog dana"],
|
||||
"_In %n month on %1$s for the entire day_::_In %n months on %1$s for the entire day_" : ["Za %n mjesec, dana %1$s, tijekom cijelog dana","Za %n mjeseca, dana %1$s, tijekom cijelog dana","Za %n mjeseci, dana %1$s, tijekom cijelog dana"],
|
||||
"_In %n year on %1$s for the entire day_::_In %n years on %1$s for the entire day_" : ["Za %n godinu, dana %1$s, tijekom cijelog dana","Za %n godine, dana %1$s, tijekom cijelog dana","Za %n godina, dana %1$s, tijekom cijelog dana"],
|
||||
"In the past on %1$s between %2$s - %3$s" : "U prošlosti, dana %1$s između %2$s – %3$s",
|
||||
"_In %n minute on %1$s between %2$s - %3$s_::_In %n minutes on %1$s between %2$s - %3$s_" : ["Za %n minutu, dana %1$s između %2$s – %3$s","Za %n minute, dana %1$s između %2$s – %3$s","Za %n minuta, dana %1$s između %2$s – %3$s"],
|
||||
"_In %n hour on %1$s between %2$s - %3$s_::_In %n hours on %1$s between %2$s - %3$s_" : ["Za %n sat, dana %1$s između %2$s – %3$s","Za %n sata, dana %1$s između %2$s – %3$s","Za %n sati, dana %1$s između %2$s – %3$s"],
|
||||
"_In %n day on %1$s between %2$s - %3$s_::_In %n days on %1$s between %2$s - %3$s_" : ["Za %n dan, dana %1$s između %2$s – %3$s","Za %n dana, dana %1$s između %2$s – %3$s","Za %n dana, dana %1$s između %2$s – %3$s"],
|
||||
"_In %n week on %1$s between %2$s - %3$s_::_In %n weeks on %1$s between %2$s - %3$s_" : ["Za %n tjedan, dana %1$s između %2$s – %3$s","Za %n tjedna, dana %1$s između %2$s – %3$s","Za %n tjedana, dana %1$s između %2$s – %3$s"],
|
||||
"_In %n month on %1$s between %2$s - %3$s_::_In %n months on %1$s between %2$s - %3$s_" : ["Za %n mjesec, dana %1$s između %2$s – %3$s","Za %n mjeseca, dana %1$s između %2$s – %3$s","Za %n mjeseci, dana %1$s između %2$s – %3$s"],
|
||||
"_In %n year on %1$s between %2$s - %3$s_::_In %n years on %1$s between %2$s - %3$s_" : ["Za %n godinu, dana %1$s između %2$s – %3$s","Za %n godine, dana %1$s između %2$s – %3$s","Za %n godina, dana %1$s između %2$s – %3$s"],
|
||||
"Could not generate when statement" : "Nije moguće generirati vremensku odrednicu",
|
||||
"Every Day for the entire day" : "Svaki dan tijekom cijelog dana",
|
||||
"Every Day for the entire day until %1$s" : "Svaki dan tijekom cijelog dana do %1$s",
|
||||
"Every Day between %1$s - %2$s" : "Svaki dan između %1$s - %2$s",
|
||||
"Every Day between %1$s - %2$s until %3$s" : "Svaki dan između %1$s - %2$s do %3$s",
|
||||
"Every %1$d Days for the entire day" : "Svakih %1$d dana tijekom cijelog dana",
|
||||
"Every %1$d Days for the entire day until %2$s" : "Svakih %1$d dana tijekom cijelog dana do %2$s",
|
||||
"Every %1$d Days between %2$s - %3$s" : "Svakih%1$d dana između%2$s - %3$s",
|
||||
"Every %1$d Days between %2$s - %3$s until %4$s" : "Svakih %1$d dana između %2$s - %3$s do %4$s",
|
||||
"Could not generate event recurrence statement" : "Nije moguće generirati izraz za ponavljanje događaja",
|
||||
"Every Week on %1$s for the entire day" : "Svaki tjedan u %1$s tijekom cijelog dana",
|
||||
"Every Week on %1$s for the entire day until %2$s" : "Svaki tjedan u %1$s tokom cijelog dana do %2$s",
|
||||
"Every Week on %1$s between %2$s - %3$s" : "Svaki tjedan u %1$s između %2$s - %3$s",
|
||||
"Every Week on %1$s between %2$s - %3$s until %4$s" : "Svaki tjedan u %1$s između %2$s - %3$s do %4$s",
|
||||
"Every %1$d Weeks on %2$s for the entire day" : "Svakih %1$d tjedana od %2$s tijekom cijelog dana",
|
||||
"Every %1$d Weeks on %2$s for the entire day until %3$s" : "Svakih %1$d tjedana od %2$s tijekom cijelog dana do %3$s",
|
||||
"Every %1$d Weeks on %2$s between %3$s - %4$s" : "Svakih %1$d tjedana od %2$s između %3$s - %4$s",
|
||||
"Every %1$d Weeks on %2$s between %3$s - %4$s until %5$s" : "Svakih %1$d tjedana od %2$s između %3$s - %4$s do %5$s",
|
||||
"Every Month on the %1$s for the entire day" : "%1$s svakog mjeseca tokom cijelog dana",
|
||||
"Every Month on the %1$s for the entire day until %2$s" : "%1$s svakog mjeseca tokom cijelog dana do%2$s",
|
||||
"Every Month on the %1$s between %2$s - %3$s" : "%1$s svakog mjeseca između %2$s - %3$s",
|
||||
"Every Month on the %1$s between %2$s - %3$s until %4$s" : "%1$s svakog mjeseca između %2$s - %3$s do %4$s",
|
||||
"Every %1$d Months on the %2$s for the entire day" : "Svakih %1$d mjeseci, %2$s tokom cijelog dana",
|
||||
"Every %1$d Months on the %2$s for the entire day until %3$s" : "Svakih %1$d mjeseci, %2$s tokom cijelog dana do %3$s",
|
||||
"Every %1$d Months on the %2$s between %3$s - %4$s" : "Svakih %1$d mjeseci, %2$s između %3$s - %4$s",
|
||||
"Every %1$d Months on the %2$s between %3$s - %4$s until %5$s" : "Svakih %1$d mjeseci, %2$s između %3$s - %4$s do %5$s",
|
||||
"Every Year in %1$s on the %2$s for the entire day" : "Svake godine, %1$s, %2$s tokom cijelog dana",
|
||||
"Every Year in %1$s on the %2$s for the entire day until %3$s" : "Svake godine, %1$s, %2$s tokom cijelog dana do %3$s",
|
||||
"Every Year in %1$s on the %2$s between %3$s - %4$s" : "Svake godine, %1$s, %2$s između %3$s - %4$s",
|
||||
"Every Year in %1$s on the %2$s between %3$s - %4$s until %5$s" : "Svake godine, %1$s, %2$s, između %3$s - %4$s do %5$s",
|
||||
"Every %1$d Years in %2$s on the %3$s for the entire day" : "Svakih %1$d godina, %2$s, na %3$s tokom cijelog dana",
|
||||
"Every %1$d Years in %2$s on the %3$s for the entire day until %4$s" : "Svakih %1$d godina, %2$s, na %3$s tokom cijelog dana do %4$s",
|
||||
"Every %1$d Years in %2$s on the %3$s between %4$s - %5$s" : "Svakih %1$d godina, %2$s, na %3$s između %4$s - %5$s",
|
||||
"Every %1$d Years in %2$s on the %3$s between %4$s - %5$s until %6$s" : "Svakih %1$d godina, %2$s, na %3$s između %4$s - %5$s do %6$s",
|
||||
"On specific dates for the entire day until %1$s" : "Na određene datume, tijekom cijelog dana do %1$s",
|
||||
"On specific dates between %1$s - %2$s until %3$s" : "Na određene datume između %1$s - %2$s do %3$s",
|
||||
"In the past on %1$s" : "U prošlosti, dana %1$s",
|
||||
"_In %n minute on %1$s_::_In %n minutes on %1$s_" : ["U %n minutu, %1$s","U %n minute, %1$s","U %n minuta, %1$s"],
|
||||
"_In %n hour on %1$s_::_In %n hours on %1$s_" : ["U %n sat, %1$s","U %n sata, %1$s","U %n sati, %1$s"],
|
||||
"_In %n day on %1$s_::_In %n days on %1$s_" : ["U %n dan, %1$s","U %n dana, %1$s","U %n dana, %1$s"],
|
||||
"_In %n week on %1$s_::_In %n weeks on %1$s_" : ["U %n tjedan, %1$s","U %n tjedna, %1$s","U %n tjedana, %1$s"],
|
||||
"_In %n month on %1$s_::_In %n months on %1$s_" : ["U %n mjesec, %1$s","U %n mjeseca, %1$s","U %n mjeseci, %1$s"],
|
||||
"_In %n year on %1$s_::_In %n years on %1$s_" : ["U %n godinu, %1$s","U %n godine, %1$s","U %n godina, %1$s"],
|
||||
"In the past on %1$s then on %2$s" : "U prošlosti, dana %1$s, zatim dana %2$s",
|
||||
"_In %n minute on %1$s then on %2$s_::_In %n minutes on %1$s then on %2$s_" : ["U %n minutu u %1$s, onda u %2$s","U %n minute u %1$s, onda u %2$s","U %n minuta u %1$s, onda u %2$s"],
|
||||
"_In %n hour on %1$s then on %2$s_::_In %n hours on %1$s then on %2$s_" : ["U %n sat u %1$s, onda u %2$s","U %n sata u %1$s, onda u %2$s","U %n sati u %1$s, onda u %2$s"],
|
||||
"_In %n day on %1$s then on %2$s_::_In %n days on %1$s then on %2$s_" : ["U %n dan u %1$s, onda u %2$s","U %n dana u %1$s, onda u %2$s","U %n dana u %1$s, onda u %2$s"],
|
||||
"_In %n week on %1$s then on %2$s_::_In %n weeks on %1$s then on %2$s_" : ["U %n tjedan u %1$s, onda u %2$s","U %n tjedna u %1$s, onda u %2$s","U %n tjedana u %1$s, onda u %2$s"],
|
||||
"_In %n month on %1$s then on %2$s_::_In %n months on %1$s then on %2$s_" : ["U %n mjesec u %1$s, onda u %2$s","U %n mjeseca u %1$s, onda u %2$s","U %n mjeseci u %1$s, onda u %2$s"],
|
||||
"_In %n year on %1$s then on %2$s_::_In %n years on %1$s then on %2$s_" : ["U %n godinu u %1$s, onda u %2$s","U %n godine u %1$s, onda u %2$s","U %n godina u %1$s, onda u %2$s"],
|
||||
"In the past on %1$s then on %2$s and %3$s" : "U prošlosti, dana %1$s, zatim dana %2$s i %3$s",
|
||||
"_In %n minute on %1$s then on %2$s and %3$s_::_In %n minutes on %1$s then on %2$s and %3$s_" : ["u %n minutu dana %1$s onda dana %2$s i %3$s","u %n minute dana %1$s onda dana %2$s i %3$s","u %n minuta dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In %n hour on %1$s then on %2$s and %3$s_::_In %n hours on %1$s then on %2$s and %3$s_" : ["u %n sat dana %1$s onda dana %2$s i %3$s","u %n sata dana %1$s onda dana %2$s i %3$s","u %n sati dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In %n day on %1$s then on %2$s and %3$s_::_In %n days on %1$s then on %2$s and %3$s_" : ["u %n dan, dana %1$s onda dana %2$s i %3$s","u %n dana, dana %1$s onda dana %2$s i %3$s","u %n dana, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In %n week on %1$s then on %2$s and %3$s_::_In %n weeks on %1$s then on %2$s and %3$s_" : ["u %n tjedan, dana %1$s onda dana %2$s i %3$s","u %n tjedna, dana %1$s onda dana %2$s i %3$s","u %n tjedana, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In %n month on %1$s then on %2$s and %3$s_::_In %n months on %1$s then on %2$s and %3$s_" : ["u %n mjesec, dana %1$s onda dana %2$s i %3$s","u %n mjeseca, dana %1$s onda dana %2$s i %3$s","u %n mjeseci, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In %n year on %1$s then on %2$s and %3$s_::_In %n years on %1$s then on %2$s and %3$s_" : ["u %n godinu, dana %1$s onda dana %2$s i %3$s","u %n godine, dana %1$s onda dana %2$s i %3$s","u %n godina, dana %1$s onda dana %2$s i %3$s"],
|
||||
"Could not generate next recurrence statement" : "Nije moguće generirati sljedeći izraz ponavljanja",
|
||||
"Cancelled: %1$s" : "Otkazano: %1$s",
|
||||
"\"%1$s\" has been canceled" : "„%1$s” je otkazan",
|
||||
"Re: %1$s" : "Odgovor: %1 $ s",
|
||||
"%1$s has accepted your invitation" : "%1$s je prihvatio/la vašu pozivnicu",
|
||||
"%1$s has tentatively accepted your invitation" : "%1$s je privremeno prihvatio/la vašu pozivnicu",
|
||||
"%1$s has declined your invitation" : "%1$s je odbio/la vašu pozivnicu",
|
||||
"%1$s has responded to your invitation" : "%1$s je odgovorio/la na vašu pozivnicu",
|
||||
"Invitation updated: %1$s" : "Pozivnica ažurirana: %1$s",
|
||||
"%1$s updated the event \"%2$s\"" : "%1$s je ažurirao/la događaj \"%2$s\"",
|
||||
"Invitation: %1$s" : "Pozivnica: %1$s",
|
||||
"%1$s would like to invite you to \"%2$s\"" : "%1$s vas želi pozvati na „%2$s”",
|
||||
"Organizer:" : "Organizator:",
|
||||
"Attendees:" : "Polaznici:",
|
||||
"Title:" : "Naslov:",
|
||||
"When:" : "Kada:",
|
||||
"Location:" : "Lokacija:",
|
||||
"Link:" : "Poveznica:",
|
||||
"Occurring:" : "Događa se:",
|
||||
"Accept" : "Prihvati",
|
||||
"Decline" : "Odbij",
|
||||
"More options …" : "Više mogućnosti…",
|
||||
"More options at %s" : "Više mogućnosti na %s",
|
||||
"Monday" : "Ponedjeljak",
|
||||
"Tuesday" : "Utorak",
|
||||
"Wednesday" : "Srijeda",
|
||||
"Thursday" : "Četvrtak",
|
||||
"Friday" : "Petak",
|
||||
"Saturday" : "Subota",
|
||||
"Sunday" : "Nedjelja",
|
||||
"January" : "Siječanj",
|
||||
"February" : "Veljača",
|
||||
"March" : "Ožujak",
|
||||
"April" : "Travanj",
|
||||
"May" : "Svibanj",
|
||||
"June" : "Lipanj",
|
||||
"July" : "Srpanj",
|
||||
"August" : "Kolovoz",
|
||||
"September" : "Rujan",
|
||||
"October" : "Listopad",
|
||||
"November" : "Studeni",
|
||||
"December" : "Prosinac",
|
||||
"First" : "Prvi",
|
||||
"Second" : "Drugi",
|
||||
"Third" : "Treći",
|
||||
"Fourth" : "Četvrti",
|
||||
"Fifth" : "Peti",
|
||||
"Last" : "Zadnji",
|
||||
"Second Last" : "Drugi od kraja",
|
||||
"Third Last" : "Treći od kraja",
|
||||
"Fourth Last" : "Četvrti od kraja",
|
||||
"Fifth Last" : "Peti od kraja",
|
||||
"Contacts" : "Kontakti",
|
||||
"{actor} created address book {addressbook}" : "{actor} je stvorio adresar {addressbook}",
|
||||
"You created address book {addressbook}" : "Stvorili ste adresar {addressbook}",
|
||||
"{actor} deleted address book {addressbook}" : "{actor} je izbrisao adresar {addressbook}",
|
||||
"You deleted address book {addressbook}" : "Izbrisali ste adresar {addressbook}",
|
||||
"{actor} updated address book {addressbook}" : "{actor} je ažurirao adresar {addressbook}",
|
||||
"You updated address book {addressbook}" : "Ažurirali ste adresar {addressbook}",
|
||||
"{actor} shared address book {addressbook} with you" : "{actor} dijeli adresar {addressbook} s vama",
|
||||
"You shared address book {addressbook} with {user}" : "Dijelite adresar {addressbook} s {user}",
|
||||
"{actor} shared address book {addressbook} with {user}" : "{actor} dijeli adresar {addressbook} s {user}",
|
||||
"{actor} unshared address book {addressbook} from you" : "{actor} je prestao dijeliti adresar {addressbook} s vama",
|
||||
"You unshared address book {addressbook} from {user}" : "Prestali ste dijeliti adresar {addressbook} s {user}",
|
||||
"{actor} unshared address book {addressbook} from {user}" : "{actor} je prestao dijeliti adresar {addressbook} s {user}",
|
||||
"{actor} unshared address book {addressbook} from themselves" : "{actor} je prestao dijeliti adresar {addressbook} sa sobom",
|
||||
"You shared address book {addressbook} with group {group}" : "Dijelite adresar {addressbook} s grupom {group}",
|
||||
"{actor} shared address book {addressbook} with group {group}" : "{actor} dijeli adresar {addressbook} s grupom {group}",
|
||||
"You unshared address book {addressbook} from group {group}" : "Prestali ste dijeliti adresar {addressbook} s grupom {group}",
|
||||
"{actor} unshared address book {addressbook} from group {group}" : "{actor} je prestao dijeliti adresar {addressbook} s grupom {group}",
|
||||
"{actor} created contact {card} in address book {addressbook}" : "{actor} je stvorio kontakt {card} u adresaru {addressbook}",
|
||||
"You created contact {card} in address book {addressbook}" : "Stvorili ste kontakt {card} u adresaru {addressbook}",
|
||||
"{actor} deleted contact {card} from address book {addressbook}" : "{actor} je izbrisao kontakt {card} iz adresara {addressbook}",
|
||||
"You deleted contact {card} from address book {addressbook}" : "Izbrisali ste kontakt {card} iz adresara {addressbook}",
|
||||
"{actor} updated contact {card} in address book {addressbook}" : "{actor} je ažurirao kontakt {card} u adresaru {addressbook}",
|
||||
"You updated contact {card} in address book {addressbook}" : "Ažurirali ste kontakt {card} u adresaru {addressbook}",
|
||||
"A <strong>contact</strong> or <strong>address book</strong> was modified" : "Izmijenjen je <strong>kontakt</strong> ili <strong>adresar</strong>",
|
||||
"System address book disabled" : "Adresar sustava je onemogućen",
|
||||
"The system contacts address book has been automatically disabled during upgrade. This means that the address book will no longer be available to users in the contacts app or other clients. The system contacts address book was disabled because the amount of contacts in the address book exceeded the maximum recommended number of contacts. This limit is set to prevent performance issues. You can re-enable the system address book with the following command {command}" : "Adresar sistemskih kontakata automatski je onemogućen tijekom nadogradnje. To znači da adresar više neće biti dostupan korisnicima u aplikaciji Kontakti niti u drugim klijentima. Adresar sistemskih kontakata onemogućen je jer je broj kontakata u adresaru premašio maksimalno preporučeni broj. Ovo ograničenje postavljeno je radi sprječavanja problema s performansama. Adresar sustava možete ponovno omogućiti sljedećom naredbom {command}.",
|
||||
"Accounts" : "Korisnički računi",
|
||||
"System address book which holds all accounts" : "Adresar sustava koji sadrži sve račune",
|
||||
"File is not updatable: %1$s" : "Datoteku nije moguće ažurirati: %1$s",
|
||||
"Failed to get storage for file" : "Neuspjelo dohvaćanje pohrane za datoteku",
|
||||
"Could not write to final file, canceled by hook" : "Nije moguće zapisati u završnu datoteku, otkazano putem kuke",
|
||||
"Could not write file contents" : "Nije moguće zapisati sadržaj datoteke",
|
||||
"_%n byte_::_%n bytes_" : ["%n bajt","%n bajta","%n bajtova"],
|
||||
"Error while copying file to target location (copied: %1$s, expected filesize: %2$s)" : "Pogreška pri kopiranju datoteke na odredišnu lokaciju (kopirano: %1$s, očekivana veličina datoteke: %2$s)",
|
||||
"Expected filesize of %1$s but read (from Nextcloud client) and wrote (to Nextcloud storage) %2$s. Could either be a network problem on the sending side or a problem writing to the storage on the server side." : "Očekivana veličina datoteke je %1$s ali je pročitano (s Nextcloud klijenta) i zapisano (u Nextcloud pohranu) %2$s. To može biti problem s mrežom na strani slanja ili problem pri zapisivanju u pohranu na strani poslužitelja.",
|
||||
"Could not rename part file to final file, canceled by hook" : "Nije moguće preimenovati djelomičnu datoteku u završnu datoteku, otkazano putem kuke",
|
||||
"Could not rename part file to final file" : "Nije moguće preimenovati djelomičnu datoteku u završnu datoteku",
|
||||
"Failed to check file size: %1$s" : "Neuspjela provjera veličine datoteke: %1$s",
|
||||
"Could not open file: %1$s (%2$d), file does seem to exist" : "Nije moguće otvoriti datoteku: %1$s (%2$d), čini se da datoteka postoji",
|
||||
"Could not open file: %1$s (%2$d), file doesn't seem to exist" : "Nije moguće otvoriti datoteku: %1$s (%2$d), čini se da datoteka ne postoji",
|
||||
"Encryption not ready: %1$s" : "Šifriranje nije spremno: %1$s",
|
||||
"Failed to open file: %1$s" : "Neuspjelo otvaranje datoteke: %1$s",
|
||||
"Failed to unlink: %1$s" : "Neuspjelo uklanjanje veze: %1$s",
|
||||
"Failed to write file contents: %1$s" : "Neuspjelo zapisivanje sadržaja datoteke: %1$s",
|
||||
"File not found: %1$s" : "Datoteka nije pronađena: %1$s",
|
||||
"Invalid target path" : "Nevažeća odredišna putanja",
|
||||
"System is in maintenance mode." : "Sustav je u načinu održavanja.",
|
||||
"Upgrade needed" : "Potrebno nadograditi",
|
||||
"Your %s needs to be configured to use HTTPS in order to use CalDAV and CardDAV with iOS/macOS." : "Vaš %s treba konfigurirati za korištenje HTTPS-a kako bi se mogli upotrebljavati CalDAV i CardDAV s operacijskim sustavom iOS/macOS.",
|
||||
"Configures a CalDAV account" : "Konfigurira CalDAV račun",
|
||||
"Configures a CardDAV account" : "Konfigurira CardDAV račun",
|
||||
"Events" : "Događaji",
|
||||
"Untitled task" : "Zadatak bez naslova",
|
||||
"Completed on %s" : "Završeno na %s",
|
||||
"Due on %s by %s" : "%s treba završiti do %s",
|
||||
"Due on %s" : "Treba završiti do %s",
|
||||
"Welcome to Nextcloud Calendar!\n\nThis is a sample event - explore the flexibility of planning with Nextcloud Calendar by making any edits you want!\n\nWith Nextcloud Calendar, you can:\n- Create, edit, and manage events effortlessly.\n- Create multiple calendars and share them with teammates, friends, or family.\n- Check availability and display your busy times to others.\n- Seamlessly integrate with apps and devices via CalDAV.\n- Customize your experience: schedule recurring events, adjust notifications and other settings." : "Dobrodošli u Nextcloud Kalendar!\n\nOvo je primjer događaja – istražite fleksibilnost planiranja s Nextcloud Kalendarom tako da napravite bilo kakve izmjene koje želite!\n\nUz Nextcloud Kalendar možete:\n- Jednostavno stvarati, uređivati i upravljati događajima..\n- Stvarati više kalendara i dijeliti ih s kolegama, prijateljima ili obitelji.\n- Provjeravati dostupnost i drugima prikazivati svoja zauzeta razdoblja.\n- Neprimjetno se integrirati s aplikacijama i uređajima putem CalDAV-a.\n- Prilagoditi svoje iskustvo: zakazivati ponavljajuće događaje, prilagođavati obavijesti i druge postavke.",
|
||||
"Example event - open me!" : "Primjer događaja – otvori me!",
|
||||
"System Address Book" : "Adresar sustava",
|
||||
"The system address book contains contact information for all users in your instance." : "Adresar sustava sadrži kontaktne podatke za sve korisnike u vašoj instanci.",
|
||||
"Enable System Address Book" : "Omogući adresar sustava",
|
||||
"DAV system address book" : "DAV adresar sustava",
|
||||
"No outstanding DAV system address book sync." : "Nema neriješene sinkronizacije DAV adresara sustava.",
|
||||
"The DAV system address book sync has not run yet as your instance has more than 1000 users or because an error occurred. Please run it manually by calling \"occ dav:sync-system-addressbook\"." : "Sinkronizacija DAV adresara sustava još nije pokrenuta jer vaša instanca ima više od 1000 korisnika ili je došlo do pogreške. Pokrenite je ručno pozivanjem naredbe „occ dav:sync-system-addressbook”.",
|
||||
"DAV system address book size" : "Veličina DAV adresara sustava",
|
||||
"The system address book is disabled" : "Adresar sustava je onemogućen",
|
||||
"The system address book is enabled, but contains more than the configured limit of %d contacts" : "Adresar sustava je omogućen, ali sadrži više od konfiguriranog ograničenja od %d kontakata",
|
||||
"The system address book is enabled and contains less than the configured limit of %d contacts" : "Adresar sustava je omogućen i sadrži manje od konfiguriranog ograničenja od %d kontakata",
|
||||
"WebDAV endpoint" : "WebDAV krajnja točka",
|
||||
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually." : "Nije moguće provjeriti je li vaš mrežni poslužitelj ispravno postavljen za omogućavanje sinkronizacije datoteka putem WebDAV-a. Molimo provjerite ručno.",
|
||||
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Vaš mrežni poslužitelj nije pravilno podešen za sinkronizaciju podataka jer je sučelje protokola WebDAV neispravno.",
|
||||
"Your web server is properly set up to allow file synchronization over WebDAV." : "Vaš mrežni poslužitelj je ispravno postavljen za omogućavanje sinkronizacije datoteka putem WebDAV-a.",
|
||||
"Migrated calendar (%1$s)" : "Migriran kalendar (%1$s)",
|
||||
"Calendars including events, details and attendees" : "Kalendari uključujući događaje, detalje i sudionike",
|
||||
"Contacts and groups" : "Kontakti i grupe",
|
||||
"WebDAV" : "WebDAV",
|
||||
"Absence saved" : "Odsutnost je spremljena",
|
||||
"Failed to save your absence settings" : "Neuspjelo spremanje postavki odsutnosti",
|
||||
"Absence cleared" : "Odsutnost je uklonjena",
|
||||
"Failed to clear your absence settings" : "Neuspjelo uklanjanje postavki odsutnosti",
|
||||
"First day" : "Prvi dan",
|
||||
"Last day (inclusive)" : "Zadnji dan (uključivo)",
|
||||
"Out of office replacement (optional)" : "Zamjena za odsutnost iz ureda (neobavezno)",
|
||||
"Name of the replacement" : "Ime zamjene",
|
||||
"Short absence status" : "Kratki status odsutnosti",
|
||||
"Long absence Message" : "Duga poruka o odsutnosti",
|
||||
"Save" : "Spremi",
|
||||
"Disable absence" : "Onemogući odsutnost",
|
||||
"Failed to load availability" : "Neuspjelo učitavanje dostupnosti",
|
||||
"Saved availability" : "Dostupnost je spremljena",
|
||||
"Failed to save availability" : "Neuspjelo spremanje dostupnosti",
|
||||
"to" : "do",
|
||||
"Delete slot" : "Izbriši mjesto",
|
||||
"No working hours set" : "Radno vrijeme nije postavljeno",
|
||||
"Add slot" : "Dodaj mjesto",
|
||||
"Weekdays" : "Dani u tjednu",
|
||||
"Pick a start time for {dayName}" : "Odaberite početno vrijeme za {dayName}",
|
||||
"Pick a end time for {dayName}" : "Odaberite završno vrijeme za {dayName}",
|
||||
"Automatically set user status to \"Do not disturb\" outside of availability to mute all notifications." : "Automatski postavi korisnički status na „Ne ometaj” izvan vremena dostupnosti kako bi se utišale sve obavijesti.",
|
||||
"Cancel" : "Odustani",
|
||||
"Import" : "Uvezi",
|
||||
"Error while saving settings" : "Greška pri spremanju postavki",
|
||||
"Contact reset successfully" : "Kontakt je uspješno resetiran",
|
||||
"Error while resetting contact" : "Greška pri resetiranju kontakta",
|
||||
"Contact imported successfully" : "Kontakt je uspješno uvezen",
|
||||
"Error while importing contact" : "Greška pri uvozu kontakta",
|
||||
"Import contact" : "Uvezi kontakt",
|
||||
"Reset to default" : "Vrati na zadanu postavku",
|
||||
"Import contacts" : "Uvezi kontakte",
|
||||
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "Uvoz nove .vcf datoteke izbrisat će postojeći zadani kontakt i zamijeniti ga novim. Želite li nastaviti?",
|
||||
"Failed to save example event creation setting" : "Neuspjelo spremanje postavke stvaranja primjer-događaja",
|
||||
"Failed to upload the example event" : "Neuspjelo učitavanje primjer-događaja",
|
||||
"Custom example event was saved successfully" : "Prilagođeni primjer događaja uspješno je spremljen",
|
||||
"Failed to delete the custom example event" : "Neuspjelo brisanje prilagođenog primjer-događaja",
|
||||
"Custom example event was deleted successfully" : "Prilagođeni primjer događaja uspješno je izbrisan",
|
||||
"Import calendar event" : "Uvezi događaj u kalendar",
|
||||
"Uploading a new event will overwrite the existing one." : "Učitavanje novog događaja prebrisat će postojeći.",
|
||||
"Upload event" : "Učitaj događaj",
|
||||
"Also install the {calendarappstoreopen}Calendar app{linkclose}, or {calendardocopen}connect your desktop & mobile for syncing ↗{linkclose}." : "Također instalirajte {calendarappstoreopen}aplikaciju Kalendar{linkclose} ili {calendardocopen}povežite računalo i mobilni uređaj radi sinkroniziranja ↗{linkclose}.",
|
||||
"Please make sure to properly set up {emailopen}the email server{linkclose}." : "Provjerite jeste li ispravno postavili {emailopen}poslužitelj e-pošte{linkclose}.",
|
||||
"Calendar server" : "Poslužitelj kalendara",
|
||||
"Send invitations to attendees" : "Pošaljite pozive sudionicima",
|
||||
"Automatically generate a birthday calendar" : "Automatski generiraj kalendar rođendana",
|
||||
"Birthday calendars will be generated by a background job." : "Kalendari rođendana generirat će se u pozadini.",
|
||||
"Hence they will not be available immediately after enabling but will show up after some time." : "Stoga neće biti dostupni odmah nakon omogućivanja, ali će se pojaviti nakon nekog vremena.",
|
||||
"Send notifications for events" : "Šalji obavijesti o događajima",
|
||||
"Notifications are sent via background jobs, so these must occur often enough." : "Obavijesti se šalju putem pozadinskih zadataka koji se moraju dovoljno često izvoditi.",
|
||||
"Send reminder notifications to calendar sharees as well" : "Šalji podsjetnike i osobama s kojima je kalendar podijeljen",
|
||||
"Reminders are always sent to organizers and attendees." : "Podsjetnici se uvijek šalju organizatorima i sudionicima.",
|
||||
"Enable notifications for events via push" : "Omogući slanje obavijesti o događajima putem push obavijesti",
|
||||
"Example content" : "Primjer sadržaja",
|
||||
"Example content serves to showcase the features of Nextcloud. Default content is shipped with Nextcloud, and can be replaced by custom content." : "Primjer sadržaja služi za predstavljanje mogućnosti Nextclouda. Zadani sadržaj dolazi uz Nextcloud i može se zamijeniti prilagođenim sadržajem.",
|
||||
"Availability" : "Raspoloživost",
|
||||
"If you configure your working hours, other people will see when you are out of office when they book a meeting." : "Ako konfigurirate svoje radno vrijeme, drugi će vidjeti kada ste izvan ureda prilikom zakazivanja sastanka.",
|
||||
"Absence" : "Odsutnost",
|
||||
"Configure your next absence period." : "Konfigurirajte svoje sljedeće razdoblje odsutnosti.",
|
||||
"There was an error updating your attendance status." : "Došlo je do pogreške prilikom ažuriranja statusa prisutnosti.",
|
||||
"Please contact the organizer directly." : "Izravno se obratite organizatoru.",
|
||||
"Are you accepting the invitation?" : "Prihvaćate li poziv?",
|
||||
"Tentative" : "Uvjetno",
|
||||
"Your attendance was updated successfully." : "Vaša je prisutnost uspješno ažurirana.",
|
||||
"_In a minute on %1$s for the entire day_::_In %n minutes on %1$s for the entire day_" : ["U %n minutu, dana %1$s tokom cijelog dana","U %n minute, dana %1$s tokom cijelog dana","U %n minuta, dana %1$s tokom cijelog dana"],
|
||||
"_In a hour on %1$s for the entire day_::_In %n hours on %1$s for the entire day_" : ["U %n sat, dana %1$s tokom cijelog dana","U %n sata, dana %1$s tokom cijelog dana","U %n sati, dana %1$s tokom cijelog dana"],
|
||||
"_In a day on %1$s for the entire day_::_In %n days on %1$s for the entire day_" : ["U %n dan, dana %1$s tokom cijelog dana","U %n dana, dana %1$s tokom cijelog dana","U %n dana, dana %1$s tokom cijelog dana"],
|
||||
"_In a week on %1$s for the entire day_::_In %n weeks on %1$s for the entire day_" : ["U %n tjedana, dana %1$s tokom cijelog dana","U %n tjedna, dana %1$s tokom cijelog dana","U %n tjedana, dana %1$s tokom cijelog dana"],
|
||||
"_In a month on %1$s for the entire day_::_In %n months on %1$s for the entire day_" : ["U %n mjesec, dana %1$s tokom cijelog dana","U %n mjeseca, dana %1$s tokom cijelog dana","U %n mjeseci, dana %1$s tokom cijelog dana"],
|
||||
"_In a year on %1$s for the entire day_::_In %n years on %1$s for the entire day_" : ["U %n godini, dana %1$s tokom cijelog dana","U %n godine, dana %1$s tokom cijelog dana","U %n godina, dana %1$s tokom cijelog dana"],
|
||||
"_In a minute on %1$s between %2$s - %3$s_::_In %n minutes on %1$s between %2$s - %3$s_" : ["U %n minutu, dana %1$s između %2$s - %3$s","U %n minute, dana %1$s između %2$s - %3$s","U %n minuta, dana %1$s između %2$s - %3$s"],
|
||||
"_In a hour on %1$s between %2$s - %3$s_::_In %n hours on %1$s between %2$s - %3$s_" : ["U %n sat, dana %1$s između %2$s - %3$s","U %n sata, dana %1$s između %2$s - %3$s","U %n sati, dana %1$s između %2$s - %3$s"],
|
||||
"_In a day on %1$s between %2$s - %3$s_::_In %n days on %1$s between %2$s - %3$s_" : ["U %n dan, dana %1$s između %2$s - %3$s","U %n dana, dana %1$s između %2$s - %3$s","U %n dana, dana %1$s između %2$s - %3$s"],
|
||||
"_In a week on %1$s between %2$s - %3$s_::_In %n weeks on %1$s between %2$s - %3$s_" : ["U %n tjedan, dana %1$s između %2$s - %3$s","U %n tjedna, dana %1$s između %2$s - %3$s","U %n tjedana, dana %1$s između %2$s - %3$s"],
|
||||
"_In a month on %1$s between %2$s - %3$s_::_In %n months on %1$s between %2$s - %3$s_" : ["U %n mjesec, dana %1$s između %2$s - %3$s","U %n mjeseca, dana %1$s između %2$s - %3$s","U %n mjeseci, dana %1$s između %2$s - %3$s"],
|
||||
"_In a year on %1$s between %2$s - %3$s_::_In %n years on %1$s between %2$s - %3$s_" : ["U %n godini, dana %1$s između %2$s - %3$s","U %n godine, dana %1$s između %2$s - %3$s","U %n godina, dana %1$s između %2$s - %3$s"],
|
||||
"_In a minute on %1$s_::_In %n minutes on %1$s_" : ["U %n minuti, dana %1$s","U %n minute, dana %1$s","U %n minuta, dana %1$s"],
|
||||
"_In a hour on %1$s_::_In %n hours on %1$s_" : ["U %n sat, dana %1$s","U %n sata, dana %1$s","U %n sati, dana %1$s"],
|
||||
"_In a day on %1$s_::_In %n days on %1$s_" : ["U %n dan, dana %1$s","U %n dana, dana %1$s","U %n dana, dana %1$s"],
|
||||
"_In a week on %1$s_::_In %n weeks on %1$s_" : ["U %n tjedan, dana %1$s","U %n tjedna, dana %1$s","U %n tjedana, dana %1$s"],
|
||||
"_In a month on %1$s_::_In %n months on %1$s_" : ["U %n mjesec, dana %1$s","U %n mjeseca, dana %1$s","U %n mjeseci, dana %1$s"],
|
||||
"_In a year on %1$s_::_In %n years on %1$s_" : ["U %n godini, dana %1$s","U %n godine, dana %1$s","U %n godina, dana %1$s"],
|
||||
"_In a minute on %1$s then on %2$s_::_In %n minutes on %1$s then on %2$s_" : ["U %n minutu, dana %1$s onda dana %2$s","U %n minute, dana %1$s onda dana %2$s","U %n minuta, dana %1$s onda dana %2$s"],
|
||||
"_In a hour on %1$s then on %2$s_::_In %n hours on %1$s then on %2$s_" : ["U %n sat, dana %1$s onda dana %2$s","U %n sata, dana %1$s onda dana %2$s","U %n sati, dana %1$s onda dana %2$s"],
|
||||
"_In a day on %1$s then on %2$s_::_In %n days on %1$s then on %2$s_" : ["U %n dan, dana %1$s onda dana %2$s","U %n dana, dana %1$s onda dana %2$s","U %n dana, dana %1$s onda dana %2$s"],
|
||||
"_In a week on %1$s then on %2$s_::_In %n weeks on %1$s then on %2$s_" : ["U %n tjedan, dana %1$s onda dana %2$s","U %n tjedna, dana %1$s onda dana %2$s","U %n tjedana, dana %1$s onda dana %2$s"],
|
||||
"_In a month on %1$s then on %2$s_::_In %n months on %1$s then on %2$s_" : ["U %n mjesec, dana %1$s onda dana %2$s","U %n mjeseca, dana %1$s onda dana %2$s","U %n mjeseci, dana %1$s onda dana %2$s"],
|
||||
"_In a year on %1$s then on %2$s_::_In %n years on %1$s then on %2$s_" : ["U %n godini, dana %1$s onda dana %2$s","U %n godine, dana %1$s onda dana %2$s","U %n godina, dana %1$s onda dana %2$s"],
|
||||
"_In a minute on %1$s then on %2$s and %3$s_::_In %n minutes on %1$s then on %2$s and %3$s_" : ["U %n minutu, dana %1$s onda dana %2$s i %3$s","U %n minute, dana %1$s onda dana %2$s i %3$s","U %n minuta, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In a hour on %1$s then on %2$s and %3$s_::_In %n hours on %1$s then on %2$s and %3$s_" : ["U %n sat, dana %1$s onda dana %2$s i %3$s","U %n sata, dana %1$s onda dana %2$s i %3$s","U %n sati, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In a day on %1$s then on %2$s and %3$s_::_In %n days on %1$s then on %2$s and %3$s_" : ["U %n dan, dana %1$s onda dana %2$s i %3$s","U %n dana, dana %1$s onda dana %2$s i %3$s","U %n dana, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In a week on %1$s then on %2$s and %3$s_::_In %n weeks on %1$s then on %2$s and %3$s_" : ["U %n tjedan, dana %1$s onda dana %2$s i %3$s","U %n tjedna, dana %1$s onda dana %2$s i %3$s","U %n tjedana, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In a month on %1$s then on %2$s and %3$s_::_In %n months on %1$s then on %2$s and %3$s_" : ["U %n mjesec, dana %1$s onda dana %2$s i %3$s","U %n mjeseca, dana %1$s onda dana %2$s i %3$s","U %n mjeseci, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In a year on %1$s then on %2$s and %3$s_::_In %n years on %1$s then on %2$s and %3$s_" : ["U %n godini, dana %1$s onda dana %2$s i %3$s","U %n godine, dana %1$s onda dana %2$s i %3$s","U %n godina, dana %1$s onda dana %2$s i %3$s"],
|
||||
"Could not open file: %1$s, file does seem to exist" : "Nije moguće otvoriti datoteku: %1$s, čini se da datoteka postoji",
|
||||
"Could not open file: %1$s, file doesn't seem to exist" : "Nije moguće otvoriti datoteku: %1$s, čini se da datoteka ne postoji",
|
||||
"No results." : "Nema rezultata.",
|
||||
"Start typing." : "Započnite s pisanjem.",
|
||||
"Time zone:" : "Vremenska zona:"
|
||||
},
|
||||
"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;");
|
||||
374
apps/dav/l10n/hr.json
Normal file
374
apps/dav/l10n/hr.json
Normal file
@@ -0,0 +1,374 @@
|
||||
{ "translations": {
|
||||
"Calendar" : "Kalendar",
|
||||
"Tasks" : "Zadaci",
|
||||
"Personal" : "Osobno",
|
||||
"{actor} created calendar {calendar}" : "{actor} je stvorio kalendar {calendar}",
|
||||
"You created calendar {calendar}" : "Stvorili ste kalendar {calendar}",
|
||||
"{actor} deleted calendar {calendar}" : "{actor} je izbrisao kalendar {calendar}",
|
||||
"You deleted calendar {calendar}" : "Izbrisali ste kalendar {calendar}",
|
||||
"{actor} updated calendar {calendar}" : "{actor} je ažurirao kalendar {calendar}",
|
||||
"You updated calendar {calendar}" : "Ažurirali ste kalendar {calendar}",
|
||||
"{actor} restored calendar {calendar}" : "{actor} je vratio kalendar {calendar}",
|
||||
"You restored calendar {calendar}" : "Vratili ste kalendar {calendar}",
|
||||
"You shared calendar {calendar} as public link" : "Podijelili ste kalendar {calendar} putem javne poveznice",
|
||||
"You removed public link for calendar {calendar}" : "Uklonili ste javnu poveznicu na kalendar {calendar}",
|
||||
"{actor} shared calendar {calendar} with you" : "{actor} dijeli kalendar {calendar} s vama",
|
||||
"You shared calendar {calendar} with {user}" : "Podijelili ste kalendar {calendar} s {user}",
|
||||
"{actor} shared calendar {calendar} with {user}" : "{actor} dijeli kalendar {calendar} s {user}",
|
||||
"{actor} unshared calendar {calendar} from you" : "{actor} više ne dijeli kalendar {calendar} s vama",
|
||||
"You unshared calendar {calendar} from {user}" : "Više ne dijelite kalendar {calendar} s {user}",
|
||||
"{actor} unshared calendar {calendar} from {user}" : "{actor} više ne dijeli kalendar {calendar} s {user}",
|
||||
"{actor} unshared calendar {calendar} from themselves" : "{actor} više ne dijeli kalendar {calendar} sam sa sobom",
|
||||
"You shared calendar {calendar} with group {group}" : "Podijelili ste kalendar {calendar} s grupom {group}",
|
||||
"{actor} shared calendar {calendar} with group {group}" : "{actor} dijeli kalendar {calendar} s grupom {group}",
|
||||
"You unshared calendar {calendar} from group {group}" : "Više ne dijelite kalendar {calendar} s grupom {group}",
|
||||
"{actor} unshared calendar {calendar} from group {group}" : "{actor} više ne dijeli kalendar {calendar} s grupom {group}",
|
||||
"Untitled event" : "Događaj bez naslova",
|
||||
"{actor} created event {event} in calendar {calendar}" : "{actor} je stvorio događaj {event} u kalendaru {calendar}",
|
||||
"You created event {event} in calendar {calendar}" : "Stvorili ste događaj {event} u kalendaru {calendar}",
|
||||
"{actor} deleted event {event} from calendar {calendar}" : "{actor} je izbrisao događaj {event} iz kalendara {calendar}",
|
||||
"You deleted event {event} from calendar {calendar}" : "Izbrisali ste događaj {event} iz kalendara {calendar}",
|
||||
"{actor} updated event {event} in calendar {calendar}" : "{actor} je ažurirao događaj {event} u kalendaru {calendar}",
|
||||
"You updated event {event} in calendar {calendar}" : "Ažurirali ste događaj {event} u kalendaru {calendar}",
|
||||
"{actor} moved event {event} from calendar {sourceCalendar} to calendar {targetCalendar}" : "{actor} je premjestio događaj {event} iz kalendara {sourceCalendar} u kalendar {targetCalendar}",
|
||||
"You moved event {event} from calendar {sourceCalendar} to calendar {targetCalendar}" : "Premjestili ste događaj {event} iz kalendara {sourceCalendar} u kalendar {targetCalendar}",
|
||||
"{actor} restored event {event} of calendar {calendar}" : "{actor} je vratio događaj {event} kalendara {calendar}",
|
||||
"You restored event {event} of calendar {calendar}" : "Vratili ste događaj {event} kalendara {calendar}",
|
||||
"Busy" : "Zauzeto",
|
||||
"{actor} created to-do {todo} in list {calendar}" : "{actor} je stvorio zadatak {todo} u popisu {calendar}",
|
||||
"You created to-do {todo} in list {calendar}" : "Stvorili ste zadatak {todo} u popisu {calendar}",
|
||||
"{actor} deleted to-do {todo} from list {calendar}" : "{actor} je izbrisao zadatak {todo} iz popisa {calendar}",
|
||||
"You deleted to-do {todo} from list {calendar}" : "Izbrisali ste zadatak {todo} iz popisa {calendar}",
|
||||
"{actor} updated to-do {todo} in list {calendar}" : "{actor} je ažurirao zadatak {todo} u popisu {calendar}",
|
||||
"You updated to-do {todo} in list {calendar}" : "Ažurirali ste zadatak {todo} u popisu {calendar}",
|
||||
"{actor} solved to-do {todo} in list {calendar}" : "{actor} je riješio zadatak {todo} u popisu {calendar}",
|
||||
"You solved to-do {todo} in list {calendar}" : "Riješili ste zadatak {todo} u popisu {calendar}",
|
||||
"{actor} reopened to-do {todo} in list {calendar}" : "{actor} je ponovno otvorio zadatak {todo} u popisu {calendar}",
|
||||
"You reopened to-do {todo} in list {calendar}" : "Ponovno ste otvorili zadatak {todo} u popisu {calendar}",
|
||||
"{actor} moved to-do {todo} from list {sourceCalendar} to list {targetCalendar}" : "{actor} je premjestio zadatak {todo} iz popisa {sourceCalendar} u popis {targetCalendar}",
|
||||
"You moved to-do {todo} from list {sourceCalendar} to list {targetCalendar}" : "Premjestili ste zadatak {todo} iz popisa {sourceCalendar} u popis {targetCalendar}",
|
||||
"Calendar, contacts and tasks" : "Kalendar, kontakti i zadaci",
|
||||
"A <strong>calendar</strong> was modified" : "Izmijenjen je <strong>kalendar</strong>",
|
||||
"A calendar <strong>event</strong> was modified" : "Izmijenjen je <strong>događaj</strong> u kalendaru",
|
||||
"A calendar <strong>to-do</strong> was modified" : "Izmijenjen je <strong>zadatak</strong> u kalendaru",
|
||||
"Contact birthdays" : "Rođendani kontakata",
|
||||
"Death of %s" : "Smrt %s",
|
||||
"Untitled calendar" : "Kalendar bez naslova",
|
||||
"Calendar:" : "Kalendar:",
|
||||
"Date:" : "Datum:",
|
||||
"Where:" : "Gdje:",
|
||||
"Description:" : "Opis:",
|
||||
"_%n year_::_%n years_" : ["%n godina","%n godina","%n godina"],
|
||||
"_%n month_::_%n months_" : ["%n mjesec","%n mjeseci","%n mjeseci"],
|
||||
"_%n day_::_%n days_" : ["%n dan","%n dana","%n dana"],
|
||||
"_%n hour_::_%n hours_" : ["%n sat","%n sati","%n sati"],
|
||||
"_%n minute_::_%n minutes_" : ["%n minute/minuta","%n minuta","%n minuta"],
|
||||
"%s (in %s)" : "%s (u %s)",
|
||||
"%s (%s ago)" : "%s (prije %s)",
|
||||
"Calendar: %s" : "Kalendar: %s",
|
||||
"Date: %s" : "Datum: %s",
|
||||
"Description: %s" : "Opis: %s",
|
||||
"Where: %s" : "Gdje: %s",
|
||||
"%1$s via %2$s" : "%1$s putem %2$s",
|
||||
"In the past on %1$s for the entire day" : "U prošlosti, dana %1$s, tijekom cijelog dana",
|
||||
"_In %n minute on %1$s for the entire day_::_In %n minutes on %1$s for the entire day_" : ["Za %n minutu, dana %1$s, tijekom cijelog dana","Za %n minute, dana %1$s, tijekom cijelog dana","Za %n minuta, dana %1$s, tijekom cijelog dana"],
|
||||
"_In %n hour on %1$s for the entire day_::_In %n hours on %1$s for the entire day_" : ["Za %n sat, dana %1$s, tijekom cijelog dana","Za %n sata, dana %1$s, tijekom cijelog dana","Za %n sati, dana %1$s, tijekom cijelog dana"],
|
||||
"_In %n day on %1$s for the entire day_::_In %n days on %1$s for the entire day_" : ["Za %n dan, dana %1$s, tijekom cijelog dana","Za %n dana, dana %1$s, tijekom cijelog dana","Za %n dana, dana %1$s, tijekom cijelog dana"],
|
||||
"_In %n week on %1$s for the entire day_::_In %n weeks on %1$s for the entire day_" : ["Za %n tjedan, dana %1$s, tijekom cijelog dana","Za %n tjedna, dana %1$s, tijekom cijelog dana","Za %n tjedana, dana %1$s, tijekom cijelog dana"],
|
||||
"_In %n month on %1$s for the entire day_::_In %n months on %1$s for the entire day_" : ["Za %n mjesec, dana %1$s, tijekom cijelog dana","Za %n mjeseca, dana %1$s, tijekom cijelog dana","Za %n mjeseci, dana %1$s, tijekom cijelog dana"],
|
||||
"_In %n year on %1$s for the entire day_::_In %n years on %1$s for the entire day_" : ["Za %n godinu, dana %1$s, tijekom cijelog dana","Za %n godine, dana %1$s, tijekom cijelog dana","Za %n godina, dana %1$s, tijekom cijelog dana"],
|
||||
"In the past on %1$s between %2$s - %3$s" : "U prošlosti, dana %1$s između %2$s – %3$s",
|
||||
"_In %n minute on %1$s between %2$s - %3$s_::_In %n minutes on %1$s between %2$s - %3$s_" : ["Za %n minutu, dana %1$s između %2$s – %3$s","Za %n minute, dana %1$s između %2$s – %3$s","Za %n minuta, dana %1$s između %2$s – %3$s"],
|
||||
"_In %n hour on %1$s between %2$s - %3$s_::_In %n hours on %1$s between %2$s - %3$s_" : ["Za %n sat, dana %1$s između %2$s – %3$s","Za %n sata, dana %1$s između %2$s – %3$s","Za %n sati, dana %1$s između %2$s – %3$s"],
|
||||
"_In %n day on %1$s between %2$s - %3$s_::_In %n days on %1$s between %2$s - %3$s_" : ["Za %n dan, dana %1$s između %2$s – %3$s","Za %n dana, dana %1$s između %2$s – %3$s","Za %n dana, dana %1$s između %2$s – %3$s"],
|
||||
"_In %n week on %1$s between %2$s - %3$s_::_In %n weeks on %1$s between %2$s - %3$s_" : ["Za %n tjedan, dana %1$s između %2$s – %3$s","Za %n tjedna, dana %1$s između %2$s – %3$s","Za %n tjedana, dana %1$s između %2$s – %3$s"],
|
||||
"_In %n month on %1$s between %2$s - %3$s_::_In %n months on %1$s between %2$s - %3$s_" : ["Za %n mjesec, dana %1$s između %2$s – %3$s","Za %n mjeseca, dana %1$s između %2$s – %3$s","Za %n mjeseci, dana %1$s između %2$s – %3$s"],
|
||||
"_In %n year on %1$s between %2$s - %3$s_::_In %n years on %1$s between %2$s - %3$s_" : ["Za %n godinu, dana %1$s između %2$s – %3$s","Za %n godine, dana %1$s između %2$s – %3$s","Za %n godina, dana %1$s između %2$s – %3$s"],
|
||||
"Could not generate when statement" : "Nije moguće generirati vremensku odrednicu",
|
||||
"Every Day for the entire day" : "Svaki dan tijekom cijelog dana",
|
||||
"Every Day for the entire day until %1$s" : "Svaki dan tijekom cijelog dana do %1$s",
|
||||
"Every Day between %1$s - %2$s" : "Svaki dan između %1$s - %2$s",
|
||||
"Every Day between %1$s - %2$s until %3$s" : "Svaki dan između %1$s - %2$s do %3$s",
|
||||
"Every %1$d Days for the entire day" : "Svakih %1$d dana tijekom cijelog dana",
|
||||
"Every %1$d Days for the entire day until %2$s" : "Svakih %1$d dana tijekom cijelog dana do %2$s",
|
||||
"Every %1$d Days between %2$s - %3$s" : "Svakih%1$d dana između%2$s - %3$s",
|
||||
"Every %1$d Days between %2$s - %3$s until %4$s" : "Svakih %1$d dana između %2$s - %3$s do %4$s",
|
||||
"Could not generate event recurrence statement" : "Nije moguće generirati izraz za ponavljanje događaja",
|
||||
"Every Week on %1$s for the entire day" : "Svaki tjedan u %1$s tijekom cijelog dana",
|
||||
"Every Week on %1$s for the entire day until %2$s" : "Svaki tjedan u %1$s tokom cijelog dana do %2$s",
|
||||
"Every Week on %1$s between %2$s - %3$s" : "Svaki tjedan u %1$s između %2$s - %3$s",
|
||||
"Every Week on %1$s between %2$s - %3$s until %4$s" : "Svaki tjedan u %1$s između %2$s - %3$s do %4$s",
|
||||
"Every %1$d Weeks on %2$s for the entire day" : "Svakih %1$d tjedana od %2$s tijekom cijelog dana",
|
||||
"Every %1$d Weeks on %2$s for the entire day until %3$s" : "Svakih %1$d tjedana od %2$s tijekom cijelog dana do %3$s",
|
||||
"Every %1$d Weeks on %2$s between %3$s - %4$s" : "Svakih %1$d tjedana od %2$s između %3$s - %4$s",
|
||||
"Every %1$d Weeks on %2$s between %3$s - %4$s until %5$s" : "Svakih %1$d tjedana od %2$s između %3$s - %4$s do %5$s",
|
||||
"Every Month on the %1$s for the entire day" : "%1$s svakog mjeseca tokom cijelog dana",
|
||||
"Every Month on the %1$s for the entire day until %2$s" : "%1$s svakog mjeseca tokom cijelog dana do%2$s",
|
||||
"Every Month on the %1$s between %2$s - %3$s" : "%1$s svakog mjeseca između %2$s - %3$s",
|
||||
"Every Month on the %1$s between %2$s - %3$s until %4$s" : "%1$s svakog mjeseca između %2$s - %3$s do %4$s",
|
||||
"Every %1$d Months on the %2$s for the entire day" : "Svakih %1$d mjeseci, %2$s tokom cijelog dana",
|
||||
"Every %1$d Months on the %2$s for the entire day until %3$s" : "Svakih %1$d mjeseci, %2$s tokom cijelog dana do %3$s",
|
||||
"Every %1$d Months on the %2$s between %3$s - %4$s" : "Svakih %1$d mjeseci, %2$s između %3$s - %4$s",
|
||||
"Every %1$d Months on the %2$s between %3$s - %4$s until %5$s" : "Svakih %1$d mjeseci, %2$s između %3$s - %4$s do %5$s",
|
||||
"Every Year in %1$s on the %2$s for the entire day" : "Svake godine, %1$s, %2$s tokom cijelog dana",
|
||||
"Every Year in %1$s on the %2$s for the entire day until %3$s" : "Svake godine, %1$s, %2$s tokom cijelog dana do %3$s",
|
||||
"Every Year in %1$s on the %2$s between %3$s - %4$s" : "Svake godine, %1$s, %2$s između %3$s - %4$s",
|
||||
"Every Year in %1$s on the %2$s between %3$s - %4$s until %5$s" : "Svake godine, %1$s, %2$s, između %3$s - %4$s do %5$s",
|
||||
"Every %1$d Years in %2$s on the %3$s for the entire day" : "Svakih %1$d godina, %2$s, na %3$s tokom cijelog dana",
|
||||
"Every %1$d Years in %2$s on the %3$s for the entire day until %4$s" : "Svakih %1$d godina, %2$s, na %3$s tokom cijelog dana do %4$s",
|
||||
"Every %1$d Years in %2$s on the %3$s between %4$s - %5$s" : "Svakih %1$d godina, %2$s, na %3$s između %4$s - %5$s",
|
||||
"Every %1$d Years in %2$s on the %3$s between %4$s - %5$s until %6$s" : "Svakih %1$d godina, %2$s, na %3$s između %4$s - %5$s do %6$s",
|
||||
"On specific dates for the entire day until %1$s" : "Na određene datume, tijekom cijelog dana do %1$s",
|
||||
"On specific dates between %1$s - %2$s until %3$s" : "Na određene datume između %1$s - %2$s do %3$s",
|
||||
"In the past on %1$s" : "U prošlosti, dana %1$s",
|
||||
"_In %n minute on %1$s_::_In %n minutes on %1$s_" : ["U %n minutu, %1$s","U %n minute, %1$s","U %n minuta, %1$s"],
|
||||
"_In %n hour on %1$s_::_In %n hours on %1$s_" : ["U %n sat, %1$s","U %n sata, %1$s","U %n sati, %1$s"],
|
||||
"_In %n day on %1$s_::_In %n days on %1$s_" : ["U %n dan, %1$s","U %n dana, %1$s","U %n dana, %1$s"],
|
||||
"_In %n week on %1$s_::_In %n weeks on %1$s_" : ["U %n tjedan, %1$s","U %n tjedna, %1$s","U %n tjedana, %1$s"],
|
||||
"_In %n month on %1$s_::_In %n months on %1$s_" : ["U %n mjesec, %1$s","U %n mjeseca, %1$s","U %n mjeseci, %1$s"],
|
||||
"_In %n year on %1$s_::_In %n years on %1$s_" : ["U %n godinu, %1$s","U %n godine, %1$s","U %n godina, %1$s"],
|
||||
"In the past on %1$s then on %2$s" : "U prošlosti, dana %1$s, zatim dana %2$s",
|
||||
"_In %n minute on %1$s then on %2$s_::_In %n minutes on %1$s then on %2$s_" : ["U %n minutu u %1$s, onda u %2$s","U %n minute u %1$s, onda u %2$s","U %n minuta u %1$s, onda u %2$s"],
|
||||
"_In %n hour on %1$s then on %2$s_::_In %n hours on %1$s then on %2$s_" : ["U %n sat u %1$s, onda u %2$s","U %n sata u %1$s, onda u %2$s","U %n sati u %1$s, onda u %2$s"],
|
||||
"_In %n day on %1$s then on %2$s_::_In %n days on %1$s then on %2$s_" : ["U %n dan u %1$s, onda u %2$s","U %n dana u %1$s, onda u %2$s","U %n dana u %1$s, onda u %2$s"],
|
||||
"_In %n week on %1$s then on %2$s_::_In %n weeks on %1$s then on %2$s_" : ["U %n tjedan u %1$s, onda u %2$s","U %n tjedna u %1$s, onda u %2$s","U %n tjedana u %1$s, onda u %2$s"],
|
||||
"_In %n month on %1$s then on %2$s_::_In %n months on %1$s then on %2$s_" : ["U %n mjesec u %1$s, onda u %2$s","U %n mjeseca u %1$s, onda u %2$s","U %n mjeseci u %1$s, onda u %2$s"],
|
||||
"_In %n year on %1$s then on %2$s_::_In %n years on %1$s then on %2$s_" : ["U %n godinu u %1$s, onda u %2$s","U %n godine u %1$s, onda u %2$s","U %n godina u %1$s, onda u %2$s"],
|
||||
"In the past on %1$s then on %2$s and %3$s" : "U prošlosti, dana %1$s, zatim dana %2$s i %3$s",
|
||||
"_In %n minute on %1$s then on %2$s and %3$s_::_In %n minutes on %1$s then on %2$s and %3$s_" : ["u %n minutu dana %1$s onda dana %2$s i %3$s","u %n minute dana %1$s onda dana %2$s i %3$s","u %n minuta dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In %n hour on %1$s then on %2$s and %3$s_::_In %n hours on %1$s then on %2$s and %3$s_" : ["u %n sat dana %1$s onda dana %2$s i %3$s","u %n sata dana %1$s onda dana %2$s i %3$s","u %n sati dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In %n day on %1$s then on %2$s and %3$s_::_In %n days on %1$s then on %2$s and %3$s_" : ["u %n dan, dana %1$s onda dana %2$s i %3$s","u %n dana, dana %1$s onda dana %2$s i %3$s","u %n dana, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In %n week on %1$s then on %2$s and %3$s_::_In %n weeks on %1$s then on %2$s and %3$s_" : ["u %n tjedan, dana %1$s onda dana %2$s i %3$s","u %n tjedna, dana %1$s onda dana %2$s i %3$s","u %n tjedana, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In %n month on %1$s then on %2$s and %3$s_::_In %n months on %1$s then on %2$s and %3$s_" : ["u %n mjesec, dana %1$s onda dana %2$s i %3$s","u %n mjeseca, dana %1$s onda dana %2$s i %3$s","u %n mjeseci, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In %n year on %1$s then on %2$s and %3$s_::_In %n years on %1$s then on %2$s and %3$s_" : ["u %n godinu, dana %1$s onda dana %2$s i %3$s","u %n godine, dana %1$s onda dana %2$s i %3$s","u %n godina, dana %1$s onda dana %2$s i %3$s"],
|
||||
"Could not generate next recurrence statement" : "Nije moguće generirati sljedeći izraz ponavljanja",
|
||||
"Cancelled: %1$s" : "Otkazano: %1$s",
|
||||
"\"%1$s\" has been canceled" : "„%1$s” je otkazan",
|
||||
"Re: %1$s" : "Odgovor: %1 $ s",
|
||||
"%1$s has accepted your invitation" : "%1$s je prihvatio/la vašu pozivnicu",
|
||||
"%1$s has tentatively accepted your invitation" : "%1$s je privremeno prihvatio/la vašu pozivnicu",
|
||||
"%1$s has declined your invitation" : "%1$s je odbio/la vašu pozivnicu",
|
||||
"%1$s has responded to your invitation" : "%1$s je odgovorio/la na vašu pozivnicu",
|
||||
"Invitation updated: %1$s" : "Pozivnica ažurirana: %1$s",
|
||||
"%1$s updated the event \"%2$s\"" : "%1$s je ažurirao/la događaj \"%2$s\"",
|
||||
"Invitation: %1$s" : "Pozivnica: %1$s",
|
||||
"%1$s would like to invite you to \"%2$s\"" : "%1$s vas želi pozvati na „%2$s”",
|
||||
"Organizer:" : "Organizator:",
|
||||
"Attendees:" : "Polaznici:",
|
||||
"Title:" : "Naslov:",
|
||||
"When:" : "Kada:",
|
||||
"Location:" : "Lokacija:",
|
||||
"Link:" : "Poveznica:",
|
||||
"Occurring:" : "Događa se:",
|
||||
"Accept" : "Prihvati",
|
||||
"Decline" : "Odbij",
|
||||
"More options …" : "Više mogućnosti…",
|
||||
"More options at %s" : "Više mogućnosti na %s",
|
||||
"Monday" : "Ponedjeljak",
|
||||
"Tuesday" : "Utorak",
|
||||
"Wednesday" : "Srijeda",
|
||||
"Thursday" : "Četvrtak",
|
||||
"Friday" : "Petak",
|
||||
"Saturday" : "Subota",
|
||||
"Sunday" : "Nedjelja",
|
||||
"January" : "Siječanj",
|
||||
"February" : "Veljača",
|
||||
"March" : "Ožujak",
|
||||
"April" : "Travanj",
|
||||
"May" : "Svibanj",
|
||||
"June" : "Lipanj",
|
||||
"July" : "Srpanj",
|
||||
"August" : "Kolovoz",
|
||||
"September" : "Rujan",
|
||||
"October" : "Listopad",
|
||||
"November" : "Studeni",
|
||||
"December" : "Prosinac",
|
||||
"First" : "Prvi",
|
||||
"Second" : "Drugi",
|
||||
"Third" : "Treći",
|
||||
"Fourth" : "Četvrti",
|
||||
"Fifth" : "Peti",
|
||||
"Last" : "Zadnji",
|
||||
"Second Last" : "Drugi od kraja",
|
||||
"Third Last" : "Treći od kraja",
|
||||
"Fourth Last" : "Četvrti od kraja",
|
||||
"Fifth Last" : "Peti od kraja",
|
||||
"Contacts" : "Kontakti",
|
||||
"{actor} created address book {addressbook}" : "{actor} je stvorio adresar {addressbook}",
|
||||
"You created address book {addressbook}" : "Stvorili ste adresar {addressbook}",
|
||||
"{actor} deleted address book {addressbook}" : "{actor} je izbrisao adresar {addressbook}",
|
||||
"You deleted address book {addressbook}" : "Izbrisali ste adresar {addressbook}",
|
||||
"{actor} updated address book {addressbook}" : "{actor} je ažurirao adresar {addressbook}",
|
||||
"You updated address book {addressbook}" : "Ažurirali ste adresar {addressbook}",
|
||||
"{actor} shared address book {addressbook} with you" : "{actor} dijeli adresar {addressbook} s vama",
|
||||
"You shared address book {addressbook} with {user}" : "Dijelite adresar {addressbook} s {user}",
|
||||
"{actor} shared address book {addressbook} with {user}" : "{actor} dijeli adresar {addressbook} s {user}",
|
||||
"{actor} unshared address book {addressbook} from you" : "{actor} je prestao dijeliti adresar {addressbook} s vama",
|
||||
"You unshared address book {addressbook} from {user}" : "Prestali ste dijeliti adresar {addressbook} s {user}",
|
||||
"{actor} unshared address book {addressbook} from {user}" : "{actor} je prestao dijeliti adresar {addressbook} s {user}",
|
||||
"{actor} unshared address book {addressbook} from themselves" : "{actor} je prestao dijeliti adresar {addressbook} sa sobom",
|
||||
"You shared address book {addressbook} with group {group}" : "Dijelite adresar {addressbook} s grupom {group}",
|
||||
"{actor} shared address book {addressbook} with group {group}" : "{actor} dijeli adresar {addressbook} s grupom {group}",
|
||||
"You unshared address book {addressbook} from group {group}" : "Prestali ste dijeliti adresar {addressbook} s grupom {group}",
|
||||
"{actor} unshared address book {addressbook} from group {group}" : "{actor} je prestao dijeliti adresar {addressbook} s grupom {group}",
|
||||
"{actor} created contact {card} in address book {addressbook}" : "{actor} je stvorio kontakt {card} u adresaru {addressbook}",
|
||||
"You created contact {card} in address book {addressbook}" : "Stvorili ste kontakt {card} u adresaru {addressbook}",
|
||||
"{actor} deleted contact {card} from address book {addressbook}" : "{actor} je izbrisao kontakt {card} iz adresara {addressbook}",
|
||||
"You deleted contact {card} from address book {addressbook}" : "Izbrisali ste kontakt {card} iz adresara {addressbook}",
|
||||
"{actor} updated contact {card} in address book {addressbook}" : "{actor} je ažurirao kontakt {card} u adresaru {addressbook}",
|
||||
"You updated contact {card} in address book {addressbook}" : "Ažurirali ste kontakt {card} u adresaru {addressbook}",
|
||||
"A <strong>contact</strong> or <strong>address book</strong> was modified" : "Izmijenjen je <strong>kontakt</strong> ili <strong>adresar</strong>",
|
||||
"System address book disabled" : "Adresar sustava je onemogućen",
|
||||
"The system contacts address book has been automatically disabled during upgrade. This means that the address book will no longer be available to users in the contacts app or other clients. The system contacts address book was disabled because the amount of contacts in the address book exceeded the maximum recommended number of contacts. This limit is set to prevent performance issues. You can re-enable the system address book with the following command {command}" : "Adresar sistemskih kontakata automatski je onemogućen tijekom nadogradnje. To znači da adresar više neće biti dostupan korisnicima u aplikaciji Kontakti niti u drugim klijentima. Adresar sistemskih kontakata onemogućen je jer je broj kontakata u adresaru premašio maksimalno preporučeni broj. Ovo ograničenje postavljeno je radi sprječavanja problema s performansama. Adresar sustava možete ponovno omogućiti sljedećom naredbom {command}.",
|
||||
"Accounts" : "Korisnički računi",
|
||||
"System address book which holds all accounts" : "Adresar sustava koji sadrži sve račune",
|
||||
"File is not updatable: %1$s" : "Datoteku nije moguće ažurirati: %1$s",
|
||||
"Failed to get storage for file" : "Neuspjelo dohvaćanje pohrane za datoteku",
|
||||
"Could not write to final file, canceled by hook" : "Nije moguće zapisati u završnu datoteku, otkazano putem kuke",
|
||||
"Could not write file contents" : "Nije moguće zapisati sadržaj datoteke",
|
||||
"_%n byte_::_%n bytes_" : ["%n bajt","%n bajta","%n bajtova"],
|
||||
"Error while copying file to target location (copied: %1$s, expected filesize: %2$s)" : "Pogreška pri kopiranju datoteke na odredišnu lokaciju (kopirano: %1$s, očekivana veličina datoteke: %2$s)",
|
||||
"Expected filesize of %1$s but read (from Nextcloud client) and wrote (to Nextcloud storage) %2$s. Could either be a network problem on the sending side or a problem writing to the storage on the server side." : "Očekivana veličina datoteke je %1$s ali je pročitano (s Nextcloud klijenta) i zapisano (u Nextcloud pohranu) %2$s. To može biti problem s mrežom na strani slanja ili problem pri zapisivanju u pohranu na strani poslužitelja.",
|
||||
"Could not rename part file to final file, canceled by hook" : "Nije moguće preimenovati djelomičnu datoteku u završnu datoteku, otkazano putem kuke",
|
||||
"Could not rename part file to final file" : "Nije moguće preimenovati djelomičnu datoteku u završnu datoteku",
|
||||
"Failed to check file size: %1$s" : "Neuspjela provjera veličine datoteke: %1$s",
|
||||
"Could not open file: %1$s (%2$d), file does seem to exist" : "Nije moguće otvoriti datoteku: %1$s (%2$d), čini se da datoteka postoji",
|
||||
"Could not open file: %1$s (%2$d), file doesn't seem to exist" : "Nije moguće otvoriti datoteku: %1$s (%2$d), čini se da datoteka ne postoji",
|
||||
"Encryption not ready: %1$s" : "Šifriranje nije spremno: %1$s",
|
||||
"Failed to open file: %1$s" : "Neuspjelo otvaranje datoteke: %1$s",
|
||||
"Failed to unlink: %1$s" : "Neuspjelo uklanjanje veze: %1$s",
|
||||
"Failed to write file contents: %1$s" : "Neuspjelo zapisivanje sadržaja datoteke: %1$s",
|
||||
"File not found: %1$s" : "Datoteka nije pronađena: %1$s",
|
||||
"Invalid target path" : "Nevažeća odredišna putanja",
|
||||
"System is in maintenance mode." : "Sustav je u načinu održavanja.",
|
||||
"Upgrade needed" : "Potrebno nadograditi",
|
||||
"Your %s needs to be configured to use HTTPS in order to use CalDAV and CardDAV with iOS/macOS." : "Vaš %s treba konfigurirati za korištenje HTTPS-a kako bi se mogli upotrebljavati CalDAV i CardDAV s operacijskim sustavom iOS/macOS.",
|
||||
"Configures a CalDAV account" : "Konfigurira CalDAV račun",
|
||||
"Configures a CardDAV account" : "Konfigurira CardDAV račun",
|
||||
"Events" : "Događaji",
|
||||
"Untitled task" : "Zadatak bez naslova",
|
||||
"Completed on %s" : "Završeno na %s",
|
||||
"Due on %s by %s" : "%s treba završiti do %s",
|
||||
"Due on %s" : "Treba završiti do %s",
|
||||
"Welcome to Nextcloud Calendar!\n\nThis is a sample event - explore the flexibility of planning with Nextcloud Calendar by making any edits you want!\n\nWith Nextcloud Calendar, you can:\n- Create, edit, and manage events effortlessly.\n- Create multiple calendars and share them with teammates, friends, or family.\n- Check availability and display your busy times to others.\n- Seamlessly integrate with apps and devices via CalDAV.\n- Customize your experience: schedule recurring events, adjust notifications and other settings." : "Dobrodošli u Nextcloud Kalendar!\n\nOvo je primjer događaja – istražite fleksibilnost planiranja s Nextcloud Kalendarom tako da napravite bilo kakve izmjene koje želite!\n\nUz Nextcloud Kalendar možete:\n- Jednostavno stvarati, uređivati i upravljati događajima..\n- Stvarati više kalendara i dijeliti ih s kolegama, prijateljima ili obitelji.\n- Provjeravati dostupnost i drugima prikazivati svoja zauzeta razdoblja.\n- Neprimjetno se integrirati s aplikacijama i uređajima putem CalDAV-a.\n- Prilagoditi svoje iskustvo: zakazivati ponavljajuće događaje, prilagođavati obavijesti i druge postavke.",
|
||||
"Example event - open me!" : "Primjer događaja – otvori me!",
|
||||
"System Address Book" : "Adresar sustava",
|
||||
"The system address book contains contact information for all users in your instance." : "Adresar sustava sadrži kontaktne podatke za sve korisnike u vašoj instanci.",
|
||||
"Enable System Address Book" : "Omogući adresar sustava",
|
||||
"DAV system address book" : "DAV adresar sustava",
|
||||
"No outstanding DAV system address book sync." : "Nema neriješene sinkronizacije DAV adresara sustava.",
|
||||
"The DAV system address book sync has not run yet as your instance has more than 1000 users or because an error occurred. Please run it manually by calling \"occ dav:sync-system-addressbook\"." : "Sinkronizacija DAV adresara sustava još nije pokrenuta jer vaša instanca ima više od 1000 korisnika ili je došlo do pogreške. Pokrenite je ručno pozivanjem naredbe „occ dav:sync-system-addressbook”.",
|
||||
"DAV system address book size" : "Veličina DAV adresara sustava",
|
||||
"The system address book is disabled" : "Adresar sustava je onemogućen",
|
||||
"The system address book is enabled, but contains more than the configured limit of %d contacts" : "Adresar sustava je omogućen, ali sadrži više od konfiguriranog ograničenja od %d kontakata",
|
||||
"The system address book is enabled and contains less than the configured limit of %d contacts" : "Adresar sustava je omogućen i sadrži manje od konfiguriranog ograničenja od %d kontakata",
|
||||
"WebDAV endpoint" : "WebDAV krajnja točka",
|
||||
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually." : "Nije moguće provjeriti je li vaš mrežni poslužitelj ispravno postavljen za omogućavanje sinkronizacije datoteka putem WebDAV-a. Molimo provjerite ručno.",
|
||||
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Vaš mrežni poslužitelj nije pravilno podešen za sinkronizaciju podataka jer je sučelje protokola WebDAV neispravno.",
|
||||
"Your web server is properly set up to allow file synchronization over WebDAV." : "Vaš mrežni poslužitelj je ispravno postavljen za omogućavanje sinkronizacije datoteka putem WebDAV-a.",
|
||||
"Migrated calendar (%1$s)" : "Migriran kalendar (%1$s)",
|
||||
"Calendars including events, details and attendees" : "Kalendari uključujući događaje, detalje i sudionike",
|
||||
"Contacts and groups" : "Kontakti i grupe",
|
||||
"WebDAV" : "WebDAV",
|
||||
"Absence saved" : "Odsutnost je spremljena",
|
||||
"Failed to save your absence settings" : "Neuspjelo spremanje postavki odsutnosti",
|
||||
"Absence cleared" : "Odsutnost je uklonjena",
|
||||
"Failed to clear your absence settings" : "Neuspjelo uklanjanje postavki odsutnosti",
|
||||
"First day" : "Prvi dan",
|
||||
"Last day (inclusive)" : "Zadnji dan (uključivo)",
|
||||
"Out of office replacement (optional)" : "Zamjena za odsutnost iz ureda (neobavezno)",
|
||||
"Name of the replacement" : "Ime zamjene",
|
||||
"Short absence status" : "Kratki status odsutnosti",
|
||||
"Long absence Message" : "Duga poruka o odsutnosti",
|
||||
"Save" : "Spremi",
|
||||
"Disable absence" : "Onemogući odsutnost",
|
||||
"Failed to load availability" : "Neuspjelo učitavanje dostupnosti",
|
||||
"Saved availability" : "Dostupnost je spremljena",
|
||||
"Failed to save availability" : "Neuspjelo spremanje dostupnosti",
|
||||
"to" : "do",
|
||||
"Delete slot" : "Izbriši mjesto",
|
||||
"No working hours set" : "Radno vrijeme nije postavljeno",
|
||||
"Add slot" : "Dodaj mjesto",
|
||||
"Weekdays" : "Dani u tjednu",
|
||||
"Pick a start time for {dayName}" : "Odaberite početno vrijeme za {dayName}",
|
||||
"Pick a end time for {dayName}" : "Odaberite završno vrijeme za {dayName}",
|
||||
"Automatically set user status to \"Do not disturb\" outside of availability to mute all notifications." : "Automatski postavi korisnički status na „Ne ometaj” izvan vremena dostupnosti kako bi se utišale sve obavijesti.",
|
||||
"Cancel" : "Odustani",
|
||||
"Import" : "Uvezi",
|
||||
"Error while saving settings" : "Greška pri spremanju postavki",
|
||||
"Contact reset successfully" : "Kontakt je uspješno resetiran",
|
||||
"Error while resetting contact" : "Greška pri resetiranju kontakta",
|
||||
"Contact imported successfully" : "Kontakt je uspješno uvezen",
|
||||
"Error while importing contact" : "Greška pri uvozu kontakta",
|
||||
"Import contact" : "Uvezi kontakt",
|
||||
"Reset to default" : "Vrati na zadanu postavku",
|
||||
"Import contacts" : "Uvezi kontakte",
|
||||
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "Uvoz nove .vcf datoteke izbrisat će postojeći zadani kontakt i zamijeniti ga novim. Želite li nastaviti?",
|
||||
"Failed to save example event creation setting" : "Neuspjelo spremanje postavke stvaranja primjer-događaja",
|
||||
"Failed to upload the example event" : "Neuspjelo učitavanje primjer-događaja",
|
||||
"Custom example event was saved successfully" : "Prilagođeni primjer događaja uspješno je spremljen",
|
||||
"Failed to delete the custom example event" : "Neuspjelo brisanje prilagođenog primjer-događaja",
|
||||
"Custom example event was deleted successfully" : "Prilagođeni primjer događaja uspješno je izbrisan",
|
||||
"Import calendar event" : "Uvezi događaj u kalendar",
|
||||
"Uploading a new event will overwrite the existing one." : "Učitavanje novog događaja prebrisat će postojeći.",
|
||||
"Upload event" : "Učitaj događaj",
|
||||
"Also install the {calendarappstoreopen}Calendar app{linkclose}, or {calendardocopen}connect your desktop & mobile for syncing ↗{linkclose}." : "Također instalirajte {calendarappstoreopen}aplikaciju Kalendar{linkclose} ili {calendardocopen}povežite računalo i mobilni uređaj radi sinkroniziranja ↗{linkclose}.",
|
||||
"Please make sure to properly set up {emailopen}the email server{linkclose}." : "Provjerite jeste li ispravno postavili {emailopen}poslužitelj e-pošte{linkclose}.",
|
||||
"Calendar server" : "Poslužitelj kalendara",
|
||||
"Send invitations to attendees" : "Pošaljite pozive sudionicima",
|
||||
"Automatically generate a birthday calendar" : "Automatski generiraj kalendar rođendana",
|
||||
"Birthday calendars will be generated by a background job." : "Kalendari rođendana generirat će se u pozadini.",
|
||||
"Hence they will not be available immediately after enabling but will show up after some time." : "Stoga neće biti dostupni odmah nakon omogućivanja, ali će se pojaviti nakon nekog vremena.",
|
||||
"Send notifications for events" : "Šalji obavijesti o događajima",
|
||||
"Notifications are sent via background jobs, so these must occur often enough." : "Obavijesti se šalju putem pozadinskih zadataka koji se moraju dovoljno često izvoditi.",
|
||||
"Send reminder notifications to calendar sharees as well" : "Šalji podsjetnike i osobama s kojima je kalendar podijeljen",
|
||||
"Reminders are always sent to organizers and attendees." : "Podsjetnici se uvijek šalju organizatorima i sudionicima.",
|
||||
"Enable notifications for events via push" : "Omogući slanje obavijesti o događajima putem push obavijesti",
|
||||
"Example content" : "Primjer sadržaja",
|
||||
"Example content serves to showcase the features of Nextcloud. Default content is shipped with Nextcloud, and can be replaced by custom content." : "Primjer sadržaja služi za predstavljanje mogućnosti Nextclouda. Zadani sadržaj dolazi uz Nextcloud i može se zamijeniti prilagođenim sadržajem.",
|
||||
"Availability" : "Raspoloživost",
|
||||
"If you configure your working hours, other people will see when you are out of office when they book a meeting." : "Ako konfigurirate svoje radno vrijeme, drugi će vidjeti kada ste izvan ureda prilikom zakazivanja sastanka.",
|
||||
"Absence" : "Odsutnost",
|
||||
"Configure your next absence period." : "Konfigurirajte svoje sljedeće razdoblje odsutnosti.",
|
||||
"There was an error updating your attendance status." : "Došlo je do pogreške prilikom ažuriranja statusa prisutnosti.",
|
||||
"Please contact the organizer directly." : "Izravno se obratite organizatoru.",
|
||||
"Are you accepting the invitation?" : "Prihvaćate li poziv?",
|
||||
"Tentative" : "Uvjetno",
|
||||
"Your attendance was updated successfully." : "Vaša je prisutnost uspješno ažurirana.",
|
||||
"_In a minute on %1$s for the entire day_::_In %n minutes on %1$s for the entire day_" : ["U %n minutu, dana %1$s tokom cijelog dana","U %n minute, dana %1$s tokom cijelog dana","U %n minuta, dana %1$s tokom cijelog dana"],
|
||||
"_In a hour on %1$s for the entire day_::_In %n hours on %1$s for the entire day_" : ["U %n sat, dana %1$s tokom cijelog dana","U %n sata, dana %1$s tokom cijelog dana","U %n sati, dana %1$s tokom cijelog dana"],
|
||||
"_In a day on %1$s for the entire day_::_In %n days on %1$s for the entire day_" : ["U %n dan, dana %1$s tokom cijelog dana","U %n dana, dana %1$s tokom cijelog dana","U %n dana, dana %1$s tokom cijelog dana"],
|
||||
"_In a week on %1$s for the entire day_::_In %n weeks on %1$s for the entire day_" : ["U %n tjedana, dana %1$s tokom cijelog dana","U %n tjedna, dana %1$s tokom cijelog dana","U %n tjedana, dana %1$s tokom cijelog dana"],
|
||||
"_In a month on %1$s for the entire day_::_In %n months on %1$s for the entire day_" : ["U %n mjesec, dana %1$s tokom cijelog dana","U %n mjeseca, dana %1$s tokom cijelog dana","U %n mjeseci, dana %1$s tokom cijelog dana"],
|
||||
"_In a year on %1$s for the entire day_::_In %n years on %1$s for the entire day_" : ["U %n godini, dana %1$s tokom cijelog dana","U %n godine, dana %1$s tokom cijelog dana","U %n godina, dana %1$s tokom cijelog dana"],
|
||||
"_In a minute on %1$s between %2$s - %3$s_::_In %n minutes on %1$s between %2$s - %3$s_" : ["U %n minutu, dana %1$s između %2$s - %3$s","U %n minute, dana %1$s između %2$s - %3$s","U %n minuta, dana %1$s između %2$s - %3$s"],
|
||||
"_In a hour on %1$s between %2$s - %3$s_::_In %n hours on %1$s between %2$s - %3$s_" : ["U %n sat, dana %1$s između %2$s - %3$s","U %n sata, dana %1$s između %2$s - %3$s","U %n sati, dana %1$s između %2$s - %3$s"],
|
||||
"_In a day on %1$s between %2$s - %3$s_::_In %n days on %1$s between %2$s - %3$s_" : ["U %n dan, dana %1$s između %2$s - %3$s","U %n dana, dana %1$s između %2$s - %3$s","U %n dana, dana %1$s između %2$s - %3$s"],
|
||||
"_In a week on %1$s between %2$s - %3$s_::_In %n weeks on %1$s between %2$s - %3$s_" : ["U %n tjedan, dana %1$s između %2$s - %3$s","U %n tjedna, dana %1$s između %2$s - %3$s","U %n tjedana, dana %1$s između %2$s - %3$s"],
|
||||
"_In a month on %1$s between %2$s - %3$s_::_In %n months on %1$s between %2$s - %3$s_" : ["U %n mjesec, dana %1$s između %2$s - %3$s","U %n mjeseca, dana %1$s između %2$s - %3$s","U %n mjeseci, dana %1$s između %2$s - %3$s"],
|
||||
"_In a year on %1$s between %2$s - %3$s_::_In %n years on %1$s between %2$s - %3$s_" : ["U %n godini, dana %1$s između %2$s - %3$s","U %n godine, dana %1$s između %2$s - %3$s","U %n godina, dana %1$s između %2$s - %3$s"],
|
||||
"_In a minute on %1$s_::_In %n minutes on %1$s_" : ["U %n minuti, dana %1$s","U %n minute, dana %1$s","U %n minuta, dana %1$s"],
|
||||
"_In a hour on %1$s_::_In %n hours on %1$s_" : ["U %n sat, dana %1$s","U %n sata, dana %1$s","U %n sati, dana %1$s"],
|
||||
"_In a day on %1$s_::_In %n days on %1$s_" : ["U %n dan, dana %1$s","U %n dana, dana %1$s","U %n dana, dana %1$s"],
|
||||
"_In a week on %1$s_::_In %n weeks on %1$s_" : ["U %n tjedan, dana %1$s","U %n tjedna, dana %1$s","U %n tjedana, dana %1$s"],
|
||||
"_In a month on %1$s_::_In %n months on %1$s_" : ["U %n mjesec, dana %1$s","U %n mjeseca, dana %1$s","U %n mjeseci, dana %1$s"],
|
||||
"_In a year on %1$s_::_In %n years on %1$s_" : ["U %n godini, dana %1$s","U %n godine, dana %1$s","U %n godina, dana %1$s"],
|
||||
"_In a minute on %1$s then on %2$s_::_In %n minutes on %1$s then on %2$s_" : ["U %n minutu, dana %1$s onda dana %2$s","U %n minute, dana %1$s onda dana %2$s","U %n minuta, dana %1$s onda dana %2$s"],
|
||||
"_In a hour on %1$s then on %2$s_::_In %n hours on %1$s then on %2$s_" : ["U %n sat, dana %1$s onda dana %2$s","U %n sata, dana %1$s onda dana %2$s","U %n sati, dana %1$s onda dana %2$s"],
|
||||
"_In a day on %1$s then on %2$s_::_In %n days on %1$s then on %2$s_" : ["U %n dan, dana %1$s onda dana %2$s","U %n dana, dana %1$s onda dana %2$s","U %n dana, dana %1$s onda dana %2$s"],
|
||||
"_In a week on %1$s then on %2$s_::_In %n weeks on %1$s then on %2$s_" : ["U %n tjedan, dana %1$s onda dana %2$s","U %n tjedna, dana %1$s onda dana %2$s","U %n tjedana, dana %1$s onda dana %2$s"],
|
||||
"_In a month on %1$s then on %2$s_::_In %n months on %1$s then on %2$s_" : ["U %n mjesec, dana %1$s onda dana %2$s","U %n mjeseca, dana %1$s onda dana %2$s","U %n mjeseci, dana %1$s onda dana %2$s"],
|
||||
"_In a year on %1$s then on %2$s_::_In %n years on %1$s then on %2$s_" : ["U %n godini, dana %1$s onda dana %2$s","U %n godine, dana %1$s onda dana %2$s","U %n godina, dana %1$s onda dana %2$s"],
|
||||
"_In a minute on %1$s then on %2$s and %3$s_::_In %n minutes on %1$s then on %2$s and %3$s_" : ["U %n minutu, dana %1$s onda dana %2$s i %3$s","U %n minute, dana %1$s onda dana %2$s i %3$s","U %n minuta, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In a hour on %1$s then on %2$s and %3$s_::_In %n hours on %1$s then on %2$s and %3$s_" : ["U %n sat, dana %1$s onda dana %2$s i %3$s","U %n sata, dana %1$s onda dana %2$s i %3$s","U %n sati, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In a day on %1$s then on %2$s and %3$s_::_In %n days on %1$s then on %2$s and %3$s_" : ["U %n dan, dana %1$s onda dana %2$s i %3$s","U %n dana, dana %1$s onda dana %2$s i %3$s","U %n dana, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In a week on %1$s then on %2$s and %3$s_::_In %n weeks on %1$s then on %2$s and %3$s_" : ["U %n tjedan, dana %1$s onda dana %2$s i %3$s","U %n tjedna, dana %1$s onda dana %2$s i %3$s","U %n tjedana, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In a month on %1$s then on %2$s and %3$s_::_In %n months on %1$s then on %2$s and %3$s_" : ["U %n mjesec, dana %1$s onda dana %2$s i %3$s","U %n mjeseca, dana %1$s onda dana %2$s i %3$s","U %n mjeseci, dana %1$s onda dana %2$s i %3$s"],
|
||||
"_In a year on %1$s then on %2$s and %3$s_::_In %n years on %1$s then on %2$s and %3$s_" : ["U %n godini, dana %1$s onda dana %2$s i %3$s","U %n godine, dana %1$s onda dana %2$s i %3$s","U %n godina, dana %1$s onda dana %2$s i %3$s"],
|
||||
"Could not open file: %1$s, file does seem to exist" : "Nije moguće otvoriti datoteku: %1$s, čini se da datoteka postoji",
|
||||
"Could not open file: %1$s, file doesn't seem to exist" : "Nije moguće otvoriti datoteku: %1$s, čini se da datoteka ne postoji",
|
||||
"No results." : "Nema rezultata.",
|
||||
"Start typing." : "Započnite s pisanjem.",
|
||||
"Time zone:" : "Vremenska zona:"
|
||||
},"pluralForm" :"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"
|
||||
}
|
||||
@@ -73,7 +73,19 @@ OC.L10N.register(
|
||||
"Where: %s" : "場所:%s",
|
||||
"%1$s via %2$s" : "%1$s に %2$s から",
|
||||
"In the past on %1$s for the entire day" : "過去に%1$sで終日",
|
||||
"_In %n minute on %1$s for the entire day_::_In %n minutes on %1$s for the entire day_" : ["終日%1$sの%n分"],
|
||||
"_In %n hour on %1$s for the entire day_::_In %n hours on %1$s for the entire day_" : ["終日%1$sの%n時間"],
|
||||
"_In %n day on %1$s for the entire day_::_In %n days on %1$s for the entire day_" : ["終日%1$sの%n日"],
|
||||
"_In %n week on %1$s for the entire day_::_In %n weeks on %1$s for the entire day_" : ["終日%1$sの%n週間"],
|
||||
"_In %n month on %1$s for the entire day_::_In %n months on %1$s for the entire day_" : ["終日%1$sの%nヶ月"],
|
||||
"_In %n year on %1$s for the entire day_::_In %n years on %1$s for the entire day_" : ["終日%1$sの%n年間"],
|
||||
"In the past on %1$s between %2$s - %3$s" : "過去%1$s、%2$s~%3$sの間",
|
||||
"_In %n minute on %1$s between %2$s - %3$s_::_In %n minutes on %1$s between %2$s - %3$s_" : ["%2$s~%3$sの間の%1$sの%n分"],
|
||||
"_In %n hour on %1$s between %2$s - %3$s_::_In %n hours on %1$s between %2$s - %3$s_" : ["%2$s~%3$sの間の%1$sの%n時間"],
|
||||
"_In %n day on %1$s between %2$s - %3$s_::_In %n days on %1$s between %2$s - %3$s_" : ["%2$s~%3$sの間の%1$sの%n日間"],
|
||||
"_In %n week on %1$s between %2$s - %3$s_::_In %n weeks on %1$s between %2$s - %3$s_" : ["%2$s~%3$sの間の%1$sの%n週間"],
|
||||
"_In %n month on %1$s between %2$s - %3$s_::_In %n months on %1$s between %2$s - %3$s_" : ["%2$s~%3$sの間の%1$sの%nヶ月"],
|
||||
"_In %n year on %1$s between %2$s - %3$s_::_In %n years on %1$s between %2$s - %3$s_" : ["%2$s~%3$sの間の%1$sの%n年間"],
|
||||
"Could not generate when statement" : "when文を生成できませんでした",
|
||||
"Every Day for the entire day" : "毎日、終日",
|
||||
"Every Day for the entire day until %1$s" : "%1$sまでの終日、毎日",
|
||||
@@ -111,8 +123,26 @@ OC.L10N.register(
|
||||
"On specific dates for the entire day until %1$s" : "%1$sまでの特定の日付の終日",
|
||||
"On specific dates between %1$s - %2$s until %3$s" : "%1$s~%2$sの間、%3$sまでの特定の日付",
|
||||
"In the past on %1$s" : "過去%1$s",
|
||||
"_In %n minute on %1$s_::_In %n minutes on %1$s_" : ["%1$sの%n分間"],
|
||||
"_In %n hour on %1$s_::_In %n hours on %1$s_" : ["%1$sの%n時間"],
|
||||
"_In %n day on %1$s_::_In %n days on %1$s_" : ["%1$sの%n日間"],
|
||||
"_In %n week on %1$s_::_In %n weeks on %1$s_" : ["%1$sの%n週間"],
|
||||
"_In %n month on %1$s_::_In %n months on %1$s_" : ["%1$sの%nヶ月"],
|
||||
"_In %n year on %1$s_::_In %n years on %1$s_" : ["%1$sの%n年間"],
|
||||
"In the past on %1$s then on %2$s" : "過去%1$s、その後%2$s",
|
||||
"_In %n minute on %1$s then on %2$s_::_In %n minutes on %1$s then on %2$s_" : ["過去%1$sの%n分間、その後%2$s"],
|
||||
"_In %n hour on %1$s then on %2$s_::_In %n hours on %1$s then on %2$s_" : ["過去%1$sの%n時間、その後%2$s"],
|
||||
"_In %n day on %1$s then on %2$s_::_In %n days on %1$s then on %2$s_" : ["過去%1$sの%n日間、その後%2$s"],
|
||||
"_In %n week on %1$s then on %2$s_::_In %n weeks on %1$s then on %2$s_" : ["過去%1$sの%n週間、その後%2$s"],
|
||||
"_In %n month on %1$s then on %2$s_::_In %n months on %1$s then on %2$s_" : ["過去%1$sの%nヶ月、その後%2$s"],
|
||||
"_In %n year on %1$s then on %2$s_::_In %n years on %1$s then on %2$s_" : ["過去%1$sの%n年間、その後%2$s"],
|
||||
"In the past on %1$s then on %2$s and %3$s" : "過去%1$s、その後%2$sと%3$s",
|
||||
"_In %n minute on %1$s then on %2$s and %3$s_::_In %n minutes on %1$s then on %2$s and %3$s_" : ["%1$sの%n分間、その後%2$sと%3$s"],
|
||||
"_In %n hour on %1$s then on %2$s and %3$s_::_In %n hours on %1$s then on %2$s and %3$s_" : ["%1$sの%n時間、その後%2$sと%3$s"],
|
||||
"_In %n day on %1$s then on %2$s and %3$s_::_In %n days on %1$s then on %2$s and %3$s_" : ["%1$sの%n日間、その後%2$sと%3$s"],
|
||||
"_In %n week on %1$s then on %2$s and %3$s_::_In %n weeks on %1$s then on %2$s and %3$s_" : ["%1$sの%n週間、その後%2$sと%3$s"],
|
||||
"_In %n month on %1$s then on %2$s and %3$s_::_In %n months on %1$s then on %2$s and %3$s_" : ["%1$sの%nヶ月、その後%2$sと%3$s"],
|
||||
"_In %n year on %1$s then on %2$s and %3$s_::_In %n years on %1$s then on %2$s and %3$s_" : ["%1$sの%n年間、その後%2$sと%3$s"],
|
||||
"Could not generate next recurrence statement" : "次の再帰ステートメントを生成できませんでした",
|
||||
"Cancelled: %1$s" : "キャンセル: %1$s",
|
||||
"\"%1$s\" has been canceled" : "%1$sはキャンセルされました",
|
||||
@@ -204,6 +234,8 @@ OC.L10N.register(
|
||||
"Could not rename part file to final file, canceled by hook" : "最終ファイルの名前の変更が出来なかったため、フックによりキャンセルされました",
|
||||
"Could not rename part file to final file" : "最終ファイルの名前の変更が出来ませんでした",
|
||||
"Failed to check file size: %1$s" : "ファイルサイズの確認に失敗: %1$s",
|
||||
"Could not open file: %1$s (%2$d), file does seem to exist" : "ファイルを開けませんでした: %1$s (%2$d)、ファイルは存在するようです",
|
||||
"Could not open file: %1$s (%2$d), file doesn't seem to exist" : "ファイルを開けませんでした: %1$s (%2$d)、ファイルが存在しないようです",
|
||||
"Encryption not ready: %1$s" : "暗号化の準備が出来ていません: %1$s",
|
||||
"Failed to open file: %1$s" : "ファイルを開くのに失敗: %1$s",
|
||||
"Failed to unlink: %1$s" : "リンクの解除に失敗: %1$s",
|
||||
|
||||
@@ -71,7 +71,19 @@
|
||||
"Where: %s" : "場所:%s",
|
||||
"%1$s via %2$s" : "%1$s に %2$s から",
|
||||
"In the past on %1$s for the entire day" : "過去に%1$sで終日",
|
||||
"_In %n minute on %1$s for the entire day_::_In %n minutes on %1$s for the entire day_" : ["終日%1$sの%n分"],
|
||||
"_In %n hour on %1$s for the entire day_::_In %n hours on %1$s for the entire day_" : ["終日%1$sの%n時間"],
|
||||
"_In %n day on %1$s for the entire day_::_In %n days on %1$s for the entire day_" : ["終日%1$sの%n日"],
|
||||
"_In %n week on %1$s for the entire day_::_In %n weeks on %1$s for the entire day_" : ["終日%1$sの%n週間"],
|
||||
"_In %n month on %1$s for the entire day_::_In %n months on %1$s for the entire day_" : ["終日%1$sの%nヶ月"],
|
||||
"_In %n year on %1$s for the entire day_::_In %n years on %1$s for the entire day_" : ["終日%1$sの%n年間"],
|
||||
"In the past on %1$s between %2$s - %3$s" : "過去%1$s、%2$s~%3$sの間",
|
||||
"_In %n minute on %1$s between %2$s - %3$s_::_In %n minutes on %1$s between %2$s - %3$s_" : ["%2$s~%3$sの間の%1$sの%n分"],
|
||||
"_In %n hour on %1$s between %2$s - %3$s_::_In %n hours on %1$s between %2$s - %3$s_" : ["%2$s~%3$sの間の%1$sの%n時間"],
|
||||
"_In %n day on %1$s between %2$s - %3$s_::_In %n days on %1$s between %2$s - %3$s_" : ["%2$s~%3$sの間の%1$sの%n日間"],
|
||||
"_In %n week on %1$s between %2$s - %3$s_::_In %n weeks on %1$s between %2$s - %3$s_" : ["%2$s~%3$sの間の%1$sの%n週間"],
|
||||
"_In %n month on %1$s between %2$s - %3$s_::_In %n months on %1$s between %2$s - %3$s_" : ["%2$s~%3$sの間の%1$sの%nヶ月"],
|
||||
"_In %n year on %1$s between %2$s - %3$s_::_In %n years on %1$s between %2$s - %3$s_" : ["%2$s~%3$sの間の%1$sの%n年間"],
|
||||
"Could not generate when statement" : "when文を生成できませんでした",
|
||||
"Every Day for the entire day" : "毎日、終日",
|
||||
"Every Day for the entire day until %1$s" : "%1$sまでの終日、毎日",
|
||||
@@ -109,8 +121,26 @@
|
||||
"On specific dates for the entire day until %1$s" : "%1$sまでの特定の日付の終日",
|
||||
"On specific dates between %1$s - %2$s until %3$s" : "%1$s~%2$sの間、%3$sまでの特定の日付",
|
||||
"In the past on %1$s" : "過去%1$s",
|
||||
"_In %n minute on %1$s_::_In %n minutes on %1$s_" : ["%1$sの%n分間"],
|
||||
"_In %n hour on %1$s_::_In %n hours on %1$s_" : ["%1$sの%n時間"],
|
||||
"_In %n day on %1$s_::_In %n days on %1$s_" : ["%1$sの%n日間"],
|
||||
"_In %n week on %1$s_::_In %n weeks on %1$s_" : ["%1$sの%n週間"],
|
||||
"_In %n month on %1$s_::_In %n months on %1$s_" : ["%1$sの%nヶ月"],
|
||||
"_In %n year on %1$s_::_In %n years on %1$s_" : ["%1$sの%n年間"],
|
||||
"In the past on %1$s then on %2$s" : "過去%1$s、その後%2$s",
|
||||
"_In %n minute on %1$s then on %2$s_::_In %n minutes on %1$s then on %2$s_" : ["過去%1$sの%n分間、その後%2$s"],
|
||||
"_In %n hour on %1$s then on %2$s_::_In %n hours on %1$s then on %2$s_" : ["過去%1$sの%n時間、その後%2$s"],
|
||||
"_In %n day on %1$s then on %2$s_::_In %n days on %1$s then on %2$s_" : ["過去%1$sの%n日間、その後%2$s"],
|
||||
"_In %n week on %1$s then on %2$s_::_In %n weeks on %1$s then on %2$s_" : ["過去%1$sの%n週間、その後%2$s"],
|
||||
"_In %n month on %1$s then on %2$s_::_In %n months on %1$s then on %2$s_" : ["過去%1$sの%nヶ月、その後%2$s"],
|
||||
"_In %n year on %1$s then on %2$s_::_In %n years on %1$s then on %2$s_" : ["過去%1$sの%n年間、その後%2$s"],
|
||||
"In the past on %1$s then on %2$s and %3$s" : "過去%1$s、その後%2$sと%3$s",
|
||||
"_In %n minute on %1$s then on %2$s and %3$s_::_In %n minutes on %1$s then on %2$s and %3$s_" : ["%1$sの%n分間、その後%2$sと%3$s"],
|
||||
"_In %n hour on %1$s then on %2$s and %3$s_::_In %n hours on %1$s then on %2$s and %3$s_" : ["%1$sの%n時間、その後%2$sと%3$s"],
|
||||
"_In %n day on %1$s then on %2$s and %3$s_::_In %n days on %1$s then on %2$s and %3$s_" : ["%1$sの%n日間、その後%2$sと%3$s"],
|
||||
"_In %n week on %1$s then on %2$s and %3$s_::_In %n weeks on %1$s then on %2$s and %3$s_" : ["%1$sの%n週間、その後%2$sと%3$s"],
|
||||
"_In %n month on %1$s then on %2$s and %3$s_::_In %n months on %1$s then on %2$s and %3$s_" : ["%1$sの%nヶ月、その後%2$sと%3$s"],
|
||||
"_In %n year on %1$s then on %2$s and %3$s_::_In %n years on %1$s then on %2$s and %3$s_" : ["%1$sの%n年間、その後%2$sと%3$s"],
|
||||
"Could not generate next recurrence statement" : "次の再帰ステートメントを生成できませんでした",
|
||||
"Cancelled: %1$s" : "キャンセル: %1$s",
|
||||
"\"%1$s\" has been canceled" : "%1$sはキャンセルされました",
|
||||
@@ -202,6 +232,8 @@
|
||||
"Could not rename part file to final file, canceled by hook" : "最終ファイルの名前の変更が出来なかったため、フックによりキャンセルされました",
|
||||
"Could not rename part file to final file" : "最終ファイルの名前の変更が出来ませんでした",
|
||||
"Failed to check file size: %1$s" : "ファイルサイズの確認に失敗: %1$s",
|
||||
"Could not open file: %1$s (%2$d), file does seem to exist" : "ファイルを開けませんでした: %1$s (%2$d)、ファイルは存在するようです",
|
||||
"Could not open file: %1$s (%2$d), file doesn't seem to exist" : "ファイルを開けませんでした: %1$s (%2$d)、ファイルが存在しないようです",
|
||||
"Encryption not ready: %1$s" : "暗号化の準備が出来ていません: %1$s",
|
||||
"Failed to open file: %1$s" : "ファイルを開くのに失敗: %1$s",
|
||||
"Failed to unlink: %1$s" : "リンクの解除に失敗: %1$s",
|
||||
|
||||
@@ -73,6 +73,8 @@ OC.L10N.register(
|
||||
"Where: %s" : "Gdzie: %s",
|
||||
"%1$s via %2$s" : "%1$s przez %2$s",
|
||||
"In the past on %1$s for the entire day" : "W przeszłości w %1$s na cały dzień",
|
||||
"_In %n minute on %1$s for the entire day_::_In %n minutes on %1$s for the entire day_" : ["Za minutę o %1$s przez cały dzień","Za %n minut o %1$s przez cały dzień","Za %n minut o %1$s przez cały dzień","Za %n minut o %1$s przez cały dzień"],
|
||||
"_In %n hour on %1$s for the entire day_::_In %n hours on %1$s for the entire day_" : ["Za %n godzinę o %1$s przez cały dzień","Za %n godzin o %1$s przez cały dzień","Za %n godzin o %1$s przez cały dzień","Za %n godziny o %1$s przez cały dzień"],
|
||||
"In the past on %1$s between %2$s - %3$s" : "W przeszłości dnia %1$s między %2$s - %3$s",
|
||||
"Could not generate when statement" : "Nie można wygenerować instrukcji when",
|
||||
"Every Day for the entire day" : "Codziennie przez cały dzień",
|
||||
|
||||
@@ -71,6 +71,8 @@
|
||||
"Where: %s" : "Gdzie: %s",
|
||||
"%1$s via %2$s" : "%1$s przez %2$s",
|
||||
"In the past on %1$s for the entire day" : "W przeszłości w %1$s na cały dzień",
|
||||
"_In %n minute on %1$s for the entire day_::_In %n minutes on %1$s for the entire day_" : ["Za minutę o %1$s przez cały dzień","Za %n minut o %1$s przez cały dzień","Za %n minut o %1$s przez cały dzień","Za %n minut o %1$s przez cały dzień"],
|
||||
"_In %n hour on %1$s for the entire day_::_In %n hours on %1$s for the entire day_" : ["Za %n godzinę o %1$s przez cały dzień","Za %n godzin o %1$s przez cały dzień","Za %n godzin o %1$s przez cały dzień","Za %n godziny o %1$s przez cały dzień"],
|
||||
"In the past on %1$s between %2$s - %3$s" : "W przeszłości dnia %1$s między %2$s - %3$s",
|
||||
"Could not generate when statement" : "Nie można wygenerować instrukcji when",
|
||||
"Every Day for the entire day" : "Codziennie przez cały dzień",
|
||||
|
||||
@@ -111,9 +111,27 @@ OC.L10N.register(
|
||||
"On specific dates for the entire day until %1$s" : "В определённые даты, весь день до %1$s",
|
||||
"On specific dates between %1$s - %2$s until %3$s" : "В определённые даты с %1$s по %2$s до %3$s",
|
||||
"In the past on %1$s" : "В прошлом, %1$s",
|
||||
"_In %n minute on %1$s_::_In %n minutes on %1$s_" : ["Через минуту, %1$s","Через %n минуты, %1$s","Через %n минут, %1$s","Через %n минут, %1$s"],
|
||||
"_In %n hour on %1$s_::_In %n hours on %1$s_" : ["Через час, %1$s","Через %n часа, %1$s","Через %n часов, %1$s","Через %n часов, %1$s"],
|
||||
"_In %n day on %1$s_::_In %n days on %1$s_" : ["Через день, %1$s","Через %n дня, %1$s","Через %n дней, %1$s","Через %n дней, %1$s"],
|
||||
"_In %n week on %1$s_::_In %n weeks on %1$s_" : ["Через неделю, %1$s","Через %n недели,%1$s","Через %n недель, %1$s","Через %n недель, %1$s"],
|
||||
"_In %n month on %1$s_::_In %n months on %1$s_" : ["Через месяц, %1$s","Через %n месяца, %1$s","Через %n месяцев, %1$s","Через %n месяцев, %1$s"],
|
||||
"_In %n year on %1$s_::_In %n years on %1$s_" : ["Через год, %1$s","Через %n года, %1$s","Через %n лет, %1$s","Через %n лет, %1$s"],
|
||||
"In the past on %1$s then on %2$s" : "В прошлом, %1$s, затем %2$s",
|
||||
"_In %n minute on %1$s then on %2$s_::_In %n minutes on %1$s then on %2$s_" : ["Через минуту, %1$s, затем %2$s","Через %n минуты, %1$s, затем %2$s","Через %n минут, %1$s, затем %2$s","Через %n минут, %1$s, затем %2$s"],
|
||||
"_In %n hour on %1$s then on %2$s_::_In %n hours on %1$s then on %2$s_" : ["Через час, %1$s, затем %2$s","Через %n часа, %1$s, затем %2$s","Через %n часов, %1$s, затем %2$s","Через %n часов, %1$s, затем %2$s"],
|
||||
"_In %n day on %1$s then on %2$s_::_In %n days on %1$s then on %2$s_" : ["Через день, %1$s, затем %2$s","Через %n дня, %1$s, затем %2$s","Через %n дней, %1$s, затем %2$s","Через %n дней, %1$s, затем %2$s"],
|
||||
"_In %n week on %1$s then on %2$s_::_In %n weeks on %1$s then on %2$s_" : ["Через неделю, %1$s, затем %2$s","Через %n недели, %1$s, затем %2$s","Через %n недель, %1$s, затем %2$s","Через %n недель, %1$s, затем %2$s"],
|
||||
"_In %n month on %1$s then on %2$s_::_In %n months on %1$s then on %2$s_" : ["Через месяц, %1$s, затем %2$s","Через %n месяца, %1$s, затем %2$s","Через %n месяцев, %1$s, затем %2$s","Через %n месяцев, %1$s, затем %2$s"],
|
||||
"_In %n year on %1$s then on %2$s_::_In %n years on %1$s then on %2$s_" : ["Через год, %1$s, затем %2$s","Через %n года, %1$s, затем %2$s","Через %n лет, %1$s, затем %2$s","Через %n лет, %1$s, затем %2$s"],
|
||||
"In the past on %1$s then on %2$s and %3$s" : "В прошлом, %1$s, затем %2$s и %3$s",
|
||||
"Could not generate next recurrence statement" : "Не удалось сгенерировать следующий оператор повторения",
|
||||
"_In %n minute on %1$s then on %2$s and %3$s_::_In %n minutes on %1$s then on %2$s and %3$s_" : ["Через минуту, %1$s, затем %2$s и %3$s","Через %n минуты, %1$s, затем %2$s и %3$s","Через %n минут, %1$s, затем %2$s и %3$s","Через %n минут, %1$s, затем %2$s и %3$s"],
|
||||
"_In %n hour on %1$s then on %2$s and %3$s_::_In %n hours on %1$s then on %2$s and %3$s_" : ["Через час, %1$s, затем %2$s и %3$s","Через %n часа, %1$s, затем %2$s и %3$s","Через %n часов, %1$s, затем %2$s и %3$s","Через %n часов, %1$s, затем %2$s и %3$s"],
|
||||
"_In %n day on %1$s then on %2$s and %3$s_::_In %n days on %1$s then on %2$s and %3$s_" : ["Через день, %1$s, затем %2$s и %3$s","Через %n дня, %1$s, затем %2$s и %3$s","Через %n дней, %1$s, затем %2$s и %3$s","Через %n дней, %1$s, затем %2$s и %3$s"],
|
||||
"_In %n week on %1$s then on %2$s and %3$s_::_In %n weeks on %1$s then on %2$s and %3$s_" : ["Через неделю, %1$s, затем %2$s и %3$s","Через %n недели, %1$s, затем %2$s и %3$s","Через %n недель, %1$s, затем %2$s и %3$s","Через %n недель, %1$s, затем %2$s и %3$s"],
|
||||
"_In %n month on %1$s then on %2$s and %3$s_::_In %n months on %1$s then on %2$s and %3$s_" : ["Через месяц, %1$s, затем %2$s и %3$s","Через %n месяца, %1$s, затем %2$s и %3$s","Через %n месяцев, %1$s, затем %2$s и %3$s","Через %n месяцев, %1$s, затем %2$s и %3$s"],
|
||||
"_In %n year on %1$s then on %2$s and %3$s_::_In %n years on %1$s then on %2$s and %3$s_" : ["Через год, %1$s, затем %2$s и %3$s","Через %n года, %1$s, затем %2$s и %3$s","Через %n лет, %1$s, затем %2$s и %3$s","Через %n лет, %1$s, затем %2$s и %3$s"],
|
||||
"Could not generate next recurrence statement" : "Не удалось создать правило следующего повторения",
|
||||
"Cancelled: %1$s" : "Событие отменено: %1$s",
|
||||
"\"%1$s\" has been canceled" : "Событие «%1$s» отменено",
|
||||
"Re: %1$s" : "Re: %1$s",
|
||||
@@ -204,6 +222,8 @@ OC.L10N.register(
|
||||
"Could not rename part file to final file, canceled by hook" : "Не удалось переименовать временный файл в результирующий, операция отменена вызовом обработчика",
|
||||
"Could not rename part file to final file" : "Не удалось переименовать временный файл в результирующий",
|
||||
"Failed to check file size: %1$s" : "Не удалось проверить размер файла: %1$s",
|
||||
"Could not open file: %1$s (%2$d), file does seem to exist" : "Не удалось открыть файл: %1$s (%2$d), файл, похоже, существует",
|
||||
"Could not open file: %1$s (%2$d), file doesn't seem to exist" : "Не удалось открыть файл: %1$s (%2$d), файл, похоже, не существует",
|
||||
"Encryption not ready: %1$s" : "Подсистема шифрования не готова: %1$s",
|
||||
"Failed to open file: %1$s" : "Не удалось открыть файл: %1$s",
|
||||
"Failed to unlink: %1$s" : "Не удалось разорвать связь: %1$s",
|
||||
|
||||
@@ -109,9 +109,27 @@
|
||||
"On specific dates for the entire day until %1$s" : "В определённые даты, весь день до %1$s",
|
||||
"On specific dates between %1$s - %2$s until %3$s" : "В определённые даты с %1$s по %2$s до %3$s",
|
||||
"In the past on %1$s" : "В прошлом, %1$s",
|
||||
"_In %n minute on %1$s_::_In %n minutes on %1$s_" : ["Через минуту, %1$s","Через %n минуты, %1$s","Через %n минут, %1$s","Через %n минут, %1$s"],
|
||||
"_In %n hour on %1$s_::_In %n hours on %1$s_" : ["Через час, %1$s","Через %n часа, %1$s","Через %n часов, %1$s","Через %n часов, %1$s"],
|
||||
"_In %n day on %1$s_::_In %n days on %1$s_" : ["Через день, %1$s","Через %n дня, %1$s","Через %n дней, %1$s","Через %n дней, %1$s"],
|
||||
"_In %n week on %1$s_::_In %n weeks on %1$s_" : ["Через неделю, %1$s","Через %n недели,%1$s","Через %n недель, %1$s","Через %n недель, %1$s"],
|
||||
"_In %n month on %1$s_::_In %n months on %1$s_" : ["Через месяц, %1$s","Через %n месяца, %1$s","Через %n месяцев, %1$s","Через %n месяцев, %1$s"],
|
||||
"_In %n year on %1$s_::_In %n years on %1$s_" : ["Через год, %1$s","Через %n года, %1$s","Через %n лет, %1$s","Через %n лет, %1$s"],
|
||||
"In the past on %1$s then on %2$s" : "В прошлом, %1$s, затем %2$s",
|
||||
"_In %n minute on %1$s then on %2$s_::_In %n minutes on %1$s then on %2$s_" : ["Через минуту, %1$s, затем %2$s","Через %n минуты, %1$s, затем %2$s","Через %n минут, %1$s, затем %2$s","Через %n минут, %1$s, затем %2$s"],
|
||||
"_In %n hour on %1$s then on %2$s_::_In %n hours on %1$s then on %2$s_" : ["Через час, %1$s, затем %2$s","Через %n часа, %1$s, затем %2$s","Через %n часов, %1$s, затем %2$s","Через %n часов, %1$s, затем %2$s"],
|
||||
"_In %n day on %1$s then on %2$s_::_In %n days on %1$s then on %2$s_" : ["Через день, %1$s, затем %2$s","Через %n дня, %1$s, затем %2$s","Через %n дней, %1$s, затем %2$s","Через %n дней, %1$s, затем %2$s"],
|
||||
"_In %n week on %1$s then on %2$s_::_In %n weeks on %1$s then on %2$s_" : ["Через неделю, %1$s, затем %2$s","Через %n недели, %1$s, затем %2$s","Через %n недель, %1$s, затем %2$s","Через %n недель, %1$s, затем %2$s"],
|
||||
"_In %n month on %1$s then on %2$s_::_In %n months on %1$s then on %2$s_" : ["Через месяц, %1$s, затем %2$s","Через %n месяца, %1$s, затем %2$s","Через %n месяцев, %1$s, затем %2$s","Через %n месяцев, %1$s, затем %2$s"],
|
||||
"_In %n year on %1$s then on %2$s_::_In %n years on %1$s then on %2$s_" : ["Через год, %1$s, затем %2$s","Через %n года, %1$s, затем %2$s","Через %n лет, %1$s, затем %2$s","Через %n лет, %1$s, затем %2$s"],
|
||||
"In the past on %1$s then on %2$s and %3$s" : "В прошлом, %1$s, затем %2$s и %3$s",
|
||||
"Could not generate next recurrence statement" : "Не удалось сгенерировать следующий оператор повторения",
|
||||
"_In %n minute on %1$s then on %2$s and %3$s_::_In %n minutes on %1$s then on %2$s and %3$s_" : ["Через минуту, %1$s, затем %2$s и %3$s","Через %n минуты, %1$s, затем %2$s и %3$s","Через %n минут, %1$s, затем %2$s и %3$s","Через %n минут, %1$s, затем %2$s и %3$s"],
|
||||
"_In %n hour on %1$s then on %2$s and %3$s_::_In %n hours on %1$s then on %2$s and %3$s_" : ["Через час, %1$s, затем %2$s и %3$s","Через %n часа, %1$s, затем %2$s и %3$s","Через %n часов, %1$s, затем %2$s и %3$s","Через %n часов, %1$s, затем %2$s и %3$s"],
|
||||
"_In %n day on %1$s then on %2$s and %3$s_::_In %n days on %1$s then on %2$s and %3$s_" : ["Через день, %1$s, затем %2$s и %3$s","Через %n дня, %1$s, затем %2$s и %3$s","Через %n дней, %1$s, затем %2$s и %3$s","Через %n дней, %1$s, затем %2$s и %3$s"],
|
||||
"_In %n week on %1$s then on %2$s and %3$s_::_In %n weeks on %1$s then on %2$s and %3$s_" : ["Через неделю, %1$s, затем %2$s и %3$s","Через %n недели, %1$s, затем %2$s и %3$s","Через %n недель, %1$s, затем %2$s и %3$s","Через %n недель, %1$s, затем %2$s и %3$s"],
|
||||
"_In %n month on %1$s then on %2$s and %3$s_::_In %n months on %1$s then on %2$s and %3$s_" : ["Через месяц, %1$s, затем %2$s и %3$s","Через %n месяца, %1$s, затем %2$s и %3$s","Через %n месяцев, %1$s, затем %2$s и %3$s","Через %n месяцев, %1$s, затем %2$s и %3$s"],
|
||||
"_In %n year on %1$s then on %2$s and %3$s_::_In %n years on %1$s then on %2$s and %3$s_" : ["Через год, %1$s, затем %2$s и %3$s","Через %n года, %1$s, затем %2$s и %3$s","Через %n лет, %1$s, затем %2$s и %3$s","Через %n лет, %1$s, затем %2$s и %3$s"],
|
||||
"Could not generate next recurrence statement" : "Не удалось создать правило следующего повторения",
|
||||
"Cancelled: %1$s" : "Событие отменено: %1$s",
|
||||
"\"%1$s\" has been canceled" : "Событие «%1$s» отменено",
|
||||
"Re: %1$s" : "Re: %1$s",
|
||||
@@ -202,6 +220,8 @@
|
||||
"Could not rename part file to final file, canceled by hook" : "Не удалось переименовать временный файл в результирующий, операция отменена вызовом обработчика",
|
||||
"Could not rename part file to final file" : "Не удалось переименовать временный файл в результирующий",
|
||||
"Failed to check file size: %1$s" : "Не удалось проверить размер файла: %1$s",
|
||||
"Could not open file: %1$s (%2$d), file does seem to exist" : "Не удалось открыть файл: %1$s (%2$d), файл, похоже, существует",
|
||||
"Could not open file: %1$s (%2$d), file doesn't seem to exist" : "Не удалось открыть файл: %1$s (%2$d), файл, похоже, не существует",
|
||||
"Encryption not ready: %1$s" : "Подсистема шифрования не готова: %1$s",
|
||||
"Failed to open file: %1$s" : "Не удалось открыть файл: %1$s",
|
||||
"Failed to unlink: %1$s" : "Не удалось разорвать связь: %1$s",
|
||||
|
||||
@@ -43,9 +43,9 @@ class ExportCalendar extends Command {
|
||||
$this->setName('calendar:export')
|
||||
->setDescription('Export calendar data from supported calendars to disk or stdout')
|
||||
->addArgument('uid', InputArgument::REQUIRED, 'Id of system user')
|
||||
->addArgument('uri', InputArgument::REQUIRED, 'Uri of calendar')
|
||||
->addArgument('uri', InputArgument::REQUIRED, 'URI of calendar')
|
||||
->addOption('format', null, InputOption::VALUE_REQUIRED, 'Format of output (ical, jcal, xcal) defaults to ical', 'ical')
|
||||
->addOption('location', null, InputOption::VALUE_REQUIRED, 'Location of where to write the output. defaults to stdout');
|
||||
->addOption('location', null, InputOption::VALUE_REQUIRED, 'Location of where to write the output. Defaults to stdout');
|
||||
}
|
||||
|
||||
protected function execute(InputInterface $input, OutputInterface $output): int {
|
||||
@@ -73,11 +73,11 @@ class ExportCalendar extends Command {
|
||||
throw new InvalidArgumentException("Format <$format> is not valid.");
|
||||
}
|
||||
$options->setFormat($format);
|
||||
// evaluate is a valid location was given and is usable otherwise output to stdout
|
||||
// evaluate if a valid location was given and is usable otherwise output to stdout
|
||||
if ($location !== null) {
|
||||
$handle = fopen($location, 'wb');
|
||||
if ($handle === false) {
|
||||
throw new InvalidArgumentException("Location <$location> is not valid. Can not open location for write operation.");
|
||||
throw new InvalidArgumentException("Location <$location> is not valid. Cannot open location for write operation.");
|
||||
}
|
||||
|
||||
foreach ($this->exportService->export($calendar, $options) as $chunk) {
|
||||
|
||||
@@ -45,11 +45,11 @@ class ImportCalendar extends Command {
|
||||
$this->setName('calendar:import')
|
||||
->setDescription('Import calendar data to supported calendars from disk or stdin')
|
||||
->addArgument('uid', InputArgument::REQUIRED, 'Id of system user')
|
||||
->addArgument('uri', InputArgument::REQUIRED, 'Uri of calendar')
|
||||
->addArgument('uri', InputArgument::REQUIRED, 'URI of calendar')
|
||||
->addArgument('location', InputArgument::OPTIONAL, 'Location to read the input from, defaults to stdin.')
|
||||
->addOption('format', null, InputOption::VALUE_REQUIRED, 'Format of input (ical, jcal, xcal) defaults to ical', 'ical')
|
||||
->addOption('errors', null, InputOption::VALUE_REQUIRED, 'how to handel item errors (0 - continue, 1 - fail)')
|
||||
->addOption('validation', null, InputOption::VALUE_REQUIRED, 'how to handel item validation (0 - no validation, 1 - validate and skip on issue, 2 - validate and fail on issue)')
|
||||
->addOption('errors', null, InputOption::VALUE_REQUIRED, 'how to handle item errors (0 - continue, 1 - fail)')
|
||||
->addOption('validation', null, InputOption::VALUE_REQUIRED, 'how to handle item validation (0 - no validation, 1 - validate and skip on issue, 2 - validate and fail on issue)')
|
||||
->addOption('supersede', null, InputOption::VALUE_NONE, 'override/replace existing items')
|
||||
->addOption('show-created', null, InputOption::VALUE_NONE, 'show all created items after processing')
|
||||
->addOption('show-updated', null, InputOption::VALUE_NONE, 'show all updated items after processing')
|
||||
@@ -103,7 +103,7 @@ class ImportCalendar extends Command {
|
||||
if ($location !== null) {
|
||||
$input = fopen($location, 'r');
|
||||
if ($input === false) {
|
||||
throw new InvalidArgumentException("Location <$location> is not valid. Can not open location for read operation.");
|
||||
throw new InvalidArgumentException("Location <$location> is not valid. Cannot open location for read operation.");
|
||||
}
|
||||
try {
|
||||
$outcome = $this->importService->import($input, $calendar, $options);
|
||||
@@ -113,7 +113,7 @@ class ImportCalendar extends Command {
|
||||
} else {
|
||||
$input = fopen('php://stdin', 'r');
|
||||
if ($input === false) {
|
||||
throw new InvalidArgumentException('Can not open stdin for read operation.');
|
||||
throw new InvalidArgumentException('Cannot open stdin for read operation.');
|
||||
}
|
||||
try {
|
||||
$tempPath = $this->tempManager->getTemporaryFile();
|
||||
|
||||
@@ -157,6 +157,7 @@ class CommentsPlugin extends ServerPlugin {
|
||||
if (!is_null($args['datetime'])) {
|
||||
$args['datetime'] = new \DateTime((string)$args['datetime']);
|
||||
}
|
||||
$args['limit'] = min(max(1, $args['limit']), 100);
|
||||
|
||||
$results = $node->findChildren($args['limit'], $args['offset'], $args['datetime']);
|
||||
|
||||
|
||||
@@ -62,7 +62,7 @@ class SystemTagPlugin extends \Sabre\DAV\ServerPlugin {
|
||||
*/
|
||||
private $server;
|
||||
|
||||
/** @var array<int, string[]> */
|
||||
/** @var array<string, list<string>> */
|
||||
private array $cachedTagMappings = [];
|
||||
/** @var array<string, ISystemTag> */
|
||||
private array $cachedTags = [];
|
||||
@@ -210,17 +210,17 @@ class SystemTagPlugin extends \Sabre\DAV\ServerPlugin {
|
||||
}
|
||||
|
||||
if ($collection instanceof Directory
|
||||
&& !isset($this->cachedTagMappings[$collection->getId()])
|
||||
&& !isset($this->cachedTagMappings[(string)$collection->getId()])
|
||||
&& $propFind->getStatus(
|
||||
self::SYSTEM_TAGS_PROPERTYNAME
|
||||
) !== null) {
|
||||
$fileIds = [$collection->getId()];
|
||||
$fileIds = [(string)$collection->getId()];
|
||||
|
||||
// note: pre-fetching only supported for depth <= 1
|
||||
$folderContent = $collection->getChildren();
|
||||
foreach ($folderContent as $info) {
|
||||
if ($info instanceof Node) {
|
||||
$fileIds[] = $info->getId();
|
||||
$fileIds[] = (string)$info->getId();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -231,7 +231,7 @@ class SystemTagPlugin extends \Sabre\DAV\ServerPlugin {
|
||||
|
||||
// also cache the ones that were not found
|
||||
foreach ($emptyFileIds as $fileId) {
|
||||
$this->cachedTagMappings[$fileId] = [];
|
||||
$this->cachedTagMappings[(string)$fileId] = [];
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -350,10 +350,10 @@ class SystemTagPlugin extends \Sabre\DAV\ServerPlugin {
|
||||
* @return ISystemTag[]
|
||||
*/
|
||||
private function getTagsForFile(int $fileId, ?IUser $user): array {
|
||||
if (isset($this->cachedTagMappings[$fileId])) {
|
||||
$tagIds = $this->cachedTagMappings[$fileId];
|
||||
if (isset($this->cachedTagMappings[(string)$fileId])) {
|
||||
$tagIds = $this->cachedTagMappings[(string)$fileId];
|
||||
} else {
|
||||
$tags = $this->tagMapper->getTagIdsForObjects([$fileId], 'files');
|
||||
$tags = $this->tagMapper->getTagIdsForObjects([(string)$fileId], 'files');
|
||||
$fileTags = current($tags);
|
||||
if ($fileTags) {
|
||||
$tagIds = $fileTags;
|
||||
@@ -362,13 +362,10 @@ class SystemTagPlugin extends \Sabre\DAV\ServerPlugin {
|
||||
}
|
||||
}
|
||||
|
||||
$tags = array_filter(array_map(function (string $tagId) {
|
||||
return $this->cachedTags[$tagId] ?? null;
|
||||
}, $tagIds));
|
||||
$tags = array_filter(array_map(
|
||||
fn (string $tagId): ?ISystemTag => $this->cachedTags[$tagId] ?? null, $tagIds));
|
||||
|
||||
$uncachedTagIds = array_filter($tagIds, function (string $tagId): bool {
|
||||
return !isset($this->cachedTags[$tagId]);
|
||||
});
|
||||
$uncachedTagIds = array_filter($tagIds, fn (string $tagId): bool => !isset($this->cachedTags[$tagId]));
|
||||
|
||||
if (count($uncachedTagIds)) {
|
||||
$retrievedTags = $this->tagManager->getTagsByIds($uncachedTagIds);
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<label for="replacement-search-input">{{ t('dav', 'Out of office replacement (optional)') }}</label>
|
||||
<NcSelectUsers
|
||||
v-model="replacementUser"
|
||||
input-id="replacement-search-input"
|
||||
inputId="replacement-search-input"
|
||||
:loading="searchLoading"
|
||||
:placeholder="t('dav', 'Name of the replacement')"
|
||||
:options="options"
|
||||
|
||||
@@ -76,20 +76,20 @@ async function save() {
|
||||
<CalendarAvailability
|
||||
v-model:slots="slots"
|
||||
:loading="loading"
|
||||
:l10n-to="t('dav', 'to')"
|
||||
:l10n-delete-slot="t('dav', 'Delete slot')"
|
||||
:l10n-empty-day="t('dav', 'No working hours set')"
|
||||
:l10n-add-slot="t('dav', 'Add slot')"
|
||||
:l10n-week-day-list-label="t('dav', 'Weekdays')"
|
||||
:l10n-monday="t('dav', 'Monday')"
|
||||
:l10n-tuesday="t('dav', 'Tuesday')"
|
||||
:l10n-wednesday="t('dav', 'Wednesday')"
|
||||
:l10n-thursday="t('dav', 'Thursday')"
|
||||
:l10n-friday="t('dav', 'Friday')"
|
||||
:l10n-saturday="t('dav', 'Saturday')"
|
||||
:l10n-sunday="t('dav', 'Sunday')"
|
||||
:l10n-start-picker-label="(dayName) => t('dav', 'Pick a start time for {dayName}', { dayName })"
|
||||
:l10n-end-picker-label="(dayName) => t('dav', 'Pick a end time for {dayName}', { dayName })" />
|
||||
:l10nTo="t('dav', 'to')"
|
||||
:l10nDeleteSlot="t('dav', 'Delete slot')"
|
||||
:l10nEmptyDay="t('dav', 'No working hours set')"
|
||||
:l10nAddSlot="t('dav', 'Add slot')"
|
||||
:l10nWeekDayListLabel="t('dav', 'Weekdays')"
|
||||
:l10nMonday="t('dav', 'Monday')"
|
||||
:l10nTuesday="t('dav', 'Tuesday')"
|
||||
:l10nWednesday="t('dav', 'Wednesday')"
|
||||
:l10nThursday="t('dav', 'Thursday')"
|
||||
:l10nFriday="t('dav', 'Friday')"
|
||||
:l10nSaturday="t('dav', 'Saturday')"
|
||||
:l10nSunday="t('dav', 'Sunday')"
|
||||
:l10nStartPickerLabel="(dayName) => t('dav', 'Pick a start time for {dayName}', { dayName })"
|
||||
:l10nEndPickerLabel="(dayName) => t('dav', 'Pick a end time for {dayName}', { dayName })" />
|
||||
|
||||
<NcCheckboxRadioSwitch v-model="automated">
|
||||
{{ t('dav', 'Automatically set user status to "Do not disturb" outside of availability to mute all notifications.') }}
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
<template>
|
||||
<div class="example-contact-settings">
|
||||
<NcCheckboxRadioSwitch
|
||||
:model-value="enableDefaultContact"
|
||||
:modelValue="enableDefaultContact"
|
||||
type="switch"
|
||||
@update:model-value="updateEnableDefaultContact">
|
||||
@update:modelValue="updateEnableDefaultContact">
|
||||
{{ t('dav', "Add example contact to user's address book when they first log in") }}
|
||||
</NcCheckboxRadioSwitch>
|
||||
<div v-if="enableDefaultContact" class="example-contact-settings__buttons">
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
<template>
|
||||
<div class="example-event-settings">
|
||||
<NcCheckboxRadioSwitch
|
||||
:model-value="createExampleEvent"
|
||||
:modelValue="createExampleEvent"
|
||||
:disabled="savingConfig"
|
||||
type="switch"
|
||||
@update:model-value="updateCreateExampleEvent">
|
||||
@update:modelValue="updateCreateExampleEvent">
|
||||
{{ t('dav', "Add example event to user's calendar when they first log in") }}
|
||||
</NcCheckboxRadioSwitch>
|
||||
<div
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<template>
|
||||
<NcSettingsSection
|
||||
:name="t('dav', 'Calendar server')"
|
||||
:doc-url="userSyncCalendarsDocUrl">
|
||||
:docUrl="userSyncCalendarsDocUrl">
|
||||
<!-- Can use v-html as:
|
||||
- t passes the translated string through DOMPurify.sanitize,
|
||||
- replacement strings are not user-controlled. -->
|
||||
|
||||
@@ -41,15 +41,23 @@ OC.L10N.register(
|
||||
"Enable recovery key" : "Povolit záchranný klíč",
|
||||
"The recovery key is an additional encryption key used to encrypt files. It is used to recover files from an account if the password is forgotten." : "Záchranný klíč je dodatečný šifrovací klíč sloužící pro šifrování souborů. Slouží k obnovení souborů z účtu, pokud dojde k zapomenutí hesla.",
|
||||
"Recovery key password" : "Heslo ke klíči pro obnovu",
|
||||
"Passwords fields do not match" : "Zadání hesla se neshodují",
|
||||
"Repeat recovery key password" : "Zopakovat heslo záchranného klíče",
|
||||
"An error occurred while updating the recovery key settings. Please try again." : "Došlo k chybě při aktualizování nastavení záchranného klíčez. Zkuste to prosím znovu.",
|
||||
"Change recovery key password" : "Změnit heslo k záchrannému klíči",
|
||||
"Old recovery key password" : "Staré heslo záchranného klíče",
|
||||
"New recovery key password" : "Nové heslo k záchrannému klíči",
|
||||
"Repeat new recovery key password" : "Zopakujte nové heslo záchranného klíče",
|
||||
"An error occurred while changing the recovery key password. Please try again." : "Došlo k chybě při měnění hesla k záchrannému klíči. Zkuste to znovu.",
|
||||
"Update private key password" : "Zaktualizovat heslo k soukromému klíči",
|
||||
"Your private key password no longer matches your log-in password. Set your old private key password to your current log-in password." : "Heslo k vašemu soukromému klíči už neodpovídá vašemu přihlašovacímu heslu. Nastavte své původní heslo k soukromému klíči jako své stávající přihlašovací heslo.",
|
||||
"If you do not remember your old password you can ask your administrator to recover your files." : "Pokud si nepamatujete své původní heslo, můžete požádat správce o obnovu vašich souborů.",
|
||||
"Old log-in password" : "Původní přihlašovací heslo",
|
||||
"Current log-in password" : "Stávající přihlašovací heslo",
|
||||
"Update" : "Aktualizovat",
|
||||
"Updating recovery keys. This can take some time…" : "Aktualizující se záchranné klíče. Toto může chvíli trvat…",
|
||||
"Enabling this option will allow you to reobtain access to your encrypted files in case of password loss" : "Zapnutí této volby vám umožní znovu získat přístup k vašim zašifrovaným souborům pokud ztratíte heslo",
|
||||
"Enable password recovery" : "Zapnout obnovu hesla",
|
||||
"Default encryption module" : "Výchozí šifrovací modul",
|
||||
"Encryption app is enabled but your keys are not initialized, please log-out and log-in again" : "Aplikace pro šifrování je zapnuta, ale šifrovací klíče ještě nejsou inicializované. Odhlaste se a znovu se přihlaste",
|
||||
"Basic encryption module" : "Základní šifrovací modul",
|
||||
|
||||
@@ -39,15 +39,23 @@
|
||||
"Enable recovery key" : "Povolit záchranný klíč",
|
||||
"The recovery key is an additional encryption key used to encrypt files. It is used to recover files from an account if the password is forgotten." : "Záchranný klíč je dodatečný šifrovací klíč sloužící pro šifrování souborů. Slouží k obnovení souborů z účtu, pokud dojde k zapomenutí hesla.",
|
||||
"Recovery key password" : "Heslo ke klíči pro obnovu",
|
||||
"Passwords fields do not match" : "Zadání hesla se neshodují",
|
||||
"Repeat recovery key password" : "Zopakovat heslo záchranného klíče",
|
||||
"An error occurred while updating the recovery key settings. Please try again." : "Došlo k chybě při aktualizování nastavení záchranného klíčez. Zkuste to prosím znovu.",
|
||||
"Change recovery key password" : "Změnit heslo k záchrannému klíči",
|
||||
"Old recovery key password" : "Staré heslo záchranného klíče",
|
||||
"New recovery key password" : "Nové heslo k záchrannému klíči",
|
||||
"Repeat new recovery key password" : "Zopakujte nové heslo záchranného klíče",
|
||||
"An error occurred while changing the recovery key password. Please try again." : "Došlo k chybě při měnění hesla k záchrannému klíči. Zkuste to znovu.",
|
||||
"Update private key password" : "Zaktualizovat heslo k soukromému klíči",
|
||||
"Your private key password no longer matches your log-in password. Set your old private key password to your current log-in password." : "Heslo k vašemu soukromému klíči už neodpovídá vašemu přihlašovacímu heslu. Nastavte své původní heslo k soukromému klíči jako své stávající přihlašovací heslo.",
|
||||
"If you do not remember your old password you can ask your administrator to recover your files." : "Pokud si nepamatujete své původní heslo, můžete požádat správce o obnovu vašich souborů.",
|
||||
"Old log-in password" : "Původní přihlašovací heslo",
|
||||
"Current log-in password" : "Stávající přihlašovací heslo",
|
||||
"Update" : "Aktualizovat",
|
||||
"Updating recovery keys. This can take some time…" : "Aktualizující se záchranné klíče. Toto může chvíli trvat…",
|
||||
"Enabling this option will allow you to reobtain access to your encrypted files in case of password loss" : "Zapnutí této volby vám umožní znovu získat přístup k vašim zašifrovaným souborům pokud ztratíte heslo",
|
||||
"Enable password recovery" : "Zapnout obnovu hesla",
|
||||
"Default encryption module" : "Výchozí šifrovací modul",
|
||||
"Encryption app is enabled but your keys are not initialized, please log-out and log-in again" : "Aplikace pro šifrování je zapnuta, ale šifrovací klíče ještě nejsou inicializované. Odhlaste se a znovu se přihlaste",
|
||||
"Basic encryption module" : "Základní šifrovací modul",
|
||||
|
||||
@@ -15,6 +15,7 @@ OC.L10N.register(
|
||||
"Could not change the password. Maybe the old password was not correct." : "Ei suutnud muuta salasõna. Võib-olla on vana salasõna valesti sisestatud.",
|
||||
"Recovery Key disabled" : "Taastevõti on välja lülitatud",
|
||||
"Recovery Key enabled" : "Taastevõti on sisse lülitatud",
|
||||
"Could not enable the recovery key, please try again or contact your administrator" : "Taastevõtme ksutuselevõtmine ei õnnestunud, palun proovi hiljem uuesti või võta ühendust serveri haldajaga",
|
||||
"Could not update the private key password." : "Ei suutnud uuendada privaatvõtme salasõna.",
|
||||
"The old password was not correct, please try again." : "Vana salasõna polnud õige, palun proovi uuesti.",
|
||||
"The current log-in password was not correct, please try again." : "Sisselogimise senine salasõna polnud õige, palun proovi uuesti.",
|
||||
@@ -28,21 +29,33 @@ OC.L10N.register(
|
||||
"Encryption password" : "Krüptimise salasõna",
|
||||
"The administration enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>." : "Serveri peakasutaja lülitas sisse serveripoolse krüptimise. Sinu failid on krüptitud salasõnaga <strong>%s</strong>.",
|
||||
"The administration enabled server-side-encryption. Your files were encrypted using the password \"%s\"." : "Serveri peakasutaja lülitas sisse serveripoolse krüptimise. Sinu failid on krüptitud salasõnaga „%s“.",
|
||||
"Cannot decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Selle faili dekrüptimine ei õnnestu. Ilmselt on tegemist jagatud failiga. Palu omanikul seda faili sinuga uuesti jagada.",
|
||||
"Cannot read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Selle faili lugemine ei õnnestu. Ilmselt on tegemist jagatud failiga. Palu omanikul seda faili sinuga uuesti jagada.",
|
||||
"Default Encryption Module" : "Vaikimisi krüptomoodul",
|
||||
"Default encryption module for Nextcloud Server-side Encryption (SSE)" : "Vaikimisi krüptomoodul Nextcloudi serveripoolse krüptimise jaoks (SSE)",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Selle valiku kasutamisel krüptitakse failid sisemises ja välises andmeruumis. Vastasel juhul vaid välises andmeruumis.",
|
||||
"Encrypt the home storage" : "Krüpti ka sisemine andmeruum",
|
||||
"Disable recovery key" : "Keela taastevõtme kasutamine",
|
||||
"Enable recovery key" : "Luba taastevõtme kasutamine",
|
||||
"The recovery key is an additional encryption key used to encrypt files. It is used to recover files from an account if the password is forgotten." : "Taastevõti on täiendav krüptovõti, mida kasutatakse failide krüptimisel. Kui peaksid põhilise salasõna unustama, siis saad seda failide taastamisel kasutada. Salvesta ta turvaliselt digitaalsesse salasõnalaekasse või vana kooli seifi.",
|
||||
"Recovery key password" : "Taastevõtme salasõna",
|
||||
"Passwords fields do not match" : "Salasõnad ei klapi",
|
||||
"Repeat recovery key password" : "Korda taastevõtme salasõna",
|
||||
"An error occurred while updating the recovery key settings. Please try again." : "Taastevõtme seadistuste muutmisel tekkis viga. Palun proovi uuesti.",
|
||||
"Change recovery key password" : "Muuda taastevõtme salasõna",
|
||||
"Old recovery key password" : "Vana taastevõtme salasõna",
|
||||
"New recovery key password" : "Uus taastevõtme salasõna",
|
||||
"Repeat new recovery key password" : "Korda uut taastevõtme salasõna",
|
||||
"An error occurred while changing the recovery key password. Please try again." : "Taastevõtme salasõna muutmisel tekkis viga. Palun proovi uuesti.",
|
||||
"Update private key password" : "Uuenda privaatvõtme salasõna",
|
||||
"Your private key password no longer matches your log-in password. Set your old private key password to your current log-in password." : "Sinu privaatvõtme salasõna enam ei vasta sinu kasutajakonto salasõnale (seda kasutad sisselogimisel). Palun muuda privaatvõtme salasõna kasutajakontoga samaks.",
|
||||
"If you do not remember your old password you can ask your administrator to recover your files." : "Kui sa ei mäleta oma vana salasõna, siis palu oma süsteemihalduril taastada ligipääs failidele.",
|
||||
"Old log-in password" : "Sisselogimise vana salasõna",
|
||||
"Current log-in password" : "Sisselogimise praegune salasõna",
|
||||
"Update" : "Uuenda",
|
||||
"Updating recovery keys. This can take some time…" : "Uuendan taastevõtmeid. Selleks võib kuluda natuke aega…",
|
||||
"Enabling this option will allow you to reobtain access to your encrypted files in case of password loss" : "Valiku lubamine võimaldab salasõna kaotamise korral taastada ligipääsu krüptitud failidele",
|
||||
"Enable password recovery" : "Võta salasõnade taastamine kasutusele",
|
||||
"Default encryption module" : "Vaikimisi krüptimismoodul",
|
||||
"Encryption app is enabled but your keys are not initialized, please log-out and log-in again" : "Krüptimisrakendus on kasutusel, kuid krüptovõtmed pole valmendatud. Palun logi välja ning uuesti sisse.",
|
||||
"Basic encryption module" : "Lihtkrüptimise moodul",
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
"Could not change the password. Maybe the old password was not correct." : "Ei suutnud muuta salasõna. Võib-olla on vana salasõna valesti sisestatud.",
|
||||
"Recovery Key disabled" : "Taastevõti on välja lülitatud",
|
||||
"Recovery Key enabled" : "Taastevõti on sisse lülitatud",
|
||||
"Could not enable the recovery key, please try again or contact your administrator" : "Taastevõtme ksutuselevõtmine ei õnnestunud, palun proovi hiljem uuesti või võta ühendust serveri haldajaga",
|
||||
"Could not update the private key password." : "Ei suutnud uuendada privaatvõtme salasõna.",
|
||||
"The old password was not correct, please try again." : "Vana salasõna polnud õige, palun proovi uuesti.",
|
||||
"The current log-in password was not correct, please try again." : "Sisselogimise senine salasõna polnud õige, palun proovi uuesti.",
|
||||
@@ -26,21 +27,33 @@
|
||||
"Encryption password" : "Krüptimise salasõna",
|
||||
"The administration enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>." : "Serveri peakasutaja lülitas sisse serveripoolse krüptimise. Sinu failid on krüptitud salasõnaga <strong>%s</strong>.",
|
||||
"The administration enabled server-side-encryption. Your files were encrypted using the password \"%s\"." : "Serveri peakasutaja lülitas sisse serveripoolse krüptimise. Sinu failid on krüptitud salasõnaga „%s“.",
|
||||
"Cannot decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Selle faili dekrüptimine ei õnnestu. Ilmselt on tegemist jagatud failiga. Palu omanikul seda faili sinuga uuesti jagada.",
|
||||
"Cannot read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Selle faili lugemine ei õnnestu. Ilmselt on tegemist jagatud failiga. Palu omanikul seda faili sinuga uuesti jagada.",
|
||||
"Default Encryption Module" : "Vaikimisi krüptomoodul",
|
||||
"Default encryption module for Nextcloud Server-side Encryption (SSE)" : "Vaikimisi krüptomoodul Nextcloudi serveripoolse krüptimise jaoks (SSE)",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Selle valiku kasutamisel krüptitakse failid sisemises ja välises andmeruumis. Vastasel juhul vaid välises andmeruumis.",
|
||||
"Encrypt the home storage" : "Krüpti ka sisemine andmeruum",
|
||||
"Disable recovery key" : "Keela taastevõtme kasutamine",
|
||||
"Enable recovery key" : "Luba taastevõtme kasutamine",
|
||||
"The recovery key is an additional encryption key used to encrypt files. It is used to recover files from an account if the password is forgotten." : "Taastevõti on täiendav krüptovõti, mida kasutatakse failide krüptimisel. Kui peaksid põhilise salasõna unustama, siis saad seda failide taastamisel kasutada. Salvesta ta turvaliselt digitaalsesse salasõnalaekasse või vana kooli seifi.",
|
||||
"Recovery key password" : "Taastevõtme salasõna",
|
||||
"Passwords fields do not match" : "Salasõnad ei klapi",
|
||||
"Repeat recovery key password" : "Korda taastevõtme salasõna",
|
||||
"An error occurred while updating the recovery key settings. Please try again." : "Taastevõtme seadistuste muutmisel tekkis viga. Palun proovi uuesti.",
|
||||
"Change recovery key password" : "Muuda taastevõtme salasõna",
|
||||
"Old recovery key password" : "Vana taastevõtme salasõna",
|
||||
"New recovery key password" : "Uus taastevõtme salasõna",
|
||||
"Repeat new recovery key password" : "Korda uut taastevõtme salasõna",
|
||||
"An error occurred while changing the recovery key password. Please try again." : "Taastevõtme salasõna muutmisel tekkis viga. Palun proovi uuesti.",
|
||||
"Update private key password" : "Uuenda privaatvõtme salasõna",
|
||||
"Your private key password no longer matches your log-in password. Set your old private key password to your current log-in password." : "Sinu privaatvõtme salasõna enam ei vasta sinu kasutajakonto salasõnale (seda kasutad sisselogimisel). Palun muuda privaatvõtme salasõna kasutajakontoga samaks.",
|
||||
"If you do not remember your old password you can ask your administrator to recover your files." : "Kui sa ei mäleta oma vana salasõna, siis palu oma süsteemihalduril taastada ligipääs failidele.",
|
||||
"Old log-in password" : "Sisselogimise vana salasõna",
|
||||
"Current log-in password" : "Sisselogimise praegune salasõna",
|
||||
"Update" : "Uuenda",
|
||||
"Updating recovery keys. This can take some time…" : "Uuendan taastevõtmeid. Selleks võib kuluda natuke aega…",
|
||||
"Enabling this option will allow you to reobtain access to your encrypted files in case of password loss" : "Valiku lubamine võimaldab salasõna kaotamise korral taastada ligipääsu krüptitud failidele",
|
||||
"Enable password recovery" : "Võta salasõnade taastamine kasutusele",
|
||||
"Default encryption module" : "Vaikimisi krüptimismoodul",
|
||||
"Encryption app is enabled but your keys are not initialized, please log-out and log-in again" : "Krüptimisrakendus on kasutusel, kuid krüptovõtmed pole valmendatud. Palun logi välja ning uuesti sisse.",
|
||||
"Basic encryption module" : "Lihtkrüptimise moodul",
|
||||
|
||||
@@ -35,6 +35,7 @@ OC.L10N.register(
|
||||
"Cannot read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Ní féidir an comhad seo a léamh, is dócha gur comhad roinnte é seo. Iarr ar úinéir an chomhaid an comhad a athroinnt leat le do thoil.",
|
||||
"Default Encryption Module" : "Modúl Criptithe Réamhshocraithe",
|
||||
"Default encryption module for Nextcloud Server-side Encryption (SSE)" : "Modúl criptithe réamhshocraithe le haghaidh Criptiú Taobh an Fhreastalaí (SSE) Nextcloud",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to\n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "Soláthraíonn an aip seo an cur i bhfeidhm cripteagrafaíochta (réamhshocraithe) do ghné Criptiú Taobh an Fhreastalaí (SSE) Nextcloud.\n\n\t\t\t**Sonraí Criptithe**\n\t\t\t* **Mód Criptithe:** AES-256-CTR (réamhshocraithe)\n\t\t\t* **Fíordheimhniú:** HMAC-SHA256\n\n\t\t\t**Rabhaidh Thábhachtacha**\n\t\t\t* **CONTÚIRT:** Ná díchumasaigh an feidhmchlár seo go dtí go mbeidh na comhaid go léir díchriptithe (`occ encryption:decrypt-all`).\n\n\t\t\t* **RABHADH**: Éilíonn filleadh ar stóráil comhad neamhchriptithe tar éis gníomhachtaithe rochtain líne ordaithe. Is buan an gníomh tríd an Chomhéadan Gréasáin.\"\n\n\t\t\t**Nótaí do Chomhaid atá ann cheana**\n\t\t\t* De réir réamhshocraithe, ní chriptítear comhaid atá ann cheana nuair a chuirtear SSE ar chumas; ní chripteofar ach comhaid nua.\n\t\t\t* Chun gach comhad atá ann cheana a chriptiú, bain úsáid as an ordú `occ encryption:encrypt-all`.\n\n\t\t\t**Sula dTosaíonn Tú**\n\t\t\t* **Léigh an Doiciméadú:** Sula gcumasaíonn tú SSE, sula ndéanann tú comhaid atá ann cheana a chriptiú, nó sula ndíchumasaíonn tú SSE, tá sé ríthábhachtach\n\t\t\t\t an doiciméadú a léamh chun tuiscint a fháil ar na himpleachtaí agus na nósanna imeachta cuí chun cailliúint sonraí a sheachaint.",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Má dhéantar an rogha seo a chumasú, criptítear gach comhad atá stóráilte ar an bpríomhstóráil, nó ní dhéanfar ach comhaid ar stóráil sheachtrach a chriptiú",
|
||||
"Encrypt the home storage" : "Criptigh an stóráil sa bhaile",
|
||||
"Disable recovery key" : "Díchumasaigh eochair athshlánaithe",
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
"Cannot read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Ní féidir an comhad seo a léamh, is dócha gur comhad roinnte é seo. Iarr ar úinéir an chomhaid an comhad a athroinnt leat le do thoil.",
|
||||
"Default Encryption Module" : "Modúl Criptithe Réamhshocraithe",
|
||||
"Default encryption module for Nextcloud Server-side Encryption (SSE)" : "Modúl criptithe réamhshocraithe le haghaidh Criptiú Taobh an Fhreastalaí (SSE) Nextcloud",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to\n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "Soláthraíonn an aip seo an cur i bhfeidhm cripteagrafaíochta (réamhshocraithe) do ghné Criptiú Taobh an Fhreastalaí (SSE) Nextcloud.\n\n\t\t\t**Sonraí Criptithe**\n\t\t\t* **Mód Criptithe:** AES-256-CTR (réamhshocraithe)\n\t\t\t* **Fíordheimhniú:** HMAC-SHA256\n\n\t\t\t**Rabhaidh Thábhachtacha**\n\t\t\t* **CONTÚIRT:** Ná díchumasaigh an feidhmchlár seo go dtí go mbeidh na comhaid go léir díchriptithe (`occ encryption:decrypt-all`).\n\n\t\t\t* **RABHADH**: Éilíonn filleadh ar stóráil comhad neamhchriptithe tar éis gníomhachtaithe rochtain líne ordaithe. Is buan an gníomh tríd an Chomhéadan Gréasáin.\"\n\n\t\t\t**Nótaí do Chomhaid atá ann cheana**\n\t\t\t* De réir réamhshocraithe, ní chriptítear comhaid atá ann cheana nuair a chuirtear SSE ar chumas; ní chripteofar ach comhaid nua.\n\t\t\t* Chun gach comhad atá ann cheana a chriptiú, bain úsáid as an ordú `occ encryption:encrypt-all`.\n\n\t\t\t**Sula dTosaíonn Tú**\n\t\t\t* **Léigh an Doiciméadú:** Sula gcumasaíonn tú SSE, sula ndéanann tú comhaid atá ann cheana a chriptiú, nó sula ndíchumasaíonn tú SSE, tá sé ríthábhachtach\n\t\t\t\t an doiciméadú a léamh chun tuiscint a fháil ar na himpleachtaí agus na nósanna imeachta cuí chun cailliúint sonraí a sheachaint.",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Má dhéantar an rogha seo a chumasú, criptítear gach comhad atá stóráilte ar an bpríomhstóráil, nó ní dhéanfar ach comhaid ar stóráil sheachtrach a chriptiú",
|
||||
"Encrypt the home storage" : "Criptigh an stóráil sa bhaile",
|
||||
"Disable recovery key" : "Díchumasaigh eochair athshlánaithe",
|
||||
|
||||
@@ -35,6 +35,7 @@ OC.L10N.register(
|
||||
"Cannot read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Non foi posíbel ler o ficheiro, probabelmente tratase dun ficheiro compartido. Pídalle ao propietario do ficheiro que volva compartir o ficheiro con Vde.",
|
||||
"Default Encryption Module" : "Módulo predeterminado de cifraxe",
|
||||
"Default encryption module for Nextcloud Server-side Encryption (SSE)" : "Módulo de cifraxe predeterminado para a cifraxe do lado do servidor (SSE) de Nextcloud.",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to\n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "Esta aplicación fornece a implementación de criptografía (predeterminada) para a función de cifraxe do lado do servidor (SSE) de Nextcloud.\n\n\t\t\t**Detalles da cifraxe**\n\t\t\t* **Modo de cifraxe:** AES-256-CTR (predeterminado)\n\t\t\t* **Autenticación:** HMAC-SHA256\n\n\t\t\t**Advertencias importantes**\n\t\t\t* **PERIGO:** Non desactive esta aplicación ata que todos os ficheiros estean descifrados (`occ encryption:decrypt-all`).\n\t\t\t* **ADVERTENCIA**: Para volver ao almacenamento de ficheiros non cifrados após a activación é necesario acceder á liña de ordes. A través da interface web a acción é permanente.\n\n\t\t\t**Notas para ficheiros existentes**\n\t\t\t* De xeito predeterminado, a activación do SSE non cifra os ficheiros existentes; Só se cifrarán os novos ficheiros.\n\t\t\t* Para cifrar todos os ficheiros existentes, empregue a orde `occ encryption:encrypt-all`.\n\n\t\t\t**Antes de comezar**\n\t\t\t* *Lea a documentación:** Antes de activar SSE, cifrar ficheiros existentes ou desactivar SSE, é fundamental\n\t\t\t\tler a documentación para comprender as implicacións e os procedementos axeitados para evitar a perda de datos.",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Ao activar esta opción cífranse todos os ficheiros almacenados no almacenamento principal, senón só se cifran os ficheiros do almacenamento externo.",
|
||||
"Encrypt the home storage" : "Cifrar o almacenamento persoal",
|
||||
"Disable recovery key" : "Desactivar a chave de recuperación",
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
"Cannot read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Non foi posíbel ler o ficheiro, probabelmente tratase dun ficheiro compartido. Pídalle ao propietario do ficheiro que volva compartir o ficheiro con Vde.",
|
||||
"Default Encryption Module" : "Módulo predeterminado de cifraxe",
|
||||
"Default encryption module for Nextcloud Server-side Encryption (SSE)" : "Módulo de cifraxe predeterminado para a cifraxe do lado do servidor (SSE) de Nextcloud.",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to\n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "Esta aplicación fornece a implementación de criptografía (predeterminada) para a función de cifraxe do lado do servidor (SSE) de Nextcloud.\n\n\t\t\t**Detalles da cifraxe**\n\t\t\t* **Modo de cifraxe:** AES-256-CTR (predeterminado)\n\t\t\t* **Autenticación:** HMAC-SHA256\n\n\t\t\t**Advertencias importantes**\n\t\t\t* **PERIGO:** Non desactive esta aplicación ata que todos os ficheiros estean descifrados (`occ encryption:decrypt-all`).\n\t\t\t* **ADVERTENCIA**: Para volver ao almacenamento de ficheiros non cifrados após a activación é necesario acceder á liña de ordes. A través da interface web a acción é permanente.\n\n\t\t\t**Notas para ficheiros existentes**\n\t\t\t* De xeito predeterminado, a activación do SSE non cifra os ficheiros existentes; Só se cifrarán os novos ficheiros.\n\t\t\t* Para cifrar todos os ficheiros existentes, empregue a orde `occ encryption:encrypt-all`.\n\n\t\t\t**Antes de comezar**\n\t\t\t* *Lea a documentación:** Antes de activar SSE, cifrar ficheiros existentes ou desactivar SSE, é fundamental\n\t\t\t\tler a documentación para comprender as implicacións e os procedementos axeitados para evitar a perda de datos.",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Ao activar esta opción cífranse todos os ficheiros almacenados no almacenamento principal, senón só se cifran os ficheiros do almacenamento externo.",
|
||||
"Encrypt the home storage" : "Cifrar o almacenamento persoal",
|
||||
"Disable recovery key" : "Desactivar a chave de recuperación",
|
||||
|
||||
@@ -27,26 +27,44 @@ OC.L10N.register(
|
||||
"Bad Signature" : "Nevažeći potpis",
|
||||
"Missing Signature" : "Nedostaje potpis",
|
||||
"one-time password for server-side-encryption" : "jednokratna zaporka za šifriranje na poslužitelju",
|
||||
"Encryption password" : "Zaporka za šifriranje",
|
||||
"The administration enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>." : "Administracija je omogućila šifriranje na strani poslužitelja. Vaše datoteke šifrirane su pomoću zaporke <strong>%s</strong>.",
|
||||
"The administration enabled server-side-encryption. Your files were encrypted using the password \"%s\"." : "Administracija je omogućila šifriranje na strani poslužitelja. Vaše datoteke šifrirane su pomoću zaporke „%s”.",
|
||||
"Please login to the web interface, go to the \"Security\" section of your personal settings and update your encryption password by entering this password into the \"Old login password\" field and your current login password." : "Prijavite se u web-sučelje, otvorite odjeljak „Sigurnost” u osobnim postavkama i ažurirajte zaporku za šifriranje tako da ovu zaporku unesete u polje „Stara zaporka za prijavu”, a zatim unesete svoju trenutačnu zaporku za prijavu.",
|
||||
"Cannot decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Ovu datoteku nije moguće dešifrirati, vjerojatno je riječ o dijeljenoj datoteci. Zatražite od vlasnika datoteke da je ponovo podijeli s vama.",
|
||||
"Cannot read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Ovu datoteku nije moguće čitati, vjerojatno je riječ o dijeljenoj datoteci. Zatražite od vlasnika datoteke da je ponovo podijeli s vama.",
|
||||
"Default Encryption Module" : "Zadani modul šifriranja",
|
||||
"Default encryption module for Nextcloud Server-side Encryption (SSE)" : "Zadani modul šifriranja za Nextcloudovo šifriranje na strani poslužitelja (SSE)",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to\n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "Ova aplikacija pruža (zadanu) kriptografsku implementaciju za Nextcloudovu značajku šifriranja na strani poslužitelja (SSE).\n\n\t\t\t**Detalji šifriranja**\n\t\t\t* **Način šifre:** AES-256-CTR (zadano)\n\t\t\t* **Autentikacija:** HMAC-SHA256\n\n\t\t\t**Važna upozorenja**\n\t\t\t* **OPASNOST:** Nemojte onemogućiti ovu aplikaciju dok sve datoteke ne budu dešifrirane (`occ encryption:decrypt-all`).\n\t\t\t* **UPOZORENJE**: Povratak na nešifriranu pohranu datoteka nakon aktivacije zahtijeva pristup naredbenom retku. Ova je radnja trajna putem web-sučelja.\n\n\t\t\t**Napomene za postojeće datoteke**\n\t\t\t* Prema zadanim postavkama, omogućavanje SSE-a ne šifrira postojeće datoteke; šifriraju se samo nove datoteke.\n\t\t\t* Za šifriranje svih postojećih datoteka upotrijebite naredbu `occ encryption:encrypt-all`.\n\n\t\t\t**Prije nego što započnete**\n\t\t\t***Pročitajte dokumentaciju:** Prije omogućavanja SSE-a, šifriranja postojećih datoteka ili onemogućavanja SSE-a,\n\t\t\t\tobavezno pročitajte dokumentaciju kako biste razumjeli posljedice i ispravne postupke te izbjegli gubitak podataka.",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Omogućavanjem ove opcije šifriraju se sve datoteke smještene u glavnoj pohrani, a u protivnom se šifriraju samo datoteke u vanjskoj pohrani",
|
||||
"Encrypt the home storage" : "Šifrirajte kućnu pohranu",
|
||||
"Disable recovery key" : "Onemogući ključ za oporavak",
|
||||
"Enable recovery key" : "Omogući ključ za oporavak",
|
||||
"The recovery key is an additional encryption key used to encrypt files. It is used to recover files from an account if the password is forgotten." : "Ključ za oporavak dodatni je ključ za šifriranje koji se koristi za šifriranje datoteka. Služi za oporavak datoteka s računa ako se zaporka zaboravi.",
|
||||
"Recovery key password" : "Zaporka ključa za oporavak",
|
||||
"Passwords fields do not match" : "Polja zaporki se ne podudaraju",
|
||||
"Repeat recovery key password" : "Ponovite zaporku ključa za oporavak",
|
||||
"An error occurred while updating the recovery key settings. Please try again." : "Došlo je do pogreške prilikom ažuriranja postavki ključa za oporavak. Pokušajte ponovno.",
|
||||
"Change recovery key password" : "Promijenite zaporku ključa za oporavak",
|
||||
"Old recovery key password" : "Stara zaporka ključa za oporavak",
|
||||
"New recovery key password" : "Nova zaporka ključa za oporavak",
|
||||
"Repeat new recovery key password" : "Ponovite novu zaporku ključa za oporavak",
|
||||
"An error occurred while changing the recovery key password. Please try again." : "Došlo je do pogreške prilikom promjene zaporke ključa za oporavak. Pokušajte ponovno.",
|
||||
"Update private key password" : "Ažurirajte zaporku privatnog ključa",
|
||||
"Your private key password no longer matches your log-in password. Set your old private key password to your current log-in password." : "Zaporka vašeg privatnog ključa više se ne podudara s vašom zaporkom za prijavu. Postavite staru zaporku privatnog ključa na svoju trenutačnu zaporku za prijavu.",
|
||||
"If you do not remember your old password you can ask your administrator to recover your files." : "Ako se ne sjećate stare zaporke, možete zatražiti od administratora da oporavi vaše datoteke.",
|
||||
"Old log-in password" : "Stara zaporka za prijavu",
|
||||
"Current log-in password" : "Aktualna zaporka za prijavu",
|
||||
"Update" : "Ažuriraj",
|
||||
"Updating recovery keys. This can take some time…" : "Ažuriranje ključeva za oporavak. Ovo može potrajati…",
|
||||
"Enabling this option will allow you to reobtain access to your encrypted files in case of password loss" : "U slučaju gubitka zaporke, aktiviranje ove mogućnosti ponovno će vam pribaviti pristup vašim šifriranim datotekama",
|
||||
"Enable password recovery" : "Omogući oporavak zaporke",
|
||||
"Default encryption module" : "Zadani modul za šifriranje",
|
||||
"Encryption app is enabled but your keys are not initialized, please log-out and log-in again" : "Aplikacija za šifriranje je omogućena, ali se ključevi nisu inicijalizirali, odjavite se i ponovno se prijavite",
|
||||
"Basic encryption module" : "Osnovni modul za šifriranje",
|
||||
"Missing parameters" : "Nedostaju parametri",
|
||||
"Default encryption module for server-side encryption" : "Zadani modul za šifriranje na poslužitelju",
|
||||
"In order to use this encryption module you need to enable server-side encryption in the admin settings. Once enabled this module will encrypt all your files transparently. The encryption is based on AES 256 keys.\nThe module will not touch existing files, only new files will be encrypted after server-side encryption was enabled. It is also not possible to disable the encryption again and switch back to an unencrypted system.\nPlease read the documentation to know all implications before you decide to enable server-side encryption." : "Kako biste mogli koristiti ovaj modul šifriranja, morate omogućiti šifriranje na strani poslužitelja u administratorskim postavkama. Nakon omogućavanja, ovaj će modul transparentno šifrirati sve vaše datoteke. Šifriranje se temelji na AES 256 ključevima.\nModul neće dirati postojeće datoteke, već će se šifrirati samo nove datoteke nakon što se omogući šifriranje na strani poslužitelja. Također nije moguće ponovno onemogućiti šifriranje i vratiti se na nešifrirani sustav.\nPrije nego što odlučite omogućiti šifriranje na strani poslužitelja, obavezno pročitajte dokumentaciju kako biste razumjeli sve posljedice.",
|
||||
"Change recovery key password:" : "Promijenite zaporku ključa za oporavak:",
|
||||
"Change Password" : "Promijeni zaporku",
|
||||
"Your private key password no longer matches your log-in password." : "Zaporka vašeg privatnog ključa više se ne podudara s vašom zaporkom za prijavu.",
|
||||
@@ -54,6 +72,7 @@ OC.L10N.register(
|
||||
"Update Private Key Password" : "Ažuriraj zaporku privatnog ključa",
|
||||
"Enable password recovery:" : "Omogući oporavak zaporke:",
|
||||
"Enabled" : "Omogućeno",
|
||||
"Disabled" : "Onemogućeno"
|
||||
"Disabled" : "Onemogućeno",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to \n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "Ova aplikacija pruža (zadanu) kriptografsku implementaciju za Nextcloudovu značajku šifriranja na strani poslužitelja (SSE).\n\n\t\t\t**Detalji šifriranja**\n\t\t\t* **Način šifre:** AES-256-CTR (zadano)\n\t\t\t* **Autentikacija:** HMAC-SHA256\n\n\t\t\t**Važna upozorenja**\n\t\t\t* **OPASNOST:** Nemojte onemogućiti ovu aplikaciju dok sve datoteke ne budu dešifrirane (`occ encryption:decrypt-all`).\n\t\t\t* **UPOZORENJE:** Povratak na nešifriranu pohranu datoteka nakon aktivacije zahtijeva pristup naredbenom retku. Ova je radnja trajna putem web-sučelja.\"\n\n\t\t\t**Napomene za postojeće datoteke**\n\t\t\t* Prema zadanim postavkama, omogućavanje SSE-a ne šifrira postojeće datoteke; šifriraju se samo nove datoteke.\n\t\t\t* Za šifriranje svih postojećih datoteka upotrijebite naredbu `occ encryption:encrypt-all`.\n\n\t\t\t**Prije nego što započnete**\n\t\t\t* **Pročitajte dokumentaciju:** Prije omogućavanja SSE-a, šifriranja postojećih datoteka ili onemogućavanja SSE-a,\n\t\t\t\tobavezno pročitajte dokumentaciju kako biste razumjeli posljedice i odgovarajuće postupke kako biste izbjegli gubitak podataka."
|
||||
},
|
||||
"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;");
|
||||
|
||||
@@ -25,26 +25,44 @@
|
||||
"Bad Signature" : "Nevažeći potpis",
|
||||
"Missing Signature" : "Nedostaje potpis",
|
||||
"one-time password for server-side-encryption" : "jednokratna zaporka za šifriranje na poslužitelju",
|
||||
"Encryption password" : "Zaporka za šifriranje",
|
||||
"The administration enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>." : "Administracija je omogućila šifriranje na strani poslužitelja. Vaše datoteke šifrirane su pomoću zaporke <strong>%s</strong>.",
|
||||
"The administration enabled server-side-encryption. Your files were encrypted using the password \"%s\"." : "Administracija je omogućila šifriranje na strani poslužitelja. Vaše datoteke šifrirane su pomoću zaporke „%s”.",
|
||||
"Please login to the web interface, go to the \"Security\" section of your personal settings and update your encryption password by entering this password into the \"Old login password\" field and your current login password." : "Prijavite se u web-sučelje, otvorite odjeljak „Sigurnost” u osobnim postavkama i ažurirajte zaporku za šifriranje tako da ovu zaporku unesete u polje „Stara zaporka za prijavu”, a zatim unesete svoju trenutačnu zaporku za prijavu.",
|
||||
"Cannot decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Ovu datoteku nije moguće dešifrirati, vjerojatno je riječ o dijeljenoj datoteci. Zatražite od vlasnika datoteke da je ponovo podijeli s vama.",
|
||||
"Cannot read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Ovu datoteku nije moguće čitati, vjerojatno je riječ o dijeljenoj datoteci. Zatražite od vlasnika datoteke da je ponovo podijeli s vama.",
|
||||
"Default Encryption Module" : "Zadani modul šifriranja",
|
||||
"Default encryption module for Nextcloud Server-side Encryption (SSE)" : "Zadani modul šifriranja za Nextcloudovo šifriranje na strani poslužitelja (SSE)",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to\n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "Ova aplikacija pruža (zadanu) kriptografsku implementaciju za Nextcloudovu značajku šifriranja na strani poslužitelja (SSE).\n\n\t\t\t**Detalji šifriranja**\n\t\t\t* **Način šifre:** AES-256-CTR (zadano)\n\t\t\t* **Autentikacija:** HMAC-SHA256\n\n\t\t\t**Važna upozorenja**\n\t\t\t* **OPASNOST:** Nemojte onemogućiti ovu aplikaciju dok sve datoteke ne budu dešifrirane (`occ encryption:decrypt-all`).\n\t\t\t* **UPOZORENJE**: Povratak na nešifriranu pohranu datoteka nakon aktivacije zahtijeva pristup naredbenom retku. Ova je radnja trajna putem web-sučelja.\n\n\t\t\t**Napomene za postojeće datoteke**\n\t\t\t* Prema zadanim postavkama, omogućavanje SSE-a ne šifrira postojeće datoteke; šifriraju se samo nove datoteke.\n\t\t\t* Za šifriranje svih postojećih datoteka upotrijebite naredbu `occ encryption:encrypt-all`.\n\n\t\t\t**Prije nego što započnete**\n\t\t\t***Pročitajte dokumentaciju:** Prije omogućavanja SSE-a, šifriranja postojećih datoteka ili onemogućavanja SSE-a,\n\t\t\t\tobavezno pročitajte dokumentaciju kako biste razumjeli posljedice i ispravne postupke te izbjegli gubitak podataka.",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Omogućavanjem ove opcije šifriraju se sve datoteke smještene u glavnoj pohrani, a u protivnom se šifriraju samo datoteke u vanjskoj pohrani",
|
||||
"Encrypt the home storage" : "Šifrirajte kućnu pohranu",
|
||||
"Disable recovery key" : "Onemogući ključ za oporavak",
|
||||
"Enable recovery key" : "Omogući ključ za oporavak",
|
||||
"The recovery key is an additional encryption key used to encrypt files. It is used to recover files from an account if the password is forgotten." : "Ključ za oporavak dodatni je ključ za šifriranje koji se koristi za šifriranje datoteka. Služi za oporavak datoteka s računa ako se zaporka zaboravi.",
|
||||
"Recovery key password" : "Zaporka ključa za oporavak",
|
||||
"Passwords fields do not match" : "Polja zaporki se ne podudaraju",
|
||||
"Repeat recovery key password" : "Ponovite zaporku ključa za oporavak",
|
||||
"An error occurred while updating the recovery key settings. Please try again." : "Došlo je do pogreške prilikom ažuriranja postavki ključa za oporavak. Pokušajte ponovno.",
|
||||
"Change recovery key password" : "Promijenite zaporku ključa za oporavak",
|
||||
"Old recovery key password" : "Stara zaporka ključa za oporavak",
|
||||
"New recovery key password" : "Nova zaporka ključa za oporavak",
|
||||
"Repeat new recovery key password" : "Ponovite novu zaporku ključa za oporavak",
|
||||
"An error occurred while changing the recovery key password. Please try again." : "Došlo je do pogreške prilikom promjene zaporke ključa za oporavak. Pokušajte ponovno.",
|
||||
"Update private key password" : "Ažurirajte zaporku privatnog ključa",
|
||||
"Your private key password no longer matches your log-in password. Set your old private key password to your current log-in password." : "Zaporka vašeg privatnog ključa više se ne podudara s vašom zaporkom za prijavu. Postavite staru zaporku privatnog ključa na svoju trenutačnu zaporku za prijavu.",
|
||||
"If you do not remember your old password you can ask your administrator to recover your files." : "Ako se ne sjećate stare zaporke, možete zatražiti od administratora da oporavi vaše datoteke.",
|
||||
"Old log-in password" : "Stara zaporka za prijavu",
|
||||
"Current log-in password" : "Aktualna zaporka za prijavu",
|
||||
"Update" : "Ažuriraj",
|
||||
"Updating recovery keys. This can take some time…" : "Ažuriranje ključeva za oporavak. Ovo može potrajati…",
|
||||
"Enabling this option will allow you to reobtain access to your encrypted files in case of password loss" : "U slučaju gubitka zaporke, aktiviranje ove mogućnosti ponovno će vam pribaviti pristup vašim šifriranim datotekama",
|
||||
"Enable password recovery" : "Omogući oporavak zaporke",
|
||||
"Default encryption module" : "Zadani modul za šifriranje",
|
||||
"Encryption app is enabled but your keys are not initialized, please log-out and log-in again" : "Aplikacija za šifriranje je omogućena, ali se ključevi nisu inicijalizirali, odjavite se i ponovno se prijavite",
|
||||
"Basic encryption module" : "Osnovni modul za šifriranje",
|
||||
"Missing parameters" : "Nedostaju parametri",
|
||||
"Default encryption module for server-side encryption" : "Zadani modul za šifriranje na poslužitelju",
|
||||
"In order to use this encryption module you need to enable server-side encryption in the admin settings. Once enabled this module will encrypt all your files transparently. The encryption is based on AES 256 keys.\nThe module will not touch existing files, only new files will be encrypted after server-side encryption was enabled. It is also not possible to disable the encryption again and switch back to an unencrypted system.\nPlease read the documentation to know all implications before you decide to enable server-side encryption." : "Kako biste mogli koristiti ovaj modul šifriranja, morate omogućiti šifriranje na strani poslužitelja u administratorskim postavkama. Nakon omogućavanja, ovaj će modul transparentno šifrirati sve vaše datoteke. Šifriranje se temelji na AES 256 ključevima.\nModul neće dirati postojeće datoteke, već će se šifrirati samo nove datoteke nakon što se omogući šifriranje na strani poslužitelja. Također nije moguće ponovno onemogućiti šifriranje i vratiti se na nešifrirani sustav.\nPrije nego što odlučite omogućiti šifriranje na strani poslužitelja, obavezno pročitajte dokumentaciju kako biste razumjeli sve posljedice.",
|
||||
"Change recovery key password:" : "Promijenite zaporku ključa za oporavak:",
|
||||
"Change Password" : "Promijeni zaporku",
|
||||
"Your private key password no longer matches your log-in password." : "Zaporka vašeg privatnog ključa više se ne podudara s vašom zaporkom za prijavu.",
|
||||
@@ -52,6 +70,7 @@
|
||||
"Update Private Key Password" : "Ažuriraj zaporku privatnog ključa",
|
||||
"Enable password recovery:" : "Omogući oporavak zaporke:",
|
||||
"Enabled" : "Omogućeno",
|
||||
"Disabled" : "Onemogućeno"
|
||||
"Disabled" : "Onemogućeno",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to \n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "Ova aplikacija pruža (zadanu) kriptografsku implementaciju za Nextcloudovu značajku šifriranja na strani poslužitelja (SSE).\n\n\t\t\t**Detalji šifriranja**\n\t\t\t* **Način šifre:** AES-256-CTR (zadano)\n\t\t\t* **Autentikacija:** HMAC-SHA256\n\n\t\t\t**Važna upozorenja**\n\t\t\t* **OPASNOST:** Nemojte onemogućiti ovu aplikaciju dok sve datoteke ne budu dešifrirane (`occ encryption:decrypt-all`).\n\t\t\t* **UPOZORENJE:** Povratak na nešifriranu pohranu datoteka nakon aktivacije zahtijeva pristup naredbenom retku. Ova je radnja trajna putem web-sučelja.\"\n\n\t\t\t**Napomene za postojeće datoteke**\n\t\t\t* Prema zadanim postavkama, omogućavanje SSE-a ne šifrira postojeće datoteke; šifriraju se samo nove datoteke.\n\t\t\t* Za šifriranje svih postojećih datoteka upotrijebite naredbu `occ encryption:encrypt-all`.\n\n\t\t\t**Prije nego što započnete**\n\t\t\t* **Pročitajte dokumentaciju:** Prije omogućavanja SSE-a, šifriranja postojećih datoteka ili onemogućavanja SSE-a,\n\t\t\t\tobavezno pročitajte dokumentaciju kako biste razumjeli posljedice i odgovarajuće postupke kako biste izbjegli gubitak podataka."
|
||||
},"pluralForm" :"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"
|
||||
}
|
||||
@@ -11,7 +11,7 @@ OC.L10N.register(
|
||||
"Please provide the old recovery password" : "Mohon berikan kata sandi pemulihan lama",
|
||||
"Please provide a new recovery password" : "Mohon berikan kata sandi pemulihan baru",
|
||||
"Please repeat the new recovery password" : "Silakan ulangi sandi pemulihan baru",
|
||||
"Password successfully changed." : "Kata sandi berhasil diubah",
|
||||
"Password successfully changed." : "Kata sandi berhasil diubah.",
|
||||
"Could not change the password. Maybe the old password was not correct." : "Tidak dapat mengubah kata sandi. Kemungkinan kata sandi lama yang dimasukkan salah.",
|
||||
"Recovery Key disabled" : "Kunci Pemulihan dinonaktifkan",
|
||||
"Recovery Key enabled" : "Kunci Pemulihan diaktifkan",
|
||||
@@ -26,28 +26,45 @@ OC.L10N.register(
|
||||
"Encryption app is enabled and ready" : "Apl enkripsi aktif dan siap",
|
||||
"Bad Signature" : "Tanda salah",
|
||||
"Missing Signature" : "Tanda hilang",
|
||||
"one-time password for server-side-encryption" : "Kata sandi sekali pakai untuk server-side-encryption",
|
||||
"one-time password for server-side-encryption" : "kata sandi sekali pakai untuk server-side-encryption",
|
||||
"Encryption password" : "Sandi enkripsi",
|
||||
"The administration enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>." : "Administrasi mengaktifkan enkripsi sisi server. File Anda dienkripsi menggunakan kata sandi <strong>%s</strong>.",
|
||||
"The administration enabled server-side-encryption. Your files were encrypted using the password \"%s\"." : "Administrasi mengaktifkan enkripsi sisi server. File Anda dienkripsi menggunakan kata sandi \"%s\".",
|
||||
"Please login to the web interface, go to the \"Security\" section of your personal settings and update your encryption password by entering this password into the \"Old login password\" field and your current login password." : "Silakan masuk ke antarmuka web, buka bagian \"Keamanan\" pada pengaturan pribadi Anda, lalu perbarui kata sandi enkripsi Anda dengan memasukkan kata sandi ini ke kolom \"Kata sandi login lama\" serta kata sandi login Anda saat ini.",
|
||||
"Cannot decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Tidak dapat mendekripsi file ini, mungkin ini adalah file bersama. Harap minta pemilik file untuk membagikan ulang file dengan Anda.",
|
||||
"Cannot read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Tidak dapat membaca file ini, mungkin ini adalah file bersama. Harap minta pemilik file untuk membagikan ulang file dengan Anda.",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Mengaktifkan opsi ini akan mengenkripsi semua berkas yang disimpan pada penyimpanan utama, jika tidak diaktifkan maka hanya berkas pada penyimpanan eksternal saja yang akan dienkripsi.",
|
||||
"Default Encryption Module" : "Modul Enkripsi Default",
|
||||
"Default encryption module for Nextcloud Server-side Encryption (SSE)" : "Modul enkripsi default untuk Enkripsi Sisi Server Nextcloud (SSE)",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to\n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "Aplikasi ini menyediakan implementasi kriptografi (default) untuk fitur Enkripsi Sisi Server (SSE) Nextcloud.\n\n\t\t\t**Rincian Enkripsi**\n\t\t\t* **Mode Sandi:** AES-256-CTR (default)\n\t\t\t* **Autentikasi:** HMAC-SHA256\n\n\t\t\t**Peringatan Penting**\n\t\t\t* **BAHAYA:** Jangan menonaktifkan aplikasi ini sampai semua file telah didekripsi (`occ encryption:decrypt-all`).\n\t\t\t* **PERINGATAN**: Mengembalikan penyimpanan file tanpa enkripsi setelah aktivasi memerlukan akses baris perintah. Tindakan ini bersifat permanen melalui UI Web.\"\n\n\t\t\t**Catatan untuk File yang Sudah Ada**\n\t\t\t* Secara default, mengaktifkan SSE tidak mengenkripsi file yang sudah ada; hanya file baru yang akan dienkripsi.\n\t\t\t* Untuk mengenkripsi semua file yang sudah ada, gunakan perintah `occ encryption:encrypt-all`.\n\n\t\t\t**Sebelum Anda Memulai**\n\t\t\t* **Baca Dokumentasi:** Sebelum Anda mengaktifkan SSE, mengenkripsi file yang sudah ada, atau menonaktifkan SSE, sangat penting untuk\n\t\t\t\tmembaca dokumentasi untuk memahami implikasi dan prosedur yang tepat guna menghindari kehilangan data.",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Mengaktifkan opsi ini akan mengenkripsi semua berkas yang disimpan pada penyimpanan utama, jika tidak diaktifkan maka hanya berkas pada penyimpanan eksternal saja yang akan dienkripsi",
|
||||
"Encrypt the home storage" : "Enkripsi penyimpanan rumah",
|
||||
"Disable recovery key" : "Nonaktifkan kunci pemulihan",
|
||||
"Enable recovery key" : "Aktifkan kunci pemulihan",
|
||||
"The recovery key is an additional encryption key used to encrypt files. It is used to recover files from an account if the password is forgotten." : "Kunci pemulihan adalah kunci enkripsi tambahan yang digunakan untuk mengenkripsi file. Kunci ini digunakan untuk memulihkan file dari suatu akun jika kata sandi terlupa.",
|
||||
"Recovery key password" : "Kata sandi kunci pemulihan",
|
||||
"Passwords fields do not match" : "Kolom kata sandi tidak cocok",
|
||||
"Repeat recovery key password" : "Ulangi kata sandi kunci pemulihan",
|
||||
"An error occurred while updating the recovery key settings. Please try again." : "Terjadi kesalahan saat memperbarui pengaturan kunci pemulihan. Silakan coba lagi.",
|
||||
"Change recovery key password" : "Ubah kata sandi kunci pemulihan",
|
||||
"Old recovery key password" : "Kata sandi kunci pemulihan lama",
|
||||
"New recovery key password" : "Kata sandi kunci pemulihan baru",
|
||||
"Repeat new recovery key password" : "Ulangi sandi kunci pemulihan baru",
|
||||
"An error occurred while changing the recovery key password. Please try again." : "Terjadi kesalahan saat mengubah kata sandi kunci pemulihan. Silakan coba lagi.",
|
||||
"Update private key password" : "Perbarui kata sandi kunci privat",
|
||||
"Your private key password no longer matches your log-in password. Set your old private key password to your current log-in password." : "Kata sandi kunci privat Anda tidak lagi cocok dengan kata sandi login Anda. Atur kata sandi kunci privat lama Anda menjadi kata sandi login Anda saat ini.",
|
||||
"If you do not remember your old password you can ask your administrator to recover your files." : "Jika Anda tidak ingat kata sandi lama Anda, Anda dapat meminta administrator Anda untuk memulihkan file Anda.",
|
||||
"Old log-in password" : "Kata sandi masuk yang lama",
|
||||
"Current log-in password" : "Kata sandi masuk saat ini",
|
||||
"Update" : "Perbarui",
|
||||
"Updating recovery keys. This can take some time…" : "Memperbarui kunci pemulihan. Ini dapat memerlukan beberapa waktu…",
|
||||
"Enabling this option will allow you to reobtain access to your encrypted files in case of password loss" : "Mengaktifkan opsi ini memungkinkan Anda untuk mendapatkan kembali akses ke berkas terenkripsi Anda dalam kasus kehilangan kata sandi",
|
||||
"Enable password recovery" : "Aktifkan pemulihan kata sandi",
|
||||
"Default encryption module" : "Modul bawaan enkripsi",
|
||||
"Encryption app is enabled but your keys are not initialized, please log-out and log-in again" : "Aplikasi enkripsi telah diaktifkan tetapi kunci tidak terinisialisasi, silakan log-out dan log-in lagi",
|
||||
"Basic encryption module" : "Modul enkripsi dasar",
|
||||
"Missing parameters" : "Parameter salah",
|
||||
"Default encryption module for server-side encryption" : "Modul enkripsi bawaan pada enkripsi sisi-peladen",
|
||||
"In order to use this encryption module you need to enable server-side encryption in the admin settings. Once enabled this module will encrypt all your files transparently. The encryption is based on AES 256 keys.\nThe module will not touch existing files, only new files will be encrypted after server-side encryption was enabled. It is also not possible to disable the encryption again and switch back to an unencrypted system.\nPlease read the documentation to know all implications before you decide to enable server-side encryption." : "Untuk menggunakan modul enkripsi ini, Anda perlu mengaktifkan enkripsi sisi server di pengaturan admin. Setelah diaktifkan, modul ini akan mengenkripsi semua file Anda secara transparan. Enkripsi ini berbasis kunci AES 256.\nModul ini tidak akan menyentuh file yang sudah ada, hanya file baru yang akan dienkripsi setelah enkripsi sisi server diaktifkan. Selain itu, enkripsi tidak dapat dinonaktifkan lagi dan beralih kembali ke sistem tanpa enkripsi.\nSilakan baca dokumentasi untuk mengetahui semua implikasinya sebelum Anda memutuskan untuk mengaktifkan enkripsi sisi server.",
|
||||
"Change recovery key password:" : "Ubah kata sandi kunci pemulihan:",
|
||||
"Change Password" : "Ubah Sandi",
|
||||
"Your private key password no longer matches your log-in password." : "Kata sandi kunci private Anda tidak lagi cocok dengan kata sandi masuk Anda.",
|
||||
@@ -55,6 +72,7 @@ OC.L10N.register(
|
||||
"Update Private Key Password" : "Perbarui Kata Sandi Kunci Private",
|
||||
"Enable password recovery:" : "Aktifkan kata sandi pemulihan:",
|
||||
"Enabled" : "Diaktifkan",
|
||||
"Disabled" : "Dinonaktifkan"
|
||||
"Disabled" : "Dinonaktifkan",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to \n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "Aplikasi ini menyediakan implementasi kriptografi (default) untuk fitur Enkripsi Sisi Server (SSE) Nextcloud.\n\n\t\t\t**Rincian Enkripsi**\n\t\t\t* **Mode Sandi:** AES-256-CTR (default)\n\t\t\t* **Autentikasi:** HMAC-SHA256\n\n\t\t\t**Peringatan Penting**\n\t\t\t* **BAHAYA:** Jangan menonaktifkan aplikasi ini sampai semua file telah didekripsi (`occ encryption:decrypt-all`).\n\t\t\t* **PERINGATAN**: Mengembalikan penyimpanan file tanpa enkripsi setelah aktivasi memerlukan akses baris perintah. Tindakan ini bersifat permanen melalui UI Web.\"\n\n\t\t\t**Catatan untuk File yang Sudah Ada**\n\t\t\t* Secara default, mengaktifkan SSE tidak mengenkripsi file yang sudah ada; hanya file baru yang akan dienkripsi.\n\t\t\t* Untuk mengenkripsi semua file yang sudah ada, gunakan perintah `occ encryption:encrypt-all`.\n\n\t\t\t**Sebelum Anda Memulai**\n\t\t\t* **Baca Dokumentasi:** Sebelum Anda mengaktifkan SSE, mengenkripsi file yang sudah ada, atau menonaktifkan SSE, sangat penting untuk \n\t\t\t\tmembaca dokumentasi untuk memahami implikasi dan prosedur yang tepat guna menghindari kehilangan data."
|
||||
},
|
||||
"nplurals=1; plural=0;");
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
"Please provide the old recovery password" : "Mohon berikan kata sandi pemulihan lama",
|
||||
"Please provide a new recovery password" : "Mohon berikan kata sandi pemulihan baru",
|
||||
"Please repeat the new recovery password" : "Silakan ulangi sandi pemulihan baru",
|
||||
"Password successfully changed." : "Kata sandi berhasil diubah",
|
||||
"Password successfully changed." : "Kata sandi berhasil diubah.",
|
||||
"Could not change the password. Maybe the old password was not correct." : "Tidak dapat mengubah kata sandi. Kemungkinan kata sandi lama yang dimasukkan salah.",
|
||||
"Recovery Key disabled" : "Kunci Pemulihan dinonaktifkan",
|
||||
"Recovery Key enabled" : "Kunci Pemulihan diaktifkan",
|
||||
@@ -24,28 +24,45 @@
|
||||
"Encryption app is enabled and ready" : "Apl enkripsi aktif dan siap",
|
||||
"Bad Signature" : "Tanda salah",
|
||||
"Missing Signature" : "Tanda hilang",
|
||||
"one-time password for server-side-encryption" : "Kata sandi sekali pakai untuk server-side-encryption",
|
||||
"one-time password for server-side-encryption" : "kata sandi sekali pakai untuk server-side-encryption",
|
||||
"Encryption password" : "Sandi enkripsi",
|
||||
"The administration enabled server-side-encryption. Your files were encrypted using the password <strong>%s</strong>." : "Administrasi mengaktifkan enkripsi sisi server. File Anda dienkripsi menggunakan kata sandi <strong>%s</strong>.",
|
||||
"The administration enabled server-side-encryption. Your files were encrypted using the password \"%s\"." : "Administrasi mengaktifkan enkripsi sisi server. File Anda dienkripsi menggunakan kata sandi \"%s\".",
|
||||
"Please login to the web interface, go to the \"Security\" section of your personal settings and update your encryption password by entering this password into the \"Old login password\" field and your current login password." : "Silakan masuk ke antarmuka web, buka bagian \"Keamanan\" pada pengaturan pribadi Anda, lalu perbarui kata sandi enkripsi Anda dengan memasukkan kata sandi ini ke kolom \"Kata sandi login lama\" serta kata sandi login Anda saat ini.",
|
||||
"Cannot decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Tidak dapat mendekripsi file ini, mungkin ini adalah file bersama. Harap minta pemilik file untuk membagikan ulang file dengan Anda.",
|
||||
"Cannot read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Tidak dapat membaca file ini, mungkin ini adalah file bersama. Harap minta pemilik file untuk membagikan ulang file dengan Anda.",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Mengaktifkan opsi ini akan mengenkripsi semua berkas yang disimpan pada penyimpanan utama, jika tidak diaktifkan maka hanya berkas pada penyimpanan eksternal saja yang akan dienkripsi.",
|
||||
"Default Encryption Module" : "Modul Enkripsi Default",
|
||||
"Default encryption module for Nextcloud Server-side Encryption (SSE)" : "Modul enkripsi default untuk Enkripsi Sisi Server Nextcloud (SSE)",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to\n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "Aplikasi ini menyediakan implementasi kriptografi (default) untuk fitur Enkripsi Sisi Server (SSE) Nextcloud.\n\n\t\t\t**Rincian Enkripsi**\n\t\t\t* **Mode Sandi:** AES-256-CTR (default)\n\t\t\t* **Autentikasi:** HMAC-SHA256\n\n\t\t\t**Peringatan Penting**\n\t\t\t* **BAHAYA:** Jangan menonaktifkan aplikasi ini sampai semua file telah didekripsi (`occ encryption:decrypt-all`).\n\t\t\t* **PERINGATAN**: Mengembalikan penyimpanan file tanpa enkripsi setelah aktivasi memerlukan akses baris perintah. Tindakan ini bersifat permanen melalui UI Web.\"\n\n\t\t\t**Catatan untuk File yang Sudah Ada**\n\t\t\t* Secara default, mengaktifkan SSE tidak mengenkripsi file yang sudah ada; hanya file baru yang akan dienkripsi.\n\t\t\t* Untuk mengenkripsi semua file yang sudah ada, gunakan perintah `occ encryption:encrypt-all`.\n\n\t\t\t**Sebelum Anda Memulai**\n\t\t\t* **Baca Dokumentasi:** Sebelum Anda mengaktifkan SSE, mengenkripsi file yang sudah ada, atau menonaktifkan SSE, sangat penting untuk\n\t\t\t\tmembaca dokumentasi untuk memahami implikasi dan prosedur yang tepat guna menghindari kehilangan data.",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Mengaktifkan opsi ini akan mengenkripsi semua berkas yang disimpan pada penyimpanan utama, jika tidak diaktifkan maka hanya berkas pada penyimpanan eksternal saja yang akan dienkripsi",
|
||||
"Encrypt the home storage" : "Enkripsi penyimpanan rumah",
|
||||
"Disable recovery key" : "Nonaktifkan kunci pemulihan",
|
||||
"Enable recovery key" : "Aktifkan kunci pemulihan",
|
||||
"The recovery key is an additional encryption key used to encrypt files. It is used to recover files from an account if the password is forgotten." : "Kunci pemulihan adalah kunci enkripsi tambahan yang digunakan untuk mengenkripsi file. Kunci ini digunakan untuk memulihkan file dari suatu akun jika kata sandi terlupa.",
|
||||
"Recovery key password" : "Kata sandi kunci pemulihan",
|
||||
"Passwords fields do not match" : "Kolom kata sandi tidak cocok",
|
||||
"Repeat recovery key password" : "Ulangi kata sandi kunci pemulihan",
|
||||
"An error occurred while updating the recovery key settings. Please try again." : "Terjadi kesalahan saat memperbarui pengaturan kunci pemulihan. Silakan coba lagi.",
|
||||
"Change recovery key password" : "Ubah kata sandi kunci pemulihan",
|
||||
"Old recovery key password" : "Kata sandi kunci pemulihan lama",
|
||||
"New recovery key password" : "Kata sandi kunci pemulihan baru",
|
||||
"Repeat new recovery key password" : "Ulangi sandi kunci pemulihan baru",
|
||||
"An error occurred while changing the recovery key password. Please try again." : "Terjadi kesalahan saat mengubah kata sandi kunci pemulihan. Silakan coba lagi.",
|
||||
"Update private key password" : "Perbarui kata sandi kunci privat",
|
||||
"Your private key password no longer matches your log-in password. Set your old private key password to your current log-in password." : "Kata sandi kunci privat Anda tidak lagi cocok dengan kata sandi login Anda. Atur kata sandi kunci privat lama Anda menjadi kata sandi login Anda saat ini.",
|
||||
"If you do not remember your old password you can ask your administrator to recover your files." : "Jika Anda tidak ingat kata sandi lama Anda, Anda dapat meminta administrator Anda untuk memulihkan file Anda.",
|
||||
"Old log-in password" : "Kata sandi masuk yang lama",
|
||||
"Current log-in password" : "Kata sandi masuk saat ini",
|
||||
"Update" : "Perbarui",
|
||||
"Updating recovery keys. This can take some time…" : "Memperbarui kunci pemulihan. Ini dapat memerlukan beberapa waktu…",
|
||||
"Enabling this option will allow you to reobtain access to your encrypted files in case of password loss" : "Mengaktifkan opsi ini memungkinkan Anda untuk mendapatkan kembali akses ke berkas terenkripsi Anda dalam kasus kehilangan kata sandi",
|
||||
"Enable password recovery" : "Aktifkan pemulihan kata sandi",
|
||||
"Default encryption module" : "Modul bawaan enkripsi",
|
||||
"Encryption app is enabled but your keys are not initialized, please log-out and log-in again" : "Aplikasi enkripsi telah diaktifkan tetapi kunci tidak terinisialisasi, silakan log-out dan log-in lagi",
|
||||
"Basic encryption module" : "Modul enkripsi dasar",
|
||||
"Missing parameters" : "Parameter salah",
|
||||
"Default encryption module for server-side encryption" : "Modul enkripsi bawaan pada enkripsi sisi-peladen",
|
||||
"In order to use this encryption module you need to enable server-side encryption in the admin settings. Once enabled this module will encrypt all your files transparently. The encryption is based on AES 256 keys.\nThe module will not touch existing files, only new files will be encrypted after server-side encryption was enabled. It is also not possible to disable the encryption again and switch back to an unencrypted system.\nPlease read the documentation to know all implications before you decide to enable server-side encryption." : "Untuk menggunakan modul enkripsi ini, Anda perlu mengaktifkan enkripsi sisi server di pengaturan admin. Setelah diaktifkan, modul ini akan mengenkripsi semua file Anda secara transparan. Enkripsi ini berbasis kunci AES 256.\nModul ini tidak akan menyentuh file yang sudah ada, hanya file baru yang akan dienkripsi setelah enkripsi sisi server diaktifkan. Selain itu, enkripsi tidak dapat dinonaktifkan lagi dan beralih kembali ke sistem tanpa enkripsi.\nSilakan baca dokumentasi untuk mengetahui semua implikasinya sebelum Anda memutuskan untuk mengaktifkan enkripsi sisi server.",
|
||||
"Change recovery key password:" : "Ubah kata sandi kunci pemulihan:",
|
||||
"Change Password" : "Ubah Sandi",
|
||||
"Your private key password no longer matches your log-in password." : "Kata sandi kunci private Anda tidak lagi cocok dengan kata sandi masuk Anda.",
|
||||
@@ -53,6 +70,7 @@
|
||||
"Update Private Key Password" : "Perbarui Kata Sandi Kunci Private",
|
||||
"Enable password recovery:" : "Aktifkan kata sandi pemulihan:",
|
||||
"Enabled" : "Diaktifkan",
|
||||
"Disabled" : "Dinonaktifkan"
|
||||
"Disabled" : "Dinonaktifkan",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to \n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "Aplikasi ini menyediakan implementasi kriptografi (default) untuk fitur Enkripsi Sisi Server (SSE) Nextcloud.\n\n\t\t\t**Rincian Enkripsi**\n\t\t\t* **Mode Sandi:** AES-256-CTR (default)\n\t\t\t* **Autentikasi:** HMAC-SHA256\n\n\t\t\t**Peringatan Penting**\n\t\t\t* **BAHAYA:** Jangan menonaktifkan aplikasi ini sampai semua file telah didekripsi (`occ encryption:decrypt-all`).\n\t\t\t* **PERINGATAN**: Mengembalikan penyimpanan file tanpa enkripsi setelah aktivasi memerlukan akses baris perintah. Tindakan ini bersifat permanen melalui UI Web.\"\n\n\t\t\t**Catatan untuk File yang Sudah Ada**\n\t\t\t* Secara default, mengaktifkan SSE tidak mengenkripsi file yang sudah ada; hanya file baru yang akan dienkripsi.\n\t\t\t* Untuk mengenkripsi semua file yang sudah ada, gunakan perintah `occ encryption:encrypt-all`.\n\n\t\t\t**Sebelum Anda Memulai**\n\t\t\t* **Baca Dokumentasi:** Sebelum Anda mengaktifkan SSE, mengenkripsi file yang sudah ada, atau menonaktifkan SSE, sangat penting untuk \n\t\t\t\tmembaca dokumentasi untuk memahami implikasi dan prosedur yang tepat guna menghindari kehilangan data."
|
||||
},"pluralForm" :"nplurals=1; plural=0;"
|
||||
}
|
||||
@@ -35,6 +35,7 @@ OC.L10N.register(
|
||||
"Cannot read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Não foi possível ler este arquivo, provavelmente é um arquivo compartilhado. Por favor, solicite ao proprietário do arquivo para recompartilhá-lo com você.",
|
||||
"Default Encryption Module" : "Módulo de Criptografia Padrão",
|
||||
"Default encryption module for Nextcloud Server-side Encryption (SSE)" : "Módulo de criptografia padrão para criptografia do lado do servidor (SSE) do Nextcloud",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to\n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "Este aplicativo fornece a implementação (padrão) de criptografia para o recurso de criptografia do lado do servidor (SSE) do Nextcloud.\n\n\t\t\t**Detalhes da criptografia**\n\t\t\t* **Modo de criptografia:** AES-256-CTR (padrão)\n\t\t\t* **Autenticação:** HMAC-SHA256\n\n\t\t\t**Avisos importantes**\n\t\t\t* **PERIGO:** Não desative este aplicativo até que todos os arquivos tenham sido descriptografados (`occ encryption:decrypt-all`).\n\t\t\t* **AVISO**: Reverter para o armazenamento de arquivos não criptografado após a ativação requer acesso à linha de comando. A ação é permanente através da interface do usuário web.\n\n\t\t\t**Observações sobre arquivos existentes**\n\t\t\t* Por padrão, habilitar o SSE não criptografa os arquivos existentes; apenas os novos arquivos serão criptografados.\n\t\t\t* Para criptografar todos os arquivos existentes, use o comando `occ encryption:encrypt-all`.\n\n\t\t\t**Antes de começar**\n\t\t\t* **Leia a documentação:** Antes de habilitar o SSE, criptografar os arquivos existentes ou desativar o SSE, é fundamental\n\t\t\tler a documentação para entender as implicações e os procedimentos adequados para evitar a perda de dados.",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Ativar essa opção irá criptografar todos os arquivos do armazenamento principal, caso contrário, apenas arquivos no armazenamento externo serão criptografados",
|
||||
"Encrypt the home storage" : "Criptografar a pasta de armazenamento home",
|
||||
"Disable recovery key" : "Dasabilitar chave de recuperação",
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
"Cannot read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Não foi possível ler este arquivo, provavelmente é um arquivo compartilhado. Por favor, solicite ao proprietário do arquivo para recompartilhá-lo com você.",
|
||||
"Default Encryption Module" : "Módulo de Criptografia Padrão",
|
||||
"Default encryption module for Nextcloud Server-side Encryption (SSE)" : "Módulo de criptografia padrão para criptografia do lado do servidor (SSE) do Nextcloud",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to\n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "Este aplicativo fornece a implementação (padrão) de criptografia para o recurso de criptografia do lado do servidor (SSE) do Nextcloud.\n\n\t\t\t**Detalhes da criptografia**\n\t\t\t* **Modo de criptografia:** AES-256-CTR (padrão)\n\t\t\t* **Autenticação:** HMAC-SHA256\n\n\t\t\t**Avisos importantes**\n\t\t\t* **PERIGO:** Não desative este aplicativo até que todos os arquivos tenham sido descriptografados (`occ encryption:decrypt-all`).\n\t\t\t* **AVISO**: Reverter para o armazenamento de arquivos não criptografado após a ativação requer acesso à linha de comando. A ação é permanente através da interface do usuário web.\n\n\t\t\t**Observações sobre arquivos existentes**\n\t\t\t* Por padrão, habilitar o SSE não criptografa os arquivos existentes; apenas os novos arquivos serão criptografados.\n\t\t\t* Para criptografar todos os arquivos existentes, use o comando `occ encryption:encrypt-all`.\n\n\t\t\t**Antes de começar**\n\t\t\t* **Leia a documentação:** Antes de habilitar o SSE, criptografar os arquivos existentes ou desativar o SSE, é fundamental\n\t\t\tler a documentação para entender as implicações e os procedimentos adequados para evitar a perda de dados.",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "Ativar essa opção irá criptografar todos os arquivos do armazenamento principal, caso contrário, apenas arquivos no armazenamento externo serão criptografados",
|
||||
"Encrypt the home storage" : "Criptografar a pasta de armazenamento home",
|
||||
"Disable recovery key" : "Dasabilitar chave de recuperação",
|
||||
|
||||
@@ -35,6 +35,7 @@ OC.L10N.register(
|
||||
"Cannot read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "بۇ ھۆججەتنى ئوقۇيالمايدۇ ، بەلكىم بۇ ئورتاق ھۆججەت بولۇشى مۇمكىن. ھۆججەت ئىگىسىدىن ھۆججەتنى سىز بىلەن ئورتاقلىشىشنى تەلەپ قىلىڭ.",
|
||||
"Default Encryption Module" : "سۈكۈتتىكى شىفىرلاش بۆلىكى",
|
||||
"Default encryption module for Nextcloud Server-side Encryption (SSE)" : "Nextcloud مۇلازىمېتىر تەرەپ شىفىرلاش (SSE) ئۈچۈن سۈكۈتتىكى شىفىرلاش مودۇلى",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to\n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "بۇ ئەپ Nextcloud نىڭ سېرۋېر تەرەپ شىفىرلاش (SSE) ئىقتىدارى ئۈچۈن (ئۆزلۈكىدىن) شىفىرلاش ئىجراسىنى تەمىنلەيدۇ.\n\n\t\t\t**شىفىرلاش تەپسىلاتلىرى**\n\t\t\t* **شىفىر ھالىتى:** AES-256-CTR (ئۆزلۈكىدىن)\n\t\t\t* **ئىشەنچنى جەزملەشتۈرۈش:** HMAC-SHA256\n\n\t\t\t**مۇھىم ئاگاھلاندۇرۇشلار**\n\t\t\t* **خەتەر:** بارلىق ھۆججەتلەر شىفىرلانمىغۇچە بۇ ئەپنى چەكلىمەڭ (`occ encryption:decrypt-all`).\n\t\t\t* **ئاگاھلاندۇرۇش**: ئاكتىپلانغاندىن كېيىن شىفىرلانمىغان ھۆججەت ساقلىغۇچقا قايتىش ئۈچۈن بۇيرۇق قۇرىغا كىرىش كېرەك. بۇ ھەرىكەت تور ئىشلەتكۈچى ئارايۈزى ئارقىلىق مەڭگۈلۈك بولىدۇ.\n\n\t\t\t**مەۋجۇت ھۆججەتلەر ئۈچۈن ئەسكەرتىشلەر**\n\t\t\t* ئۆزلۈكىدىن، SSE نى قوزغىتىش مەۋجۇت ھۆججەتلەرنى شىفىرلىمايدۇ؛ پەقەت يېڭى ھۆججەتلەرلا شىفىرلىنىدۇ.\n\t\t\t* بارلىق مەۋجۇت ھۆججەتلەرنى شىفىرلاش ئۈچۈن، `occ encryption:encrypt-all` بۇيرۇقىنى ئىشلىتىڭ.\n\n\t\t\t**باشلاشتىن بۇرۇن**\n\t\t\t* **ھۆججەتلەرنى ئوقۇڭ:** SSE نى قوزغىتىشتىن، مەۋجۇت ھۆججەتلەرنى شىفىرلاشتىن ياكى SSE نى چەكلەشتىن بۇرۇن، سانلىق مەلۇمات يوقىلىشىنىڭ ئالدىنى ئېلىش ئۈچۈن مۇناسىۋەتلىك تەرتىپلەرنى ۋە ئۇنىڭ ئاقىۋەتلىرىنى چۈشىنىش ئۈچۈن ھۆججەتلەرنى ئوقۇش ناھايىتى مۇھىم.",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "بۇ تاللاشنى قوزغىتىش ئاساسلىق ساقلاش بوشلۇقىدا ساقلانغان بارلىق ھۆججەتلەرنى مەخپىيلەشتۈرىدۇ ، بولمىسا پەقەت سىرتقى ساقلىغۇچتىكى ھۆججەتلەرلا شىفىرلىنىدۇ",
|
||||
"Encrypt the home storage" : "ئۆي ئامبىرىنى مەخپىيلەشتۈرۈڭ",
|
||||
"Disable recovery key" : "ئەسلىگە كەلتۈرۈش ئاچقۇچىنى چەكلەڭ",
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
"Cannot read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "بۇ ھۆججەتنى ئوقۇيالمايدۇ ، بەلكىم بۇ ئورتاق ھۆججەت بولۇشى مۇمكىن. ھۆججەت ئىگىسىدىن ھۆججەتنى سىز بىلەن ئورتاقلىشىشنى تەلەپ قىلىڭ.",
|
||||
"Default Encryption Module" : "سۈكۈتتىكى شىفىرلاش بۆلىكى",
|
||||
"Default encryption module for Nextcloud Server-side Encryption (SSE)" : "Nextcloud مۇلازىمېتىر تەرەپ شىفىرلاش (SSE) ئۈچۈن سۈكۈتتىكى شىفىرلاش مودۇلى",
|
||||
"This app provides the (default) cryptography implementation for Nextcloud's Server-side Encryption (SSE) feature.\n\n\t\t\t**Encryption Details**\n\t\t\t* **Cipher Mode:** AES-256-CTR (default)\n\t\t\t* **Authentication:** HMAC-SHA256\n\n\t\t\t**Important Warnings**\n\t\t\t* **DANGER:** Do not disable this application until all files have been decrypted (`occ encryption:decrypt-all`).\n\t\t\t* **WARNING**: Reverting to non-encrypted file storage after activation requires command-line access. The action is permanent via the Web UI.\"\n\n\t\t\t**Notes for Existing Files**\n\t\t\t* By default, enabling SSE does not encrypt existing files; only new files will be encrypted.\n\t\t\t* To encrypt all existing files, use the command `occ encryption:encrypt-all`.\n\n\t\t\t**Before You Begin**\n\t\t\t* **Read the Documentation:** Before you enable SSE, encrypt existing files, or disable SSE, it is critical to\n\t\t\t\tread the documentation to understand implications and the appropriate procedures to avoid data loss." : "بۇ ئەپ Nextcloud نىڭ سېرۋېر تەرەپ شىفىرلاش (SSE) ئىقتىدارى ئۈچۈن (ئۆزلۈكىدىن) شىفىرلاش ئىجراسىنى تەمىنلەيدۇ.\n\n\t\t\t**شىفىرلاش تەپسىلاتلىرى**\n\t\t\t* **شىفىر ھالىتى:** AES-256-CTR (ئۆزلۈكىدىن)\n\t\t\t* **ئىشەنچنى جەزملەشتۈرۈش:** HMAC-SHA256\n\n\t\t\t**مۇھىم ئاگاھلاندۇرۇشلار**\n\t\t\t* **خەتەر:** بارلىق ھۆججەتلەر شىفىرلانمىغۇچە بۇ ئەپنى چەكلىمەڭ (`occ encryption:decrypt-all`).\n\t\t\t* **ئاگاھلاندۇرۇش**: ئاكتىپلانغاندىن كېيىن شىفىرلانمىغان ھۆججەت ساقلىغۇچقا قايتىش ئۈچۈن بۇيرۇق قۇرىغا كىرىش كېرەك. بۇ ھەرىكەت تور ئىشلەتكۈچى ئارايۈزى ئارقىلىق مەڭگۈلۈك بولىدۇ.\n\n\t\t\t**مەۋجۇت ھۆججەتلەر ئۈچۈن ئەسكەرتىشلەر**\n\t\t\t* ئۆزلۈكىدىن، SSE نى قوزغىتىش مەۋجۇت ھۆججەتلەرنى شىفىرلىمايدۇ؛ پەقەت يېڭى ھۆججەتلەرلا شىفىرلىنىدۇ.\n\t\t\t* بارلىق مەۋجۇت ھۆججەتلەرنى شىفىرلاش ئۈچۈن، `occ encryption:encrypt-all` بۇيرۇقىنى ئىشلىتىڭ.\n\n\t\t\t**باشلاشتىن بۇرۇن**\n\t\t\t* **ھۆججەتلەرنى ئوقۇڭ:** SSE نى قوزغىتىشتىن، مەۋجۇت ھۆججەتلەرنى شىفىرلاشتىن ياكى SSE نى چەكلەشتىن بۇرۇن، سانلىق مەلۇمات يوقىلىشىنىڭ ئالدىنى ئېلىش ئۈچۈن مۇناسىۋەتلىك تەرتىپلەرنى ۋە ئۇنىڭ ئاقىۋەتلىرىنى چۈشىنىش ئۈچۈن ھۆججەتلەرنى ئوقۇش ناھايىتى مۇھىم.",
|
||||
"Enabling this option encrypts all files stored on the main storage, otherwise only files on external storage will be encrypted" : "بۇ تاللاشنى قوزغىتىش ئاساسلىق ساقلاش بوشلۇقىدا ساقلانغان بارلىق ھۆججەتلەرنى مەخپىيلەشتۈرىدۇ ، بولمىسا پەقەت سىرتقى ساقلىغۇچتىكى ھۆججەتلەرلا شىفىرلىنىدۇ",
|
||||
"Encrypt the home storage" : "ئۆي ئامبىرىنى مەخپىيلەشتۈرۈڭ",
|
||||
"Disable recovery key" : "ئەسلىگە كەلتۈرۈش ئاچقۇچىنى چەكلەڭ",
|
||||
|
||||
@@ -9,11 +9,11 @@ declare(strict_types=1);
|
||||
namespace OCA\Encryption\Command;
|
||||
|
||||
use OC\Encryption\Util;
|
||||
use OC\Files\SetupManager;
|
||||
use OCA\Encryption\Crypto\Encryption;
|
||||
use OCP\Files\File;
|
||||
use OCP\Files\Folder;
|
||||
use OCP\Files\IRootFolder;
|
||||
use OCP\Files\ISetupManager;
|
||||
use OCP\Files\NotFoundException;
|
||||
use OCP\IConfig;
|
||||
use OCP\IUser;
|
||||
@@ -34,7 +34,7 @@ class CleanOrphanedKeys extends Command {
|
||||
protected QuestionHelper $questionHelper,
|
||||
private IUserManager $userManager,
|
||||
private Util $encryptionUtil,
|
||||
private SetupManager $setupManager,
|
||||
private ISetupManager $setupManager,
|
||||
private IRootFolder $rootFolder,
|
||||
private LoggerInterface $logger,
|
||||
) {
|
||||
|
||||
@@ -11,10 +11,10 @@ namespace OCA\Encryption\Command;
|
||||
|
||||
use OC\Encryption\Exceptions\DecryptionFailedException;
|
||||
use OC\Files\FileInfo;
|
||||
use OC\Files\SetupManager;
|
||||
use OC\Files\View;
|
||||
use OCA\Encryption\KeyManager;
|
||||
use OCP\Encryption\Exceptions\GenericEncryptionException;
|
||||
use OCP\Files\ISetupManager;
|
||||
use OCP\IUser;
|
||||
use OCP\IUserManager;
|
||||
use Symfony\Component\Console\Command\Command;
|
||||
@@ -27,7 +27,7 @@ class DropLegacyFileKey extends Command {
|
||||
public function __construct(
|
||||
private readonly IUserManager $userManager,
|
||||
private readonly KeyManager $keyManager,
|
||||
private readonly SetupManager $setupManager,
|
||||
private readonly ISetupManager $setupManager,
|
||||
) {
|
||||
parent::__construct();
|
||||
|
||||
|
||||
@@ -8,12 +8,12 @@
|
||||
|
||||
namespace OCA\Encryption\Command;
|
||||
|
||||
use OC\Files\SetupManager;
|
||||
use OC\Files\Storage\Wrapper\Encryption;
|
||||
use OC\Files\View;
|
||||
use OC\ServerNotAvailableException;
|
||||
use OCA\Encryption\Util;
|
||||
use OCP\Encryption\Exceptions\InvalidHeaderException;
|
||||
use OCP\Files\ISetupManager;
|
||||
use OCP\HintException;
|
||||
use OCP\IConfig;
|
||||
use OCP\IUser;
|
||||
@@ -34,7 +34,7 @@ class FixEncryptedVersion extends Command {
|
||||
private readonly IUserManager $userManager,
|
||||
private readonly Util $util,
|
||||
private readonly View $view,
|
||||
private readonly SetupManager $setupManager,
|
||||
private readonly ISetupManager $setupManager,
|
||||
) {
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
@@ -10,7 +10,6 @@ namespace OCA\Encryption\Command;
|
||||
|
||||
use OC\Encryption\Manager;
|
||||
use OC\Encryption\Util;
|
||||
use OC\Files\SetupManager;
|
||||
use OC\Files\Storage\Wrapper\Encryption;
|
||||
use OC\Files\View;
|
||||
use OCP\Encryption\IManager;
|
||||
@@ -19,6 +18,7 @@ use OCP\Files\Config\IUserMountCache;
|
||||
use OCP\Files\File;
|
||||
use OCP\Files\Folder;
|
||||
use OCP\Files\IRootFolder;
|
||||
use OCP\Files\ISetupManager;
|
||||
use OCP\Files\Node;
|
||||
use OCP\IUser;
|
||||
use OCP\IUserManager;
|
||||
@@ -38,7 +38,7 @@ class FixKeyLocation extends Command {
|
||||
private readonly IUserMountCache $userMountCache,
|
||||
private readonly Util $encryptionUtil,
|
||||
private readonly IRootFolder $rootFolder,
|
||||
private readonly SetupManager $setupManager,
|
||||
private readonly ISetupManager $setupManager,
|
||||
IManager $encryptionManager,
|
||||
) {
|
||||
$this->keyRootDirectory = rtrim($this->encryptionUtil->getKeyStorageRoot(), '/');
|
||||
|
||||
@@ -8,9 +8,9 @@ declare(strict_types=1);
|
||||
*/
|
||||
namespace OCA\Encryption\Command;
|
||||
|
||||
use OC\Files\SetupManager;
|
||||
use OC\Files\View;
|
||||
use OCA\Encryption\Util;
|
||||
use OCP\Files\ISetupManager;
|
||||
use OCP\IConfig;
|
||||
use OCP\IUser;
|
||||
use OCP\IUserManager;
|
||||
@@ -27,7 +27,7 @@ class ScanLegacyFormat extends Command {
|
||||
protected readonly IConfig $config,
|
||||
protected readonly QuestionHelper $questionHelper,
|
||||
private readonly IUserManager $userManager,
|
||||
private readonly SetupManager $setupManager,
|
||||
private readonly ISetupManager $setupManager,
|
||||
) {
|
||||
parent::__construct();
|
||||
|
||||
|
||||
@@ -11,12 +11,12 @@ declare(strict_types=1);
|
||||
namespace OCA\Encryption\Crypto;
|
||||
|
||||
use OC\Encryption\Exceptions\DecryptionFailedException;
|
||||
use OC\Files\SetupManager;
|
||||
use OC\Files\View;
|
||||
use OCA\Encryption\KeyManager;
|
||||
use OCA\Encryption\Users\Setup;
|
||||
use OCA\Encryption\Util;
|
||||
use OCP\Files\FileInfo;
|
||||
use OCP\Files\ISetupManager;
|
||||
use OCP\IConfig;
|
||||
use OCP\IL10N;
|
||||
use OCP\IUser;
|
||||
@@ -53,7 +53,7 @@ class EncryptAll {
|
||||
protected readonly QuestionHelper $questionHelper,
|
||||
protected readonly ISecureRandom $secureRandom,
|
||||
protected readonly LoggerInterface $logger,
|
||||
protected readonly SetupManager $setupManager,
|
||||
protected readonly ISetupManager $setupManager,
|
||||
) {
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
|
||||
* SPDX-FileCopyrightText: 2016 ownCloud, Inc.
|
||||
@@ -21,42 +23,32 @@ use Psr\Log\LoggerInterface;
|
||||
use Symfony\Component\Console\Input\InputInterface;
|
||||
use Symfony\Component\Console\Output\OutputInterface;
|
||||
|
||||
/**
|
||||
* Default file content encryption module.
|
||||
*
|
||||
* Implements block-based encryption, decryption, key management,
|
||||
* and access control for user data storage.
|
||||
*
|
||||
* @see \OCP\Encryption\IEncryptionModule for detailed method documentation and contract.
|
||||
*/
|
||||
class Encryption implements IEncryptionModule {
|
||||
public const ID = 'OC_DEFAULT_MODULE';
|
||||
public const DISPLAY_NAME = 'Default encryption module';
|
||||
|
||||
/** @var string */
|
||||
private $cipher;
|
||||
|
||||
/** @var string */
|
||||
private $path;
|
||||
|
||||
/** @var string */
|
||||
private $user;
|
||||
|
||||
private string $cipher;
|
||||
private string $path;
|
||||
private ?string $user;
|
||||
private array $owner;
|
||||
|
||||
/** @var string */
|
||||
private $fileKey;
|
||||
|
||||
/** @var string */
|
||||
private $writeCache;
|
||||
|
||||
/** @var array */
|
||||
private $accessList;
|
||||
|
||||
/** @var boolean */
|
||||
private $isWriteOperation;
|
||||
|
||||
private string $fileKey;
|
||||
private string $writeCache;
|
||||
private array $accessList;
|
||||
private bool $isWriteOperation;
|
||||
private bool $useMasterPassword;
|
||||
|
||||
private bool $useLegacyBase64Encoding = false;
|
||||
|
||||
/** @var int Current version of the file */
|
||||
// Current version of the file
|
||||
private int $version = 0;
|
||||
|
||||
/** @var array remember encryption signature version */
|
||||
private static $rememberVersion = [];
|
||||
// Remember encryption signature version
|
||||
private static array $rememberVersion = [];
|
||||
|
||||
public function __construct(
|
||||
private Crypt $crypt,
|
||||
@@ -72,38 +64,15 @@ class Encryption implements IEncryptionModule {
|
||||
$this->useMasterPassword = $this->util->isMasterKeyEnabled();
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string defining the technical unique id
|
||||
*/
|
||||
public function getId() {
|
||||
public function getId(): string {
|
||||
return self::ID;
|
||||
}
|
||||
|
||||
/**
|
||||
* In comparison to getKey() this function returns a human readable (maybe translated) name
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getDisplayName() {
|
||||
public function getDisplayName(): string {
|
||||
return self::DISPLAY_NAME;
|
||||
}
|
||||
|
||||
/**
|
||||
* start receiving chunks from a file. This is the place where you can
|
||||
* perform some initial step before starting encrypting/decrypting the
|
||||
* chunks
|
||||
*
|
||||
* @param string $path to the file
|
||||
* @param string $user who read/write the file
|
||||
* @param string $mode php stream open mode
|
||||
* @param array $header contains the header data read from the file
|
||||
* @param array $accessList who has access to the file contains the key 'users' and 'public'
|
||||
*
|
||||
* @return array $header contain data as key-value pairs which should be
|
||||
* written to the header, in case of a write operation
|
||||
* or if no additional data is needed return a empty array
|
||||
*/
|
||||
public function begin($path, $user, $mode, array $header, array $accessList) {
|
||||
public function begin(string $path, ?string $user, string $mode, array $header, array $accessList): array {
|
||||
$this->path = $this->getPathToRealFile($path);
|
||||
$this->accessList = $accessList;
|
||||
$this->user = $user;
|
||||
@@ -111,7 +80,6 @@ class Encryption implements IEncryptionModule {
|
||||
$this->writeCache = '';
|
||||
$this->useLegacyBase64Encoding = true;
|
||||
|
||||
|
||||
if (isset($header['encoding'])) {
|
||||
$this->useLegacyBase64Encoding = $header['encoding'] !== Crypt::BINARY_ENCODING_FORMAT;
|
||||
}
|
||||
@@ -124,7 +92,7 @@ class Encryption implements IEncryptionModule {
|
||||
}
|
||||
}
|
||||
|
||||
/* If useLegacyFileKey is not specified in header, auto-detect, to be safe */
|
||||
// If useLegacyFileKey is not specified in header, auto-detect, to be safe
|
||||
$useLegacyFileKey = (($header['useLegacyFileKey'] ?? '') == 'false' ? false : null);
|
||||
|
||||
$this->fileKey = $this->keyManager->getFileKey($this->path, $useLegacyFileKey, $this->session->decryptAllModeActivated());
|
||||
@@ -178,19 +146,10 @@ class Encryption implements IEncryptionModule {
|
||||
}
|
||||
|
||||
/**
|
||||
* last chunk received. This is the place where you can perform some final
|
||||
* operation and return some remaining data if something is left in your
|
||||
* buffer.
|
||||
*
|
||||
* @param string $path to the file
|
||||
* @param string $position
|
||||
* @return string remained data which should be written to the file in case
|
||||
* of a write operation
|
||||
* @throws PublicKeyMissingException
|
||||
* @throws \Exception
|
||||
* @throws MultiKeyEncryptException
|
||||
*/
|
||||
public function end($path, $position = '0') {
|
||||
public function end(string $path, string $blockId = '0'): string {
|
||||
$result = '';
|
||||
if ($this->isWriteOperation) {
|
||||
// in case of a part file we remember the new signature versions
|
||||
@@ -201,7 +160,7 @@ class Encryption implements IEncryptionModule {
|
||||
self::$rememberVersion[$this->stripPartFileExtension($path)] = $this->version + 1;
|
||||
}
|
||||
if (!empty($this->writeCache)) {
|
||||
$result = $this->crypt->symmetricEncryptFileContent($this->writeCache, $this->fileKey, $this->version + 1, $position);
|
||||
$result = $this->crypt->symmetricEncryptFileContent($this->writeCache, $this->fileKey, $this->version + 1, $blockId);
|
||||
$this->writeCache = '';
|
||||
}
|
||||
$publicKeys = [];
|
||||
@@ -239,22 +198,12 @@ class Encryption implements IEncryptionModule {
|
||||
return $result ?: '';
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* encrypt data
|
||||
*
|
||||
* @param string $data you want to encrypt
|
||||
* @param int $position
|
||||
* @return string encrypted data
|
||||
*/
|
||||
public function encrypt($data, $position = 0) {
|
||||
public function encrypt(string $data, string $blockId = '0'): string {
|
||||
// If extra data is left over from the last round, make sure it
|
||||
// is integrated into the next block
|
||||
if ($this->writeCache) {
|
||||
// Concat writeCache to start of $data
|
||||
$data = $this->writeCache . $data;
|
||||
|
||||
// Clear the write cache, ready for reuse - it has been
|
||||
// flushed and its old contents processed
|
||||
$this->writeCache = '';
|
||||
@@ -286,7 +235,12 @@ class Encryption implements IEncryptionModule {
|
||||
// Read the chunk from the start of $data
|
||||
$chunk = substr($data, 0, $this->getUnencryptedBlockSize(true));
|
||||
|
||||
$encrypted .= $this->crypt->symmetricEncryptFileContent($chunk, $this->fileKey, $this->version + 1, (string)$position);
|
||||
$encrypted .= $this->crypt->symmetricEncryptFileContent(
|
||||
$chunk,
|
||||
$this->fileKey,
|
||||
$this->version + 1,
|
||||
$blockId
|
||||
);
|
||||
|
||||
// Remove the chunk we just processed from
|
||||
// $data, leaving only unprocessed data in $data
|
||||
@@ -298,15 +252,7 @@ class Encryption implements IEncryptionModule {
|
||||
return $encrypted;
|
||||
}
|
||||
|
||||
/**
|
||||
* decrypt data
|
||||
*
|
||||
* @param string $data you want to decrypt
|
||||
* @param int|string $position
|
||||
* @return string decrypted data
|
||||
* @throws DecryptionFailedException
|
||||
*/
|
||||
public function decrypt($data, $position = 0) {
|
||||
public function decrypt(string $data, string $blockId = '0'): string {
|
||||
if (empty($this->fileKey)) {
|
||||
$msg = 'Cannot decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you.';
|
||||
$hint = $this->l->t('Cannot decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you.');
|
||||
@@ -315,18 +261,17 @@ class Encryption implements IEncryptionModule {
|
||||
throw new DecryptionFailedException($msg, $hint);
|
||||
}
|
||||
|
||||
return $this->crypt->symmetricDecryptFileContent($data, $this->fileKey, $this->cipher, $this->version, $position, !$this->useLegacyBase64Encoding);
|
||||
return $this->crypt->symmetricDecryptFileContent(
|
||||
$data,
|
||||
$this->fileKey,
|
||||
$this->cipher,
|
||||
$this->version,
|
||||
$blockId,
|
||||
!$this->useLegacyBase64Encoding
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* update encrypted file, e.g. give additional users access to the file
|
||||
*
|
||||
* @param string $path path to the file which should be updated
|
||||
* @param string $uid ignored
|
||||
* @param array $accessList who has access to the file contains the key 'users' and 'public'
|
||||
* @return bool
|
||||
*/
|
||||
public function update($path, $uid, array $accessList) {
|
||||
public function update(string $path, ?string $uid, array $accessList): bool {
|
||||
if (empty($accessList)) {
|
||||
if (isset(self::$rememberVersion[$path])) {
|
||||
$this->keyManager->setVersion($path, self::$rememberVersion[$path], new View());
|
||||
@@ -370,13 +315,7 @@ class Encryption implements IEncryptionModule {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* should the file be encrypted or not
|
||||
*
|
||||
* @param string $path
|
||||
* @return boolean
|
||||
*/
|
||||
public function shouldEncrypt($path) {
|
||||
public function shouldEncrypt(string $path): bool {
|
||||
if ($this->util->shouldEncryptHomeStorage() === false) {
|
||||
$storage = $this->util->getStorage($path);
|
||||
if ($storage && $storage->instanceOfStorage('\OCP\Files\IHomeStorage')) {
|
||||
@@ -402,25 +341,20 @@ class Encryption implements IEncryptionModule {
|
||||
}
|
||||
|
||||
/**
|
||||
* get size of the unencrypted payload per block.
|
||||
* Nextcloud read/write files with a block size of 8192 byte
|
||||
* Get size of the unencrypted payload per block.
|
||||
* Nextcloud reads/writes files with a block size of 8192 byte.
|
||||
*
|
||||
* Encrypted blocks have a 22-byte IV and 2 bytes of padding, encrypted and
|
||||
* Encrypted blocks have a 22-byte IV and 2 bytes of padding; encrypted and
|
||||
* signed blocks have also a 71-byte signature and 1 more byte of padding,
|
||||
* resulting respectively in:
|
||||
*
|
||||
* 8192 - 22 - 2 = 8168 bytes in each unsigned unencrypted block
|
||||
* 8192 - 22 - 2 - 71 - 1 = 8096 bytes in each signed unencrypted block
|
||||
* 8192 - 22 - 2 = 8168 bytes (in each unsigned unencrypted block
|
||||
* 8192 - 22 - 2 - 71 - 1 = 8096 bytes (in each signed unencrypted block)
|
||||
*
|
||||
* Legacy base64 encoding then reduces the available size by a 3/4 factor:
|
||||
*
|
||||
* 8168 * (3/4) = 6126 bytes in each base64-encoded unsigned unencrypted block
|
||||
* 8096 * (3/4) = 6072 bytes in each base64-encoded signed unencrypted block
|
||||
*
|
||||
* @param bool $signed
|
||||
* @return int
|
||||
* 8168 * (3/4) = 6126 bytes (in each base64-encoded unsigned unencrypted block)
|
||||
* 8096 * (3/4) = 6072 bytes (in each base64-encoded signed unencrypted block)
|
||||
*/
|
||||
public function getUnencryptedBlockSize($signed = false) {
|
||||
public function getUnencryptedBlockSize(bool $signed = false): int {
|
||||
if ($this->useLegacyBase64Encoding) {
|
||||
return $signed ? 6072 : 6126;
|
||||
} else {
|
||||
@@ -428,16 +362,7 @@ class Encryption implements IEncryptionModule {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* check if the encryption module is able to read the file,
|
||||
* e.g. if all encryption keys exists
|
||||
*
|
||||
* @param string $path
|
||||
* @param string $uid user for whom we want to check if they can read the file
|
||||
* @return bool
|
||||
* @throws DecryptionFailedException
|
||||
*/
|
||||
public function isReadable($path, $uid) {
|
||||
public function isReadable(string $path, ?string $uid): bool {
|
||||
$fileKey = $this->keyManager->getFileKey($path, null);
|
||||
if (empty($fileKey)) {
|
||||
$owner = $this->util->getOwner($path);
|
||||
@@ -458,37 +383,36 @@ class Encryption implements IEncryptionModule {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Initial encryption of all files
|
||||
*
|
||||
* @param InputInterface $input
|
||||
* @param OutputInterface $output write some status information to the terminal during encryption
|
||||
*/
|
||||
public function encryptAll(InputInterface $input, OutputInterface $output) {
|
||||
public function encryptAll(InputInterface $input, OutputInterface $output): void {
|
||||
$this->encryptAll->encryptAll($input, $output);
|
||||
}
|
||||
|
||||
/**
|
||||
* prepare module to perform decrypt all operation
|
||||
*
|
||||
* @param InputInterface $input
|
||||
* @param OutputInterface $output
|
||||
* @param string $user
|
||||
* @return bool
|
||||
*/
|
||||
public function prepareDecryptAll(InputInterface $input, OutputInterface $output, $user = '') {
|
||||
public function prepareDecryptAll(InputInterface $input, OutputInterface $output, string $user = ''): bool {
|
||||
return $this->decryptAll->prepare($input, $output, $user);
|
||||
}
|
||||
|
||||
public function isReadyForUser(string $user): bool {
|
||||
if ($this->util->isMasterKeyEnabled()) {
|
||||
return true;
|
||||
}
|
||||
return $this->keyManager->userHasKeys($user);
|
||||
}
|
||||
|
||||
public function needDetailedAccessList(): bool {
|
||||
return !$this->util->isMasterKeyEnabled();
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $path
|
||||
* @return string
|
||||
* Converts a versions file path to its canonical user file path.
|
||||
*
|
||||
* @param string $path File path (may be a versions path)
|
||||
* @return string Canonical file path
|
||||
*/
|
||||
protected function getPathToRealFile($path) {
|
||||
protected function getPathToRealFile(string $path): string {
|
||||
$realPath = $path;
|
||||
$parts = explode('/', $path);
|
||||
if ($parts[2] === 'files_versions') {
|
||||
// e.g., "/user/files_versions/document.txt.v1234567890" --> "/user/files/document.txt"
|
||||
$realPath = '/' . $parts[1] . '/files/' . implode('/', array_slice($parts, 3));
|
||||
$length = strrpos($realPath, '.');
|
||||
$realPath = substr($realPath, 0, $length);
|
||||
@@ -498,13 +422,13 @@ class Encryption implements IEncryptionModule {
|
||||
}
|
||||
|
||||
/**
|
||||
* remove .part file extension and the ocTransferId from the file to get the
|
||||
* original file name
|
||||
* Removes the .part extension and ocTransferId from a part file path,
|
||||
* returning the original file name.
|
||||
*
|
||||
* @param string $path
|
||||
* @return string
|
||||
* @param string $path File path, possibly with .part extension and ocTransferId
|
||||
* @return string Original file path without temporary upload markers
|
||||
*/
|
||||
protected function stripPartFileExtension($path) {
|
||||
protected function stripPartFileExtension(string $path): string {
|
||||
if (pathinfo($path, PATHINFO_EXTENSION) === 'part') {
|
||||
$pos = strrpos($path, '.', -6);
|
||||
$path = substr($path, 0, $pos);
|
||||
@@ -514,41 +438,15 @@ class Encryption implements IEncryptionModule {
|
||||
}
|
||||
|
||||
/**
|
||||
* get owner of a file
|
||||
* Returns and caches the storage owner for a given file path.
|
||||
*
|
||||
* @param string $path
|
||||
* @return string
|
||||
* @param string $path File path
|
||||
* @return string User id of file owner
|
||||
*/
|
||||
protected function getOwner($path) {
|
||||
protected function getOwner(string $path): string {
|
||||
if (!isset($this->owner[$path])) {
|
||||
$this->owner[$path] = $this->util->getOwner($path);
|
||||
}
|
||||
return $this->owner[$path];
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if the module is ready to be used by that specific user.
|
||||
* In case a module is not ready - because e.g. key pairs have not been generated
|
||||
* upon login this method can return false before any operation starts and might
|
||||
* cause issues during operations.
|
||||
*
|
||||
* @param string $user
|
||||
* @return boolean
|
||||
* @since 9.1.0
|
||||
*/
|
||||
public function isReadyForUser($user) {
|
||||
if ($this->util->isMasterKeyEnabled()) {
|
||||
return true;
|
||||
}
|
||||
return $this->keyManager->userHasKeys($user);
|
||||
}
|
||||
|
||||
/**
|
||||
* We only need a detailed access list if the master key is not enabled
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function needDetailedAccessList() {
|
||||
return !$this->util->isMasterKeyEnabled();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,7 +10,6 @@ namespace OCA\Encryption\Listeners;
|
||||
|
||||
use OC\Core\Events\BeforePasswordResetEvent;
|
||||
use OC\Core\Events\PasswordResetEvent;
|
||||
use OC\Files\SetupManager;
|
||||
use OCA\Encryption\KeyManager;
|
||||
use OCA\Encryption\Services\PassphraseService;
|
||||
use OCA\Encryption\Session;
|
||||
@@ -18,9 +17,8 @@ use OCA\Encryption\Users\Setup;
|
||||
use OCA\Encryption\Util;
|
||||
use OCP\EventDispatcher\Event;
|
||||
use OCP\EventDispatcher\IEventListener;
|
||||
use OCP\Files\ISetupManager;
|
||||
use OCP\IUser;
|
||||
use OCP\IUserManager;
|
||||
use OCP\IUserSession;
|
||||
use OCP\Lockdown\ILockdownManager;
|
||||
use OCP\User\Events\BeforePasswordUpdatedEvent;
|
||||
use OCP\User\Events\PasswordUpdatedEvent;
|
||||
@@ -40,9 +38,7 @@ class UserEventsListener implements IEventListener {
|
||||
private Setup $userSetup,
|
||||
private Session $session,
|
||||
private KeyManager $keyManager,
|
||||
private IUserManager $userManager,
|
||||
private IUserSession $userSession,
|
||||
private SetupManager $setupManager,
|
||||
private ISetupManager $setupManager,
|
||||
private PassphraseService $passphraseService,
|
||||
private ILockdownManager $lockdownManager,
|
||||
) {
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user