Emits a `preloadCollection` event in the DAV server, so that plugins can listen to it and preload DAV properties for files inside a collection, to avoid the N+1 issue that would follow if loading properties on a per-file basis.
This allows plugins to preload the content of a Collection to speed-up
subsequent per-node PROPFINDs and reduce database load.
Signed-off-by: Salvatore Martire <4652631+salmart-dev@users.noreply.github.com>
We already do that for files, we are now also doing for calendars.
With relatively small amount of calendars, I managed to reduce the
number of DB requests by 35% and from 23 DB requests touching the
oc_properties table to only 3.
Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
This PR adds an error log when a DAV Plugin fetches data for nodes in a directory on a per-node basis instead of using an eager loading mechanism, which is more efficient.
This is only enabled when `config.php` has `'debug'` set to enabled.
Save a query per event stored in the calendar and at least on the
production instance, there is no entries in the table for the events.
Signed-off-by: Carl Schwan <carl.schwan@nextclound.com>
Directories should also have the correct mtime set and not the current
time. For this the `Streamer` class needs to support passing a time
attribute for creating folders, the underlying library already supports
this.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
This removes:
- “enable” for settings
- “settings” for settings sections
- “all” when there is no obvious subset of items
- “show” and “open” for navigation actions
- “changes” for applying/discarding
- “to clipboard” when copying
- Explaining things that cannot happen
- Explaining things twice, right below each other
- Unnecessary technical jargon
- Text that sounds like marketing copy and serves no other purpose
Signed-off-by: kramo <git@kramo.page>
"array_filter" preserves the keys, so after the trusted servers were
filtered "$server[0]" existed only if the server to get was the first
one in the original array.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
This commits addresses an annoyance where the share input placeholder would
suggest sharing via federated cloud ID even if federation was disabled.
Signed-off-by: nfebe <fenn25.fn@gmail.com>
- if this is a GS instance
- or was configured by administrator
Then show the share as internal (remote and remote group shares).
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
- resolves: https://github.com/nextcloud/server/issues/52497
Ensure that when global scale is enabled the federated users are shown
just like internal users.
Meaning no server part but instead use the email address like with internal.
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>