Compare commits

...

346 Commits

Author SHA1 Message Date
Robin Appelman cf851a3901 fix: handle shares for which the source is deleted when checking if rename target is shared
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-04-10 16:58:23 +02:00
Anna 9e0e53707f Merge pull request #52085 from nextcloud/bugfix/noid/fix-cached-return-of-display-name
fix(federation): Fix returning "no display name" after cache result
2025-04-10 11:38:22 +02:00
Alexander Piskun 0a474e5ccd Merge pull request #52050 from nextcloud/fix/noid/taskprocessing-appapi
fix(taskprocessing): use the event for AppAPI to get list of AI providers
2025-04-10 10:22:25 +03:00
Joas Schilling d8744f84e8 fix(federation): Fix returning "no display name" after cache result
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-04-10 09:20:27 +02:00
Kate e94fe91cd1 Merge pull request #52082 from nextcloud/default-navigation-reuse 2025-04-10 08:27:03 +02:00
Nextcloud bot 6c8047ac69 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-04-10 00:22:46 +00:00
Robin Appelman aa34f2f457 fix: reuse default navigation entry when updating navigation entries
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-04-09 18:39:42 +02:00
John Molakvoæ 319216c9a7 Merge pull request #52075 from nextcloud/fix/sharing-error-catch
fix(files_sharing): fix share creation error handling
2025-04-09 17:21:54 +02:00
nextcloud-command 309d568558 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-04-09 14:54:29 +00:00
skjnldsv 70218dc0a4 fix(files_sharing): fix share creation error handling
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-04-09 14:52:42 +00:00
Joas Schilling 8357469557 Merge pull request #52070 from nextcloud/test/noid/improve-test-output
test: Improve comments manager test output in case of failure
2025-04-09 16:08:19 +02:00
Oleksander Piskun c23ab0d1f7 fix(taskprocessing): use the event for AppAPI to get list of AI providers
Signed-off-by: Oleksander Piskun <oleksandr2088@icloud.com>
2025-04-09 15:47:48 +03:00
Robin Appelman b82245ddea Merge pull request #52045 from nextcloud/shared-target-verify-cache
fix: more optimized caching for share target verification
2025-04-09 14:35:55 +02:00
Joas Schilling e2cd436205 test: Improve comments manager test output in case of failure
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-04-09 13:49:16 +02:00
Julius Knorr 455fb740d0 Merge pull request #52066 from nextcloud/perf/noid/dont-load-addressbook-on-resolving-cloudid
fix(federation): Don't load the addressbook when resolving a cloud ID
2025-04-09 12:33:38 +02:00
Joas Schilling 6a3c53def3 fix(federation): Don't load the addressbook when resolving a cloud ID
Instead we delay the lookup of the display name until it is actually used

Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-04-09 10:52:03 +02:00
Kate 3808f86c88 Merge pull request #52062 from nextcloud/revert/52035 2025-04-09 10:10:58 +02:00
Joas Schilling 8358a7f769 Revert "refactor(RichObjectStrings): Only log error if key or value is not string in validator"
This reverts commit fd156d3408.

Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-04-09 08:35:56 +02:00
Nextcloud bot edeccc897f Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-04-09 00:23:28 +00:00
Joas Schilling 86981bf05d Merge pull request #52019 from nextcloud/bugfix/noid/only-check-to-cleanup-chunks-once
fix(dav): Really only run the chunk cleanup once
2025-04-08 23:02:08 +02:00
John Molakvoæ dd32639fa9 Merge pull request #51838 from nextcloud/feat/cleanup-oc-util-methods
Mark all methods of OC_Util as deprecated
2025-04-08 21:47:31 +02:00
Côme Chilliet 6efd9b7511 fix: add more details in documented alternatives
Co-authored-by: Louis <louis@chmn.me>
Signed-off-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
2025-04-08 17:56:14 +02:00
Robin Appelman bcbf0e76a7 fix: more optimized caching for share target verification
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-04-08 16:42:01 +02:00
Ferdinand Thiessen 90a3928cdb Merge pull request #52013 from nextcloud/handle-missing-share-providers-when-promoting-reshares
fix: Handle missing share providers when promoting reshares
2025-04-08 15:33:37 +02:00
Robin Appelman 5cc942905a Merge pull request #52008 from nextcloud/fix/cache-hit-getFirstNodeById
fix: Proper order for checking path prefix for getting file by id from cache
2025-04-08 14:43:46 +02:00
Kate 065a976bd5 Merge pull request #52014 from nextcloud/fix/fix-movie-preview-construct
fix(preview): Fix constructor parameter name and default value
2025-04-08 14:38:17 +02:00
Kate ba2b7789b6 Merge pull request #52035 from nextcloud/fix/richobjectstrings/validator-string-key-value-error
refactor(RichObjectStrings): Only log error if key or value is not string in validator
2025-04-08 13:17:02 +02:00
provokateurin fd156d3408 refactor(RichObjectStrings): Only log error if key or value is not string in validator
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-04-08 11:45:36 +02:00
Benjamin Gaussorgues 59444784f2 Merge pull request #52015 from nextcloud/feat/larger_ipv6_range
feat(ip): use larger IPv6 range by default
2025-04-08 11:15:30 +02:00
Joas Schilling 95eeb9f298 Merge pull request #52020 from nextcloud/automated/noid/master-update-code-signing-crl
[master] fix(security): Update code signing revocation list
2025-04-08 10:35:03 +02:00
nextcloud-command 10505dd7e6 fix(security): Update code signing revocation list
Signed-off-by: GitHub <noreply@github.com>
2025-04-08 08:27:23 +00:00
Benjamin Gaussorgues c4021c8d38 feat(ip): use larger IPv6 range by default
Some providers assign `/48` IPv6 blocks instead of `/64` so it sounds safer
to use this mask by default.

Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
2025-04-08 10:08:28 +02:00
Joas Schilling a8be6314ae fix(dav): Really only run the chunk cleanup once
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-04-08 09:59:20 +02:00
Côme Chilliet 3ca690a9f3 fix(previews): Cleanup Movie provider code and remove deprecated static vars
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-04-08 09:53:02 +02:00
Côme Chilliet 85934d4d79 fix(preview): Fix constructor parameter name and default value
This should fix tests for movie preview provider

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-04-08 09:24:04 +02:00
Côme Chilliet baa79a9c40 fix(cypress): Handle password confirmation dialog at the right time
According to failed CI it shows up earlier than expected when deleting a user

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-04-08 09:21:53 +02:00
Julius Knorr 7ff80cc016 fix: Catch old cached paths and fetch the new one
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-04-08 09:17:35 +02:00
John Molakvoæ ae0bb4eaa2 Merge pull request #51945 from nextcloud/chore/psalm-test
chore: test that all apps are covered by psalm
2025-04-08 08:35:59 +02:00
Daniel Calviño Sánchez 10019955f1 fix: Handle missing share providers when promoting reshares
The provider for mail shares is not available when the "sharebymail" app
is disabled, and in that case a "ProviderException" is thrown when
trying to get it.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-04-08 07:20:31 +02:00
Nextcloud bot 815d985470 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-04-08 00:23:11 +00:00
Julius Knorr 7fa3f89ef9 fix: Proper order for checking path prefix for getting file by id from cache
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-04-07 20:47:11 +02:00
Ferdinand Thiessen 403c33a640 Merge pull request #52005 from nextcloud/fix/l10n-placeholder
fix(l10n): put placeholder like string into variable
2025-04-07 19:20:13 +02:00
Ferdinand Thiessen 5211448940 fix(l10n): put placeholder like string into variable
Otherwise this is wrongly handled by our translation community.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-07 18:39:40 +02:00
Ferdinand Thiessen bdf1a24c2f Merge pull request #51946 from nextcloud/perf/capa
perf(cloud_federation_api): only provide capabilities if needed
2025-04-07 18:35:13 +02:00
Côme Chilliet b42a13f5df chore: Update psalm baseline
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-04-07 18:22:13 +02:00
Ferdinand Thiessen f540a69bf8 Merge pull request #51524 from nextcloud/fix/webpack-nonce
fix: adjust webpack nonce generation
2025-04-07 17:57:33 +02:00
Côme Chilliet 59edcdc537 fix: Fix types for sharingDisabledForUser
and use the non-deprecated version whenever possible

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-04-07 17:36:24 +02:00
Côme Chilliet 943bb775d9 fix: Put back isHtaccessWorking method in Setup where it is used
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-04-07 17:05:54 +02:00
Côme Chilliet b2100484c0 fix: Remove some call and references to deprecated OC_Util class
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-04-07 17:05:54 +02:00
Côme Chilliet b20f74a95b chore(legacy): Flag methods as deprecated, with appropriate replacement
when possible.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-04-07 17:05:54 +02:00
Côme Chilliet 09dcc87f05 chore(legacy): Remove unused protected method in OC_Util
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-04-07 17:05:54 +02:00
Côme Chilliet fd59e02a24 chore(legacy): Officially deprecate OC_Util and remove non-static methods
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-04-07 17:05:54 +02:00
Ferdinand Thiessen 39dc22b9dd Merge pull request #51937 from nextcloud/perf/filter-propfind
perf(files_sharing): do not emit second propfind for account filter
2025-04-07 15:57:21 +02:00
Stephan Orbaugh b94ea69f5e Merge pull request #51712 from invario/master
Enhancement: Better previews for HDR video (attempt #2)
2025-04-07 15:26:10 +02:00
Louis 13af20ab3b Merge pull request #51837 from nextcloud/artonge/chore/increase_log_in_trashbin
chore(files_trashbin): Add user details in log from Trashbin
2025-04-07 15:00:27 +02:00
nextcloud-command 76a88d8c3c chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-04-07 12:51:13 +00:00
Ferdinand Thiessen 47734c26f3 fix: adjust webpack nonce generation
some leftovers where the request token is used instead of the CSP nonce.
in general this makes not much difference - but there are some cases
where those values differ.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-07 14:44:53 +02:00
Ferdinand Thiessen 16188cd767 chore: adjust copyright year
Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-07 14:40:37 +02:00
Ferdinand Thiessen 7b321ba4f2 fix(profile): ensure correct base address
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-07 14:40:37 +02:00
Ferdinand Thiessen 4a64cf54ba ci: test that all apps are enabled for psalm
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-07 14:40:37 +02:00
Ferdinand Thiessen 1e8870e3f8 Merge pull request #51927 from nextcloud/fix/tags-events
fix(systemtags): emit assign and unassign bulk tagging events
2025-04-07 14:39:21 +02:00
Louis Chemineau b90c7b36fb chore(files_trashbin): Add user details in log from Trashbin
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-04-07 12:48:55 +02:00
Daniel 07278d264c Merge pull request #51944 from nextcloud/fix/missing-import
fix(files_reminders): add missing import
2025-04-07 11:38:55 +02:00
Ferdinand Thiessen c0212af7fa chore: lint files_reminders using psalm
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-07 10:56:16 +02:00
Ferdinand Thiessen d79070c639 fix(files_reminders): add l10n to constructor of setup check
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-07 10:56:16 +02:00
Ferdinand Thiessen a68204971b fix(files_reminders): add missing import
- Resolves https://github.com/nextcloud/server/issues/51943

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-07 10:56:16 +02:00
Kate 7d8a073b9c Merge pull request #51982 from nextcloud/revert/email-setting-migration
Revert "refactor: add migration for email setting"
2025-04-07 10:19:34 +02:00
Ferdinand Thiessen 1ef94153b8 Merge pull request #51942 from nextcloud/fix/require-update-if-mtime-is-null
fix(cache): always require updates if mtime is null
2025-04-07 10:17:02 +02:00
provokateurin 8da9c0f48c Revert "refactor: add migration for email setting"
This reverts commit e7859f0dac.

Signed-off-by: provokateurin <kate@provokateurin.de>
2025-04-07 09:55:09 +02:00
Kate a42563f9ed Merge pull request #51715 from nextcloud/allowUnderCustLink
fix(dav): Allow underscores on custom links
2025-04-07 09:48:15 +02:00
Kate 9bc946ac50 Merge pull request #51933 from nextcloud/fix/master-template-layout
fix: ensure enabled (enforced) themes are always set on template layout
2025-04-07 09:10:09 +02:00
Ferdinand Thiessen d8ff056491 Merge pull request #51752 from nextcloud/backport/50121/master
fix(theming): enforce theme also for login
2025-04-07 09:07:45 +02:00
Joas Schilling 554dfbbdda Merge pull request #51967 from nextcloud/automated/noid/master-update-code-signing-crl
[master] fix(security): Update code signing revocation list
2025-04-07 07:58:32 +02:00
nextcloud-command 263755850e fix(security): Update code signing revocation list
Signed-off-by: GitHub <noreply@github.com>
2025-04-07 02:37:02 +00:00
invario eb3ca406f8 feat(previews): fix casing and comments
Co-authored-by: Côme Chilliet <91878298+come-nc@users.noreply.github.com>
Signed-off-by: invario <67800603+invario@users.noreply.github.com>
2025-04-06 20:28:12 -04:00
Nextcloud bot 86627d5999 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-04-07 00:22:43 +00:00
Nextcloud bot cd633498da Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-04-06 00:22:20 +00:00
John Molakvoæ 2570766043 Merge pull request #51954 from nextcloud/dependabot/npm_and_yarn/moment-timezone-0.5.48
build(deps): bump moment-timezone from 0.5.47 to 0.5.48
2025-04-05 10:49:53 +02:00
nextcloud-command 6dee4d77c6 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-04-05 08:47:25 +00:00
dependabot[bot] 6231d45690 build(deps): bump moment-timezone from 0.5.47 to 0.5.48
Bumps [moment-timezone](https://github.com/moment/moment-timezone) from 0.5.47 to 0.5.48.
- [Release notes](https://github.com/moment/moment-timezone/releases)
- [Changelog](https://github.com/moment/moment-timezone/blob/develop/changelog.md)
- [Commits](https://github.com/moment/moment-timezone/compare/0.5.47...0.5.48)

---
updated-dependencies:
- dependency-name: moment-timezone
  dependency-version: 0.5.48
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-05 10:43:59 +02:00
John Molakvoæ 21334e41f5 Merge pull request #51955 from nextcloud/dependabot/npm_and_yarn/stylelint-16.17.0
build(deps-dev): bump stylelint from 16.9.0 to 16.17.0
2025-04-05 10:33:37 +02:00
John Molakvoæ 737222b9b6 Merge pull request #51952 from nextcloud/dependabot/npm_and_yarn/typescript-5.8.3
build(deps-dev): bump typescript from 5.8.2 to 5.8.3
2025-04-05 10:29:09 +02:00
John Molakvoæ be0e46abcb Merge pull request #51337 from nextcloud/dependabot/npm_and_yarn/core-js-3.41.0
build(deps): bump core-js from 3.40.0 to 3.41.0
2025-04-05 10:27:13 +02:00
dependabot[bot] 39d39120bd Merge pull request #51949 from nextcloud/dependabot/npm_and_yarn/dockerode-4.0.5 2025-04-05 02:12:27 +00:00
dependabot[bot] efc9beb179 build(deps-dev): bump stylelint from 16.9.0 to 16.17.0
Bumps [stylelint](https://github.com/stylelint/stylelint) from 16.9.0 to 16.17.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/16.9.0...16.17.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-version: 16.17.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-05 01:20:01 +00:00
dependabot[bot] 1bc6f99b27 build(deps-dev): bump typescript from 5.8.2 to 5.8.3
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.8.2 to 5.8.3.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release-publish.yml)
- [Commits](https://github.com/microsoft/TypeScript/commits)

---
updated-dependencies:
- dependency-name: typescript
  dependency-version: 5.8.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-05 01:19:10 +00:00
dependabot[bot] 284cce3d19 build(deps-dev): bump dockerode from 4.0.4 to 4.0.5
Bumps [dockerode](https://github.com/apocas/dockerode) from 4.0.4 to 4.0.5.
- [Release notes](https://github.com/apocas/dockerode/releases)
- [Commits](https://github.com/apocas/dockerode/compare/v4.0.4...v4.0.5)

---
updated-dependencies:
- dependency-name: dockerode
  dependency-version: 4.0.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-05 01:18:09 +00:00
Nextcloud bot 7b37a58fcc Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-04-05 00:22:20 +00:00
dependabot[bot] efd47e7350 Merge pull request #51947 from nextcloud/dependabot/npm_and_yarn/vite-6.2.5 2025-04-04 16:12:02 +00:00
dependabot[bot] b729109a17 build(deps): bump vite from 6.2.4 to 6.2.5
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.2.4 to 6.2.5.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v6.2.5/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.2.5/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 6.2.5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-04 15:55:41 +00:00
Ferdinand Thiessen 63052522a2 perf(cloud_federation_api): only provide capabilities if needed
The capabilities can be quite expensive (e.g. on ARM board it takes 1s
per request only for the capabilities).
Also they are not used by the webui so they should not be included in
initial state.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-04 17:07:24 +02:00
Ferdinand Thiessen 3a09acebd2 fix(cache): always require updates if mtime is null
- Resolves https://github.com/nextcloud/server/issues/51941

Due to strong typings we introduced the parameter needs to be an
integer. Previously it was `null` which was equal to `0`.
So if there is no storage mtime we need to update the cache.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-04 13:41:32 +02:00
Ferdinand Thiessen 3688ba9f95 chore: compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-04 11:21:08 +02:00
Ferdinand Thiessen c5043ce889 perf(files_sharing): do not require second propfind for account filter
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-04 11:21:08 +02:00
Ferdinand Thiessen cfdd691f28 fix: ensure enabled (enforced) themes are always set on template layout
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-04 10:16:34 +02:00
John Molakvoæ (skjnldsv) 8e81c1772b fix(systemtags): emit assign and unassign bulk tagging events
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2025-04-04 04:33:36 +02:00
Nextcloud bot a35f4b16ac Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-04-04 00:22:38 +00:00
Ferdinand Thiessen 0c51b09005 Merge pull request #51921 from nextcloud/usermountcache-logging
feat: add debug logging for adding/removing items from the user mounts cache
2025-04-04 00:21:14 +02:00
Robin Appelman c3f06b370c feat: add debug logging for adding/removing items from the user mounts cache
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-04-03 17:58:46 +02:00
invario 91e2f05ee6 feat(previews): Clean up code for HDR video previews
Signed-off-by: invario <67800603+invario@users.noreply.github.com>
2025-04-03 11:08:04 -04:00
Arthur Schiwon 8079584483 Merge pull request #50783 from nextcloud/fix/49909/workflow-vue-compat
fix(workflowengine): require a web component as operation plugin
2025-04-03 13:20:19 +02:00
Arthur Schiwon d3d842a818 build(workflowengine): compile assets
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-04-03 12:48:15 +02:00
Arthur Schiwon a419fc532c style(vue): satisfy linter
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-04-03 12:40:48 +02:00
Arthur Schiwon 7afdce6e9d fix: properly set value in FileMimeType
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-04-03 12:40:48 +02:00
Arthur Schiwon 04e78dbc77 refactor: remove mixing from FileMimeType as it is bad practice
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-04-03 12:40:48 +02:00
Arthur Schiwon 7449bb77fb fix(workflowengine): adapt check operator RequestUserGroup to use web component
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-04-03 12:40:48 +02:00
Arthur Schiwon 22cdc6da81 fix(workflowengine): adapt check operator RequestUserAgent to use web component
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-04-03 12:40:48 +02:00
Arthur Schiwon f88ea21ddc fix(workflowengine): adapt check operator RequestTime to use web component
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-04-03 12:40:48 +02:00
Arthur Schiwon c24ead810d fix(workflowengine): adapt check operator RequestURL to use web component
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-04-03 12:40:48 +02:00
Arthur Schiwon 5fbe00870b fix(workflowengine): use adapted mixin again in FileMimeType
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-04-03 12:40:48 +02:00
Arthur Schiwon eaf0268230 fix(workflowengine): minimally adapt check operator FileMimeType to use web component
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-04-03 12:40:48 +02:00
Arthur Schiwon 492fa1e24c fix(workflowengine): adapt check operator FileSystemTag to use web component
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-04-03 12:40:46 +02:00
Arthur Schiwon 3e03793e61 fix(workflowengine): require a web component as check plugin
Similar case as with operator plugins (check previous commit). Although we
are not aware of an existign problem, it is there in principle, and
asjusting the API we stay consistent with that one from the operations.

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-04-03 12:38:51 +02:00
Arthur Schiwon 96bd54b3ed fix(workflowengine): require a web component as operation plugin
solves an incompatibility issue when the providing app registers their code
from an incompatible nextcloud-vue version.

Also changes and clarifies WorkflowEngine API. This is necessary to stay
compatible with the original way, but also promotes usage of the originally
declared but never used "component" attribute on registration.

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2025-04-03 12:38:51 +02:00
Côme Chilliet 12d32ee2ea Merge pull request #51836 from nextcloud/feat/cleanup-oc-util
chore(legacy): Remove deprecated OC_Util::addScript and functions depending on it
2025-04-03 12:26:57 +02:00
Ferdinand Thiessen 8f6386d0d9 Merge pull request #51905 from nextcloud/fix/session/permanent-token-app-password
fix(session): Only mark sessions of permanent tokens as app passwords
2025-04-03 11:31:30 +02:00
Ferdinand Thiessen 07f4c10919 Merge pull request #51861 from nextcloud/artonge/fix/catch_exception_in_expire_trash
fix: Catch exceptions when expiring trashbin
2025-04-03 11:16:21 +02:00
nextcloud-command 311bad6a4a chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-04-03 08:33:24 +00:00
dependabot[bot] 443b49f4e4 build(deps): bump core-js from 3.40.0 to 3.41.0
Bumps [core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js) from 3.40.0 to 3.41.0.
- [Release notes](https://github.com/zloirock/core-js/releases)
- [Changelog](https://github.com/zloirock/core-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/zloirock/core-js/commits/v3.41.0/packages/core-js)

---
updated-dependencies:
- dependency-name: core-js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-04-03 08:21:40 +00:00
Christoph Wurst 5003467f98 fix(session): Only mark sessions of permanent tokens as app passwords
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2025-04-03 10:08:15 +02:00
dependabot[bot] 4c7e31f83b Merge pull request #51887 from nextcloud/dependabot/npm_and_yarn/libphonenumber-js-1.12.6 2025-04-03 07:28:13 +00:00
dependabot[bot] e7fce36ae4 build(deps): bump libphonenumber-js from 1.11.18 to 1.12.6
Bumps [libphonenumber-js](https://gitlab.com/catamphetamine/libphonenumber-js) from 1.11.18 to 1.12.6.
- [Changelog](https://gitlab.com/catamphetamine/libphonenumber-js/blob/master/CHANGELOG.md)
- [Commits](https://gitlab.com/catamphetamine/libphonenumber-js/compare/v1.11.18...v1.12.6)

---
updated-dependencies:
- dependency-name: libphonenumber-js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-04-03 07:11:40 +00:00
John Molakvoæ fff96486cd Merge pull request #51745 from nextcloud/fix/settings/email-change-restriction
fix(settings): Handle email change restriction separately from display name change restriction
2025-04-03 08:19:37 +02:00
invario e3008d08be feat(previews): Use proper colorspace and apply tonemap for HDR videos
Signed-off-by: KT <invario@gmail.com>
2025-04-03 00:36:33 -04:00
Nextcloud bot 5fe858927e Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-04-03 00:23:17 +00:00
Robin Appelman 587e7c5358 Merge pull request #51010 from nextcloud/uploadfolder-rework
fix: rework UploadFolder implementation
2025-04-02 22:59:02 +02:00
dependabot[bot] 7c329da3cd Merge pull request #51641 from nextcloud/dependabot/npm_and_yarn/vitest-3.0.9 2025-04-02 19:44:29 +00:00
dependabot[bot] cee46d3767 build(deps-dev): bump vitest from 3.0.8 to 3.0.9
Bumps [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) from 3.0.8 to 3.0.9.
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Commits](https://github.com/vitest-dev/vitest/commits/v3.0.9/packages/vitest)

---
updated-dependencies:
- dependency-name: vitest
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-02 21:29:02 +02:00
John Molakvoæ a6245befc8 Merge pull request #51883 from nextcloud/dependabot/npm_and_yarn/puppeteer-24.5.0
build(deps-dev): bump puppeteer from 24.4.0 to 24.5.0
2025-04-02 20:47:28 +02:00
John Molakvoæ 7b6aa1e0d1 Merge pull request #51882 from nextcloud/dependabot/composer/build/integration/behat/behat-3.20.0
build(deps-dev): bump behat/behat from 3.19.0 to 3.20.0 in /build/integration
2025-04-02 20:31:21 +02:00
dependabot[bot] e0054def6e build(deps-dev): bump puppeteer from 24.4.0 to 24.5.0
Bumps [puppeteer](https://github.com/puppeteer/puppeteer) from 24.4.0 to 24.5.0.
- [Release notes](https://github.com/puppeteer/puppeteer/releases)
- [Changelog](https://github.com/puppeteer/puppeteer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/puppeteer/puppeteer/compare/puppeteer-v24.4.0...puppeteer-v24.5.0)

---
updated-dependencies:
- dependency-name: puppeteer
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-02 18:10:45 +00:00
dependabot[bot] 654dd66515 build(deps-dev): bump behat/behat in /build/integration
Bumps [behat/behat](https://github.com/Behat/Behat) from 3.19.0 to 3.20.0.
- [Release notes](https://github.com/Behat/Behat/releases)
- [Changelog](https://github.com/Behat/Behat/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Behat/Behat/compare/v3.19.0...v3.20.0)

---
updated-dependencies:
- dependency-name: behat/behat
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-02 18:10:42 +00:00
John Molakvoæ 097e25fd7e Merge pull request #51881 from nextcloud/skjnldsv-patch-1
chore: bump dependabot npm `open-pull-requests-limit` to 20
2025-04-02 20:08:26 +02:00
John Molakvoæ ac918056db Merge pull request #51771 from nextcloud/fix/files-hidden-summary
fix(files): show hidden files and folders count in summary
2025-04-02 20:08:22 +02:00
nextcloud-command 8805260913 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-04-02 17:45:33 +00:00
skjnldsv 9c5e464111 fix(files): show hidden files and folders count in summary
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-04-02 17:40:50 +00:00
Ferdinand Thiessen 088e5e6e7b fix(theming): enforce theme also for login
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-02 19:37:52 +02:00
John Molakvoæ cd71887243 chore: bump dependabot npm open-pull-requests-limit to 20
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
2025-04-02 19:33:20 +02:00
John Molakvoæ 09e200dde4 Merge pull request #47648 from nextcloud/fix/line-height-calc
refactor(style): Remove repeated semicolon
2025-04-02 19:31:12 +02:00
Ferdinand Thiessen e659f2ce07 Merge pull request #51870 from nextcloud/artonge/fix/use_loginname_to_check_password
fix: Use login name to check the password
2025-04-02 19:20:39 +02:00
Christopher Ng 9f7d69fc30 refactor(style): Remove repeated semicolon
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-04-02 19:18:36 +02:00
nextcloud-command 7157787017 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-04-02 17:13:01 +00:00
Ferdinand Thiessen e7859f0dac refactor: add migration for email setting
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-02 19:06:25 +02:00
provokateurin eb98e99530 fix(settings): Handle email change restriction separately from display name change restriction
Co-authored-by: provokateurin <kate@provokateurin.de>
Co-authored-by: Ferdinand Thiessen <opensource@fthiessen.de>
Co-authored-by: Louis <louis@chmn.me>
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-02 19:06:25 +02:00
Ferdinand Thiessen 18d4888ca9 Merge pull request #51876 from nextcloud/depskjnldsv/vue
chore(deps): update `@nextcloud/vue` to `8.24.0`
2025-04-02 19:06:08 +02:00
Ferdinand Thiessen cf44f5e8fd Merge pull request #51848 from nextcloud/remove-scrutinizer
chore: remove scrutinizer
2025-04-02 18:57:37 +02:00
nextcloud-command d90dea202e chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-04-02 16:47:20 +00:00
skjnldsv 99714916b6 chore(dav): update vitest snapshots
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-04-02 18:21:23 +02:00
skjnldsv 1bfe473007 chore(files): remove popover workaround after vue lib update
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-04-02 17:44:41 +02:00
skjnldsv 07655844e8 chore(deps): update @nextcloud/vue to 8.24.0
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-04-02 17:41:37 +02:00
John Molakvoæ 90b8838dee Merge pull request #51863 from nextcloud/fix/files-actions-menu-position
fix(files): right click actions menu flicker
2025-04-02 17:36:31 +02:00
Louis Chemineau 0a585b0048 fix: Catch exceptions when expiring trashbin
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-04-02 17:04:06 +02:00
John Molakvoæ d3583ea4d8 Merge pull request #51874 from nextcloud/fix/codeowners
chore: adjust CODEOWNERS
2025-04-02 16:46:56 +02:00
nextcloud-command 2f58abb449 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-04-02 14:41:40 +00:00
Ferdinand Thiessen 3d1ecb8994 chore: adjust CODEOWNERS
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-02 16:40:03 +02:00
skjnldsv ab0a6f0e00 fix(files): right click actions menu flicker
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-04-02 14:39:45 +00:00
Louis Chemineau 3bff9ee3e1 fix: Use login name to check the password
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-04-02 15:50:05 +02:00
Daniel Kesselberg f8a45703d7 chore: remove scrutinizer
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2025-04-02 15:27:26 +02:00
Robin Appelman f7d5edfb5f Merge pull request #51866 from nextcloud/migrations-to-execute-filter-sort
fix: use proper migration sorting when checking if a migration needs to be executed
2025-04-02 14:52:18 +02:00
Robin Appelman fc2cda12b5 fix: use proper migration sorting when checking if a migration needs to be executed
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-04-02 14:29:08 +02:00
Ferdinand Thiessen f3761c5bd6 Merge pull request #51567 from nextcloud/chore/consistent-naming
refactor(IMimeTypeDetector): use consistent capitalization
2025-04-02 14:05:03 +02:00
Andy Scherzinger 1632cf5af2 Merge pull request #51852 from nextcloud/fix/user-login-with-cookie-e2ee
fix(encryption): init keys also when logged in using cookie auth
2025-04-02 13:31:00 +02:00
Ferdinand Thiessen 97ad171d32 refactor(IMimeTypeDetector): use consistent capitalization
- use consistantly `mimeType` as it is called MIME type
- fix issues where implementation and interface had different parameter
  names (this is an issue since PHP has named parameters).

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-02 13:22:16 +02:00
Louis Chemineau 9677cb86cb chore: Use iterator in ExpireTrash command
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-04-02 12:44:54 +02:00
Nextcloud bot 82b1b4d0c4 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-04-02 00:23:10 +00:00
Ferdinand Thiessen a3c2600386 fix(encryption): init keys also when logged in using cookie auth
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-04-02 00:06:10 +02:00
Ferdinand Thiessen fdc0b1ecf4 Merge pull request #51845 from nextcloud/zip-download-no-sabre-response
fix: don't have sabre/dav send it's own reponse if we already send the zip response
2025-04-01 19:26:04 +02:00
Robin Appelman 2b0116f0eb fix: don't have sabre/dav send it's own reponse if we already send the zip response
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-04-01 17:29:58 +02:00
Louis 29a4962268 Merge pull request #51760 from nextcloud/artonge/fix/make_error_a_info
fix(files_reminders): Lower disabled notifications app error to info
2025-04-01 17:08:35 +02:00
Joas Schilling d4b805c88a Merge pull request #51800 from gavine99/deterministic-notification-manager
notification manager deterministic app call order
2025-04-01 16:52:19 +02:00
Richard Steinmetz 15d04b1ef1 Merge pull request #50858 from nextcloud/fix/oauth2/retain-legacy-oc-client-support
fix(oauth2): retain support for legacy ownCloud clients
2025-04-01 16:36:50 +02:00
Côme Chilliet e467ea1c6a chore(legacy): Remove deprecated OC_Util::addScript and functions depending on it
Deprecated since 24, currently unused.
Sadly not all related functions were officially marked as deprecated,
 but all of them were unused.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-04-01 15:24:24 +02:00
Louis Chemineau 776c103c36 fix(files_reminder): Replace error log by setup check
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-04-01 15:19:43 +02:00
Louis Chemineau 04d49452b8 fix(files_reminders): Lower disabled notifications app error to info
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-04-01 14:34:25 +02:00
gavine99 ed6d76ec8d fix(notifications): Change notification app orders
The notification manager always calls notify() of the 'main' notifications app
before other notify apps, and calls other functions for other notifications apps
before the 'main' notification app

Signed-off-by: gavine99 <github@xymail.tk>
2025-04-01 12:27:24 +02:00
Richard Steinmetz 246da73a36 fix(oauth2): retain support for legacy ownCloud clients
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-04-01 11:25:52 +02:00
Côme Chilliet b03ffab5f0 Merge pull request #51824 from nextcloud/dependabot/github_actions/github-actions-e6e62c2646
build(deps): bump the github-actions group with 4 updates
2025-04-01 10:47:10 +02:00
Nextcloud bot c029616ec0 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-04-01 00:23:11 +00:00
dependabot[bot] 9a8a11a8a7 build(deps): bump the github-actions group with 4 updates
Bumps the github-actions group with 4 updates: [actions/setup-node](https://github.com/actions/setup-node), [cypress-io/github-action](https://github.com/cypress-io/github-action), [actions/upload-artifact](https://github.com/actions/upload-artifact) and [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request).


Updates `actions/setup-node` from 4.2.0 to 4.3.0
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a...cdca7365b2dadb8aad0a33bc7601856ffabcc48e)

Updates `cypress-io/github-action` from 6.7.14 to 6.7.16
- [Release notes](https://github.com/cypress-io/github-action/releases)
- [Changelog](https://github.com/cypress-io/github-action/blob/master/CHANGELOG.md)
- [Commits](https://github.com/cypress-io/github-action/compare/9c318d4f950c2f0ff2e96fa4dc4279e5706efd8e...108b8684ae52e735ff7891524cbffbcd4be5b19f)

Updates `actions/upload-artifact` from 4.6.1 to 4.6.2
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1...ea165f8d65b6e75b540449e92b4886f43607fa02)

Updates `peter-evans/create-pull-request` from 7.0.7 to 7.0.8
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/dd2324fc52d5d43c699a5636bcf19fceaa70c284...271a8d0340265f705b14b6d32b9829c1cb33d45e)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: 4.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: cypress-io/github-action
  dependency-version: 6.7.16
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: actions/upload-artifact
  dependency-version: 4.6.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: peter-evans/create-pull-request
  dependency-version: 7.0.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 23:28:29 +00:00
dependabot[bot] 86ce08aabd Merge pull request #51822 from nextcloud/dependabot/npm_and_yarn/vite-6.2.4 2025-03-31 18:52:24 +00:00
dependabot[bot] 85531fae3d build(deps): bump vite from 6.2.3 to 6.2.4
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.2.3 to 6.2.4.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v6.2.4/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.2.4/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 18:37:23 +00:00
rakekniven e3e7df6bf8 Merge pull request #51816 from nextcloud/rakekniven-patch-1
chore(i18n): Aligned spelling of "sub admin"
2025-03-31 17:54:26 +02:00
Christoph Wurst e655ffeb43 Merge pull request #50768 from nextcloud/perf/cron/delay-timedjob-checking
perf(cron): Delay (re)checking timed jobs
2025-03-31 17:31:44 +02:00
Christoph Wurst 12e66badc4 Merge pull request #51686 from nextcloud/fix/template/implement-itemplate
fix(template): implement ITemplate directly
2025-03-31 17:11:30 +02:00
nextcloud-command a33aa5f808 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-03-31 15:05:28 +00:00
rakekniven 741bcfc994 chore(i18n): Aligned grammar
Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2025-03-31 16:58:07 +02:00
rakekniven e43a8b473c chore(i18n): Aligned grammar
Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2025-03-31 16:58:07 +02:00
Joas Schilling aee2f2df55 Merge pull request #51768 from nextcloud/techdebt/noid/prepare-phpunit10
fix(phpunit10): Migrate away from PHPUnit at() calls
2025-03-31 16:04:41 +02:00
Robin Appelman 874c283d48 Merge pull request #51603 from nextcloud/object-store-orphan
Add command to list orphan objects
2025-03-31 14:55:04 +02:00
Robin Appelman 7ce06f47c8 feat: move streaming output helps to command base class
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-03-31 14:30:42 +02:00
Robin Appelman 7d9655d889 feat: rework object listing
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-03-31 14:30:41 +02:00
Robin Appelman f17cf83e16 feat: add command to list orphan objects
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-03-31 14:30:41 +02:00
Robin Appelman fcde776683 feat: add command to list objects
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-03-31 14:30:40 +02:00
Robin Appelman c3bc362f48 feat: add command to get object metadata
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-03-31 14:30:40 +02:00
Robin Appelman ccaa463b30 Merge pull request #51399 from nextcloud/share-list-cmd
add command to list shares
2025-03-31 14:29:38 +02:00
Richard Steinmetz c50c09315a fix(template): implement ITemplate directly
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2025-03-31 14:19:17 +02:00
Ferdinand Thiessen 5b98b6ea44 Merge pull request #51798 from nextcloud/automated/noid/master-fix-npm-audit
[master] Fix npm audit
2025-03-31 14:12:54 +02:00
Marcel Klehr fd76252c3f Merge pull request #51750 from nextcloud/fix/mkcol-quota-exceeded-response
fix(dav): Give proper HTTP status code on MKCOL when quota exceeded
2025-03-31 13:46:20 +02:00
Christoph Wurst 2395526e6c perf(cron): Delay (re)checking timed jobs
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2025-03-31 13:21:29 +02:00
Côme Chilliet d5ad9b86ef Merge pull request #51676 from nextcloud/fix/add-getappversions-replacement
Add OC_App::getAppVersions replacement in IAppManager
2025-03-31 10:51:00 +02:00
Marcel Klehr 14cd98c989 fix(dav): Give proper HTTP status code on MKCOL when quota exceeded
Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-03-31 10:49:11 +02:00
Joas Schilling 522be60ff0 fix(phpunit): Remove some more withConsecutive calls
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-03-31 09:43:22 +02:00
Nextcloud bot 444fca0359 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-03-31 00:23:28 +00:00
nextcloud-command 5f043a1ddf fix(deps): Fix npm audit
Signed-off-by: GitHub <noreply@github.com>
2025-03-30 18:20:49 +00:00
Andy Scherzinger 9e76e4256a Merge pull request #51498 from nextcloud/dependabot/npm_and_yarn/dockerode-4.0.4
build(deps-dev): bump dockerode from 4.0.2 to 4.0.4
2025-03-30 16:17:39 +02:00
dependabot[bot] 434934a6f9 build(deps-dev): bump dockerode from 4.0.2 to 4.0.4
Bumps [dockerode](https://github.com/apocas/dockerode) from 4.0.2 to 4.0.4.
- [Release notes](https://github.com/apocas/dockerode/releases)
- [Commits](https://github.com/apocas/dockerode/compare/v4.0.2...v4.0.4)

---
updated-dependencies:
- dependency-name: dockerode
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-30 15:16:54 +02:00
Nextcloud bot a54f534797 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-03-30 12:36:45 +00:00
Andy Scherzinger 988b9c479d Merge pull request #51600 from nextcloud/artonge/feat/allow_partial_seen_users
feat: Limit `ExpireTrash` job to 30 minutes
2025-03-30 13:01:07 +02:00
Louis Chemineau bd9a2eba76 feat: Limit trash expire job to 30 minutes
And pick up where it left off, leveraging getSeenUsers.

Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-03-30 08:54:41 +02:00
Louis Chemineau 22e02d1c1e chore: Refactor callForSeenUsers to use getSeenUsers
Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-03-30 08:54:41 +02:00
Louis Chemineau 275b32d513 feat: Implement getSeenUsers to iterate over users
This method uses an iterator.
This is lighter on resources and gives more control to the caller

Signed-off-by: Louis Chemineau <louis@chmn.me>
2025-03-30 08:54:41 +02:00
Nextcloud bot efa7d59ce9 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-03-30 00:23:24 +00:00
dependabot[bot] 57c71f8b9b Merge pull request #51789 from nextcloud/dependabot/composer/build/integration/guzzlehttp/guzzle-7.9.3 2025-03-29 03:13:11 +00:00
dependabot[bot] e9ec5d12c1 chore(deps-dev): bump guzzlehttp/guzzle in /build/integration
Bumps [guzzlehttp/guzzle](https://github.com/guzzle/guzzle) from 7.9.2 to 7.9.3.
- [Release notes](https://github.com/guzzle/guzzle/releases)
- [Changelog](https://github.com/guzzle/guzzle/blob/7.9/CHANGELOG.md)
- [Commits](https://github.com/guzzle/guzzle/compare/7.9.2...7.9.3)

---
updated-dependencies:
- dependency-name: guzzlehttp/guzzle
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-29 02:41:52 +00:00
Nextcloud bot f908ebfd71 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-03-29 00:22:52 +00:00
Pytal 4a9bd9bb6d Merge pull request #51336 from nextcloud/perf/paginate-filter-groups
fix(settings): Fix infinitely loading account management page with pagination of groups
2025-03-28 14:54:21 -07:00
nextcloud-command 437146b9f7 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-03-28 21:21:59 +00:00
Christopher Ng 1d0ae0ccdf test(settings): Fix group items not being found
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:17:53 -07:00
Christopher Ng c617f2631a test(settings): Correctly find group in select
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:17:53 -07:00
Christopher Ng 7b47c5aa06 test(settings): Wait until groups list has loaded
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:17:53 -07:00
Christopher Ng b9b44caed4 fix(settings): Separate subadmin options
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:17:53 -07:00
Christopher Ng f46f36b89d fix(settings): Fix initialization of store
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:17:53 -07:00
Christopher Ng 06dbcde4bf fix(settings): Preserve system groups on reset
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:17:53 -07:00
Christopher Ng e2c2419f42 chore(openapi): Update spec
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:17:53 -07:00
Christopher Ng 7c976a9605 fix(settings): Natural order groups
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng eb60f6a7ba fix(settings): Fix duplicated group options in new account dialog
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng d32b76b9d4 fix(settings): Fix duplicated group options when editing account
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng 82f0957563 fix(settings): Fix group creation in new account dialog
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng b093eff36c fix(settings): Fix group creation when editing users
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng 6edbeb7052 fix(settings): Only change usercount if group can be found
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng 31ffa337bd fix(settings): Fix editing groups and subadmin groups of user
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng 7e4d26457c feat(provisioning_api): Add endpoint for fetching user subadmin groups with details
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng 8e0f5075e4 fix(settings): Fix erroneous hiding of group admin column with paginated groups
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng a5885d46b6 fix(settings): Prevent selection of invalid groups that are not fully loaded
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng d32f2c761e fix(settings): Fix loaded groups being undefined
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng 374197c721 chore(settings): Add note on groups sorting
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng bf01685f3c refactor(settings): Consolidate group formatting
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng a1bf497b22 perf(settings): Make scrolling smooth when a large number of groups are rendered
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng 1c7ea50087 fix(settings): Allow searching for groups in new account dialog
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng ace13ca64f fix(settings): Allow searching for groups in user row
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng 8a3a38815f perf(settings): Cancel request on new search
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng a1a4988c27 feat(provisioning_api): Add endpoint for fetching user groups with details
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng fcf42c4f86 fix(settings): Fix infinitely loading account management page with pagination of groups
- Includes searching

Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Christopher Ng 2bd1d16157 perf(settings): Remove computation of all groups
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-28 14:12:52 -07:00
Robin Appelman b9723eaa22 feat: remove share status from share:list as it doesn't seem to contain usefull info at the moment
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-03-28 16:47:10 +01:00
Robin Appelman 9626c08786 fix: set share status for federated shares
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-03-28 16:47:10 +01:00
Robin Appelman c573867fff feat: add command to list shares
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-03-28 16:47:09 +01:00
Robin Appelman 2e9222a29a feat: add getParentId to ICacheEntry
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-03-28 16:47:07 +01:00
Maksim Sukharev 48b23e5521 Merge pull request #51598 from nextcloud/fix/51506/mdast-util-gfm-autolink-literal-override
fix(deps): lock mdast-util-gfm-autolink-literal library to exact version 2.0.0
2025-03-28 11:25:16 +01:00
nextcloud-command 3396298971 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-03-28 09:42:30 +00:00
Maksim Sukharev d028b61a40 fix(deps): lock mdast-util-gfm-autolink-literal library to exact version 2.0.0
- this reverts changes from patch update to 2.0.1, which uses 'negative lookbehind' regex and breaks in IOS & Safari versions < 16.4

Signed-off-by: Maksim Sukharev <antreesy.web@gmail.com>
2025-03-28 10:37:50 +01:00
Sebastian Krupinski b5291bfd44 Merge pull request #51501 from nextcloud/fix/noid-add-status-and-set-attendee-status
fix: add event status and participant status
2025-03-28 08:11:49 +00:00
SebastianKrupinski 2de6d6b908 fix: add event status and participant status
Signed-off-by: SebastianKrupinski <krupinskis05@gmail.com>
2025-03-28 03:48:48 -04:00
John Molakvoæ d40cebb1c7 Merge pull request #51630 from nextcloud/feat/47176/show-share-expiry
feat: Add share expiration indicator
2025-03-28 07:53:39 +01:00
Nextcloud bot dd6a0ebd48 Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-03-28 00:23:27 +00:00
Andy Scherzinger d2773cf992 Merge pull request #51707 from nextcloud/fix/filter-empty-email
fix: filter out contacts with empty email addresses in sharee completion
2025-03-28 00:14:07 +01:00
Ferdinand Thiessen 9ccb70174c fix: Adjust data provider name
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-03-27 23:24:48 +01:00
Joas Schilling 5a167fdfd8 fix(phpunit10): Migrate away from PHPUnit at() calls
Signed-off-by: Joas Schilling <coding@schilljs.com>
2025-03-27 23:23:56 +01:00
nextcloud-command cb16efd391 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-03-27 19:03:26 +00:00
nfebe b8cab3af57 feat(files_sharing): Show share expiration time in human friendly manner
Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-03-27 19:56:05 +01:00
nfebe e9ce055076 feat(files_sharing): Add share expiration indicator
Shares that would expire now shows a clock icon with a popover.

Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-03-27 19:56:05 +01:00
Pytal 1560fc835c Merge pull request #51737 from nextcloud/fix/disable-reminder-invalid-nodes
fix(files_reminders): Fix reminder actions being displayed on invalid nodes
2025-03-27 09:11:37 -07:00
Stephan Orbaugh c359e620f5 Merge pull request #51449 from hendrikheil/fix/fix-authmode-webhook-typo
fix: resolve typo in authMethod enum cases
2025-03-27 14:25:02 +01:00
John Molakvoæ 96e25558d2 Merge pull request #51684 from fabianzw/master
fix(files): Properly encode URLs when preparing ZIP download
2025-03-27 12:05:19 +01:00
John Molakvoæ 196b2f18d0 Merge pull request #51744 from nextcloud/fix/files_versions/previews
fix(files_versions): Rely on server mime fallback icons
2025-03-27 09:45:36 +01:00
nextcloud-command 0f47e8c98c chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-03-27 08:04:42 +00:00
provokateurin 07c1aea2f5 fix(files_versions): Rely on server mime fallback icons
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-03-27 08:56:45 +01:00
provokateurin 936166939c feat(files_versions): Implement preview mime icon fallback
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-03-27 08:56:45 +01:00
provokateurin 89779808e0 fix(files_versions): Cache previews
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-03-27 08:56:45 +01:00
Nextcloud bot f7b96ba26e Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-03-27 00:24:00 +00:00
Andy Scherzinger 8729597354 Merge pull request #51724 from nextcloud/fix/tasktypes-translations
Fix: task type translations
2025-03-26 22:15:16 +01:00
Fabian Zwemke 52cabd7869 chore: recompile assets
Signed-off-by: Fabian Zwemke <fabian@zwemke.de>
2025-03-26 21:44:11 +01:00
Fabian Zwemke 9fd0d263ff fix(files): Properly encode URLs when preparing ZIP download
Signed-off-by: Fabian Zwemke <fabian@zwemke.de>
2025-03-26 21:35:19 +01:00
nextcloud-command 8f41d01a02 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-03-26 18:45:44 +00:00
Christopher Ng 88d6771b1f fix(files_reminders): Fix reminder actions being displayed on invalid nodes
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2025-03-26 11:34:08 -07:00
Andy Scherzinger 5ed48e90ca Merge pull request #51650 from nextcloud/rakekniven-patch-1
chore(i18n): Improved grammar
2025-03-26 18:57:14 +01:00
nextcloud-command 936262fdd6 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-03-26 17:43:46 +00:00
rakekniven e7e107d63f chore(i18n): Improved grammar
Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2025-03-26 18:37:49 +01:00
Hamza 28a2965a31 Merge pull request #50156 from nextcloud/feat/cardav-example-contact
feat: add example contact on first login
2025-03-26 13:47:44 +01:00
Julius Knorr 46f531adec test: Adapt tests to properly use valid email addresses
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-03-26 11:51:52 +01:00
Julius Knorr 0a251213a3 fix: filter out contacts with invalid email addresses in sharee completion
Signed-off-by: Julius Knorr <jus@bitgrid.net>
2025-03-26 11:51:52 +01:00
Hamza Mahjoubi 099d9fb9be feat: add example contact on first login
Signed-off-by: Hamza Mahjoubi <hamzamahjoubi221@gmail.com>
2025-03-26 10:57:39 +01:00
Jana Peper 5d192150d1 fix: task type translations
Signed-off-by: Jana Peper <jana.peper@nextcloud.com>
2025-03-26 10:24:24 +01:00
Ferdinand Thiessen c85b8aa36c Merge pull request #51705 from nextcloud/fix/files-versions
fix(files_versions): correctly show version author also for shared files
2025-03-26 10:16:15 +01:00
Kate e67eba5e2b Merge pull request #51594 from nextcloud/fix/occ/config-fileowner-suppress-errors
fix(occ): Suppress errors when checking config.php fileowner
2025-03-26 10:14:24 +01:00
John Molakvoæ d1713603c5 Merge pull request #51433 from umgfoin/PR-umgfoin-fix-image-metadata-generation
fix(GenerateBlurhashMetadata): Suppress imagescale errors
2025-03-26 10:02:11 +01:00
Git'Fellow 5dcec08e98 fix(shares): Allow underscores on custom links
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2025-03-26 08:14:52 +01:00
Nextcloud bot cb7c82c13d Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-03-26 00:22:39 +00:00
Ferdinand Thiessen d3e54997b0 Merge pull request #51698 from nextcloud/fix/quota-view-files
feat(files): hide "Personal files" and "Shared with others" views if user has no quota
2025-03-25 22:55:54 +01:00
nextcloud-command 69f3c2b902 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-03-25 21:05:49 +00:00
skjnldsv baeff57232 feat(files): hide "Personal files" and "Shared with others" views if user has no quota
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-03-25 22:02:15 +01:00
Ferdinand Thiessen 4726400ff2 chore: compile assets
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-03-25 21:37:11 +01:00
Ferdinand Thiessen 00a1f23913 fix(files_versions): correctly show version author also for shared files
The users endpoint is not available for other users if the current user
has no admin privileges, so instead use the displaynames endpoint.

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
2025-03-25 21:33:06 +01:00
Ferdinand Thiessen efa5632bba Merge pull request #51458 from nextcloud/fix/fix-public-download-activity
Fix public download activity
2025-03-25 20:58:07 +01:00
John Molakvoæ c4ac979edc Merge pull request #51703 from bneumann/musicxml-mimetype
feat(mimetypes): Added musicxml mimetypes
2025-03-25 20:22:28 +01:00
Benjamin Giesinger 3c8198a721 feat(mimetypes): Fixed copy paste error 2025-03-25 19:50:27 +01:00
Benjamin Giesinger 68d45006cd feat(mimetypes): Added musicxml mimetypes 2025-03-25 19:50:06 +01:00
Côme Chilliet c7037d7b38 fix: Move getAppInstalledVersions to AppConfig so that it can be used earlier
Call it from OC_App to make sure there is only one request to DB.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 16:20:21 +01:00
F. E Noel Nfebe 652b0cc9ab Merge pull request #51697 from nextcloud/enh/no-issue/better-error-for-login-csrf
fix(login): Improve CSRF error message for better user understanding
2025-03-25 15:46:59 +01:00
Côme Chilliet da9b6e376d fix(tests): Sort activities by id to get the last one
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 15:43:09 +01:00
Côme Chilliet c9938e54a6 fix(sharebymail): Fix activity rich object id type
Fixes "Object for placeholder file is invalid, value 21 for key id is not a string"
Exception spotted in tests logs.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 15:43:09 +01:00
Côme Chilliet 140aba1f16 feat: Add context and test steps for activity in sharing
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 15:43:09 +01:00
Côme Chilliet a57f694e8d feat: add integration test for sharing activity
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 15:43:09 +01:00
Côme Chilliet a32875d402 fix(files_sharing): Use session id as part of cache key to avoid concurrency issues
If several people are watching and seeking the same video file we do not
 want the cache key to be the same or it would flood activity again.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 15:43:09 +01:00
Côme Chilliet ec5ac0957a fix(files_sharing): Set higher priority for listeners that may abort the request
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 15:43:09 +01:00
Côme Chilliet a3c531c31e fix: Avoid triggering several activities for Range request on the same file
Avoids flooding activities when someone browse a video in the web player.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 15:43:09 +01:00
Côme Chilliet a39bee57d9 fix: Fix download activity for folders
Remove duplicate activity publishing from share controller download,
 listen to BeforeZipCreatedEvent to publish activity for folders, and
 cache folders activity to avoid sending activity for each file in the
 folder.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 15:43:09 +01:00
Côme Chilliet 12ce8c0ef0 fix(sharing): Publish activity for download by public link
Even if dav endpoint is now used.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 15:43:09 +01:00
nextcloud-command 630da1457a chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-03-25 14:13:41 +00:00
Côme Chilliet 1ae3e8e77d chore(tests): Adapt updatenotification tests to constructor change
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 14:58:26 +01:00
nfebe 933b068f22 fix(login): Improve CSRF error message for better user understanding
This commit changes the CSRF error message displayed in the login form to
provide more specific information to the user. Instead of the generic less helpful error.

Signed-off-by: nfebe <fenn25.fn@gmail.com>
2025-03-25 14:26:13 +01:00
Côme Chilliet 34d7a957e0 chore(tests): Adapt TemplateLayoutTest to constructor change
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 14:23:40 +01:00
Côme Chilliet 49cf5ba318 fix: Put back OC_App::getAppVersions in Server.php
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 14:23:40 +01:00
Côme Chilliet 8caa1a70e9 fix: Do not try to load IAppManager too soon
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 14:23:40 +01:00
Côme Chilliet 0a027c3906 chore: Cleanup Server.php a bit and remove OC_App usage
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 14:23:40 +01:00
Côme Chilliet 4b099bd532 chore: Replace calls to OC_App::getAppVersions with app manager
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 14:23:40 +01:00
Côme Chilliet 32c1e3e677 feat: Add a replacement for OC_App::getAppVersions is IAppManager
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 14:12:17 +01:00
Kate d1383602c7 Merge pull request #51689 from nextcloud/fix/fix-files-sorting-cypress-test
Fix files_sorting cypress tests
2025-03-25 13:32:40 +01:00
John Molakvoæ 2f7e72fc50 Merge pull request #51649 from rolandinus/fix/dispatch-events-on-bulk-tagging
fix(systemtags): Dispatch events when bulk assigning system tags
2025-03-25 13:22:44 +01:00
Côme Chilliet 7f132f72ed fix(tests): Files are sorted by Name by default, no need to click it
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2025-03-25 13:06:14 +01:00
John Molakvoæ 2d813f15ab Merge pull request #51682 from nextcloud/fix/tag-fileid-check
fix(dav): filter user files when updating tags
2025-03-25 12:58:42 +01:00
John Molakvoæ 248d21a2b9 Merge pull request #51490 from nextcloud/castUsersCountToInt
fix(database): Cast users count to integer
2025-03-25 12:57:34 +01:00
skjnldsv 6fc453540b fix(dav): filter user files when updating tags
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
2025-03-25 12:30:03 +01:00
Kate eab608f144 Merge pull request #51669 from nextcloud/refactor/use-in-instead-of-or
perf(sharing): Use oc_share.item_type IN instead of OR equals
2025-03-25 11:52:52 +01:00
Marcel Klehr b464469bc1 perf(sharing): Use oc_share.{item_type, share_type} IN instead of OR equals
to improve performance by using the db index

Signed-off-by: Marcel Klehr <mklehr@gmx.net>
2025-03-25 09:42:06 +01:00
Nextcloud bot a55519268f Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-03-25 00:22:39 +00:00
Marcel Müller e00b060e34 Merge pull request #51675 from nextcloud/fix/noid/accept-informational-tests-as-success
fix(setupchecks): Treat information messages as success
2025-03-24 19:07:21 +01:00
nextcloud-command 250ec299d9 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-03-24 17:55:06 +00:00
Marcel Müller 86ae30d52e fix(setupchecks): Treat information messages as success
Signed-off-by: Marcel Müller <marcel-mueller@gmx.de>
2025-03-24 17:53:21 +00:00
Stephan Orbaugh f589e8a3d5 Merge pull request #51674 from nextcloud/feat/openapi/merged-spec
feat(openapi): Generate merged spec for all apps
2025-03-24 17:11:40 +01:00
provokateurin 95df189595 feat(openapi): Generate merged spec for all apps
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-03-24 16:38:17 +01:00
provokateurin 3732be59fd fix(build): Also fail OpenAPI generation for untracked specs
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-03-24 16:18:02 +01:00
provokateurin c9214d7be0 chore(deps): Update openapi-extractor to v1.5.2
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-03-24 16:11:28 +01:00
provokateurin d21062c3f0 feat(openapi): Add composer command
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-03-24 16:10:46 +01:00
Kate 9459724e72 Merge pull request #51668 from nextcloud/fix/provisioning_api/password-change-hint-translation
fix(provisioning_api): Pass on translated hint if password change fails
2025-03-24 16:06:02 +01:00
provokateurin c2c069c3e4 fix(provisioning_api): Pass on translated hint if password change fails
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-03-24 15:19:08 +01:00
Kate 7a05c00593 Merge pull request #51644 from nextcloud/fixWrongTranslation
fix(user): Some strings not being translated
2025-03-24 14:27:42 +01:00
nextcloud-command fd94228f72 chore(assets): Recompile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2025-03-24 13:13:20 +00:00
Roland Scheidel a842d917cf fix(systemtags): Dispatch events when bulk assigning system tags
Signed-off-by: Roland Scheidel <kontakt@scheidel.at>
2025-03-23 22:25:32 +01:00
Git'Fellow 0b944351e4 fix(user): Some strings not being translated
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2025-03-22 07:53:27 +01:00
Git'Fellow 18de9be0e2 fix(database): Cast users count to integer
Signed-off-by: Git'Fellow <12234510+solracsf@users.noreply.github.com>
2025-03-20 12:00:57 +01:00
provokateurin e2507b23bd fix(occ): Suppress errors when checking config.php fileowner
Signed-off-by: provokateurin <kate@provokateurin.de>
2025-03-20 08:03:05 +01:00
Hendrik Heil 7ac3fa7e9c fix(webhooks): resolve typo in openapi authMethod enum cases
Signed-off-by: Hendrik Heil <hendrik@heil.sh>
2025-03-13 16:48:00 +01:00
Hendrik Heil 908726602a fix(webhooks): update docblock options for authMethod
Signed-off-by: Hendrik Heil <hendrik@heil.sh>
2025-03-12 20:32:38 +01:00
umgfoin b3b2c68937 fix(GenerateBlurhashMetadata): Suppress imagescale errors
Suppress errors in imagescale during file-scans:
Most of these errors are caused by out of range x/y-dims.

Triggering un unhandled exception, metadata-generation aborts at this point  (e.g. occ files:scan --generate-metadata), effectively preventing these images from being added to photos or maps.

This problem might be the root cause for an issue described here:
https://github.com/nextcloud/photos/issues/2768

Signed-off-by: umgfoin <umgfoin@users.noreply.github.com>
2025-03-12 15:41:07 +01:00
Robin Appelman 98af649ccc fix: rework UploadFolder implementation
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-02-25 13:58:40 +01:00
1264 changed files with 46965 additions and 6076 deletions
+11 -11
View File
@@ -24,8 +24,8 @@ package-lock.json @nextcloud/server-dependabot
# App maintainers
/apps/admin_audit/appinfo/info.xml @luka-nextcloud @blizzz
/apps/cloud_federation_api/appinfo/info.xml @mejo-
/apps/comments/appinfo/info.xml @edward-ly @Pytal
/apps/cloud_federation_api/appinfo/info.xml @nfebe @mejo-
/apps/comments/appinfo/info.xml @edward-ly @sorbaugh
/apps/contactsinteraction/appinfo/info.xml @kesselb @SebastianKrupinski
/apps/contactsinteraction/lib @kesselb @SebastianKrupinski
/apps/contactsinteraction/tests @kesselb @SebastianKrupinski
@@ -36,21 +36,21 @@ package-lock.json @nextcloud/server-dependabot
/apps/dav/tests/unit/CardDAV @hamza221 @SebastianKrupinski
/apps/encryption/appinfo/info.xml @come-nc @icewind1991
/apps/federatedfilesharing/appinfo/info.xml @icewind1991 @danxuliu
/apps/federation/appinfo/info.xml @nfebe
/apps/files/appinfo/info.xml @skjnldsv @Pytal @ArtificialOwl @come-nc @artonge @icewind1991 @szaimen @susnux @nfebe
/apps/federation/appinfo/info.xml @nfebe @sorbaugh
/apps/files/appinfo/info.xml @skjnldsv @ArtificialOwl @come-nc @artonge @icewind1991 @szaimen @susnux @nfebe
/apps/files_external/appinfo/info.xml @icewind1991 @artonge
/apps/files_reminders/appinfo/info.xml @Pytal
/apps/files_reminders/appinfo/info.xml @skjnldsv @sorbaugh
/apps/files_sharing/appinfo/info.xml @skjnldsv @come-nc
/apps/files_trashbin/appinfo/info.xml @Pytal @icewind1991
/apps/files_trashbin/appinfo/info.xml @icewind1991 @sorbaugh
/apps/files_versions/appinfo/info.xml @artonge @icewind1991
/apps/oauth2/appinfo/info.xml @julien-nc @ChristophWurst
/apps/provisioning_api/appinfo/info.xml @provokateurin @nickvergessen
/apps/settings/appinfo/info.xml @Pytal @JuliaKirschenheuter
/apps/sharebymail/appinfo/info.xml @Altahrim
/apps/settings/appinfo/info.xml @JuliaKirschenheuter @sorbaugh
/apps/sharebymail/appinfo/info.xml @Altahrim @skjnldsv
/apps/systemtags/appinfo/info.xml @Antreesy @marcelklehr
/apps/theming/appinfo/info.xml @skjnldsv @juliusknorr
/apps/twofactor_backupcodes/appinfo/info.xml @st3iny @miaulalala @ChristophWurst
/apps/updatenotification/appinfo/info.xml @Pytal @JuliaKirschenheuter
/apps/updatenotification/appinfo/info.xml @JuliaKirschenheuter @sorbaugh
/apps/user_ldap/appinfo/info.xml @come-nc @blizzz
/apps/user_status/appinfo/info.xml @Antreesy @nickvergessen
/apps/weather_status/appinfo/info.xml @julien-nc @juliusknorr
@@ -80,8 +80,8 @@ package-lock.json @nextcloud/server-dependabot
/core/routes.php @Altahrim @nextcloud/server-backend
# OpenAPI
openapi*.json @provokateurin
ResponseDefinitions.php @provokateurin
openapi*.json @provokateurin @nextcloud/server-backend
ResponseDefinitions.php @provokateurin @nextcloud/server-backend
# Talk team
/lib/private/Comments @nickvergessen @nextcloud/talk-backend
+4 -1
View File
@@ -81,7 +81,7 @@ updates:
day: saturday
time: "03:00"
timezone: Europe/Paris
open-pull-requests-limit: 10
open-pull-requests-limit: 20
labels:
- "3. to review"
- "feature: dependencies"
@@ -121,6 +121,7 @@ updates:
day: saturday
time: "03:00"
timezone: Europe/Paris
open-pull-requests-limit: 20
target-branch: stable29
labels:
- "3. to review"
@@ -140,6 +141,7 @@ updates:
day: saturday
time: "03:00"
timezone: Europe/Paris
open-pull-requests-limit: 20
target-branch: stable30
labels:
- "3. to review"
@@ -159,6 +161,7 @@ updates:
day: saturday
time: "03:00"
timezone: Europe/Paris
open-pull-requests-limit: 20
target-branch: stable31
labels:
- "3. to review"
+3
View File
@@ -110,6 +110,9 @@ jobs:
- name: Check that all and only expected files are included
run: php ./build/files-checker.php
- name: Check that all shipped apps are linted by psalm
run: sh ./build/psalm-checker.sh
summary:
permissions:
contents: none
+1 -1
View File
@@ -120,7 +120,7 @@ jobs:
fallbackNpm: '^10'
- name: Set up node ${{ steps.package-engines-versions.outputs.nodeVersion }}
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
with:
node-version: ${{ steps.package-engines-versions.outputs.nodeVersion }}
cache: npm
+6 -6
View File
@@ -64,7 +64,7 @@ jobs:
fallbackNpm: "^10"
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
@@ -110,7 +110,7 @@ jobs:
path: ./
- name: Set up node ${{ needs.init.outputs.nodeVersion }}
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
with:
node-version: ${{ needs.init.outputs.nodeVersion }}
@@ -121,7 +121,7 @@ jobs:
run: ./node_modules/cypress/bin/cypress install
- name: Run ${{ matrix.containers == 'component' && 'component' || 'E2E' }} cypress tests
uses: cypress-io/github-action@9c318d4f950c2f0ff2e96fa4dc4279e5706efd8e # v6.7.14
uses: cypress-io/github-action@108b8684ae52e735ff7891524cbffbcd4be5b19f # v6.7.16
with:
# We already installed the dependencies in the init job
install: false
@@ -143,7 +143,7 @@ jobs:
SPLIT_INDEX: ${{ matrix.containers == 'component' && 0 || matrix.containers }}
- name: Upload snapshots and videos
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
if: always()
with:
name: snapshots_videos_${{ matrix.containers }}
@@ -156,7 +156,7 @@ jobs:
run: docker logs nextcloud-cypress-tests_${{ env.APP_NAME }} > nextcloud.log
- name: Upload NC logs
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
if: failure() && matrix.containers != 'component'
with:
name: nc_logs_${{ matrix.containers }}
@@ -167,7 +167,7 @@ jobs:
run: docker exec nextcloud-cypress-tests_${{ env.APP_NAME }} tar -cvjf - data > data.tar
- name: Upload data dir archive
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
if: failure() && matrix.containers != 'component'
with:
name: nc_data_${{ matrix.containers }}
+9
View File
@@ -73,6 +73,7 @@ jobs:
php-versions: ['8.1']
spreed-versions: ['main']
activity-versions: ['master']
services:
redis:
@@ -104,6 +105,14 @@ jobs:
path: apps/spreed
ref: ${{ matrix.spreed-versions }}
- name: Checkout Activity app
if: ${{ matrix.test-suite == 'sharing_features' }}
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
repository: nextcloud/activity
path: apps/activity
ref: ${{ matrix.activity-versions }}
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 #v2.32.0
with:
+1 -1
View File
@@ -63,7 +63,7 @@ jobs:
fallbackNpm: '^10'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v3
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v3
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
+1 -1
View File
@@ -35,7 +35,7 @@ jobs:
fallbackNpm: '^10'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
+3 -3
View File
@@ -83,7 +83,7 @@ jobs:
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
@@ -117,7 +117,7 @@ jobs:
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
@@ -145,7 +145,7 @@ jobs:
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Set up node ${{ needs.versions.outputs.nodeVersion }}
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
with:
node-version: ${{ needs.versions.outputs.nodeVersion }}
+1 -1
View File
@@ -63,7 +63,7 @@ jobs:
fallbackNpm: '^10'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v3
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v3
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
+2 -2
View File
@@ -45,7 +45,7 @@ jobs:
fallbackNpm: '^10'
- name: Set up node ${{ steps.versions.outputs.nodeVersion }}
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
with:
node-version: ${{ steps.versions.outputs.nodeVersion }}
@@ -66,7 +66,7 @@ jobs:
- name: Create Pull Request
if: steps.checkout.outcome == 'success'
uses: peter-evans/create-pull-request@dd2324fc52d5d43c699a5636bcf19fceaa70c284 # v7.0.7
uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e # v7.0.8
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: 'fix(deps): Fix npm audit'
+1 -1
View File
@@ -91,7 +91,7 @@ jobs:
- name: Upload profiles
if: always()
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02
with:
name: profiles
path: |
+1 -1
View File
@@ -28,7 +28,7 @@ jobs:
run: curl --etag-compare build/ca-bundle-etag.txt --etag-save build/ca-bundle-etag.txt --output resources/config/ca-bundle.crt https://curl.se/ca/cacert.pem
- name: Create Pull Request
uses: peter-evans/create-pull-request@dd2324fc52d5d43c699a5636bcf19fceaa70c284
uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: 'fix(security): Update CA certificate bundle'
@@ -31,7 +31,7 @@ jobs:
run: openssl crl -verify -in resources/codesigning/root.crl -CAfile resources/codesigning/root.crt -noout
- name: Create Pull Request
uses: peter-evans/create-pull-request@dd2324fc52d5d43c699a5636bcf19fceaa70c284
uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: 'fix(security): Update code signing revocation list'
@@ -102,7 +102,7 @@ jobs:
fi
- name: Create Pull Request
uses: peter-evans/create-pull-request@dd2324fc52d5d43c699a5636bcf19fceaa70c284
uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e
if: steps.update-files.outputs.CHANGES_MADE == 'true'
with:
token: ${{ secrets.COMMAND_BOT_PAT }}
+8
View File
@@ -167,6 +167,10 @@ Files: apps/dav/tests/unit/test_fixtures/caldav-search-limit-timerange-1.ics app
Copyright: 2023 Nextcloud GmbH and Nextcloud contributors
License: AGPL-3.0-or-later
Files: apps/dav/lib/ExampleContentFiles/exampleContact.vcf
Copyright: 2025 Nextcloud GmbH and Nextcloud contributors
License: AGPL-3.0-or-later
Files: composer.json composer.lock .github/CODEOWNERS __tests__/tsconfig.json tsconfig.json build/integration/composer.* vendor-bin/*/composer.json vendor-bin/*/composer.lock apps/*/composer/composer.json apps/*/composer/composer.lock apps/*/composer/composer/installed.json
Copyright: 2011-2016 ownCloud, Inc., 2016-2024 Nextcloud GmbH and Nextcloud contributors
License: AGPL-3.0-only OR AGPL-3.0-or-later
@@ -342,3 +346,7 @@ License: CC0-1.0
Files: apps/theming/fonts/OpenDyslexic-Bold.otf apps/theming/fonts/OpenDyslexic-Regular.otf
Copyright: 2012-2019 Abbie Gonzalez <https://abbiecod.es|support@abbiecod.es>, with Reserved Font Name OpenDyslexic.
License: OFL-1.1-RFN
Files: openapi.json
Copyright: 2025 Nextcloud GmbH and Nextcloud contributors
License: AGPL-3.0-or-later
-42
View File
@@ -1,42 +0,0 @@
# SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
# SPDX-FileCopyrightText: 2016 ownCloud, Inc.
# SPDX-License-Identifier: AGPL-3.0-only
before_commands:
- 'git submodule update --init --recursive'
build:
nodes:
analysis:
tests:
override:
- php-scrutinizer-run
checks:
php:
excluded_dependencies:
- etsy/phan
filter:
excluded_paths:
- '3rdparty/*'
- 'apps/*/3rdparty/*'
- 'apps/*/vendor/*'
- 'l10n/*'
- 'core/l10n/*'
- 'apps/*/l10n/*'
- 'apps/*/tests/*'
- 'lib/l10n/*'
- 'core/vendor/*'
- 'core/js/tests/lib/*.js'
- 'core/js/tests/specs/*.js'
- 'core/js/jquery-showpassword.js'
- 'core/js/jquery-tipsy.js'
- 'core/js/placeholders.js'
- 'settings/l10n/*'
- 'tests/*'
- 'build/*'
- 'lib/composer/*'
imports:
- javascript
- php
-1
View File
@@ -5,7 +5,6 @@
-->
# Nextcloud Server ☁
[![REUSE status](https://api.reuse.software/badge/github.com/nextcloud/server)](https://api.reuse.software/info/github.com/nextcloud/server)
[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/nextcloud/server/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/nextcloud/server/?branch=master)
[![codecov](https://codecov.io/gh/nextcloud/server/branch/master/graph/badge.svg)](https://codecov.io/gh/nextcloud/server)
[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/209/badge)](https://bestpractices.coreinfrastructure.org/projects/209)
[![Design](https://contribute.design/api/shield/nextcloud/server)](https://contribute.design/nextcloud/server)
+1 -1
View File
@@ -2,6 +2,6 @@ OC.L10N.register(
"admin_audit",
{
"Auditing / Logging" : "Auditēšana / Žurnalizēšana",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Nodrošina Nextcloud žurnalizēšanas iespējas, piemēram, faila piekļuves žurnalizēšanu vai citas sensivas darbības."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Nodrošina Nextcloud žurnalēšanas spējas, piemēram, datņu piekļuves žurnalēšanu vai citas gas darbības."
},
"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);");
+1 -1
View File
@@ -1,5 +1,5 @@
{ "translations": {
"Auditing / Logging" : "Auditēšana / Žurnalizēšana",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Nodrošina Nextcloud žurnalizēšanas iespējas, piemēram, faila piekļuves žurnalizēšanu vai citas sensivas darbības."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Nodrošina Nextcloud žurnalēšanas spējas, piemēram, datņu piekļuves žurnalēšanu vai citas gas darbības."
},"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"
}
+1 -1
View File
@@ -2,6 +2,6 @@ OC.L10N.register(
"admin_audit",
{
"Auditing / Logging" : "Auditoria / Registro",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Fornece habilidades de registro para o NextCloud, como acessos de arquivo de log ou ações sensíveis."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Fornece recursos de registro para o Nextcloud, como acessos a arquivos de registro ou outras ações sensíveis."
},
"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
+1 -1
View File
@@ -1,5 +1,5 @@
{ "translations": {
"Auditing / Logging" : "Auditoria / Registro",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Fornece habilidades de registro para o NextCloud, como acessos de arquivo de log ou ações sensíveis."
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Fornece recursos de registro para o Nextcloud, como acessos a arquivos de registro ou outras ações sensíveis."
},"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}
+7
View File
@@ -0,0 +1,7 @@
OC.L10N.register(
"admin_audit",
{
"Auditing / Logging" : "Praćenje / Beleženje",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Daje Nextcloudu mogućnost beleženja, poput pristupa fajlovima ili drugih osetljivih radnji."
},
"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);");
+5
View File
@@ -0,0 +1,5 @@
{ "translations": {
"Auditing / Logging" : "Praćenje / Beleženje",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Daje Nextcloudu mogućnost beleženja, poput pristupa fajlovima ili drugih osetljivih radnji."
},"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);"
}
+1 -1
View File
@@ -2,7 +2,7 @@ OC.L10N.register(
"cloud_federation_api",
{
"Cloud Federation API" : "API de Nuvem Federada",
"Enable clouds to communicate with each other and exchange data" : "Permite que diferentes nuvens se comuniquem entre si e troquem dados",
"Enable clouds to communicate with each other and exchange data" : "Permitir que as nuvens se comuniquem entre si e troquem dados",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "A API de Nuvem Federada permite que várias instâncias do Nextcloud se comuniquem entre si e troquem dados."
},
"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
+1 -1
View File
@@ -1,6 +1,6 @@
{ "translations": {
"Cloud Federation API" : "API de Nuvem Federada",
"Enable clouds to communicate with each other and exchange data" : "Permite que diferentes nuvens se comuniquem entre si e troquem dados",
"Enable clouds to communicate with each other and exchange data" : "Permitir que as nuvens se comuniquem entre si e troquem dados",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "A API de Nuvem Federada permite que várias instâncias do Nextcloud se comuniquem entre si e troquem dados."
},"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}
@@ -12,13 +12,14 @@ use NCU\Security\Signature\Exceptions\IdentityNotFoundException;
use NCU\Security\Signature\Exceptions\SignatoryException;
use OC\OCM\OCMSignatoryManager;
use OCP\Capabilities\ICapability;
use OCP\Capabilities\IInitialStateExcludedCapability;
use OCP\IAppConfig;
use OCP\IURLGenerator;
use OCP\OCM\Exceptions\OCMArgumentException;
use OCP\OCM\IOCMProvider;
use Psr\Log\LoggerInterface;
class Capabilities implements ICapability {
class Capabilities implements ICapability, IInitialStateExcludedCapability {
public const API_VERSION = '1.1'; // informative, real version.
public function __construct(
@@ -54,15 +55,13 @@ class Capabilities implements ICapability {
*/
public function getCapabilities() {
$url = $this->urlGenerator->linkToRouteAbsolute('cloud_federation_api.requesthandlercontroller.addShare');
$pos = strrpos($url, '/');
if ($pos === false) {
throw new OCMArgumentException('generated route should contain a slash character');
}
$this->provider->setEnabled(true);
$this->provider->setApiVersion(self::API_VERSION);
$pos = strrpos($url, '/');
if ($pos === false) {
throw new OCMArgumentException('generated route should contains a slash character');
}
$this->provider->setEndPoint(substr($url, 0, $pos));
$resource = $this->provider->createNewResourceType();
@@ -87,6 +86,6 @@ class Capabilities implements ICapability {
$this->logger->warning('cannot generate local signatory', ['exception' => $e]);
}
return ['ocm' => json_decode(json_encode($this->provider->jsonSerialize()), true)];
return ['ocm' => $this->provider->jsonSerialize()];
}
}
+1 -1
View File
@@ -10,7 +10,7 @@ OC.L10N.register(
"{author} commented on {file}" : "{author} a commenté sur {file}",
"<strong>Comments</strong> for files" : "<strong>Commentaires</strong> sur les fichiers",
"Files" : "Fichiers",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted" : "Vous avez été mentionné sur « {file} », dans un commentaire par un compte qui depuis a été supprimé",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted" : "Vous avez été mentionné dans « {file} », dans un commentaire d'un compte qui a été supprimé depuis",
"{user} mentioned you in a comment on \"{file}\"" : "{user} vous a mentionné dans un commentaire sur « {file} »",
"Files app plugin to add comments to files" : "Plugin Fichiers app pour ajouter des commentaires aux fichiers",
"Edit comment" : "Modifier le commentaire",
+1 -1
View File
@@ -8,7 +8,7 @@
"{author} commented on {file}" : "{author} a commenté sur {file}",
"<strong>Comments</strong> for files" : "<strong>Commentaires</strong> sur les fichiers",
"Files" : "Fichiers",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted" : "Vous avez été mentionné sur « {file} », dans un commentaire par un compte qui depuis a été supprimé",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted" : "Vous avez été mentionné dans « {file} », dans un commentaire d'un compte qui a été supprimé depuis",
"{user} mentioned you in a comment on \"{file}\"" : "{user} vous a mentionné dans un commentaire sur « {file} »",
"Files app plugin to add comments to files" : "Plugin Fichiers app pour ajouter des commentaires aux fichiers",
"Edit comment" : "Modifier le commentaire",
+1 -1
View File
@@ -11,7 +11,7 @@ OC.L10N.register(
"<strong>Comments</strong> for files" : "<strong>Comentários</strong> para arquivos",
"Files" : "Arquivos",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted" : "Você foi mencionado em \"{file}\", em um comentário de uma conta que já foi excluída",
"{user} mentioned you in a comment on \"{file}\"" : "{user} mencionou você em um comentário em \"{file}\"",
"{user} mentioned you in a comment on \"{file}\"" : "{user} mencionou você em um comentário sobre \"{file}\"",
"Files app plugin to add comments to files" : "Complemento do aplicativo Files para adicionar comentários",
"Edit comment" : "Editar comentário",
"Delete comment" : "Excluir comentário",
+1 -1
View File
@@ -9,7 +9,7 @@
"<strong>Comments</strong> for files" : "<strong>Comentários</strong> para arquivos",
"Files" : "Arquivos",
"You were mentioned on \"{file}\", in a comment by an account that has since been deleted" : "Você foi mencionado em \"{file}\", em um comentário de uma conta que já foi excluída",
"{user} mentioned you in a comment on \"{file}\"" : "{user} mencionou você em um comentário em \"{file}\"",
"{user} mentioned you in a comment on \"{file}\"" : "{user} mencionou você em um comentário sobre \"{file}\"",
"Files app plugin to add comments to files" : "Complemento do aplicativo Files para adicionar comentários",
"Edit comment" : "Editar comentário",
"Delete comment" : "Excluir comentário",
+1 -1
View File
@@ -2,7 +2,7 @@ OC.L10N.register(
"contactsinteraction",
{
"Recently contacted" : "Contactados recentemente",
"Contacts Interaction" : "Interação de contatos",
"Contacts Interaction" : "Interação de Contatos",
"Manages interaction between accounts and contacts" : "Gerencia a interação entre contas e contatos",
"Collect data about accounts and contacts interactions and provide an address book for the data" : "Colete dados sobre interações de contas e contatos e forneça um catálogo de endereços para os dados"
},
+1 -1
View File
@@ -1,6 +1,6 @@
{ "translations": {
"Recently contacted" : "Contactados recentemente",
"Contacts Interaction" : "Interação de contatos",
"Contacts Interaction" : "Interação de Contatos",
"Manages interaction between accounts and contacts" : "Gerencia a interação entre contas e contatos",
"Collect data about accounts and contacts interactions and provide an address book for the data" : "Colete dados sobre interações de contas e contatos e forneça um catálogo de endereços para os dados"
},"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
+1
View File
@@ -74,6 +74,7 @@
<settings>
<admin>OCA\DAV\Settings\CalDAVSettings</admin>
<admin>OCA\DAV\Settings\ExampleContentSettings</admin>
<personal>OCA\DAV\Settings\AvailabilitySettings</personal>
</settings>
+2
View File
@@ -11,6 +11,8 @@ return [
['name' => 'invitation_response#decline', 'url' => '/invitation/decline/{token}', 'verb' => 'GET'],
['name' => 'invitation_response#options', 'url' => '/invitation/moreOptions/{token}', 'verb' => 'GET'],
['name' => 'invitation_response#processMoreOptionsResult', 'url' => '/invitation/moreOptions/{token}', 'verb' => 'POST'],
['name' => 'example_content#setDefaultContact', 'url' => '/api/defaultcontact/contact', 'verb' => 'PUT'],
['name' => 'example_content#setEnableDefaultContact', 'url' => '/api/defaultcontact/config', 'verb' => 'PUT'],
],
'ocs' => [
['name' => 'direct#getUrl', 'url' => '/api/v1/direct', 'verb' => 'POST'],
+2 -1
View File
@@ -61,7 +61,8 @@ $authPlugin = new \Sabre\DAV\Auth\Plugin($authBackend);
$bearerAuthPlugin = new BearerAuth(
Server::get(IUserSession::class),
Server::get(ISession::class),
Server::get(IRequest::class)
Server::get(IRequest::class),
Server::get(IConfig::class),
);
$authPlugin->addBackend($bearerAuthPlugin);
+1 -1
View File
@@ -77,7 +77,7 @@ $filesDropPlugin = new FilesDropPlugin();
// Define root url with /public.php/dav/files/TOKEN
/** @var string $baseuri defined in public.php */
preg_match('/(^files\/[a-z0-9-]+)/i', substr($requestUri, strlen($baseuri)), $match);
preg_match('/(^files\/[a-z0-9-_]+)/i', substr($requestUri, strlen($baseuri)), $match);
$baseuri = $baseuri . $match[0];
$server = $serverFactory->createServer($baseuri, $requestUri, $authPlugin, function (\Sabre\DAV\Server $server) use ($authBackend, $linkCheckPlugin, $filesDropPlugin) {
@@ -221,6 +221,7 @@ return array(
'OCA\\DAV\\Connector\\Sabre\\ZipFolderPlugin' => $baseDir . '/../lib/Connector/Sabre/ZipFolderPlugin.php',
'OCA\\DAV\\Controller\\BirthdayCalendarController' => $baseDir . '/../lib/Controller/BirthdayCalendarController.php',
'OCA\\DAV\\Controller\\DirectController' => $baseDir . '/../lib/Controller/DirectController.php',
'OCA\\DAV\\Controller\\ExampleContentController' => $baseDir . '/../lib/Controller/ExampleContentController.php',
'OCA\\DAV\\Controller\\InvitationResponseController' => $baseDir . '/../lib/Controller/InvitationResponseController.php',
'OCA\\DAV\\Controller\\OutOfOfficeController' => $baseDir . '/../lib/Controller/OutOfOfficeController.php',
'OCA\\DAV\\Controller\\UpcomingEventsController' => $baseDir . '/../lib/Controller/UpcomingEventsController.php',
@@ -355,9 +356,11 @@ return array(
'OCA\\DAV\\Server' => $baseDir . '/../lib/Server.php',
'OCA\\DAV\\ServerFactory' => $baseDir . '/../lib/ServerFactory.php',
'OCA\\DAV\\Service\\AbsenceService' => $baseDir . '/../lib/Service/AbsenceService.php',
'OCA\\DAV\\Service\\DefaultContactService' => $baseDir . '/../lib/Service/DefaultContactService.php',
'OCA\\DAV\\Settings\\Admin\\SystemAddressBookSettings' => $baseDir . '/../lib/Settings/Admin/SystemAddressBookSettings.php',
'OCA\\DAV\\Settings\\AvailabilitySettings' => $baseDir . '/../lib/Settings/AvailabilitySettings.php',
'OCA\\DAV\\Settings\\CalDAVSettings' => $baseDir . '/../lib/Settings/CalDAVSettings.php',
'OCA\\DAV\\Settings\\ExampleContentSettings' => $baseDir . '/../lib/Settings/ExampleContentSettings.php',
'OCA\\DAV\\SetupChecks\\NeedsSystemAddressBookSync' => $baseDir . '/../lib/SetupChecks/NeedsSystemAddressBookSync.php',
'OCA\\DAV\\SetupChecks\\WebdavEndpoint' => $baseDir . '/../lib/SetupChecks/WebdavEndpoint.php',
'OCA\\DAV\\Storage\\PublicOwnerWrapper' => $baseDir . '/../lib/Storage/PublicOwnerWrapper.php',
@@ -236,6 +236,7 @@ class ComposerStaticInitDAV
'OCA\\DAV\\Connector\\Sabre\\ZipFolderPlugin' => __DIR__ . '/..' . '/../lib/Connector/Sabre/ZipFolderPlugin.php',
'OCA\\DAV\\Controller\\BirthdayCalendarController' => __DIR__ . '/..' . '/../lib/Controller/BirthdayCalendarController.php',
'OCA\\DAV\\Controller\\DirectController' => __DIR__ . '/..' . '/../lib/Controller/DirectController.php',
'OCA\\DAV\\Controller\\ExampleContentController' => __DIR__ . '/..' . '/../lib/Controller/ExampleContentController.php',
'OCA\\DAV\\Controller\\InvitationResponseController' => __DIR__ . '/..' . '/../lib/Controller/InvitationResponseController.php',
'OCA\\DAV\\Controller\\OutOfOfficeController' => __DIR__ . '/..' . '/../lib/Controller/OutOfOfficeController.php',
'OCA\\DAV\\Controller\\UpcomingEventsController' => __DIR__ . '/..' . '/../lib/Controller/UpcomingEventsController.php',
@@ -370,9 +371,11 @@ class ComposerStaticInitDAV
'OCA\\DAV\\Server' => __DIR__ . '/..' . '/../lib/Server.php',
'OCA\\DAV\\ServerFactory' => __DIR__ . '/..' . '/../lib/ServerFactory.php',
'OCA\\DAV\\Service\\AbsenceService' => __DIR__ . '/..' . '/../lib/Service/AbsenceService.php',
'OCA\\DAV\\Service\\DefaultContactService' => __DIR__ . '/..' . '/../lib/Service/DefaultContactService.php',
'OCA\\DAV\\Settings\\Admin\\SystemAddressBookSettings' => __DIR__ . '/..' . '/../lib/Settings/Admin/SystemAddressBookSettings.php',
'OCA\\DAV\\Settings\\AvailabilitySettings' => __DIR__ . '/..' . '/../lib/Settings/AvailabilitySettings.php',
'OCA\\DAV\\Settings\\CalDAVSettings' => __DIR__ . '/..' . '/../lib/Settings/CalDAVSettings.php',
'OCA\\DAV\\Settings\\ExampleContentSettings' => __DIR__ . '/..' . '/../lib/Settings/ExampleContentSettings.php',
'OCA\\DAV\\SetupChecks\\NeedsSystemAddressBookSync' => __DIR__ . '/..' . '/../lib/SetupChecks/NeedsSystemAddressBookSync.php',
'OCA\\DAV\\SetupChecks\\WebdavEndpoint' => __DIR__ . '/..' . '/../lib/SetupChecks/WebdavEndpoint.php',
'OCA\\DAV\\Storage\\PublicOwnerWrapper' => __DIR__ . '/..' . '/../lib/Storage/PublicOwnerWrapper.php',
+13
View File
@@ -306,6 +306,19 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "أرسل إشعارات للتذكير إلى المشتركين بالتقويم كذلك",
"Reminders are always sent to organizers and attendees." : "إشعارات التذكير يتم إرسالها دائماً إلى مُنظّم أو مُنظّمي الحدث و المستهدفين بحضوره.",
"Enable notifications for events via push" : "تمكين الإشعارات حول الأحداث عن طريق أسلوب دفع الإشعارات Push",
"Cancel" : "إلغاء",
"Import" : "إستيراد",
"Error while saving settings" : "خطأ أثناء حفظ الإعدادات",
"Contact reset successfully" : "تمّت إعادة تعيين جهة الاتصال بنجاحٍ",
"Error while resetting contact" : "خطأ أثناء إعادة تعيين جهة الاتصال",
"Contact imported successfully" : "تمّ استيراد جهة الاتصال بنجاحٍ",
"Error while importing contact" : "خطأ أثناء استيراد جهة الاتصال",
"Example Content" : "نموذج للمحتوى",
"Set example content to be created on new user first login." : "عيِّن نموذجاً للمحتوى ليتم إنشاؤه عند تسجيل المستخدِم دخوله لأول مرةٍ.",
"Import contact" : "استيراد جهة اتصال",
"Reset to default contact" : "إعادة التعيين لجهة اتصال تلقائية ",
"Import contacts" : "استيراد جهات اتصال",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "استيراد ملف .cvf جديد سوف يؤدي إلى حذف جهات الاتصال التلقائية الحالية واستبدالها بالجديدة. هل ترغب في الاستمرار؟",
"There was an error updating your attendance status." : "حدث خطأ في تحديث حالة حضورك.",
"Please contact the organizer directly." : "يرجى الاتصال بالمنظم مباشرةً",
"Are you accepting the invitation?" : "هل تقبل الدعوة؟",
+13
View File
@@ -304,6 +304,19 @@
"Send reminder notifications to calendar sharees as well" : "أرسل إشعارات للتذكير إلى المشتركين بالتقويم كذلك",
"Reminders are always sent to organizers and attendees." : "إشعارات التذكير يتم إرسالها دائماً إلى مُنظّم أو مُنظّمي الحدث و المستهدفين بحضوره.",
"Enable notifications for events via push" : "تمكين الإشعارات حول الأحداث عن طريق أسلوب دفع الإشعارات Push",
"Cancel" : "إلغاء",
"Import" : "إستيراد",
"Error while saving settings" : "خطأ أثناء حفظ الإعدادات",
"Contact reset successfully" : "تمّت إعادة تعيين جهة الاتصال بنجاحٍ",
"Error while resetting contact" : "خطأ أثناء إعادة تعيين جهة الاتصال",
"Contact imported successfully" : "تمّ استيراد جهة الاتصال بنجاحٍ",
"Error while importing contact" : "خطأ أثناء استيراد جهة الاتصال",
"Example Content" : "نموذج للمحتوى",
"Set example content to be created on new user first login." : "عيِّن نموذجاً للمحتوى ليتم إنشاؤه عند تسجيل المستخدِم دخوله لأول مرةٍ.",
"Import contact" : "استيراد جهة اتصال",
"Reset to default contact" : "إعادة التعيين لجهة اتصال تلقائية ",
"Import contacts" : "استيراد جهات اتصال",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "استيراد ملف .cvf جديد سوف يؤدي إلى حذف جهات الاتصال التلقائية الحالية واستبدالها بالجديدة. هل ترغب في الاستمرار؟",
"There was an error updating your attendance status." : "حدث خطأ في تحديث حالة حضورك.",
"Please contact the organizer directly." : "يرجى الاتصال بالمنظم مباشرةً",
"Are you accepting the invitation?" : "هل تقبل الدعوة؟",
+3
View File
@@ -211,6 +211,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Unvia tamién avisos de recordatoriu pa les persones coles que se compartiere'l calendariu",
"Reminders are always sent to organizers and attendees." : "Los recordatorios únviense siempres a organizadores y asistentes",
"Enable notifications for events via push" : "Acriva los avisos automáticos pa los eventos",
"Cancel" : "Encaboxar",
"Import" : "Importa",
"Error while saving settings" : "Hebo un error mentanto se guardaba la configuración",
"There was an error updating your attendance status." : "Hebo un error al anovar l'estáu de l'asistencia.",
"Please contact the organizer directly." : "Ponte en contautu direutamente cola organización.",
"Are you accepting the invitation?" : "¿Aceptes la invitación?",
+3
View File
@@ -209,6 +209,9 @@
"Send reminder notifications to calendar sharees as well" : "Unvia tamién avisos de recordatoriu pa les persones coles que se compartiere'l calendariu",
"Reminders are always sent to organizers and attendees." : "Los recordatorios únviense siempres a organizadores y asistentes",
"Enable notifications for events via push" : "Acriva los avisos automáticos pa los eventos",
"Cancel" : "Encaboxar",
"Import" : "Importa",
"Error while saving settings" : "Hebo un error mentanto se guardaba la configuración",
"There was an error updating your attendance status." : "Hebo un error al anovar l'estáu de l'asistencia.",
"Please contact the organizer directly." : "Ponte en contautu direutamente cola organización.",
"Are you accepting the invitation?" : "¿Aceptes la invitación?",
+3
View File
@@ -192,6 +192,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Изпращане на известия за напомняния и до споделящите календар",
"Reminders are always sent to organizers and attendees." : "Напомнянията винаги се изпращат до организаторите и присъстващите.",
"Enable notifications for events via push" : "Активиране на известията за събития чрез push",
"Cancel" : "Отказ",
"Import" : "Импортиране /внасяне/",
"Error while saving settings" : "Грешка при запазване на настройките",
"There was an error updating your attendance status." : "Възникна грешка при актуализиране на състоянието на присъствието Ви.",
"Please contact the organizer directly." : "Моля, свържете се директно с организатора.",
"Are you accepting the invitation?" : "Приемате ли поканата?",
+3
View File
@@ -190,6 +190,9 @@
"Send reminder notifications to calendar sharees as well" : "Изпращане на известия за напомняния и до споделящите календар",
"Reminders are always sent to organizers and attendees." : "Напомнянията винаги се изпращат до организаторите и присъстващите.",
"Enable notifications for events via push" : "Активиране на известията за събития чрез push",
"Cancel" : "Отказ",
"Import" : "Импортиране /внасяне/",
"Error while saving settings" : "Грешка при запазване на настройките",
"There was an error updating your attendance status." : "Възникна грешка при актуализиране на състоянието на присъствието Ви.",
"Please contact the organizer directly." : "Моля, свържете се директно с организатора.",
"Are you accepting the invitation?" : "Приемате ли поканата?",
+3
View File
@@ -306,6 +306,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Envia també notificacions de recordatori als usuaris amb qui s'ha compartit el calendari",
"Reminders are always sent to organizers and attendees." : "Sempre s'envien recordatoris als organitzadors i als assistents.",
"Enable notifications for events via push" : "Habilita les notificacions automàtiques per als esdeveniments",
"Cancel" : "Cancel·la",
"Import" : "Importa",
"Error while saving settings" : "S'ha produït un error en desar els paràmetres",
"There was an error updating your attendance status." : "S'ha produït un error en actualitzar l'estat d'assistència.",
"Please contact the organizer directly." : "Contacteu amb l'organització directament.",
"Are you accepting the invitation?" : "Accepteu la invitació?",
+3
View File
@@ -304,6 +304,9 @@
"Send reminder notifications to calendar sharees as well" : "Envia també notificacions de recordatori als usuaris amb qui s'ha compartit el calendari",
"Reminders are always sent to organizers and attendees." : "Sempre s'envien recordatoris als organitzadors i als assistents.",
"Enable notifications for events via push" : "Habilita les notificacions automàtiques per als esdeveniments",
"Cancel" : "Cancel·la",
"Import" : "Importa",
"Error while saving settings" : "S'ha produït un error en desar els paràmetres",
"There was an error updating your attendance status." : "S'ha produït un error en actualitzar l'estat d'assistència.",
"Please contact the organizer directly." : "Contacteu amb l'organització directament.",
"Are you accepting the invitation?" : "Accepteu la invitació?",
+13
View File
@@ -306,6 +306,19 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Poslat připomínky také těm, kteří mají tento sdílený kalendář připojený",
"Reminders are always sent to organizers and attendees." : "Připomínky jsou vždy poslány organizátorům a účastníkům.",
"Enable notifications for events via push" : "Upozorňovat na události prostřednictvím služby push",
"Cancel" : "Storno",
"Import" : "Naimportovat",
"Error while saving settings" : "Chyba při ukládání nastavení",
"Contact reset successfully" : "Kontakt úspěšně resetován",
"Error while resetting contact" : "Chyba při resetování kontaktu",
"Contact imported successfully" : "Kontakt úspěšně naimportován",
"Error while importing contact" : "Chyba při importování kontaktu",
"Example Content" : "Obsah pro ukázku",
"Set example content to be created on new user first login." : "Nastavit obsah pro ukázku, který vytvořit při prvním přihlášení nového uživatele.",
"Import contact" : "Importovat kontakt",
"Reset to default contact" : "Vrátit na výchozí kontakt",
"Import contacts" : "Importovat kontakty",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "Naimportování nového .vcf souboru smaže stávající výchozí kontakt a nahradí ho novým. Chcete pokračovat?",
"There was an error updating your attendance status." : "Vyskytla se chyba při aktualizaci vašeho stavu účasti.",
"Please contact the organizer directly." : "Kontaktujte organizátora přímo.",
"Are you accepting the invitation?" : "Přijímáte pozvání?",
+13
View File
@@ -304,6 +304,19 @@
"Send reminder notifications to calendar sharees as well" : "Poslat připomínky také těm, kteří mají tento sdílený kalendář připojený",
"Reminders are always sent to organizers and attendees." : "Připomínky jsou vždy poslány organizátorům a účastníkům.",
"Enable notifications for events via push" : "Upozorňovat na události prostřednictvím služby push",
"Cancel" : "Storno",
"Import" : "Naimportovat",
"Error while saving settings" : "Chyba při ukládání nastavení",
"Contact reset successfully" : "Kontakt úspěšně resetován",
"Error while resetting contact" : "Chyba při resetování kontaktu",
"Contact imported successfully" : "Kontakt úspěšně naimportován",
"Error while importing contact" : "Chyba při importování kontaktu",
"Example Content" : "Obsah pro ukázku",
"Set example content to be created on new user first login." : "Nastavit obsah pro ukázku, který vytvořit při prvním přihlášení nového uživatele.",
"Import contact" : "Importovat kontakt",
"Reset to default contact" : "Vrátit na výchozí kontakt",
"Import contacts" : "Importovat kontakty",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "Naimportování nového .vcf souboru smaže stávající výchozí kontakt a nahradí ho novým. Chcete pokračovat?",
"There was an error updating your attendance status." : "Vyskytla se chyba při aktualizaci vašeho stavu účasti.",
"Please contact the organizer directly." : "Kontaktujte organizátora přímo.",
"Are you accepting the invitation?" : "Přijímáte pozvání?",
+3
View File
@@ -303,6 +303,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Send også påmindelsesmeddelelser til kalenderdelinger",
"Reminders are always sent to organizers and attendees." : "Påmindelser sendes altid til arrangører og deltagere.",
"Enable notifications for events via push" : "Aktiver notifikationer for begivenheder via push",
"Cancel" : "Annuller",
"Import" : "Importer",
"Error while saving settings" : "Der opstod en fejl under lagring af indstillinger",
"There was an error updating your attendance status." : "Der opstod en fejl under opdatering af din fremmødestatus.",
"Please contact the organizer directly." : "Kontakt venligst arrangøren direkte.",
"Are you accepting the invitation?" : "Accepter du invitationen?",
+3
View File
@@ -301,6 +301,9 @@
"Send reminder notifications to calendar sharees as well" : "Send også påmindelsesmeddelelser til kalenderdelinger",
"Reminders are always sent to organizers and attendees." : "Påmindelser sendes altid til arrangører og deltagere.",
"Enable notifications for events via push" : "Aktiver notifikationer for begivenheder via push",
"Cancel" : "Annuller",
"Import" : "Importer",
"Error while saving settings" : "Der opstod en fejl under lagring af indstillinger",
"There was an error updating your attendance status." : "Der opstod en fejl under opdatering af din fremmødestatus.",
"Please contact the organizer directly." : "Kontakt venligst arrangøren direkte.",
"Are you accepting the invitation?" : "Accepter du invitationen?",
+13
View File
@@ -306,6 +306,19 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Erinnerungsbenachrichtigungen auch an die freigegebenen Kalender senden",
"Reminders are always sent to organizers and attendees." : "Erinnerungen werden immer an Organisatoren und Teilnehmer gesendet.",
"Enable notifications for events via push" : "Benachrichtigungen für Termine per Push aktivieren",
"Cancel" : "Abbrechen",
"Import" : "Importieren",
"Error while saving settings" : "Fehler beim Speichern der Einstellungen",
"Contact reset successfully" : "Kontakt erfolgreich zurückgesetzt",
"Error while resetting contact" : "Fehler beim Zurücksetzen des Kontakts",
"Contact imported successfully" : "Kontakt erfolgreich importiert",
"Error while importing contact" : "Fehler beim Import des Kontakts",
"Example Content" : "Beispielinhalt",
"Set example content to be created on new user first login." : "Beispielinhalte festlegen, die bei der ersten Anmeldung eines neuen Benutzers erstellt werden sollen.",
"Import contact" : "Kontakt importieren",
"Reset to default contact" : "Standardkontakt zurücksetzen",
"Import contacts" : "Kontakte importieren",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "Durch das Importieren einer neuen VCF-Datei wird der vorhandene Standardkontakt gelöscht und durch den neuen ersetzt. Fortsetzen?",
"There was an error updating your attendance status." : "Es ist ein Fehler beim Aktualisieren deines Teilnehmerstatus aufgetreten.",
"Please contact the organizer directly." : "Bitte den Organisator direkt kontaktieren.",
"Are you accepting the invitation?" : "Die Einladung annehmen?",
+13
View File
@@ -304,6 +304,19 @@
"Send reminder notifications to calendar sharees as well" : "Erinnerungsbenachrichtigungen auch an die freigegebenen Kalender senden",
"Reminders are always sent to organizers and attendees." : "Erinnerungen werden immer an Organisatoren und Teilnehmer gesendet.",
"Enable notifications for events via push" : "Benachrichtigungen für Termine per Push aktivieren",
"Cancel" : "Abbrechen",
"Import" : "Importieren",
"Error while saving settings" : "Fehler beim Speichern der Einstellungen",
"Contact reset successfully" : "Kontakt erfolgreich zurückgesetzt",
"Error while resetting contact" : "Fehler beim Zurücksetzen des Kontakts",
"Contact imported successfully" : "Kontakt erfolgreich importiert",
"Error while importing contact" : "Fehler beim Import des Kontakts",
"Example Content" : "Beispielinhalt",
"Set example content to be created on new user first login." : "Beispielinhalte festlegen, die bei der ersten Anmeldung eines neuen Benutzers erstellt werden sollen.",
"Import contact" : "Kontakt importieren",
"Reset to default contact" : "Standardkontakt zurücksetzen",
"Import contacts" : "Kontakte importieren",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "Durch das Importieren einer neuen VCF-Datei wird der vorhandene Standardkontakt gelöscht und durch den neuen ersetzt. Fortsetzen?",
"There was an error updating your attendance status." : "Es ist ein Fehler beim Aktualisieren deines Teilnehmerstatus aufgetreten.",
"Please contact the organizer directly." : "Bitte den Organisator direkt kontaktieren.",
"Are you accepting the invitation?" : "Die Einladung annehmen?",
+13
View File
@@ -306,6 +306,19 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Erinnerungsbenachrichtigungen auch an die Kalenderfreigaben senden",
"Reminders are always sent to organizers and attendees." : "Erinnerungen werden immer an Organisatoren und Teilnehmer gesendet.",
"Enable notifications for events via push" : "Benachrichtigungen für Termine per Push aktivieren",
"Cancel" : "Abbrechen",
"Import" : "Importieren",
"Error while saving settings" : "Fehler beim Speichern der Einstellungen",
"Contact reset successfully" : "Kontakt zurückgesetzt",
"Error while resetting contact" : "Fehler beim Zurücksetzen des Kontakts",
"Contact imported successfully" : "Kontakt importiert",
"Error while importing contact" : "Fehler beim Import des Kontakts",
"Example Content" : "Beispielinhalt",
"Set example content to be created on new user first login." : "Beispielinhalte festlegen, die bei der ersten Anmeldung eines neuen Benutzers erstellt werden sollen.",
"Import contact" : "Kontakt importieren",
"Reset to default contact" : "Standardkontakt zurücksetzen",
"Import contacts" : "Kontakte importieren",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "Durch das Importieren einer neuen VCF-Datei wird der vorhandene Standardkontakt gelöscht und durch den neuen ersetzt. Fortsetzen?",
"There was an error updating your attendance status." : "Es ist ein Fehler beim Aktualisieren Ihres Teilnehmerstatus aufgetreten.",
"Please contact the organizer directly." : "Bitte den Organisator direkt kontaktieren.",
"Are you accepting the invitation?" : "Die Einladung annehmen?",
+13
View File
@@ -304,6 +304,19 @@
"Send reminder notifications to calendar sharees as well" : "Erinnerungsbenachrichtigungen auch an die Kalenderfreigaben senden",
"Reminders are always sent to organizers and attendees." : "Erinnerungen werden immer an Organisatoren und Teilnehmer gesendet.",
"Enable notifications for events via push" : "Benachrichtigungen für Termine per Push aktivieren",
"Cancel" : "Abbrechen",
"Import" : "Importieren",
"Error while saving settings" : "Fehler beim Speichern der Einstellungen",
"Contact reset successfully" : "Kontakt zurückgesetzt",
"Error while resetting contact" : "Fehler beim Zurücksetzen des Kontakts",
"Contact imported successfully" : "Kontakt importiert",
"Error while importing contact" : "Fehler beim Import des Kontakts",
"Example Content" : "Beispielinhalt",
"Set example content to be created on new user first login." : "Beispielinhalte festlegen, die bei der ersten Anmeldung eines neuen Benutzers erstellt werden sollen.",
"Import contact" : "Kontakt importieren",
"Reset to default contact" : "Standardkontakt zurücksetzen",
"Import contacts" : "Kontakte importieren",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "Durch das Importieren einer neuen VCF-Datei wird der vorhandene Standardkontakt gelöscht und durch den neuen ersetzt. Fortsetzen?",
"There was an error updating your attendance status." : "Es ist ein Fehler beim Aktualisieren Ihres Teilnehmerstatus aufgetreten.",
"Please contact the organizer directly." : "Bitte den Organisator direkt kontaktieren.",
"Are you accepting the invitation?" : "Die Einladung annehmen?",
+13
View File
@@ -306,6 +306,19 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Send reminder notifications to calendar sharees as well",
"Reminders are always sent to organizers and attendees." : "Reminders are always sent to organisers and attendees.",
"Enable notifications for events via push" : "Enable notifications for events via push",
"Cancel" : "Cancel",
"Import" : "Import",
"Error while saving settings" : "Error while saving settings",
"Contact reset successfully" : "Contact reset successfully",
"Error while resetting contact" : "Error while resetting contact",
"Contact imported successfully" : "Contact imported successfully",
"Error while importing contact" : "Error while importing contact",
"Example Content" : "Example Content",
"Set example content to be created on new user first login." : "Set example content to be created on new user first login.",
"Import contact" : "Import contact",
"Reset to default contact" : "Reset to default contact",
"Import contacts" : "Import contacts",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?",
"There was an error updating your attendance status." : "There was an error updating your attendance status.",
"Please contact the organizer directly." : "Please contact the organiser directly.",
"Are you accepting the invitation?" : "Are you accepting the invitation?",
+13
View File
@@ -304,6 +304,19 @@
"Send reminder notifications to calendar sharees as well" : "Send reminder notifications to calendar sharees as well",
"Reminders are always sent to organizers and attendees." : "Reminders are always sent to organisers and attendees.",
"Enable notifications for events via push" : "Enable notifications for events via push",
"Cancel" : "Cancel",
"Import" : "Import",
"Error while saving settings" : "Error while saving settings",
"Contact reset successfully" : "Contact reset successfully",
"Error while resetting contact" : "Error while resetting contact",
"Contact imported successfully" : "Contact imported successfully",
"Error while importing contact" : "Error while importing contact",
"Example Content" : "Example Content",
"Set example content to be created on new user first login." : "Set example content to be created on new user first login.",
"Import contact" : "Import contact",
"Reset to default contact" : "Reset to default contact",
"Import contacts" : "Import contacts",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?",
"There was an error updating your attendance status." : "There was an error updating your attendance status.",
"Please contact the organizer directly." : "Please contact the organiser directly.",
"Are you accepting the invitation?" : "Are you accepting the invitation?",
+3
View File
@@ -301,6 +301,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Enviar recordatorio también a los usuarios con los que se comparte el calendario",
"Reminders are always sent to organizers and attendees." : "Los recordatorios siempre se envían a los organizadores y asistentes.",
"Enable notifications for events via push" : "Activar notificaciones push para eventos",
"Cancel" : "Cancelar",
"Import" : "Importar",
"Error while saving settings" : "Error al guardar los ajustes",
"There was an error updating your attendance status." : "Ha habido un error al actualizar tu estado de asistencia.",
"Please contact the organizer directly." : "Por favor, contacta directamente con el organizador.",
"Are you accepting the invitation?" : "¿Aceptas la invitación?",
+3
View File
@@ -299,6 +299,9 @@
"Send reminder notifications to calendar sharees as well" : "Enviar recordatorio también a los usuarios con los que se comparte el calendario",
"Reminders are always sent to organizers and attendees." : "Los recordatorios siempre se envían a los organizadores y asistentes.",
"Enable notifications for events via push" : "Activar notificaciones push para eventos",
"Cancel" : "Cancelar",
"Import" : "Importar",
"Error while saving settings" : "Error al guardar los ajustes",
"There was an error updating your attendance status." : "Ha habido un error al actualizar tu estado de asistencia.",
"Please contact the organizer directly." : "Por favor, contacta directamente con el organizador.",
"Are you accepting the invitation?" : "¿Aceptas la invitación?",
+3
View File
@@ -195,6 +195,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Enviar recordatorios a los asistentes del calendario también",
"Reminders are always sent to organizers and attendees." : "Los recordatorios siempre se envían a los organizadores y asistentes.",
"Enable notifications for events via push" : "Habilitar notificaciones para eventos mediante push",
"Cancel" : "Cancelar",
"Import" : "Importar",
"Error while saving settings" : "Error al guardar la configuración.",
"There was an error updating your attendance status." : "Hubo un error al actualizar tu estado de asistencia.",
"Please contact the organizer directly." : "Por favor, contacta directamente al organizador.",
"Are you accepting the invitation?" : "¿Aceptas la invitación?",
+3
View File
@@ -193,6 +193,9 @@
"Send reminder notifications to calendar sharees as well" : "Enviar recordatorios a los asistentes del calendario también",
"Reminders are always sent to organizers and attendees." : "Los recordatorios siempre se envían a los organizadores y asistentes.",
"Enable notifications for events via push" : "Habilitar notificaciones para eventos mediante push",
"Cancel" : "Cancelar",
"Import" : "Importar",
"Error while saving settings" : "Error al guardar la configuración.",
"There was an error updating your attendance status." : "Hubo un error al actualizar tu estado de asistencia.",
"Please contact the organizer directly." : "Por favor, contacta directamente al organizador.",
"Are you accepting the invitation?" : "¿Aceptas la invitación?",
+3
View File
@@ -236,6 +236,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Enviar recordatorio también a los usuarios con los que se comparte el calendario",
"Reminders are always sent to organizers and attendees." : "Los recordatorios se envían siempre a los organizadores y asistentes.",
"Enable notifications for events via push" : "Habilitar notificaciones para eventos mediante push",
"Cancel" : "Cancelar",
"Import" : "Importar",
"Error while saving settings" : "Error al guardar la configuración",
"There was an error updating your attendance status." : "Ocurrió un error al actualizar su estado de asistencia.",
"Please contact the organizer directly." : "Por favor, contacte al organizador directamente.",
"Are you accepting the invitation?" : "¿Acepta la invitación?",
+3
View File
@@ -234,6 +234,9 @@
"Send reminder notifications to calendar sharees as well" : "Enviar recordatorio también a los usuarios con los que se comparte el calendario",
"Reminders are always sent to organizers and attendees." : "Los recordatorios se envían siempre a los organizadores y asistentes.",
"Enable notifications for events via push" : "Habilitar notificaciones para eventos mediante push",
"Cancel" : "Cancelar",
"Import" : "Importar",
"Error while saving settings" : "Error al guardar la configuración",
"There was an error updating your attendance status." : "Ocurrió un error al actualizar su estado de asistencia.",
"Please contact the organizer directly." : "Por favor, contacte al organizador directamente.",
"Are you accepting the invitation?" : "¿Acepta la invitación?",
+3
View File
@@ -301,6 +301,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Bidali gogorarazpen jakinarazpenak egutegi partekatzea dutenei ere",
"Reminders are always sent to organizers and attendees." : "Gogorarazpenak beti bidaltzen zaizkie antolatzaileei eta parte-hartzaileei.",
"Enable notifications for events via push" : "Gaitu push bidezko jakinarazpenak gertaerentzat",
"Cancel" : "Utzi",
"Import" : "Inportatu",
"Error while saving settings" : "Errorea ezarpenak gordetzean",
"There was an error updating your attendance status." : "Errore bat gertatu da zure parte-hartze egoera eguneratzerakoan.",
"Please contact the organizer directly." : "Mesedez jarri harremanetan antolatzailearekin zuzenean.",
"Are you accepting the invitation?" : "Gonbidapena onartzen duzu?",
+3
View File
@@ -299,6 +299,9 @@
"Send reminder notifications to calendar sharees as well" : "Bidali gogorarazpen jakinarazpenak egutegi partekatzea dutenei ere",
"Reminders are always sent to organizers and attendees." : "Gogorarazpenak beti bidaltzen zaizkie antolatzaileei eta parte-hartzaileei.",
"Enable notifications for events via push" : "Gaitu push bidezko jakinarazpenak gertaerentzat",
"Cancel" : "Utzi",
"Import" : "Inportatu",
"Error while saving settings" : "Errorea ezarpenak gordetzean",
"There was an error updating your attendance status." : "Errore bat gertatu da zure parte-hartze egoera eguneratzerakoan.",
"Please contact the organizer directly." : "Mesedez jarri harremanetan antolatzailearekin zuzenean.",
"Are you accepting the invitation?" : "Gonbidapena onartzen duzu?",
+3
View File
@@ -193,6 +193,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Send reminder notifications to calendar sharees as well",
"Reminders are always sent to organizers and attendees." : "Reminders are always sent to organizers and attendees.",
"Enable notifications for events via push" : "Enable notifications for events via push",
"Cancel" : "ردکردن",
"Import" : "وارد کردن",
"Error while saving settings" : "Error while saving settings",
"There was an error updating your attendance status." : "There was an error updating your attendance status.",
"Please contact the organizer directly." : "Please contact the organizer directly.",
"Are you accepting the invitation?" : "Are you accepting the invitation?",
+3
View File
@@ -191,6 +191,9 @@
"Send reminder notifications to calendar sharees as well" : "Send reminder notifications to calendar sharees as well",
"Reminders are always sent to organizers and attendees." : "Reminders are always sent to organizers and attendees.",
"Enable notifications for events via push" : "Enable notifications for events via push",
"Cancel" : "ردکردن",
"Import" : "وارد کردن",
"Error while saving settings" : "Error while saving settings",
"There was an error updating your attendance status." : "There was an error updating your attendance status.",
"Please contact the organizer directly." : "Please contact the organizer directly.",
"Are you accepting the invitation?" : "Are you accepting the invitation?",
+3
View File
@@ -272,6 +272,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Envoyez également des notifications de rappel aux personnes partageant le calendrier",
"Reminders are always sent to organizers and attendees." : "Des rappels sont toujours envoyés aux organisateurs et aux participants.",
"Enable notifications for events via push" : "Activer les notifications push pour les évènements",
"Cancel" : "Annuler",
"Import" : "Importation",
"Error while saving settings" : "Erreur lors de l'enregistrement des paramètres",
"There was an error updating your attendance status." : "Une erreur s'est produite lors de la mise à jour de votre statut de présence.",
"Please contact the organizer directly." : "Merci de contacter l'organisateur directement.",
"Are you accepting the invitation?" : "Acceptez-vous l'invitation ?",
+3
View File
@@ -270,6 +270,9 @@
"Send reminder notifications to calendar sharees as well" : "Envoyez également des notifications de rappel aux personnes partageant le calendrier",
"Reminders are always sent to organizers and attendees." : "Des rappels sont toujours envoyés aux organisateurs et aux participants.",
"Enable notifications for events via push" : "Activer les notifications push pour les évènements",
"Cancel" : "Annuler",
"Import" : "Importation",
"Error while saving settings" : "Erreur lors de l'enregistrement des paramètres",
"There was an error updating your attendance status." : "Une erreur s'est produite lors de la mise à jour de votre statut de présence.",
"Please contact the organizer directly." : "Merci de contacter l'organisateur directement.",
"Are you accepting the invitation?" : "Acceptez-vous l'invitation ?",
+13
View File
@@ -306,6 +306,19 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Seol fógraí meabhrúcháin chuig scaireanna féilire freisin",
"Reminders are always sent to organizers and attendees." : "Seoltar meabhrúcháin chuig na heagraithe agus an lucht freastail i gcónaí.",
"Enable notifications for events via push" : "Cumasaigh fógraí le haghaidh imeachtaí trí bhrú",
"Cancel" : "Cealaigh",
"Import" : "Iompórtáil",
"Error while saving settings" : "Earráid agus na socruithe á sábháil",
"Contact reset successfully" : "D'éirigh le hathshocrú teagmhála",
"Error while resetting contact" : "Earráid agus an teagmhálaí á athshocrú",
"Contact imported successfully" : "D'éirigh le hiompórtáil an teagmhálaí",
"Error while importing contact" : "Earráid agus an teagmhálaí á iompórtáil",
"Example Content" : "Ábhar Samplach",
"Set example content to be created on new user first login." : "Socraigh ábhar samplach le cruthú ar an gcéad logáil isteach úsáideora nua.",
"Import contact" : "Iompórtáil teagmhála",
"Reset to default contact" : "Athshocraigh go teagmhálaí réamhshocraithe",
"Import contacts" : "Teagmhálaithe a allmhairiú",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "Má dhéantar comhad .vcf nua a iompórtáil, scriosfar an teagmhálaí réamhshocraithe atá ann cheana féin agus cuirfear an ceann nua ina ionad. Ar mhaith leat leanúint ar aghaidh?",
"There was an error updating your attendance status." : "Tharla earráid agus do stádas freastail á nuashonrú.",
"Please contact the organizer directly." : "Téigh i dteagmháil leis an eagraí go díreach le do thoil.",
"Are you accepting the invitation?" : "An bhfuil tú ag glacadh leis an gcuireadh?",
+13
View File
@@ -304,6 +304,19 @@
"Send reminder notifications to calendar sharees as well" : "Seol fógraí meabhrúcháin chuig scaireanna féilire freisin",
"Reminders are always sent to organizers and attendees." : "Seoltar meabhrúcháin chuig na heagraithe agus an lucht freastail i gcónaí.",
"Enable notifications for events via push" : "Cumasaigh fógraí le haghaidh imeachtaí trí bhrú",
"Cancel" : "Cealaigh",
"Import" : "Iompórtáil",
"Error while saving settings" : "Earráid agus na socruithe á sábháil",
"Contact reset successfully" : "D'éirigh le hathshocrú teagmhála",
"Error while resetting contact" : "Earráid agus an teagmhálaí á athshocrú",
"Contact imported successfully" : "D'éirigh le hiompórtáil an teagmhálaí",
"Error while importing contact" : "Earráid agus an teagmhálaí á iompórtáil",
"Example Content" : "Ábhar Samplach",
"Set example content to be created on new user first login." : "Socraigh ábhar samplach le cruthú ar an gcéad logáil isteach úsáideora nua.",
"Import contact" : "Iompórtáil teagmhála",
"Reset to default contact" : "Athshocraigh go teagmhálaí réamhshocraithe",
"Import contacts" : "Teagmhálaithe a allmhairiú",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "Má dhéantar comhad .vcf nua a iompórtáil, scriosfar an teagmhálaí réamhshocraithe atá ann cheana féin agus cuirfear an ceann nua ina ionad. Ar mhaith leat leanúint ar aghaidh?",
"There was an error updating your attendance status." : "Tharla earráid agus do stádas freastail á nuashonrú.",
"Please contact the organizer directly." : "Téigh i dteagmháil leis an eagraí go díreach le do thoil.",
"Are you accepting the invitation?" : "An bhfuil tú ag glacadh leis an gcuireadh?",
+3
View File
@@ -303,6 +303,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Enviar notificacións de lembrete tamén aos que comparten calendario",
"Reminders are always sent to organizers and attendees." : "Os lembretes envíanselle sempre aos organizadores e aos asistentes.",
"Enable notifications for events via push" : "Activar o envío de notificacións emerxentes para eventos",
"Cancel" : "Cancelar",
"Import" : "Importar",
"Error while saving settings" : "Produciuse un erro ao gardar os axustes",
"There was an error updating your attendance status." : "Produciuse un erro ao actualizar o seu estado de asistencia.",
"Please contact the organizer directly." : "Contacte directamente co organizador.",
"Are you accepting the invitation?" : "Acepta Vde. o convite?",
+3
View File
@@ -301,6 +301,9 @@
"Send reminder notifications to calendar sharees as well" : "Enviar notificacións de lembrete tamén aos que comparten calendario",
"Reminders are always sent to organizers and attendees." : "Os lembretes envíanselle sempre aos organizadores e aos asistentes.",
"Enable notifications for events via push" : "Activar o envío de notificacións emerxentes para eventos",
"Cancel" : "Cancelar",
"Import" : "Importar",
"Error while saving settings" : "Produciuse un erro ao gardar os axustes",
"There was an error updating your attendance status." : "Produciuse un erro ao actualizar o seu estado de asistencia.",
"Please contact the organizer directly." : "Contacte directamente co organizador.",
"Are you accepting the invitation?" : "Acepta Vde. o convite?",
+3
View File
@@ -260,6 +260,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Emlékeztető értesítések küldése azoknak is, akikkel a naptár meg van osztva",
"Reminders are always sent to organizers and attendees." : "Az értesítések mindig a szervezőknek és a résztvevőknek lesznek elküldve.",
"Enable notifications for events via push" : "Leküldéses értesítések engedélyezése az eseményekhez",
"Cancel" : "Mégse",
"Import" : "Importálás",
"Error while saving settings" : "Hiba a beállítások mentése során",
"There was an error updating your attendance status." : "Hiba történt a részvételi állapotának frissítése során.",
"Please contact the organizer directly." : "Vegye fel a kapcsolatot közvetlenül a szervezővel.",
"Are you accepting the invitation?" : "Elfogadja az meghívást?",
+3
View File
@@ -258,6 +258,9 @@
"Send reminder notifications to calendar sharees as well" : "Emlékeztető értesítések küldése azoknak is, akikkel a naptár meg van osztva",
"Reminders are always sent to organizers and attendees." : "Az értesítések mindig a szervezőknek és a résztvevőknek lesznek elküldve.",
"Enable notifications for events via push" : "Leküldéses értesítések engedélyezése az eseményekhez",
"Cancel" : "Mégse",
"Import" : "Importálás",
"Error while saving settings" : "Hiba a beállítások mentése során",
"There was an error updating your attendance status." : "Hiba történt a részvételi állapotának frissítése során.",
"Please contact the organizer directly." : "Vegye fel a kapcsolatot közvetlenül a szervezővel.",
"Are you accepting the invitation?" : "Elfogadja az meghívást?",
+3
View File
@@ -303,6 +303,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Senda einnig tilkynningar til þeirra sem deila dagatalinu",
"Reminders are always sent to organizers and attendees." : "Áminningar eru alltaf sendar til skipuleggjenda og þátttakenda.",
"Enable notifications for events via push" : "Senda tilkynningar fyrir atburði sem ýtitilkynningar",
"Cancel" : "Hætta við",
"Import" : "Flytja inn",
"Error while saving settings" : "Villa við að vista stillingar",
"There was an error updating your attendance status." : "Það kom upp villa við að uppfæra mætingarstöðu þína.",
"Please contact the organizer directly." : "Hafðu samband beint við skipuleggjendurna.",
"Are you accepting the invitation?" : "Ætlar þú að samþykkja boðið?",
+3
View File
@@ -301,6 +301,9 @@
"Send reminder notifications to calendar sharees as well" : "Senda einnig tilkynningar til þeirra sem deila dagatalinu",
"Reminders are always sent to organizers and attendees." : "Áminningar eru alltaf sendar til skipuleggjenda og þátttakenda.",
"Enable notifications for events via push" : "Senda tilkynningar fyrir atburði sem ýtitilkynningar",
"Cancel" : "Hætta við",
"Import" : "Flytja inn",
"Error while saving settings" : "Villa við að vista stillingar",
"There was an error updating your attendance status." : "Það kom upp villa við að uppfæra mætingarstöðu þína.",
"Please contact the organizer directly." : "Hafðu samband beint við skipuleggjendurna.",
"Are you accepting the invitation?" : "Ætlar þú að samþykkja boðið?",
+3
View File
@@ -223,6 +223,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Invia notifiche di promemoria anche ai partecipanti al calendario",
"Reminders are always sent to organizers and attendees." : "I promemoria vengono sempre inviati agli organizzatori e ai partecipanti.",
"Enable notifications for events via push" : "Abilita notifiche per eventi tramite push",
"Cancel" : "Annulla",
"Import" : "Importa",
"Error while saving settings" : "Errore durante il salvataggio delle impostazioni",
"There was an error updating your attendance status." : "Si è verificato un errore durante l'aggiornamento dello stato della tua partecipazione.",
"Please contact the organizer directly." : "Contatta direttamente l'amministratore.",
"Are you accepting the invitation?" : "Accetti l'invito?",
+3
View File
@@ -221,6 +221,9 @@
"Send reminder notifications to calendar sharees as well" : "Invia notifiche di promemoria anche ai partecipanti al calendario",
"Reminders are always sent to organizers and attendees." : "I promemoria vengono sempre inviati agli organizzatori e ai partecipanti.",
"Enable notifications for events via push" : "Abilita notifiche per eventi tramite push",
"Cancel" : "Annulla",
"Import" : "Importa",
"Error while saving settings" : "Errore durante il salvataggio delle impostazioni",
"There was an error updating your attendance status." : "Si è verificato un errore durante l'aggiornamento dello stato della tua partecipazione.",
"Please contact the organizer directly." : "Contatta direttamente l'amministratore.",
"Are you accepting the invitation?" : "Accetti l'invito?",
+13
View File
@@ -306,6 +306,19 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "カレンダー共有にもリマインダー通知を送信する",
"Reminders are always sent to organizers and attendees." : "リマインダーを常に作成者と出席者に送信します。",
"Enable notifications for events via push" : "イベントのプッシュ通知を有効にする",
"Cancel" : "キャンセル",
"Import" : "インポート",
"Error while saving settings" : "設定の保存中にエラーが発生",
"Contact reset successfully" : "連絡先のリセットが正常に完了しました",
"Error while resetting contact" : "連絡先のリセット中にエラーが発生しました",
"Contact imported successfully" : "連絡先のインポートが正常に完了しました",
"Error while importing contact" : "連絡先のインポート中にエラーが発生しました",
"Example Content" : "サンプルコンテンツ",
"Set example content to be created on new user first login." : "新規ユーザの初回ログイン時に作成されるサンプルコンテンツを設定します。",
"Import contact" : "連絡先のインポート",
"Reset to default contact" : "デフォルトの連絡先にリセットする",
"Import contacts" : "連絡先のインポート",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "新しい .vcf ファイルをインポートすると、既存のデフォルト連絡先が削除され、新しいものに置き換えられます。続行しますか?",
"There was an error updating your attendance status." : "出席状況の更新中にエラーが発生しました。",
"Please contact the organizer directly." : "主催者に直接お問い合わせください。",
"Are you accepting the invitation?" : "招待を受け入れていますか?",
+13
View File
@@ -304,6 +304,19 @@
"Send reminder notifications to calendar sharees as well" : "カレンダー共有にもリマインダー通知を送信する",
"Reminders are always sent to organizers and attendees." : "リマインダーを常に作成者と出席者に送信します。",
"Enable notifications for events via push" : "イベントのプッシュ通知を有効にする",
"Cancel" : "キャンセル",
"Import" : "インポート",
"Error while saving settings" : "設定の保存中にエラーが発生",
"Contact reset successfully" : "連絡先のリセットが正常に完了しました",
"Error while resetting contact" : "連絡先のリセット中にエラーが発生しました",
"Contact imported successfully" : "連絡先のインポートが正常に完了しました",
"Error while importing contact" : "連絡先のインポート中にエラーが発生しました",
"Example Content" : "サンプルコンテンツ",
"Set example content to be created on new user first login." : "新規ユーザの初回ログイン時に作成されるサンプルコンテンツを設定します。",
"Import contact" : "連絡先のインポート",
"Reset to default contact" : "デフォルトの連絡先にリセットする",
"Import contacts" : "連絡先のインポート",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "新しい .vcf ファイルをインポートすると、既存のデフォルト連絡先が削除され、新しいものに置き換えられます。続行しますか?",
"There was an error updating your attendance status." : "出席状況の更新中にエラーが発生しました。",
"Please contact the organizer directly." : "主催者に直接お問い合わせください。",
"Are you accepting the invitation?" : "招待を受け入れていますか?",
+3
View File
@@ -207,6 +207,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Send reminder notifications to calendar sharees as well",
"Reminders are always sent to organizers and attendees." : "Reminders are always sent to organizers and attendees.",
"Enable notifications for events via push" : "Enable notifications for events via push",
"Cancel" : "Cancel",
"Import" : "Import",
"Error while saving settings" : "Error while saving settings",
"There was an error updating your attendance status." : "There was an error updating your attendance status.",
"Please contact the organizer directly." : "Please contact the organizer directly.",
"Are you accepting the invitation?" : "Are you accepting the invitation?",
+3
View File
@@ -205,6 +205,9 @@
"Send reminder notifications to calendar sharees as well" : "Send reminder notifications to calendar sharees as well",
"Reminders are always sent to organizers and attendees." : "Reminders are always sent to organizers and attendees.",
"Enable notifications for events via push" : "Enable notifications for events via push",
"Cancel" : "Cancel",
"Import" : "Import",
"Error while saving settings" : "Error while saving settings",
"There was an error updating your attendance status." : "There was an error updating your attendance status.",
"Please contact the organizer directly." : "Please contact the organizer directly.",
"Are you accepting the invitation?" : "Are you accepting the invitation?",
+3
View File
@@ -208,6 +208,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "캘린더 공유자에게도 미리 알림 보내기",
"Reminders are always sent to organizers and attendees." : "미리 알림은 주최자와 참석자에게 항상 전송됩니다.",
"Enable notifications for events via push" : "일정에 대한 푸시 알림 활성화",
"Cancel" : "취소",
"Import" : "가져오기",
"Error while saving settings" : "설정 저장 중 오류 발생",
"There was an error updating your attendance status." : "참석 상태를 업데이트하는 중 오류가 발생했습니다.",
"Please contact the organizer directly." : "주최자에게 직접 연락하십시오.",
"Are you accepting the invitation?" : "초대를 수락하시겠습니까?",
+3
View File
@@ -206,6 +206,9 @@
"Send reminder notifications to calendar sharees as well" : "캘린더 공유자에게도 미리 알림 보내기",
"Reminders are always sent to organizers and attendees." : "미리 알림은 주최자와 참석자에게 항상 전송됩니다.",
"Enable notifications for events via push" : "일정에 대한 푸시 알림 활성화",
"Cancel" : "취소",
"Import" : "가져오기",
"Error while saving settings" : "설정 저장 중 오류 발생",
"There was an error updating your attendance status." : "참석 상태를 업데이트하는 중 오류가 발생했습니다.",
"Please contact the organizer directly." : "주최자에게 직접 연락하십시오.",
"Are you accepting the invitation?" : "초대를 수락하시겠습니까?",
+2
View File
@@ -197,6 +197,8 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Испратете известувања за потсетници и до споделувањата на календарот",
"Reminders are always sent to organizers and attendees." : "Секогаш се испраќаат потсетници до организаторите и до присутните.",
"Enable notifications for events via push" : "Овозможи известувања за настани преку push",
"Cancel" : "Откажи",
"Import" : "Увези",
"There was an error updating your attendance status." : "Настана грешка при ажурирање на вашето присуство.",
"Please contact the organizer directly." : "Контактирајте го организаторот директно.",
"Are you accepting the invitation?" : "Дали ја прифаќате поканата?",
+2
View File
@@ -195,6 +195,8 @@
"Send reminder notifications to calendar sharees as well" : "Испратете известувања за потсетници и до споделувањата на календарот",
"Reminders are always sent to organizers and attendees." : "Секогаш се испраќаат потсетници до организаторите и до присутните.",
"Enable notifications for events via push" : "Овозможи известувања за настани преку push",
"Cancel" : "Откажи",
"Import" : "Увези",
"There was an error updating your attendance status." : "Настана грешка при ажурирање на вашето присуство.",
"Please contact the organizer directly." : "Контактирајте го организаторот директно.",
"Are you accepting the invitation?" : "Дали ја прифаќате поканата?",
+3
View File
@@ -263,6 +263,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Send påminnelsesvarsler til kalenderdelinger også",
"Reminders are always sent to organizers and attendees." : "Reminders are always sent to organizers and attendees.",
"Enable notifications for events via push" : "Aktiver varsler for hendelser via push",
"Cancel" : "Avbryt",
"Import" : "Importer",
"Error while saving settings" : "Feil ved lagring av innstillinger",
"There was an error updating your attendance status." : "Det oppsto en feil under oppdateringen av oppmøtestatusen din.",
"Please contact the organizer directly." : "Ta kontakt med arrangøren direkte.",
"Are you accepting the invitation?" : "Aksepterer du invitasjonen?",
+3
View File
@@ -261,6 +261,9 @@
"Send reminder notifications to calendar sharees as well" : "Send påminnelsesvarsler til kalenderdelinger også",
"Reminders are always sent to organizers and attendees." : "Reminders are always sent to organizers and attendees.",
"Enable notifications for events via push" : "Aktiver varsler for hendelser via push",
"Cancel" : "Avbryt",
"Import" : "Importer",
"Error while saving settings" : "Feil ved lagring av innstillinger",
"There was an error updating your attendance status." : "Det oppsto en feil under oppdateringen av oppmøtestatusen din.",
"Please contact the organizer directly." : "Ta kontakt med arrangøren direkte.",
"Are you accepting the invitation?" : "Aksepterer du invitasjonen?",
+3
View File
@@ -179,6 +179,9 @@ OC.L10N.register(
"Send notifications for events" : "Versturen meldingen voor afspraken",
"Notifications are sent via background jobs, so these must occur often enough." : "Meldingen worden via achtergrondtaken verstuurd, dus die moeten vaak genoeg plaatsvinden.",
"Enable notifications for events via push" : "Inschakelen push-melding voor afspraken",
"Cancel" : "Annuleren",
"Import" : "Import",
"Error while saving settings" : "Probleem tijdens het opslaan van instellingen",
"There was an error updating your attendance status." : "Er trad een fout op bij het bijwerken van je deelnamestatus.",
"Please contact the organizer directly." : "Neem rechtstreeks contact op met de organisator.",
"Are you accepting the invitation?" : "Neem je de uitnodiging aan?",
+3
View File
@@ -177,6 +177,9 @@
"Send notifications for events" : "Versturen meldingen voor afspraken",
"Notifications are sent via background jobs, so these must occur often enough." : "Meldingen worden via achtergrondtaken verstuurd, dus die moeten vaak genoeg plaatsvinden.",
"Enable notifications for events via push" : "Inschakelen push-melding voor afspraken",
"Cancel" : "Annuleren",
"Import" : "Import",
"Error while saving settings" : "Probleem tijdens het opslaan van instellingen",
"There was an error updating your attendance status." : "Er trad een fout op bij het bijwerken van je deelnamestatus.",
"Please contact the organizer directly." : "Neem rechtstreeks contact op met de organisator.",
"Are you accepting the invitation?" : "Neem je de uitnodiging aan?",
+3
View File
@@ -231,6 +231,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Wysyłaj przypomnienia również do udostępnionych kalendarzy",
"Reminders are always sent to organizers and attendees." : "Przypomnienia są zawsze wysyłane do organizatorów i uczestników.",
"Enable notifications for events via push" : "Włącz powiadomienia o zdarzeniach poprzez Push",
"Cancel" : "Anuluj",
"Import" : "Importuj",
"Error while saving settings" : "Błąd podczas zapisywania ustawień",
"There was an error updating your attendance status." : "Wystąpił błąd zmiany stanu uczestnictwa",
"Please contact the organizer directly." : "Skontaktuj się bezpośrednio z orgnizatorem.",
"Are you accepting the invitation?" : "Czy akceptujesz zaproszenie?",
+3
View File
@@ -229,6 +229,9 @@
"Send reminder notifications to calendar sharees as well" : "Wysyłaj przypomnienia również do udostępnionych kalendarzy",
"Reminders are always sent to organizers and attendees." : "Przypomnienia są zawsze wysyłane do organizatorów i uczestników.",
"Enable notifications for events via push" : "Włącz powiadomienia o zdarzeniach poprzez Push",
"Cancel" : "Anuluj",
"Import" : "Importuj",
"Error while saving settings" : "Błąd podczas zapisywania ustawień",
"There was an error updating your attendance status." : "Wystąpił błąd zmiany stanu uczestnictwa",
"Please contact the organizer directly." : "Skontaktuj się bezpośrednio z orgnizatorem.",
"Are you accepting the invitation?" : "Czy akceptujesz zaproszenie?",
+120 -107
View File
@@ -32,12 +32,12 @@ OC.L10N.register(
"You deleted event {event} from calendar {calendar}" : "Você excluiu o evento {event} do calendário {calendar}",
"{actor} updated event {event} in calendar {calendar}" : "{actor} atualizou o evento {event} no calendário {calendar}",
"You updated event {event} in calendar {calendar}" : "Você atualizou o evento {event} no calendário {calendar}",
"{actor} moved event {event} from calendar {sourceCalendar} to calendar {targetCalendar}" : "{actor} moveu o evento {event} do calendario {sourceCalendar} para o calendario {targetCalendar}",
"You moved event {event} from calendar {sourceCalendar} to calendar {targetCalendar}" : "Você moveu o evento {event} do calendario {sourceCalendar} para o calendario {targetCalendar}",
"{actor} moved event {event} from calendar {sourceCalendar} to calendar {targetCalendar}" : "{actor} moveu o evento {event} do calendário {sourceCalendar} para o calendário {targetCalendar}",
"You moved event {event} from calendar {sourceCalendar} to calendar {targetCalendar}" : "Você moveu o evento {event} do calendário {sourceCalendar} para o calendário {targetCalendar}",
"{actor} restored event {event} of calendar {calendar}" : "{actor} restaurou o evento {event} do calendário {calendar}",
"You restored event {event} of calendar {calendar}" : "Você restaurou o evento {event} do calendário {calendar}",
"Busy" : "Ocupado",
"{actor} created to-do {todo} in list {calendar}" : "{actor} criou tarefa {todo} na lista {calendar}",
"{actor} created to-do {todo} in list {calendar}" : "{actor} criou a tarefa {todo} na lista {calendar}",
"You created to-do {todo} in list {calendar}" : "Você criou a tarefa {todo} na lista {calendar}",
"{actor} deleted to-do {todo} from list {calendar}" : "{actor} excluiu a tarefa {todo} da lista {calendar}",
"You deleted to-do {todo} from list {calendar}" : "Você excluiu a tarefa {todo} da lista {calendar}",
@@ -51,8 +51,8 @@ OC.L10N.register(
"You moved to-do {todo} from list {sourceCalendar} to list {targetCalendar}" : "Você moveu a tarefa {todo} da lista {sourceCalendar} para a lista {targetCalendar}",
"Calendar, contacts and tasks" : "Calendário, contatos e tarefas",
"A <strong>calendar</strong> was modified" : "Um <strong>calendário</strong> foi modificado",
"A calendar <strong>event</strong> was modified" : "Um <strong>evento</strong> do calendário foi modificado",
"A calendar <strong>to-do</strong> was modified" : "Um calendário <strong>tarefa</strong> foi modificado",
"A calendar <strong>event</strong> was modified" : "Um <strong>evento</strong> de calendário foi modificado",
"A calendar <strong>to-do</strong> was modified" : "Uma <strong>tarefa</strong> de calendário foi modificada",
"Contact birthdays" : "Aniversário dos contatos",
"Death of %s" : "Morte de %s",
"Untitled calendar" : "Calendário sem título",
@@ -74,7 +74,7 @@ OC.L10N.register(
"%1$s via %2$s" : "%1$s via %2$s",
"In the past on %1$s for the entire day" : "No passado em %1$s para o dia inteiro",
"_In a minute on %1$s for the entire day_::_In %n minutes on %1$s for the entire day_" : ["Em um minuto em %1$s para o dia inteiro","Em %n minutos em %1$s para o dia inteiro","Em %n minutos em %1$s para o dia inteiro"],
"_In a hour on %1$s for the entire day_::_In %n hours on %1$s for the entire day_" : ["Em uma hora em %1$s para o dia inteiro","Em %n horas em %1$s para o dia inteiro","Em %n horas em %1$s para o dia inteiro"],
"_In a hour on %1$s for the entire day_::_In %n hours on %1$s for the entire day_" : ["Em uma hora em %1$s para o dia inteiro","Em %n horas em %1$s para o dia inteiro","Em %n horas em %1$s para o dia inteiro"],
"_In a day on %1$s for the entire day_::_In %n days on %1$s for the entire day_" : ["Em um dias em %1$s para o dia inteiro","Em %n dias em %1$s para o dia inteiro","Em %n dias em %1$s para o dia inteiro"],
"_In a week on %1$s for the entire day_::_In %n weeks on %1$s for the entire day_" : ["Em uma semana em %1$s para o dia inteiro","Em %n semanas em %1$s para o dia inteiro","Em %n semanas em %1$s para o dia inteiro"],
"_In a month on %1$s for the entire day_::_In %n months on %1$s for the entire day_" : ["Em um mês em %1$s para o dia inteiro","Em %n meses em %1$s para o dia inteiro","Em %n meses em %1$s para o dia inteiro"],
@@ -86,42 +86,42 @@ OC.L10N.register(
"_In a week on %1$s between %2$s - %3$s_::_In %n weeks on %1$s between %2$s - %3$s_" : ["Em uma semana em %1$s entre %2$s - %3$s","Em %n semanas em %1$s entre %2$s - %3$s","Em %n semanas em %1$s entre %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_" : ["Em um mês em %1$s entre %2$s - %3$s","Em %n meses em %1$s entre %2$s - %3$s","Em %n meses em %1$s entre %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_" : ["Em um ano em %1$s entre %2$s - %3$s","Em %n anos em %1$s entre %2$s - %3$s","Em %n anos em %1$s entre %2$s - %3$s"],
"Could not generate when statement" : "Não foi possível gerar a instrução Quando",
"Every Day for the entire day" : "Todos os dias durante todo o dia",
"Every Day for the entire day until %1$s" : "Todos os dias durante todo o dia até %1$s",
"Every Day between %1$s - %2$s" : "Todos os dias entre %1$s - %2$s",
"Every Day between %1$s - %2$s until %3$s" : "Todos os dias entre %1$s - %2$s até %3$s",
"Every %1$d Days for the entire day" : "A cada %1$d dias durante o dia inteiro",
"Every %1$d Days for the entire day until %2$s" : "Cada %1$d dias durante todo o dia até %2$s",
"Every %1$d Days between %2$s - %3$s" : "Todo os %1$d Dias entre %2$s - %3$s",
"Every %1$d Days between %2$s - %3$s until %4$s" : "Todo os %1$d Dias entre %2$s - %3$s até %4$s",
"Could not generate event recurrence statement" : "Não foi possível gerar a instrução de recorrência do evento",
"Every Week on %1$s for the entire day" : "Todas as semanas em %1$s durante o dia inteiro",
"Every Week on %1$s for the entire day until %2$s" : "Toda semana em %1$s durante todo o dia até %2$s",
"Every Week on %1$s between %2$s - %3$s" : "Toda semana em %1$s entre %2$s - %3$s",
"Every Week on %1$s between %2$s - %3$s until %4$s" : "Toda semana em %1$s entre %2$s - %3$s até %4$s",
"Every %1$d Weeks on %2$s for the entire day" : "Todas as %1$d Semanas em %2$s durante o dia inteiro",
"Every %1$d Weeks on %2$s for the entire day until %3$s" : "Todas as %1$d Semanas em %2$s durante todo o dia até %3$s",
"Every %1$d Weeks on %2$s between %3$s - %4$s" : "Todas as %1$d Semanas em %2$s entre %3$s - %4$s",
"Every %1$d Weeks on %2$s between %3$s - %4$s until %5$s" : "Todas as %1$d Semanas em %2$s entre %3$s - %4$s até %5$s",
"Every Month on the %1$s for the entire day" : "Todo mês em %1$s durante todo o dia",
"Every Month on the %1$s for the entire day until %2$s" : "Todos os meses em %1$s durante todo o dia até %2$s",
"Every Month on the %1$s between %2$s - %3$s" : "Todo mês nos %1$s entre %2$s - %3$s",
"Every Month on the %1$s between %2$s - %3$s until %4$s" : "Todo mês nos %1$s entre %2$s - %3$s até%4$s",
"Every %1$d Months on the %2$s for the entire day" : "A cada %1$d Meses nos %2$s durante o dia inteiro",
"Every %1$d Months on the %2$s for the entire day until %3$s" : "A cada %1$d Meses no %2$s durante todo o dia até%3$s",
"Every %1$d Months on the %2$s between %3$s - %4$s" : "A cada %1$d Meses nos %2$s entre %3$s - %4$s",
"Every %1$d Months on the %2$s between %3$s - %4$s until %5$s" : "A cada %1$d Meses nos %2$s entre %3$s - %4$s até %5$s",
"Every Year in %1$s on the %2$s for the entire day" : "Todos os anos em %1$s em %2$s durante todo o dia",
"Every Year in %1$s on the %2$s for the entire day until %3$s" : "Todos os anos em %1$s em %2$s durante todo o dia até %3$s",
"Every Year in %1$s on the %2$s between %3$s - %4$s" : "Todos os anos em %1$s nos %2$s entre %3$s - %4$s",
"Every Year in %1$s on the %2$s between %3$s - %4$s until %5$s" : "Todos os anos em %1$s nos %2$s entre %3$s - %4$s até %5$s",
"Every %1$d Years in %2$s on the %3$s for the entire day" : "A cada %1$d Anos em %2$s nos %3$s durante o dia inteiro",
"Every %1$d Years in %2$s on the %3$s for the entire day until %4$s" : "A cada %1$d Anos em %2$s nos %3$s durante todo o dia até %4$s",
"Every %1$d Years in %2$s on the %3$s between %4$s - %5$s" : "A cada %1$d Anos em %2$s nos %3$s entre %4$s - %5$s ",
"Every %1$d Years in %2$s on the %3$s between %4$s - %5$s until %6$s" : "A cada %1$d Anos em %2$s nos %3$s entre %4$s - %5$s até%6$s",
"On specific dates for the entire day until %1$s" : "Em datas específicas durante todo o dia até %1$s",
"On specific dates between %1$s - %2$s until %3$s" : "Em datas específicas entre %1$s - %2$s até%3$s",
"Could not generate when statement" : "Não foi possível gerar a indicação sobre quando",
"Every Day for the entire day" : "Todo Dia durante o dia inteiro",
"Every Day for the entire day until %1$s" : "Todo Dia para o dia inteiro até %1$s",
"Every Day between %1$s - %2$s" : "Todo Dia entre %1$s - %2$s",
"Every Day between %1$s - %2$s until %3$s" : "Todo Dia entre %1$s - %2$s até %3$s",
"Every %1$d Days for the entire day" : "A Cada %1$d Dias para o dia inteiro",
"Every %1$d Days for the entire day until %2$s" : "A Cada %1$d Dias para o dia inteiro até %2$s",
"Every %1$d Days between %2$s - %3$s" : "A Cada %1$d Dias entre %2$s - %3$s",
"Every %1$d Days between %2$s - %3$s until %4$s" : "A Cada %1$d Dias entre %2$s - %3$s até %4$s",
"Could not generate event recurrence statement" : "Não foi possível gerar a indicação de recorrência do evento",
"Every Week on %1$s for the entire day" : "Toda Semana, %1$s para o dia inteiro",
"Every Week on %1$s for the entire day until %2$s" : "Toda Semana, %1$s para o dia inteiro até %2$s",
"Every Week on %1$s between %2$s - %3$s" : "Toda Semana, %1$s entre %2$s - %3$s",
"Every Week on %1$s between %2$s - %3$s until %4$s" : "Toda Semana, %1$s entre %2$s - %3$s até %4$s",
"Every %1$d Weeks on %2$s for the entire day" : "A Cada %1$d Semanas, %2$s para o dia inteiro",
"Every %1$d Weeks on %2$s for the entire day until %3$s" : "A Cada %1$d Semanas, %2$s para o dia inteiro até %3$s",
"Every %1$d Weeks on %2$s between %3$s - %4$s" : "A Cada %1$d Semanas, %2$s entre %3$s - %4$s",
"Every %1$d Weeks on %2$s between %3$s - %4$s until %5$s" : "A Cada %1$d Semanas, %2$s entre %3$s - %4$s até %5$s",
"Every Month on the %1$s for the entire day" : "Todo Mês no dia %1$s para o dia inteiro",
"Every Month on the %1$s for the entire day until %2$s" : "Todo Mês no dia %1$s para o dia inteiro até %2$s",
"Every Month on the %1$s between %2$s - %3$s" : "Todo Mês no dia %1$s entre %2$s - %3$s",
"Every Month on the %1$s between %2$s - %3$s until %4$s" : "Todo Mês no dia %1$s entre %2$s - %3$s até %4$s",
"Every %1$d Months on the %2$s for the entire day" : "A Cada %1$d Meses no dia %2$s para o dia inteiro",
"Every %1$d Months on the %2$s for the entire day until %3$s" : "A Cada %1$d Meses no dia %2$s para o dia inteiro até %3$s",
"Every %1$d Months on the %2$s between %3$s - %4$s" : "A Cada %1$d Meses no dia %2$s entre %3$s - %4$s",
"Every %1$d Months on the %2$s between %3$s - %4$s until %5$s" : "A Cada %1$d Meses no dia %2$s entre %3$s - %4$s até %5$s",
"Every Year in %1$s on the %2$s for the entire day" : "Todo Ano em %1$s no dia %2$s para o dia inteiro",
"Every Year in %1$s on the %2$s for the entire day until %3$s" : "Todo Ano em %1$s no dia %2$s para o dia inteiro até %3$s",
"Every Year in %1$s on the %2$s between %3$s - %4$s" : "Todo Ano em %1$s no dia %2$s entre %3$s - %4$s",
"Every Year in %1$s on the %2$s between %3$s - %4$s until %5$s" : "Todo Ano em %1$s no dia %2$s entre %3$s - %4$s até %5$s",
"Every %1$d Years in %2$s on the %3$s for the entire day" : "A Cada %1$d Anos em %2$s no dia %3$s para o dia inteiro",
"Every %1$d Years in %2$s on the %3$s for the entire day until %4$s" : "A Cada %1$d Anos em %2$s no dia %3$s para o dia inteiro até %4$s",
"Every %1$d Years in %2$s on the %3$s between %4$s - %5$s" : "A Cada %1$d Anos em %2$s no dia %3$s entre %4$s - %5$s ",
"Every %1$d Years in %2$s on the %3$s between %4$s - %5$s until %6$s" : "A Cada %1$d Anos em %2$s no dia %3$s entre %4$s - %5$s até %6$s",
"On specific dates for the entire day until %1$s" : "Em datas específicas para o dia inteiro até %1$s",
"On specific dates between %1$s - %2$s until %3$s" : "Em datas específicas entre %1$s - %2$s até %3$s",
"In the past on %1$s" : "No passado em %1$s",
"_In a minute on %1$s_::_In %n minutes on %1$s_" : ["Em um minuto em %1$s","Em %n minutos em %1$s","Em %n minutos em %1$s"],
"_In a hour on %1$s_::_In %n hours on %1$s_" : ["Em uma hora em %1$s","Em %n horas em %1$s","Em %n horas em %1$s"],
@@ -129,32 +129,32 @@ OC.L10N.register(
"_In a week on %1$s_::_In %n weeks on %1$s_" : ["Em uma semana em %1$s","Em %n semanas em %1$s","Em %n semanas em %1$s"],
"_In a month on %1$s_::_In %n months on %1$s_" : ["Em um mês em %1$s","Em %n meses em %1$s","Em %n meses em %1$s"],
"_In a year on %1$s_::_In %n years on %1$s_" : ["Em um ano em %1$s","Em %n anos em %1$s","Em %n anos em %1$s"],
"In the past on %1$s then on %2$s" : "No passado em %1$s e então em %2$s",
"_In a minute on %1$s then on %2$s_::_In %n minutes on %1$s then on %2$s_" : ["Em um minuto em %1$s e então em %2$s","Em %n minutos em %1$s e então em %2$s","Em %n minutos em %1$s e então em %2$s"],
"_In a hour on %1$s then on %2$s_::_In %n hours on %1$s then on %2$s_" : ["Em um hora em %1$s e então em %2$s","Em %n horas em %1$s e então em %2$s","Em %n horas em %1$s e então em %2$s"],
"_In a day on %1$s then on %2$s_::_In %n days on %1$s then on %2$s_" : ["Em um dia em %1$s e então em %2$s","Em %n dias em %1$s e então em %2$s","Em %n dias em %1$s e então em %2$s"],
"_In a week on %1$s then on %2$s_::_In %n weeks on %1$s then on %2$s_" : ["Em uma semana em %1$s e então em %2$s","Em %n semanas em %1$s e então em %2$s","Em %n semanas em %1$s e então em %2$s"],
"_In a month on %1$s then on %2$s_::_In %n months on %1$s then on %2$s_" : ["Em um mes em %1$s e então em %2$s","Em %n meses em %1$s e então em %2$s","Em %n meses em %1$s e então em %2$s"],
"_In a year on %1$s then on %2$s_::_In %n years on %1$s then on %2$s_" : ["Em um ano em %1$s e então em %2$s","Em %n anos em %1$s e então em %2$s","Em %n anos em %1$s e então em %2$s"],
"In the past on %1$s then on %2$s and %3$s" : "No passado em %1$s e então em %2$s e %3$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_" : ["Em um minuto e %1$s e então em %2$s e %3$s","Em %n minutos e %1$s e então em %2$s e %3$s","Em %n minutos e %1$s e então em %2$s e %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_" : ["Em uma hora e %1$s e então em %2$s e %3$s","Em %n horas e %1$s e então em %2$s e %3$s","Em %n horas e %1$s e então em %2$s e %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_" : ["Em um dia e %1$s e então em %2$s e %3$s","Em %n dias e %1$s e então em %2$s e %3$s","Em %n dias e %1$s e então em %2$s e %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_" : ["Em uma semana e %1$s e então em %2$s e %3$s","Em %n semanas e %1$s e então em %2$s e %3$s","Em %n semanas e %1$s e então em %2$s e %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_" : ["Em um mês e %1$s e então em %2$s e %3$s","Em %n meses e %1$s e então em %2$s e %3$s","Em %n meses e %1$s e então em %2$s e %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_" : ["Em um ano e %1$s e então em %2$s e %3$s","Em %n anos e %1$s e então em %2$s e %3$s","Em %n anos e %1$s e então em %2$s e %3$s"],
"Could not generate next recurrence statement" : "Não foi possível gerar a próxima instrução de recorrência",
"In the past on %1$s then on %2$s" : "No passado em %1$s e depois em %2$s",
"_In a minute on %1$s then on %2$s_::_In %n minutes on %1$s then on %2$s_" : ["Em um minuto em %1$s e depois em %2$s","Em %n minutos em %1$s e depois em %2$s","Em %n minutos em %1$s e depois em %2$s"],
"_In a hour on %1$s then on %2$s_::_In %n hours on %1$s then on %2$s_" : ["Em um hora em %1$s e depois em %2$s","Em %n horas em %1$s e depois em %2$s","Em %n horas em %1$s e depois em %2$s"],
"_In a day on %1$s then on %2$s_::_In %n days on %1$s then on %2$s_" : ["Em um dia em %1$s e depois em %2$s","Em %n dias em %1$s e depois em %2$s","Em %n dias em %1$s e depois em %2$s"],
"_In a week on %1$s then on %2$s_::_In %n weeks on %1$s then on %2$s_" : ["Em uma semana em %1$s e depois em %2$s","Em %n semanas em %1$s e depois em %2$s","Em %n semanas em %1$s e depois em %2$s"],
"_In a month on %1$s then on %2$s_::_In %n months on %1$s then on %2$s_" : ["Em um mês em %1$s e depois em %2$s","Em %n meses em %1$s e depois em %2$s","Em %n meses em %1$s e depois em %2$s"],
"_In a year on %1$s then on %2$s_::_In %n years on %1$s then on %2$s_" : ["Em um ano em %1$s e depois em %2$s","Em %n anos em %1$s e depois em %2$s","Em %n anos em %1$s e depois em %2$s"],
"In the past on %1$s then on %2$s and %3$s" : "No passado em %1$s e depois em %2$s e %3$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_" : ["Em um minuto e %1$s e depois em %2$s e %3$s","Em %n minutos e %1$s e depois em %2$s e %3$s","Em %n minutos e %1$s e depois em %2$s e %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_" : ["Em uma hora e %1$s e depois em %2$s e %3$s","Em %n horas e %1$s e depois em %2$s e %3$s","Em %n horas e %1$s e depois em %2$s e %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_" : ["Em um dia e %1$s e depois em %2$s e %3$s","Em %n dias e %1$s e depois em %2$s e %3$s","Em %n dias e %1$s e depois em %2$s e %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_" : ["Em uma semana e %1$s e depois em %2$s e %3$s","Em %n semanas e %1$s e depois em %2$s e %3$s","Em %n semanas e %1$s e depois em %2$s e %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_" : ["Em um mês e %1$s e depois em %2$s e %3$s","Em %n meses e %1$s e depois em %2$s e %3$s","Em %n meses e %1$s e depois em %2$s e %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_" : ["Em um ano e %1$s e depois em %2$s e %3$s","Em %n anos e %1$s e depois em %2$s e %3$s","Em %n anos e %1$s e depois em %2$s e %3$s"],
"Could not generate next recurrence statement" : "Não foi possível gerar a indicação da próxima recorrência",
"Cancelled: %1$s" : "Cancelado: %1$s",
"\"%1$s\" has been canceled" : "\"%1$s\" foi cancelado",
"Re: %1$s" : "Remetente: %1$s",
"Re: %1$s" : "Re: %1$s",
"%1$s has accepted your invitation" : "%1$s aceitou seu convite",
"%1$s has tentatively accepted your invitation" : "%1$s aceitou provisoriamente o seu convite",
"%1$s has tentatively accepted your invitation" : "%1$s aceitou provisoriamente seu convite",
"%1$s has declined your invitation" : "%1$s recusou seu convite",
"%1$s has responded to your invitation" : "%1$s respondeu ao seu convite",
"Invitation updated: %1$s" : "Invitation updated: %1$s",
"%1$s updated the event \"%2$s\"" : "%1$s updated the event \"%2$s\"",
"Invitation updated: %1$s" : "Convite atualizado: %1$s",
"%1$s updated the event \"%2$s\"" : "%1$s atualizou o evento \"%2$s\"",
"Invitation: %1$s" : "Convite: %1$s",
"%1$s would like to invite you to \"%2$s\"" : "%1$s gostaria de convidá-lo para \"%2$s\"",
"%1$s would like to invite you to \"%2$s\"" : "%1$s gostaria de convidar você para \"%2$s\"",
"Organizer:" : "Organizador:",
"Attendees:" : "Participantes:",
"Title:" : "Título:",
@@ -185,52 +185,52 @@ OC.L10N.register(
"October" : "Outubro",
"November" : "Novembro",
"December" : "Dezembro",
"First" : "Primeiro",
"Second" : "Segundo",
"Third" : "Terço",
"Fourth" : "Quarto",
"Fifth" : "Quinto",
"Last" : "Último",
"Second Last" : "Último segundo",
"Third Last" : "Terceiro Último",
"Fourth Last" : "Quarto Último",
"Fifth Last" : "Quinto Último",
"First" : "Primeiro/a",
"Second" : "Segundo/a",
"Third" : "Terço/a",
"Fourth" : "Quarto/a",
"Fifth" : "Quinto/a",
"Last" : "Último/a",
"Second Last" : "Penúltimo/a",
"Third Last" : "Terceiro/a Último/a",
"Fourth Last" : "Quarto/a Último/a",
"Fifth Last" : "Quinto/a Último/a",
"Contacts" : "Contatos",
"{actor} created address book {addressbook}" : "{actor} criou o livro de endereço {addressbook}",
"{actor} created address book {addressbook}" : "{actor} criou o catálogo de endereços {addressbook}",
"You created address book {addressbook}" : "Você criou o catálogo de endereços {addressbook}",
"{actor} deleted address book {addressbook}" : "{actor} apagou o livro de endereços {addressbook}",
"{actor} deleted address book {addressbook}" : "{actor} excluiu o catálogo de endereços {addressbook}",
"You deleted address book {addressbook}" : "Você excluiu o catálogo de endereços {addressbook}",
"{actor} updated address book {addressbook}" : "{actor} atualizou o livro de endereço {addressbook}",
"You updated address book {addressbook}" : "Você atualizou o livro de endereço {addressbook}",
"{actor} shared address book {addressbook} with you" : "{actor} compartilhou o livro de endereço {addressbook} com você",
"{actor} updated address book {addressbook}" : "{actor} atualizou o catálogo de endereços {addressbook}",
"You updated address book {addressbook}" : "Você atualizou o catálogo de endereços {addressbook}",
"{actor} shared address book {addressbook} with you" : "{actor} compartilhou o catálogo de endereços {addressbook} com você",
"You shared address book {addressbook} with {user}" : "Você compartilhou o catálogo de endereços {addressbook} com {user}",
"{actor} shared address book {addressbook} with {user}" : "{actor} compartilhou o livro de endereço {addressbook} com {user}",
"{actor} unshared address book {addressbook} from you" : "{actor} retirou o compartilhamento do livro de endereço {addressbook} com você",
"You unshared address book {addressbook} from {user}" : "Você retirou o compartilhamento do livro de endereço {addressbook} com {user}",
"{actor} unshared address book {addressbook} from {user}" : "{actor} retirou o compartilhamento do livro de endereço {addressbook} com {user}",
"{actor} unshared address book {addressbook} from themselves" : "{actor} retirou o compartilhamento do livro de endereço {addressbook} com ele mesmo",
"You shared address book {addressbook} with group {group}" : "Você compartilhou o livro de endereço {addressbook} com o grupo {group}",
"{actor} shared address book {addressbook} with group {group}" : "{actor} compartilhou o livro de endereço {addressbook} com o grupo {group}",
"You unshared address book {addressbook} from group {group}" : "Você retirou o compartilhamento do livro de enredeços {addressbook} com o grupo {group}",
"{actor} unshared address book {addressbook} from group {group}" : "{actor} retirou o compartilhamento do livro de endereço {addressbook} com o grupo {group}",
"{actor} created contact {card} in address book {addressbook}" : "{actor} criou o contato {card} no livro de enrereço {addressbook}",
"You created contact {card} in address book {addressbook}" : "Você criou o contato {card} no livro de endereço {addressbook}",
"{actor} deleted contact {card} from address book {addressbook}" : "{actor} excluiu o contato {card} do livro de endereço {addressbook}",
"You deleted contact {card} from address book {addressbook}" : "Você apagou o contato {card} do livro de endereços {addressbook}",
"{actor} updated contact {card} in address book {addressbook}" : "{actor} updated contact {card} no livro de endereço {addressbook}",
"You updated contact {card} in address book {addressbook}" : "Você atualizou o contato {card} no livro de endereços {addressbook}",
"A <strong>contact</strong> or <strong>address book</strong> was modified" : "O <strong>contato</strong> ou <strong>livro de endereço</strong> foi modificado",
"{actor} shared address book {addressbook} with {user}" : "{actor} compartilhou o catálogo de endereços {addressbook} com {user}",
"{actor} unshared address book {addressbook} from you" : "{actor} retirou o compartilhamento do catálogo de endereços {addressbook} de você",
"You unshared address book {addressbook} from {user}" : "Você retirou o compartilhamento do catálogo de endereços {addressbook} de {user}",
"{actor} unshared address book {addressbook} from {user}" : "{actor} retirou o compartilhamento do catálogo de endereços {addressbook} de {user}",
"{actor} unshared address book {addressbook} from themselves" : "{actor} retirou o compartilhamento do catálogo de endereços {addressbook} de si mesmo",
"You shared address book {addressbook} with group {group}" : "Você compartilhou o catálogo de endereços {addressbook} com o grupo {group}",
"{actor} shared address book {addressbook} with group {group}" : "{actor} compartilhou o catálogo de endereços {addressbook} com o grupo {group}",
"You unshared address book {addressbook} from group {group}" : "Você retirou o compartilhamento do catálogo de endereços {addressbook} do grupo {group}",
"{actor} unshared address book {addressbook} from group {group}" : "{actor} retirou o compartilhamento do catálogo de endereços {addressbook} do grupo {group}",
"{actor} created contact {card} in address book {addressbook}" : "{actor} criou o contato {card} no catálogo de endereços {addressbook}",
"You created contact {card} in address book {addressbook}" : "Você criou o contato {card} no catálogo de endereços {addressbook}",
"{actor} deleted contact {card} from address book {addressbook}" : "{actor} excluiu o contato {card} do catálogo de endereços {addressbook}",
"You deleted contact {card} from address book {addressbook}" : "Você exluiu o contato {card} do catálogo de endereços {addressbook}",
"{actor} updated contact {card} in address book {addressbook}" : "{actor} atualizou o contato {card} no catálogo de endereços {addressbook}",
"You updated contact {card} in address book {addressbook}" : "Você atualizou o contato {card} no catálogo de endereços {addressbook}",
"A <strong>contact</strong> or <strong>address book</strong> was modified" : "Um <strong>contato</strong> ou <strong>catálogo de endereços</strong> foi modificado",
"Accounts" : "Contas",
"System address book which holds all accounts" : "Catálogo de endereços do sistema que contém todas as contas",
"File is not updatable: %1$s" : "O arquivo não é atualizável: %1$s",
"Failed to get storage for file" : "Falha ao obter armazenamento para arquivo",
"Could not write to final file, canceled by hook" : "Não foi possível gravar no arquivo final, cancelado pelo gancho",
"Could not write to final file, canceled by hook" : "Não foi possível gravar no arquivo final, cancelado pelo hook",
"Could not write file contents" : "Não foi possível gravar o conteúdo do arquivo",
"_%n byte_::_%n bytes_" : ["%n byte","%n bytes","%n bytes"],
"Error while copying file to target location (copied: %1$s, expected filesize: %2$s)" : "Erro ao copiar o arquivo para o local de destino (copiado: %1$s, tamanho de arquivo esperado: %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." : "Tamanho de arquivo esperado de %1$s mas lido (do cliente Nextcloud) e gravado (no armazenamento Nextcloud) %2$s. Pode ser um problema de rede no lado de envio ou um problema de gravação no armazenamento no lado do servidor.",
"Could not rename part file to final file, canceled by hook" : "Não foi possível renomear o arquivo de parte para o arquivo final, cancelado pelo gancho",
"Could not rename part file to final file" : "Não foi possível renomear o arquivo de parte para o arquivo final",
"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." : "Tamanho de arquivo esperado de %1$s, mas lido (do cliente Nextcloud) e gravado (no armazenamento Nextcloud) %2$s. Pode ser um problema de rede no lado de envio ou um problema de gravação no armazenamento no lado do servidor.",
"Could not rename part file to final file, canceled by hook" : "Não foi possível renomear o arquivo de peça para o arquivo final, cancelado pelo hook",
"Could not rename part file to final file" : "Não foi possível renomear o arquivo de peça para o arquivo final",
"Failed to check file size: %1$s" : "Falha ao verificar o tamanho do arquivo: %1$s",
"Could not open file: %1$s, file does seem to exist" : "Não foi possível abrir o arquivo: %1$s, o arquivo parece existir",
"Could not open file: %1$s, file doesn't seem to exist" : "Não foi possível abrir o arquivo: %1$s, o arquivo parece não existir",
@@ -238,7 +238,7 @@ OC.L10N.register(
"Failed to open file: %1$s" : "Falha ao abrir arquivo: %1$s",
"Failed to unlink: %1$s" : "Falha ao desvincular: %1$s",
"Failed to write file contents: %1$s" : "Falha ao gravar o conteúdo do arquivo:%1$s",
"File not found: %1$s" : "Arquivo não encontrado:%1$s",
"File not found: %1$s" : "Arquivo não encontrado: %1$s",
"Invalid target path" : "Caminho de destino inválido",
"System is in maintenance mode." : "O sistema está em modo de manutenção",
"Upgrade needed" : "Upgrade necessário",
@@ -253,9 +253,9 @@ OC.L10N.register(
"System Address Book" : "Catálogo de Endereços do Sistema",
"The system address book contains contact information for all users in your instance." : "O catálogo de endereços do sistema contém informações de contato de todos os usuários da sua instância.",
"Enable System Address Book" : "Ativar Catálogo de Endereços do Sistema",
"DAV system address book" : "Livro de endereços DAV do sistema",
"No outstanding DAV system address book sync." : "Não há nenhum livro de endereços DAV sendo sincronizado.",
"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\"." : "A sincronização do catálogo de endereços do sistema DAV ainda não foi executada porque sua instância tem mais de 1000 usuários ou porque ocorreu um erro. Execute-o manualmente chamando \"occ dav:sync-system-addressbook\".",
"DAV system address book" : "Catálogo de endereços DAV do sistema",
"No outstanding DAV system address book sync." : "Não há sincronização pendente do catálogo de endereços DAV do sistema.",
"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\"." : "A sincronização do catálogo de endereços DAV do sistema ainda não foi executada porque sua instância tem mais de 1000 usuários ou porque ocorreu um erro. Execute-a manualmente chamando \"occ dav:sync-system-addressbook\".",
"WebDAV endpoint" : "Endpoint WebDAV",
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually." : "Não foi possível verificar se o seu servidor web está configurado corretamente para permitir a sincronização de arquivos via WebDAV. Verifique manualmente.",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Seu servidor web ainda não está configurado corretamente para permitir a sincronização de arquivos, porque a interface do WebDAV parece estar quebrada.",
@@ -266,7 +266,7 @@ OC.L10N.register(
"WebDAV" : "WebDAV",
"Absence saved" : "Ausência salva",
"Failed to save your absence settings" : "Falha ao salvar suas configurações de ausência",
"Absence cleared" : "Ausência apagada",
"Absence cleared" : "Limpou a ausência",
"Failed to clear your absence settings" : "Falha ao limpar suas configurações de ausência",
"First day" : "Primeiro dia",
"Last day (inclusive)" : "Último dia (inclusive)",
@@ -274,8 +274,8 @@ OC.L10N.register(
"Name of the replacement" : "Nome do substituto",
"No results." : "Nenhum resultado.",
"Start typing." : "Comece a digitar.",
"Short absence status" : "Status para ausência breve",
"Long absence Message" : "Mensagem para ausência longa",
"Short absence status" : "Status curto sobre a ausência",
"Long absence Message" : "Mensagem longa sobre a ausência",
"Save" : "Salvar",
"Disable absence" : "Desativar ausência",
"Failed to load availability" : "Falha ao carregar a disponibilidade",
@@ -306,14 +306,27 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Envie notificações de lembrete para compartilhamentos de calendário também",
"Reminders are always sent to organizers and attendees." : "Os lembretes são sempre enviados aos organizadores e participantes.",
"Enable notifications for events via push" : "Ativar notificações para eventos via push",
"Cancel" : "Cancelar",
"Import" : "Importar",
"Error while saving settings" : "Erro ao salvar as configurações",
"Contact reset successfully" : "O contato foi reiniciado com sucesso",
"Error while resetting contact" : "Erro ao reiniciar o contato",
"Contact imported successfully" : "O contato foi importado com sucesso",
"Error while importing contact" : "Erro ao importar o contato",
"Example Content" : "Exemplo de Conteúdo",
"Set example content to be created on new user first login." : "Defina o exemplo de conteúdo a ser criado no primeiro login do novo usuário.",
"Import contact" : "Importar contato",
"Reset to default contact" : "Redefinir para o contato padrão",
"Import contacts" : "Importar contatos",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "A importação de um novo arquivo .vcf excluirá o contato padrão existente e o substituirá pelo novo. Deseja continuar?",
"There was an error updating your attendance status." : "Houve um erro ao atualizar seu status de participação.",
"Please contact the organizer directly." : "Por favor, contate o organizador diretamente.",
"Are you accepting the invitation?" : "Você está aceitando o convite?",
"Tentative" : "Tentativa",
"Your attendance was updated successfully." : "Sua presença foi atualizada com sucesso.",
"Time:" : "Horário:",
"Could not open file" : "Não pode abrir o arquivo",
"Invalid chunk name" : "Nome do bloco inválido",
"Could not rename part file assembled from chunks" : "Não foi possível renomear parte do arquivo montado a partir de pedaços"
"Could not open file" : "Não foi possível abrir o arquivo",
"Invalid chunk name" : "Nome de pedaço inválido",
"Could not rename part file assembled from chunks" : "Não foi possível renomear o arquivo de peça montado a partir de pedaços"
},
"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
+120 -107
View File
@@ -30,12 +30,12 @@
"You deleted event {event} from calendar {calendar}" : "Você excluiu o evento {event} do calendário {calendar}",
"{actor} updated event {event} in calendar {calendar}" : "{actor} atualizou o evento {event} no calendário {calendar}",
"You updated event {event} in calendar {calendar}" : "Você atualizou o evento {event} no calendário {calendar}",
"{actor} moved event {event} from calendar {sourceCalendar} to calendar {targetCalendar}" : "{actor} moveu o evento {event} do calendario {sourceCalendar} para o calendario {targetCalendar}",
"You moved event {event} from calendar {sourceCalendar} to calendar {targetCalendar}" : "Você moveu o evento {event} do calendario {sourceCalendar} para o calendario {targetCalendar}",
"{actor} moved event {event} from calendar {sourceCalendar} to calendar {targetCalendar}" : "{actor} moveu o evento {event} do calendário {sourceCalendar} para o calendário {targetCalendar}",
"You moved event {event} from calendar {sourceCalendar} to calendar {targetCalendar}" : "Você moveu o evento {event} do calendário {sourceCalendar} para o calendário {targetCalendar}",
"{actor} restored event {event} of calendar {calendar}" : "{actor} restaurou o evento {event} do calendário {calendar}",
"You restored event {event} of calendar {calendar}" : "Você restaurou o evento {event} do calendário {calendar}",
"Busy" : "Ocupado",
"{actor} created to-do {todo} in list {calendar}" : "{actor} criou tarefa {todo} na lista {calendar}",
"{actor} created to-do {todo} in list {calendar}" : "{actor} criou a tarefa {todo} na lista {calendar}",
"You created to-do {todo} in list {calendar}" : "Você criou a tarefa {todo} na lista {calendar}",
"{actor} deleted to-do {todo} from list {calendar}" : "{actor} excluiu a tarefa {todo} da lista {calendar}",
"You deleted to-do {todo} from list {calendar}" : "Você excluiu a tarefa {todo} da lista {calendar}",
@@ -49,8 +49,8 @@
"You moved to-do {todo} from list {sourceCalendar} to list {targetCalendar}" : "Você moveu a tarefa {todo} da lista {sourceCalendar} para a lista {targetCalendar}",
"Calendar, contacts and tasks" : "Calendário, contatos e tarefas",
"A <strong>calendar</strong> was modified" : "Um <strong>calendário</strong> foi modificado",
"A calendar <strong>event</strong> was modified" : "Um <strong>evento</strong> do calendário foi modificado",
"A calendar <strong>to-do</strong> was modified" : "Um calendário <strong>tarefa</strong> foi modificado",
"A calendar <strong>event</strong> was modified" : "Um <strong>evento</strong> de calendário foi modificado",
"A calendar <strong>to-do</strong> was modified" : "Uma <strong>tarefa</strong> de calendário foi modificada",
"Contact birthdays" : "Aniversário dos contatos",
"Death of %s" : "Morte de %s",
"Untitled calendar" : "Calendário sem título",
@@ -72,7 +72,7 @@
"%1$s via %2$s" : "%1$s via %2$s",
"In the past on %1$s for the entire day" : "No passado em %1$s para o dia inteiro",
"_In a minute on %1$s for the entire day_::_In %n minutes on %1$s for the entire day_" : ["Em um minuto em %1$s para o dia inteiro","Em %n minutos em %1$s para o dia inteiro","Em %n minutos em %1$s para o dia inteiro"],
"_In a hour on %1$s for the entire day_::_In %n hours on %1$s for the entire day_" : ["Em uma hora em %1$s para o dia inteiro","Em %n horas em %1$s para o dia inteiro","Em %n horas em %1$s para o dia inteiro"],
"_In a hour on %1$s for the entire day_::_In %n hours on %1$s for the entire day_" : ["Em uma hora em %1$s para o dia inteiro","Em %n horas em %1$s para o dia inteiro","Em %n horas em %1$s para o dia inteiro"],
"_In a day on %1$s for the entire day_::_In %n days on %1$s for the entire day_" : ["Em um dias em %1$s para o dia inteiro","Em %n dias em %1$s para o dia inteiro","Em %n dias em %1$s para o dia inteiro"],
"_In a week on %1$s for the entire day_::_In %n weeks on %1$s for the entire day_" : ["Em uma semana em %1$s para o dia inteiro","Em %n semanas em %1$s para o dia inteiro","Em %n semanas em %1$s para o dia inteiro"],
"_In a month on %1$s for the entire day_::_In %n months on %1$s for the entire day_" : ["Em um mês em %1$s para o dia inteiro","Em %n meses em %1$s para o dia inteiro","Em %n meses em %1$s para o dia inteiro"],
@@ -84,42 +84,42 @@
"_In a week on %1$s between %2$s - %3$s_::_In %n weeks on %1$s between %2$s - %3$s_" : ["Em uma semana em %1$s entre %2$s - %3$s","Em %n semanas em %1$s entre %2$s - %3$s","Em %n semanas em %1$s entre %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_" : ["Em um mês em %1$s entre %2$s - %3$s","Em %n meses em %1$s entre %2$s - %3$s","Em %n meses em %1$s entre %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_" : ["Em um ano em %1$s entre %2$s - %3$s","Em %n anos em %1$s entre %2$s - %3$s","Em %n anos em %1$s entre %2$s - %3$s"],
"Could not generate when statement" : "Não foi possível gerar a instrução Quando",
"Every Day for the entire day" : "Todos os dias durante todo o dia",
"Every Day for the entire day until %1$s" : "Todos os dias durante todo o dia até %1$s",
"Every Day between %1$s - %2$s" : "Todos os dias entre %1$s - %2$s",
"Every Day between %1$s - %2$s until %3$s" : "Todos os dias entre %1$s - %2$s até %3$s",
"Every %1$d Days for the entire day" : "A cada %1$d dias durante o dia inteiro",
"Every %1$d Days for the entire day until %2$s" : "Cada %1$d dias durante todo o dia até %2$s",
"Every %1$d Days between %2$s - %3$s" : "Todo os %1$d Dias entre %2$s - %3$s",
"Every %1$d Days between %2$s - %3$s until %4$s" : "Todo os %1$d Dias entre %2$s - %3$s até %4$s",
"Could not generate event recurrence statement" : "Não foi possível gerar a instrução de recorrência do evento",
"Every Week on %1$s for the entire day" : "Todas as semanas em %1$s durante o dia inteiro",
"Every Week on %1$s for the entire day until %2$s" : "Toda semana em %1$s durante todo o dia até %2$s",
"Every Week on %1$s between %2$s - %3$s" : "Toda semana em %1$s entre %2$s - %3$s",
"Every Week on %1$s between %2$s - %3$s until %4$s" : "Toda semana em %1$s entre %2$s - %3$s até %4$s",
"Every %1$d Weeks on %2$s for the entire day" : "Todas as %1$d Semanas em %2$s durante o dia inteiro",
"Every %1$d Weeks on %2$s for the entire day until %3$s" : "Todas as %1$d Semanas em %2$s durante todo o dia até %3$s",
"Every %1$d Weeks on %2$s between %3$s - %4$s" : "Todas as %1$d Semanas em %2$s entre %3$s - %4$s",
"Every %1$d Weeks on %2$s between %3$s - %4$s until %5$s" : "Todas as %1$d Semanas em %2$s entre %3$s - %4$s até %5$s",
"Every Month on the %1$s for the entire day" : "Todo mês em %1$s durante todo o dia",
"Every Month on the %1$s for the entire day until %2$s" : "Todos os meses em %1$s durante todo o dia até %2$s",
"Every Month on the %1$s between %2$s - %3$s" : "Todo mês nos %1$s entre %2$s - %3$s",
"Every Month on the %1$s between %2$s - %3$s until %4$s" : "Todo mês nos %1$s entre %2$s - %3$s até%4$s",
"Every %1$d Months on the %2$s for the entire day" : "A cada %1$d Meses nos %2$s durante o dia inteiro",
"Every %1$d Months on the %2$s for the entire day until %3$s" : "A cada %1$d Meses no %2$s durante todo o dia até%3$s",
"Every %1$d Months on the %2$s between %3$s - %4$s" : "A cada %1$d Meses nos %2$s entre %3$s - %4$s",
"Every %1$d Months on the %2$s between %3$s - %4$s until %5$s" : "A cada %1$d Meses nos %2$s entre %3$s - %4$s até %5$s",
"Every Year in %1$s on the %2$s for the entire day" : "Todos os anos em %1$s em %2$s durante todo o dia",
"Every Year in %1$s on the %2$s for the entire day until %3$s" : "Todos os anos em %1$s em %2$s durante todo o dia até %3$s",
"Every Year in %1$s on the %2$s between %3$s - %4$s" : "Todos os anos em %1$s nos %2$s entre %3$s - %4$s",
"Every Year in %1$s on the %2$s between %3$s - %4$s until %5$s" : "Todos os anos em %1$s nos %2$s entre %3$s - %4$s até %5$s",
"Every %1$d Years in %2$s on the %3$s for the entire day" : "A cada %1$d Anos em %2$s nos %3$s durante o dia inteiro",
"Every %1$d Years in %2$s on the %3$s for the entire day until %4$s" : "A cada %1$d Anos em %2$s nos %3$s durante todo o dia até %4$s",
"Every %1$d Years in %2$s on the %3$s between %4$s - %5$s" : "A cada %1$d Anos em %2$s nos %3$s entre %4$s - %5$s ",
"Every %1$d Years in %2$s on the %3$s between %4$s - %5$s until %6$s" : "A cada %1$d Anos em %2$s nos %3$s entre %4$s - %5$s até%6$s",
"On specific dates for the entire day until %1$s" : "Em datas específicas durante todo o dia até %1$s",
"On specific dates between %1$s - %2$s until %3$s" : "Em datas específicas entre %1$s - %2$s até%3$s",
"Could not generate when statement" : "Não foi possível gerar a indicação sobre quando",
"Every Day for the entire day" : "Todo Dia durante o dia inteiro",
"Every Day for the entire day until %1$s" : "Todo Dia para o dia inteiro até %1$s",
"Every Day between %1$s - %2$s" : "Todo Dia entre %1$s - %2$s",
"Every Day between %1$s - %2$s until %3$s" : "Todo Dia entre %1$s - %2$s até %3$s",
"Every %1$d Days for the entire day" : "A Cada %1$d Dias para o dia inteiro",
"Every %1$d Days for the entire day until %2$s" : "A Cada %1$d Dias para o dia inteiro até %2$s",
"Every %1$d Days between %2$s - %3$s" : "A Cada %1$d Dias entre %2$s - %3$s",
"Every %1$d Days between %2$s - %3$s until %4$s" : "A Cada %1$d Dias entre %2$s - %3$s até %4$s",
"Could not generate event recurrence statement" : "Não foi possível gerar a indicação de recorrência do evento",
"Every Week on %1$s for the entire day" : "Toda Semana, %1$s para o dia inteiro",
"Every Week on %1$s for the entire day until %2$s" : "Toda Semana, %1$s para o dia inteiro até %2$s",
"Every Week on %1$s between %2$s - %3$s" : "Toda Semana, %1$s entre %2$s - %3$s",
"Every Week on %1$s between %2$s - %3$s until %4$s" : "Toda Semana, %1$s entre %2$s - %3$s até %4$s",
"Every %1$d Weeks on %2$s for the entire day" : "A Cada %1$d Semanas, %2$s para o dia inteiro",
"Every %1$d Weeks on %2$s for the entire day until %3$s" : "A Cada %1$d Semanas, %2$s para o dia inteiro até %3$s",
"Every %1$d Weeks on %2$s between %3$s - %4$s" : "A Cada %1$d Semanas, %2$s entre %3$s - %4$s",
"Every %1$d Weeks on %2$s between %3$s - %4$s until %5$s" : "A Cada %1$d Semanas, %2$s entre %3$s - %4$s até %5$s",
"Every Month on the %1$s for the entire day" : "Todo Mês no dia %1$s para o dia inteiro",
"Every Month on the %1$s for the entire day until %2$s" : "Todo Mês no dia %1$s para o dia inteiro até %2$s",
"Every Month on the %1$s between %2$s - %3$s" : "Todo Mês no dia %1$s entre %2$s - %3$s",
"Every Month on the %1$s between %2$s - %3$s until %4$s" : "Todo Mês no dia %1$s entre %2$s - %3$s até %4$s",
"Every %1$d Months on the %2$s for the entire day" : "A Cada %1$d Meses no dia %2$s para o dia inteiro",
"Every %1$d Months on the %2$s for the entire day until %3$s" : "A Cada %1$d Meses no dia %2$s para o dia inteiro até %3$s",
"Every %1$d Months on the %2$s between %3$s - %4$s" : "A Cada %1$d Meses no dia %2$s entre %3$s - %4$s",
"Every %1$d Months on the %2$s between %3$s - %4$s until %5$s" : "A Cada %1$d Meses no dia %2$s entre %3$s - %4$s até %5$s",
"Every Year in %1$s on the %2$s for the entire day" : "Todo Ano em %1$s no dia %2$s para o dia inteiro",
"Every Year in %1$s on the %2$s for the entire day until %3$s" : "Todo Ano em %1$s no dia %2$s para o dia inteiro até %3$s",
"Every Year in %1$s on the %2$s between %3$s - %4$s" : "Todo Ano em %1$s no dia %2$s entre %3$s - %4$s",
"Every Year in %1$s on the %2$s between %3$s - %4$s until %5$s" : "Todo Ano em %1$s no dia %2$s entre %3$s - %4$s até %5$s",
"Every %1$d Years in %2$s on the %3$s for the entire day" : "A Cada %1$d Anos em %2$s no dia %3$s para o dia inteiro",
"Every %1$d Years in %2$s on the %3$s for the entire day until %4$s" : "A Cada %1$d Anos em %2$s no dia %3$s para o dia inteiro até %4$s",
"Every %1$d Years in %2$s on the %3$s between %4$s - %5$s" : "A Cada %1$d Anos em %2$s no dia %3$s entre %4$s - %5$s ",
"Every %1$d Years in %2$s on the %3$s between %4$s - %5$s until %6$s" : "A Cada %1$d Anos em %2$s no dia %3$s entre %4$s - %5$s até %6$s",
"On specific dates for the entire day until %1$s" : "Em datas específicas para o dia inteiro até %1$s",
"On specific dates between %1$s - %2$s until %3$s" : "Em datas específicas entre %1$s - %2$s até %3$s",
"In the past on %1$s" : "No passado em %1$s",
"_In a minute on %1$s_::_In %n minutes on %1$s_" : ["Em um minuto em %1$s","Em %n minutos em %1$s","Em %n minutos em %1$s"],
"_In a hour on %1$s_::_In %n hours on %1$s_" : ["Em uma hora em %1$s","Em %n horas em %1$s","Em %n horas em %1$s"],
@@ -127,32 +127,32 @@
"_In a week on %1$s_::_In %n weeks on %1$s_" : ["Em uma semana em %1$s","Em %n semanas em %1$s","Em %n semanas em %1$s"],
"_In a month on %1$s_::_In %n months on %1$s_" : ["Em um mês em %1$s","Em %n meses em %1$s","Em %n meses em %1$s"],
"_In a year on %1$s_::_In %n years on %1$s_" : ["Em um ano em %1$s","Em %n anos em %1$s","Em %n anos em %1$s"],
"In the past on %1$s then on %2$s" : "No passado em %1$s e então em %2$s",
"_In a minute on %1$s then on %2$s_::_In %n minutes on %1$s then on %2$s_" : ["Em um minuto em %1$s e então em %2$s","Em %n minutos em %1$s e então em %2$s","Em %n minutos em %1$s e então em %2$s"],
"_In a hour on %1$s then on %2$s_::_In %n hours on %1$s then on %2$s_" : ["Em um hora em %1$s e então em %2$s","Em %n horas em %1$s e então em %2$s","Em %n horas em %1$s e então em %2$s"],
"_In a day on %1$s then on %2$s_::_In %n days on %1$s then on %2$s_" : ["Em um dia em %1$s e então em %2$s","Em %n dias em %1$s e então em %2$s","Em %n dias em %1$s e então em %2$s"],
"_In a week on %1$s then on %2$s_::_In %n weeks on %1$s then on %2$s_" : ["Em uma semana em %1$s e então em %2$s","Em %n semanas em %1$s e então em %2$s","Em %n semanas em %1$s e então em %2$s"],
"_In a month on %1$s then on %2$s_::_In %n months on %1$s then on %2$s_" : ["Em um mes em %1$s e então em %2$s","Em %n meses em %1$s e então em %2$s","Em %n meses em %1$s e então em %2$s"],
"_In a year on %1$s then on %2$s_::_In %n years on %1$s then on %2$s_" : ["Em um ano em %1$s e então em %2$s","Em %n anos em %1$s e então em %2$s","Em %n anos em %1$s e então em %2$s"],
"In the past on %1$s then on %2$s and %3$s" : "No passado em %1$s e então em %2$s e %3$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_" : ["Em um minuto e %1$s e então em %2$s e %3$s","Em %n minutos e %1$s e então em %2$s e %3$s","Em %n minutos e %1$s e então em %2$s e %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_" : ["Em uma hora e %1$s e então em %2$s e %3$s","Em %n horas e %1$s e então em %2$s e %3$s","Em %n horas e %1$s e então em %2$s e %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_" : ["Em um dia e %1$s e então em %2$s e %3$s","Em %n dias e %1$s e então em %2$s e %3$s","Em %n dias e %1$s e então em %2$s e %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_" : ["Em uma semana e %1$s e então em %2$s e %3$s","Em %n semanas e %1$s e então em %2$s e %3$s","Em %n semanas e %1$s e então em %2$s e %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_" : ["Em um mês e %1$s e então em %2$s e %3$s","Em %n meses e %1$s e então em %2$s e %3$s","Em %n meses e %1$s e então em %2$s e %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_" : ["Em um ano e %1$s e então em %2$s e %3$s","Em %n anos e %1$s e então em %2$s e %3$s","Em %n anos e %1$s e então em %2$s e %3$s"],
"Could not generate next recurrence statement" : "Não foi possível gerar a próxima instrução de recorrência",
"In the past on %1$s then on %2$s" : "No passado em %1$s e depois em %2$s",
"_In a minute on %1$s then on %2$s_::_In %n minutes on %1$s then on %2$s_" : ["Em um minuto em %1$s e depois em %2$s","Em %n minutos em %1$s e depois em %2$s","Em %n minutos em %1$s e depois em %2$s"],
"_In a hour on %1$s then on %2$s_::_In %n hours on %1$s then on %2$s_" : ["Em um hora em %1$s e depois em %2$s","Em %n horas em %1$s e depois em %2$s","Em %n horas em %1$s e depois em %2$s"],
"_In a day on %1$s then on %2$s_::_In %n days on %1$s then on %2$s_" : ["Em um dia em %1$s e depois em %2$s","Em %n dias em %1$s e depois em %2$s","Em %n dias em %1$s e depois em %2$s"],
"_In a week on %1$s then on %2$s_::_In %n weeks on %1$s then on %2$s_" : ["Em uma semana em %1$s e depois em %2$s","Em %n semanas em %1$s e depois em %2$s","Em %n semanas em %1$s e depois em %2$s"],
"_In a month on %1$s then on %2$s_::_In %n months on %1$s then on %2$s_" : ["Em um mês em %1$s e depois em %2$s","Em %n meses em %1$s e depois em %2$s","Em %n meses em %1$s e depois em %2$s"],
"_In a year on %1$s then on %2$s_::_In %n years on %1$s then on %2$s_" : ["Em um ano em %1$s e depois em %2$s","Em %n anos em %1$s e depois em %2$s","Em %n anos em %1$s e depois em %2$s"],
"In the past on %1$s then on %2$s and %3$s" : "No passado em %1$s e depois em %2$s e %3$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_" : ["Em um minuto e %1$s e depois em %2$s e %3$s","Em %n minutos e %1$s e depois em %2$s e %3$s","Em %n minutos e %1$s e depois em %2$s e %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_" : ["Em uma hora e %1$s e depois em %2$s e %3$s","Em %n horas e %1$s e depois em %2$s e %3$s","Em %n horas e %1$s e depois em %2$s e %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_" : ["Em um dia e %1$s e depois em %2$s e %3$s","Em %n dias e %1$s e depois em %2$s e %3$s","Em %n dias e %1$s e depois em %2$s e %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_" : ["Em uma semana e %1$s e depois em %2$s e %3$s","Em %n semanas e %1$s e depois em %2$s e %3$s","Em %n semanas e %1$s e depois em %2$s e %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_" : ["Em um mês e %1$s e depois em %2$s e %3$s","Em %n meses e %1$s e depois em %2$s e %3$s","Em %n meses e %1$s e depois em %2$s e %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_" : ["Em um ano e %1$s e depois em %2$s e %3$s","Em %n anos e %1$s e depois em %2$s e %3$s","Em %n anos e %1$s e depois em %2$s e %3$s"],
"Could not generate next recurrence statement" : "Não foi possível gerar a indicação da próxima recorrência",
"Cancelled: %1$s" : "Cancelado: %1$s",
"\"%1$s\" has been canceled" : "\"%1$s\" foi cancelado",
"Re: %1$s" : "Remetente: %1$s",
"Re: %1$s" : "Re: %1$s",
"%1$s has accepted your invitation" : "%1$s aceitou seu convite",
"%1$s has tentatively accepted your invitation" : "%1$s aceitou provisoriamente o seu convite",
"%1$s has tentatively accepted your invitation" : "%1$s aceitou provisoriamente seu convite",
"%1$s has declined your invitation" : "%1$s recusou seu convite",
"%1$s has responded to your invitation" : "%1$s respondeu ao seu convite",
"Invitation updated: %1$s" : "Invitation updated: %1$s",
"%1$s updated the event \"%2$s\"" : "%1$s updated the event \"%2$s\"",
"Invitation updated: %1$s" : "Convite atualizado: %1$s",
"%1$s updated the event \"%2$s\"" : "%1$s atualizou o evento \"%2$s\"",
"Invitation: %1$s" : "Convite: %1$s",
"%1$s would like to invite you to \"%2$s\"" : "%1$s gostaria de convidá-lo para \"%2$s\"",
"%1$s would like to invite you to \"%2$s\"" : "%1$s gostaria de convidar você para \"%2$s\"",
"Organizer:" : "Organizador:",
"Attendees:" : "Participantes:",
"Title:" : "Título:",
@@ -183,52 +183,52 @@
"October" : "Outubro",
"November" : "Novembro",
"December" : "Dezembro",
"First" : "Primeiro",
"Second" : "Segundo",
"Third" : "Terço",
"Fourth" : "Quarto",
"Fifth" : "Quinto",
"Last" : "Último",
"Second Last" : "Último segundo",
"Third Last" : "Terceiro Último",
"Fourth Last" : "Quarto Último",
"Fifth Last" : "Quinto Último",
"First" : "Primeiro/a",
"Second" : "Segundo/a",
"Third" : "Terço/a",
"Fourth" : "Quarto/a",
"Fifth" : "Quinto/a",
"Last" : "Último/a",
"Second Last" : "Penúltimo/a",
"Third Last" : "Terceiro/a Último/a",
"Fourth Last" : "Quarto/a Último/a",
"Fifth Last" : "Quinto/a Último/a",
"Contacts" : "Contatos",
"{actor} created address book {addressbook}" : "{actor} criou o livro de endereço {addressbook}",
"{actor} created address book {addressbook}" : "{actor} criou o catálogo de endereços {addressbook}",
"You created address book {addressbook}" : "Você criou o catálogo de endereços {addressbook}",
"{actor} deleted address book {addressbook}" : "{actor} apagou o livro de endereços {addressbook}",
"{actor} deleted address book {addressbook}" : "{actor} excluiu o catálogo de endereços {addressbook}",
"You deleted address book {addressbook}" : "Você excluiu o catálogo de endereços {addressbook}",
"{actor} updated address book {addressbook}" : "{actor} atualizou o livro de endereço {addressbook}",
"You updated address book {addressbook}" : "Você atualizou o livro de endereço {addressbook}",
"{actor} shared address book {addressbook} with you" : "{actor} compartilhou o livro de endereço {addressbook} com você",
"{actor} updated address book {addressbook}" : "{actor} atualizou o catálogo de endereços {addressbook}",
"You updated address book {addressbook}" : "Você atualizou o catálogo de endereços {addressbook}",
"{actor} shared address book {addressbook} with you" : "{actor} compartilhou o catálogo de endereços {addressbook} com você",
"You shared address book {addressbook} with {user}" : "Você compartilhou o catálogo de endereços {addressbook} com {user}",
"{actor} shared address book {addressbook} with {user}" : "{actor} compartilhou o livro de endereço {addressbook} com {user}",
"{actor} unshared address book {addressbook} from you" : "{actor} retirou o compartilhamento do livro de endereço {addressbook} com você",
"You unshared address book {addressbook} from {user}" : "Você retirou o compartilhamento do livro de endereço {addressbook} com {user}",
"{actor} unshared address book {addressbook} from {user}" : "{actor} retirou o compartilhamento do livro de endereço {addressbook} com {user}",
"{actor} unshared address book {addressbook} from themselves" : "{actor} retirou o compartilhamento do livro de endereço {addressbook} com ele mesmo",
"You shared address book {addressbook} with group {group}" : "Você compartilhou o livro de endereço {addressbook} com o grupo {group}",
"{actor} shared address book {addressbook} with group {group}" : "{actor} compartilhou o livro de endereço {addressbook} com o grupo {group}",
"You unshared address book {addressbook} from group {group}" : "Você retirou o compartilhamento do livro de enredeços {addressbook} com o grupo {group}",
"{actor} unshared address book {addressbook} from group {group}" : "{actor} retirou o compartilhamento do livro de endereço {addressbook} com o grupo {group}",
"{actor} created contact {card} in address book {addressbook}" : "{actor} criou o contato {card} no livro de enrereço {addressbook}",
"You created contact {card} in address book {addressbook}" : "Você criou o contato {card} no livro de endereço {addressbook}",
"{actor} deleted contact {card} from address book {addressbook}" : "{actor} excluiu o contato {card} do livro de endereço {addressbook}",
"You deleted contact {card} from address book {addressbook}" : "Você apagou o contato {card} do livro de endereços {addressbook}",
"{actor} updated contact {card} in address book {addressbook}" : "{actor} updated contact {card} no livro de endereço {addressbook}",
"You updated contact {card} in address book {addressbook}" : "Você atualizou o contato {card} no livro de endereços {addressbook}",
"A <strong>contact</strong> or <strong>address book</strong> was modified" : "O <strong>contato</strong> ou <strong>livro de endereço</strong> foi modificado",
"{actor} shared address book {addressbook} with {user}" : "{actor} compartilhou o catálogo de endereços {addressbook} com {user}",
"{actor} unshared address book {addressbook} from you" : "{actor} retirou o compartilhamento do catálogo de endereços {addressbook} de você",
"You unshared address book {addressbook} from {user}" : "Você retirou o compartilhamento do catálogo de endereços {addressbook} de {user}",
"{actor} unshared address book {addressbook} from {user}" : "{actor} retirou o compartilhamento do catálogo de endereços {addressbook} de {user}",
"{actor} unshared address book {addressbook} from themselves" : "{actor} retirou o compartilhamento do catálogo de endereços {addressbook} de si mesmo",
"You shared address book {addressbook} with group {group}" : "Você compartilhou o catálogo de endereços {addressbook} com o grupo {group}",
"{actor} shared address book {addressbook} with group {group}" : "{actor} compartilhou o catálogo de endereços {addressbook} com o grupo {group}",
"You unshared address book {addressbook} from group {group}" : "Você retirou o compartilhamento do catálogo de endereços {addressbook} do grupo {group}",
"{actor} unshared address book {addressbook} from group {group}" : "{actor} retirou o compartilhamento do catálogo de endereços {addressbook} do grupo {group}",
"{actor} created contact {card} in address book {addressbook}" : "{actor} criou o contato {card} no catálogo de endereços {addressbook}",
"You created contact {card} in address book {addressbook}" : "Você criou o contato {card} no catálogo de endereços {addressbook}",
"{actor} deleted contact {card} from address book {addressbook}" : "{actor} excluiu o contato {card} do catálogo de endereços {addressbook}",
"You deleted contact {card} from address book {addressbook}" : "Você exluiu o contato {card} do catálogo de endereços {addressbook}",
"{actor} updated contact {card} in address book {addressbook}" : "{actor} atualizou o contato {card} no catálogo de endereços {addressbook}",
"You updated contact {card} in address book {addressbook}" : "Você atualizou o contato {card} no catálogo de endereços {addressbook}",
"A <strong>contact</strong> or <strong>address book</strong> was modified" : "Um <strong>contato</strong> ou <strong>catálogo de endereços</strong> foi modificado",
"Accounts" : "Contas",
"System address book which holds all accounts" : "Catálogo de endereços do sistema que contém todas as contas",
"File is not updatable: %1$s" : "O arquivo não é atualizável: %1$s",
"Failed to get storage for file" : "Falha ao obter armazenamento para arquivo",
"Could not write to final file, canceled by hook" : "Não foi possível gravar no arquivo final, cancelado pelo gancho",
"Could not write to final file, canceled by hook" : "Não foi possível gravar no arquivo final, cancelado pelo hook",
"Could not write file contents" : "Não foi possível gravar o conteúdo do arquivo",
"_%n byte_::_%n bytes_" : ["%n byte","%n bytes","%n bytes"],
"Error while copying file to target location (copied: %1$s, expected filesize: %2$s)" : "Erro ao copiar o arquivo para o local de destino (copiado: %1$s, tamanho de arquivo esperado: %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." : "Tamanho de arquivo esperado de %1$s mas lido (do cliente Nextcloud) e gravado (no armazenamento Nextcloud) %2$s. Pode ser um problema de rede no lado de envio ou um problema de gravação no armazenamento no lado do servidor.",
"Could not rename part file to final file, canceled by hook" : "Não foi possível renomear o arquivo de parte para o arquivo final, cancelado pelo gancho",
"Could not rename part file to final file" : "Não foi possível renomear o arquivo de parte para o arquivo final",
"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." : "Tamanho de arquivo esperado de %1$s, mas lido (do cliente Nextcloud) e gravado (no armazenamento Nextcloud) %2$s. Pode ser um problema de rede no lado de envio ou um problema de gravação no armazenamento no lado do servidor.",
"Could not rename part file to final file, canceled by hook" : "Não foi possível renomear o arquivo de peça para o arquivo final, cancelado pelo hook",
"Could not rename part file to final file" : "Não foi possível renomear o arquivo de peça para o arquivo final",
"Failed to check file size: %1$s" : "Falha ao verificar o tamanho do arquivo: %1$s",
"Could not open file: %1$s, file does seem to exist" : "Não foi possível abrir o arquivo: %1$s, o arquivo parece existir",
"Could not open file: %1$s, file doesn't seem to exist" : "Não foi possível abrir o arquivo: %1$s, o arquivo parece não existir",
@@ -236,7 +236,7 @@
"Failed to open file: %1$s" : "Falha ao abrir arquivo: %1$s",
"Failed to unlink: %1$s" : "Falha ao desvincular: %1$s",
"Failed to write file contents: %1$s" : "Falha ao gravar o conteúdo do arquivo:%1$s",
"File not found: %1$s" : "Arquivo não encontrado:%1$s",
"File not found: %1$s" : "Arquivo não encontrado: %1$s",
"Invalid target path" : "Caminho de destino inválido",
"System is in maintenance mode." : "O sistema está em modo de manutenção",
"Upgrade needed" : "Upgrade necessário",
@@ -251,9 +251,9 @@
"System Address Book" : "Catálogo de Endereços do Sistema",
"The system address book contains contact information for all users in your instance." : "O catálogo de endereços do sistema contém informações de contato de todos os usuários da sua instância.",
"Enable System Address Book" : "Ativar Catálogo de Endereços do Sistema",
"DAV system address book" : "Livro de endereços DAV do sistema",
"No outstanding DAV system address book sync." : "Não há nenhum livro de endereços DAV sendo sincronizado.",
"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\"." : "A sincronização do catálogo de endereços do sistema DAV ainda não foi executada porque sua instância tem mais de 1000 usuários ou porque ocorreu um erro. Execute-o manualmente chamando \"occ dav:sync-system-addressbook\".",
"DAV system address book" : "Catálogo de endereços DAV do sistema",
"No outstanding DAV system address book sync." : "Não há sincronização pendente do catálogo de endereços DAV do sistema.",
"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\"." : "A sincronização do catálogo de endereços DAV do sistema ainda não foi executada porque sua instância tem mais de 1000 usuários ou porque ocorreu um erro. Execute-a manualmente chamando \"occ dav:sync-system-addressbook\".",
"WebDAV endpoint" : "Endpoint WebDAV",
"Could not check that your web server is properly set up to allow file synchronization over WebDAV. Please check manually." : "Não foi possível verificar se o seu servidor web está configurado corretamente para permitir a sincronização de arquivos via WebDAV. Verifique manualmente.",
"Your web server is not yet properly set up to allow file synchronization, because the WebDAV interface seems to be broken." : "Seu servidor web ainda não está configurado corretamente para permitir a sincronização de arquivos, porque a interface do WebDAV parece estar quebrada.",
@@ -264,7 +264,7 @@
"WebDAV" : "WebDAV",
"Absence saved" : "Ausência salva",
"Failed to save your absence settings" : "Falha ao salvar suas configurações de ausência",
"Absence cleared" : "Ausência apagada",
"Absence cleared" : "Limpou a ausência",
"Failed to clear your absence settings" : "Falha ao limpar suas configurações de ausência",
"First day" : "Primeiro dia",
"Last day (inclusive)" : "Último dia (inclusive)",
@@ -272,8 +272,8 @@
"Name of the replacement" : "Nome do substituto",
"No results." : "Nenhum resultado.",
"Start typing." : "Comece a digitar.",
"Short absence status" : "Status para ausência breve",
"Long absence Message" : "Mensagem para ausência longa",
"Short absence status" : "Status curto sobre a ausência",
"Long absence Message" : "Mensagem longa sobre a ausência",
"Save" : "Salvar",
"Disable absence" : "Desativar ausência",
"Failed to load availability" : "Falha ao carregar a disponibilidade",
@@ -304,14 +304,27 @@
"Send reminder notifications to calendar sharees as well" : "Envie notificações de lembrete para compartilhamentos de calendário também",
"Reminders are always sent to organizers and attendees." : "Os lembretes são sempre enviados aos organizadores e participantes.",
"Enable notifications for events via push" : "Ativar notificações para eventos via push",
"Cancel" : "Cancelar",
"Import" : "Importar",
"Error while saving settings" : "Erro ao salvar as configurações",
"Contact reset successfully" : "O contato foi reiniciado com sucesso",
"Error while resetting contact" : "Erro ao reiniciar o contato",
"Contact imported successfully" : "O contato foi importado com sucesso",
"Error while importing contact" : "Erro ao importar o contato",
"Example Content" : "Exemplo de Conteúdo",
"Set example content to be created on new user first login." : "Defina o exemplo de conteúdo a ser criado no primeiro login do novo usuário.",
"Import contact" : "Importar contato",
"Reset to default contact" : "Redefinir para o contato padrão",
"Import contacts" : "Importar contatos",
"Importing a new .vcf file will delete the existing default contact and replace it with the new one. Do you want to continue?" : "A importação de um novo arquivo .vcf excluirá o contato padrão existente e o substituirá pelo novo. Deseja continuar?",
"There was an error updating your attendance status." : "Houve um erro ao atualizar seu status de participação.",
"Please contact the organizer directly." : "Por favor, contate o organizador diretamente.",
"Are you accepting the invitation?" : "Você está aceitando o convite?",
"Tentative" : "Tentativa",
"Your attendance was updated successfully." : "Sua presença foi atualizada com sucesso.",
"Time:" : "Horário:",
"Could not open file" : "Não pode abrir o arquivo",
"Invalid chunk name" : "Nome do bloco inválido",
"Could not rename part file assembled from chunks" : "Não foi possível renomear parte do arquivo montado a partir de pedaços"
"Could not open file" : "Não foi possível abrir o arquivo",
"Invalid chunk name" : "Nome de pedaço inválido",
"Could not rename part file assembled from chunks" : "Não foi possível renomear o arquivo de peça montado a partir de pedaços"
},"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
}
+3
View File
@@ -231,6 +231,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Отправлять напоминания всем пользователям, имеющим доступ к календарю",
"Reminders are always sent to organizers and attendees." : "Организаторам и участникам уведомления отправляются во всех случаях.",
"Enable notifications for events via push" : "Включить уведомления о событиях с помощью push",
"Cancel" : "Отмена",
"Import" : "Импортировать",
"Error while saving settings" : "Ошибка при сохранении параметров",
"There was an error updating your attendance status." : "Ошибка обновления статуса участия.",
"Please contact the organizer directly." : "Обратитесь к организатору напрямую.",
"Are you accepting the invitation?" : "Принять приглашение?",
+3
View File
@@ -229,6 +229,9 @@
"Send reminder notifications to calendar sharees as well" : "Отправлять напоминания всем пользователям, имеющим доступ к календарю",
"Reminders are always sent to organizers and attendees." : "Организаторам и участникам уведомления отправляются во всех случаях.",
"Enable notifications for events via push" : "Включить уведомления о событиях с помощью push",
"Cancel" : "Отмена",
"Import" : "Импортировать",
"Error while saving settings" : "Ошибка при сохранении параметров",
"There was an error updating your attendance status." : "Ошибка обновления статуса участия.",
"Please contact the organizer directly." : "Обратитесь к организатору напрямую.",
"Are you accepting the invitation?" : "Принять приглашение?",
+3
View File
@@ -306,6 +306,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Posielať upozornenia na pripomienky aj zdieľaným osobám v kalendári",
"Reminders are always sent to organizers and attendees." : "Upozornenia sa vždy posielajú organizátorom a účastníkom.",
"Enable notifications for events via push" : "Zapnúť oznámenia o udalostiach prostredníctvom technológie push.",
"Cancel" : "Zrušiť",
"Import" : "Import",
"Error while saving settings" : "Chyba pri ukladaní nastavení",
"There was an error updating your attendance status." : "Nastal problém pri aktualizácii Vašej účasti.",
"Please contact the organizer directly." : "Prosím kontaktujte priamo organizátora.",
"Are you accepting the invitation?" : "Príjmate pozvánku?",
+3
View File
@@ -304,6 +304,9 @@
"Send reminder notifications to calendar sharees as well" : "Posielať upozornenia na pripomienky aj zdieľaným osobám v kalendári",
"Reminders are always sent to organizers and attendees." : "Upozornenia sa vždy posielajú organizátorom a účastníkom.",
"Enable notifications for events via push" : "Zapnúť oznámenia o udalostiach prostredníctvom technológie push.",
"Cancel" : "Zrušiť",
"Import" : "Import",
"Error while saving settings" : "Chyba pri ukladaní nastavení",
"There was an error updating your attendance status." : "Nastal problém pri aktualizácii Vašej účasti.",
"Please contact the organizer directly." : "Prosím kontaktujte priamo organizátora.",
"Are you accepting the invitation?" : "Príjmate pozvánku?",
+3
View File
@@ -214,6 +214,9 @@ OC.L10N.register(
"Send reminder notifications to calendar sharees as well" : "Pošiljanje opomnikov tudi naročnikom koledarja.",
"Reminders are always sent to organizers and attendees." : "Opomniki bodo vedno poslani organizatorjem in udeležencem.",
"Enable notifications for events via push" : "Omogoči potisna obvestila za dogodke",
"Cancel" : "Prekliči",
"Import" : "Uvozi",
"Error while saving settings" : "Prišlo je do napake med shranjevanjem nastavitev",
"There was an error updating your attendance status." : "Prišlo je do napake med posodabljanjem vaše udeležbe.",
"Please contact the organizer directly." : "Z organizatorjem stopite neposredno v stik.",
"Are you accepting the invitation?" : "Ali želite sprejeti povabilo?",

Some files were not shown because too many files have changed in this diff Show More