Compare commits

...

719 Commits

Author SHA1 Message Date
John Molakvoæ c5c529f02e Merge pull request #29720 from nextcloud/release/22.2.3 2021-11-15 20:53:09 +01:00
John Molakvoæ b5b3a8aa90 Merge pull request #29717 from nextcloud/bump-doctrine-dbal-22 2021-11-15 20:00:59 +01:00
John Molakvoæ 84922b908e 22.2.3
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2021-11-15 19:27:41 +01:00
Joas Schilling 3709a8182a Apply changes from master's update to 3.1.3
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-15 19:06:36 +01:00
Joas Schilling 1362da82d5 Bump doctrine/dbal to 3.1.4
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-15 18:59:19 +01:00
Joas Schilling 5300bade47 Allow NULL as well for limit, not integer only
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-15 18:59:14 +01:00
szaimen e302e3566c Merge pull request #29706 from nextcloud/backport/29679/stable22
[stable22] don't flash external storage mountpoints during the status check
2021-11-15 16:33:04 +01:00
szaimen 57529dcab3 don't flash external storage mountpoints during the status check
Signed-off-by: szaimen <szaimen@e.mail.de>
2021-11-15 12:15:44 +00:00
Nextcloud bot 89db6c0f17 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-15 02:24:42 +00:00
Nextcloud bot 3e4f4f7c7e [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-14 02:25:50 +00:00
dependabot[bot] 1b44ed71ef Merge pull request #29658 from nextcloud/dependabot/npm_and_yarn/stable22/moment-timezone-0.5.34 2021-11-13 20:29:35 +00:00
dependabot[bot] 480806d37c Bump moment-timezone from 0.5.33 to 0.5.34
Bumps [moment-timezone](https://github.com/moment/moment-timezone) from 0.5.33 to 0.5.34.
- [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.33...0.5.34)

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

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-11-13 19:58:36 +00:00
Nextcloud bot e127e27f21 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-13 02:25:56 +00:00
blizzz dad659ae72 Merge pull request #29687 from nextcloud/version/22.2.2/final
22.2.2
2021-11-12 16:53:36 +01:00
blizzz b6adf296db Merge pull request #29685 from nextcloud/backport/29682/stable22
[stable22] Fix missing token update
2021-11-12 16:53:19 +01:00
Arthur Schiwon c22b5fa5a3 22.2.2
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-11-12 15:59:24 +01:00
Joas Schilling 6ed9bccb3d Fix unit tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-12 14:52:38 +00:00
Joas Schilling 1aaf9f02a8 Fix missing token update
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-12 14:52:37 +00:00
Nextcloud bot 92db6f3049 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-12 02:23:05 +00:00
Arthur Schiwon c8c18d8d40 bump last version digit for rebuild
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-11-11 15:39:39 +01:00
blizzz 9b35c8f41c Merge pull request #29667 from nextcloud/backport/29664/stable22
[stable22] Fix updating with apps
2021-11-11 15:35:57 +01:00
Joas Schilling ef48e7045e Fix updating with apps
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-11 13:42:56 +00:00
Nextcloud bot e7dcfdaa48 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-11 02:23:19 +00:00
blizzz 99194e3d33 Merge pull request #29624 from nextcloud/version/22.2.1/final
22.2.1
2021-11-10 20:46:18 +01:00
Arthur Schiwon b5a9019516 update CA bundle
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-11-10 20:37:36 +01:00
Arthur Schiwon 538c1f5177 22.2.1
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-11-10 14:33:52 +01:00
Nextcloud bot c43c2409a6 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-10 02:24:39 +00:00
Carl Schwan 4d34ccd88c Merge pull request #29598 from nextcloud/backport/29029/stable22
[stable22] Fix HTML entity rendering in file comments sidebar
2021-11-09 11:19:51 +01:00
Christopher Ng 9f594ea9ff Fix HTML entity rendering in file comments sidebar
Signed-off-by: Christopher Ng <chrng8@gmail.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-11-09 07:34:43 +00:00
Nextcloud bot 146619e462 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-09 03:26:35 +00:00
John Molakvoæ 677cc1c333 Merge pull request #29562 from nextcloud/backport/28466/stable22 2021-11-08 21:40:43 +01:00
John Molakvoæ eb585597bc Merge pull request #29597 from nextcloud/backport/29592/stable22 2021-11-08 20:58:14 +01:00
Julien Veyssier b076968cc2 refs #11864 handle empty dir drop in Files UI
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
2021-11-08 17:18:51 +00:00
Nextcloud bot 43652ca542 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-08 02:33:18 +00:00
Nextcloud bot 580759a37a [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-07 02:22:43 +00:00
dependabot[bot] 09927fbb8d Merge pull request #29575 from nextcloud/dependabot/npm_and_yarn/stable22/nextcloud/initial-state-1.2.1 2021-11-06 13:03:42 +00:00
dependabot[bot] 1d90a00cbf Bump @nextcloud/initial-state from 1.2.0 to 1.2.1
Bumps [@nextcloud/initial-state](https://github.com/nextcloud/nextcloud-initial-state) from 1.2.0 to 1.2.1.
- [Release notes](https://github.com/nextcloud/nextcloud-initial-state/releases)
- [Changelog](https://github.com/nextcloud/nextcloud-initial-state/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/nextcloud-initial-state/compare/v1.2.0...v1.2.1)

---
updated-dependencies:
- dependency-name: "@nextcloud/initial-state"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-11-06 12:21:53 +00:00
dependabot[bot] 123f670054 Merge pull request #29578 from nextcloud/dependabot/composer/build/integration/stable22/behat/behat-approx-3.10.0 2021-11-06 06:19:11 +00:00
dependabot[bot] dd070a7c11 Update behat/behat requirement in /build/integration
Updates the requirements on [behat/behat](https://github.com/Behat/Behat) to permit the latest version.
- [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.9.0...v3.10.0)

---
updated-dependencies:
- dependency-name: behat/behat
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-06 03:35:42 +00:00
Nextcloud bot 40d5086dcf [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-06 02:22:52 +00:00
Julius Härtl f6747516e0 Do not retain VerifyUserData job when lookup server is not available
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-11-05 13:20:53 +00:00
Nextcloud bot 97085c9a3a [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-05 02:23:07 +00:00
John Molakvoæ bf6522a16e Merge pull request #29549 from nextcloud/backposkjnldsv/update-psalm-baseline 2021-11-04 13:38:58 +01:00
John Molakvoæ 91ad520de9 Add branch-suffix to update-psalm-baseline PR creation
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2021-11-04 11:44:07 +01:00
John Molakvoæ 1f3a9c6337 [stable22] Update update-psalm-baseline workflow
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2021-11-04 11:02:17 +01:00
John Molakvoæ 8cd54a2789 Merge pull request #29538 from nextcloud/version/22.2.1/rc1 2021-11-04 08:46:41 +01:00
John Molakvoæ fd35e9c13b Merge pull request #29383 from nextcloud/backport/29304/stable22 2021-11-04 08:45:57 +01:00
John Molakvoæ 90af0897a4 Merge pull request #29503 from nextcloud/backport/29465/stable22 2021-11-04 08:38:08 +01:00
John Molakvoæ 244b7ca415 Merge pull request #29506 from nextcloud/backport/29281/stable22 2021-11-04 08:37:55 +01:00
John Molakvoæ f376af6421 Merge pull request #29534 from nextcloud/backport/29332/stable22 2021-11-04 08:37:26 +01:00
Arthur Schiwon f2f07f3c86 22.2.1 RC1
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-11-03 18:30:53 +01:00
John Molakvoæ 9b1eab25ce Merge pull request #29528 from nextcloud/revert-stable22-split-capability-AccountPropertyScopesFederationEnabled 2021-11-03 13:42:45 +01:00
tobiasKaminsky 34029fe3c9 Adjust test
Signed-off-by: tobiasKaminsky <tobias@kaminsky.me>
2021-11-03 12:24:25 +00:00
tobiasKaminsky 0d1f92ccf0 Expose send_password_by_mail via capabilities
Signed-off-by: tobiasKaminsky <tobias@kaminsky.me>
2021-11-03 12:24:24 +00:00
Daniel Calviño Sánchez 33cd00723a Revert "Split capability"
This reverts commit 09a5413d26.

The backport was merged before the commit was dropped, but the commit
was meant only for Nextcloud 23, as it may require changes in the
clients.
2021-11-03 06:36:36 +01:00
Nextcloud bot 7d3a01e675 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-03 02:23:47 +00:00
Joas Schilling 986ed756a4 Merge pull request #29341 from nextcloud/backport/29320/stable22
[stable22] Fix basic auth for OAuth token endpoint
2021-11-02 15:19:48 +01:00
Côme Chilliet 1a1e0f5d0b Merge pull request #29519 from nextcloud/backport/29479/stable22
[stable22] Fix images on php 8.0
2021-11-02 14:26:01 +01:00
Côme Chilliet 3b4fb5e843 Fix psalm-ocp error about GdImage class
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-02 11:07:40 +01:00
Côme Chilliet f8c8b2cea9 Enable Avatar tests as well for PHP>=8
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-02 09:59:36 +00:00
Côme Chilliet e498aaf2c8 Revert "Do not run image tests on php8"
This reverts commit d690f90928.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-02 09:59:36 +00:00
Côme Chilliet 90203c6ca7 Fix resource usages in OC_Image
This makes sure using resource or GdImage (PHP>=8) behaves the same.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-02 09:59:35 +00:00
Nextcloud bot db1d5b82ab [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-02 02:22:28 +00:00
Sijmen Schoon 071eda7baa Move query outside the loop and reduce chunk size to 1000
This involved changing CacheQueryBuilder\whereParentIn to take a
parameter name, renaming the function accordingly.

Signed-off-by: Sijmen Schoon <me@sijmenschoon.nl>
2021-11-01 11:08:32 +00:00
Sijmen Schoon ec3b1ccd91 Limit parameter count per query in Cache.removeChildren
Signed-off-by: Sijmen Schoon <me@sijmenschoon.nl>
2021-11-01 11:08:31 +00:00
Arthur Schiwon 89cb3c7b29 update CRL
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-11-01 11:41:27 +01:00
Nextcloud bot 3c1426a477 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-01 02:22:49 +00:00
Nextcloud bot c152f48328 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-31 02:22:13 +00:00
dependabot[bot] ae1faec4c5 Merge pull request #29495 from nextcloud/dependabot/npm_and_yarn/stable22/bootstrap-4.6.1 2021-10-30 16:24:58 +00:00
dependabot[bot] f232f737a9 Bump bootstrap from 4.6.0 to 4.6.1
Bumps [bootstrap](https://github.com/twbs/bootstrap) from 4.6.0 to 4.6.1.
- [Release notes](https://github.com/twbs/bootstrap/releases)
- [Commits](https://github.com/twbs/bootstrap/compare/v4.6.0...v4.6.1)

---
updated-dependencies:
- dependency-name: bootstrap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-10-30 15:47:34 +00:00
dependabot[bot] 86b14a0197 Merge pull request #29494 from nextcloud/dependabot/npm_and_yarn/stable22/vue-router-3.5.3 2021-10-30 15:00:04 +00:00
dependabot[bot] 6eb31dc8d0 Bump vue-router from 3.5.2 to 3.5.3
Bumps [vue-router](https://github.com/vuejs/vue-router) from 3.5.2 to 3.5.3.
- [Release notes](https://github.com/vuejs/vue-router/releases)
- [Changelog](https://github.com/vuejs/vue-router/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue-router/compare/v3.5.2...v3.5.3)

---
updated-dependencies:
- dependency-name: vue-router
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-10-30 14:25:12 +00:00
Carl Schwan 8993cf86f1 Merge pull request #29475 from nextcloud/backport/29115/stable22
[stable22] Fix permissions when copying from ObjectStorage
2021-10-30 11:20:07 +02:00
Nextcloud bot 1cf9660767 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-30 02:22:28 +00:00
Joas Schilling b392321e73 Fix basic auth for OAuth token endpoint
Don't try to login when a client is trying to get a OAuth token.
OAuth needs to support basic auth too, so the login is not valid
inside Nextcloud and the Login exception would ruin it.

Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-10-30 02:25:06 +02:00
MichaIng 5bd6a4fd29 Merge pull request #29415 from nextcloud/backport/27440/stable22
[stable22] Handle files with `is_file` instead of `file_exists`
2021-10-30 00:19:28 +02:00
Carl Schwan 7bf4a45f49 Fix permissions when copying from ObjectStorage
Make sure that when a user copy a file from a directory they don't have
all permissions to a directory where they have more permissions, the
permissions are correctly set to the one from the parent taget folder.

This was caused by the ObjectStoreStorage::copyFromStorage using
the jailed storage and cache entry instead of the unjailed one like other
storages (the local one).
Steps to reproduce

+ Use object storage
+ Create a groupfolder with one group having full permission and another one
  who can just read files.
+ With an user who is in the second group, copy a file from the groupfolder to
  the home folder of this user.
+ The file in the home folder of the user will be read only and can't be deleted
  even though it is in their home folder and they are the owner. In oc_filecache,
  the permissions stored for this file are 1 (READ)

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-10-30 00:18:26 +02:00
Nextcloud bot 331bf8ec22 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-29 02:22:34 +00:00
Nextcloud bot bc4c4f5d55 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-28 02:23:05 +00:00
blizzz 04572bc20f Merge pull request #29459 from nextcloud/backport/29454/stable22
[stable22] Detect mimetype by content only with content
2021-10-27 17:22:31 +02:00
Joas Schilling 7fe95c5576 Detect mimetype by content only with content
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-10-27 13:47:35 +00:00
Nextcloud bot f08f410140 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-27 02:23:49 +00:00
John Molakvoæ a3ee517895 Merge pull request #29442 from nextcloud/backport/stable22/26841 2021-10-26 16:47:20 +02:00
Joas Schilling c154b5289a Fix "No entries in this …" template
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-10-26 10:58:25 +02:00
Julius Härtl 4133774c0c Move to combined files entrypoint
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-10-26 10:51:42 +02:00
Julius Härtl c7a9bd1f47 Implement local filtering in file list
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-10-26 10:15:43 +02:00
Nextcloud bot 8901b34530 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-26 02:23:06 +00:00
Lukas Reschke 5024b5de9b Merge pull request #29427 from nextcloud/fix/user_status_enumeration_22
Backport #29260: Respect user enumeration settings in user status lists
2021-10-25 14:51:45 +02:00
Jonas Meurer f5b4c1c9ae Add integration tests for user_status API
Signed-off-by: Jonas Meurer <jonas@freesources.org>
2021-10-25 11:16:49 +02:00
Jonas Meurer af00399893 Respect user enumeration settings in user status lists
So far, the functions to find user statuses listed didn't respect user
enumeration settings (`shareapi_allow_share_dialog_user_enumeration`
and `shareapi_restrict_user_enumeration_to_group` core app settings).

Fix this privacy issue by returning an empty list in case
`shareapi_allow_share_dialog_user_enumeration` is unset or
`shareapi_restrict_user_enumeration_to_group` is set.

In the long run, we might want to return users from common groups if
`shareapi_restrict_user_enumeration_to_group` is set. It's complicated
to implement this in a way that scales, though. See the discussion at
https://github.com/nextcloud/server/pull/27879#pullrequestreview-753655308
for details.

Also, don't register the user_status dashboard widget at all if
`shareapi_allow_share_dialog_user_enumeration` is unset or
`shareapi_restrict_user_enumeration_to_group` is set.

Fixes: #27122

Signed-off-by: Jonas Meurer <jonas@freesources.org>
2021-10-25 10:00:20 +02:00
Nextcloud bot c799b48563 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-25 02:22:35 +00:00
dependabot[bot] 827341cd1c Merge pull request #29409 from nextcloud/dependabot/npm_and_yarn/stable22/babel-loader-8.2.3 2021-10-24 18:50:32 +00:00
dependabot[bot] fd4d4dbd8d Bump babel-loader from 8.2.2 to 8.2.3
Bumps [babel-loader](https://github.com/babel/babel-loader) from 8.2.2 to 8.2.3.
- [Release notes](https://github.com/babel/babel-loader/releases)
- [Changelog](https://github.com/babel/babel-loader/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel-loader/compare/v8.2.2...v8.2.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-24 20:09:02 +02:00
MichaIng eb79cb6861 Merge pull request #29393 from nextcloud/backport/26725/stable22
[stable22] Fix federated scope not shown when public addressbook upload is disabled
2021-10-24 20:05:38 +02:00
Nextcloud bot 6c7efef285 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-24 02:22:32 +00:00
blizzz 7fe15c719c Merge pull request #29419 from nextcloud/backport/29400/stable22
[stable22] fixes an undefined index when getAccessList returns an empty array
2021-10-24 01:25:57 +02:00
Daniel Calviño Sánchez 09a5413d26 Split capability
The "federated" and "published" scopes are independent one from each
other, so the capability that encompassed both needs to be split.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-10-23 20:25:40 +02:00
Daniel Calviño Sánchez 222f9f77cd Hide "federated" scope when Federation app is disabled
If the Federation app is disabled it is not possible to synchronize the
users from a different server.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-10-23 20:25:40 +02:00
Daniel Calviño Sánchez e01af52698 Fix "Federated" scope not shown when the lookup server is disabled
When the lookup server is disabled the address books can still be
exchanged between trusted servers. Therefore the user should be able to
set the "Federated" scope in that case.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-10-23 20:25:40 +02:00
Daniel Calviño Sánchez 0547440069 Add missing scope to test
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-10-23 20:25:39 +02:00
MichaIng 629225c30a Merge pull request #29391 from nextcloud/backport/29220/stable22
[stable22] s3 external storage fixes
2021-10-23 20:20:25 +02:00
MichaIng daeeae4ae0 Merge pull request #29398 from nextcloud/backport/29378/stable22
[stable22] Make the route name error more helpful
2021-10-23 20:12:28 +02:00
Arthur Schiwon 5145675d43 fixes an undefined index when getAccessList returns an empty array
- [] is a valid return value that should be honored as having no access

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-10-23 12:48:51 +00:00
acsfer 72776e5493 Update Tests 2021-10-23 09:28:13 +00:00
acsfer 1714ead4f2 Tests update 2021-10-23 09:28:13 +00:00
acsfer 3a5d1c1faf Handle files with is_file instead of file_exists
Should fix things like `fread(): read of 8192 bytes failed with errno=21 Is a directory`
2021-10-23 09:28:13 +00:00
dependabot[bot] 99b151e87a Merge pull request #29410 from nextcloud/dependabot/composer/build/integration/stable22/behat/behat-approx-3.9.0 2021-10-23 04:26:55 +00:00
Nextcloud bot 6853c89114 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-23 02:22:43 +00:00
dependabot[bot] bf54b2138c Update behat/behat requirement in /build/integration
Updates the requirements on [behat/behat](https://github.com/Behat/Behat) to permit the latest version.
- [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.8.0...v3.9.0)

---
updated-dependencies:
- dependency-name: behat/behat
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-23 02:11:35 +00:00
Christoph Wurst bc17c790ad Make the route name error more helpful
As a developer I have no clue what "Invalid route name" means. If the
exception gives me a hint I might find it easier to figure out why my
route triggers this error.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-10-22 20:36:42 +00:00
Julius Härtl b98d314cec Merge pull request #29381 from nextcloud/backport/29357/stable22 2021-10-22 20:14:56 +02:00
John Molakvoæ 93d0e207cc Merge pull request #29385 from nextcloud/backport/28997/stable22 2021-10-22 18:37:49 +02:00
Richard Steinmetz 6c9a4dfe6f Merge pull request #29389 from nextcloud/backport/29375/stable22
[stable22] Make calendar schedule options translatable
2021-10-22 18:23:24 +02:00
Robin Appelman e62390045a cache versioning enabled status
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-10-22 12:34:31 +00:00
Robin Appelman da4712b62c minor directory detect improvements
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-10-22 12:34:31 +00:00
Robin Appelman d85c0f0c73 always set Key field in headObject
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-10-22 12:34:31 +00:00
Robin Appelman 5f438375a9 more reliable return value for Watcher::checkUpdate
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-10-22 12:34:30 +00:00
Robin Appelman 4108655a46 more reliable hasUpdated for s3
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-10-22 12:34:30 +00:00
Robin Appelman 7983ded102 remove old migration method
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-10-22 12:34:30 +00:00
Robin Appelman 01cd477f04 optimize filetype for s3 directories a bit
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-10-22 12:34:30 +00:00
Robin Appelman a3d365b33b ci
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-10-22 12:34:30 +00:00
Robin Appelman 30f0d9962a more reliable directory copy
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-10-22 12:34:30 +00:00
Robin Appelman 804a7090f5 doesDirectoryExist fixes
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-10-22 12:34:30 +00:00
Robin Appelman a4a4097068 s3 external storage listing rework
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-10-22 12:34:30 +00:00
Julius Härtl 517fa5f2b9 Make calendar schedule options translatable
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-10-22 10:38:11 +00:00
Daniel Kesselberg f50ab2b158 Update attendence for external users
For local users it's possible to select their calendar via the principal url and first update their own attendance status.
External users have no calendar event hence the recipient is the organizer.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-10-22 10:10:55 +00:00
Anna Larch 2f4d564ad4 Scheduling plugin not updating responding attendee status take two
Signed-off-by: Anna Larch <anna@nextcloud.com>
2021-10-22 10:10:55 +00:00
JanBartels 28cd629de6 Patch for master-branch 2021-10-22 09:35:37 +00:00
John Molakvoæ 029d86a9ac Merge pull request #29316 from nextcloud/backport/29180/stable22 2021-10-22 11:20:19 +02:00
Christoph Wurst 4e41638101 Prevent duplicate auth token activity updates
The auth token activity logic works as follows
* Read auth token
* Compare last activity time stamp to current time
* Update auth token activity if it's older than x seconds

This works fine in isolation but with concurrency that means that
occasionally the same token is read simultaneously by two processes and
both of these processes will trigger an update of the same row.
Affectively the second update doesn't add much value. It might set the
time stamp to the exact same time stamp or one a few seconds later. But
the last activity is no precise science, we don't need this accuracy.

This patch changes the UPDATE query to include the expected value in a
comparison with the current data. This results in an affected row when
the data in the DB still has an old time stamp, but won't affect a row
if the time stamp is (nearly) up to date.

This is a micro optimization and will possibly not show any significant
performance improvement. Yet in setups with a DB cluster it means that
the write node has to send fewer changes to the read nodes due to the
lower number of actual changes.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-10-22 09:16:05 +00:00
Carl Schwan 759c5a762b Merge pull request #29359 from nextcloud/backport/29355/stable22
[stable22] Fix login button alignment
2021-10-22 10:20:44 +02:00
Vincent Petry e67a330fd1 Merge pull request #29365 from nextcloud/backport/29362/stable22
[stable22] Fix security issues when copying groupfolder with advanced ACL
2021-10-22 09:56:02 +02:00
Nextcloud bot 01c1a5945b [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-22 02:22:11 +00:00
Carl Schwan 887f4ba2fb Fix security issues when copying groupfolder with advanced ACL
Using advanced ACL, it is possible that an user has access to a
directory but not to a subdirectory, so the copying use
Common::copyFromStorage instead of Local::copyFromStorage.

Fix https://github.com/nextcloud/groupfolders/issues/1692

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-10-21 16:34:20 +00:00
Carl Schwan 6b667103c8 Fix login button alignment
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-10-21 13:16:58 +00:00
John Molakvoæ cad44d69dd Merge pull request #29288 from nextcloud/backport/28768/stable22 2021-10-21 09:31:46 +02:00
Nextcloud bot 0a1ee2da89 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-21 02:24:27 +00:00
Nextcloud bot 74c26288db [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-20 02:43:11 +00:00
Pytal 1ad0d3fb07 Merge pull request #29311 from nextcloud/backport/29295/stable22 2021-10-19 19:06:22 -07:00
MichaIng dae59e5203 Merge pull request #29263 from nextcloud/backport/29090/stable22
[stable22] Add configuration flag to disable the background job for files_versions
2021-10-20 00:12:36 +02:00
MichaIng 1c69bc8180 Merge pull request #29262 from nextcloud/backport/29125/stable22
[stable22] Add configuration flag to disable the background job for files_trashbin
2021-10-20 00:10:54 +02:00
Joas Schilling cbb2ffd1d2 Merge pull request #29301 from nextcloud/backport/29259/stable22
[stable22] Fix app upgrade
2021-10-19 13:36:57 +02:00
Côme Chilliet 9f27bde82b Use Psr\Log\LoggerInterface where it can easily be used in user_ldap
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-10-19 09:25:13 +00:00
Côme Chilliet 6372c34c40 Fix two mistakes in previous migration to LoggerInterface in OCA\User_LDAP\Access
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-10-19 09:25:13 +00:00
Côme Chilliet d29a132949 Use Psr\Log\LoggerInterface in OCA\User_LDAP\Access
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-10-19 09:25:13 +00:00
Côme Chilliet 206d6d034f Avoid PHP errors when the LDAP attribute is not found
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-10-19 09:25:12 +00:00
John Molakvoæ 086950faf3 Merge pull request #29283 from nextcloud/backport/28250/stable22 2021-10-19 11:11:42 +02:00
John Molakvoæ 27c23b6f13 Merge pull request #29183 from nextcloud/backport/29028/stable22 2021-10-19 11:11:26 +02:00
Carl Schwan 1787d8257a Fix cliping issues in alternative logging buttons
The issues was caused because the button with its margins was bigger
than the parent. Instead of setting the margin of the button, add
padding to the parent. This is more reliable.

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-10-19 08:23:20 +00:00
Nextcloud bot 59376677b4 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-19 02:23:00 +00:00
Joas Schilling 6a7b6ea0e8 Fix app upgrade
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-10-18 19:22:48 +00:00
acsfer 50791c61d3 Simplify :) 2021-10-18 07:59:00 +00:00
acsfer 269d9b5e0b Replace file_exists() method by is_file() 2021-10-18 07:58:59 +00:00
acsfer 698527d197 Get filesize() if file_exists()
Should make sense.
2021-10-18 07:58:59 +00:00
Nextcloud bot 4c499a0312 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-18 02:24:56 +00:00
pjft 92c16b3d60 Fix bug introduced on drag and drop external files
Drag and drop of external (OS filesystem) to subdirectories in the browser would fail on specific cases, mainly when the subdirectory was no longer off the root folder.
This seemed to have been an issue introduced with the subdirectory free space calculation [here](https://github.com/nextcloud/server/commit/f9536b08096ed1c80391af36d33a18198be1fced) and it seems to fail for any subdirectory that doesn't belong to the root folder.

Bug reports:
- https://help.nextcloud.com/t/drag-drop-into-subfolders/120731
- https://github.com/nextcloud/server/issues/24720

I couldn't find any reference on scenarios or quota management that would suggest when a subdirectory's free space would be different to the parent's free space, other than when on the root folder, where subdirectories can be external mounts.

As such, if my understanding is correct (please review), this calculation can - and should - be made by getting the free space from the first subdirectory in the total path, which caters for all subdirectory scenarios.

Please advise, happy to help improve this.

Co-authored-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
Signed-off-by: pjft <pjft@users.noreply.github.com>
2021-10-17 19:32:45 +00:00
Nextcloud bot 3c29fbc0b8 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-17 02:22:09 +00:00
Nextcloud bot 8ee71f4f5c [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-16 02:23:32 +00:00
Daniel Kesselberg 383321ac65 Add configuration flag to disable the background job for files_versions
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-10-15 14:20:00 +00:00
Daniel Kesselberg f41964bdde Add configuration flag to disable the background job for files_trashbin
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-10-15 13:52:22 +00:00
Daniel de6c643362 Merge pull request #29251 from nextcloud/backport/29248/stable22
[stable22] Fix background scan doc in config
2021-10-15 10:18:29 +02:00
Vincent Petry 39381c78a9 Fix background scan doc in config
The background scanner only processes entries with size < 0

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-10-15 08:08:58 +00:00
Nextcloud bot eaaeb5c9c0 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-15 02:26:14 +00:00
blizzz cc28d5c16c Merge pull request #29221 from nextcloud/backport/29214/stable22
[stable22] Don't setup the filesystem to check for a favicon we don't use anyway
2021-10-14 12:51:32 +02:00
Joas Schilling 34d546de1d Merge pull request #29225 from nextcloud/backport/26688/stable22
[stable22] Add proper message to created share not found
2021-10-14 10:08:44 +02:00
Nextcloud bot 701ffb0904 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-14 02:22:38 +00:00
John Molakvoæ (skjnldsv) 1cf4e4999e Default message for ShareNotFound exception
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-10-13 22:48:09 +00:00
John Molakvoæ (skjnldsv) f70c17cbcf Add proper message to created share not found
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-10-13 22:48:08 +00:00
Joas Schilling 07138686e2 Don't setup the filesystem to check for a favicon we don't use anyway
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-10-13 20:27:37 +00:00
Daniel e0d4246137 Merge pull request #29217 from nextcloud/backport/29136/stable22
[stable22] Add documentation for files_no_background_scan
2021-10-13 20:09:05 +02:00
blizzz ef56aa7c33 Merge pull request #29196 from nextcloud/backport/29020/stable22
[stable22] Keep group restrictions when reenabling apps after an update
2021-10-13 19:30:39 +02:00
Daniel Kesselberg 2290dcb3a4 Add documentation for files_no_background_scan
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-10-13 15:57:48 +00:00
Joas Schilling 31cdcf6f8c Merge pull request #29207 from nextcloud/backport/29004/stable22
[stable22] Fix translated app details
2021-10-13 17:02:12 +02:00
Joas Schilling f417c2e642 Keep group restrictions when reenabling apps after an update
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-10-13 14:03:39 +02:00
Joas Schilling 982f956342 Fix translated app details
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-10-13 09:59:48 +00:00
Nextcloud bot 164d118d8e [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-13 02:22:48 +00:00
Bjoern Schiessle ff48e1953d add 'supported'-label to all supported apps, also if they are not downloaded yet
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2021-10-12 11:47:43 +00:00
Julius Härtl 96abf31c3b Merge pull request #29160 from nextcloud/backport/24185/stable22 2021-10-12 09:12:11 +02:00
Joas Schilling bdc0c2def4 Merge pull request #29066 from nextcloud/backport/29056/stable22
[stable22] Allow "TwoFactor Nextcloud Notifications" to pull the state of the 2FA again
2021-10-12 09:03:55 +02:00
Nextcloud bot 148c7bfd89 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-12 02:22:45 +00:00
MichaIng a388b2fe72 Merge pull request #29129 from nextcloud/backport/27886/stable22
[stable22] Keep pw based auth tokens valid when pw-less login happens
2021-10-12 02:20:07 +02:00
Julius Härtl 9163894634 Merge pull request #29133 from nextcloud/backport/28907/stable22 2021-10-11 22:22:59 +02:00
MichaIng a7872e2202 Merge pull request #29162 from nextcloud/backport/29122/stable22
[stable22] Tokens without password should not trigger changed password invalidation
2021-10-11 14:36:12 +02:00
Julius Härtl 311988673c Tokens without password should not trigger changed password invalidation
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-10-11 09:34:04 +00:00
Julius Härtl 3246eea0b6 Make sure that a empty directory can still be deleted when copied from another storage
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-10-11 08:01:10 +00:00
Julius Härtl 5fc7c22034 Delete object to cleanup leftover of paths when removing directories
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-10-11 08:01:09 +00:00
Nextcloud bot 898e329373 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-11 02:22:47 +00:00
Nextcloud bot eb8cbc3fe9 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-10 02:21:27 +00:00
Nextcloud bot 622d593210 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-09 02:39:38 +00:00
John Molakvoæ c5e9e74a56 Merge pull request #29124 from nextcloud/backport/29123/stable22 2021-10-08 11:40:08 +02:00
John Molakvoæ ae4990f51d Merge pull request #29121 from nextcloud/backport/28608/stable22 2021-10-08 11:39:45 +02:00
Daniel Kesselberg 15417f3824 explicitly close source stream on encryption storage
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-10-08 08:04:34 +00:00
Daniel Kesselberg 8ce2a320a1 explicitly close source stream on local storage
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-10-08 08:04:34 +00:00
Tobias Assmann caae37e9e7 add spaces around operators
Signed-off-by: Tobias Assmann <tobias.assmann@ecsec.de>
2021-10-08 08:06:06 +02:00
Tobias Assmann ce834cbb55 draft to prevent the invalidation of pw based authn tokens on a pw less login
Signed-off-by: Tobias Assmann <tobias.assmann@ecsec.de>
2021-10-08 08:06:03 +02:00
Nextcloud bot 6990f2ff43 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-08 02:23:30 +00:00
Daniel Kesselberg d94d4acad6 Set associative = true for cleanup job
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-10-07 19:34:10 +00:00
Robin Appelman d4fb676dd7 generate a better optimized query for path prefix search filters
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-10-07 15:19:58 +00:00
Louis 97bdedf44d Merge pull request #29113 from nextcloud/backport/25774/stable22
[stable22] Add button color variables
2021-10-07 14:29:20 +02:00
Daniel d9dce2fd04 Merge pull request #29096 from nextcloud/backport/29083/stable22
[stable22] Update the certificate bundle
2021-10-07 12:27:05 +02:00
marco 8223a66d2e Add new variables for buttons
Signed-off-by: marco <marcoambrosini@pm.me>
2021-10-07 09:43:32 +00:00
Marco Ambrosini ea72d8ca00 Do not target vue buttons with server rules
Signed-off-by: Marco Ambrosini <marcoambrosini@pm.me>
2021-10-07 09:43:32 +00:00
Daniel Kesselberg 16136ddda1 Update the certificate bundle
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-10-07 09:33:39 +02:00
Nextcloud bot c7ce81fa01 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-07 02:25:42 +00:00
MichaIng 3ff8e940d1 Merge pull request #29086 from nextcloud/backport/29082/stable22
[stable22] Add a few sensitive config keys
2021-10-06 13:28:50 +02:00
Julius Härtl 59c5304159 Merge pull request #29062 from nextcloud/backport/28939/stable22 2021-10-06 09:59:30 +02:00
Julien Veyssier c681ed2e9b consider some config keys under 'objectstore_multibucket' as sensitive
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
2021-10-06 07:52:38 +00:00
Nextcloud bot 5d299f2834 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-06 02:21:09 +00:00
Pytal c9ef440a13 Merge pull request #29078 from nextcloud/backport/29058/stable22 2021-10-05 17:43:47 -07:00
Vincent Petry abfc24ad99 Do not transfer shares for deleted users
Whenever a user was deleted but is still recipient of share entries,
delete these entries upon transfer.

Usually such entries would disappear after running cleanup background
jobs.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-10-05 07:19:02 +00:00
Nextcloud bot fad7135bc4 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-05 02:22:19 +00:00
Daniel 62ba113ac8 Merge pull request #29073 from nextcloud/backport/28473/stable22
[stable22] Fix path of `file_get_contents`
2021-10-04 20:53:59 +02:00
acsfer 99c053e5d9 Avoid usage of Nextcloud API, use PHP function 2021-10-04 17:27:53 +00:00
acsfer 0506288882 Fix path of file_get_contents
Try to fix #28370  and #27441 

Avoid pre-pends the `$path` to the user's own storage.
2021-10-04 17:27:53 +00:00
Joas Schilling 770ed4dcdd Allow "TwoFactor Nextcloud Notifications" to pull the state of the 2FA again
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-10-04 15:19:48 +00:00
Joas Schilling 7eface3bfd Don't further setup disabled users when logging in with apache
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-10-04 11:03:04 +00:00
Nextcloud bot 15de74d82e [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-04 02:26:30 +00:00
Daniel c0d5e96cce Merge pull request #29046 from nextcloud/backport/29044/stable22
[stable22] Change output format of Psalm to Github
2021-10-03 20:17:31 +02:00
Morris Jobke 050ba4b8d2 Change output format of Psalm to Github
This automatically inlines the errors into the diff view.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-10-03 17:40:25 +00:00
Nextcloud bot 8b7ea9f62d [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-03 02:26:31 +00:00
Nextcloud bot c47046bcf4 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-02 02:26:25 +00:00
kesselb 75021cddd5 Merge pull request #29016 from nextcloud/backport/28263/stable22
[stable22] Fix Lots of Error: file_exists(): open_basedir restriction in effect.…
2021-10-01 22:10:09 +02:00
Karel Hink 5b36f44efb Fix Lots of Error: file_exists(): open_basedir restriction in effect. in Log
Signed-off-by: Karel Hink <info@karelhink.cz>
2021-10-01 12:48:38 +00:00
Nextcloud bot 5128ebdf38 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-10-01 02:26:17 +00:00
MichaIng 8fdae489cd Merge pull request #28968 from nextcloud/backport/28876/stable22
[stable22] ensure that user and group IDs in LDAP's tables are also max 64chars
2021-09-30 13:24:39 +02:00
Nextcloud bot 9d6345fcb7 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-30 02:30:35 +00:00
blizzz 07e359b7de Merge pull request #28988 from nextcloud/version/22.2.0/final
22.2.0
2021-09-29 23:17:42 +02:00
szaimen 115ae98142 Merge pull request #28998 from nextcloud/backport/28995/stable22
[stable22] Fix redirect during initial setup
2021-09-29 18:55:46 +02:00
Louis Chemineau 33685c58de Prevent empty base URL during installation
Signed-off-by: Louis Chemineau <louis@chmn.me>
2021-09-29 15:38:16 +00:00
Arthur Schiwon 8586d6040d ensure that user and group IDs in LDAP's tables are also max 64chars
- limitation by core tables (e.g. sharing), IDs are always 64chars
- when longer group IDs were requested they are hashed (does not affect
  displaynames)

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-29 14:17:13 +02:00
Arthur Schiwon dd9b0ea3d3 22.2.0
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-29 11:38:26 +02:00
blizzz 610bc603c8 Merge pull request #28984 from nextcloud/bump-app-versions
[stable22] Bump app versions
2021-09-29 11:05:51 +02:00
Joas Schilling a8415ea7d7 Fix app version check
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-09-29 10:07:45 +02:00
Joas Schilling e7afd64436 Bump app version
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-09-29 10:07:22 +02:00
Nextcloud bot 9be73bfeeb [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-29 02:26:14 +00:00
Nextcloud bot 113965df8c [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-28 02:25:28 +00:00
szaimen b5366997a5 Merge pull request #28962 from nextcloud/backport/28853/stable22
[stable22] Don't allow to change activity settings that don't work
2021-09-27 10:41:14 +02:00
Joas Schilling fbc9133861 Don't allow to change activity settings that don't work
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-09-27 06:19:09 +00:00
Vincent Petry 53a18945d4 Merge pull request #28954 from nextcloud/backport/28933/stable22
[stable22] Fix check for redis minimal version
2021-09-27 08:14:32 +02:00
Julien Veyssier f71919c967 Merge pull request #28945 from nextcloud/fix/can-upgrade-from
Allow upgrade from 22.2.0.0 to 22.2.0.1
2021-09-26 14:43:18 +02:00
Nextcloud bot 729c0b89ed [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-26 02:27:33 +00:00
Nextcloud bot f74e5c4cd5 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-25 02:26:47 +00:00
MichaIng 30d81a981e Merge pull request #28953 from nextcloud/backport/27852/stable22
[stable22] Allow casting query functions
2021-09-25 02:05:55 +02:00
Daniel Kesselberg 0927ff1edb Fix check for redis minimal version
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-09-24 21:03:00 +00:00
Joas Schilling 7c9167e9b4 Allow casting query functions as well
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-09-24 20:20:02 +00:00
Joas Schilling e4817972d8 Add a unit test to check for casting a IQueryFunction
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-09-24 20:20:02 +00:00
MichaIng 068e977b07 Merge pull request #28949 from nextcloud/backport/28916/stable22
[stable22] fix caching of objectsid searches
2021-09-24 22:06:18 +02:00
Arthur Schiwon 14fa79f37a fix caching of objectsid searches
- store result when no name could be retrieved, too
- cached value is not an array, was treated wrongly

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-24 15:07:03 +00:00
Julien Veyssier 106144edc5 allow upgrade from 22.2
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
2021-09-24 12:26:05 +02:00
Nextcloud bot 10c60b9179 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-24 02:26:51 +00:00
blizzz c78148c57a Merge pull request #28938 from nextcloud/version/22.2.0/rc2
22.2.0 RC2
2021-09-23 12:16:15 +02:00
blizzz e47f7690c4 Merge pull request #28928 from nextcloud/3rdparty-22
[stable22] Bump 3rdparty ref
2021-09-23 10:28:31 +02:00
blizzz e6d7cdcfd7 Merge pull request #28827 from nextcloud/backport/26584/stable22
[stable22] Update .htaccess (php8+ and mod_lsapi)
2021-09-23 10:27:37 +02:00
blizzz 9410141747 Merge pull request #28683 from nextcloud/backport/26463/stable22
[stable22] Fix S3 ObjectStore proxy option
2021-09-23 10:24:54 +02:00
Arthur Schiwon f5ed8073b8 22.2.0 RC2
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-23 10:12:38 +02:00
blizzz 815ec82cd0 Merge pull request #28910 from nextcloud/backport/28802/stable22
[stable22] Support seeking also from the end of file on S3 storage
2021-09-23 09:49:45 +02:00
Nextcloud bot 3985791360 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-23 02:29:52 +00:00
Lukas Reschke b1ed97bdca [stable22] Bump 3rdparty ref
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-09-22 16:16:49 +02:00
Nextcloud bot db539b58ad [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-22 02:26:50 +00:00
MichaIng 3558d87ec4 Merge pull request #28881 from nextcloud/backport/28871/stable22
[stable22] Fix file creation from template without ext
2021-09-21 19:37:42 +02:00
kesselb 72ac7c11d6 Merge pull request #28919 from nextcloud/backport/28918/stable22
[stable22] Use IRoomMetadata as source of truth for supported room types
2021-09-21 18:41:06 +02:00
Richard Steinmetz 0931599ae0 Use IRoomMetadata as source of truth for supported room types
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2021-09-21 16:19:40 +00:00
acsfer fe89d00fd5 Fix module name for PHP8+ 2021-09-21 17:14:50 +02:00
acsfer cb170bacf3 Update .htaccess (PHP8 and mod_lsapi)
- Add `mod_lsapi` (Cloudlinux) authorization headers
- Add `mod_php8` php_values
- Reformating for better lisibilty
2021-09-21 17:14:49 +02:00
Louis Chemineau 0e77b0f496 Use legacy call of generateOcsUrl
Signed-off-by: Louis Chemineau <louis@chmn.me>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-09-21 10:42:05 +00:00
Nextcloud bot 5042fda90d [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-21 02:27:21 +00:00
Pauli Järvinen 11695164c6 Support seeking also from the end of file on S3 storage
The PR https://github.com/nextcloud/server/pull/20033 added support
for `fseek` for  the S3 storage backend. However, the seek mode SEEK_END
was left out that time. This PR fills this gap.

Signed-off-by: Pauli Järvinen <pauli.jarvinen@gmail.com>
2021-09-20 18:13:25 +00:00
blizzz 772e8a11e7 Merge pull request #28900 from nextcloud/backport/28868/stable22
[stable22] Update CRL due to revoked twofactor_email.crt
2021-09-20 17:44:58 +02:00
Vincent Petry e38832ab30 Merge pull request #28895 from nextcloud/backport/28889/stable22
[stable22] Fall back to full file for video previews
2021-09-20 13:54:32 +02:00
Arthur Schiwon e442ce53be Update CRL due to revoked twofactor_email.crt
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-20 11:17:00 +00:00
Vincent Petry 389c7dcd6a Fall back to full file for video previews
If the first 5 MB are not enough to grab a useful frame for the
thumbnail preview, fall back to reading the full file.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-09-20 09:29:58 +00:00
Louis Chemineau c128e0a787 Fix partial backport
Signed-off-by: Louis Chemineau <louis@chmn.me>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-09-20 09:09:37 +00:00
Nextcloud bot eb3d06c53a [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-20 02:25:53 +00:00
Nextcloud bot 7793e88616 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-19 02:25:48 +00:00
kesselb 4ac4c0a94c Merge pull request #28860 from nextcloud/backport/28822/stable22
[stable22] Add email addresses to contacts menu
2021-09-18 16:00:45 +02:00
blizzz 81cd110526 Merge pull request #28888 from nextcloud/dependabot/npm_and_yarn/stable22/vue-clipboard2-0.3.3
Bump vue-clipboard2 from 0.3.2 to 0.3.3
2021-09-18 10:41:58 +02:00
Vincent Petry 7da323aace Merge pull request #28878 from nextcloud/backport/28872/stable22
[stable22] Fix files view change and undefined currentFileList
2021-09-18 09:41:01 +02:00
MichaIng 64d7080575 Merge pull request #28850 from nextcloud/backport/28285/stable22
[stable22] l10n: ignore packed js files from TX sync
2021-09-18 09:22:50 +02:00
Nextcloud bot 9f827142cf [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-18 02:28:55 +00:00
dependabot[bot] 1cc0e4b394 Bump vue-clipboard2 from 0.3.2 to 0.3.3
Bumps [vue-clipboard2](https://github.com/Inndy/vue-clipboard2) from 0.3.2 to 0.3.3.
- [Release notes](https://github.com/Inndy/vue-clipboard2/releases)
- [Changelog](https://github.com/Inndy/vue-clipboard2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Inndy/vue-clipboard2/compare/v0.3.2...v0.3.3)

---
updated-dependencies:
- dependency-name: vue-clipboard2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-18 01:59:04 +00:00
John Molakvoæ 265aedc6e5 Fix file creation from template without ext
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2021-09-17 20:22:54 +00:00
John Molakvoæ c406a14fdb Fix files view change and undefined currentFileList
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2021-09-17 19:54:26 +00:00
Daniel Kesselberg 74ba52641d Add email addresses to contacts menu
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-09-17 10:04:22 +02:00
Nextcloud bot 8eb6dd8ed5 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-17 02:28:20 +00:00
John Molakvoæ 74b009eac3 Merge pull request #28531 from nextcloud/backport/28478/stable22 2021-09-16 20:22:08 +02:00
John Molakvoæ 4ea2060099 Merge pull request #28867 from nextcloud/release/22.2.0-rc1 2021-09-16 20:19:23 +02:00
John Molakvoæ 934a7618a9 22.2.0 RC1
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2021-09-16 19:34:04 +02:00
John Molakvoæ f82529a74c Merge pull request #28865 from nextcloud/backport/28835/stable22 2021-09-16 19:29:31 +02:00
John Molakvoæ 1d5c820354 Bump @nextcloud/vue
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2021-09-16 18:27:44 +02:00
John Molakvoæ 1434a75c73 Add new ExternalShareActions API
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
2021-09-16 16:19:44 +00:00
Joas Schilling 8625d516b6 Merge pull request #28852 from nextcloud/backport/28698/stable22
[stable22] l10n: Remove a text string from translation
2021-09-16 16:39:52 +02:00
blizzz 9888b05970 Merge pull request #28855 from nextcloud/backport/28840/stable22
[stable22] let user choose notification email in user settings
2021-09-16 12:58:10 +02:00
nextcloud-command 733f22536d Compile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-09-16 10:08:10 +00:00
Arthur Schiwon c77dc0a31c adjusted backport of e26664ba42
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-16 11:35:20 +02:00
Vincent Petry 68bfaa1da3 Merge pull request #28851 from nextcloud/backport/28847/stable22
[stable22] Add config.php option for transfer ownership
2021-09-16 08:38:37 +02:00
Nextcloud bot fa7b964ada [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-16 02:28:52 +00:00
Pytal 4732aea350 Merge pull request #28841 from nextcloud/backport/28794/stable22
[stable22] allow using of disabled password reset mechanism for special cases
2021-09-15 12:15:16 -07:00
blizzz 8549325752 Merge pull request #28843 from nextcloud/backport/28828/stable22
[stable22] the user always may modify their additional emails
2021-09-15 17:23:34 +02:00
Valdnet f22209dc37 Correct code
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2021-09-15 15:19:39 +00:00
Valdnet f2cdd8af99 l10n: Remove a text string from translation
Removal of a text string from a translation in Transifex.

Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2021-09-15 15:19:39 +00:00
Vincent Petry 3bd1194526 Add config.php option for transfer ownership
Add option to specify whether to transfer incoming shares by default.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-09-15 15:01:43 +00:00
Vincent Petry 4d5ee24eed Merge pull request #28844 from nextcloud/backport/28118/stable22
[stable22] Added support for transferring incoming file shares.
2021-09-15 16:56:00 +02:00
rakekniven 59d5937b06 l10n: ignore packed js files from TX sync
Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2021-09-15 14:14:51 +00:00
Vincent Petry 42239fc02c Test for transfer ownership with incoming shares
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-09-15 12:18:31 +02:00
Vincent Petry 249582a811 Added support for transfering incoming file shares.
- new option --transfer-incoming-shares=1 | 0
- new config.php option 'transfer-incoming-shares' => true | false

The command line option overrules the config.php option.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
Co-authored-by: Immanuel Pasanec <immanuel.pasanec@compaso.de>
2021-09-15 12:18:23 +02:00
nextcloud-command 5250bb0509 Compile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-09-15 10:12:48 +00:00
Arthur Schiwon 9741fd466c the user always may modify their additional emails
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-15 12:03:58 +02:00
Nextcloud bot 7c870faf17 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-15 02:28:11 +00:00
Arthur Schiwon 151fafcd45 allow using of disabled password reset mechanism for special cases
- LostController has three endpoints
- door opener email() still rejects
- resetform(), reachable from mail, checks the token first and may report
  that password reset is disabled
- setPassword() got its check removed as it is behind CSFR anyway and still
  requires a valid token
- this allows special cases like activating a freshly created guest account

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-15 01:32:44 +00:00
John Molakvoæ 609494fd4d Merge pull request #28830 from nextcloud/backport/28774/stable22 2021-09-14 18:06:56 +02:00
Richard Steinmetz 438386c96a Do not cache file ids in FileSystemTags inside group folders
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2021-09-14 14:07:25 +00:00
blizzz 5ef25870e5 Merge pull request #28824 from nextcloud/backport/28792/stable22
[stable22] fixes missing prefix to validate password reset token
2021-09-14 10:51:34 +02:00
Arthur Schiwon 3f1e4a0b15 fixes missing prefix to validate password reset token
- also fixes the test which missed asserting the presence of it

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-14 07:52:45 +00:00
Nextcloud bot 3f71dd2b8d [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-14 02:30:51 +00:00
Lukas Reschke 08673d29ab Merge pull request #28814 from nextcloud/backport/28728/stable22
[stable22] Add database ratelimiting backend
2021-09-13 19:27:34 +02:00
Lukas Reschke 7eb702ec53 Add database ratelimiting backend
In case no distributed memory cache is specified this adds
a database backend for ratelimit purposes.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-09-13 15:36:07 +02:00
Nextcloud bot f8c6c267d5 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-13 02:28:30 +00:00
Nextcloud bot 7c812482cf [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-12 02:28:38 +00:00
dependabot[bot] b4a4250537 Merge pull request #28801 from nextcloud/dependabot/npm_and_yarn/stable22/vue-clipboard2-0.3.2 2021-09-11 23:30:37 +00:00
dependabot[bot] b343bd5381 Bump vue-clipboard2 from 0.3.1 to 0.3.2
Bumps [vue-clipboard2](https://github.com/Inndy/vue-clipboard2) from 0.3.1 to 0.3.2.
- [Release notes](https://github.com/Inndy/vue-clipboard2/releases)
- [Changelog](https://github.com/Inndy/vue-clipboard2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Inndy/vue-clipboard2/compare/v0.3.1...v0.3.2)

---
updated-dependencies:
- dependency-name: vue-clipboard2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-09-11 22:22:58 +00:00
Nextcloud bot 4be2e55af1 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-11 02:27:55 +00:00
Pytal 1bcd3c633f Merge pull request #28781 from nextcloud/backport/28767/stable22
[stable22] Dashboard - fix touch layout
2021-09-10 10:54:53 -07:00
Pytal 8eb921c60e Merge pull request #28785 from nextcloud/backport/28377/stable22
[stable22] Scan the shared external storage source on access
2021-09-10 10:22:28 -07:00
John Molakvoæ 317e04dd26 Merge pull request #28780 from nextcloud/backport/28422/stable22 2021-09-10 15:29:11 +02:00
blizzz c57a621deb Merge pull request #28777 from nextcloud/backport/28677/stable22
[stable22] make it possible to  override the default collation on mysql
2021-09-10 14:39:15 +02:00
Arthur Schiwon cc9758e12a also allow admins to set the primary email
- there will be times when it is necessary to reset this value for sure

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-10 13:22:27 +02:00
Arthur Schiwon 0571d41df5 use specific email getter where necessary
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-10 13:22:27 +02:00
Arthur Schiwon 88fc177e26 enable the user to set a primary (notification) email address (backend)
- specific getters and setters on IUser and implementation
- new notify_email field in provisioning API

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-10 13:22:26 +02:00
Arthur Schiwon 4146764686 Confirm mails only per POST
- this is to avoid automatic confirmation by certain softwares that open
  links

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-10 13:22:26 +02:00
Arthur Schiwon b699e8f487 add a job to clean up expired verification tokens
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-10 13:18:41 +02:00
Arthur Schiwon 5c4c162d0d fix parameter type hint in phpdoc
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-10 13:18:23 +02:00
Arthur Schiwon c9c671a466 implement verification for additional mails
- mails added by (sub)admins are automatically verified
- provisioning_api controller as verification endpoint
- IAccountProperty gets a locallyVerified property
- IPropertyCollection gets a method to fetch an IAccountProperty by value
  - an remove equivalent was already present
- AccountManager always initiates mail verification on update if necessary
- add core success template for arbitrary title and message

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-10 13:17:39 +02:00
Arthur Schiwon 7c48177830 move verification token logic out of lost password controller
- to make it reusable
- needed for local email verification

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-10 13:14:02 +02:00
szaimen c7159f9322 Merge pull request #28769 from nextcloud/backport/28754/stable22
[stable22] Fix trashbin files view sticky action bar
2021-09-10 11:09:13 +02:00
szaimen 3586cf8e04 Dashboard - fix touch layout
Signed-off-by: szaimen <szaimen@e.mail.de>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-09-10 08:24:49 +00:00
John Molakvoæ (skjnldsv) ccf9cc964c Return proper watcher if SharedStorage originates from ExternalMount
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-09-10 08:14:28 +00:00
Nextcloud bot 2389b035f3 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-10 02:35:58 +00:00
Arthur Schiwon f353dd98f4 make it possible to override the default collation
- allows admins to configure it for edge cases like accent sensitivity

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-09-09 17:41:48 +00:00
Simounet 5a8034c753 Fix trashbin files view sticky action bar
Signed-off-by: Simounet <contact@simounet.net>
2021-09-09 10:59:26 +00:00
Nextcloud bot 0d8a36aebf [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-09 02:28:09 +00:00
kesselb 001611ca97 Merge pull request #28748 from nextcloud/backport/28692/stable22
[stable22] Send attendence links to required and optinal attendees of an event without an RSVP
2021-09-08 19:09:10 +02:00
Nextcloud bot a05396b26a [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-08 02:27:47 +00:00
szaimen d86877b867 Merge pull request #28701 from nextcloud/fix/stable22-user-list-infinite-loading
[stable22] Fix user list infinite loading state in user settings
2021-09-07 23:00:32 +02:00
Lukas Reschke 3e3ce19bfc Merge pull request #28752 from nextcloud/stable22-bump-3rdparty-ref-1
[stable22] Bump 3rdparty ref
2021-09-07 20:24:41 +02:00
Lukas Reschke 9c468e115d [stable22] Bump 3rdparty ref
Includes https://github.com/nextcloud/3rdparty/pull/780

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-09-07 18:08:59 +02:00
Lukas Reschke 1258776f6e Merge pull request #28744 from nextcloud/stable22-bump-3rdparty-ref
[stable22] Bump 3rdparty ref
2021-09-07 17:55:31 +02:00
Anna Larch b5e6ed48ea Send Invitation to Attendees with ROLE=REQ-PARTICIPANT
Signed-off-by: Anna Larch <anna@nextcloud.com>
2021-09-07 14:06:06 +00:00
Lukas Reschke 0bd57da8f0 Merge pull request #28740 from nextcloud/backport/28725/stable22
[stable22] Remove 2FA exemption from PublicPage annotation
2021-09-07 12:46:51 +02:00
Lukas Reschke 7d13ce00e2 [stable22] Bump 3rdparty ref
This includes https://github.com/nextcloud/3rdparty/pull/781

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-09-07 11:44:49 +02:00
Lukas Reschke d720b987da Adjust tests
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-09-07 08:47:17 +00:00
Lukas Reschke 2e1f7a8161 Remove 2FA exemption from PublicPage annotation
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-09-07 08:47:17 +00:00
Lukas Reschke 4b00f5d6e9 Merge pull request #28734 from nextcloud/backport/28726/stable22
[stable22] Check if SVG path is valid
2021-09-07 09:39:38 +02:00
Lukas Reschke 1d5bcdfd84 Resolve absolute path in tests
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-09-07 06:34:04 +00:00
Lukas Reschke b87649beeb Fix codestyle
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-09-07 06:34:04 +00:00
Lukas Reschke 3061f8a529 Check if SVG path is valid
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-09-07 06:34:04 +00:00
Nextcloud bot 22a9470195 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-07 02:28:24 +00:00
John Molakvoæ 0fa0d2cce1 Merge pull request #28705 from nextcloud/backport/28700/stable22
[stable22] Pin Psalm version for security analysis
2021-09-06 12:48:09 +02:00
Nextcloud bot 23975c9ce4 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-06 02:27:53 +00:00
Nextcloud bot 37c1a05db0 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-05 02:27:30 +00:00
MichaIng 78b43482fc Merge pull request #28712 from nextcloud/dependabot/npm_and_yarn/stable22/css-vars-ponyfill-2.4.7
Bump css-vars-ponyfill from 2.4.6 to 2.4.7
2021-09-04 13:13:30 +02:00
dependabot[bot] 42f0a46b12 Bump css-vars-ponyfill from 2.4.6 to 2.4.7
Bumps [css-vars-ponyfill](https://github.com/jhildenbiddle/css-vars-ponyfill) from 2.4.6 to 2.4.7.
- [Release notes](https://github.com/jhildenbiddle/css-vars-ponyfill/releases)
- [Changelog](https://github.com/jhildenbiddle/css-vars-ponyfill/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jhildenbiddle/css-vars-ponyfill/compare/v2.4.6...v2.4.7)

---
updated-dependencies:
- dependency-name: css-vars-ponyfill
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-09-04 10:05:27 +00:00
Nextcloud bot 21e8370b43 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-04 02:26:22 +00:00
szaimen 6880498324 Merge pull request #28670 from nextcloud/backport/28660/stable22
[stable22] Fix position of search bar
2021-09-03 18:14:13 +02:00
Christoph Wurst eda2be4972 Pin Psalm version for security analysis
The action will otherwise pull dev-master and this can break easily as
we just experience.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-09-03 15:24:40 +00:00
Carl Schwan 3255b22630 Fix position of search bar
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-09-03 15:05:36 +00:00
Julien Veyssier d2c6fa02be avoid 'No users in here' in user list when there actually are users
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
2021-09-03 13:32:43 +02:00
John Molakvoæ d45a42595b Merge pull request #28697 from nextcloud/backport/28643/stable22 2021-09-03 09:05:19 +02:00
Nextcloud bot 9165f0c2ff [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-03 02:28:42 +00:00
sangramsinh.desai@t-systems.com b1190a03f7 Duplicate code removed
Signed-off-by: Sangramsinh Desai <sangramsinh.desai@t-systems.com>
Signed-off-by: sangramsinh.desai@t-systems.com <sangramsinh.desai@t-systems.com>
2021-09-02 21:41:15 +00:00
sangramsinh.desai@t-systems.com 119010d234 unwanted class removed
Signed-off-by: Sangramsinh Desai <sangramsinh.desai@t-systems.com>
Signed-off-by: sangramsinh.desai@t-systems.com <sangramsinh.desai@t-systems.com>
2021-09-02 21:41:15 +00:00
sangramsinh.desai@t-systems.com 03b14f0ffa space above the downloadFile element added
Signed-off-by: Sangramsinh Desai <sangramsinh.desai@t-systems.com>
Signed-off-by: sangramsinh.desai@t-systems.com <sangramsinh.desai@t-systems.com>
2021-09-02 21:41:15 +00:00
sangramsinh.desai@t-systems.com 469f18568b mimetype condition merged
Signed-off-by: Sangramsinh Desai <sangramsinh.desai@t-systems.com>
Signed-off-by: sangramsinh.desai@t-systems.com <sangramsinh.desai@t-systems.com>
2021-09-02 21:41:15 +00:00
Sangramsinh Desai 792950268a Guest view download button seperated for image
Signed-off-by: Sangramsinh Desai <sangramsinh.desai@t-systems.com>
Signed-off-by: sangramsinh.desai@t-systems.com <sangramsinh.desai@t-systems.com>
2021-09-02 21:41:15 +00:00
Sangramsinh Desai e1aa27c265 Guest view download button seperated for video
Signed-off-by: Sangramsinh Desai <sangramsinh.desai@t-systems.com>
Signed-off-by: sangramsinh.desai@t-systems.com <sangramsinh.desai@t-systems.com>
2021-09-02 21:41:15 +00:00
Nextcloud bot e66a96c3dd [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-09-02 02:27:24 +00:00
Louis a5c1bb06e4 Merge pull request #28685 from nextcloud/backport/28682/stable22
[stable22] NMC-464 Highlight the search term on no results
2021-09-01 16:05:37 +02:00
kavita.sonawane@t-systems.com 429d8082dd Search function strong tag for user input
Signed-off-by: Kavita Sonawane <kavita.sonawane@t-systems.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-09-01 11:38:10 +00:00
Maxime Besson d99a72b801 fix(proxy): use accessor
Signed-off-by: Maxime Besson <maxime.besson@worteks.com>
2021-09-01 08:23:18 +00:00
Maxime Besson 956bccc1c0 fix(proxy): reaching s3 storage behind some http proxy
Signed-off-by: Maxime Besson <maxime.besson@worteks.com>
2021-09-01 08:23:18 +00:00
Samuel 4c9e7e2d39 fix(proxy): reaching s3 storage behind some http proxy
Signed-off-by: Maxime Besson <maxime.besson@worteks.com>
2021-09-01 08:23:18 +00:00
MichaIng a022cf8f5d Merge pull request #28658 from nextcloud/backport/28332/stable22
[stable22] Only recommand for php-sodium on >= PHP 7.4
2021-08-31 11:57:38 +02:00
Carl Schwan 320a9478fe Only recommand for php-sodium on >= PHP 7.4
This is because php-sodium will solve the missing PASSWORD_ARGON2I
constant problem only on >= php 7.4, previously argon2 wasn't part of
the standard extension and was disabled on Centos/RHEL.

So installing php-sodium on php 7.2 for example wouldn't hide the
message. Tested on Fedora with php 7.4, Centos 7 with php 7.2,
Centos 8 with php 7.2 and openSUSE with php 7.4.

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-08-31 07:22:17 +00:00
Nextcloud bot 7b5c9edd06 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-31 02:26:58 +00:00
Nextcloud bot 10ff8e39a5 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-30 02:27:15 +00:00
Nextcloud bot 1edc24ef26 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-29 02:27:20 +00:00
Nextcloud bot a28b68bc9f [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-28 02:53:37 +00:00
Vincent Petry 389123ac3c Merge pull request #28603 from nextcloud/backport/28373/stable22
[stable22] Fix encrypted version to 0 when finding unencrypted file
2021-08-27 08:12:59 +02:00
Nextcloud bot 35d0d36bad [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-27 02:26:29 +00:00
Julius Härtl 5a022f797f Merge pull request #28594 from nextcloud/backport/28459/stable22
[stable22] Allow to open any app in a standalone window
2021-08-26 22:15:25 +02:00
blizzz 1eea64f2c3 Merge pull request #28606 from nextcloud/release/22.1.1-final
22.1.1
2021-08-26 15:21:22 +02:00
Louis cfe553e28a Merge pull request #28596 from nextcloud/backport/28262/stable22
[stable22] Fix setting up 2FA providers when 2FA is enforced and bc are generated
2021-08-26 14:20:09 +02:00
Vincent Petry eada9eaace Unregister enc stream wrapper for any exception
This prevents side effects in tests by properly cleaning up
even with expected exceptions.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-26 14:17:12 +02:00
Vincent Petry e019b0d329 Fix encrypted version to 0 when finding unencrypted file
Whenever the command is run and a "legacy cipher" seems to be detected
when the legacy option is disabled, it's highly likely that the file is
actually unencrypted but the database contains a encrypted version
higher than 0 for some reason.

The command now detects this case and automatically sets the encrypted
version to 0 so that the file can be read again.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-26 14:17:01 +02:00
Arthur Schiwon 2f880f5bcf 22.1.1
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-08-26 13:05:47 +02:00
Christoph Wurst 0629b58382 Fix setting up 2FA providers when 2FA is enforced and bc are generated
When a user has backup codes generated and got their 2FA enforced then
they should be able to set up TOTP and similar providers during the
login.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-08-25 12:39:11 +00:00
Lukas Reschke 34b5d979ff Merge pull request #28583 from nextcloud/backport/28566/stable22
[stable22] use getGetUnjailedRoot to determine if jailed search needs the path filter
2021-08-25 13:21:41 +02:00
szaimen caa9a9dbb5 improve webmanifest
Signed-off-by: szaimen <szaimen@e.mail.de>
2021-08-25 10:23:30 +00:00
Vincent Petry 2a928d46d4 Merge pull request #28573 from nextcloud/backport/28476/stable22
[stable22] use case insensitive like when limiting search to jail
2021-08-25 09:31:58 +02:00
Pytal c7b6e73fe4 Merge pull request #28576 from nextcloud/backport/28574/stable22
[stable22] Log exception message during failed ownership transfer share restore
2021-08-24 17:57:40 -07:00
blizzz 211e14859a Merge pull request #28590 from nextcloud/release/22.1.1-rc2
22.1.1-rc2
2021-08-24 23:34:29 +02:00
Arthur Schiwon 39c73581c1 22.1.1-rc2
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-08-24 23:15:05 +02:00
Robin Appelman 9e5440abc3 use getGetUnjailedRoot to determine if jailed search needs the path filter
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-08-24 12:52:27 +00:00
Christoph Wurst 7f897606e4 Log exception message during failed ownership transfer share restore
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-08-24 09:58:36 +00:00
Robin Appelman 5444db1ebf use case insensitive like when limiting search to jail
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-08-24 07:02:22 +00:00
Nextcloud bot 09921e94f4 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-24 02:26:21 +00:00
Julius Härtl f94ec1f80c Merge pull request #28568 from nextcloud/fix/stable22-failing-user-controller-tests
[stable22] fix UserController tests
2021-08-23 22:16:23 +02:00
Julien Veyssier 6d2430701c fix UserController tests failing because of max_quota app value not provided by mocks
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
2021-08-23 19:00:59 +02:00
Pytal d84eed7fb0 Merge pull request #28256 from nextcloud/enh/21045/stable22-quota-restrictions
[stable22] Add quota restrictions options
2021-08-23 09:29:20 -07:00
Louis 2ce0a190b4 Merge pull request #28553 from nextcloud/dependabot/npm_and_yarn/stable22/webdav-4.6.1
Bump webdav from 4.6.0 to 4.6.1
2021-08-23 10:02:49 +02:00
dependabot[bot] 687d0abfc5 Bump webdav from 4.6.0 to 4.6.1
Bumps [webdav](https://github.com/perry-mitchell/webdav-client) from 4.6.0 to 4.6.1.
- [Release notes](https://github.com/perry-mitchell/webdav-client/releases)
- [Changelog](https://github.com/perry-mitchell/webdav-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/perry-mitchell/webdav-client/compare/v4.6.0...v4.6.1)

---
updated-dependencies:
- dependency-name: webdav
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-23 09:17:14 +02:00
Nextcloud bot 025e057f9d [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-22 02:26:01 +00:00
MichaIng 664a95eb75 Merge pull request #28534 from nextcloud/backport/28185/stable22
[stable22]   Fix folder size contained in S3 buckets
2021-08-21 02:13:30 +02:00
Pytal 648ae408e9 Merge pull request #28545 from nextcloud/backport/28532/stable22
[stable22] Do not load versions tab view if the files app is not available
2021-08-20 13:56:49 -07:00
Julius Härtl 1d7e8ca0c3 Do not load versions tab view if the files app is not available
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-08-20 17:10:01 +00:00
kesselb cd9ee1653b Merge pull request #28536 from nextcloud/backport/28452/stable22
[stable22] Set alias for result of cast column function
2021-08-20 18:28:17 +02:00
Daniel Kesselberg bd30d97857 Set alias for result of cast column function
On OCI an expression like to_char(events) end up as $row['to_char(events)'] in the query result.

Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-08-20 13:40:43 +00:00
Louis Chemineau 951aa784b0 Fix folder size contained in S3 buckets
If 'filesystem_check_changes' was set to never, the cached size was alway set to -1 (Pending) on every access

Signed-off-by: Louis Chemineau <louis@chmn.me>
2021-08-20 13:35:22 +00:00
Mátyás Jani df269272cf Fix SQL type error
Fixing the following SQL error encountered with PostgreSQL:

    SQLSTATE[42883]: Undefined function: 7 ERROR:
    No operator matches the given name and argument types. You might need to add explicit type casts.

This prevented the Nextcloud apps/files page to show the files and directories. See #27881
2021-08-20 10:43:29 +00:00
Louis 8be50456e5 Merge pull request #28518 from nextcloud/backport/28512/sable22
[stable22] Output exception in cron
2021-08-20 09:53:07 +02:00
Nextcloud bot e0d632c342 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-20 02:26:29 +00:00
Christopher Ng e3be5d49d3 refs #21045 add app config to disable unlimited quota and to set max quota
avoid unlimited quota as default_quota fallback value if unlimited quota is not allowed
avoid getting/setting/displaying unlimited default quota if not allowed
implement tests for unlimited quota restrictions

Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
Signed-off-by: Christopher Ng <chrng8@gmail.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-08-20 00:52:42 +00:00
John Molakvoæ d73de679a8 Merge pull request #28522 from nextcloud/backport/28504/stable22 2021-08-19 23:27:33 +02:00
kesselb 3a6145becf Merge pull request #28231 from nextcloud/backport/28210/stable22
[stable22] Allow to disable group membership change notification
2021-08-19 22:03:21 +02:00
blizzz 5d4ad75e53 Merge pull request #28514 from nextcloud/release/22.1.1-rc1
22.1.1 RC1
2021-08-19 20:23:26 +02:00
John Molakvoæ (skjnldsv) 945b9288c6 Properly log errors in Movie previews generation
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-08-19 18:02:27 +00:00
Louis Chemineau 2dc669c2ae Output exception in cron
Signed-off-by: Louis Chemineau <louis@chmn.me>
2021-08-19 15:31:52 +02:00
John Molakvoæ (skjnldsv) 10c3974ff7 22.1.1 RC1
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-08-19 15:22:23 +02:00
Marco Ambrosini 1829b5d9c4 Allow to disable group change notification
Signed-off-by: Marco Ambrosini <marcoambrosini@pm.me>
2021-08-19 12:48:47 +00:00
John Molakvoæ f7d5bb5cb1 Merge pull request #28499 from nextcloud/backport/28485/stable22 2021-08-19 14:48:01 +02:00
John Molakvoæ cae51a0a25 Merge pull request #28454 from nextcloud/backport/28303/stable22 2021-08-19 14:47:36 +02:00
John Molakvoæ e2a4dc818c Merge pull request #28209 from nextcloud/backport/27751/stable22 2021-08-19 14:46:01 +02:00
John Molakvoæ 2663b10e49 Merge pull request #27993 from goyome/goyome-stable22-group-shares-limit 2021-08-19 14:44:56 +02:00
Nextcloud bot c485aad988 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-19 02:25:59 +00:00
Pytal f3f1c826be Merge pull request #28494 from nextcloud/backport/28481/stable22
[stable22] Hash cache key
2021-08-18 12:48:24 -07:00
Simon Spannagel cb49f19385 Fix #20913: Check image resource before attempting to preserve alpha
Signed-off-by: Simon Spannagel <simonspa@kth.se>
2021-08-18 15:42:52 +00:00
Julius Härtl e1d9a45c6d Merge pull request #28479 from nextcloud/backport/28461/stable22 2021-08-18 17:35:18 +02:00
Julius Härtl 67cbb0318d Merge pull request #28489 from nextcloud/backport/28413/stable22
[stable22] Emit an error log when the app token login name does not match
2021-08-18 16:35:34 +02:00
Christopher Ng 79b5421425 Hash cache key
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2021-08-18 13:21:22 +00:00
Christoph Wurst 461e9079b9 Emit an error log when the app token login name does not match
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-08-18 12:11:12 +00:00
Nextcloud bot 7879484950 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-18 02:26:09 +00:00
nextcloud-command d89b462351 Compile assets
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-08-17 13:41:44 +00:00
Louis 94e5dcd90e Merge pull request #28470 from nextcloud/backport/28464/stable22
[stable22] Only trap E_ERROR in session handling
2021-08-17 15:29:48 +02:00
Christopher Ng 26d1ac1f1f Autofocus only additional email inputs
Signed-off-by: Christopher Ng <chrng8@gmail.com>
(cherry picked from commit f7dee7152a)
2021-08-17 13:27:52 +00:00
Julius Härtl 34ba91e141 Only trap E_ERROR in session handling
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-08-17 10:12:56 +00:00
Nextcloud bot f605e1dabf [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-17 02:27:19 +00:00
Jonas Meurer 55fcffd11a Use IURLGenerator function to get value of \OC::$WEBROOT global
Signed-off-by: Jonas Meurer <jonas@freesources.org>
2021-08-16 13:12:00 +00:00
Jonas Meurer 57e20ed566 UnifiedSearchController: strip webroot from URL before finding a route
This should fix route matching in UnifiedSearchController on setups with
Nextcloud in a subfolder (webroot).

Fixes: #24144
Signed-off-by: Jonas Meurer <jonas@freesources.org>
2021-08-16 13:11:59 +00:00
Louis e9fc8e1dcb Merge pull request #28446 from nextcloud/backport/28211/stable22
[stable22] Improve auto expiration hint for trashbin and file versions
2021-08-16 13:19:27 +02:00
blizzz f97915101e Merge pull request #28441 from nextcloud/fix/composer-2-missing-files-stable22
[stable22] Add missing files for Composer v2
2021-08-16 12:23:30 +02:00
szaimen 73a52b2565 Improve auto expiration hint
Signed-off-by: szaimen <szaimen@e.mail.de>
Co-Authored-By: Pytal <24800714+Pytal@users.noreply.github.com>
2021-08-16 10:18:59 +00:00
Julius Härtl 7fb8b50cf9 Merge pull request #28416 from nextcloud/backport/28062/stable22
[stable22] Gracefully handle smb acls for users without a domain
2021-08-16 11:57:14 +02:00
Christoph Wurst 4566423e85 Add missing files for Composer v2
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-08-16 08:25:35 +02:00
Nextcloud bot fb5ee6087b [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-16 02:26:29 +00:00
Nextcloud bot 51bfaf9faa [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-15 02:26:14 +00:00
Nextcloud bot 1415a7ee92 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-14 02:26:51 +00:00
Christoph Wurst 54192ed459 Merge pull request #28384 from nextcloud/backport/28318/stable22
[stable22] Make "name" column nullable for workflows
2021-08-13 13:59:39 +02:00
Richard Steinmetz fdd5bc8560 Gracefully handle smb acls for users without a domain
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
2021-08-13 08:45:50 +00:00
Nextcloud bot a822e88d24 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-13 02:26:45 +00:00
Vincent Petry 0a184a3201 Make "name" column nullable in workflow operations
The "name" column is now unused and the code is always inserting an
empty string. While this works with most databases, Oracle complains
because an empty string is equivalent to null.

To fix this, the column definition is changed to allow null values now.

Also added some logging in case of database exceptions, because without
this nothing would be logged to detect the above problem.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-12 13:56:26 +02:00
Nextcloud bot 5ce9276230 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-12 02:27:30 +00:00
Julius Härtl 0b44a82ace Merge pull request #28359 from nextcloud/backport/28220/stable22
[stable22] fix Folder->getById() when a single storage is mounted multiple times
2021-08-11 08:59:19 +02:00
Nextcloud bot 02d3de6aef [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-11 02:26:52 +00:00
Vincent Petry f60ea8a260 Fix remote share deletion when deleting user
When deleting a user, we should only delete the direct remote user
shares or the remote group based subshares.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-10 13:37:37 +02:00
Vincent Petry a22ea02bea Fix route path for pending remote shares
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-10 13:37:31 +02:00
Vincent Petry 33b01187cd Replace ILogger with LoggerInterface in remote share manager
Signed-off-by: Vincent Petry <vincent@nextcloud.com>

Co-authored-by: Carl Schwan <carl@carlschwan.eu>
2021-08-10 13:27:59 +02:00
Vincent Petry 2e76d98e13 Fix remote group share decline+accept code path
When declining a remote group share through the dialog that appears when
notifications are off, the mount point is now correctly saved when
re-accepting.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-10 13:27:59 +02:00
Vincent Petry 5b111961ae Use mimetype instead of type when defaulting in remote shares
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-10 13:27:59 +02:00
Vincent Petry df0ca2f1db Fix external share manager with multiple user groups
Use query builder with proper matching for finding the group names.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-10 13:27:59 +02:00
Vincent Petry 701de23857 Fix remote group share API interactions
Accepting and declining can now be done repeatedly on both the parent
group share and sub-share with the same effects.

Added unit tests to cover these cases, and also when the same operation
is repeated.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-10 13:27:58 +02:00
Vincent Petry dde4c9d9df Disable default actions in pending file list
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-10 13:27:58 +02:00
Vincent Petry 9c0e1d8252 Pending remote group share fixes
Only remove reject share for remote group shares
Also fix share indicator to appear for remote group shares as well.
Fix pending remote share icon to be the one of a share.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-10 13:27:58 +02:00
Vincent Petry 37a65237ea Fix re-accepting or re-rejecting remote group shares
When accepting a group share, a sub-share entry is created which also
has a different id.

When accepting or rejecting the sub-share, simply update the "accepted"
flag instead of trying to re-insert the entry.

Adjust getShare to also properly validate group share membership
when called on a sub-share id.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-10 13:27:58 +02:00
Vincent Petry 4d0f0095ea Add logging to external shares manager
Instead of just returning false, also log the exception to make
debugging database issues easier.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-10 13:27:58 +02:00
Vincent Petry 13781b0425 Remove "Reject share" for pending remote shares
In the list of pending shares, the option for rejecting the share has
been removed.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-10 13:27:57 +02:00
Vincent Petry 08ab5d97da Fix received federated group shares
Fix pending shares endpoint to consider user-specific sub-entries
for group shares whenever a share was accepted or declined.

Added unit test for adding remote group shares.

Fixed "removeUserShares" to not send a remote request as we never send
remote requests for group shares.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-10 13:27:57 +02:00
Vincent Petry df835ed350 Extend pending shares list to include remote shares
And adjust the accept/decline actions to use the right endpoint for
remote shares.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-08-10 13:27:53 +02:00
Nextcloud bot 5bd4ed19d4 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-10 02:31:55 +00:00
Robin Appelman 8a6e3e6aca fix Folder->getById() when a single storage is mounted multiple times
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-08-09 17:29:40 +00:00
szaimen 876545502c Merge pull request #28353 from nextcloud/backport/28352/stable22
[stable22] Change the concurrent upload limit to less than 10
2021-08-09 18:02:09 +02:00
szaimen 6acf1a5493 Change the concurrent upload limit to less than 10
Signed-off-by: szaimen <szaimen@e.mail.de>
2021-08-09 08:33:53 +00:00
Nextcloud bot faef6db11a [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-09 02:26:58 +00:00
dependabot[bot] eceee99081 Merge pull request #28342 from nextcloud/dependabot/npm_and_yarn/stable22/vue-loader-15.9.8 2021-08-08 08:39:58 +00:00
dependabot[bot] 59e6c25660 Bump vue-loader from 15.9.7 to 15.9.8
Bumps [vue-loader](https://github.com/vuejs/vue-loader) from 15.9.7 to 15.9.8.
- [Release notes](https://github.com/vuejs/vue-loader/releases)
- [Changelog](https://github.com/vuejs/vue-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue-loader/compare/v15.9.7...v15.9.8)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-08 08:07:04 +00:00
Nextcloud bot 1f4886d891 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-08 02:21:52 +00:00
dependabot[bot] 6f57b3bc79 Merge pull request #28340 from nextcloud/dependabot/npm_and_yarn/stable22/dompurify-2.2.9 2021-08-08 00:26:12 +00:00
dependabot[bot] 164d5a296b Bump dompurify from 2.2.8 to 2.2.9
Bumps [dompurify](https://github.com/cure53/DOMPurify) from 2.2.8 to 2.2.9.
- [Release notes](https://github.com/cure53/DOMPurify/releases)
- [Commits](https://github.com/cure53/DOMPurify/compare/2.2.8...2.2.9)

---
updated-dependencies:
- dependency-name: dompurify
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-08-07 23:51:24 +00:00
dependabot[bot] a58eafb53f Merge pull request #28341 from nextcloud/dependabot/npm_and_yarn/stable22/babel/preset-env-7.14.9 2021-08-07 04:41:51 +00:00
dependabot[bot] 0af0874442 Bump @babel/preset-env from 7.14.8 to 7.14.9
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.14.8 to 7.14.9.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.14.9/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-07 02:53:06 +00:00
Nextcloud bot 9da252811c [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-07 02:27:36 +00:00
Nextcloud bot 9a95bb4f89 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-06 02:27:07 +00:00
John Molakvoæ f9dfb535ef Merge pull request #28271 from nextcloud/dependabot/npm_and_yarn/stable22/marked-2.0.7 2021-08-05 14:30:00 +02:00
dependabot[bot] ae3c49d375 Bump marked from 2.0.6 to 2.0.7
Bumps [marked](https://github.com/markedjs/marked) from 2.0.6 to 2.0.7.
- [Release notes](https://github.com/markedjs/marked/releases)
- [Changelog](https://github.com/markedjs/marked/blob/master/release.config.js)
- [Commits](https://github.com/markedjs/marked/compare/v2.0.6...v2.0.7)

---
updated-dependencies:
- dependency-name: marked
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-08-05 10:16:08 +00:00
Julius Härtl 127d8e65a4 Merge pull request #28288 from nextcloud/backport/28259/stable22
[stable22] Check that php was compiled with argon2 support or that the php-sodium extensions is installed
2021-08-05 10:25:10 +02:00
Nextcloud bot f030a16333 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-05 02:27:20 +00:00
John Molakvoæ 3290c53d6a Merge pull request #28252 from nextcloud/backport/28240/stable22
[stable22] Add h2 to personal info page, fixing accessibility issue
2021-08-04 09:53:51 +02:00
John Molakvoæ aec771763c Merge pull request #28274 from nextcloud/backport/28202/stable22 2021-08-04 08:12:15 +02:00
John Molakvoæ 525ff78aab Merge pull request #28304 from nextcloud/bugfix/22.1-upgrade 2021-08-04 07:40:58 +02:00
Nextcloud bot 2a4b5752de [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-04 02:26:47 +00:00
Christopher Ng 6da7f78ec2 Build
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2021-08-04 00:22:57 +00:00
Christopher Ng fc9066efb2 Remove chunkhash
Signed-off-by: Christopher Ng <chrng8@gmail.com>
(cherry picked from commit 63c3b9a4cc)
2021-08-04 00:10:18 +00:00
Julius Härtl e0ab00e5f1 Allow upgrade from 22.1
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-08-03 22:03:51 +02:00
John Molakvoæ a45d94af7b Merge pull request #28298 from nextcloud/version/22.1.0/Final
22.1.0
2021-08-03 16:36:07 +02:00
John Molakvoæ (skjnldsv) 192858a79b 22.1.0
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-08-03 08:44:58 +02:00
Nextcloud bot 3f3206149e [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-03 02:26:24 +00:00
Louis 972f678316 Merge pull request #28215 from nextcloud/backport/28174/stable22
[stable22] Set openfile params when following internal links
2021-08-02 18:37:58 +02:00
Louis 8c13c5a5be Fix typo
Co-authored-by: Pytal <24800714+Pytal@users.noreply.github.com>
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2021-08-02 18:05:13 +02:00
Louis Chemineau 7f044655ed Set openfile params when following internal links
Signed-off-by: Louis Chemineau <louis@chmn.me>
2021-08-02 18:05:13 +02:00
Carl Schwan 94466918e3 Check that php was compiled with argon2 support or that the php-sodium
extensions is installed

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-08-02 09:19:09 +00:00
Nextcloud bot e02dde323d [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-02 07:56:43 +00:00
Nextcloud bot 7c7dc50ceb [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-08-02 07:35:34 +00:00
dependabot[bot] 4932396052 Merge pull request #28269 from nextcloud/dependabot/composer/build/integration/stable22/guzzlehttp/guzzle-6.5.5 2021-08-01 18:32:48 +00:00
dependabot[bot] 3c494c4031 Update guzzlehttp/guzzle requirement in /build/integration
Updates the requirements on [guzzlehttp/guzzle](https://github.com/guzzle/guzzle) to permit the latest version.
- [Release notes](https://github.com/guzzle/guzzle/releases)
- [Changelog](https://github.com/guzzle/guzzle/blob/6.5.5/CHANGELOG.md)
- [Commits](https://github.com/guzzle/guzzle/compare/6.5.2...6.5.5)

---
updated-dependencies:
- dependency-name: guzzlehttp/guzzle
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-08-01 18:00:23 +00:00
dependabot[bot] b285f18595 Merge pull request #28270 from nextcloud/dependabot/npm_and_yarn/stable22/css-loader-5.2.7 2021-08-01 16:31:48 +00:00
dependabot[bot] 78a5ece3d9 Bump css-loader from 5.2.6 to 5.2.7
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 5.2.6 to 5.2.7.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v5.2.6...v5.2.7)

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

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-08-01 17:58:01 +02:00
dependabot[bot] f3e7212bea Merge pull request #28272 from nextcloud/dependabot/npm_and_yarn/stable22/css-vars-ponyfill-2.4.6 2021-08-01 08:45:05 +00:00
dependabot[bot] b81db1aa1c Bump css-vars-ponyfill from 2.4.5 to 2.4.6
Bumps [css-vars-ponyfill](https://github.com/jhildenbiddle/css-vars-ponyfill) from 2.4.5 to 2.4.6.
- [Release notes](https://github.com/jhildenbiddle/css-vars-ponyfill/releases)
- [Changelog](https://github.com/jhildenbiddle/css-vars-ponyfill/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jhildenbiddle/css-vars-ponyfill/compare/v2.4.5...v2.4.6)

---
updated-dependencies:
- dependency-name: css-vars-ponyfill
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-08-01 08:13:22 +00:00
dependabot[bot] d6641f639d Merge pull request #28273 from nextcloud/dependabot/npm_and_yarn/stable22/regenerator-runtime-0.13.9 2021-07-31 15:18:35 +00:00
dependabot[bot] c3670c9d86 Bump regenerator-runtime from 0.13.7 to 0.13.9
Bumps [regenerator-runtime](https://github.com/facebook/regenerator) from 0.13.7 to 0.13.9.
- [Release notes](https://github.com/facebook/regenerator/releases)
- [Commits](https://github.com/facebook/regenerator/compare/regenerator-runtime@0.13.7...regenerator-runtime@0.13.9)

---
updated-dependencies:
- dependency-name: regenerator-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-07-31 16:44:15 +02:00
marco 6282aca622 Merge pull request #28244 from nextcloud/backport/28238/stable22
[stable22] Fix missing label of Search function
2021-07-30 12:13:09 +02:00
Julien Veyssier f0ca1f7173 Merge pull request #28247 from nextcloud/backport/28242/stable22
[stable22] Add missing order attribute to tag multiselect action
2021-07-30 10:44:36 +02:00
Jan C. Borchardt afbcdb4fa0 Add h2 to personal info page, fixing accessibility issue
Signed-off-by: Jan C. Borchardt <hey@jancborchardt.net>
2021-07-30 06:13:37 +00:00
Jan C. Borchardt cba61e955c Fix missing label and accessibility of Search function
Signed-off-by: Jan C. Borchardt <hey@jancborchardt.net>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-07-30 06:04:38 +00:00
Julien Veyssier e3cf80aba4 add missing order attribute to tag multiselect action
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
2021-07-29 19:41:59 +00:00
Vincent Petry b7da9efbd3 Merge pull request #28228 from nextcloud/backport/28175/stable22
[stable22] dont apply jail search filter is on the root
2021-07-29 14:15:23 +02:00
Louis 9452553842 Merge pull request #28193 from nextcloud/backport/28173/stable22
[stable22] Fix variable override in file view
2021-07-29 11:55:42 +02:00
Louis Chemineau 79526af7a5 Fix variabable override in file view
Signed-off-by: Louis Chemineau <louis@chmn.me>
2021-07-29 08:08:52 +00:00
Robin Appelman 69e650d4b0 add test for searching within a "root jail"
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-07-29 07:30:22 +00:00
Robin Appelman 1534b24e38 dont apply jail search filter is on the root
the extra '/' breaks things and the filter wouldn't do anything anyway except making the databases job harder

Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-07-29 07:30:21 +00:00
John Molakvoæ 0feea35823 Merge pull request #28161 from nextcloud/version/22.1.0/RC1
22.1.0 RC1
2021-07-29 08:42:58 +02:00
dependabot[bot] 98b14028b5 Merge pull request #27659 from nextcloud/dependabot/npm_and_yarn/stable22/vue-router-3.5.2 2021-07-28 20:33:42 +00:00
dependabot[bot] dc0dbcf437 Bump vue-router from 3.5.1 to 3.5.2
Bumps [vue-router](https://github.com/vuejs/vue-router) from 3.5.1 to 3.5.2.
- [Release notes](https://github.com/vuejs/vue-router/releases)
- [Changelog](https://github.com/vuejs/vue-router/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/vuejs/vue-router/compare/v3.5.1...v3.5.2)

---
updated-dependencies:
- dependency-name: vue-router
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-07-28 19:43:55 +00:00
MichaIng 918c75c84b Merge pull request #28222 from nextcloud/backport/27920/stable22
[stable22] Fix Files breadcrumbs being hidden even if there is enough space
2021-07-28 21:08:52 +02:00
Julien Veyssier bd1217ff58 refs #21263 round numbers when checking if breadcrumbs should be hidden
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
2021-07-28 16:48:17 +00:00
John Molakvoæ (skjnldsv) 68905056dc 22.1.0 RC1
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-07-27 19:18:47 +00:00
John Molakvoæ 2585ae80cf Merge pull request #28181 from nextcloud/dependabot/npm_and_yarn/stable22/autosize-4.0.4 2021-07-27 21:11:42 +02:00
Christopher Ng 2e9d5ce5c6 Build
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2021-07-27 18:36:14 +00:00
Pytal 3be3a3ec87 Merge pull request #28197 from nextcloud/backport/27893/stable22
[stable22] Fix comments file action sidebar opening
2021-07-27 09:41:26 -07:00
Julien Veyssier 8550418872 fix jsunit tests for comments
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-07-27 15:22:16 +00:00
Julien Veyssier 6fe61cc8b3 fix comments file action sidebar opening
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-07-27 15:07:44 +00:00
John Molakvoæ 837c08892b Add files via upload 2021-07-27 12:00:30 +02:00
dependabot[bot] 46135e018a Bump autosize from 4.0.2 to 4.0.4
Bumps [autosize](https://github.com/jackmoore/autosize) from 4.0.2 to 4.0.4.
- [Release notes](https://github.com/jackmoore/autosize/releases)
- [Changelog](https://github.com/jackmoore/autosize/blob/master/changelog.md)
- [Commits](https://github.com/jackmoore/autosize/compare/4.0.2...4.0.4)

---
updated-dependencies:
- dependency-name: autosize
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-27 06:22:18 +00:00
John Molakvoæ ff10807f37 Merge pull request #27658 from nextcloud/dependabot/npm_and_yarn/stable22/vue-and-vue-template-compiler-2.6.14 2021-07-27 07:33:53 +02:00
Pytal b91ea46fce Merge pull request #28179 from nextcloud/dependabot/npm_and_yarn/stable22/sass-1.35.2
Bump sass from 1.35.1 to 1.35.2
2021-07-26 15:21:58 -07:00
Pytal 5681de67fc Merge pull request #28149 from nextcloud/dependabot/npm_and_yarn/stable22/css-vars-ponyfill-2.4.5
Bump css-vars-ponyfill from 2.4.3 to 2.4.5
2021-07-26 15:15:06 -07:00
npmbuildbot-nextcloud[bot] 83e84f3aa3 Compile assets
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-07-26 21:18:23 +00:00
npmbuildbot-nextcloud[bot] 6628c2c6ca Compile assets
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-07-26 22:58:52 +02:00
dependabot[bot] 3879860177 Bump css-vars-ponyfill from 2.4.3 to 2.4.5
Bumps [css-vars-ponyfill](https://github.com/jhildenbiddle/css-vars-ponyfill) from 2.4.3 to 2.4.5.
- [Release notes](https://github.com/jhildenbiddle/css-vars-ponyfill/releases)
- [Changelog](https://github.com/jhildenbiddle/css-vars-ponyfill/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jhildenbiddle/css-vars-ponyfill/compare/v2.4.3...v2.4.5)

---
updated-dependencies:
- dependency-name: css-vars-ponyfill
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-26 20:12:52 +00:00
dependabot[bot] 4eae0f7a0a Bump sass from 1.35.1 to 1.35.2
Bumps [sass](https://github.com/sass/dart-sass) from 1.35.1 to 1.35.2.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.35.1...1.35.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-26 20:11:48 +00:00
dependabot[bot] 269e436857 Bump vue and vue-template-compiler
Bumps [vue](https://github.com/vuejs/vue) and [vue-template-compiler](https://github.com/vuejs/vue). These dependencies needed to be updated together.

Updates `vue` from 2.6.12 to 2.6.14
- [Release notes](https://github.com/vuejs/vue/releases)
- [Commits](https://github.com/vuejs/vue/compare/v2.6.12...v2.6.14)

Updates `vue-template-compiler` from 2.6.12 to 2.6.14
- [Release notes](https://github.com/vuejs/vue/releases)
- [Commits](https://github.com/vuejs/vue/compare/v2.6.12...v2.6.14)

---
updated-dependencies:
- dependency-name: vue
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: vue-template-compiler
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-07-26 20:10:07 +00:00
John Molakvoæ dc8b42eec4 Merge pull request #28177 from nextcloud/dependabot/npm_and_yarn/stable22/babel/preset-env-7.14.8 2021-07-26 21:58:46 +02:00
szaimen 68015b6680 Merge pull request #28170 from nextcloud/backport/28166/stable22
[stable22] User management - Add icon to user groups
2021-07-26 21:39:05 +02:00
szaimen 0ce687fd33 User management - Add icon to user groups
Signed-off-by: szaimen <szaimen@e.mail.de>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-07-26 20:53:31 +02:00
John Molakvoæ 185812ed48 Merge pull request #28167 from nextcloud/backport/28075/stable22
[stable22] Admin Audit - Sharing: createShare - report the full path
2021-07-26 20:38:58 +02:00
dependabot[bot] 7e96f06c59 Bump @babel/preset-env from 7.14.7 to 7.14.8
Bumps [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) from 7.14.7 to 7.14.8.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.14.8/packages/babel-preset-env)

---
updated-dependencies:
- dependency-name: "@babel/preset-env"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-26 18:10:06 +00:00
Julien Veyssier 76e0481bd5 Merge pull request #28168 from nextcloud/backport/28164/stable22
[stable22] Fix sort function of files multiple selection actions
2021-07-26 16:56:08 +02:00
Julien Veyssier ed3f47b049 fix sort sort function of files multiple selection actions
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
2021-07-26 13:10:25 +00:00
szaimen 4721a82f92 Admin Audit - Sharing: createShare - report the full path
Signed-off-by: szaimen <szaimen@e.mail.de>
2021-07-26 11:29:41 +00:00
John Molakvoæ 11a252814e Merge pull request #28135 from nextcloud/backport/28133/stable22
[stable22] add an option to the multiple files selected actions to add and remov…
2021-07-26 07:59:09 +02:00
MichaIng c0f3fcd9a1 Merge pull request #28152 from nextcloud/backport/28084/stable22
[stable22] Make sure that the dav propfind plugins always use the proper user id
2021-07-25 17:37:32 +02:00
MichaIng 4c47cef75f Merge pull request #28126 from nextcloud/dependabot/npm_and_yarn/stable22/nextcloud/babel-config-1.0.0
Bump @nextcloud/babel-config from 1.0.0-beta.1 to 1.0.0
2021-07-25 17:29:25 +02:00
Julius Härtl eae6ab29ec Make sure that the dav propfind plugins always use the proper user id
For old android versions it could happen that the requests are performed
with a login name instead of the actual user id, so before this change
the property methods used the wrong value for fetching their information

Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-07-24 09:47:41 +00:00
Roland Scheidel 377942d5ef add an option to the multiple files selected actions to add and remove tags from multiple files at once
Signed-off-by: Roland Scheidel <kontakt@scheidel.at>
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-07-23 16:28:23 +00:00
John Molakvoæ add5919175 Merge pull request #28131 from nextcloud/backport/28129/stable22
[stable22] Allow empty Redis config
2021-07-23 18:26:07 +02:00
Vincent Petry d5b38ed5f8 Allow empty Redis config
When Redis config is empty, use defaults.
However when a Redis cluster config is specified, the "seeds" attribute
is mandatory.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-07-23 12:30:41 +00:00
dependabot[bot] 59f56244c6 Bump @nextcloud/babel-config from 1.0.0-beta.1 to 1.0.0
Bumps [@nextcloud/babel-config](https://github.com/nextcloud/babel-config) from 1.0.0-beta.1 to 1.0.0.
- [Release notes](https://github.com/nextcloud/babel-config/releases)
- [Commits](https://github.com/nextcloud/babel-config/commits)

---
updated-dependencies:
- dependency-name: "@nextcloud/babel-config"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-23 06:33:49 +00:00
John Molakvoæ f19f9e1927 Merge pull request #28121 from nextcloud/dependabot/npm_and_yarn/stable22/babel/core-7.14.8 2021-07-23 08:31:59 +02:00
Christopher Ng a6d8b3bbc3 Build
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2021-07-22 22:40:24 +00:00
Julius Härtl 1343e0ce9a Merge pull request #28123 from nextcloud/backport/28122/stable22
[stable22] Let memory limit set in tests fit the used amount
2021-07-22 22:50:03 +02:00
Julius Härtl 16bc5a39da Let memory limit set in tests fit the used amount
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-07-22 16:41:44 +00:00
dependabot[bot] 24714324b8 Bump @babel/core from 7.14.3 to 7.14.8
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) from 7.14.3 to 7.14.8.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.14.8/packages/babel-core)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-07-22 15:02:47 +00:00
Julius Härtl a715b8da19 Merge pull request #28112 from nextcloud/backport/27888/stable22 2021-07-22 17:02:26 +02:00
Louis 622bb56f44 Merge pull request #28109 from nextcloud/backport/28101/stable22
[stable22] Fix dark theme in file exists dialog
2021-07-22 13:36:06 +02:00
szaimen bce33f231d Merge pull request #28016 from nextcloud/backport/27997/stable22
[stable22] Update CRL due to revoked twofactor_nextcloud_notification.crt
2021-07-22 13:03:47 +02:00
John Molakvoæ (skjnldsv) 8b17f317ee Properly support RedisCluster
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-07-22 10:52:13 +00:00
John Molakvoæ (skjnldsv) cc34255303 Move integration-php7.3 to latest
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-07-22 10:52:12 +00:00
John Molakvoæ (skjnldsv) 9d2cf57776 Support redis user password auth and tls encryption
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-07-22 10:52:12 +00:00
szaimen cf62f62e80 Fix dark theme in file exists dialog
Signed-off-by: szaimen <szaimen@e.mail.de>
2021-07-22 10:39:51 +00:00
John Molakvoæ 67675c80d6 Merge pull request #28089 from nextcloud/backport/28082/stable22
[stable22] Sanitize more functions from the encryption app
2021-07-22 08:44:25 +02:00
Lukas Reschke b1c3dacd51 Sanitize more functions from the encryption app
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-07-21 21:58:48 +02:00
Lukas Reschke 9305eaac55 Merge pull request #28085 from nextcloud/backport/28078/stable22
[stable22] Improve provider check
2021-07-21 21:45:43 +02:00
szaimen 79c10ff847 Merge pull request #28093 from nextcloud/backport/27674/stable22
[stable22] hide download button for public preview of audio files
2021-07-21 19:21:04 +02:00
Florian Storz c44e168c77 Remove trailing whitespace from comment
Signed-off-by: Florian Storz <florian.storz@devlix.de>
2021-07-21 15:57:33 +00:00
Florian Storz 9bb06118ab Add comment linking to PR
PR contains discussion about the implementation with pros and cons

Signed-off-by: Florian Storz <florian.storz@devlix.de>
2021-07-21 15:57:33 +00:00
Florian Storz 1cdf2a268b hide download button for public preview of audio files
When the option to hide downloads was selected at public link creation, the download button can be hidden by the audio html attribute controlsList="nodownload"

Signed-off-by: Florian Storz <florian.storz@devlix.de>
2021-07-21 15:57:33 +00:00
Lukas Reschke 9877075c47 Improve provider check
Check if there is a provider missing.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-07-21 13:25:35 +00:00
Lukas Reschke 81e9495c51 Merge pull request #28079 from nextcloud/backport/28077/stable22
[stable22] Disable HEIC image preview provider for performance concerns
2021-07-21 12:30:11 +02:00
tobiasKaminsky 718cb09dc9 Disable HEIC image preview provider for performance concerns
Signed-off-by: tobiasKaminsky <tobias@kaminsky.me>
2021-07-21 08:31:31 +00:00
John Molakvoæ 359a33f91a Merge pull request #28071 from nextcloud/backport/28057/stable22 2021-07-21 10:08:07 +02:00
Pytal df9abad225 Merge pull request #28073 from nextcloud/backport/28015/stable22
[stable22] fix overlapping of elements in certain views
2021-07-20 21:24:26 -07:00
szaimen 89dd07f051 fix overlapping of elements in certain views
Signed-off-by: szaimen <szaimen@e.mail.de>
2021-07-20 21:08:23 +00:00
kesselb 3bd8bff7db Merge pull request #28053 from nextcloud/backport/28051/stable22
[stable22] Mask password for Redis and RedisCluster on connection failure
2021-07-20 22:57:08 +02:00
Christopher Ng 82017ff311 Build
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2021-07-20 19:49:03 +00:00
Christopher Ng 44fd0d15a7 Improve UX
Signed-off-by: Christopher Ng <chrng8@gmail.com>
(cherry picked from commit 07c6ed3df2)
2021-07-20 19:47:08 +00:00
Carl Schwan 9c13098d65 Merge pull request #28061 from nextcloud/backport/27950/stable22
[stable22] Fix missing theming for login button
2021-07-20 17:12:19 +02:00
Julius Härtl da157ea242 Merge pull request #28011 from nextcloud/backport/27995/stable22
[stable22] some multiselect design fixes
2021-07-20 13:14:58 +02:00
Carl Schwan 4de6ab39ea Fix missing theming for login button
Close #27495

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-07-20 10:32:43 +00:00
Daniel Kesselberg bdcf22eee7 Mask password for Redis and RedisCluster on connection failure
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-07-19 22:00:30 +00:00
szaimen e915d98fc6 Merge pull request #28047 from nextcloud/backport/28046/stable22
[stable22] Add titleTooltip to sidebar
2021-07-19 14:40:20 +02:00
szaimen 5a9a02ad1d Add titleTooltip to sidebar
Signed-off-by: szaimen <szaimen@e.mail.de>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-07-19 10:40:52 +00:00
Louis 424027b67f Merge pull request #28043 from nextcloud/backport/27994/stable22
[stable22] Increase footer height for longer menus
2021-07-19 11:37:59 +02:00
szaimen 45617f7b04 Increase footer padding for longer menus
Signed-off-by: szaimen <szaimen@e.mail.de>
Co-Authored-By: Julius Härtl <jus@bitgrid.net>
2021-07-19 08:46:51 +00:00
Julius Härtl 05d49b9a67 Merge pull request #28014 from nextcloud/backport/28004/stable22 2021-07-19 08:26:54 +02:00
Nextcloud bot 5aaad8db1b [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-07-19 02:25:29 +00:00
Nextcloud bot 0bbc64960e [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-07-18 02:25:41 +00:00
Nextcloud bot 9970740f6b [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-07-17 02:44:29 +00:00
Arthur Schiwon f8448323d7 Update CRL due to revoked twofactor_nextcloud_notification.crt
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-07-16 21:41:40 +00:00
Christopher Ng c8c2870191 Build
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2021-07-16 15:53:48 +00:00
Christopher Ng 0ff49820c8 Refine unsupported federation scope checks
Signed-off-by: Christopher Ng <chrng8@gmail.com>
(cherry picked from commit 74aa115125)
2021-07-16 15:50:55 +00:00
szaimen 33f231c5ae some multiselect design fixes
Signed-off-by: szaimen <szaimen@e.mail.de>
2021-07-16 16:32:42 +02:00
szaimen be1444576d Merge pull request #28008 from nextcloud/backport/27980/stable22
[stable22] Improve notcreatable permissions hint
2021-07-16 12:31:44 +02:00
John Molakvoæ 0263eea033 Merge pull request #28001 from nextcloud/backport/27379/stable22 2021-07-16 11:45:08 +02:00
szaimen ac3ffa7d7a Improve notcreatable permissions hint
Signed-off-by: szaimen <szaimen@e.mail.de>
2021-07-16 09:02:45 +00:00
John Molakvoæ d878c68495 Merge pull request #27974 from nextcloud/backport/27973/stable22
[stable22] Fix regression in file sidebar
2021-07-16 09:14:09 +02:00
Nextcloud bot a2c02455d0 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-07-16 02:26:40 +00:00
Christopher Ng 66f07cf203 Build
Signed-off-by: Christopher Ng <chrng8@gmail.com>
2021-07-16 00:13:21 +00:00
Christopher Ng efefffa4cd Refine UX for primary email deletion
Signed-off-by: Christopher Ng <chrng8@gmail.com>
(cherry picked from commit d8ede941a3aeff8198b695238c8751f92fcd4afd)
2021-07-16 00:11:18 +00:00
Christopher Ng f0c78d45a9 Make emails Vuetiful
Signed-off-by: Christopher Ng <chrng8@gmail.com>
(cherry picked from commit e01d63d626cd26cf43eb58d9d55a33df12e3e682)
2021-07-16 00:11:13 +00:00
Christopher Ng 84d1398298 Create personal info service
Signed-off-by: Christopher Ng <chrng8@gmail.com>
(cherry picked from commit 5d5ed6ec8eb0003991e8e65dc0280a36867d6f6b)
2021-07-16 00:11:08 +00:00
Christopher Ng a130d113c8 Provide initial state
Signed-off-by: Christopher Ng <chrng8@gmail.com>
(cherry picked from commit 94e469f6caa58ea6ec24d2f8350116dd35002abb)
2021-07-16 00:10:27 +00:00
Julius Härtl 8d31b1a57d Merge pull request #27966 from nextcloud/enh/stable22-breadcrumb-detail-view-in-menu
[stable22] Show registered breadcrumb detail views in breadcrumb menu
2021-07-15 16:27:04 +02:00
Guillaume COLSON 69f2b691cd No limit in the number of group shares
Signed-off-by: Guillaume COLSON <guillaume.colson@univ-lorraine.fr>
2021-07-15 15:24:05 +02:00
Nextcloud bot 6bd2efe549 [tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-07-15 10:37:38 +00:00
Louis d23b723d38 Merge pull request #27979 from nextcloud/backport/27884/stable22
[stable22] Allow to get a local cloud id without going through the contacts manager
2021-07-15 11:09:21 +02:00
Julius Härtl 41ca0af614 Directly return cloud id from user
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-07-14 21:53:12 +00:00
Julius Härtl 4798a29442 Merge pull request #27944 from nextcloud/backport/27912/stable22
[stable22] Do not escape display name in dashboard welcome text
2021-07-14 21:43:40 +02:00
Carl Schwan 295d599b8f Fix regression in file sidebar
See https://github.com/nextcloud/server/pull/27936

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-07-14 18:29:59 +00:00
Joas Schilling c04797dca0 Merge pull request #27964 from nextcloud/backport/27761/stable22
[stable22] Also hide group from direct matches
2021-07-14 19:52:19 +02:00
Julien Veyssier 1fbe3cd596 show breadcrumb detail view in breadcrumb menu
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
2021-07-14 14:56:52 +02:00
MichaIng a5fa6c9250 Merge pull request #27957 from nextcloud/backport/27936/stable22
[stable22] Fix svg icons disapearing in app navigation when text overflows
2021-07-14 14:33:31 +02:00
blizzz f16a806819 Merge pull request #27938 from yan12125/backport/27631/stable22
[stable22] Correctly skip suppressed errors in PHP 8.0
2021-07-14 13:26:28 +02:00
Joas Schilling af2a862857 Also hide group from direct matches
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-07-14 11:09:53 +00:00
Carl Schwan 6505312817 Fix svg icons disapearing in app navigation when text overflows
The issue is caused by the icon being positionned with negative margins
and the `overflow: hidden` rule when hide the icon when the text
overflows. Remove positioning with negative margins. This was only
happening in Firefox.

This fix #23849

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-07-14 12:56:46 +02:00
Chih-Hsuan Yen 120fc8dd6a Correctly skip suppressed errors in PHP 8.0
Applies the suggested transformation mentioned in
https://www.php.net/manual/en/migration80.incompatible.php,

> The @ operator will no longer silence fatal errors (E_ERROR,
> E_CORE_ERROR, E_COMPILE_ERROR, E_USER_ERROR, E_RECOVERABLE_ERROR,
> E_PARSE). Error handlers that expect error_reporting to be 0 when
> @ is used, should be adjusted to use a mask check instead

The new code still works on PHP 7, as error_reporting() already
returns 0 when diagnostics are suppressed.

This fixes https://github.com/nextcloud/server/issues/25807 in PHP 8.0.
For PHP 7.x, https://github.com/nextcloud/server/pull/22243 suppresses
the E_NOTICE message from the second session_start() call with the error
suppression operator @, and thus those E_NOTICE messages are still
logged in PHP 8.0.

See also https://github.com/nextcloud/server/issues/25806

Signed-off-by: Chih-Hsuan Yen <yan12125@gmail.com>
2021-07-14 17:07:58 +08:00
Julius Härtl ca96a03c6b Merge pull request #27959 from nextcloud/revert-27654-dependabot/composer/build/integration/stable22/guzzlehttp/guzzle-7.3.0
Revert "Update guzzlehttp/guzzle requirement from 6.5.2 to 7.3.0 in /build/integration"
2021-07-14 10:47:36 +02:00
Julius Härtl 54e249bb0f Revert "Update guzzlehttp/guzzle requirement from 6.5.2 to 7.3.0 in /build/integration" 2021-07-14 08:52:47 +02:00
szaimen 49d7a7b896 Merge pull request #27942 from nextcloud/backport/27867/stable22
[stable22] fix newfileMenu on public page
2021-07-13 14:54:18 +02:00
Julien Veyssier ecab457ae0 refs #26113 do not escape display name in dashboard welcome text
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-07-13 12:07:54 +00:00
szaimen 65e9c67bbd fix newfileMenu on public page
Signed-off-by: szaimen <szaimen@e.mail.de>
2021-07-13 11:56:33 +00:00
Christoph Wurst f9e2799855 Merge pull request #27654 from nextcloud/dependabot/composer/build/integration/stable22/guzzlehttp/guzzle-7.3.0
Update guzzlehttp/guzzle requirement from 6.5.2 to 7.3.0 in /build/integration
2021-07-13 10:44:36 +02:00
Julius Härtl b5d6189ca2 Merge pull request #27898 from nextcloud/backport/27887/stable22
[stable22] make user status usable on mobile
2021-07-13 08:55:57 +02:00
Julius Härtl fb018b7435 Merge pull request #27889 from nextcloud/backport/27854/stable22 2021-07-13 08:51:21 +02:00
kesselb 25ad68e6f5 Merge pull request #27925 from nextcloud/backport/27922/stable22
[stable22] Check if dns_get_record returns non-false
2021-07-12 17:55:24 +02:00
Lukas Reschke 5dcc18af46 Check for !== false instead
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-07-12 14:46:43 +00:00
Lukas Reschke 525dfd2f4d Check if dns_get_record returns non-false
`dns_get_record` can return false which results in exceptions such as
the ones shown in https://github.com/nextcloud/server/issues/27870.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2021-07-12 14:46:42 +00:00
Lukas Reschke 32f0d85957 Merge pull request #27861 from nextcloud/backport/27835/stable22
[stable22] Cache images on browser
2021-07-12 11:45:02 +02:00
MichaIng cd0343e6b9 Merge pull request #27825 from nextcloud/backport/27801/stable22
[stable22] Ignore subdomain for soa queries
2021-07-09 15:44:14 +02:00
szaimen b01c3351f8 make user status usable on mobile
Signed-off-by: szaimen <szaimen@e.mail.de>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-07-09 11:48:24 +00:00
Joas Schilling 2b122fbcf0 Fix accessibility theme for guests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-07-09 09:03:09 +00:00
szaimen 0e90199f1d fix filepicker bug in dark mode
Signed-off-by: szaimen <szaimen@e.mail.de>
2021-07-09 09:03:08 +00:00
Pytal 1826107f56 Merge pull request #27878 from nextcloud/backport/22/bug/27435/add-group-button
[stable22] Fix add group button
2021-07-08 13:54:29 -07:00
Daniel Kesselberg 9f65367112 Fix add group button
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-07-08 17:46:37 +02:00
John Molakvoæ 3dd1b95f90 Merge pull request #27856 from nextcloud/backport/27844/stable22
[stable22] Make search popup usable on mobile, too
2021-07-08 16:27:03 +02:00
acsfer 8c6ca5d835 Cache images on browser
Fix #26851
2021-07-07 17:12:04 +00:00
szaimen c5d518c4c5 Make search popup usable on mobile, too
Signed-off-by: szaimen <szaimen@e.mail.de>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-07-07 15:18:31 +00:00
kesselb 2054614358 Merge pull request #27848 from sanpii/fix-dns-pinning-max-recursion
Fixes recursion count incrementation
2021-07-07 13:54:34 +02:00
Sanpi 2ed3574ea0 Fixes recursion count incrementation
Signed-off-by: Sanpi <sanpi@homecomputing.fr>
2021-07-07 12:59:22 +02:00
Joas Schilling a0d6002297 Merge pull request #27826 from nextcloud/backport/27818/stable22
[stable22] Fix in locking cache check
2021-07-07 12:24:31 +02:00
MichaIng e5fe200076 Fix in locking cache check
The intention obviously was to check whether $lockingCacheClass is defined, and existing class, and available. It was however checked whether the $distributedCacheClass is an existing class, which would have caused an exception already in the previous distributed cache check.

Signed-off-by: MichaIng <micha@dietpi.com>
2021-07-06 17:02:52 +00:00
Daniel Kesselberg a626792e15 Ignore subdomain for soa queries
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-07-06 16:58:15 +00:00
John Molakvoæ c67e1420c8 Merge pull request #27813 from nextcloud/version/22/final
22.0.0
2021-07-05 22:20:57 +02:00
Lukas Reschke 3f212b8857 Merge pull request #27814 from nextcloud/backport/27758/stable22
[stable22] Fix DnsPinMiddleware resolve pinning bug
2021-07-05 18:38:55 +02:00
Aaron Ball f8db7ce8f5 Fix DnsPinMiddleware resolve pinning bug
Libcurl expects the value of the CURLOPT_RESOLVE configurations to be an
array of strings, those strings containing a comma delimited list of
resolved IPs for each host:port combination.

The original code here does create that array with the host:port:ip
combination, but multiple ips for a single host:port result in
additional array entries, rather than adding them to the end of the
string with a comma. Per the libcurl docs, the `CURLOPT_RESOLVE` array
entries should match the syntax `host:port:address[,address]`.

This creates a function-scoped associative array which uses `host:port`
as the key (which are supposed to be unique and this ensures that), and
the value is an array containing IP strings (ipv4 or ipv6). Once the
associative array is populated, it is then set to the CURLOPT_RESOLVE
array, imploding the ip arrays using a comma delimiter so the array
syntax matches the expected by libcurl.

Note that this reorders the "foreach ip" and "foreach port" loops.
Rather than looping over ips then ports, we now loop over ports then
ips, since ports are part of the unique host:port map, and multiple ips
can exist therein.

Signed-off-by: Aaron Ball <nullspoon@oper.io>
2021-07-05 15:40:06 +00:00
John Molakvoæ c73070c19d Merge pull request #27752 from nextcloud/backport/27586/stable22
[stable22] Reset checksum when writing files to object store
2021-07-05 17:27:07 +02:00
Lukas Reschke fb8e681161 Merge pull request #27812 from nextcloud/backport/27810/stable22
[stable22] Add a text string to l10n
2021-07-05 17:21:20 +02:00
Arthur Schiwon 0ab8f2f15a 22.0.0
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-07-05 17:09:36 +02:00
Valdnet f6f85478a0 Add a text string to l10n 2021-07-05 14:38:12 +00:00
Valdnet 5e93d571e0 Add a text string to l10n 2021-07-05 14:38:12 +00:00
Lukas Reschke afb7126022 Merge pull request #27802 from nextcloud/backport/27198/stable22
[stable22] Run s3 tests again
2021-07-05 15:05:04 +02:00
Julius Härtl 6a4a5d888e Use minio for s3 tests
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-07-05 09:56:23 +00:00
Julius Härtl cb57285870 Run s3 tests again
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-07-05 09:56:23 +00:00
John Molakvoæ 268e6af00e Merge pull request #27775 from nextcloud/backport/27750/stable22 2021-07-05 08:45:24 +02:00
Robin Appelman cb0e76105e dont include folder being search in in the results
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-07-02 15:52:17 +00:00
blizzz 6c24e13d4b Merge pull request #27749 from nextcloud/backport/27737/stable22
[stable22] make contactsmenu icon bigger
2021-07-01 18:44:29 +02:00
Julius Härtl 226e0c4107 Reset checksum when writing files to object store
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-07-01 15:33:47 +00:00
szaimen b5b58faec0 make contactsmenu icon bigger
Signed-off-by: szaimen <szaimen@e.mail.de>
2021-07-01 13:26:26 +00:00
John Molakvoæ 863686c283 Merge pull request #27706 from nextcloud/version/22.0.0/rc2
22.0.0 RC2
2021-07-01 11:30:42 +02:00
John Molakvoæ e2c96aebd1 Merge pull request #27743 from nextcloud/backport/27739/stable22 2021-07-01 11:30:25 +02:00
szaimen b25e8e7030 design fixes to app-settings button
Signed-off-by: szaimen <szaimen@e.mail.de>
2021-07-01 08:46:48 +00:00
John Molakvoæ 858da2ed1d Merge pull request #27719 from nextcloud/backport/27474/stable22 2021-07-01 08:31:25 +02:00
blizzz 9882ae8986 Merge pull request #27736 from nextcloud/backport/27732/stable22
[stable22] Fix LDAPProviderFactory not found
2021-06-30 20:41:23 +02:00
Arthur Schiwon 87d8e8f6d3 unset ldap provider when disabling user_ldap
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 16:52:09 +00:00
Arthur Schiwon 1220e48301 ensure that factoryClass exisits before instantiation
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 16:52:09 +00:00
Vincent Petry 28a21048ac Merge pull request #27726 from nextcloud/backport/27638/stable22
[stable22] Downstream encryption:fix-encrypted-version for repairing "bad signature" errors
2021-06-30 16:56:26 +02:00
Vincent Petry 3ca664dda1 Prevent running FixEncryptedVersion without master key
Return an error when running occ encryption:fix-encrypted-version
when master key encryption is not enabled.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-06-30 12:21:06 +00:00
Vincent Petry 48be209e92 Fix FixEncryptedVersionTest test
Fixed setup to use EncryptionTrait like other existing tests.
Fix expectations to not rely on side effects from previous test cases.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-06-30 12:21:06 +00:00
Vincent Petry bf279980ac Fix warnings in FixEncryptedVersion command
Fixed code warnings

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-06-30 12:21:06 +00:00
Vincent Petry 5bde3d1836 Detect disabled signature check when reparing
When running occ encryption:fix-encrypted-version, detect whether the
setting 'encryption_skip_signature_check' is set and abort if it is,
because the repair cannot detect version mismatch errors with it
enabled.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-06-30 12:21:06 +00:00
Vincent Petry 6b83de79c6 Downstream FixEncryptedVersionTest
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-06-30 12:21:06 +00:00
Vincent Petry 727d2300b6 Downstream encryption:fix-encrypted-version
For fixing "Bad signature" errors.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-06-30 12:21:06 +00:00
Arthur Schiwon 1f6f863d86 fix incredible off-by-one-typo-error
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 11:04:46 +02:00
Arthur Schiwon 1754c3d979 cleanup
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 05:15:50 +00:00
Arthur Schiwon 29b36c56f3 fix small issues in UsersController handling
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 05:15:50 +00:00
Arthur Schiwon cc1d24a008 adjust access permissions of new controller method
- fixes wrong veriable usage also

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 05:15:50 +00:00
Arthur Schiwon 3550b12e3e fix regex
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 05:15:50 +00:00
Arthur Schiwon 4565f5d3b4 fix provisioning test check
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 05:15:50 +00:00
Arthur Schiwon 9d6c11f7da adjust internal data handling logic to fix store and load
- format as stored previously in oc_accounts table is kept

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 05:15:50 +00:00
Arthur Schiwon 87efcd06ca create a property on editUser when it was not set before
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 05:15:49 +00:00
Arthur Schiwon b30ce04e15 adjust email verification checker
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 05:15:49 +00:00
Arthur Schiwon bcedd4031d fix code style
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 05:15:49 +00:00
Arthur Schiwon 63d2aad5d3 adjust verification state updater method
- also fixes scope of internal methods

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 05:15:49 +00:00
Arthur Schiwon 19d2367340 make AccountManager actually write multi value properties
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 05:15:49 +00:00
Arthur Schiwon 51cae9ba98 accounts event handler to use eventdispatcher, DI and Accounts API
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 05:15:49 +00:00
Arthur Schiwon 148a62939f prov api to be able to edit multivalue properties
- adding as usual
- deleting and scope setting via additional endpoint

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 05:15:49 +00:00
Arthur Schiwon eb5e445af4 prov api reports multiple mail as editable field
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 05:15:49 +00:00
Arthur Schiwon 4398cf85c1 prov api reports additional emails on getUser
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-30 05:15:48 +00:00
Julius Härtl e74f5aeec2 Merge pull request #27716 from nextcloud/backport/27715/stable22
[stable22] Revert "First attempt to check against core routes before loading all app routes"
2021-06-29 21:47:03 +02:00
Vincent Petry 98005fc331 Revert "First attempt to check against core routes before loading all app routes"
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-06-29 18:52:21 +00:00
Julius Härtl 7e506bab4c Merge pull request #27682 from nextcloud/backport/27668/stable22
[stable22] Harden bootstrap context registrations when apps are missing
2021-06-29 18:05:29 +02:00
Julius Härtl a614537edb Merge pull request #27678 from nextcloud/backport/27675/stable22
[stable22] Validate the theming color also on CLI
2021-06-29 15:16:54 +02:00
Arthur Schiwon f6e544119a 22.0.0 RC2
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-29 12:55:30 +02:00
John Molakvoæ 8ee15f9984 Merge pull request #27702 from nextcloud/backport/27698/stable22
[stable22] LDAP: determine shares of offline users only when needed
2021-06-29 08:27:58 +02:00
Arthur Schiwon b299369c15 LDAP: determine shares of offline users only when needed
- determine shares may via Sharing code result in user exists checks
- this may result in an infinite loop when user exists was called before
- the info is really only required at one occ command

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-06-28 17:15:51 +00:00
Joas Schilling 61a3132c76 Merge pull request #27649 from nextcloud/techdebt/noid/stable22-version-fixing
Fix branch selection in stable22
2021-06-28 14:42:25 +02:00
Christoph Wurst 3b5b2af215 Harden bootstrap context registrations when apps are missing
It's not expected that an app would be unavailable when the app
container is created but when services are registered, but Sentry tells
me on Nextcloud 21 there is an edge case where this can happen.
Therefore this patch hardens the code a bit to log a meaningful error
message and skipping the next code instead of logging a php notice for
the undefined index and an exception for calling a method on null.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-06-25 16:46:57 +00:00
Joas Schilling dfc096737d Validate the theming color also on CLI
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-06-25 16:18:22 +00:00
Christoph Wurst 57a4ef9da8 Merge pull request #27669 from nextcloud/backport/27663/stable22
[stable22] Unshift crash reports when they are loaded, to break the recusion
2021-06-25 13:57:48 +02:00
Christoph Wurst 3d7e3185fc Unshift crash reports when they are loaded, to break the recusion
If, for whatever reason, during the loading of a crash reporter a new
log entry is generated, then the lazy loading mechanism will be invoked
*again* while it's already executed. This doesn't result in an endless
recursion, but means that the crash reporters will be built and
registered many times. This then means any further log entry will be
logged x times instead of once.

Unshift makes sure to take the class off the registration list right
away, so another invokation of the same method won't try to do the same
job.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-06-25 06:34:13 +00:00
dependabot[bot] 3d20ca684c Update guzzlehttp/guzzle requirement in /build/integration
Updates the requirements on [guzzlehttp/guzzle](https://github.com/guzzle/guzzle) to permit the latest version.
- [Release notes](https://github.com/guzzle/guzzle/releases)
- [Changelog](https://github.com/guzzle/guzzle/blob/master/CHANGELOG.md)
- [Commits](https://github.com/guzzle/guzzle/compare/6.5.2...7.3.0)

---
updated-dependencies:
- dependency-name: guzzlehttp/guzzle
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-24 13:16:40 +00:00
Joas Schilling 99b7b82d72 Fix branch selection in stable22
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-06-24 13:12:52 +02:00
2282 changed files with 46612 additions and 22190 deletions
+1 -1
View File
@@ -1,5 +1,5 @@
codecov:
branch: master
branch: stable22
ci:
- drone.nextcloud.com
- !scrutinizer-ci.com
+49 -42
View File
@@ -739,7 +739,7 @@ steps:
commands:
- git submodule update --init
- name: integration-capabilities_features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -764,7 +764,7 @@ steps:
commands:
- git submodule update --init
- name: integration-collaboration_features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -789,7 +789,7 @@ steps:
commands:
- git submodule update --init
- name: integration-federation_features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin
@@ -814,7 +814,7 @@ steps:
commands:
- git submodule update --init
- name: integration-auth
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -839,7 +839,7 @@ steps:
commands:
- git submodule update --init
- name: integration-avatar
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -864,7 +864,7 @@ steps:
commands:
- git submodule update --init
- name: integration-maintenance-mode
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -889,7 +889,7 @@ steps:
commands:
- git submodule update --init
- name: integration-ratelimiting
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -924,7 +924,7 @@ steps:
commands:
- git submodule update --init
- name: integration-carddav
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -949,7 +949,7 @@ steps:
commands:
- git submodule update --init
- name: integration-dav-v2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -974,7 +974,7 @@ steps:
commands:
- git submodule update --init
- name: integration-ocs-v1
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -999,7 +999,7 @@ steps:
commands:
- git submodule update --init
- name: integration-checksums-v1
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1024,7 +1024,7 @@ steps:
commands:
- git submodule update --init
- name: integration-external-storage
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1049,7 +1049,7 @@ steps:
commands:
- git submodule update --init
- name: integration-provisioning-v1
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1074,7 +1074,7 @@ steps:
commands:
- git submodule update --init
- name: integration-tags
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1099,7 +1099,7 @@ steps:
commands:
- git submodule update --init
- name: integration-caldav
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1124,7 +1124,7 @@ steps:
commands:
- git submodule update --init
- name: integration-comments
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1149,7 +1149,7 @@ steps:
commands:
- git submodule update --init
- name: integration-comments-search
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1174,7 +1174,7 @@ steps:
commands:
- git submodule update --init
- name: integration-contacts-menu
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1199,7 +1199,7 @@ steps:
commands:
- git submodule update --init
- name: integration-favorites
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1224,7 +1224,7 @@ steps:
commands:
- git submodule update --init
- name: integration-provisioning-v2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1249,7 +1249,7 @@ steps:
commands:
- git submodule update --init
- name: integration-webdav-related
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1274,7 +1274,7 @@ steps:
commands:
- git submodule update --init
- name: integration-sharees-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1299,7 +1299,7 @@ steps:
commands:
- git submodule update --init
- name: integration-sharees-v2-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1324,7 +1324,7 @@ steps:
commands:
- git submodule update --init
- name: integration-sharing-v1
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1349,7 +1349,7 @@ steps:
commands:
- git submodule update --init
- name: integration-sharing-v1-part2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1374,7 +1374,7 @@ steps:
commands:
- git submodule update --init
- name: integration-sharing-v1-part3
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1403,9 +1403,9 @@ steps:
commands:
# JavaScript files are not used in integration tests so it is not needed to
# build them.
- git clone --depth 1 https://github.com/nextcloud/spreed apps/spreed
- git clone --depth 1 --branch stable22 https://github.com/nextcloud/spreed apps/spreed
- name: integration-sharing-v1-video-verification
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1430,7 +1430,7 @@ steps:
commands:
- git submodule update --init
- name: integration-setup-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- cd build/integration
@@ -1454,7 +1454,7 @@ steps:
commands:
- git submodule update --init
- name: integration-filesdrop-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1479,7 +1479,7 @@ steps:
commands:
- git submodule update --init
- name: integration-transfer-ownership-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1504,7 +1504,7 @@ steps:
commands:
- git submodule update --init
- name: integration-ldap-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1529,7 +1529,7 @@ steps:
commands:
- git submodule update --init
- name: integration-ldap-openldap-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1570,7 +1570,7 @@ steps:
commands:
- git submodule update --init
- name: integration-ldap-openldap-uid-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1612,7 +1612,7 @@ steps:
commands:
- git submodule update --init
- name: integration-ldap-openldap-numerical-id-features
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1653,7 +1653,7 @@ steps:
commands:
- git submodule update --init
- name: integration-trashbin
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1678,7 +1678,7 @@ steps:
commands:
- git submodule update --init
- name: integration-remote-api
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -1703,7 +1703,7 @@ steps:
commands:
- git submodule update --init
- name: integration-download
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:integration-php7.3-2
image: ghcr.io/nextcloud/continuous-integration-integration-php7.3:latest
commands:
- bash tests/drone-run-integration-tests.sh || exit 0
- ./occ maintenance:install --admin-pass=admin --data-dir=/dev/shm/nc_int
@@ -2117,6 +2117,15 @@ kind: pipeline
name: object-store-s3
steps:
- name: minio
image: ghcr.io/nextcloud/continuous-integration-minio:latest
detach: true
commands:
- mkdir /s3data
- minio server /s3data
environment:
MINIO_ROOT_USER: nextcloud
MINIO_ROOT_PASSWORD: nextcloud
- name: submodules
image: ghcr.io/nextcloud/continuous-integration-alpine-git:latest
commands:
@@ -2124,6 +2133,7 @@ steps:
- name: object-store
image: ghcr.io/nextcloud/continuous-integration-php7.4:php7.4-3
environment:
OBJECT_STORE: s3
CODECOV_TOKEN:
from_secret: CODECOV_TOKEN
commands:
@@ -2133,10 +2143,6 @@ steps:
- wget https://codecov.io/bash -O codecov.sh
- bash codecov.sh -C $DRONE_COMMIT -f tests/autotest-clover-sqlite.xml
services:
- name: fake-s3
image: ghcr.io/nextcloud/continuous-integration-fake-s3:latest
trigger:
branch:
- master
@@ -2157,6 +2163,7 @@ steps:
- name: object-store
image: ghcr.io/nextcloud/continuous-integration-php7.4:php7.4-3
environment:
OBJECT_STORE: azure
CODECOV_TOKEN:
from_secret: CODECOV_TOKEN
commands:
+14 -6
View File
@@ -1,21 +1,29 @@
# This workflow is provided via the organization template repository
#
# https://github.com/nextcloud/.github
# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization
name: Dependabot
on: pull_request_target
on:
pull_request_target:
branches:
- master
- stable*
jobs:
auto-merge:
runs-on: ubuntu-latest
steps:
# Default github action approve
- uses: hmarr/auto-approve-action@v2.0.0
if: github.ref == 'refs/heads/master' &&
(github.actor == 'dependabot[bot]' || github.actor == 'dependabot-preview[bot]')
- uses: hmarr/auto-approve-action@v2
if: github.actor == 'dependabot[bot]'
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
# Nextcloud bot approve and merge request
- uses: ahmadnassri/action-dependabot-auto-merge@v2
if: github.ref == 'refs/heads/master' &&
(github.actor == 'dependabot[bot]' || github.actor == 'dependabot-preview[bot]')
if: github.actor == 'dependabot[bot]'
with:
target: minor
github-token: ${{ secrets.DEPENDABOT_AUTOMERGE_TOKEN }}
+1 -1
View File
@@ -17,7 +17,7 @@ jobs:
with:
submodules: recursive
- name: Psalm
uses: docker://vimeo/psalm-github-actions
uses: docker://vimeo/psalm-github-actions:4.9.3
continue-on-error: true
with:
composer_ignore_platform_reqs: false
+1 -1
View File
@@ -17,7 +17,7 @@ jobs:
with:
submodules: recursive
- name: Psalm
uses: docker://vimeo/psalm-github-actions
uses: docker://vimeo/psalm-github-actions:4.9.3
with:
security_analysis: true
composer_ignore_platform_reqs: false
+124
View File
@@ -0,0 +1,124 @@
name: S3 External storage
on:
push:
branches:
- master
- stable*
paths:
- 'apps/files_external/**'
pull_request:
paths:
- 'apps/files_external/**'
env:
APP_NAME: files_external
jobs:
s3-external-tests-minio:
runs-on: ubuntu-latest
strategy:
# do not stop on another job's failure
fail-fast: false
matrix:
php-versions: ['7.4', '8.0']
name: php${{ matrix.php-versions }}-minio
services:
minio:
env:
MINIO_ACCESS_KEY: minio
MINIO_SECRET_KEY: minio123
image: bitnami/minio:2021.10.6
ports:
- "9000:9000"
steps:
- name: Checkout server
uses: actions/checkout@v2
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
tools: phpunit
extensions: mbstring, iconv, fileinfo, intl, sqlite, pdo_sqlite, zip, gd
- name: Set up Nextcloud
run: |
mkdir data
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
./occ app:enable --force ${{ env.APP_NAME }}
php -S localhost:8080 &
- name: PHPUnit
run: |
echo "<?php return ['run' => true,'hostname' => 'localhost','key' => 'minio','secret' => 'minio123', 'bucket' => 'bucket', 'port' => 9000, 'use_ssl' => false, 'autocreate' => true, 'use_path_style' => true];" > apps/${{ env.APP_NAME }}/tests/config.amazons3.php
phpunit --configuration tests/phpunit-autotest-external.xml apps/files_external/tests/Storage/Amazons3Test.php
phpunit --configuration tests/phpunit-autotest-external.xml apps/files_external/tests/Storage/VersionedAmazonS3Test.php
- name: S3 logs
if: always()
run: |
docker ps -a
docker logs $(docker ps -aq)
s3-external-tests-localstack:
runs-on: ubuntu-latest
strategy:
# do not stop on another job's failure
fail-fast: false
matrix:
php-versions: ['7.4', '8.0']
name: php${{ matrix.php-versions }}-localstack
services:
minio:
env:
SERVICES: s3
DEBUG: 1
image: localstack/localstack:0.12.7
ports:
- "4566:4566"
steps:
- name: Checkout server
uses: actions/checkout@v2
with:
submodules: true
- name: Set up php ${{ matrix.php-versions }}
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
tools: phpunit
extensions: mbstring, iconv, fileinfo, intl, sqlite, pdo_sqlite, zip, gd
- name: Set up Nextcloud
run: |
mkdir data
./occ maintenance:install --verbose --database=sqlite --database-name=nextcloud --database-host=127.0.0.1 --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
./occ app:enable --force ${{ env.APP_NAME }}
php -S localhost:8080 &
- name: PHPUnit
run: |
echo "<?php return ['run' => true,'hostname' => 'localhost','key' => 'ignored','secret' => 'ignored', 'bucket' => 'bucket', 'port' => 4566, 'use_ssl' => false, 'autocreate' => true, 'use_path_style' => true];" > apps/${{ env.APP_NAME }}/tests/config.amazons3.php
phpunit --configuration tests/phpunit-autotest-external.xml apps/files_external/tests/Storage/Amazons3Test.php
phpunit --configuration tests/phpunit-autotest-external.xml apps/files_external/tests/Storage/VersionedAmazonS3Test.php
- name: S3 logs
if: always()
run: |
docker ps -a
docker logs $(docker ps -aq)
s3-external-summary:
runs-on: ubuntu-latest
needs: [s3-external-tests-minio, s3-external-tests-localstack]
if: always()
steps:
- name: Summary status
run: if ${{ needs.s3-external-tests-minio.result != 'success' }} || ${{ needs.s3-external-tests-localstack.result != 'success' }}; then exit 1; fi
+2 -2
View File
@@ -22,7 +22,7 @@ jobs:
- name: Composer install
run: composer i
- name: Psalm
run: composer run psalm -- --monochrome --no-progress --output-format=text --update-baseline || ( git diff -- . ':!lib/composer' && exit 1 )
run: composer run psalm -- --monochrome --no-progress --output-format=github --update-baseline || ( git diff -- . ':!lib/composer' && exit 1 )
- name: Check diff
run: git diff -- . ':!lib/composer'
- name: Show potential changes in Psalm baseline
@@ -48,7 +48,7 @@ jobs:
- name: Composer install
run: composer i
- name: Psalm
run: composer run psalm -- -c psalm-ocp.xml --monochrome --no-progress --output-format=text --update-baseline || ( git diff -- . ':!lib/composer' && exit 1 )
run: composer run psalm -- -c psalm-ocp.xml --monochrome --no-progress --output-format=github --update-baseline || ( git diff -- . ':!lib/composer' && exit 1 )
- name: Check diff
run: git diff -- . ':!lib/composer'
- name: Show potential changes in Psalm baseline
+21 -15
View File
@@ -1,47 +1,53 @@
name: Update Psalm baseline
on:
workflow_dispatch:
schedule:
- cron: '5 4 * * *'
jobs:
update-psalm-baseline:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Checkout submodules
shell: bash
run: |
auth_header="$(git config --local --get http.https://github.com/.extraheader)"
git submodule sync --recursive
git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
with:
submodules: true
- name: Set up php7.4
uses: shivammathur/setup-php@master
uses: shivammathur/setup-php@v2
with:
php-version: 7.4
extensions: ctype,curl,dom,fileinfo,gd,iconv,intl,json,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
coverage: none
- name: Composer install
run: composer i
run: composer install
- name: Psalm
run: composer run psalm -- --monochrome --no-progress --output-format=text --update-baseline
- name: Reset composer.json and composer.lock
continue-on-error: true
- name: Reset composer
run: |
rm -rf lib/composer
git checkout -- composer.json composer.lock lib/composer
git clean -f lib/composer
git checkout composer.json composer.lock lib/composer
- name: Create Pull Request
uses: peter-evans/create-pull-request@v3
with:
token: ${{ secrets.MACHINE_USER_PAT }}
push-to-fork: nextcloud-pr-bot/server
token: ${{ secrets.COMMAND_BOT_PAT }}
commit-message: Update psalm baseline
committer: GitHub <noreply@github.com>
author: Nextcloud-PR-Bot <nextcloud-pr-bot@users.noreply.github.com>
author: nextcloud-command <nextcloud-command@users.noreply.github.com>
signoff: true
branch: automated/noid/psalm-baseline-update
# Make sure we can open multiple PRs
branch-suffix: timestamp
title: '[Automated] Update psalm-baseline.xml'
body: |
Auto-generated update psalm-baseline.xml with fixed psalm warnings
labels: |
automated pr
reviewers: juliushaertl, artonge, kesselb
3. to review
team-reviewers: server-backend
+32 -11
View File
@@ -7,6 +7,10 @@
<IfModule mod_proxy_fcgi.c>
SetEnvIfNoCase Authorization "(.+)" HTTP_AUTHORIZATION=$1
</IfModule>
<IfModule mod_lsapi.c>
SetEnvIfNoCase ^Authorization$ "(.+)" XAUTHORIZATION=$1
RequestHeader set XAuthorization %{XAUTHORIZATION}e env=XAUTHORIZATION
</IfModule>
</IfModule>
<IfModule mod_env.c>
@@ -39,7 +43,7 @@
</IfModule>
# Add cache control for static resources
<FilesMatch "\.(css|js|svg|gif)$">
<FilesMatch "\.(css|js|svg|gif|png|jpg|ico)$">
Header set Cache-Control "max-age=15778463"
</FilesMatch>
@@ -48,6 +52,8 @@
Header set Cache-Control "max-age=604800"
</FilesMatch>
</IfModule>
# PHP 7.x
<IfModule mod_php7.c>
php_value mbstring.func_overload 0
php_value default_charset 'UTF-8'
@@ -56,6 +62,30 @@
SetEnv htaccessWorking true
</IfModule>
</IfModule>
# PHP 8+
<IfModule mod_php.c>
php_value mbstring.func_overload 0
php_value default_charset 'UTF-8'
php_value output_buffering 0
<IfModule mod_env.c>
SetEnv htaccessWorking true
</IfModule>
</IfModule>
<IfModule mod_mime.c>
AddType image/svg+xml svg svgz
AddEncoding gzip svgz
</IfModule>
<IfModule mod_dir.c>
DirectoryIndex index.php index.html
</IfModule>
<IfModule pagespeed_module>
ModPagespeed Off
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} DavClnt
@@ -68,15 +98,6 @@
RewriteRule ^\.well-known/(?!acme-challenge|pki-validation) /index.php [QSA,L]
RewriteRule ^(?:\.(?!well-known)|autotest|occ|issue|indie|db_|console).* - [R=404,L]
</IfModule>
<IfModule mod_mime.c>
AddType image/svg+xml svg svgz
AddEncoding gzip svgz
</IfModule>
<IfModule mod_dir.c>
DirectoryIndex index.php index.html
</IfModule>
AddDefaultCharset utf-8
Options -Indexes
<IfModule pagespeed_module>
ModPagespeed Off
</IfModule>
+2 -2
View File
@@ -1,6 +1,6 @@
# 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)
[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/nextcloud/server/badges/quality-score.png?b=stable22)](https://scrutinizer-ci.com/g/nextcloud/server/?branch=stable22)
[![codecov](https://codecov.io/gh/nextcloud/server/branch/stable22/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)
**A safe home for all your data.**
+1 -1
View File
@@ -5,7 +5,7 @@
<name>Accessibility</name>
<summary>Accessibility options for nextcloud</summary>
<description><![CDATA[Provides multiple accessibilities options to ease your use of Nextcloud]]></description>
<version>1.7.0</version>
<version>1.8.0</version>
<licence>agpl</licence>
<author>John Molakvoæ</author>
<namespace>Accessibility</namespace>
+18
View File
@@ -0,0 +1,18 @@
{
"_readme": [
"This file locks the dependencies of your project to a known state",
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "d751713988987e9331980363e24189ce",
"packages": [],
"packages-dev": [],
"aliases": [],
"minimum-stability": "stable",
"stability-flags": [],
"prefer-stable": false,
"prefer-lowest": false,
"platform": [],
"platform-dev": [],
"plugin-api-version": "2.1.0"
}
@@ -0,0 +1,337 @@
<?php
/*
* This file is part of Composer.
*
* (c) Nils Adermann <naderman@naderman.de>
* Jordi Boggiano <j.boggiano@seld.be>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Composer;
use Composer\Autoload\ClassLoader;
use Composer\Semver\VersionParser;
/**
* This class is copied in every Composer installed project and available to all
*
* See also https://getcomposer.org/doc/07-runtime.md#installed-versions
*
* To require it's presence, you can require `composer-runtime-api ^2.0`
*/
class InstalledVersions
{
private static $installed;
private static $canGetVendors;
private static $installedByVendor = array();
/**
* Returns a list of all package names which are present, either by being installed, replaced or provided
*
* @return string[]
* @psalm-return list<string>
*/
public static function getInstalledPackages()
{
$packages = array();
foreach (self::getInstalled() as $installed) {
$packages[] = array_keys($installed['versions']);
}
if (1 === \count($packages)) {
return $packages[0];
}
return array_keys(array_flip(\call_user_func_array('array_merge', $packages)));
}
/**
* Returns a list of all package names with a specific type e.g. 'library'
*
* @param string $type
* @return string[]
* @psalm-return list<string>
*/
public static function getInstalledPackagesByType($type)
{
$packagesByType = array();
foreach (self::getInstalled() as $installed) {
foreach ($installed['versions'] as $name => $package) {
if (isset($package['type']) && $package['type'] === $type) {
$packagesByType[] = $name;
}
}
}
return $packagesByType;
}
/**
* Checks whether the given package is installed
*
* This also returns true if the package name is provided or replaced by another package
*
* @param string $packageName
* @param bool $includeDevRequirements
* @return bool
*/
public static function isInstalled($packageName, $includeDevRequirements = true)
{
foreach (self::getInstalled() as $installed) {
if (isset($installed['versions'][$packageName])) {
return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']);
}
}
return false;
}
/**
* Checks whether the given package satisfies a version constraint
*
* e.g. If you want to know whether version 2.3+ of package foo/bar is installed, you would call:
*
* Composer\InstalledVersions::satisfies(new VersionParser, 'foo/bar', '^2.3')
*
* @param VersionParser $parser Install composer/semver to have access to this class and functionality
* @param string $packageName
* @param string|null $constraint A version constraint to check for, if you pass one you have to make sure composer/semver is required by your package
* @return bool
*/
public static function satisfies(VersionParser $parser, $packageName, $constraint)
{
$constraint = $parser->parseConstraints($constraint);
$provided = $parser->parseConstraints(self::getVersionRanges($packageName));
return $provided->matches($constraint);
}
/**
* Returns a version constraint representing all the range(s) which are installed for a given package
*
* It is easier to use this via isInstalled() with the $constraint argument if you need to check
* whether a given version of a package is installed, and not just whether it exists
*
* @param string $packageName
* @return string Version constraint usable with composer/semver
*/
public static function getVersionRanges($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
$ranges = array();
if (isset($installed['versions'][$packageName]['pretty_version'])) {
$ranges[] = $installed['versions'][$packageName]['pretty_version'];
}
if (array_key_exists('aliases', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']);
}
if (array_key_exists('replaced', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']);
}
if (array_key_exists('provided', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']);
}
return implode(' || ', $ranges);
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
*/
public static function getVersion($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
if (!isset($installed['versions'][$packageName]['version'])) {
return null;
}
return $installed['versions'][$packageName]['version'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
*/
public static function getPrettyVersion($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
if (!isset($installed['versions'][$packageName]['pretty_version'])) {
return null;
}
return $installed['versions'][$packageName]['pretty_version'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as reference
*/
public static function getReference($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
if (!isset($installed['versions'][$packageName]['reference'])) {
return null;
}
return $installed['versions'][$packageName]['reference'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as install path. Packages of type metapackages also have a null install path.
*/
public static function getInstallPath($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
return isset($installed['versions'][$packageName]['install_path']) ? $installed['versions'][$packageName]['install_path'] : null;
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @return array
* @psalm-return array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}
*/
public static function getRootPackage()
{
$installed = self::getInstalled();
return $installed[0]['root'];
}
/**
* Returns the raw installed.php data for custom implementations
*
* @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect.
* @return array[]
* @psalm-return array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}
*/
public static function getRawData()
{
@trigger_error('getRawData only returns the first dataset loaded, which may not be what you expect. Use getAllRawData() instead which returns all datasets for all autoloaders present in the process.', E_USER_DEPRECATED);
if (null === self::$installed) {
// only require the installed.php file if this file is loaded from its dumped location,
// and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
if (substr(__DIR__, -8, 1) !== 'C') {
self::$installed = include __DIR__ . '/installed.php';
} else {
self::$installed = array();
}
}
return self::$installed;
}
/**
* Returns the raw data of all installed.php which are currently loaded for custom implementations
*
* @return array[]
* @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}>
*/
public static function getAllRawData()
{
return self::getInstalled();
}
/**
* Lets you reload the static array from another file
*
* This is only useful for complex integrations in which a project needs to use
* this class but then also needs to execute another project's autoloader in process,
* and wants to ensure both projects have access to their version of installed.php.
*
* A typical case would be PHPUnit, where it would need to make sure it reads all
* the data it needs from this class, then call reload() with
* `require $CWD/vendor/composer/installed.php` (or similar) as input to make sure
* the project in which it runs can then also use this class safely, without
* interference between PHPUnit's dependencies and the project's dependencies.
*
* @param array[] $data A vendor/composer/installed.php data set
* @return void
*
* @psalm-param array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>} $data
*/
public static function reload($data)
{
self::$installed = $data;
self::$installedByVendor = array();
}
/**
* @return array[]
* @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}>
*/
private static function getInstalled()
{
if (null === self::$canGetVendors) {
self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders');
}
$installed = array();
if (self::$canGetVendors) {
foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) {
if (isset(self::$installedByVendor[$vendorDir])) {
$installed[] = self::$installedByVendor[$vendorDir];
} elseif (is_file($vendorDir.'/composer/installed.php')) {
$installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
self::$installed = $installed[count($installed) - 1];
}
}
}
}
if (null === self::$installed) {
// only require the installed.php file if this file is loaded from its dumped location,
// and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
if (substr(__DIR__, -8, 1) !== 'C') {
self::$installed = require __DIR__ . '/installed.php';
} else {
self::$installed = array();
}
}
$installed[] = self::$installed;
return $installed;
}
}
@@ -0,0 +1,5 @@
{
"packages": [],
"dev": false,
"dev-package-names": []
}
@@ -0,0 +1,23 @@
<?php return array(
'root' => array(
'pretty_version' => 'dev-master',
'version' => 'dev-master',
'type' => 'library',
'install_path' => __DIR__ . '/../',
'aliases' => array(),
'reference' => 'fb5ee6087bfd1f4cc2f37cda7a7cab7072aaae86',
'name' => '__root__',
'dev' => false,
),
'versions' => array(
'__root__' => array(
'pretty_version' => 'dev-master',
'version' => 'dev-master',
'type' => 'library',
'install_path' => __DIR__ . '/../',
'aliases' => array(),
'reference' => 'fb5ee6087bfd1f4cc2f37cda7a7cab7072aaae86',
'dev_requirement' => false,
),
),
);
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+2 -2
View File
@@ -3,13 +3,13 @@ OC.L10N.register(
{
"Dark theme" : "Tema oscuro",
"Enable dark theme" : "Activar tema oscuro",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Tema oscuro para facilitar la navegación reduciendo el brillo y la luminosidad. Aún se encuentra en desarrollo, así que por favor, comunique cualquier problema que encuentre.",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Tema oscuro para facilitar la navegación, reduciendo el brillo y la luminosidad. Aún se encuentra en desarrollo, así que, por favor, comunique cualquier problema que encuentre.",
"High contrast mode" : "Modo de alto contraste",
"Enable high contrast mode" : "Activar modo de alto contraste",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Un modo de alto contraste para facilitar la navegación. Se reducirá la calidad visual pero se aumentará la claridad.",
"Dyslexia font" : "Tipo de letra para dislexia",
"Enable dyslexia font" : "Activa tipo de letra para dislexia",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic es un tipo de letra/fuente libre diseñado para reducir algunos de los errores de lectura comunes causados por la dislexia.",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic es un tipo de letra libre diseñada para reducir algunos de los errores de lectura comunes causados por la dislexia.",
"Accessibility" : "Accesibilidad",
"Accessibility options for nextcloud" : "Opciones de accesibilidad para nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Ofrece múltiples opciones de accesibilidad para facilitarte el uso de Nextcloud",
+2 -2
View File
@@ -1,13 +1,13 @@
{ "translations": {
"Dark theme" : "Tema oscuro",
"Enable dark theme" : "Activar tema oscuro",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Tema oscuro para facilitar la navegación reduciendo el brillo y la luminosidad. Aún se encuentra en desarrollo, así que por favor, comunique cualquier problema que encuentre.",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Tema oscuro para facilitar la navegación, reduciendo el brillo y la luminosidad. Aún se encuentra en desarrollo, así que, por favor, comunique cualquier problema que encuentre.",
"High contrast mode" : "Modo de alto contraste",
"Enable high contrast mode" : "Activar modo de alto contraste",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Un modo de alto contraste para facilitar la navegación. Se reducirá la calidad visual pero se aumentará la claridad.",
"Dyslexia font" : "Tipo de letra para dislexia",
"Enable dyslexia font" : "Activa tipo de letra para dislexia",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic es un tipo de letra/fuente libre diseñado para reducir algunos de los errores de lectura comunes causados por la dislexia.",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic es un tipo de letra libre diseñada para reducir algunos de los errores de lectura comunes causados por la dislexia.",
"Accessibility" : "Accesibilidad",
"Accessibility options for nextcloud" : "Opciones de accesibilidad para nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Ofrece múltiples opciones de accesibilidad para facilitarte el uso de Nextcloud",
+4 -1
View File
@@ -9,8 +9,11 @@ OC.L10N.register(
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Modo de alto contraste para facilitar tu navegación. La calidad visual puede ser menor pero incrementa la claridad.",
"Dyslexia font" : "Fuente para dislexia",
"Enable dyslexia font" : "Habilitar fuente para dislexia",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic es una tipografía/fuente diseñada para mitigar algunos de los errores comunes de lectura causados por dislexia.",
"Accessibility" : "Accesibilidad",
"Accessibility options for nextcloud" : "Opciones de accesibilidad para nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Provee múltiples opciones de accesibilidad para facilitar su uso de Nextcloud"
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Provee múltiples opciones de accesibilidad para facilitar tu uso de Nextcloud",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "El acceso universal es muy importante para nosotros. Seguimos los estándares web y verificamos que todo sea utilizable inclusive sin ratón, y con software de asistencia como lectores de pantalla. Buscamos cumplir con las {guidelines}Guías de Accesibilidad de Contenido Web{linkend} 2.1 sobre nivel AA, incluso sobre nivel AAA para el tema de alto contraste.",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "Si encuentras cualquier problema, no dudes en reportarlo en {issuetracker}nuestra lista de errores{linkend}. Y si deseas involucrarte, ¡únete a {designteam}nuestro equipo de diseño{linkend}!"
},
"nplurals=2; plural=(n != 1);");
+4 -1
View File
@@ -7,8 +7,11 @@
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Modo de alto contraste para facilitar tu navegación. La calidad visual puede ser menor pero incrementa la claridad.",
"Dyslexia font" : "Fuente para dislexia",
"Enable dyslexia font" : "Habilitar fuente para dislexia",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic es una tipografía/fuente diseñada para mitigar algunos de los errores comunes de lectura causados por dislexia.",
"Accessibility" : "Accesibilidad",
"Accessibility options for nextcloud" : "Opciones de accesibilidad para nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Provee múltiples opciones de accesibilidad para facilitar su uso de Nextcloud"
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Provee múltiples opciones de accesibilidad para facilitar tu uso de Nextcloud",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "El acceso universal es muy importante para nosotros. Seguimos los estándares web y verificamos que todo sea utilizable inclusive sin ratón, y con software de asistencia como lectores de pantalla. Buscamos cumplir con las {guidelines}Guías de Accesibilidad de Contenido Web{linkend} 2.1 sobre nivel AA, incluso sobre nivel AAA para el tema de alto contraste.",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "Si encuentras cualquier problema, no dudes en reportarlo en {issuetracker}nuestra lista de errores{linkend}. Y si deseas involucrarte, ¡únete a {designteam}nuestro equipo de diseño{linkend}!"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+3 -1
View File
@@ -3,10 +3,12 @@ OC.L10N.register(
{
"Dark theme" : "Tume teema",
"Enable dark theme" : "Luba tume teema",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Tume teema vähedab koormust sinu silmadele, vähendades ekraani eredust. See funktsionaalsus on hetkel arendamisel, palun andke sellega seotud probleemidest meile teada.",
"High contrast mode" : "Kõrge kontrastsusega režiim",
"Enable high contrast mode" : "Lubage kõrge kontrastsusega režiim.",
"Dyslexia font" : "Düsleksia font",
"Enable dyslexia font" : "Luba düsleksia font",
"Accessibility" : "Ligipääsetavus"
"Accessibility" : "Ligipääsetavus",
"Accessibility options for nextcloud" : "Ligipääsetavuse valikud Nextcloudis"
},
"nplurals=2; plural=(n != 1);");
+3 -1
View File
@@ -1,10 +1,12 @@
{ "translations": {
"Dark theme" : "Tume teema",
"Enable dark theme" : "Luba tume teema",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Tume teema vähedab koormust sinu silmadele, vähendades ekraani eredust. See funktsionaalsus on hetkel arendamisel, palun andke sellega seotud probleemidest meile teada.",
"High contrast mode" : "Kõrge kontrastsusega režiim",
"Enable high contrast mode" : "Lubage kõrge kontrastsusega režiim.",
"Dyslexia font" : "Düsleksia font",
"Enable dyslexia font" : "Luba düsleksia font",
"Accessibility" : "Ligipääsetavus"
"Accessibility" : "Ligipääsetavus",
"Accessibility options for nextcloud" : "Ligipääsetavuse valikud Nextcloudis"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+7 -7
View File
@@ -3,17 +3,17 @@ OC.L10N.register(
{
"Dark theme" : "Gai iluna",
"Enable dark theme" : "Gaitu gai iluna",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Arindu begietako kaltea gai ilunaz argitasuna eta distira murriztuz. Garapenean dagoen aukera da, beraz aurkitu zenezakeen edozein arazoren berri eman.",
"High contrast mode" : "Kontraste altuko modua",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Arindu begietako kaltea gai ilunaz argitasuna eta distira murriztuz. Garapenean dagoen aukera da, beraz, eman aurkitu zenezakeen edozein arazoren berri mesedez.",
"High contrast mode" : "Kontraste handiko modua",
"Enable high contrast mode" : "Gaitu kontraste handiko modua",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Kontraste altuko modua zuri nabigazioa errazteko. Kalitate bisuala murriztuko da baina argitasuna handiagotu.",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Kontraste handiko modua zuri nabigazioa errazteko. Kalitate bisuala murriztuko da baina argitasuna handiagotu.",
"Dyslexia font" : "Dislexia letra-tipoa",
"Enable dyslexia font" : "Gaitu dislexia letra-tipoa",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic letra-tipo librea da dislexiak eragindako ohiko irakurketa akats batzuk leuntzeko diseinatua.",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic letra-tipo librea da, dislexiak eragindako ohiko irakurketa akats batzuk leuntzeko diseinatua.",
"Accessibility" : "Erabilerraztasuna",
"Accessibility options for nextcloud" : "Erabilerraztasun aukerak nextcloudentzat",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Nextcloud-en erabilera errazteko hainbat aukera eskaintzen ditu.",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "Sarbide unibertsala oso garrantzitsua da guretzat. Web estadandarrak jarraitu eta sagu gabeko erabiltasuna egiaztatzen ditugu, pantaila-irakurle moduko software laguntzaileak barne. Helburu bezala jartzen dugu {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 AA mailan betetzea, kontraste altuko modua AAA mailaraino lortuz.",
"Accessibility options for nextcloud" : "Erabilerraztasun aukerak Nextcloudentzat",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Nextclouden erabilera errazteko hainbat aukera eskaintzen ditu.",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "Sarbide unibertsala izatea oso garrantzitsua da guretzat. Web estadandarrak jarraitu eta guztia sagurik gabe erabili ahal izatea bermatzen dugu, pantaila-irakurle moduko software laguntzaileak barne. Helburu bezala jartzen dugu {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 AA mailan betetzea, kontraste altuko modua AAA mailaraino betez.",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "Arazorik aurkitzen baduzu, bidali ezazu lasai {issuetracker}gure arazo-kontrolatzailera{linkend}. Eta parte hartu nahi baduzu, elkartu zaitez gurekin {designteam}gure diseinu taldera{linkend}!"
},
"nplurals=2; plural=(n != 1);");
+7 -7
View File
@@ -1,17 +1,17 @@
{ "translations": {
"Dark theme" : "Gai iluna",
"Enable dark theme" : "Gaitu gai iluna",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Arindu begietako kaltea gai ilunaz argitasuna eta distira murriztuz. Garapenean dagoen aukera da, beraz aurkitu zenezakeen edozein arazoren berri eman.",
"High contrast mode" : "Kontraste altuko modua",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Arindu begietako kaltea gai ilunaz argitasuna eta distira murriztuz. Garapenean dagoen aukera da, beraz, eman aurkitu zenezakeen edozein arazoren berri mesedez.",
"High contrast mode" : "Kontraste handiko modua",
"Enable high contrast mode" : "Gaitu kontraste handiko modua",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Kontraste altuko modua zuri nabigazioa errazteko. Kalitate bisuala murriztuko da baina argitasuna handiagotu.",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Kontraste handiko modua zuri nabigazioa errazteko. Kalitate bisuala murriztuko da baina argitasuna handiagotu.",
"Dyslexia font" : "Dislexia letra-tipoa",
"Enable dyslexia font" : "Gaitu dislexia letra-tipoa",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic letra-tipo librea da dislexiak eragindako ohiko irakurketa akats batzuk leuntzeko diseinatua.",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic letra-tipo librea da, dislexiak eragindako ohiko irakurketa akats batzuk leuntzeko diseinatua.",
"Accessibility" : "Erabilerraztasuna",
"Accessibility options for nextcloud" : "Erabilerraztasun aukerak nextcloudentzat",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Nextcloud-en erabilera errazteko hainbat aukera eskaintzen ditu.",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "Sarbide unibertsala oso garrantzitsua da guretzat. Web estadandarrak jarraitu eta sagu gabeko erabiltasuna egiaztatzen ditugu, pantaila-irakurle moduko software laguntzaileak barne. Helburu bezala jartzen dugu {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 AA mailan betetzea, kontraste altuko modua AAA mailaraino lortuz.",
"Accessibility options for nextcloud" : "Erabilerraztasun aukerak Nextcloudentzat",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Nextclouden erabilera errazteko hainbat aukera eskaintzen ditu.",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "Sarbide unibertsala izatea oso garrantzitsua da guretzat. Web estadandarrak jarraitu eta guztia sagurik gabe erabili ahal izatea bermatzen dugu, pantaila-irakurle moduko software laguntzaileak barne. Helburu bezala jartzen dugu {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 AA mailan betetzea, kontraste altuko modua AAA mailaraino betez.",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "Arazorik aurkitzen baduzu, bidali ezazu lasai {issuetracker}gure arazo-kontrolatzailera{linkend}. Eta parte hartu nahi baduzu, elkartu zaitez gurekin {designteam}gure diseinu taldera{linkend}!"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+2 -2
View File
@@ -3,10 +3,10 @@ OC.L10N.register(
{
"Dark theme" : "Thème sombre",
"Enable dark theme" : "Activer le thème sombre",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Un thème sombre pour soulager vos yeux en réduisant la luminosité et l’éclat général. Il est encore en cours de développement, veuillez donc nous signaler les problèmes que vous pourriez rencontrer.",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Un thème sombre pour soulager vos yeux en réduisant la luminosité générale. Il est encore en cours de développement, veuillez donc nous signaler les problèmes que vous pourriez rencontrer.",
"High contrast mode" : "Thème à contraste élevé",
"Enable high contrast mode" : "Activer le thème à contraste élevé",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Un thème au contraste élevé pour faciliter votre navigation. La qualité visuelle sera réduite, mais la clarté sera améliorée.",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Un thème au contraste élevé pour faciliter votre navigation. La qualité visuelle sera réduite, mais la lisibilité sera améliorée.",
"Dyslexia font" : "Police pour dyslexiques",
"Enable dyslexia font" : "Activer la police pour dyslexiques",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic est une police de caractères libre conçue pour atténuer certaines des erreurs de lecture courantes causées par la dyslexie.",
+2 -2
View File
@@ -1,10 +1,10 @@
{ "translations": {
"Dark theme" : "Thème sombre",
"Enable dark theme" : "Activer le thème sombre",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Un thème sombre pour soulager vos yeux en réduisant la luminosité et l’éclat général. Il est encore en cours de développement, veuillez donc nous signaler les problèmes que vous pourriez rencontrer.",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Un thème sombre pour soulager vos yeux en réduisant la luminosité générale. Il est encore en cours de développement, veuillez donc nous signaler les problèmes que vous pourriez rencontrer.",
"High contrast mode" : "Thème à contraste élevé",
"Enable high contrast mode" : "Activer le thème à contraste élevé",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Un thème au contraste élevé pour faciliter votre navigation. La qualité visuelle sera réduite, mais la clarté sera améliorée.",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Un thème au contraste élevé pour faciliter votre navigation. La qualité visuelle sera réduite, mais la lisibilité sera améliorée.",
"Dyslexia font" : "Police pour dyslexiques",
"Enable dyslexia font" : "Activer la police pour dyslexiques",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic est une police de caractères libre conçue pour atténuer certaines des erreurs de lecture courantes causées par la dyslexie.",
+1 -1
View File
@@ -10,7 +10,7 @@ OC.L10N.register(
"Dyslexia font" : "Font disleksia",
"Enable dyslexia font" : "Aktifkan fon disleksia",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic adalah typeface/font gratis yang didesain untuk mengurangi kesalahan membaca oleh penderita disleksia",
"Accessibility" : "aksesbilitas",
"Accessibility" : "Aksesbilitas",
"Accessibility options for nextcloud" : "Opsi aksesibilitas untuk nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Menyediakan beberapa opsi aksesibilitas untuk memudahkan Anda menggunakan Nextcloud",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "Akses universal sangat penting bagi kami. Kami mengikuti standar web dan memeriksa agar semua dapat digunakan, bahkan saat tanpa menggunakan tetikus, dan lainnya seperti perangkat lunak pembantu pembaca layar. Kami bertujuan untuk mematuhi {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 pada tingkat AA, dengan tema kontras tinggi bahkan pada tingkat AAA.",
+1 -1
View File
@@ -8,7 +8,7 @@
"Dyslexia font" : "Font disleksia",
"Enable dyslexia font" : "Aktifkan fon disleksia",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic adalah typeface/font gratis yang didesain untuk mengurangi kesalahan membaca oleh penderita disleksia",
"Accessibility" : "aksesbilitas",
"Accessibility" : "Aksesbilitas",
"Accessibility options for nextcloud" : "Opsi aksesibilitas untuk nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Menyediakan beberapa opsi aksesibilitas untuk memudahkan Anda menggunakan Nextcloud",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "Akses universal sangat penting bagi kami. Kami mengikuti standar web dan memeriksa agar semua dapat digunakan, bahkan saat tanpa menggunakan tetikus, dan lainnya seperti perangkat lunak pembantu pembaca layar. Kami bertujuan untuk mematuhi {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 pada tingkat AA, dengan tema kontras tinggi bahkan pada tingkat AAA.",
+8 -6
View File
@@ -1,17 +1,19 @@
OC.L10N.register(
"accessibility",
{
"Dark theme" : "Mørkt tema",
"Enable dark theme" : "Mogleggjere mørkt tema",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Ei mørk drakt som er mildare mot augo ved å redusera utstråling og lysstyrke. Drakta vert framleis utvikla, så sei gjerne ifrå dersom du får vanskar.",
"High contrast mode" : "Høg kontrast modus",
"Enable high contrast mode" : "Mogleggjere høg kontrast modus",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Høg kontrast modus gjer det enklare å navigere. Visuell kvalitet vil bli redusert, mens innhaldet vert klårare.",
"Dyslexia font" : "Dysleksi-skrifttype",
"Enable dyslexia font" : "Mogleggjere skrifttype for dysleksikarar ",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic er ein gratis skrifttype som er laga for å redusera nokre vanlege lesefeil som kjem av dysleksi.",
"Accessibility" : "Tilgjenge",
"Accessibility options for nextcloud" : "Brukarval for tilgjenge i Nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Ulike innstillingar for å gjera Nextcloud lettare å bruka for funksjonshemma",
"High contrast theme" : "Høgkontrast-drakt",
"A high contrast theme to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Ei drakt med høg kontrast som gjer det lettare å navigera. Den visuelle kvaliteten er redusert, men innhaldet er klårare.",
"Web Content Accessibility Guidelines" : "Retningsliner for tilgjenge i vev-innhald",
"our issue tracker" : "feilsporings-systemet vårt",
"our design team" : "utformingsgruppa vår",
"Enable" : "Slå på"
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "Universell tilgang er veldig viktig for oss. Vi følg vev standardar og undersøkjer at alt er mogleg å gjennomføre utan mus, og saman med hjelpeprogramvare som skjermlesar. Vi har som mål å vere i samsvar med {retningslinjene} Retningslinjer for tilgjengeleg nett innhald {lenkje} 2.1 for A-nivå, til og med for tema med høy kontrast på AAA-nivå. ",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "I tilfele du finn nokre problem, ikkje vent med å rapportere dei på {problemsøkjar} vår problemsøkjar {lenkje}. Og ønskjer du å engasjere deg, ta del i {designergruppa} designergruppa vår {lenkje}!"
},
"nplurals=2; plural=(n != 1);");
+8 -6
View File
@@ -1,15 +1,17 @@
{ "translations": {
"Dark theme" : "Mørkt tema",
"Enable dark theme" : "Mogleggjere mørkt tema",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Ei mørk drakt som er mildare mot augo ved å redusera utstråling og lysstyrke. Drakta vert framleis utvikla, så sei gjerne ifrå dersom du får vanskar.",
"High contrast mode" : "Høg kontrast modus",
"Enable high contrast mode" : "Mogleggjere høg kontrast modus",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Høg kontrast modus gjer det enklare å navigere. Visuell kvalitet vil bli redusert, mens innhaldet vert klårare.",
"Dyslexia font" : "Dysleksi-skrifttype",
"Enable dyslexia font" : "Mogleggjere skrifttype for dysleksikarar ",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic er ein gratis skrifttype som er laga for å redusera nokre vanlege lesefeil som kjem av dysleksi.",
"Accessibility" : "Tilgjenge",
"Accessibility options for nextcloud" : "Brukarval for tilgjenge i Nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Ulike innstillingar for å gjera Nextcloud lettare å bruka for funksjonshemma",
"High contrast theme" : "Høgkontrast-drakt",
"A high contrast theme to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Ei drakt med høg kontrast som gjer det lettare å navigera. Den visuelle kvaliteten er redusert, men innhaldet er klårare.",
"Web Content Accessibility Guidelines" : "Retningsliner for tilgjenge i vev-innhald",
"our issue tracker" : "feilsporings-systemet vårt",
"our design team" : "utformingsgruppa vår",
"Enable" : "Slå på"
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "Universell tilgang er veldig viktig for oss. Vi følg vev standardar og undersøkjer at alt er mogleg å gjennomføre utan mus, og saman med hjelpeprogramvare som skjermlesar. Vi har som mål å vere i samsvar med {retningslinjene} Retningslinjer for tilgjengeleg nett innhald {lenkje} 2.1 for A-nivå, til og med for tema med høy kontrast på AAA-nivå. ",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "I tilfele du finn nokre problem, ikkje vent med å rapportere dei på {problemsøkjar} vår problemsøkjar {lenkje}. Og ønskjer du å engasjere deg, ta del i {designergruppa} designergruppa vår {lenkje}!"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+1 -1
View File
@@ -2,7 +2,7 @@ OC.L10N.register(
"accessibility",
{
"Dark theme" : "Tema escuro",
"Enable dark theme" : "Ativar tema escuro",
"Enable dark theme" : "Enable dark theme",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Um tema escuro para aliviar os olhos, reduzindo a luminosidade e brilho geral. Ainda está em desenvolvimento, por isso, informe qualquer problema encontrado.",
"High contrast mode" : "Modo de alto contraste",
"Enable high contrast mode" : "Ativar modo de alto contraste",
+1 -1
View File
@@ -1,6 +1,6 @@
{ "translations": {
"Dark theme" : "Tema escuro",
"Enable dark theme" : "Ativar tema escuro",
"Enable dark theme" : "Enable dark theme",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Um tema escuro para aliviar os olhos, reduzindo a luminosidade e brilho geral. Ainda está em desenvolvimento, por isso, informe qualquer problema encontrado.",
"High contrast mode" : "Modo de alto contraste",
"Enable high contrast mode" : "Ativar modo de alto contraste",
+6 -1
View File
@@ -2,13 +2,18 @@ OC.L10N.register(
"accessibility",
{
"Dark theme" : "Temë e errët",
"Enable dark theme" : "Aktivizo temën e errët",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Një temë e errët për të lehtësuar sytë duke ulur shkëlqimin dhe ndritshmërinë e përgjithshme. Është ende në zhvillim, prandaj ju lutemi raportoni çdo çështje që mund të gjeni.",
"High contrast mode" : "Modalitet me kontrast të lartë",
"Enable high contrast mode" : "Aktivizoni modalitetin me kontrast të lartë",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Një modalitet me kontrast të lartë për të lehtësuar lundrimin. Cilësia vizuale do të reduktohet por qartësia do të rritet",
"Dyslexia font" : "Fonti Dyslexia",
"Enable dyslexia font" : "Aktivizo fontin e disleksisë",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic është një font / karakter tipografik i lirë i dizajnuar për të zbutur disa nga gabimet e zakonshme të leximit të shkaktuara nga disleksija.",
"Accessibility" : "Aksesueshmëria",
"Accessibility options for nextcloud" : "Opsionet e aksesueshmërisë për nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Mundëson shumë opsione të aksesueshmërisë që t'ju lehtësojë përdorimin e Nextcloud"
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Mundëson shumë opsione të aksesueshmërisë që t'ju lehtësojë përdorimin e Nextcloud",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "Qasja universale është shumë e rëndësishme për ne. Ne ndjekim standardet e uebit dhe kontrollojmë që çdo gjë të jetë e përdorshme edhe pa miun, dhe softuerë ndihmës siç janë lexuesit e ekranit. Ne synojmë të jemi në përputhje me {udhëzimet}Udhëzimet mbi Aksesueshmërinë për Përmbajtjen në Internet{linkend} 2.1 në nivelin AA, me temën e kontrastit të lartë edhe në nivelin AAA.",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "Nëse gjeni ndonjë problem, mos hezitoni t'i raportoni ato në {issuetracker}gjurmuesi ynë i çështjeve{linkend}. Dhe nëse doni të përfshiheni, ejani bashkohuni me {designteam}ekipin tonë të dizajnit{linkend}!"
},
"nplurals=2; plural=(n != 1);");
+6 -1
View File
@@ -1,12 +1,17 @@
{ "translations": {
"Dark theme" : "Temë e errët",
"Enable dark theme" : "Aktivizo temën e errët",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "Një temë e errët për të lehtësuar sytë duke ulur shkëlqimin dhe ndritshmërinë e përgjithshme. Është ende në zhvillim, prandaj ju lutemi raportoni çdo çështje që mund të gjeni.",
"High contrast mode" : "Modalitet me kontrast të lartë",
"Enable high contrast mode" : "Aktivizoni modalitetin me kontrast të lartë",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Një modalitet me kontrast të lartë për të lehtësuar lundrimin. Cilësia vizuale do të reduktohet por qartësia do të rritet",
"Dyslexia font" : "Fonti Dyslexia",
"Enable dyslexia font" : "Aktivizo fontin e disleksisë",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic është një font / karakter tipografik i lirë i dizajnuar për të zbutur disa nga gabimet e zakonshme të leximit të shkaktuara nga disleksija.",
"Accessibility" : "Aksesueshmëria",
"Accessibility options for nextcloud" : "Opsionet e aksesueshmërisë për nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Mundëson shumë opsione të aksesueshmërisë që t'ju lehtësojë përdorimin e Nextcloud"
"Provides multiple accessibilities options to ease your use of Nextcloud" : "Mundëson shumë opsione të aksesueshmërisë që t'ju lehtësojë përdorimin e Nextcloud",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "Qasja universale është shumë e rëndësishme për ne. Ne ndjekim standardet e uebit dhe kontrollojmë që çdo gjë të jetë e përdorshme edhe pa miun, dhe softuerë ndihmës siç janë lexuesit e ekranit. Ne synojmë të jemi në përputhje me {udhëzimet}Udhëzimet mbi Aksesueshmërinë për Përmbajtjen në Internet{linkend} 2.1 në nivelin AA, me temën e kontrastit të lartë edhe në nivelin AAA.",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "Nëse gjeni ndonjë problem, mos hezitoni t'i raportoni ato në {issuetracker}gjurmuesi ynë i çështjeve{linkend}. Dhe nëse doni të përfshiheni, ejani bashkohuni me {designteam}ekipin tonë të dizajnit{linkend}!"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+2 -2
View File
@@ -7,8 +7,8 @@ OC.L10N.register(
"High contrast mode" : "Läge med hög kontrast",
"Enable high contrast mode" : "Aktivera läge med hög kontrast",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Ett läge med hög kontrast för att underlätta din navigering. Visuell kvalitet kommer att minska men tydligheten ökar.",
"Dyslexia font" : "Dyslexi-teckensnitt",
"Enable dyslexia font" : "Aktivera dyslexi-teckensnitt",
"Dyslexia font" : "Teckensnitt för dyslektiker",
"Enable dyslexia font" : "Aktivera teckensnitt för dyslektiker",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic är ett fritt teckensnitt/font som är utformat för att mildra några av de vanligaste lässvårigheterna som orsakas av dyslexi.",
"Accessibility" : "Tillgänglighet",
"Accessibility options for nextcloud" : "Tillgänglighetsalternativ för Nextcloud",
+2 -2
View File
@@ -5,8 +5,8 @@
"High contrast mode" : "Läge med hög kontrast",
"Enable high contrast mode" : "Aktivera läge med hög kontrast",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "Ett läge med hög kontrast för att underlätta din navigering. Visuell kvalitet kommer att minska men tydligheten ökar.",
"Dyslexia font" : "Dyslexi-teckensnitt",
"Enable dyslexia font" : "Aktivera dyslexi-teckensnitt",
"Dyslexia font" : "Teckensnitt för dyslektiker",
"Enable dyslexia font" : "Aktivera teckensnitt för dyslektiker",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic är ett fritt teckensnitt/font som är utformat för att mildra några av de vanligaste lässvårigheterna som orsakas av dyslexi.",
"Accessibility" : "Tillgänglighet",
"Accessibility options for nextcloud" : "Tillgänglighetsalternativ för Nextcloud",
+13 -13
View File
@@ -1,19 +1,19 @@
OC.L10N.register(
"accessibility",
{
"Dark theme" : "รูปแบบ สีเข้ม",
"Enable dark theme" : "เปิด รูปแบบ สีเข้ม",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "รูปแบบสีเข้ม ทำให้ดวงตาของคุณสบายขึ้นโดยลดแสงส่องสว่าง และความสว่าง มันยังอยู่ระหว่างการพัฒนา, ดังนั้นโปรดรายงานปัญหาใด ๆ ที่คุณอาจจะพบ",
"Dark theme" : "ธีมสีเข้ม",
"Enable dark theme" : "เปิดใช้ธีมสีเข้ม",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "ธีมสีเข้มทำให้ดวงตาของคุณสบายขึ้น โดยลดแสงส่องสว่าง และความสว่างโดยรวม ซึ่งยังอยู่ระหว่างการพัฒนา ดังนั้นโปรดรายงานปัญหาใด ๆ ที่คุณอาจพบ",
"High contrast mode" : "โหมดความคมชัดสูง",
"Enable high contrast mode" : "เปิด โหมดความคมชัดสูง",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "โหมดความคมชัดสูง เพื่อความสะดวกในการเดินทางของคุณ คุณภาพของภาพจะลดลง แต่จะเพิ่มความคมชัด",
"Dyslexia font" : "ฟอนต์ Dyslexia ",
"Enable dyslexia font" : "เปิด ฟอนต์ Dyslexia",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic เป็นแบบอักษร / แบบอักษรฟรีที่ออกแบบมาเพื่อลดข้อผิดพลาดในการอ่านทั่วไป โดย dyslexia",
"Accessibility" : "การเข้าถึง",
"Accessibility options for nextcloud" : "ตัวเลือกการเข้าถึงสำหรับ nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "มีตัวเลือกในการเข้าถึงหลายตัว เพื่อให้ง่ายต่อการใช้งาน บน Nextcloud",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "การเข้าถึงสากลเป็นสิ่งสำคัญมากสำหรับเรา เราปฏิบัติตามมาตรฐานเว็บ และตรวจสอบเพื่อให้ทุกอย่างใช้งานได้โดยไม่ต้องใช้เมาส์และซอฟต์แวร์ช่วยเหลือ เช่นโปรแกรมอ่านหน้าจอ เรามุ่งมั่นที่จะปฏิบัติตาม {แนวทาง} แนวทางการเข้าถึงเนื้อหาเว็บ {linkend} 2.1 ในระดับ AA ด้วยธีมความคมชัดสูงแม้ในระดับ AAA",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "หากคุณพบปัญหาใด ๆ อย่าลังเลที่จะรายงานปัญหาเหล่านี้ใน {issuetracker} เครื่องมือติดตามปัญหาของเรา {linkend} และหากคุณต้องการมีส่วนร่วมเข้าร่วม {designteam} ทีมออกแบบของเรา {linkend}"
"Enable high contrast mode" : "เปิดโหมดความคมชัดสูง",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "โหมดความคมชัดสูง ช่วยเพิ่มความสะดวกในการใช้งานของคุณ คุณภาพของภาพจะลดลง แต่ความคมชัดจะเพิ่มขึ้น",
"Dyslexia font" : "ฟอนต์ภาวะเสียการอ่านเข้าใจ",
"Enable dyslexia font" : "เปิดฟอนต์ภาวะเสียการอ่านเข้าใจ",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic เป็นแบบอักษร/ฟอนต์ฟรีที่ออกแบบมาเพื่อลดข้อผิดพลาดทั่วไปในการอ่านที่เกิดจากภาวะเสียการอ่านเข้าใจ",
"Accessibility" : "การช่วยการเข้าถึง",
"Accessibility options for nextcloud" : "ตัวเลือกการช่วยการเข้าถึงสำหรับ nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "มีหลายตัวเลือกในการช่วยการเข้าถึงเพื่อช่วยให้การใช้งาน Nextcloud ของคุณง่ายขึ้น",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "การเข้าถึงสากลเป็นสิ่งสำคัญมากสำหรับเรา เราปฏิบัติตามมาตรฐานเว็บและตรวจสอบเพื่อให้ทุกอย่างใช้งานได้โดยไม่ต้องใช้เมาส์และซอฟต์แวร์ช่วยเหลือ เช่น โปรแกรมอ่านหน้าจอ เรามุ่งมั่นที่จะปฏิบัติตาม{guidelines}แนวทางการเข้าถึงเนื้อหาเว็บ{linkend} 2.1 ในระดับ AA ด้วยธีมความคมชัดสูงแม้ในระดับ AAA",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "หากคุณพบปัญหาใด ๆ อย่าลังเลที่จะรายงานปัญหาเหล่านี้ใน{issuetracker}เครื่องมือติดตามปัญหาของเรา{linkend} และหากคุณต้องการมีส่วนร่วม เข้าร่วม{designteam}ทีมออกแบบของเรา{linkend}ได้เลย!"
},
"nplurals=1; plural=0;");
+13 -13
View File
@@ -1,17 +1,17 @@
{ "translations": {
"Dark theme" : "รูปแบบ สีเข้ม",
"Enable dark theme" : "เปิด รูปแบบ สีเข้ม",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "รูปแบบสีเข้ม ทำให้ดวงตาของคุณสบายขึ้นโดยลดแสงส่องสว่าง และความสว่าง มันยังอยู่ระหว่างการพัฒนา, ดังนั้นโปรดรายงานปัญหาใด ๆ ที่คุณอาจจะพบ",
"Dark theme" : "ธีมสีเข้ม",
"Enable dark theme" : "เปิดใช้ธีมสีเข้ม",
"A dark theme to ease your eyes by reducing the overall luminosity and brightness. It is still under development, so please report any issues you may find." : "ธีมสีเข้มทำให้ดวงตาของคุณสบายขึ้น โดยลดแสงส่องสว่าง และความสว่างโดยรวม ซึ่งยังอยู่ระหว่างการพัฒนา ดังนั้นโปรดรายงานปัญหาใด ๆ ที่คุณอาจพบ",
"High contrast mode" : "โหมดความคมชัดสูง",
"Enable high contrast mode" : "เปิด โหมดความคมชัดสูง",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "โหมดความคมชัดสูง เพื่อความสะดวกในการเดินทางของคุณ คุณภาพของภาพจะลดลง แต่จะเพิ่มความคมชัด",
"Dyslexia font" : "ฟอนต์ Dyslexia ",
"Enable dyslexia font" : "เปิด ฟอนต์ Dyslexia",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic เป็นแบบอักษร / แบบอักษรฟรีที่ออกแบบมาเพื่อลดข้อผิดพลาดในการอ่านทั่วไป โดย dyslexia",
"Accessibility" : "การเข้าถึง",
"Accessibility options for nextcloud" : "ตัวเลือกการเข้าถึงสำหรับ nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "มีตัวเลือกในการเข้าถึงหลายตัว เพื่อให้ง่ายต่อการใช้งาน บน Nextcloud",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "การเข้าถึงสากลเป็นสิ่งสำคัญมากสำหรับเรา เราปฏิบัติตามมาตรฐานเว็บ และตรวจสอบเพื่อให้ทุกอย่างใช้งานได้โดยไม่ต้องใช้เมาส์และซอฟต์แวร์ช่วยเหลือ เช่นโปรแกรมอ่านหน้าจอ เรามุ่งมั่นที่จะปฏิบัติตาม {แนวทาง} แนวทางการเข้าถึงเนื้อหาเว็บ {linkend} 2.1 ในระดับ AA ด้วยธีมความคมชัดสูงแม้ในระดับ AAA",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "หากคุณพบปัญหาใด ๆ อย่าลังเลที่จะรายงานปัญหาเหล่านี้ใน {issuetracker} เครื่องมือติดตามปัญหาของเรา {linkend} และหากคุณต้องการมีส่วนร่วมเข้าร่วม {designteam} ทีมออกแบบของเรา {linkend}"
"Enable high contrast mode" : "เปิดโหมดความคมชัดสูง",
"A high contrast mode to ease your navigation. Visual quality will be reduced but clarity will be increased." : "โหมดความคมชัดสูง ช่วยเพิ่มความสะดวกในการใช้งานของคุณ คุณภาพของภาพจะลดลง แต่ความคมชัดจะเพิ่มขึ้น",
"Dyslexia font" : "ฟอนต์ภาวะเสียการอ่านเข้าใจ",
"Enable dyslexia font" : "เปิดฟอนต์ภาวะเสียการอ่านเข้าใจ",
"OpenDyslexic is a free typeface/font designed to mitigate some of the common reading errors caused by dyslexia." : "OpenDyslexic เป็นแบบอักษร/ฟอนต์ฟรีที่ออกแบบมาเพื่อลดข้อผิดพลาดทั่วไปในการอ่านที่เกิดจากภาวะเสียการอ่านเข้าใจ",
"Accessibility" : "การช่วยการเข้าถึง",
"Accessibility options for nextcloud" : "ตัวเลือกการช่วยการเข้าถึงสำหรับ nextcloud",
"Provides multiple accessibilities options to ease your use of Nextcloud" : "มีหลายตัวเลือกในการช่วยการเข้าถึงเพื่อช่วยให้การใช้งาน Nextcloud ของคุณง่ายขึ้น",
"Universal access is very important to us. We follow web standards and check to make everything usable also without mouse, and assistive software such as screenreaders. We aim to be compliant with the {guidelines}Web Content Accessibility Guidelines{linkend} 2.1 on AA level, with the high contrast theme even on AAA level." : "การเข้าถึงสากลเป็นสิ่งสำคัญมากสำหรับเรา เราปฏิบัติตามมาตรฐานเว็บและตรวจสอบเพื่อให้ทุกอย่างใช้งานได้โดยไม่ต้องใช้เมาส์และซอฟต์แวร์ช่วยเหลือ เช่น โปรแกรมอ่านหน้าจอ เรามุ่งมั่นที่จะปฏิบัติตาม{guidelines}แนวทางการเข้าถึงเนื้อหาเว็บ{linkend} 2.1 ในระดับ AA ด้วยธีมความคมชัดสูงแม้ในระดับ AAA",
"If you find any issues, dont hesitate to report them on {issuetracker}our issue tracker{linkend}. And if you want to get involved, come join {designteam}our design team{linkend}!" : "หากคุณพบปัญหาใด ๆ อย่าลังเลที่จะรายงานปัญหาเหล่านี้ใน{issuetracker}เครื่องมือติดตามปัญหาของเรา{linkend} และหากคุณต้องการมีส่วนร่วม เข้าร่วม{designteam}ทีมออกแบบของเรา{linkend}ได้เลย!"
},"pluralForm" :"nplurals=1; plural=0;"
}
@@ -78,6 +78,7 @@ class Application extends App implements IBootstrap {
$hash = md5(implode('-', $userValues));
$linkToCSS = $urlGenerator->linkToRoute(self::APP_ID . '.accessibility.getCss', ['md5' => $hash]);
\OCP\Util::addHeader('link', ['rel' => 'stylesheet', 'media' => '(prefers-color-scheme: dark)', 'href' => $linkToCSS]);
\OCP\Util::addScript('accessibility', 'accessibilityoca');
}
}
}
@@ -60,6 +60,7 @@ class JSDataService extends InitialStateProvider {
}
return [
'checkMedia' => $user === null,
'theme' => $theme,
'highcontrast' => $highcontrast,
];
@@ -24,6 +24,11 @@
import { loadState } from '@nextcloud/initial-state'
OCA.Accessibility = loadState('accessibility', 'data')
if (OCA.Accessibility.checkMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
// Overwrite the theme for Guests based on the prefers-color-scheme
OCA.Accessibility.theme = 'dark'
}
if (OCA.Accessibility.theme !== false) {
document.body.classList.add(`theme--${OCA.Accessibility.theme}`)
} else {
+1 -1
View File
@@ -5,7 +5,7 @@
<name>Auditing / Logging</name>
<summary>Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.</summary>
<description>Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions.</description>
<version>1.11.0</version>
<version>1.12.0</version>
<licence>agpl</licence>
<author>Nextcloud</author>
<namespace>AdminAudit</namespace>
+18
View File
@@ -0,0 +1,18 @@
{
"_readme": [
"This file locks the dependencies of your project to a known state",
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "d751713988987e9331980363e24189ce",
"packages": [],
"packages-dev": [],
"aliases": [],
"minimum-stability": "stable",
"stability-flags": [],
"prefer-stable": false,
"prefer-lowest": false,
"platform": [],
"platform-dev": [],
"plugin-api-version": "2.1.0"
}
@@ -0,0 +1,337 @@
<?php
/*
* This file is part of Composer.
*
* (c) Nils Adermann <naderman@naderman.de>
* Jordi Boggiano <j.boggiano@seld.be>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Composer;
use Composer\Autoload\ClassLoader;
use Composer\Semver\VersionParser;
/**
* This class is copied in every Composer installed project and available to all
*
* See also https://getcomposer.org/doc/07-runtime.md#installed-versions
*
* To require it's presence, you can require `composer-runtime-api ^2.0`
*/
class InstalledVersions
{
private static $installed;
private static $canGetVendors;
private static $installedByVendor = array();
/**
* Returns a list of all package names which are present, either by being installed, replaced or provided
*
* @return string[]
* @psalm-return list<string>
*/
public static function getInstalledPackages()
{
$packages = array();
foreach (self::getInstalled() as $installed) {
$packages[] = array_keys($installed['versions']);
}
if (1 === \count($packages)) {
return $packages[0];
}
return array_keys(array_flip(\call_user_func_array('array_merge', $packages)));
}
/**
* Returns a list of all package names with a specific type e.g. 'library'
*
* @param string $type
* @return string[]
* @psalm-return list<string>
*/
public static function getInstalledPackagesByType($type)
{
$packagesByType = array();
foreach (self::getInstalled() as $installed) {
foreach ($installed['versions'] as $name => $package) {
if (isset($package['type']) && $package['type'] === $type) {
$packagesByType[] = $name;
}
}
}
return $packagesByType;
}
/**
* Checks whether the given package is installed
*
* This also returns true if the package name is provided or replaced by another package
*
* @param string $packageName
* @param bool $includeDevRequirements
* @return bool
*/
public static function isInstalled($packageName, $includeDevRequirements = true)
{
foreach (self::getInstalled() as $installed) {
if (isset($installed['versions'][$packageName])) {
return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']);
}
}
return false;
}
/**
* Checks whether the given package satisfies a version constraint
*
* e.g. If you want to know whether version 2.3+ of package foo/bar is installed, you would call:
*
* Composer\InstalledVersions::satisfies(new VersionParser, 'foo/bar', '^2.3')
*
* @param VersionParser $parser Install composer/semver to have access to this class and functionality
* @param string $packageName
* @param string|null $constraint A version constraint to check for, if you pass one you have to make sure composer/semver is required by your package
* @return bool
*/
public static function satisfies(VersionParser $parser, $packageName, $constraint)
{
$constraint = $parser->parseConstraints($constraint);
$provided = $parser->parseConstraints(self::getVersionRanges($packageName));
return $provided->matches($constraint);
}
/**
* Returns a version constraint representing all the range(s) which are installed for a given package
*
* It is easier to use this via isInstalled() with the $constraint argument if you need to check
* whether a given version of a package is installed, and not just whether it exists
*
* @param string $packageName
* @return string Version constraint usable with composer/semver
*/
public static function getVersionRanges($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
$ranges = array();
if (isset($installed['versions'][$packageName]['pretty_version'])) {
$ranges[] = $installed['versions'][$packageName]['pretty_version'];
}
if (array_key_exists('aliases', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']);
}
if (array_key_exists('replaced', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']);
}
if (array_key_exists('provided', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']);
}
return implode(' || ', $ranges);
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
*/
public static function getVersion($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
if (!isset($installed['versions'][$packageName]['version'])) {
return null;
}
return $installed['versions'][$packageName]['version'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
*/
public static function getPrettyVersion($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
if (!isset($installed['versions'][$packageName]['pretty_version'])) {
return null;
}
return $installed['versions'][$packageName]['pretty_version'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as reference
*/
public static function getReference($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
if (!isset($installed['versions'][$packageName]['reference'])) {
return null;
}
return $installed['versions'][$packageName]['reference'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as install path. Packages of type metapackages also have a null install path.
*/
public static function getInstallPath($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
return isset($installed['versions'][$packageName]['install_path']) ? $installed['versions'][$packageName]['install_path'] : null;
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @return array
* @psalm-return array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}
*/
public static function getRootPackage()
{
$installed = self::getInstalled();
return $installed[0]['root'];
}
/**
* Returns the raw installed.php data for custom implementations
*
* @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect.
* @return array[]
* @psalm-return array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}
*/
public static function getRawData()
{
@trigger_error('getRawData only returns the first dataset loaded, which may not be what you expect. Use getAllRawData() instead which returns all datasets for all autoloaders present in the process.', E_USER_DEPRECATED);
if (null === self::$installed) {
// only require the installed.php file if this file is loaded from its dumped location,
// and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
if (substr(__DIR__, -8, 1) !== 'C') {
self::$installed = include __DIR__ . '/installed.php';
} else {
self::$installed = array();
}
}
return self::$installed;
}
/**
* Returns the raw data of all installed.php which are currently loaded for custom implementations
*
* @return array[]
* @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}>
*/
public static function getAllRawData()
{
return self::getInstalled();
}
/**
* Lets you reload the static array from another file
*
* This is only useful for complex integrations in which a project needs to use
* this class but then also needs to execute another project's autoloader in process,
* and wants to ensure both projects have access to their version of installed.php.
*
* A typical case would be PHPUnit, where it would need to make sure it reads all
* the data it needs from this class, then call reload() with
* `require $CWD/vendor/composer/installed.php` (or similar) as input to make sure
* the project in which it runs can then also use this class safely, without
* interference between PHPUnit's dependencies and the project's dependencies.
*
* @param array[] $data A vendor/composer/installed.php data set
* @return void
*
* @psalm-param array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>} $data
*/
public static function reload($data)
{
self::$installed = $data;
self::$installedByVendor = array();
}
/**
* @return array[]
* @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}>
*/
private static function getInstalled()
{
if (null === self::$canGetVendors) {
self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders');
}
$installed = array();
if (self::$canGetVendors) {
foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) {
if (isset(self::$installedByVendor[$vendorDir])) {
$installed[] = self::$installedByVendor[$vendorDir];
} elseif (is_file($vendorDir.'/composer/installed.php')) {
$installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
self::$installed = $installed[count($installed) - 1];
}
}
}
}
if (null === self::$installed) {
// only require the installed.php file if this file is loaded from its dumped location,
// and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
if (substr(__DIR__, -8, 1) !== 'C') {
self::$installed = require __DIR__ . '/installed.php';
} else {
self::$installed = array();
}
}
$installed[] = self::$installed;
return $installed;
}
}
@@ -0,0 +1,5 @@
{
"packages": [],
"dev": false,
"dev-package-names": []
}
@@ -0,0 +1,23 @@
<?php return array(
'root' => array(
'pretty_version' => 'dev-master',
'version' => 'dev-master',
'type' => 'library',
'install_path' => __DIR__ . '/../',
'aliases' => array(),
'reference' => 'fb5ee6087bfd1f4cc2f37cda7a7cab7072aaae86',
'name' => '__root__',
'dev' => false,
),
'versions' => array(
'__root__' => array(
'pretty_version' => 'dev-master',
'version' => 'dev-master',
'type' => 'library',
'install_path' => __DIR__ . '/../',
'aliases' => array(),
'reference' => 'fb5ee6087bfd1f4cc2f37cda7a7cab7072aaae86',
'dev_requirement' => false,
),
),
);
+7
View File
@@ -0,0 +1,7 @@
OC.L10N.register(
"admin_audit",
{
"Auditing / Logging" : "Auditoría / Registros",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Habilita las opciones de bitácora de Nextcloud tales como registro de acceso a archivos o de acciones delicadas."
},
"nplurals=2; plural=(n != 1);");
+5
View File
@@ -0,0 +1,5 @@
{ "translations": {
"Auditing / Logging" : "Auditoría / Registros",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Habilita las opciones de bitácora de Nextcloud tales como registro de acceso a archivos o de acciones delicadas."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+7
View File
@@ -0,0 +1,7 @@
OC.L10N.register(
"admin_audit",
{
"Auditing / Logging" : "Auditeerimine / Logimine",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Lisab Nextcloudile logimisvõimekuse, millega on võimalik jälgida näiteks failide kasutamist või teisi tundlikke tegevusi."
},
"nplurals=2; plural=(n != 1);");
+5
View File
@@ -0,0 +1,5 @@
{ "translations": {
"Auditing / Logging" : "Auditeerimine / Logimine",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Lisab Nextcloudile logimisvõimekuse, millega on võimalik jälgida näiteks failide kasutamist või teisi tundlikke tegevusi."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+7
View File
@@ -0,0 +1,7 @@
OC.L10N.register(
"admin_audit",
{
"Auditing / Logging" : "Revisjon / Logging",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Tilbyr logg eigenskapar for Nextcloud, til dømes tilgang til loggfil eller andre følsame handlingar."
},
"nplurals=2; plural=(n != 1);");
+5
View File
@@ -0,0 +1,5 @@
{ "translations": {
"Auditing / Logging" : "Revisjon / Logging",
"Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Tilbyr logg eigenskapar for Nextcloud, til dømes tilgang til loggfil eller andre følsame handlingar."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+9 -9
View File
@@ -50,7 +50,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'permissions',
'id',
@@ -62,7 +62,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',
@@ -75,7 +75,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',
@@ -88,7 +88,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',
@@ -101,7 +101,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',
@@ -114,7 +114,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',
@@ -127,7 +127,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',
@@ -140,7 +140,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',
@@ -153,7 +153,7 @@ class Sharing extends Action {
$params,
[
'itemType',
'itemTarget',
'path',
'itemSource',
'shareWith',
'permissions',
+1 -1
View File
@@ -5,7 +5,7 @@
<name>Cloud Federation API</name>
<summary>Enable clouds to communicate with each other and exchange data</summary>
<description>The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data.</description>
<version>1.4.0</version>
<version>1.5.0</version>
<licence>agpl</licence>
<author>Bjoern Schiessle</author>
<namespace>CloudFederationAPI</namespace>
+18
View File
@@ -0,0 +1,18 @@
{
"_readme": [
"This file locks the dependencies of your project to a known state",
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "d751713988987e9331980363e24189ce",
"packages": [],
"packages-dev": [],
"aliases": [],
"minimum-stability": "stable",
"stability-flags": [],
"prefer-stable": false,
"prefer-lowest": false,
"platform": [],
"platform-dev": [],
"plugin-api-version": "2.1.0"
}
@@ -0,0 +1,337 @@
<?php
/*
* This file is part of Composer.
*
* (c) Nils Adermann <naderman@naderman.de>
* Jordi Boggiano <j.boggiano@seld.be>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Composer;
use Composer\Autoload\ClassLoader;
use Composer\Semver\VersionParser;
/**
* This class is copied in every Composer installed project and available to all
*
* See also https://getcomposer.org/doc/07-runtime.md#installed-versions
*
* To require it's presence, you can require `composer-runtime-api ^2.0`
*/
class InstalledVersions
{
private static $installed;
private static $canGetVendors;
private static $installedByVendor = array();
/**
* Returns a list of all package names which are present, either by being installed, replaced or provided
*
* @return string[]
* @psalm-return list<string>
*/
public static function getInstalledPackages()
{
$packages = array();
foreach (self::getInstalled() as $installed) {
$packages[] = array_keys($installed['versions']);
}
if (1 === \count($packages)) {
return $packages[0];
}
return array_keys(array_flip(\call_user_func_array('array_merge', $packages)));
}
/**
* Returns a list of all package names with a specific type e.g. 'library'
*
* @param string $type
* @return string[]
* @psalm-return list<string>
*/
public static function getInstalledPackagesByType($type)
{
$packagesByType = array();
foreach (self::getInstalled() as $installed) {
foreach ($installed['versions'] as $name => $package) {
if (isset($package['type']) && $package['type'] === $type) {
$packagesByType[] = $name;
}
}
}
return $packagesByType;
}
/**
* Checks whether the given package is installed
*
* This also returns true if the package name is provided or replaced by another package
*
* @param string $packageName
* @param bool $includeDevRequirements
* @return bool
*/
public static function isInstalled($packageName, $includeDevRequirements = true)
{
foreach (self::getInstalled() as $installed) {
if (isset($installed['versions'][$packageName])) {
return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']);
}
}
return false;
}
/**
* Checks whether the given package satisfies a version constraint
*
* e.g. If you want to know whether version 2.3+ of package foo/bar is installed, you would call:
*
* Composer\InstalledVersions::satisfies(new VersionParser, 'foo/bar', '^2.3')
*
* @param VersionParser $parser Install composer/semver to have access to this class and functionality
* @param string $packageName
* @param string|null $constraint A version constraint to check for, if you pass one you have to make sure composer/semver is required by your package
* @return bool
*/
public static function satisfies(VersionParser $parser, $packageName, $constraint)
{
$constraint = $parser->parseConstraints($constraint);
$provided = $parser->parseConstraints(self::getVersionRanges($packageName));
return $provided->matches($constraint);
}
/**
* Returns a version constraint representing all the range(s) which are installed for a given package
*
* It is easier to use this via isInstalled() with the $constraint argument if you need to check
* whether a given version of a package is installed, and not just whether it exists
*
* @param string $packageName
* @return string Version constraint usable with composer/semver
*/
public static function getVersionRanges($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
$ranges = array();
if (isset($installed['versions'][$packageName]['pretty_version'])) {
$ranges[] = $installed['versions'][$packageName]['pretty_version'];
}
if (array_key_exists('aliases', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']);
}
if (array_key_exists('replaced', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']);
}
if (array_key_exists('provided', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']);
}
return implode(' || ', $ranges);
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
*/
public static function getVersion($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
if (!isset($installed['versions'][$packageName]['version'])) {
return null;
}
return $installed['versions'][$packageName]['version'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
*/
public static function getPrettyVersion($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
if (!isset($installed['versions'][$packageName]['pretty_version'])) {
return null;
}
return $installed['versions'][$packageName]['pretty_version'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as reference
*/
public static function getReference($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
if (!isset($installed['versions'][$packageName]['reference'])) {
return null;
}
return $installed['versions'][$packageName]['reference'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as install path. Packages of type metapackages also have a null install path.
*/
public static function getInstallPath($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
return isset($installed['versions'][$packageName]['install_path']) ? $installed['versions'][$packageName]['install_path'] : null;
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @return array
* @psalm-return array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}
*/
public static function getRootPackage()
{
$installed = self::getInstalled();
return $installed[0]['root'];
}
/**
* Returns the raw installed.php data for custom implementations
*
* @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect.
* @return array[]
* @psalm-return array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}
*/
public static function getRawData()
{
@trigger_error('getRawData only returns the first dataset loaded, which may not be what you expect. Use getAllRawData() instead which returns all datasets for all autoloaders present in the process.', E_USER_DEPRECATED);
if (null === self::$installed) {
// only require the installed.php file if this file is loaded from its dumped location,
// and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
if (substr(__DIR__, -8, 1) !== 'C') {
self::$installed = include __DIR__ . '/installed.php';
} else {
self::$installed = array();
}
}
return self::$installed;
}
/**
* Returns the raw data of all installed.php which are currently loaded for custom implementations
*
* @return array[]
* @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}>
*/
public static function getAllRawData()
{
return self::getInstalled();
}
/**
* Lets you reload the static array from another file
*
* This is only useful for complex integrations in which a project needs to use
* this class but then also needs to execute another project's autoloader in process,
* and wants to ensure both projects have access to their version of installed.php.
*
* A typical case would be PHPUnit, where it would need to make sure it reads all
* the data it needs from this class, then call reload() with
* `require $CWD/vendor/composer/installed.php` (or similar) as input to make sure
* the project in which it runs can then also use this class safely, without
* interference between PHPUnit's dependencies and the project's dependencies.
*
* @param array[] $data A vendor/composer/installed.php data set
* @return void
*
* @psalm-param array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>} $data
*/
public static function reload($data)
{
self::$installed = $data;
self::$installedByVendor = array();
}
/**
* @return array[]
* @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}>
*/
private static function getInstalled()
{
if (null === self::$canGetVendors) {
self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders');
}
$installed = array();
if (self::$canGetVendors) {
foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) {
if (isset(self::$installedByVendor[$vendorDir])) {
$installed[] = self::$installedByVendor[$vendorDir];
} elseif (is_file($vendorDir.'/composer/installed.php')) {
$installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
self::$installed = $installed[count($installed) - 1];
}
}
}
}
if (null === self::$installed) {
// only require the installed.php file if this file is loaded from its dumped location,
// and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
if (substr(__DIR__, -8, 1) !== 'C') {
self::$installed = require __DIR__ . '/installed.php';
} else {
self::$installed = array();
}
}
$installed[] = self::$installed;
return $installed;
}
}
@@ -0,0 +1,5 @@
{
"packages": [],
"dev": false,
"dev-package-names": []
}
@@ -0,0 +1,23 @@
<?php return array(
'root' => array(
'pretty_version' => 'dev-master',
'version' => 'dev-master',
'type' => 'library',
'install_path' => __DIR__ . '/../',
'aliases' => array(),
'reference' => 'fb5ee6087bfd1f4cc2f37cda7a7cab7072aaae86',
'name' => '__root__',
'dev' => false,
),
'versions' => array(
'__root__' => array(
'pretty_version' => 'dev-master',
'version' => 'dev-master',
'type' => 'library',
'install_path' => __DIR__ . '/../',
'aliases' => array(),
'reference' => 'fb5ee6087bfd1f4cc2f37cda7a7cab7072aaae86',
'dev_requirement' => false,
),
),
);
+8
View File
@@ -0,0 +1,8 @@
OC.L10N.register(
"cloud_federation_api",
{
"Cloud Federation API" : "API на Cloud Federation/федериране на облак/",
"Enable clouds to communicate with each other and exchange data" : "Активиране на облаците да комуникират помежду си и да обменят данни",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "API на Cloud Federation/федериране на облак/, позволява на различни екземпляри на Nextcloud да комуникират помежду си и да обменят данни. "
},
"nplurals=2; plural=(n != 1);");
+6
View File
@@ -0,0 +1,6 @@
{ "translations": {
"Cloud Federation API" : "API на Cloud Federation/федериране на облак/",
"Enable clouds to communicate with each other and exchange data" : "Активиране на облаците да комуникират помежду си и да обменят данни",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "API на Cloud Federation/федериране на облак/, позволява на различни екземпляри на Nextcloud да комуникират помежду си и да обменят данни. "
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+8
View File
@@ -0,0 +1,8 @@
OC.L10N.register(
"cloud_federation_api",
{
"Cloud Federation API" : "Cloud Federation API",
"Enable clouds to communicate with each other and exchange data" : "Gør det muligt for skyer at kommunikere med hinanden og udveksle data",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "Cloud Federation API gør det muligt for forskellige Nextcloud-instanser at kommunikere med hinanden og udveksle data."
},
"nplurals=2; plural=(n != 1);");
+6
View File
@@ -0,0 +1,6 @@
{ "translations": {
"Cloud Federation API" : "Cloud Federation API",
"Enable clouds to communicate with each other and exchange data" : "Gør det muligt for skyer at kommunikere med hinanden og udveksle data",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "Cloud Federation API gør det muligt for forskellige Nextcloud-instanser at kommunikere med hinanden og udveksle data."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+2 -2
View File
@@ -1,8 +1,8 @@
OC.L10N.register(
"cloud_federation_api",
{
"Cloud Federation API" : "Cloud Federation API",
"Cloud Federation API" : "Cloud-Federation-API",
"Enable clouds to communicate with each other and exchange data" : "Erlaubt es, dass Server miteinander kommunizieren und Daten austauschen",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "Die Cloud Federation API ermöglicht es Nextcloud-Instanzen miteinander zu kommunizieren und Daten auszutauschen."
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "Die Cloud-Federation-API ermöglicht es Nextcloud-Instanzen miteinander zu kommunizieren und Daten auszutauschen."
},
"nplurals=2; plural=(n != 1);");
+2 -2
View File
@@ -1,6 +1,6 @@
{ "translations": {
"Cloud Federation API" : "Cloud Federation API",
"Cloud Federation API" : "Cloud-Federation-API",
"Enable clouds to communicate with each other and exchange data" : "Erlaubt es, dass Server miteinander kommunizieren und Daten austauschen",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "Die Cloud Federation API ermöglicht es Nextcloud-Instanzen miteinander zu kommunizieren und Daten auszutauschen."
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "Die Cloud-Federation-API ermöglicht es Nextcloud-Instanzen miteinander zu kommunizieren und Daten auszutauschen."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+7
View File
@@ -0,0 +1,7 @@
OC.L10N.register(
"cloud_federation_api",
{
"Cloud Federation API" : "Pilvifederaation rajapinta",
"Enable clouds to communicate with each other and exchange data" : "Mahdollistaa pilvien viestiä ja vaihtaa dataa toistensa kanssa"
},
"nplurals=2; plural=(n != 1);");
+5
View File
@@ -0,0 +1,5 @@
{ "translations": {
"Cloud Federation API" : "Pilvifederaation rajapinta",
"Enable clouds to communicate with each other and exchange data" : "Mahdollistaa pilvien viestiä ja vaihtaa dataa toistensa kanssa"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+3 -3
View File
@@ -1,8 +1,8 @@
OC.L10N.register(
"cloud_federation_api",
{
"Cloud Federation API" : "Felhő együttműködési alkalmazás fejlesztői felület",
"Enable clouds to communicate with each other and exchange data" : "Kommunikáció és adatcsere engedélyezése a felhőszolgáltatások között",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "A felhő együttműködési alkalmazás fejlesztői felület segítségével a különféle Nextcloud példányok képesek egymás között kommunikálni és adatokat cserélni."
"Cloud Federation API" : "Felhő föderációs API",
"Enable clouds to communicate with each other and exchange data" : "A felhőszolgáltatások egymás közti kommunikációjának és adatcseréjének lehetővé tétele",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "A felhő föderációs API segítségével a különféle Nextcloud példányok képesek lesznek egymás között kommunikálni és adatokat cserélni."
},
"nplurals=2; plural=(n != 1);");
+3 -3
View File
@@ -1,6 +1,6 @@
{ "translations": {
"Cloud Federation API" : "Felhő együttműködési alkalmazás fejlesztői felület",
"Enable clouds to communicate with each other and exchange data" : "Kommunikáció és adatcsere engedélyezése a felhőszolgáltatások között",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "A felhő együttműködési alkalmazás fejlesztői felület segítségével a különféle Nextcloud példányok képesek egymás között kommunikálni és adatokat cserélni."
"Cloud Federation API" : "Felhő föderációs API",
"Enable clouds to communicate with each other and exchange data" : "A felhőszolgáltatások egymás közti kommunikációjának és adatcseréjének lehetővé tétele",
"The Cloud Federation API enables various Nextcloud instances to communicate with each other and to exchange data." : "A felhő föderációs API segítségével a különféle Nextcloud példányok képesek lesznek egymás között kommunikálni és adatokat cserélni."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
}
+1 -1
View File
@@ -5,7 +5,7 @@
<name>Comments</name>
<summary>Files app plugin to add comments to files</summary>
<description>Files app plugin to add comments to files</description>
<version>1.11.0</version>
<version>1.12.0</version>
<licence>agpl</licence>
<author>Arthur Schiwon</author>
<author>Vincent Petry</author>
+18
View File
@@ -0,0 +1,18 @@
{
"_readme": [
"This file locks the dependencies of your project to a known state",
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "d751713988987e9331980363e24189ce",
"packages": [],
"packages-dev": [],
"aliases": [],
"minimum-stability": "stable",
"stability-flags": [],
"prefer-stable": false,
"prefer-lowest": false,
"platform": [],
"platform-dev": [],
"plugin-api-version": "2.1.0"
}
@@ -0,0 +1,337 @@
<?php
/*
* This file is part of Composer.
*
* (c) Nils Adermann <naderman@naderman.de>
* Jordi Boggiano <j.boggiano@seld.be>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Composer;
use Composer\Autoload\ClassLoader;
use Composer\Semver\VersionParser;
/**
* This class is copied in every Composer installed project and available to all
*
* See also https://getcomposer.org/doc/07-runtime.md#installed-versions
*
* To require it's presence, you can require `composer-runtime-api ^2.0`
*/
class InstalledVersions
{
private static $installed;
private static $canGetVendors;
private static $installedByVendor = array();
/**
* Returns a list of all package names which are present, either by being installed, replaced or provided
*
* @return string[]
* @psalm-return list<string>
*/
public static function getInstalledPackages()
{
$packages = array();
foreach (self::getInstalled() as $installed) {
$packages[] = array_keys($installed['versions']);
}
if (1 === \count($packages)) {
return $packages[0];
}
return array_keys(array_flip(\call_user_func_array('array_merge', $packages)));
}
/**
* Returns a list of all package names with a specific type e.g. 'library'
*
* @param string $type
* @return string[]
* @psalm-return list<string>
*/
public static function getInstalledPackagesByType($type)
{
$packagesByType = array();
foreach (self::getInstalled() as $installed) {
foreach ($installed['versions'] as $name => $package) {
if (isset($package['type']) && $package['type'] === $type) {
$packagesByType[] = $name;
}
}
}
return $packagesByType;
}
/**
* Checks whether the given package is installed
*
* This also returns true if the package name is provided or replaced by another package
*
* @param string $packageName
* @param bool $includeDevRequirements
* @return bool
*/
public static function isInstalled($packageName, $includeDevRequirements = true)
{
foreach (self::getInstalled() as $installed) {
if (isset($installed['versions'][$packageName])) {
return $includeDevRequirements || empty($installed['versions'][$packageName]['dev_requirement']);
}
}
return false;
}
/**
* Checks whether the given package satisfies a version constraint
*
* e.g. If you want to know whether version 2.3+ of package foo/bar is installed, you would call:
*
* Composer\InstalledVersions::satisfies(new VersionParser, 'foo/bar', '^2.3')
*
* @param VersionParser $parser Install composer/semver to have access to this class and functionality
* @param string $packageName
* @param string|null $constraint A version constraint to check for, if you pass one you have to make sure composer/semver is required by your package
* @return bool
*/
public static function satisfies(VersionParser $parser, $packageName, $constraint)
{
$constraint = $parser->parseConstraints($constraint);
$provided = $parser->parseConstraints(self::getVersionRanges($packageName));
return $provided->matches($constraint);
}
/**
* Returns a version constraint representing all the range(s) which are installed for a given package
*
* It is easier to use this via isInstalled() with the $constraint argument if you need to check
* whether a given version of a package is installed, and not just whether it exists
*
* @param string $packageName
* @return string Version constraint usable with composer/semver
*/
public static function getVersionRanges($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
$ranges = array();
if (isset($installed['versions'][$packageName]['pretty_version'])) {
$ranges[] = $installed['versions'][$packageName]['pretty_version'];
}
if (array_key_exists('aliases', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']);
}
if (array_key_exists('replaced', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']);
}
if (array_key_exists('provided', $installed['versions'][$packageName])) {
$ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']);
}
return implode(' || ', $ranges);
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
*/
public static function getVersion($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
if (!isset($installed['versions'][$packageName]['version'])) {
return null;
}
return $installed['versions'][$packageName]['version'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present
*/
public static function getPrettyVersion($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
if (!isset($installed['versions'][$packageName]['pretty_version'])) {
return null;
}
return $installed['versions'][$packageName]['pretty_version'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as reference
*/
public static function getReference($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
if (!isset($installed['versions'][$packageName]['reference'])) {
return null;
}
return $installed['versions'][$packageName]['reference'];
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @param string $packageName
* @return string|null If the package is being replaced or provided but is not really installed, null will be returned as install path. Packages of type metapackages also have a null install path.
*/
public static function getInstallPath($packageName)
{
foreach (self::getInstalled() as $installed) {
if (!isset($installed['versions'][$packageName])) {
continue;
}
return isset($installed['versions'][$packageName]['install_path']) ? $installed['versions'][$packageName]['install_path'] : null;
}
throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed');
}
/**
* @return array
* @psalm-return array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}
*/
public static function getRootPackage()
{
$installed = self::getInstalled();
return $installed[0]['root'];
}
/**
* Returns the raw installed.php data for custom implementations
*
* @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect.
* @return array[]
* @psalm-return array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}
*/
public static function getRawData()
{
@trigger_error('getRawData only returns the first dataset loaded, which may not be what you expect. Use getAllRawData() instead which returns all datasets for all autoloaders present in the process.', E_USER_DEPRECATED);
if (null === self::$installed) {
// only require the installed.php file if this file is loaded from its dumped location,
// and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
if (substr(__DIR__, -8, 1) !== 'C') {
self::$installed = include __DIR__ . '/installed.php';
} else {
self::$installed = array();
}
}
return self::$installed;
}
/**
* Returns the raw data of all installed.php which are currently loaded for custom implementations
*
* @return array[]
* @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}>
*/
public static function getAllRawData()
{
return self::getInstalled();
}
/**
* Lets you reload the static array from another file
*
* This is only useful for complex integrations in which a project needs to use
* this class but then also needs to execute another project's autoloader in process,
* and wants to ensure both projects have access to their version of installed.php.
*
* A typical case would be PHPUnit, where it would need to make sure it reads all
* the data it needs from this class, then call reload() with
* `require $CWD/vendor/composer/installed.php` (or similar) as input to make sure
* the project in which it runs can then also use this class safely, without
* interference between PHPUnit's dependencies and the project's dependencies.
*
* @param array[] $data A vendor/composer/installed.php data set
* @return void
*
* @psalm-param array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>} $data
*/
public static function reload($data)
{
self::$installed = $data;
self::$installedByVendor = array();
}
/**
* @return array[]
* @psalm-return list<array{root: array{name: string, version: string, reference: string, pretty_version: string, aliases: string[], dev: bool, install_path: string}, versions: array<string, array{dev_requirement: bool, pretty_version?: string, version?: string, aliases?: string[], reference?: string, replaced?: string[], provided?: string[], install_path?: string}>}>
*/
private static function getInstalled()
{
if (null === self::$canGetVendors) {
self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders');
}
$installed = array();
if (self::$canGetVendors) {
foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) {
if (isset(self::$installedByVendor[$vendorDir])) {
$installed[] = self::$installedByVendor[$vendorDir];
} elseif (is_file($vendorDir.'/composer/installed.php')) {
$installed[] = self::$installedByVendor[$vendorDir] = require $vendorDir.'/composer/installed.php';
if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) {
self::$installed = $installed[count($installed) - 1];
}
}
}
}
if (null === self::$installed) {
// only require the installed.php file if this file is loaded from its dumped location,
// and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937
if (substr(__DIR__, -8, 1) !== 'C') {
self::$installed = require __DIR__ . '/installed.php';
} else {
self::$installed = array();
}
}
$installed[] = self::$installed;
return $installed;
}
}
@@ -0,0 +1,5 @@
{
"packages": [],
"dev": false,
"dev-package-names": []
}
@@ -0,0 +1,23 @@
<?php return array(
'root' => array(
'pretty_version' => 'dev-master',
'version' => 'dev-master',
'type' => 'library',
'install_path' => __DIR__ . '/../',
'aliases' => array(),
'reference' => 'fb5ee6087bfd1f4cc2f37cda7a7cab7072aaae86',
'name' => '__root__',
'dev' => false,
),
'versions' => array(
'__root__' => array(
'pretty_version' => 'dev-master',
'version' => 'dev-master',
'type' => 'library',
'install_path' => __DIR__ . '/../',
'aliases' => array(),
'reference' => 'fb5ee6087bfd1f4cc2f37cda7a7cab7072aaae86',
'dev_requirement' => false,
),
),
);
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+2 -2
View File
@@ -1,4 +1,4 @@
!function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/js/",n(n.s=708)}({708:function(e,n){
!function(e){var n={};function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:r})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,n){if(1&n&&(e=t(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(t.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var o in e)t.d(r,o,function(n){return e[n]}.bind(null,o));return r},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},t.p="/js/",t(t.s=707)}({707:function(e,n){function r(e,n,t,r,o,i,u){try{var c=e[i](u),a=c.value}catch(e){return void t(e)}c.done?n(a):Promise.resolve(a).then(r,o)}
/**
* @copyright Copyright (c) 2020 John Molakvoæ <skjnldsv@protonmail.com>
*
@@ -20,5 +20,5 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
let o=null;const r=new OCA.Files.Sidebar.Tab({id:"comments",name:t("comments","Comments"),icon:"icon-comment",async mount(e,t,n){o&&o.$destroy(),o=new OCA.Comments.View("files",{parent:n}),await o.update(t.id),o.$mount(e)},update(e){o.update(e.id)},destroy(){o.$destroy(),o=null},scrollBottomReached(){o.onScrollBottomReached()}});window.addEventListener("DOMContentLoaded",(function(){OCA.Files&&OCA.Files.Sidebar&&OCA.Files.Sidebar.registerTab(r)}))}});
var o=null,i=new OCA.Files.Sidebar.Tab({id:"comments",name:t("comments","Comments"),icon:"icon-comment",mount:function(e,n,t){return(i=regeneratorRuntime.mark((function r(){return regeneratorRuntime.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return o&&o.$destroy(),o=new OCA.Comments.View("files",{parent:t}),r.next=4,o.update(n.id);case 4:o.$mount(e);case 5:case"end":return r.stop()}}),r)})),function(){var e=this,n=arguments;return new Promise((function(t,o){var u=i.apply(e,n);function c(e){r(u,t,o,c,a,"next",e)}function a(e){r(u,t,o,c,a,"throw",e)}c(void 0)}))})();var i},update:function(e){o.update(e.id)},destroy:function(){o.$destroy(),o=null},scrollBottomReached:function(){o.onScrollBottomReached()}});window.addEventListener("DOMContentLoaded",(function(){OCA.Files&&OCA.Files.Sidebar&&OCA.Files.Sidebar.registerTab(i)}))}});
//# sourceMappingURL=comments-tab.js.map
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -44,5 +44,5 @@ window.OCA.Comments=OCA.Comments},432:function(e,n){
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
OCA.Comments||(OCA.Comments={})},433:function(e,n){var t;t=Handlebars.template,(OCA.Comments.Templates=OCA.Comments.Templates||{}).filesplugin=t({compiler:[8,">= 4.3.0"],main:function(e,n,t,o,i){var s,r=null!=n?n:e.nullContext||{},a=e.hooks.helperMissing,l=e.escapeExpression,m=e.lookupProperty||function(e,n){if(Object.prototype.hasOwnProperty.call(e,n))return e[n]};return'<a class="action action-comment permanent" title="'+l("function"==typeof(s=null!=(s=m(t,"countMessage")||(null!=n?m(n,"countMessage"):n))?s:a)?s.call(r,{name:"countMessage",hash:{},data:i,loc:{start:{line:1,column:50},end:{line:1,column:66}}}):s)+'" href="#">\n\t<img class="svg" src="'+l("function"==typeof(s=null!=(s=m(t,"iconUrl")||(null!=n?m(n,"iconUrl"):n))?s:a)?s.call(r,{name:"iconUrl",hash:{},data:i,loc:{start:{line:2,column:23},end:{line:2,column:34}}}):s)+'"/>\n</a>\n'},useData:!0})},434:function(e,o){_.extend(OC.Files.Client,{PROPERTY_COMMENTS_UNREAD:"{"+OC.Files.Client.NS_OWNCLOUD+"}comments-unread"}),OCA.Comments=_.extend({},OCA.Comments),OCA.Comments||(OCA.Comments={}),OCA.Comments.FilesPlugin={ignoreLists:["trashbin","files.public"],_formatCommentCount:e=>OCA.Comments.Templates.filesplugin({count:e,countMessage:n("comments","%n unread comment","%n unread comments",e),iconUrl:OC.imagePath("core","actions/comment")}),attach(e){const o=this;if(this.ignoreLists.indexOf(e.id)>=0)return;const i=e._getWebdavProperties;e._getWebdavProperties=function(){const e=i.apply(this,arguments);return e.push(OC.Files.Client.PROPERTY_COMMENTS_UNREAD),e},e.filesClient.addFileInfoParser((function(e){const n={},t=e.propStat[0].properties[OC.Files.Client.PROPERTY_COMMENTS_UNREAD];return _.isUndefined(t)||""===t||(n.commentsUnread=parseInt(t,10)),n})),e.$el.addClass("has-comments");const s=e._createRow;e._createRow=function(e){const n=s.apply(this,arguments);return e.commentsUnread&&n.attr("data-comments-unread",e.commentsUnread),n},e.fileActions.registerAction({name:"Comment",displayName(e){if(e&&e.$file){const t=parseInt(e.$file.data("comments-unread"),10);if(t>=0)return n("comments","1 new comment","{unread} new comments",t,{unread:t})}return t("comments","Comment")},mime:"all",order:-140,iconClass:"icon-comment",permissions:OC.PERMISSION_READ,type:OCA.Files.FileActions.TYPE_INLINE,render(e,n,t){const i=t.$file.data("comments-unread");if(i){const e=$(o._formatCommentCount(i));return t.$file.find("a.name>span.fileactions").append(e),e}return""},actionHandler(e,n){n.$file.find(".action-comment").tooltip("hide"),OCA.Files.Sidebar.setActiveTab("comments"),OCA.Files.Sidebar.open("/"+e)}});const r=e.elementToFile;e.elementToFile=function(e){const n=r.apply(this,arguments),t=e.data("comments-unread");return t&&(n.commentsUnread=t),n}}},OC.Plugins.register("OCA.Files.FileList",OCA.Comments.FilesPlugin)},435:function(e,n){OCA.Comments.ActivityTabViewPlugin={prepareModelForDisplay(e,n,t){if("comments"===e.get("app")&&"comments"===e.get("type")&&"ActivityTabView"===t&&(n.addClass("comment"),e.get("message")&&this._isLong(e.get("message")))){n.addClass("collapsed");const e=$("<div>").addClass("message-overlay");n.find(".activitymessage").after(e),n.on("click",this._onClickCollapsedComment)}},_onClickCollapsedComment(e){let n=$(e.target);n.is(".comment")||(n=n.closest(".comment")),n.removeClass("collapsed")},_isLong:e=>e.length>250||(e.match(/\n/g)||[]).length>1},OC.Plugins.register("OCA.Activity.RenderingPlugins",OCA.Comments.ActivityTabViewPlugin)}});
OCA.Comments||(OCA.Comments={})},433:function(e,n){function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var o;o=Handlebars.template,(OCA.Comments.Templates=OCA.Comments.Templates||{}).filesplugin=o({compiler:[8,">= 4.3.0"],main:function(e,n,o,i,r){var s,a=null!=n?n:e.nullContext||{},l=e.hooks.helperMissing,m=e.escapeExpression,c=e.lookupProperty||function(e,n){if(Object.prototype.hasOwnProperty.call(e,n))return e[n]};return'<a class="action action-comment permanent" title="'+m("function"===t(s=null!=(s=c(o,"countMessage")||(null!=n?c(n,"countMessage"):n))?s:l)?s.call(a,{name:"countMessage",hash:{},data:r,loc:{start:{line:1,column:50},end:{line:1,column:66}}}):s)+'" href="#">\n\t<img class="svg" src="'+m("function"===t(s=null!=(s=c(o,"iconUrl")||(null!=n?c(n,"iconUrl"):n))?s:l)?s.call(a,{name:"iconUrl",hash:{},data:r,loc:{start:{line:2,column:23},end:{line:2,column:34}}}):s)+'"/>\n</a>\n'},useData:!0})},434:function(e,o){_.extend(OC.Files.Client,{PROPERTY_COMMENTS_UNREAD:"{"+OC.Files.Client.NS_OWNCLOUD+"}comments-unread"}),OCA.Comments=_.extend({},OCA.Comments),OCA.Comments||(OCA.Comments={}),OCA.Comments.FilesPlugin={ignoreLists:["trashbin","files.public"],_formatCommentCount:function(e){return OCA.Comments.Templates.filesplugin({count:e,countMessage:n("comments","%n unread comment","%n unread comments",e),iconUrl:OC.imagePath("core","actions/comment")})},attach:function(e){var o=this;if(!(this.ignoreLists.indexOf(e.id)>=0)){var i=e._getWebdavProperties;e._getWebdavProperties=function(){var e=i.apply(this,arguments);return e.push(OC.Files.Client.PROPERTY_COMMENTS_UNREAD),e},e.filesClient.addFileInfoParser((function(e){var n={},t=e.propStat[0].properties[OC.Files.Client.PROPERTY_COMMENTS_UNREAD];return _.isUndefined(t)||""===t||(n.commentsUnread=parseInt(t,10)),n})),e.$el.addClass("has-comments");var r=e._createRow;e._createRow=function(e){var n=r.apply(this,arguments);return e.commentsUnread&&n.attr("data-comments-unread",e.commentsUnread),n},e.fileActions.registerAction({name:"Comment",displayName:function(e){if(e&&e.$file){var o=parseInt(e.$file.data("comments-unread"),10);if(o>=0)return n("comments","1 new comment","{unread} new comments",o,{unread:o})}return t("comments","Comment")},mime:"all",order:-140,iconClass:"icon-comment",permissions:OC.PERMISSION_READ,type:OCA.Files.FileActions.TYPE_INLINE,render:function(e,n,t){var i=t.$file.data("comments-unread");if(i){var r=$(o._formatCommentCount(i));return t.$file.find("a.name>span.fileactions").append(r),r}return""},actionHandler:function(e,n){n.$file.find(".action-comment").tooltip("hide"),OCA.Files.Sidebar.setActiveTab("comments"),OCA.Files.Sidebar.open(n.dir+"/"+e)}});var s=e.elementToFile;e.elementToFile=function(e){var n=s.apply(this,arguments),t=e.data("comments-unread");return t&&(n.commentsUnread=t),n}}}},OC.Plugins.register("OCA.Files.FileList",OCA.Comments.FilesPlugin)},435:function(e,n){OCA.Comments.ActivityTabViewPlugin={prepareModelForDisplay:function(e,n,t){if("comments"===e.get("app")&&"comments"===e.get("type")&&"ActivityTabView"===t&&(n.addClass("comment"),e.get("message")&&this._isLong(e.get("message")))){n.addClass("collapsed");var o=$("<div>").addClass("message-overlay");n.find(".activitymessage").after(o),n.on("click",this._onClickCollapsedComment)}},_onClickCollapsedComment:function(e){var n=$(e.target);n.is(".comment")||(n=n.closest(".comment")),n.removeClass("collapsed")},_isLong:function(e){return e.length>250||(e.match(/\n/g)||[]).length>1}},OC.Plugins.register("OCA.Activity.RenderingPlugins",OCA.Comments.ActivityTabViewPlugin)}});
//# sourceMappingURL=comments.js.map
File diff suppressed because one or more lines are too long
+2 -2
View File
@@ -21,8 +21,8 @@ OC.L10N.register(
"No more messages" : "لامزيد من الرسائل",
"Retry" : "أعد المحاولة",
"Unable to load the comments list" : "تعذر تحميل قائمة التعليقات",
"_%n unread comment_::_%n unread comments_" : ["%n تعليق غير مقروء","تعليقان غير مقروءة","%n تعليقات غير مقروء","%n تعليق غير مقروء","%n تعليق غير مقروء"],
"_1 new comment_::_{unread} new comments_" : ["1 تعليق جديد","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة"],
"_%n unread comment_::_%n unread comments_" : ["%n تعليق غير مقروء","%n تعليق غير مقروء","تعليقان غير مقروءة","%n تعليقات غير مقروء","%n تعليق غير مقروء","%n تعليق غير مقروء"],
"_1 new comment_::_{unread} new comments_" : ["1 تعليق جديد","1 تعليق جديد","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة"],
"Comment" : "تعليق",
"An error occurred while trying to edit the comment" : "حدث خطأ أثناء محاولة تعديل التعليق",
"Comment deleted" : "التعليق حُذف",
+2 -2
View File
@@ -19,8 +19,8 @@
"No more messages" : "لامزيد من الرسائل",
"Retry" : "أعد المحاولة",
"Unable to load the comments list" : "تعذر تحميل قائمة التعليقات",
"_%n unread comment_::_%n unread comments_" : ["%n تعليق غير مقروء","تعليقان غير مقروءة","%n تعليقات غير مقروء","%n تعليق غير مقروء","%n تعليق غير مقروء"],
"_1 new comment_::_{unread} new comments_" : ["1 تعليق جديد","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة"],
"_%n unread comment_::_%n unread comments_" : ["%n تعليق غير مقروء","%n تعليق غير مقروء","تعليقان غير مقروءة","%n تعليقات غير مقروء","%n تعليق غير مقروء","%n تعليق غير مقروء"],
"_1 new comment_::_{unread} new comments_" : ["1 تعليق جديد","1 تعليق جديد","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة","{unread} تعليقات جديدة"],
"Comment" : "تعليق",
"An error occurred while trying to edit the comment" : "حدث خطأ أثناء محاولة تعديل التعليق",
"Comment deleted" : "التعليق حُذف",
+8
View File
@@ -15,11 +15,19 @@ OC.L10N.register(
"Files app plugin to add comments to files" : "Files app plugin til at tilføje kommentarer til filer",
"Edit comment" : "Rediger kommentar",
"Delete comment" : "Slet kommentar",
"Cancel edit" : "Annuller redigering",
"Post comment" : "Skriv kommentar",
"No comments yet, start the conversation!" : "Ingen kommentarer endnu, start samtalen!",
"No more messages" : "Ikke flere beskeder",
"Retry" : "Prøv igen",
"Unable to load the comments list" : "Kan ikke indlæse kommentarlisten",
"_%n unread comment_::_%n unread comments_" : ["%n ulæst kommentar","%n ulæste kommentarer"],
"_1 new comment_::_{unread} new comments_" : ["1 ny kommentar","{unread} nye kommentarer"],
"Comment" : "Kommentér",
"An error occurred while trying to edit the comment" : "Der opstod en fejl under forsøget på at redigere kommentaren",
"Comment deleted" : "Kommentar slettet",
"An error occurred while trying to delete the comment" : "Der opstod en fejl under forsøget på at slette kommentaren",
"An error occurred while trying to create the comment" : "Der opstod en fejl under forsøget på at oprette kommentaren",
"New comment …" : "Ny kommentar ...",
"Post" : "Indlæg",
"Cancel" : "Annullér",
+8
View File
@@ -13,11 +13,19 @@
"Files app plugin to add comments to files" : "Files app plugin til at tilføje kommentarer til filer",
"Edit comment" : "Rediger kommentar",
"Delete comment" : "Slet kommentar",
"Cancel edit" : "Annuller redigering",
"Post comment" : "Skriv kommentar",
"No comments yet, start the conversation!" : "Ingen kommentarer endnu, start samtalen!",
"No more messages" : "Ikke flere beskeder",
"Retry" : "Prøv igen",
"Unable to load the comments list" : "Kan ikke indlæse kommentarlisten",
"_%n unread comment_::_%n unread comments_" : ["%n ulæst kommentar","%n ulæste kommentarer"],
"_1 new comment_::_{unread} new comments_" : ["1 ny kommentar","{unread} nye kommentarer"],
"Comment" : "Kommentér",
"An error occurred while trying to edit the comment" : "Der opstod en fejl under forsøget på at redigere kommentaren",
"Comment deleted" : "Kommentar slettet",
"An error occurred while trying to delete the comment" : "Der opstod en fejl under forsøget på at slette kommentaren",
"An error occurred while trying to create the comment" : "Der opstod en fejl under forsøget på at oprette kommentaren",
"New comment …" : "Ny kommentar ...",
"Post" : "Indlæg",
"Cancel" : "Annullér",
+7
View File
@@ -14,12 +14,19 @@ OC.L10N.register(
"{user} mentioned you in a comment on “{file}”" : "{user} mainitsi sinut tiedoston \"{file}\" kommentissa",
"Edit comment" : "Muokkaa kommenttia",
"Delete comment" : "Poista kommentti",
"Cancel edit" : "Peruuta muokkaus",
"Post comment" : "Lähetä viesti",
"No comments yet, start the conversation!" : "Ei kommentteja vielä. Aloita keskustelu!",
"No more messages" : "Ei enempää viestejä",
"Retry" : "Yritä uudelleen",
"Unable to load the comments list" : "Kommenttilistaa ei voitu ladata",
"_%n unread comment_::_%n unread comments_" : ["%n lukematon kommentti","%n lukematonta kommenttia"],
"_1 new comment_::_{unread} new comments_" : ["1 uusi kommentti","{unread} uutta kommenttia"],
"Comment" : "Kommentti",
"An error occurred while trying to edit the comment" : "Kommenttia muokatessa tapahtui virhe",
"Comment deleted" : "Kommentti poistettu",
"An error occurred while trying to delete the comment" : "Kommenttia poistaessa tapahtui virhe",
"An error occurred while trying to create the comment" : "Kommenttia luodessa tapahtui virhe",
"New comment …" : "Uusi kommentti…",
"Post" : "Lähetä",
"Cancel" : "Peruuta",
+7
View File
@@ -12,12 +12,19 @@
"{user} mentioned you in a comment on “{file}”" : "{user} mainitsi sinut tiedoston \"{file}\" kommentissa",
"Edit comment" : "Muokkaa kommenttia",
"Delete comment" : "Poista kommentti",
"Cancel edit" : "Peruuta muokkaus",
"Post comment" : "Lähetä viesti",
"No comments yet, start the conversation!" : "Ei kommentteja vielä. Aloita keskustelu!",
"No more messages" : "Ei enempää viestejä",
"Retry" : "Yritä uudelleen",
"Unable to load the comments list" : "Kommenttilistaa ei voitu ladata",
"_%n unread comment_::_%n unread comments_" : ["%n lukematon kommentti","%n lukematonta kommenttia"],
"_1 new comment_::_{unread} new comments_" : ["1 uusi kommentti","{unread} uutta kommenttia"],
"Comment" : "Kommentti",
"An error occurred while trying to edit the comment" : "Kommenttia muokatessa tapahtui virhe",
"Comment deleted" : "Kommentti poistettu",
"An error occurred while trying to delete the comment" : "Kommenttia poistaessa tapahtui virhe",
"An error occurred while trying to create the comment" : "Kommenttia luodessa tapahtui virhe",
"New comment …" : "Uusi kommentti…",
"Post" : "Lähetä",
"Cancel" : "Peruuta",
+1 -1
View File
@@ -20,7 +20,7 @@ OC.L10N.register(
"No comments yet, start the conversation!" : "Még nincsenek hozzászólások, kezdje el a beszélgetést!",
"No more messages" : "Nincs több üzenet",
"Retry" : "Újra",
"Unable to load the comments list" : "A megjegyzések listájának betöltése sikertelen",
"Unable to load the comments list" : "A hozzászólások betöltése sikertelen",
"_%n unread comment_::_%n unread comments_" : ["%n olvasatlan hozzászólás","%n olvasatlan hozzászólás"],
"_1 new comment_::_{unread} new comments_" : ["1 új hozzászólás","{unread} új hozzászólás"],
"Comment" : "Hozzászólás",
+1 -1
View File
@@ -18,7 +18,7 @@
"No comments yet, start the conversation!" : "Még nincsenek hozzászólások, kezdje el a beszélgetést!",
"No more messages" : "Nincs több üzenet",
"Retry" : "Újra",
"Unable to load the comments list" : "A megjegyzések listájának betöltése sikertelen",
"Unable to load the comments list" : "A hozzászólások betöltése sikertelen",
"_%n unread comment_::_%n unread comments_" : ["%n olvasatlan hozzászólás","%n olvasatlan hozzászólás"],
"_1 new comment_::_{unread} new comments_" : ["1 új hozzászólás","{unread} új hozzászólás"],
"Comment" : "Hozzászólás",
+1 -1
View File
@@ -15,7 +15,7 @@ OC.L10N.register(
"Delete comment" : "Dzēst komentāru",
"No comments yet, start the conversation!" : "Vēl nav komentāru, uzsāciet sarunu!",
"Retry" : "Mēģināt vēlreiz",
"_%n unread comment_::_%n unread comments_" : ["%n nelasīti komentāri","%n nelasīti komentāri"],
"_%n unread comment_::_%n unread comments_" : ["%n nelasīti komentāri","%n nelasīti komentāri","%n nelasīti komentāri"],
"Comment" : "Komentārs",
"New comment …" : "Jauns komentārs...",
"Post" : "Pievienot",
+1 -1
View File
@@ -13,7 +13,7 @@
"Delete comment" : "Dzēst komentāru",
"No comments yet, start the conversation!" : "Vēl nav komentāru, uzsāciet sarunu!",
"Retry" : "Mēģināt vēlreiz",
"_%n unread comment_::_%n unread comments_" : ["%n nelasīti komentāri","%n nelasīti komentāri"],
"_%n unread comment_::_%n unread comments_" : ["%n nelasīti komentāri","%n nelasīti komentāri","%n nelasīti komentāri"],
"Comment" : "Komentārs",
"New comment …" : "Jauns komentārs...",
"Post" : "Pievienot",
+1 -1
View File
@@ -31,7 +31,7 @@ OC.L10N.register(
"New comment …" : "Novo comentário",
"Post" : "Postar",
"Cancel" : "Cancelar",
"[Deleted user]" : "[Usuário excluído]",
"[Deleted user]" : "[Usuário removido]",
"More comments …" : "Mais comentários...",
"Save" : "Salvar",
"Allowed characters {count} of {max}" : "{count} de {max} caracteres permitidos",
+1 -1
View File
@@ -29,7 +29,7 @@
"New comment …" : "Novo comentário",
"Post" : "Postar",
"Cancel" : "Cancelar",
"[Deleted user]" : "[Usuário excluído]",
"[Deleted user]" : "[Usuário removido]",
"More comments …" : "Mais comentários...",
"Save" : "Salvar",
"Allowed characters {count} of {max}" : "{count} de {max} caracteres permitidos",
+1 -1
View File
@@ -12,7 +12,7 @@ OC.L10N.register(
"<strong>Comments</strong> for files" : "<strong>Komentáre</strong> pre súbory",
"You were mentioned on “{file}”, in a comment by a user that has since been deleted" : "Boli ste spomenutý v \"{file}\", v komentári používateľom ktorý bol už vymazaný",
"{user} mentioned you in a comment on “{file}”" : "{user} vás spomenul v komentári k “{file}”",
"Files app plugin to add comments to files" : "Plugin súborovej aplikácie ktorý umožňuje pridávať komentáre k súborom",
"Files app plugin to add comments to files" : "Zásuvný modul aplikácie súborov, ktorý umožňuje súborom pridávať komentáre",
"Edit comment" : "Upraviť komentár",
"Delete comment" : "Zmazať komentár",
"Cancel edit" : "Zrušiť upravovanie",
+1 -1
View File
@@ -10,7 +10,7 @@
"<strong>Comments</strong> for files" : "<strong>Komentáre</strong> pre súbory",
"You were mentioned on “{file}”, in a comment by a user that has since been deleted" : "Boli ste spomenutý v \"{file}\", v komentári používateľom ktorý bol už vymazaný",
"{user} mentioned you in a comment on “{file}”" : "{user} vás spomenul v komentári k “{file}”",
"Files app plugin to add comments to files" : "Plugin súborovej aplikácie ktorý umožňuje pridávať komentáre k súborom",
"Files app plugin to add comments to files" : "Zásuvný modul aplikácie súborov, ktorý umožňuje súborom pridávať komentáre",
"Edit comment" : "Upraviť komentár",
"Delete comment" : "Zmazať komentár",
"Cancel edit" : "Zrušiť upravovanie",
+9 -8
View File
@@ -2,23 +2,24 @@ OC.L10N.register(
"comments",
{
"Comments" : "ความคิดเห็น",
"You commented" : "คุณได้แสดงความคิดเห็นแล้ว",
"%1$s commented" : "%1$s ได้ถูกแสดงความคิดเห็น",
"You commented" : "คุณได้แสดงความคิดเห็น",
"%1$s commented" : "%1$s ได้แสดงความคิดเห็น",
"You commented on %1$s" : "คุณได้แสดงความคิดเห็นบน %1$s",
"%1$s commented on %2$s" : "%1$s ได้ถูกแสดงความคิดเห็นบน %2$s",
"%1$s commented on %2$s" : "%1$s ได้แสดงความคิดเห็นบน %2$s",
"Edit comment" : "แก้ไขความคิดเห็น",
"Delete comment" : "ลบความคิดเห็น",
"No comments yet, start the conversation!" : "ยังไม่มีความคิดเห็น เพิ่มความเห็นเลย",
"_%n unread comment_::_%n unread comments_" : ["%nความเห็นยังไม่อ่าน"],
"No comments yet, start the conversation!" : "ยังไม่มีความคิดเห็น เพิ่มความคิดเห็นเลย!",
"_%n unread comment_::_%n unread comments_" : ["%nความคิดเห็นที่ยังไม่ได้อ่าน"],
"_1 new comment_::_{unread} new comments_" : ["{unread} ความคิดเห็นใหม่"],
"Comment" : "แสดงความคิดเห็น",
"New comment …" : "ความคิดเห็นใหม่ ...",
"Post" : "โพสต์",
"Cancel" : "ยกเลิก",
"[Deleted user]" : "[ผู้ใช้ถูกลบไปแล้ว]",
"[Deleted user]" : "[ผู้ใช้ที่ถูกลบ]",
"More comments …" : "ความคิดเห็นอื่นๆ ...",
"Save" : "บันทึก",
"Allowed characters {count} of {max}" : "อนุญาตให้ใช้ {count} จากทั้งหมด {max} ตัวอักษร",
"Error occurred while updating comment with id {id}" : "เกิดข้อผิดพลาดขณะปรับปรุงความเห็น {id}",
"Error occurred while posting comment" : "เกิดข้อผิดพลาดขณะส่งความเห็น {id}"
"Error occurred while updating comment with id {id}" : "เกิดข้อผิดพลาดขณะอัปเดตความคิดเห็นด้วย id {id}",
"Error occurred while posting comment" : "เกิดข้อผิดพลาดขณะโพสต์ความคิดเห็น"
},
"nplurals=1; plural=0;");
+9 -8
View File
@@ -1,22 +1,23 @@
{ "translations": {
"Comments" : "ความคิดเห็น",
"You commented" : "คุณได้แสดงความคิดเห็นแล้ว",
"%1$s commented" : "%1$s ได้ถูกแสดงความคิดเห็น",
"You commented" : "คุณได้แสดงความคิดเห็น",
"%1$s commented" : "%1$s ได้แสดงความคิดเห็น",
"You commented on %1$s" : "คุณได้แสดงความคิดเห็นบน %1$s",
"%1$s commented on %2$s" : "%1$s ได้ถูกแสดงความคิดเห็นบน %2$s",
"%1$s commented on %2$s" : "%1$s ได้แสดงความคิดเห็นบน %2$s",
"Edit comment" : "แก้ไขความคิดเห็น",
"Delete comment" : "ลบความคิดเห็น",
"No comments yet, start the conversation!" : "ยังไม่มีความคิดเห็น เพิ่มความเห็นเลย",
"_%n unread comment_::_%n unread comments_" : ["%nความเห็นยังไม่อ่าน"],
"No comments yet, start the conversation!" : "ยังไม่มีความคิดเห็น เพิ่มความคิดเห็นเลย!",
"_%n unread comment_::_%n unread comments_" : ["%nความคิดเห็นที่ยังไม่ได้อ่าน"],
"_1 new comment_::_{unread} new comments_" : ["{unread} ความคิดเห็นใหม่"],
"Comment" : "แสดงความคิดเห็น",
"New comment …" : "ความคิดเห็นใหม่ ...",
"Post" : "โพสต์",
"Cancel" : "ยกเลิก",
"[Deleted user]" : "[ผู้ใช้ถูกลบไปแล้ว]",
"[Deleted user]" : "[ผู้ใช้ที่ถูกลบ]",
"More comments …" : "ความคิดเห็นอื่นๆ ...",
"Save" : "บันทึก",
"Allowed characters {count} of {max}" : "อนุญาตให้ใช้ {count} จากทั้งหมด {max} ตัวอักษร",
"Error occurred while updating comment with id {id}" : "เกิดข้อผิดพลาดขณะปรับปรุงความเห็น {id}",
"Error occurred while posting comment" : "เกิดข้อผิดพลาดขณะส่งความเห็น {id}"
"Error occurred while updating comment with id {id}" : "เกิดข้อผิดพลาดขณะอัปเดตความคิดเห็นด้วย id {id}",
"Error occurred while posting comment" : "เกิดข้อผิดพลาดขณะโพสต์ความคิดเห็น"
},"pluralForm" :"nplurals=1; plural=0;"
}
+12
View File
@@ -10,12 +10,24 @@ OC.L10N.register(
"%1$s commented on %2$s" : "%1$s đã bình luận về%2$s",
"{author} commented on {file}" : "{author} đã bình luận về tệp tin {file}",
"<strong>Comments</strong> for files" : "<strong>bình luận</strong> đối với các tệp tin",
"You were mentioned on “{file}”, in a comment by a user that has since been deleted" : "Bạn đã được nhắc đến ở “{file}”, trong một bình luận bởi một người dùng mà họ đã bị xóa từ đó trở đi",
"{user} mentioned you in a comment on “{file}”" : "{user} đề cập tới bạn trong một bình luận về “{file}”",
"Files app plugin to add comments to files" : "Plugin ứng dụng Tệp để thêm bình luận vào tệp",
"Edit comment" : "Sửa bình luận",
"Delete comment" : "Xóa bình luận",
"Cancel edit" : "Hủy chỉnh sửa",
"Post comment" : "Đăng bình luận",
"No comments yet, start the conversation!" : "Không có bình luận nào, bắt đầu cuộc hội thoại!",
"No more messages" : "Không có thêm tin nhắn",
"Retry" : "Thử lại",
"Unable to load the comments list" : "Không thể tải danh sách bình luận",
"_%n unread comment_::_%n unread comments_" : ["%n bình luận chưa đọc"],
"_1 new comment_::_{unread} new comments_" : ["{unread} bình luận mới"],
"Comment" : "Bình luận",
"An error occurred while trying to edit the comment" : "Đã xảy ra lỗi khi cố gắng chỉnh sửa bình luận",
"Comment deleted" : "Đã xóa bình luận",
"An error occurred while trying to delete the comment" : "Đã xảy ra lỗi khi cố gắng xóa bình luận",
"An error occurred while trying to create the comment" : "Đã xảy ra lỗi khi cố gắng tạo bình luận",
"New comment …" : "Tạo bình luận mới",
"Post" : "Đăng",
"Cancel" : "Hủy",

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